vuesp-components 1.1.2 → 1.3.1

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 (197) hide show
  1. package/README.md +34 -1
  2. package/dist/App.vue.d.ts.map +1 -1
  3. package/dist/components/app/AppAside.vue.d.ts +3 -5
  4. package/dist/components/app/AppAside.vue.d.ts.map +1 -1
  5. package/dist/components/app/AppDialog.vue.d.ts +3 -10
  6. package/dist/components/app/AppDialog.vue.d.ts.map +1 -1
  7. package/dist/components/app/AppHeader.vue.d.ts +7 -11
  8. package/dist/components/app/AppHeader.vue.d.ts.map +1 -1
  9. package/dist/components/app/AppNav.vue.d.ts +3 -8
  10. package/dist/components/app/AppNav.vue.d.ts.map +1 -1
  11. package/dist/components/app/AppNotification.vue.d.ts +8 -11
  12. package/dist/components/app/AppNotification.vue.d.ts.map +1 -1
  13. package/dist/components/app/AppProgress.vue.d.ts +2 -5
  14. package/dist/components/app/AppProgress.vue.d.ts.map +1 -1
  15. package/dist/components/app/types.d.ts +46 -0
  16. package/dist/components/app/types.d.ts.map +1 -0
  17. package/dist/components/block/breadcrumb/BlockBreadcrumb.vue.d.ts +25 -0
  18. package/dist/components/block/breadcrumb/BlockBreadcrumb.vue.d.ts.map +1 -0
  19. package/dist/components/block/breadcrumb/types.d.ts +11 -0
  20. package/dist/components/block/breadcrumb/types.d.ts.map +1 -0
  21. package/dist/components/block/index.d.ts +4 -0
  22. package/dist/components/block/index.d.ts.map +1 -0
  23. package/dist/components/{general/blocks → block/info}/BlockInfo.vue.d.ts +2 -2
  24. package/dist/components/block/info/BlockInfo.vue.d.ts.map +1 -0
  25. package/dist/components/block/info/types.d.ts +5 -0
  26. package/dist/components/block/info/types.d.ts.map +1 -0
  27. package/dist/components/block/types.d.ts +3 -0
  28. package/dist/components/block/types.d.ts.map +1 -0
  29. package/dist/components/card/index.d.ts +4 -0
  30. package/dist/components/card/index.d.ts.map +1 -0
  31. package/dist/components/{general/cards/CardGray.vue.d.ts → card/main/CardMain.vue.d.ts} +3 -6
  32. package/dist/components/card/main/CardMain.vue.d.ts.map +1 -0
  33. package/dist/components/card/main/types.d.ts +5 -0
  34. package/dist/components/card/main/types.d.ts.map +1 -0
  35. package/dist/components/card/notification/CardNotification.vue.d.ts +10 -0
  36. package/dist/components/card/notification/CardNotification.vue.d.ts.map +1 -0
  37. package/dist/components/card/notification/types.d.ts +8 -0
  38. package/dist/components/card/notification/types.d.ts.map +1 -0
  39. package/dist/components/card/types.d.ts +3 -0
  40. package/dist/components/card/types.d.ts.map +1 -0
  41. package/dist/components/dashboard/cards/CardBase.vue.d.ts +19 -18
  42. package/dist/components/dashboard/cards/CardBase.vue.d.ts.map +1 -1
  43. package/dist/components/dashboard/cards/CardButton.vue.d.ts +13 -7
  44. package/dist/components/dashboard/cards/CardButton.vue.d.ts.map +1 -1
  45. package/dist/components/dashboard/cards/CardDate.vue.d.ts +13 -7
  46. package/dist/components/dashboard/cards/CardDate.vue.d.ts.map +1 -1
  47. package/dist/components/dashboard/cards/CardDimmer.vue.d.ts +13 -7
  48. package/dist/components/dashboard/cards/CardDimmer.vue.d.ts.map +1 -1
  49. package/dist/components/dashboard/cards/CardInfo.vue.d.ts +13 -5
  50. package/dist/components/dashboard/cards/CardInfo.vue.d.ts.map +1 -1
  51. package/dist/components/dashboard/cards/CardInput.vue.d.ts +13 -7
  52. package/dist/components/dashboard/cards/CardInput.vue.d.ts.map +1 -1
  53. package/dist/components/dashboard/cards/CardList.vue.d.ts +13 -7
  54. package/dist/components/dashboard/cards/CardList.vue.d.ts.map +1 -1
  55. package/dist/components/dashboard/cards/types.d.ts +10 -0
  56. package/dist/components/dashboard/cards/types.d.ts.map +1 -0
  57. package/dist/components/dashboard/edit/ItemEdit.vue.d.ts +3 -6
  58. package/dist/components/dashboard/edit/ItemEdit.vue.d.ts.map +1 -1
  59. package/dist/components/dashboard/edit/ItemOptions.vue.d.ts +6 -15
  60. package/dist/components/dashboard/edit/ItemOptions.vue.d.ts.map +1 -1
  61. package/dist/components/dashboard/edit/types.d.ts +21 -0
  62. package/dist/components/dashboard/edit/types.d.ts.map +1 -0
  63. package/dist/components/dashboard/types.d.ts +3 -0
  64. package/dist/components/dashboard/types.d.ts.map +1 -0
  65. package/dist/components/index.d.ts +6 -0
  66. package/dist/components/index.d.ts.map +1 -0
  67. package/dist/components/ui/accordion/types.d.ts +14 -0
  68. package/dist/components/ui/accordion/types.d.ts.map +1 -0
  69. package/dist/components/{general/forms → ui/autocomplete}/VAutocomplete.vue.d.ts +3 -10
  70. package/dist/components/ui/autocomplete/VAutocomplete.vue.d.ts.map +1 -0
  71. package/dist/components/ui/autocomplete/types.d.ts +14 -0
  72. package/dist/components/ui/autocomplete/types.d.ts.map +1 -0
  73. package/dist/components/{general/blocks/BlockBreadcrumb.vue.d.ts → ui/button/VButton.vue.d.ts} +6 -14
  74. package/dist/components/ui/button/VButton.vue.d.ts.map +1 -0
  75. package/dist/components/ui/button/types.d.ts +15 -0
  76. package/dist/components/ui/button/types.d.ts.map +1 -0
  77. package/dist/components/{general/forms → ui/checkbox}/VCheckbox.vue.d.ts +3 -6
  78. package/dist/components/ui/checkbox/VCheckbox.vue.d.ts.map +1 -0
  79. package/dist/components/ui/checkbox/types.d.ts +9 -0
  80. package/dist/components/ui/checkbox/types.d.ts.map +1 -0
  81. package/dist/components/{general/forms → ui/drag-drop}/VDragDrop.vue.d.ts +7 -10
  82. package/dist/components/ui/drag-drop/VDragDrop.vue.d.ts.map +1 -0
  83. package/dist/components/ui/drag-drop/types.d.ts +17 -0
  84. package/dist/components/ui/drag-drop/types.d.ts.map +1 -0
  85. package/dist/components/{general/forms → ui/dropdown}/VDropdown.vue.d.ts +8 -14
  86. package/dist/components/ui/dropdown/VDropdown.vue.d.ts.map +1 -0
  87. package/dist/components/ui/dropdown/types.d.ts +12 -0
  88. package/dist/components/ui/dropdown/types.d.ts.map +1 -0
  89. package/dist/components/{general/forms → ui/expansion}/VExpansion.vue.d.ts +2 -5
  90. package/dist/components/ui/expansion/VExpansion.vue.d.ts.map +1 -0
  91. package/dist/components/ui/expansion/types.d.ts +5 -0
  92. package/dist/components/ui/expansion/types.d.ts.map +1 -0
  93. package/dist/components/ui/file/VFile.vue.d.ts.map +1 -0
  94. package/dist/components/ui/file/types.d.ts +4 -0
  95. package/dist/components/ui/file/types.d.ts.map +1 -0
  96. package/dist/components/{general/forms → ui/func}/VFunc.vue.d.ts +3 -9
  97. package/dist/components/ui/func/VFunc.vue.d.ts.map +1 -0
  98. package/dist/components/ui/func/types.d.ts +13 -0
  99. package/dist/components/ui/func/types.d.ts.map +1 -0
  100. package/dist/components/{general/forms/VIcons.vue.d.ts → ui/icon/VIcon.vue.d.ts} +1 -1
  101. package/dist/components/ui/icon/VIcon.vue.d.ts.map +1 -0
  102. package/dist/components/ui/icon/types.d.ts +5 -0
  103. package/dist/components/ui/icon/types.d.ts.map +1 -0
  104. package/dist/components/ui/index.d.ts +19 -0
  105. package/dist/components/ui/index.d.ts.map +1 -0
  106. package/dist/components/{general/forms → ui/list}/VList.vue.d.ts +3 -7
  107. package/dist/components/ui/list/VList.vue.d.ts.map +1 -0
  108. package/dist/components/ui/list/VListObject.vue.d.ts +8 -0
  109. package/dist/components/ui/list/VListObject.vue.d.ts.map +1 -0
  110. package/dist/components/ui/list/types.d.ts +19 -0
  111. package/dist/components/ui/list/types.d.ts.map +1 -0
  112. package/dist/components/ui/loader/VLoader.vue.d.ts.map +1 -0
  113. package/dist/components/ui/loader/types.d.ts +1 -0
  114. package/dist/components/ui/loader/types.d.ts.map +1 -0
  115. package/dist/components/{general/forms → ui/select}/VSelect.vue.d.ts +3 -9
  116. package/dist/components/ui/select/VSelect.vue.d.ts.map +1 -0
  117. package/dist/components/ui/select/types.d.ts +13 -0
  118. package/dist/components/ui/select/types.d.ts.map +1 -0
  119. package/dist/components/{general/blocks/BlockTable.vue.d.ts → ui/table/VTable.vue.d.ts} +9 -12
  120. package/dist/components/ui/table/VTable.vue.d.ts.map +1 -0
  121. package/dist/components/ui/table/types.d.ts +21 -0
  122. package/dist/components/ui/table/types.d.ts.map +1 -0
  123. package/dist/components/{general/forms → ui/tabs}/VTabs.vue.d.ts +3 -8
  124. package/dist/components/ui/tabs/VTabs.vue.d.ts.map +1 -0
  125. package/dist/components/ui/tabs/types.d.ts +10 -0
  126. package/dist/components/ui/tabs/types.d.ts.map +1 -0
  127. package/dist/components/ui/text-field/VTextField.vue.d.ts +32 -0
  128. package/dist/components/ui/text-field/VTextField.vue.d.ts.map +1 -0
  129. package/dist/components/ui/text-field/types.d.ts +16 -0
  130. package/dist/components/ui/text-field/types.d.ts.map +1 -0
  131. package/dist/components/{general/forms → ui/text-wrapper}/VTextWrapper.vue.d.ts +3 -8
  132. package/dist/components/ui/text-wrapper/VTextWrapper.vue.d.ts.map +1 -0
  133. package/dist/components/ui/text-wrapper/types.d.ts +10 -0
  134. package/dist/components/ui/text-wrapper/types.d.ts.map +1 -0
  135. package/dist/components/ui/types.d.ts +1 -0
  136. package/dist/components/ui/types.d.ts.map +1 -0
  137. package/dist/components/ui/wifiIcon/VWifiIcon.vue.d.ts +4 -0
  138. package/dist/components/ui/wifiIcon/VWifiIcon.vue.d.ts.map +1 -0
  139. package/dist/components/ui/wifiIcon/types.d.ts +5 -0
  140. package/dist/components/ui/wifiIcon/types.d.ts.map +1 -0
  141. package/dist/composables/types.d.ts +2 -2
  142. package/dist/composables/types.d.ts.map +1 -1
  143. package/dist/dashboard/types.d.ts +1 -0
  144. package/dist/dashboard/types.d.ts.map +1 -1
  145. package/dist/helpers/general.d.ts.map +1 -1
  146. package/dist/helpers/index.d.ts +0 -2
  147. package/dist/helpers/index.d.ts.map +1 -1
  148. package/dist/helpers/index.es.js +50 -48
  149. package/dist/index.d.ts +1 -3
  150. package/dist/index.d.ts.map +1 -1
  151. package/dist/index.es.js +2015 -1921
  152. package/dist/style.css +1 -1
  153. package/dist/utils/directives/index.d.ts +1 -1
  154. package/dist/utils/directives/index.d.ts.map +1 -1
  155. package/package.json +12 -3
  156. package/dist/components/general/blocks/BlockBreadcrumb.vue.d.ts.map +0 -1
  157. package/dist/components/general/blocks/BlockInfo.vue.d.ts.map +0 -1
  158. package/dist/components/general/blocks/BlockTable.vue.d.ts.map +0 -1
  159. package/dist/components/general/blocks/index.d.ts +0 -5
  160. package/dist/components/general/blocks/index.d.ts.map +0 -1
  161. package/dist/components/general/cards/CardGray.vue.d.ts.map +0 -1
  162. package/dist/components/general/cards/CardNotification.vue.d.ts +0 -10
  163. package/dist/components/general/cards/CardNotification.vue.d.ts.map +0 -1
  164. package/dist/components/general/cards/index.d.ts +0 -4
  165. package/dist/components/general/cards/index.d.ts.map +0 -1
  166. package/dist/components/general/forms/VAutocomplete.vue.d.ts.map +0 -1
  167. package/dist/components/general/forms/VButton.vue.d.ts +0 -33
  168. package/dist/components/general/forms/VButton.vue.d.ts.map +0 -1
  169. package/dist/components/general/forms/VCheckbox.vue.d.ts.map +0 -1
  170. package/dist/components/general/forms/VDragDrop.vue.d.ts.map +0 -1
  171. package/dist/components/general/forms/VDropdown.vue.d.ts.map +0 -1
  172. package/dist/components/general/forms/VExpansion.vue.d.ts.map +0 -1
  173. package/dist/components/general/forms/VFile.vue.d.ts.map +0 -1
  174. package/dist/components/general/forms/VFunc.vue.d.ts.map +0 -1
  175. package/dist/components/general/forms/VIcons.vue.d.ts.map +0 -1
  176. package/dist/components/general/forms/VList.vue.d.ts.map +0 -1
  177. package/dist/components/general/forms/VListObject.vue.d.ts +0 -13
  178. package/dist/components/general/forms/VListObject.vue.d.ts.map +0 -1
  179. package/dist/components/general/forms/VLoader.vue.d.ts.map +0 -1
  180. package/dist/components/general/forms/VSelect.vue.d.ts.map +0 -1
  181. package/dist/components/general/forms/VTabs.vue.d.ts.map +0 -1
  182. package/dist/components/general/forms/VTextField.vue.d.ts +0 -43
  183. package/dist/components/general/forms/VTextField.vue.d.ts.map +0 -1
  184. package/dist/components/general/forms/VTextWrapper.vue.d.ts.map +0 -1
  185. package/dist/components/general/forms/VWifiIcon.vue.d.ts +0 -7
  186. package/dist/components/general/forms/VWifiIcon.vue.d.ts.map +0 -1
  187. package/dist/components/general/forms/index.d.ts +0 -18
  188. package/dist/components/general/forms/index.d.ts.map +0 -1
  189. package/dist/components/general/index.d.ts +0 -4
  190. package/dist/components/general/index.d.ts.map +0 -1
  191. package/dist/helpers/fetch.d.ts +0 -14
  192. package/dist/helpers/fetch.d.ts.map +0 -1
  193. package/dist/helpers/utils.d.ts +0 -2
  194. package/dist/helpers/utils.d.ts.map +0 -1
  195. package/dist/utils-r5TQv-RW.js +0 -62
  196. /package/dist/components/{general/forms → ui/file}/VFile.vue.d.ts +0 -0
  197. /package/dist/components/{general/forms → ui/loader}/VLoader.vue.d.ts +0 -0
package/dist/index.es.js CHANGED
@@ -1,568 +1,134 @@
1
- import { defineComponent as B, ref as L, computed as M, createElementBlock as c, openBlock as o, createElementVNode as l, createCommentVNode as I, normalizeClass as V, createBlock as A, toDisplayString as _, resolveDynamicComponent as q, mergeProps as D, withKeys as Le, renderSlot as C, createTextVNode as T, resolveDirective as je, withDirectives as de, createVNode as p, Transition as Y, withCtx as m, normalizeStyle as J, Fragment as H, renderList as N, onMounted as ce, unref as z, withModifiers as F, vShow as Ne, TransitionGroup as _e, toRef as Oe, readonly as Fe, customRef as Pe, getCurrentScope as Ee, onScopeDispose as Re, shallowRef as me, watch as U, nextTick as Ue, toValue as ue, isRef as Ge, vModelText as We, resolveComponent as ee, normalizeProps as E, guardReactiveProps as R, Teleport as qe } from "vue";
2
- import { getDataValue as Ke } from "./dashboard/index.es.js";
3
- import { getFunction as y1, getParamsData as x1, getStateItem as k1, setStateItem as _1 } from "./dashboard/index.es.js";
4
- import { u as ve, d as Ze, e as Je, b as Qe, f as Xe } from "./utils-r5TQv-RW.js";
5
- import { useForm as w1 } from "./composables/index.es.js";
6
- const Ye = {
7
- mounted(e, t) {
8
- e.clickOutsideEvent = function(d) {
9
- e === d.target || e.contains(d.target) || t.value(d, e);
10
- }, document.addEventListener("click", e.clickOutsideEvent);
1
+ import { createElementBlock as v, openBlock as s, createElementVNode as l, Fragment as D, defineComponent as V, computed as M, createBlock as A, resolveDynamicComponent as G, resolveComponent as oe, createCommentVNode as I, normalizeClass as z, createVNode as p, withCtx as g, renderSlot as C, mergeProps as H, ref as L, onMounted as ne, Teleport as we, Transition as X, withModifiers as P, toDisplayString as _, createTextVNode as T, resolveDirective as Ce, withDirectives as re, normalizeStyle as K, renderList as N, unref as F, TransitionGroup as me, watch as W, toRef as ze, readonly as Ve, customRef as Be, getCurrentScope as Me, onScopeDispose as Ie, toValue as Z, shallowRef as ue, nextTick as Ae, normalizeProps as R, guardReactiveProps as U, withKeys as Se, vShow as Te, isRef as De, vModelText as He } from "vue";
2
+ import { getDataValue as Le } from "./dashboard/index.es.js";
3
+ import { getFunction as _n, getParamsData as $n, getStateItem as wn, setStateItem as Cn } from "./dashboard/index.es.js";
4
+ import { dateUtcToString as je, timeUtcToString as Ne, findMenuItem as Oe, clone as Pe } from "./helpers/index.es.js";
5
+ const Fe = {
6
+ mounted(t, e) {
7
+ t.clickOutsideEvent = function(o) {
8
+ t === o.target || t.contains(o.target) || e.value(o, t);
9
+ }, document.addEventListener("click", t.clickOutsideEvent);
11
10
  },
12
- unmounted(e) {
13
- document.removeEventListener("click", e.clickOutsideEvent), delete e.clickOutsideEvent;
11
+ unmounted(t) {
12
+ document.removeEventListener("click", t.clickOutsideEvent), delete t.clickOutsideEvent;
14
13
  }
15
- }, et = [{ name: "outside", directive: Ye }], tt = { class: "w-full relative" }, lt = ["disabled"], st = {
16
- key: 0,
17
- class: "text-red-400 h-[24px] px-2 text-xs"
18
- }, at = "after:absolute after:h-1 after:w-full after:left-0 after:translate-y-[6px] after:-z-10 dark:after:bg-gray-800 after:bg-white after:transition-all", O = /* @__PURE__ */ B({
19
- __name: "VTextField",
20
- props: {
21
- modelValue: { default: null },
22
- label: { default: "" },
23
- component: { default: "input" },
24
- type: { default: "text" },
25
- message: { default: "" },
26
- readonly: { type: Boolean },
27
- disabled: { type: [Boolean, Number], default: !1 },
28
- active: { type: Boolean, default: !1 },
29
- hideMessage: { type: Boolean, default: !1 },
30
- rules: {}
31
- },
32
- emits: ["update:modelValue", "click", "on-icon", "enter", "blur"],
33
- setup(e, { emit: t }) {
34
- const d = t, r = {
35
- input: "w-full h-full px-4 outline-none overflow-ellipsis flex-auto overflow-hidden w-[calc(100% - 20px)] bg-transparent",
36
- textarea: "h-full w-full px-4 py-2 outline-none flex-auto bg-transparent"
37
- }, s = L(!1), n = M(() => [
38
- e.component === "input" ? "h-[40px]" : "min-h-[40px]",
39
- e.message ? "border-red-500 hover:border-red-400" : "",
40
- 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"
41
- ]), v = M(() => r[e.component]), u = (g) => g || g === 0, f = M(() => [at, s.value || u(e.modelValue) || e.active ? "top-0 left-3 text-xs" : "top-1/2"]), a = M(() => e.component === "input"), i = (g) => {
42
- s.value = !1, d("blur", g);
43
- }, h = ({ target: g }) => d("update:modelValue", g.value), b = (g) => d("enter", g), $ = () => s.value = !0, y = (g) => d("click", g), w = (g) => {
44
- e.disabled || d("on-icon", g);
45
- };
46
- return (g, P) => (o(), c("div", tt, [
47
- l("label", {
48
- class: V(["relative w-full border border-gray-300 dark:border-gray-700 flex items-center rounded transition bg-white dark:bg-gray-800", n.value])
49
- }, [
50
- l("span", {
51
- class: V(["absolute left-4 transition-all rounded -translate-y-1/2 text-gray-600 dark:text-gray-400", f.value])
52
- }, _(g.label), 3),
53
- (o(), A(q(g.component), D(g.$attrs, {
54
- value: g.modelValue,
55
- disabled: !!g.disabled,
56
- type: g.type,
57
- readonly: g.readonly,
58
- rows: a.value ? null : "2",
59
- wrap: a.value ? null : "soft",
60
- class: v.value,
61
- onFocus: $,
62
- onBlur: i,
63
- onInput: h,
64
- onClick: y,
65
- onKeypress: Le(b, ["enter"])
66
- }), null, 16, ["value", "disabled", "type", "readonly", "rows", "wrap", "class"])),
67
- g.$slots.icon ? (o(), c("button", {
68
- key: 0,
69
- disabled: !!g.disabled,
70
- class: V([{ "cursor-pointer": !g.disabled }, "flex-[0_0_50px] h-full flex items-center justify-center text-gray-400 border-l border-gray-300 dark:border-gray-700/50"]),
71
- onClick: w
72
- }, [
73
- C(g.$slots, "icon")
74
- ], 10, lt)) : I("", !0)
75
- ], 2),
76
- g.hideMessage ? I("", !0) : (o(), c("div", st, [
77
- C(g.$slots, "message", {}, () => [
78
- T(_(g.message), 1)
79
- ])
80
- ]))
81
- ]));
82
- }
83
- }), ot = { class: "relative" }, nt = { class: "flex items-center cursor-pointer" }, te = /* @__PURE__ */ B({
84
- __name: "VDropdown",
85
- props: {
86
- top: { default: "calc(100% + 5px)" },
87
- left: { default: "0" },
88
- right: { default: "" },
89
- height: { default: "200px" },
90
- hideOnClick: { type: Boolean, default: !0 }
91
- },
92
- emits: ["click", "show", "close"],
93
- setup(e, { emit: t }) {
94
- const d = t, r = L(!1), s = M(() => ({ top: e.top, left: e.left, right: e.right, "max-height": e.height })), n = (i) => {
95
- r.value && f(i);
96
- }, v = (i) => {
97
- r.value ? e.hideOnClick && f(i) : u(i), d("click", r.value);
98
- }, u = (i) => {
99
- r.value = !0, d("show", i);
100
- }, f = (i) => {
101
- r.value = !1, d("close", i);
102
- }, a = { click: v, open: u };
103
- return (i, h) => {
104
- const b = je("outside");
105
- return de((o(), c("div", ot, [
106
- l("div", nt, [
107
- C(i.$slots, "activator", {
108
- on: a,
109
- show: r.value
110
- })
111
- ]),
112
- p(Y, {
113
- "enter-active-class": "duration-300 ease-out",
114
- "enter-from-class": "transform opacity-0 -translate-y-2",
115
- "enter-to-class": "opacity-100 translate-y-0",
116
- "leave-active-class": "duration-200 ease-in",
117
- "leave-from-class": "opacity-100 translate-y-0",
118
- "leave-to-class": "transform opacity-0 -translate-y-2"
119
- }, {
120
- default: m(() => [
121
- r.value ? (o(), c("div", {
122
- key: 0,
123
- class: "z-10 min-w-full absolute overflow-auto shadow-lg scrollbar",
124
- style: J(s.value),
125
- onClick: v
126
- }, [
127
- C(i.$slots, "default", {
128
- on: a,
129
- show: u,
130
- hide: f,
131
- isShown: r.value
132
- })
133
- ], 4)) : I("", !0)
134
- ]),
135
- _: 3
136
- })
137
- ])), [
138
- [b, n]
139
- ]);
140
- };
141
- }
142
- }), rt = ["onClick"], le = /* @__PURE__ */ B({
143
- __name: "VList",
144
- props: {
145
- list: {},
146
- className: {}
147
- },
148
- emits: ["click"],
149
- setup(e, { emit: t }) {
150
- const d = e, r = t, s = (n, v) => r("click", n, v);
151
- return (n, v) => (o(), c("ul", {
152
- class: V(d.className ?? "bg-white dark:bg-gray-800")
153
- }, [
154
- (o(!0), c(H, null, N(d.list, (u) => (o(), c("li", {
155
- key: `${u.value}_${u.name}`,
156
- class: "whitespace-nowrap cursor-pointer flex items-center min-h-[40px] py-1 px-6 border-b last:border-b-0 dark:border-gray-700 border-gray-200 hover:bg-gray-50 dark:hover:bg-gray-700/30",
157
- onClick: (f) => s(u, f)
158
- }, [
159
- C(n.$slots, "default", { item: u }, () => [
160
- T(_(u.name), 1)
161
- ])
162
- ], 8, rt))), 128))
163
- ], 2));
164
- }
165
- }), d1 = /* @__PURE__ */ B({
166
- __name: "VAutocomplete",
167
- props: {
168
- modelValue: { default: "" },
169
- label: {},
170
- name: { default: "" },
171
- message: { default: "" },
172
- list: {}
173
- },
174
- emits: ["update:modelValue", "select"],
175
- setup(e, { emit: t }) {
176
- const d = t, r = (n) => {
177
- d("update:modelValue", n);
178
- }, s = (n, v) => {
179
- n.click(v), d("select", v);
180
- };
181
- return (n, v) => (o(), A(te, D(n.$attrs, {
182
- top: "50px",
183
- "hide-on-click": ""
184
- }), {
185
- activator: m(({ on: u }) => [
186
- p(O, {
187
- "model-value": n.modelValue,
188
- name: n.name,
189
- message: n.message,
190
- label: n.label,
191
- "onUpdate:modelValue": r,
192
- onClick: u.open
193
- }, null, 8, ["model-value", "name", "message", "label", "onClick"])
194
- ]),
195
- default: m(({ on: u }) => [
196
- p(le, {
197
- list: n.list,
198
- onClick: (f) => s(u, f)
199
- }, {
200
- default: m(({ item: f }) => [
201
- C(n.$slots, "default", { item: f }, () => [
202
- T(_(f.name), 1)
203
- ])
204
- ]),
205
- _: 2
206
- }, 1032, ["list", "onClick"])
207
- ]),
208
- _: 3
209
- }, 16));
210
- }
211
- }), $e = (e, t) => {
212
- const d = e.__vccOpts || e;
213
- for (const [r, s] of t)
214
- d[r] = s;
215
- return d;
216
- }, it = {}, dt = {
217
- class: "animate-spin h-6 w-6",
14
+ }, Ee = [{ name: "outside", directive: Fe }], Re = {
15
+ width: "24",
16
+ height: "24",
17
+ fill: "currentColor",
18
+ viewBox: "0 0 24 24"
19
+ };
20
+ function Ue(t, e) {
21
+ return s(), v("svg", Re, e[0] || (e[0] = [
22
+ l("path", { d: "M21 3H3a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2m0 9H3V5h18ZM5 10a1 1 0 0 1 1-1h12a1 1 0 0 1 0 2H6a1 1 0 0 1-1-1m11-3a1 1 0 0 1 1-1h1a1 1 0 0 1 0 2h-1a1 1 0 0 1-1-1M9.793 20.293 11.086 19l-.293-.293a1 1 0 0 1 0-1.414l2-2a1 1 0 0 1 1.414 1.414L12.914 18l.293.293a1 1 0 0 1 0 1.414l-2 2a1 1 0 0 1-1.414-1.414m5.5 0L16.586 19l-.293-.293a1 1 0 0 1 0-1.414l2-2a1 1 0 0 1 1.414 1.414L18.414 18l.293.293a1 1 0 0 1 0 1.414l-2 2a1 1 0 0 1-1.414-1.414m-11 0L5.586 19l-.293-.293a1 1 0 0 1 0-1.414l2-2a1 1 0 0 1 1.414 1.414L7.414 18l.293.293a1 1 0 0 1 0 1.414l-2 2a1 1 0 0 1-1.414-1.414" }, null, -1)
23
+ ]));
24
+ }
25
+ const We = { render: Ue }, qe = {
26
+ width: "24",
27
+ height: "24",
28
+ fill: "currentColor",
29
+ viewBox: "-2 0 15.998 15.998"
30
+ };
31
+ function Ge(t, e) {
32
+ return s(), v("svg", qe, e[0] || (e[0] = [
33
+ l("path", {
34
+ d: "M9.785 1.341A6.04 6.04 0 0 0 4.718.132a5.98 5.98 0 0 0-4.6 4.673 5.97 5.97 0 0 0 1.884 5.665v.028a2.49 2.49 0 0 0 1 1.989v1.011a1.5 1.5 0 0 0 1.5 1.5h.355a1.17 1.17 0 0 0 1.145 1 1.17 1.17 0 0 0 1.145-1h.355a1.5 1.5 0 0 0 1.5-1.5v-1.011a2.49 2.49 0 0 0 1-1.989v-.028a5.98 5.98 0 0 0 2-4.472 5.98 5.98 0 0 0-2.217-4.657M8.002 12.998v.5a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-.5zm1.182-3.143a.5.5 0 0 0-.182.386v.257a1.5 1.5 0 0 1-1.5 1.5h-3a1.5 1.5 0 0 1-1.5-1.5v-.257a.5.5 0 0 0-.182-.386 4.98 4.98 0 0 1-1.718-4.857 4.97 4.97 0 0 1 3.821-3.884A5.3 5.3 0 0 1 5.99.998a5 5 0 0 1 3.164 1.117 4.98 4.98 0 0 1 1.848 3.883 4.99 4.99 0 0 1-1.818 3.857M6.502 3.498a.5.5 0 0 1-.5.5 2 2 0 0 0-2 2 .5.5 0 0 1-.5.5.5.5 0 0 1-.5-.5 3 3 0 0 1 3-3 .5.5 0 0 1 .5.5",
35
+ "data-name": "Path 81"
36
+ }, null, -1)
37
+ ]));
38
+ }
39
+ const Ke = { render: Ge }, Ze = {
40
+ width: "24",
41
+ height: "24",
218
42
  fill: "none",
219
43
  viewBox: "0 0 24 24"
220
44
  };
221
- function ct(e, t) {
222
- return o(), c("svg", dt, t[0] || (t[0] = [
223
- l("circle", {
224
- class: "opacity-25",
225
- cx: "12",
226
- cy: "12",
227
- r: "10",
45
+ function Je(t, e) {
46
+ return s(), v("svg", Ze, e[0] || (e[0] = [
47
+ l("path", {
228
48
  stroke: "currentColor",
229
- "stroke-width": "2"
49
+ "stroke-linecap": "round",
50
+ "stroke-linejoin": "round",
51
+ "stroke-width": "2",
52
+ d: "M12 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6"
230
53
  }, null, -1),
231
54
  l("path", {
232
- class: "opacity-75",
55
+ stroke: "currentColor",
56
+ "stroke-linecap": "round",
57
+ "stroke-linejoin": "round",
58
+ "stroke-width": "2",
59
+ d: "M3 16.8V9.2c0-1.12 0-1.68.218-2.108a2 2 0 0 1 .874-.874C4.52 6 5.08 6 6.2 6h1.055c.123 0 .184 0 .24-.006a1 1 0 0 0 .725-.448c.03-.048.058-.103.113-.213.11-.22.165-.33.228-.425a2 2 0 0 1 1.447-.895C10.123 4 10.246 4 10.492 4h3.018c.246 0 .37 0 .482.013a2 2 0 0 1 1.448.895c.063.095.118.205.228.425.055.11.082.165.113.213a1 1 0 0 0 .724.447c.057.007.118.007.241.007H17.8c1.12 0 1.68 0 2.108.218a2 2 0 0 1 .874.874C21 7.52 21 8.08 21 9.2v7.6c0 1.12 0 1.68-.218 2.108a2 2 0 0 1-.874.874C19.48 20 18.92 20 17.8 20H6.2c-1.12 0-1.68 0-2.108-.218a2 2 0 0 1-.874-.874C3 18.48 3 17.92 3 16.8"
60
+ }, null, -1)
61
+ ]));
62
+ }
63
+ const Qe = { render: Je }, Xe = {
64
+ width: "24",
65
+ height: "24",
66
+ fill: "currentColor",
67
+ viewBox: "0 0 24 24"
68
+ };
69
+ function Ye(t, e) {
70
+ return s(), v("svg", Xe, e[0] || (e[0] = [
71
+ l("path", {
72
+ "fill-rule": "evenodd",
73
+ d: "M5.999 10.495a1.5 1.5 0 0 1 1.5 1.5v.01a1.5 1.5 0 0 1-3 0v-.01a1.5 1.5 0 0 1 1.5-1.5m12 0a1.5 1.5 0 0 1 1.5 1.5v.01a1.5 1.5 0 1 1-3 0v-.01a1.5 1.5 0 0 1 1.5-1.5m-4.5 1.5a1.5 1.5 0 1 0-3 0v.01a1.5 1.5 0 0 0 3 0z",
74
+ "clip-rule": "evenodd"
75
+ }, null, -1)
76
+ ]));
77
+ }
78
+ const et = { render: Ye }, tt = {
79
+ width: "24",
80
+ height: "24",
81
+ viewBox: "0 0 1024 1024"
82
+ };
83
+ function lt(t, e) {
84
+ return s(), v("svg", tt, e[0] || (e[0] = [
85
+ l("path", {
233
86
  fill: "currentColor",
234
- d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
87
+ d: "M539.7 463.1V273.5l90.8-91.2c11-11 10.9-28.7 0-39.6-11-11-28.7-10.9-39.6 0L539.7 194V91.3c0-15.1-12.5-27.8-28-27.8-15.6 0-28 12.5-28 27.8V195l-51.2-51.2c-10.9-10.9-28.6-11-39.6 0-10.9 10.9-11 28.6 0 39.6l90.8 91.2v188.6l-164.2-94.8L286 244.1c-4-15-19.4-23.8-34.3-19.8-15 4-23.8 19.4-19.8 34.3l18.7 70-88.9-51.4c-13.1-7.6-30.4-3-38.1 10.4-7.8 13.5-3.2 30.5 10.1 38.2l89.8 51.9-70 18.7c-14.9 4-23.8 19.3-19.8 34.3 4 14.9 19.3 23.8 34.3 19.8l124.4-33.1 163.3 94.3-164.2 94.8-124.4-33.1c-15-4-30.3 4.9-34.3 19.8-4 15 4.9 30.3 19.8 34.3l70 18.7-88.9 51.4c-13.1 7.6-17.8 24.8-10.1 38.2 7.8 13.5 24.8 18 38.1 10.4l89.8-51.9-18.7 70c-4 14.9 4.8 30.3 19.8 34.3 14.9 4 30.3-4.8 34.3-19.8l33.6-124.3 163.3-94.3v190.6l-90.8 93c-11 11-10.9 28.7 0 39.6 11 11 28.7 10.9 39.6 0l51.2-51.2v99.9c0 15.1 12.5 27.8 28 27.8 15.6 0 28-12.5 28-27.8v-101l51.2 51.2c10.9 10.9 28.6 11 39.6 0 10.9-10.9 11-28.6 0-39.6l-90.8-93V560.2l165.1 95.3L740 780.6c4 15 19.4 23.8 34.3 19.8 15-4 23.8-19.4 19.8-34.3l-18.7-70 86.6 50c13.1 7.6 30.4 3 38.1-10.4 7.8-13.5 3.2-30.5-10.1-38.2L802.6 647l70-18.7c14.9-4 23.8-19.3 19.8-34.3-4-14.9-19.3-23.8-34.3-19.8l-125.9 32.2L568 511.6l165.1-95.3L859 448.5c15 4 30.3-4.9 34.3-19.8 4-15-4.9-30.3-19.8-34.3l-70-18.7 86.6-50c13.1-7.6 17.8-24.8 10.1-38.2-7.8-13.5-24.8-18-38.1-10.4l-87.4 50.5 18.7-70c4-14.9-4.8-30.3-19.8-34.3-14.9-4-30.3 4.8-34.3 19.8l-35.1 125.1z"
235
88
  }, null, -1)
236
89
  ]));
237
90
  }
238
- const we = /* @__PURE__ */ $e(it, [["render", ct]]), ut = "relative flex justify-center items-center transition not-disabled:cursor-pointer not-disabled:hover:opacity-90 disabled:opacity-40 rounded", j = /* @__PURE__ */ B({
239
- __name: "VButton",
240
- props: {
241
- block: { type: Boolean },
242
- outline: { type: Boolean, default: !1 },
243
- color: { default: "gray" },
244
- size: { default: "normal" },
245
- type: { default: "button" },
246
- href: { default: "" },
247
- to: { default: "" },
248
- loading: { type: Boolean, default: !1 },
249
- disabled: { type: [Number, Boolean], default: !1 }
250
- },
251
- emits: ["click"],
252
- setup(e, { emit: t }) {
253
- const d = t, r = (g) => d("click", g), s = e.outline ? "border border-green-600 text-green-600" : "bg-green-600 dark:bg-green-800", n = e.outline ? "border border-red-600 text-red-600" : "bg-red-600 dark:bg-red-800", v = e.outline ? "border border-gray-600 text-gray-600" : "bg-gray-500 dark:bg-gray-800", u = e.outline ? "border border-blue-600 text-blue-600" : "bg-blue-700 dark:bg-blue-800", f = { green: s, red: n, gray: v, blue: u }, a = {
254
- button: "px-4",
255
- icon: "rounded-full border border-gray-200 dark:border-gray-800"
256
- }, i = {
257
- button: { normal: "h-10", small: "h-8" },
258
- icon: { normal: "size-10", small: "size-8" }
259
- }, h = (g, P) => {
260
- var X;
261
- return ((X = i[g]) == null ? void 0 : X[P]) || "";
262
- }, b = (g) => (a == null ? void 0 : a[g]) || "", $ = (g) => e.type === "icon" ? "" : `${e.outline ? "dark:text-white" : "text-white"} ${(f == null ? void 0 : f[g]) || ""}`, y = M(() => [ut, $(e.color), b(e.type), h(e.type, e.size), { "w-full": e.block }]), w = M(() => e.href || e.to ? "router-link" : "button");
263
- return (g, P) => (o(), A(q(w.value), D(g.$attrs, {
264
- href: g.href,
265
- to: g.to,
266
- class: y.value,
267
- disabled: !!g.disabled,
268
- onClick: r
269
- }), {
270
- default: m(() => [
271
- l("span", {
272
- class: V(g.loading ? "opacity-0" : "")
273
- }, [
274
- C(g.$slots, "default")
275
- ], 2),
276
- g.loading ? (o(), A(we, {
277
- key: 0,
278
- class: "absolute left-1/2 -translate-x-1/2"
279
- })) : I("", !0)
280
- ]),
281
- _: 3
282
- }, 16, ["href", "to", "class", "disabled"]));
283
- }
284
- }), vt = ["checked", "disabled"], ft = { class: "text-sm ms-2 peer-disabled:opacity-40" }, ht = /* @__PURE__ */ B({
285
- __name: "VCheckbox",
286
- props: {
287
- modelValue: { type: [Number, Boolean], default: !1 },
288
- disabled: { type: Boolean, default: !1 }
289
- },
290
- emits: ["update:modelValue", "click"],
291
- setup(e, { emit: t }) {
292
- const d = t, r = (n) => {
293
- const v = n.target;
294
- d("update:modelValue", v.checked);
295
- }, s = (n) => d("click", n);
296
- return (n, v) => (o(), c("label", {
297
- class: V(["inline-flex items-center relative", { "cursor-pointer": !n.disabled }]),
298
- onClick: s
299
- }, [
300
- l("input", {
301
- type: "checkbox",
302
- checked: !!n.modelValue,
303
- disabled: n.disabled,
304
- class: "peer size-5 transition-all appearance-none rounded border border-gray-300 dark:border-gray-700 disabled:opacity-40 not-disabled:cursor-pointer",
305
- onChange: r
306
- }, null, 40, vt),
307
- v[0] || (v[0] = l("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" }, [
308
- l("svg", {
309
- class: "h-3.5 w-3.5",
310
- viewBox: "0 0 20 20",
311
- fill: "currentColor",
312
- stroke: "currentColor",
313
- "stroke-width": "1"
314
- }, [
315
- l("path", {
316
- "fill-rule": "evenodd",
317
- d: "M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z",
318
- "clip-rule": "evenodd"
319
- })
320
- ])
321
- ], -1)),
322
- l("span", ft, [
323
- C(n.$slots, "default")
324
- ])
325
- ], 2));
326
- }
327
- }), pt = {
91
+ const at = { render: lt }, st = {
92
+ width: "24",
93
+ height: "24",
94
+ fill: "currentColor",
95
+ viewBox: "0 0 24 24"
96
+ };
97
+ function ot(t, e) {
98
+ return s(), v("svg", st, e[0] || (e[0] = [
99
+ l("path", { 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 2-1-1H4v2h5.586zM4 9v10h16V7h-7.586l-2 2z" }, null, -1)
100
+ ]));
101
+ }
102
+ const nt = { render: ot }, rt = {
328
103
  width: "24",
329
104
  height: "24",
330
105
  fill: "currentColor",
331
106
  viewBox: "0 0 24 24"
332
107
  };
333
- function gt(e, t) {
334
- return o(), c("svg", pt, t[0] || (t[0] = [
108
+ function it(t, e) {
109
+ return s(), v("svg", rt, e[0] || (e[0] = [
335
110
  l("path", { d: "m12 13.171 4.95-4.95 1.414 1.415L12 16 5.636 9.636 7.05 8.222z" }, null, -1)
336
111
  ]));
337
112
  }
338
- const K = { render: gt }, mt = { class: "v-expansion__content max-h-0 overflow-hidden transition-all duration-300" }, bt = { class: "p-4" }, c1 = /* @__PURE__ */ B({
339
- __name: "VExpansion",
340
- props: {
341
- label: { default: "" },
342
- value: { type: Boolean, default: !1 }
343
- },
344
- setup(e) {
345
- const t = L(null), d = L(e.value), r = () => {
346
- if (!t.value) return;
347
- const n = t.value.querySelector(".v-expansion__content");
348
- n && (n.style.maxHeight = d.value ? `${n.scrollHeight}px` : "0");
349
- }, s = () => {
350
- d.value = !d.value, r();
351
- };
352
- return ce(() => {
353
- r();
354
- }), (n, v) => (o(), c("div", {
355
- ref_key: "root",
356
- ref: t,
357
- class: "border-b dark:border-gray-700 border-gray-200"
358
- }, [
359
- l("div", {
360
- class: "cursor-pointer min-h-[60px] px-4 flex items-center justify-between",
361
- onClick: s
362
- }, [
363
- l("h4", null, _(n.label), 1),
364
- l("div", {
365
- class: V(["transition text-gray-400", { "rotate-180": d.value }])
366
- }, [
367
- p(z(K))
368
- ], 2)
369
- ]),
370
- l("div", mt, [
371
- l("div", bt, [
372
- C(n.$slots, "default")
373
- ])
374
- ])
375
- ], 512));
376
- }
377
- }), yt = ["value", "selected"], Q = /* @__PURE__ */ B({
378
- __name: "VSelect",
379
- props: {
380
- value: { default: "" },
381
- label: {},
382
- disabled: { type: [Boolean, Number], default: !1 },
383
- list: {}
384
- },
385
- emits: ["update:modelValue", "change"],
386
- setup(e, { emit: t }) {
387
- const d = t, r = M(() => {
388
- const u = e.list.find((f) => f.value === e.value);
389
- return (u == null ? void 0 : u.name) || "";
390
- }), s = (u) => ({ "rotate-x-180": u }), n = (u) => {
391
- const f = u.target, a = (f == null ? void 0 : f.value) || 0, i = e.list.find((h) => h.value == a);
392
- i && d("change", i);
393
- }, v = (u, f) => {
394
- u.click(f), d("change", f);
395
- };
396
- return (u, f) => (o(), A(te, D({ class: "relative w-full" }, u.$attrs, { top: "46px" }), {
397
- activator: m(({ on: a, show: i }) => [
398
- p(O, {
399
- "model-value": r.value,
400
- readonly: "",
401
- hideMessage: "",
402
- disabled: u.disabled,
403
- active: "",
404
- label: u.label,
405
- onClick: a.click,
406
- onOnIcon: a.click
407
- }, {
408
- icon: m(() => [
409
- p(z(K), {
410
- class: V(["transition", s(i)])
411
- }, null, 8, ["class"])
412
- ]),
413
- _: 2
414
- }, 1032, ["model-value", "disabled", "label", "onClick", "onOnIcon"]),
415
- l("select", {
416
- class: "md:hidden absolute left-0 top-0 w-full h-full opacity-0",
417
- name: "select",
418
- onChange: n
419
- }, [
420
- (o(!0), c(H, null, N(u.list, (h) => (o(), c("option", {
421
- key: h.value,
422
- value: h.value,
423
- selected: u.value === h.value
424
- }, _(h.name), 9, yt))), 128))
425
- ], 32)
426
- ]),
427
- default: m(({ on: a }) => [
428
- p(le, {
429
- list: u.list,
430
- onClick: (i) => v(a, i)
431
- }, {
432
- default: m(({ item: i }) => [
433
- C(u.$slots, "default", { item: i }, () => [
434
- T(_(i.name), 1)
435
- ])
436
- ]),
437
- _: 2
438
- }, 1032, ["list", "onClick"])
439
- ]),
440
- _: 3
441
- }, 16));
442
- }
443
- }), xt = { class: "flex items-center cursor-pointer" }, u1 = /* @__PURE__ */ B({
444
- __name: "VFile",
445
- emits: ["change"],
446
- setup(e, { emit: t }) {
447
- const d = t, r = async (s) => {
448
- const n = s.target;
449
- n.files && d("change", n.files);
450
- };
451
- return (s, n) => (o(), c("label", xt, [
452
- l("input", D({
453
- type: "file",
454
- class: "hidden"
455
- }, s.$attrs, { onChange: r }), null, 16),
456
- C(s.$slots, "default")
457
- ]));
458
- }
459
- }), kt = {
113
+ const dt = { render: it }, ct = {
460
114
  width: "24",
461
115
  height: "24",
462
116
  fill: "currentColor",
463
117
  viewBox: "0 0 24 24"
464
118
  };
465
- function _t(e, t) {
466
- return o(), c("svg", kt, t[0] || (t[0] = [
467
- l("path", { d: "M21 3H3a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2m0 9H3V5h18ZM5 10a1 1 0 0 1 1-1h12a1 1 0 0 1 0 2H6a1 1 0 0 1-1-1m11-3a1 1 0 0 1 1-1h1a1 1 0 0 1 0 2h-1a1 1 0 0 1-1-1M9.793 20.293 11.086 19l-.293-.293a1 1 0 0 1 0-1.414l2-2a1 1 0 0 1 1.414 1.414L12.914 18l.293.293a1 1 0 0 1 0 1.414l-2 2a1 1 0 0 1-1.414-1.414m5.5 0L16.586 19l-.293-.293a1 1 0 0 1 0-1.414l2-2a1 1 0 0 1 1.414 1.414L18.414 18l.293.293a1 1 0 0 1 0 1.414l-2 2a1 1 0 0 1-1.414-1.414m-11 0L5.586 19l-.293-.293a1 1 0 0 1 0-1.414l2-2a1 1 0 0 1 1.414 1.414L7.414 18l.293.293a1 1 0 0 1 0 1.414l-2 2a1 1 0 0 1-1.414-1.414" }, null, -1)
468
- ]));
469
- }
470
- const $t = { render: _t }, wt = {
471
- width: "24",
472
- height: "24",
473
- fill: "currentColor",
474
- viewBox: "-2 0 15.998 15.998"
475
- };
476
- function Ct(e, t) {
477
- return o(), c("svg", wt, t[0] || (t[0] = [
478
- l("path", {
479
- d: "M9.785 1.341A6.04 6.04 0 0 0 4.718.132a5.98 5.98 0 0 0-4.6 4.673 5.97 5.97 0 0 0 1.884 5.665v.028a2.49 2.49 0 0 0 1 1.989v1.011a1.5 1.5 0 0 0 1.5 1.5h.355a1.17 1.17 0 0 0 1.145 1 1.17 1.17 0 0 0 1.145-1h.355a1.5 1.5 0 0 0 1.5-1.5v-1.011a2.49 2.49 0 0 0 1-1.989v-.028a5.98 5.98 0 0 0 2-4.472 5.98 5.98 0 0 0-2.217-4.657M8.002 12.998v.5a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-.5zm1.182-3.143a.5.5 0 0 0-.182.386v.257a1.5 1.5 0 0 1-1.5 1.5h-3a1.5 1.5 0 0 1-1.5-1.5v-.257a.5.5 0 0 0-.182-.386 4.98 4.98 0 0 1-1.718-4.857 4.97 4.97 0 0 1 3.821-3.884A5.3 5.3 0 0 1 5.99.998a5 5 0 0 1 3.164 1.117 4.98 4.98 0 0 1 1.848 3.883 4.99 4.99 0 0 1-1.818 3.857M6.502 3.498a.5.5 0 0 1-.5.5 2 2 0 0 0-2 2 .5.5 0 0 1-.5.5.5.5 0 0 1-.5-.5 3 3 0 0 1 3-3 .5.5 0 0 1 .5.5",
480
- "data-name": "Path 81"
481
- }, null, -1)
482
- ]));
483
- }
484
- const zt = { render: Ct }, Vt = {
485
- width: "24",
486
- height: "24",
487
- fill: "none",
488
- viewBox: "0 0 24 24"
489
- };
490
- function Bt(e, t) {
491
- return o(), c("svg", Vt, t[0] || (t[0] = [
492
- l("path", {
493
- stroke: "currentColor",
494
- "stroke-linecap": "round",
495
- "stroke-linejoin": "round",
496
- "stroke-width": "2",
497
- d: "M12 16a3 3 0 1 0 0-6 3 3 0 0 0 0 6"
498
- }, null, -1),
499
- l("path", {
500
- stroke: "currentColor",
501
- "stroke-linecap": "round",
502
- "stroke-linejoin": "round",
503
- "stroke-width": "2",
504
- d: "M3 16.8V9.2c0-1.12 0-1.68.218-2.108a2 2 0 0 1 .874-.874C4.52 6 5.08 6 6.2 6h1.055c.123 0 .184 0 .24-.006a1 1 0 0 0 .725-.448c.03-.048.058-.103.113-.213.11-.22.165-.33.228-.425a2 2 0 0 1 1.447-.895C10.123 4 10.246 4 10.492 4h3.018c.246 0 .37 0 .482.013a2 2 0 0 1 1.448.895c.063.095.118.205.228.425.055.11.082.165.113.213a1 1 0 0 0 .724.447c.057.007.118.007.241.007H17.8c1.12 0 1.68 0 2.108.218a2 2 0 0 1 .874.874C21 7.52 21 8.08 21 9.2v7.6c0 1.12 0 1.68-.218 2.108a2 2 0 0 1-.874.874C19.48 20 18.92 20 17.8 20H6.2c-1.12 0-1.68 0-2.108-.218a2 2 0 0 1-.874-.874C3 18.48 3 17.92 3 16.8"
505
- }, null, -1)
506
- ]));
507
- }
508
- const Mt = { render: Bt }, It = {
509
- width: "24",
510
- height: "24",
511
- fill: "currentColor",
512
- viewBox: "0 0 24 24"
513
- };
514
- function At(e, t) {
515
- return o(), c("svg", It, t[0] || (t[0] = [
516
- l("path", {
517
- "fill-rule": "evenodd",
518
- d: "M5.999 10.495a1.5 1.5 0 0 1 1.5 1.5v.01a1.5 1.5 0 0 1-3 0v-.01a1.5 1.5 0 0 1 1.5-1.5m12 0a1.5 1.5 0 0 1 1.5 1.5v.01a1.5 1.5 0 1 1-3 0v-.01a1.5 1.5 0 0 1 1.5-1.5m-4.5 1.5a1.5 1.5 0 1 0-3 0v.01a1.5 1.5 0 0 0 3 0z",
519
- "clip-rule": "evenodd"
520
- }, null, -1)
521
- ]));
522
- }
523
- const Ce = { render: At }, St = {
524
- width: "24",
525
- height: "24",
526
- viewBox: "0 0 1024 1024"
527
- };
528
- function Tt(e, t) {
529
- return o(), c("svg", St, t[0] || (t[0] = [
530
- l("path", {
531
- fill: "currentColor",
532
- d: "M539.7 463.1V273.5l90.8-91.2c11-11 10.9-28.7 0-39.6-11-11-28.7-10.9-39.6 0L539.7 194V91.3c0-15.1-12.5-27.8-28-27.8-15.6 0-28 12.5-28 27.8V195l-51.2-51.2c-10.9-10.9-28.6-11-39.6 0-10.9 10.9-11 28.6 0 39.6l90.8 91.2v188.6l-164.2-94.8L286 244.1c-4-15-19.4-23.8-34.3-19.8-15 4-23.8 19.4-19.8 34.3l18.7 70-88.9-51.4c-13.1-7.6-30.4-3-38.1 10.4-7.8 13.5-3.2 30.5 10.1 38.2l89.8 51.9-70 18.7c-14.9 4-23.8 19.3-19.8 34.3 4 14.9 19.3 23.8 34.3 19.8l124.4-33.1 163.3 94.3-164.2 94.8-124.4-33.1c-15-4-30.3 4.9-34.3 19.8-4 15 4.9 30.3 19.8 34.3l70 18.7-88.9 51.4c-13.1 7.6-17.8 24.8-10.1 38.2 7.8 13.5 24.8 18 38.1 10.4l89.8-51.9-18.7 70c-4 14.9 4.8 30.3 19.8 34.3 14.9 4 30.3-4.8 34.3-19.8l33.6-124.3 163.3-94.3v190.6l-90.8 93c-11 11-10.9 28.7 0 39.6 11 11 28.7 10.9 39.6 0l51.2-51.2v99.9c0 15.1 12.5 27.8 28 27.8 15.6 0 28-12.5 28-27.8v-101l51.2 51.2c10.9 10.9 28.6 11 39.6 0 10.9-10.9 11-28.6 0-39.6l-90.8-93V560.2l165.1 95.3L740 780.6c4 15 19.4 23.8 34.3 19.8 15-4 23.8-19.4 19.8-34.3l-18.7-70 86.6 50c13.1 7.6 30.4 3 38.1-10.4 7.8-13.5 3.2-30.5-10.1-38.2L802.6 647l70-18.7c14.9-4 23.8-19.3 19.8-34.3-4-14.9-19.3-23.8-34.3-19.8l-125.9 32.2L568 511.6l165.1-95.3L859 448.5c15 4 30.3-4.9 34.3-19.8 4-15-4.9-30.3-19.8-34.3l-70-18.7 86.6-50c13.1-7.6 17.8-24.8 10.1-38.2-7.8-13.5-24.8-18-38.1-10.4l-87.4 50.5 18.7-70c4-14.9-4.8-30.3-19.8-34.3-14.9-4-30.3 4.8-34.3 19.8l-35.1 125.1z"
533
- }, null, -1)
534
- ]));
535
- }
536
- const Ht = { render: Tt }, Dt = {
537
- width: "24",
538
- height: "24",
539
- fill: "currentColor",
540
- viewBox: "0 0 24 24"
541
- };
542
- function Lt(e, t) {
543
- return o(), c("svg", Dt, t[0] || (t[0] = [
544
- l("path", { 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 2-1-1H4v2h5.586zM4 9v10h16V7h-7.586l-2 2z" }, null, -1)
545
- ]));
546
- }
547
- const ze = { render: Lt }, jt = {
548
- width: "24",
549
- height: "24",
550
- fill: "currentColor",
551
- viewBox: "0 0 24 24"
552
- };
553
- function Nt(e, t) {
554
- return o(), c("svg", jt, t[0] || (t[0] = [
119
+ function ut(t, e) {
120
+ return s(), v("svg", ct, e[0] || (e[0] = [
555
121
  l("path", { d: "m12 10.587 4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.415 1.414-4.95-4.95-4.949 4.95-1.414-1.415 4.95-4.95-4.95-4.95L7.05 5.638z" }, null, -1)
556
122
  ]));
557
123
  }
558
- const G = { render: Nt }, Ot = {
124
+ const vt = { render: ut }, ft = {
559
125
  width: "24",
560
126
  height: "24",
561
127
  fill: "none",
562
128
  viewBox: "0 0 24 24"
563
129
  };
564
- function Ft(e, t) {
565
- return o(), c("svg", Ot, t[0] || (t[0] = [
130
+ function ht(t, e) {
131
+ return s(), v("svg", ft, e[0] || (e[0] = [
566
132
  l("path", {
567
133
  fill: "currentColor",
568
134
  "fill-rule": "evenodd",
@@ -571,24 +137,24 @@ function Ft(e, t) {
571
137
  }, null, -1)
572
138
  ]));
573
139
  }
574
- const Pt = { render: Ft }, Et = {
140
+ const pt = { render: ht }, mt = {
575
141
  width: "24",
576
142
  height: "24",
577
143
  fill: "currentColor",
578
144
  viewBox: "0 0 24 24"
579
145
  };
580
- function Rt(e, t) {
581
- return o(), c("svg", Et, t[0] || (t[0] = [
146
+ function gt(t, e) {
147
+ return s(), v("svg", mt, e[0] || (e[0] = [
582
148
  l("path", { d: "M11 14v-3h2v3h5a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1v-6a1 1 0 0 1 1-1zM2.51 8.837C3.835 4.864 7.584 2 12 2c4.418 0 8.166 2.864 9.49 6.837l-1.898.632a8.004 8.004 0 0 0-15.183 0zm3.797 1.265a6.003 6.003 0 0 1 11.387 0l-1.898.633a4.002 4.002 0 0 0-7.592 0zM7 16v4h10v-4z" }, null, -1)
583
149
  ]));
584
150
  }
585
- const Ut = { render: Rt }, Gt = {
151
+ const bt = { render: gt }, yt = {
586
152
  width: "24",
587
153
  height: "24",
588
154
  viewBox: "0 0 1024 1024"
589
155
  };
590
- function Wt(e, t) {
591
- return o(), c("svg", Gt, t[0] || (t[0] = [
156
+ function xt(t, e) {
157
+ return s(), v("svg", yt, e[0] || (e[0] = [
592
158
  l("path", {
593
159
  fill: "#5E676F",
594
160
  d: "M166.5 608.4c0-180.9 153.4-261.1 317.8-528.9 14.4-19.9 43.2-19.9 58.4 1.5 164.6 268.7 317 346.8 317 527.4 0 191.4-155.2 346.6-346.6 346.6S166.5 799.8 166.5 608.4"
@@ -603,122 +169,122 @@ function Wt(e, t) {
603
169
  }, null, -1)
604
170
  ]));
605
171
  }
606
- const qt = { render: Wt }, Kt = {
172
+ const kt = { render: xt }, _t = {
607
173
  width: "24",
608
174
  height: "24",
609
175
  fill: "currentColor",
610
176
  viewBox: "0 0 24 24"
611
177
  };
612
- function Zt(e, t) {
613
- return o(), c("svg", Kt, t[0] || (t[0] = [
178
+ function $t(t, e) {
179
+ return s(), v("svg", _t, e[0] || (e[0] = [
614
180
  l("path", { d: "M3 4h18v2H3zm0 7h12v2H3zm0 7h18v2H3z" }, null, -1)
615
181
  ]));
616
182
  }
617
- const Ve = { render: Zt }, Jt = {
183
+ const wt = { render: $t }, Ct = {
618
184
  width: "24",
619
185
  height: "24",
620
186
  fill: "currentColor",
621
187
  viewBox: "0 0 24 24"
622
188
  };
623
- function Qt(e, t) {
624
- return o(), c("svg", Jt, t[0] || (t[0] = [
189
+ function zt(t, e) {
190
+ return s(), v("svg", Ct, e[0] || (e[0] = [
625
191
  l("path", { d: "M17.883 19.297A10.95 10.95 0 0 1 12 21c-5.392 0-9.878-3.88-10.818-9A11 11 0 0 1 4.52 5.935L1.394 2.808l1.414-1.414 19.799 19.798-1.414 1.415zM5.936 7.35A8.97 8.97 0 0 0 3.223 12a9.005 9.005 0 0 0 13.201 5.838l-2.028-2.028A4.5 4.5 0 0 1 8.19 9.604zm6.978 6.978-3.242-3.241a2.5 2.5 0 0 0 3.241 3.241m7.893 2.265-1.431-1.431A8.9 8.9 0 0 0 20.778 12 9.005 9.005 0 0 0 9.552 5.338L7.974 3.76C9.221 3.27 10.58 3 12 3c5.392 0 9.878 3.88 10.819 9a10.95 10.95 0 0 1-2.012 4.593m-9.084-9.084Q11.86 7.5 12 7.5a4.5 4.5 0 0 1 4.492 4.778z" }, null, -1)
626
192
  ]));
627
193
  }
628
- const Xt = { render: Qt }, Yt = {
194
+ const Vt = { render: zt }, Bt = {
629
195
  width: "24",
630
196
  height: "24",
631
197
  fill: "currentColor",
632
198
  viewBox: "0 0 24 24"
633
199
  };
634
- function el(e, t) {
635
- return o(), c("svg", Yt, t[0] || (t[0] = [
200
+ function Mt(t, e) {
201
+ return s(), v("svg", Bt, e[0] || (e[0] = [
636
202
  l("path", { d: "M12 3c5.392 0 9.878 3.88 10.819 9-.94 5.12-5.427 9-10.819 9s-9.878-3.88-10.818-9C2.122 6.88 6.608 3 12 3m0 16a9.005 9.005 0 0 0 8.778-7 9.005 9.005 0 0 0-17.555 0A9.005 9.005 0 0 0 12 19m0-2.5a4.5 4.5 0 1 1 0-9 4.5 4.5 0 0 1 0 9m0-2a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5" }, null, -1)
637
203
  ]));
638
204
  }
639
- const tl = { render: el }, ll = {
205
+ const It = { render: Mt }, At = {
640
206
  width: "24",
641
207
  height: "24",
642
208
  fill: "currentColor",
643
209
  viewBox: "0 0 24 24"
644
210
  };
645
- function sl(e, t) {
646
- return o(), c("svg", ll, t[0] || (t[0] = [
211
+ function St(t, e) {
212
+ return s(), v("svg", At, e[0] || (e[0] = [
647
213
  l("path", { d: "M9 2.003V2h10.998C20.55 2 21 2.455 21 2.992v18.016a.993.993 0 0 1-.993.992H3.993A1 1 0 0 1 3 20.993V8zM5.83 8H9V4.83zM11 4v5a1 1 0 0 1-1 1H5v10h14V4z" }, null, -1)
648
214
  ]));
649
215
  }
650
- const al = { render: sl }, ol = {
216
+ const Tt = { render: St }, Dt = {
651
217
  width: "24",
652
218
  height: "24",
653
219
  fill: "currentColor",
654
220
  viewBox: "0 0 24 24"
655
221
  };
656
- function nl(e, t) {
657
- return o(), c("svg", ol, t[0] || (t[0] = [
222
+ function Ht(t, e) {
223
+ return s(), v("svg", Dt, e[0] || (e[0] = [
658
224
  l("path", { d: "M3 7h18v10h-2v-2h-2v2h-2v-2h-2v2h-2v-2H9v2H7v-2H5v2H3zM2 5a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h20a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zm9 4H5v3h6zm2 0h6v3h-6z" }, null, -1)
659
225
  ]));
660
226
  }
661
- const rl = { render: nl }, il = {
227
+ const Lt = { render: Ht }, jt = {
662
228
  width: "24",
663
229
  height: "24",
664
230
  fill: "currentColor",
665
231
  viewBox: "0 0 24 24"
666
232
  };
667
- function dl(e, t) {
668
- return o(), c("svg", il, t[0] || (t[0] = [
233
+ function Nt(t, e) {
234
+ return s(), v("svg", jt, e[0] || (e[0] = [
669
235
  l("path", { d: "M12 4a7.99 7.99 0 0 0-6.616 3.5H8v2H2v-6h2V6a9.98 9.98 0 0 1 8-4c5.523 0 10 4.477 10 10h-2a8 8 0 0 0-8-8m-8 8a8 8 0 0 0 14.616 4.5H16v-2h6v6h-2V18a9.98 9.98 0 0 1-8 4C6.477 22 2 17.523 2 12z" }, null, -1)
670
236
  ]));
671
237
  }
672
- const cl = { render: dl }, ul = {
238
+ const Ot = { render: Nt }, Pt = {
673
239
  width: "24",
674
240
  height: "24",
675
241
  fill: "currentColor",
676
242
  viewBox: "0 0 491.7 491.7"
677
243
  };
678
- function vl(e, t) {
679
- return o(), c("svg", ul, t[0] || (t[0] = [
244
+ function Ft(t, e) {
245
+ return s(), v("svg", Pt, e[0] || (e[0] = [
680
246
  l("path", { d: "M471.1 368.65v-245.7c11.3 0 20.5-9.2 20.5-20.5s-9.2-20.5-20.5-20.5h-1c-4.8-23.3-25.4-41-50.2-41-24.7 0-45.4 17.6-50.2 41h-22.6c-4.8-23.3-25.4-41-50.2-41-24.7 0-45.4 17.6-50.2 41h-22.6c-4.8-23.3-25.4-41-50.2-41-24.7 0-45.4 17.6-50.2 41h-21.5v-61.4c0-11.3-9.2-20.5-20.5-20.5H20.5C9.2.05 0 9.25 0 20.55v450.6c0 11.3 9.2 20.5 20.5 20.5h61.4c11.3 0 20.5-9.2 20.5-20.5v-61.4h21.5c4.8 23.3 25.4 41 50.2 41 24.7 0 45.4-17.6 50.2-41h22.5c4.8 23.3 25.4 41 50.2 41 24.7 0 45.4-17.6 50.2-41h22.6c4.8 23.3 25.4 41 50.2 41 24.7 0 45.4-17.6 50.2-41h1c11.3 0 20.5-9.2 20.5-20.5s-9.3-20.6-20.6-20.6m-348.2 0h-20.5v-245.7h20.5zm122.9 0h-20.5v-245.7h20.5zm122.9 0h-20.5v-245.7h20.5z" }, null, -1)
681
247
  ]));
682
248
  }
683
- const fl = { render: vl }, hl = {
249
+ const Et = { render: Ft }, Rt = {
684
250
  width: "24",
685
251
  height: "24",
686
252
  fill: "currentColor",
687
253
  viewBox: "0 0 24 24"
688
254
  };
689
- function pl(e, t) {
690
- return o(), c("svg", hl, t[0] || (t[0] = [
255
+ function Ut(t, e) {
256
+ return s(), v("svg", Rt, e[0] || (e[0] = [
691
257
  l("path", { d: "M6.17 18a3.001 3.001 0 0 1 5.66 0H22v2H11.83a3.001 3.001 0 0 1-5.66 0H2v-2zm6-7a3.001 3.001 0 0 1 5.66 0H22v2h-4.17a3.001 3.001 0 0 1-5.66 0H2v-2zm-6-7a3.001 3.001 0 0 1 5.66 0H22v2H11.83a3.001 3.001 0 0 1-5.66 0H2V4zM9 6a1 1 0 1 0 0-2 1 1 0 0 0 0 2m6 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2m-6 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2" }, null, -1)
692
258
  ]));
693
259
  }
694
- const gl = { render: pl }, ml = {
260
+ const Wt = { render: Ut }, qt = {
695
261
  fill: "currentColor",
696
262
  viewBox: "0 0 179 40"
697
263
  };
698
- function bl(e, t) {
699
- return o(), c("svg", ml, t[0] || (t[0] = [
264
+ function Gt(t, e) {
265
+ return s(), v("svg", qt, e[0] || (e[0] = [
700
266
  l("path", { d: "M24.264 11.217c0 5.347-1.898 11.74-5.138 15.962-1.05 1.368-4.049 4.478-5.816 2.415-1.26-1.471-.47-5.037-.116-6.673 1.218-5.628 2.62-10.76 4.028-16.343-3.656 1.984-9.07-3.295-9.35-.302-1.637 9.446-3.83 27.866 2.174 29.46 10.87 1.45 15.99-11.283 17.198-20.29.29-2.16.548-4.363.32-6.548-.312-2.973-3.296-4.46-5.819-2.946-1.518.911-1.614 4.085-.257 5.187.726.59 1.983.421 2.776.078M40.744 4.761l.002 12.436-3.502 3.412 3.502 3.467v12.438l.536.003s.01-12.404-.007-12.438l3.487-3.38-3.486-3.5V4.762zM133.638 24.706c-.732-.23-2.09-.29-2.649.141-.739.62-.084 3.093-.101 3.953.052 2.697 2.753 4.142 4.786 4.502 0 0 5.988.651 9.036-.742 4.77-2.18 5.416-8.62 1.848-12.205-2.025-2.5-9.668-4.457-10.485-6.835-.87-1.026-.335-3.054.678-3.806 1.39-1.031 3.442-1.004 5.036-.684 1.742.35 1.88 1.86 2.391 3.398.197.594.383 1.686 1.077 1.865.299.077.62-.015.917-.052 2.183-.275 1.5-1.558 1.607-3.303.05-.821.295-2.215-.15-2.967-.796-1.348-2.323-1.36-4.115-2.092-1.594-.398-4.328-.75-6.644-.171-1.85.462-3.787 1.432-4.948 3.037-2.167 2.996-1.276 7.802 1.363 10.191 2.946 2.668 7.76 2.97 10.153 6.317 2.246 3.14-2.486 5.148-4.93 4.933-5.303-.047-3.14-4.191-4.87-5.48M69.501 9.017l2.79 1.228-6.112 16.509c-1.73-6.733-3.409-12.76-4.916-16.645.763-.164 2.385-.561 2.71-1.379.31-.777-.152-1.78-.185-2.578-1.213.102-10.556-.31-10.951.317-.136.714-.511 1.768-.264 2.358.537 1.168 2.501.48 3.156 1.892 3.442 7.402 5.118 14.56 8.09 21.355 4.96 7.37 8.38-12.623 9.603-16.235.543-1.613.958-4.097 2.019-5.426 2.014-2.379 3.85-.734 2.906-3.831-.696-.811-8.386-.374-8.556-.21-.459.588-1 1.064-.29 2.645M80.132 6.152c-.133.66-.653 2.2-.18 2.777.652.799 2.702.514 2.851 1.731.478 3.898-.053 7.953.114 11.864.117 2.75.464 5.712 2.276 7.908 4.83 5.85 15.167 3.5 17.052-3.815 1.214-4.715.4-11.024.41-15.866.004-2.154 2.064-.485 2.985-1.822.444-.644-.16-2.072-.262-2.777-2.718-.035-5.428-.035-8.14.14l-.497 1.634c.113 1.896 1.512 1.37 3.177 1.604.043 1.254.012 6.675.012 9.72 0 2.647.063 5.503-1.181 7.913-2.068 4.005-8.193 4.012-9.95-.273-1.413-3.448-.816-7.672-.828-11.324-.005-1.499-.332-3.457.043-4.906.338-1.309 2.209-.877 2.931-1.731.437-.517-.069-2.144-.183-2.777zM127.818 32.925c-.679-4.31.658-7.155-.196-8.136-.421-.431-2.323-.529-2.71-.039-1.014 1.285-.798 3.762-1.958 4.923-.416.417-1.365.2-1.896.23-1.741.102-3.441-.012-5.182-.012l-.133-9.277c.96.125 2.881-.272 3.683.173.886.492.476 2.324 1.403 2.802.685-.01 1.735.065 2.325-.192.692-1.059.497-8.27-.002-8.546-.733-.033-1.767-.39-2.332-.158-.876.392-.664 2.078-1.41 2.7-.694.582-2.845.284-3.667.083l.002-2.728.13-5.73h4.784c.558 0 1.464-.174 1.957.14 1.26.801.695 3.447 1.82 4.22.62.427 1.889-.277 2.601-.268-.23-1.368.688-6.107-.08-6.817-1.139-.024-16.47.013-18.903.078-.373.446-.561 2.128-.203 2.593.642.835 2.147.596 2.721 1.358.6 3.898 1.049 13.15.08 18.054-.291 1.062-2.151.814-2.745 1.614-.212.714-.099 1.82.204 2.463.685 1.025 14.62.433 19.707.472M154.942 10.245c0 5.923.508 12.11-.008 18.007-.107 1.218-1.978 1.03-2.74 1.65-.558.453-.26 1.97-.023 2.561 2.088.638 11.468 1.266 11.878-.662.076-.417.314-1.307.056-1.677-.767-1.097-3.844-.326-4.094-1.876-.009-7.56-.047-7.539-.02-19.23 2.151 0 4.55-.408 6.242 1.24 2.427 2.36 1.587 7.287-1.193 8.953-1.019.611-2.45.448-3.587.448v3.138c3.081 0 6.756-.03 9.168-2.332 3.776-3.607 2.622-11.45-2.126-13.607-.624-1.135-12.871-2.346-16.036-.605-.358.188-.487.817-.42 1.14-.444 2.346 1.134 2.54 2.903 2.852" }, null, -1)
701
267
  ]));
702
268
  }
703
- const fe = { render: bl }, yl = {
269
+ const Kt = { render: Gt }, Zt = {
704
270
  width: "40",
705
271
  height: "40",
706
272
  fill: "currentColor",
707
273
  viewBox: "0 0 40 40"
708
274
  };
709
- function xl(e, t) {
710
- return o(), c("svg", yl, t[0] || (t[0] = [
275
+ function Jt(t, e) {
276
+ return s(), v("svg", Zt, e[0] || (e[0] = [
711
277
  l("path", { d: "M24.264 11.217c0 5.347-1.898 11.74-5.138 15.962-1.05 1.368-4.049 4.478-5.816 2.415-1.26-1.471-.47-5.037-.116-6.673 1.218-5.628 2.62-10.76 4.028-16.343-3.656 1.984-9.07-3.295-9.35-.302-1.637 9.446-3.83 27.866 2.174 29.46 10.87 1.45 15.99-11.283 17.198-20.29.29-2.16.548-4.363.32-6.548-.312-2.973-3.296-4.46-5.819-2.946-1.518.911-1.614 4.085-.257 5.187.726.59 1.983.421 2.776.078" }, null, -1)
712
278
  ]));
713
279
  }
714
- const Be = { render: xl }, kl = {
280
+ const Qt = { render: Jt }, Xt = {
715
281
  width: "24",
716
282
  height: "24",
717
283
  fill: "none",
718
284
  viewBox: "0 0 24 24"
719
285
  };
720
- function _l(e, t) {
721
- return o(), c("svg", kl, t[0] || (t[0] = [
286
+ function Yt(t, e) {
287
+ return s(), v("svg", Xt, e[0] || (e[0] = [
722
288
  l("path", {
723
289
  stroke: "currentColor",
724
290
  "stroke-linecap": "round",
@@ -734,10 +300,10 @@ function _l(e, t) {
734
300
  }, null, -1)
735
301
  ]));
736
302
  }
737
- const re = { render: _l };
738
- function $l(e, t) {
739
- return o(), c(H, null, [
740
- t[0] || (t[0] = l("svg", {
303
+ const el = { render: Yt };
304
+ function tl(t, e) {
305
+ return s(), v(D, null, [
306
+ e[0] || (e[0] = l("svg", {
741
307
  width: "20",
742
308
  height: "20",
743
309
  fill: "currentColor",
@@ -746,7 +312,7 @@ function $l(e, t) {
746
312
  }, [
747
313
  l("path", { d: "M10 7a7 7 0 0 0 12 4.9v.1c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2h.1A6.98 6.98 0 0 0 10 7m-6 5a8 8 0 0 0 15.062 3.762A9 9 0 0 1 8.238 4.938 8 8 0 0 0 4 12" })
748
314
  ], -1)),
749
- t[1] || (t[1] = l("svg", {
315
+ e[1] || (e[1] = l("svg", {
750
316
  width: "20",
751
317
  height: "20",
752
318
  fill: "currentColor",
@@ -757,25 +323,25 @@ function $l(e, t) {
757
323
  ], -1))
758
324
  ], 64);
759
325
  }
760
- const Me = { render: $l }, wl = {
326
+ const ll = { render: tl }, al = {
761
327
  width: "24",
762
328
  height: "24",
763
329
  fill: "currentColor",
764
330
  viewBox: "0 0 24 24"
765
331
  };
766
- function Cl(e, t) {
767
- return o(), c("svg", wl, t[0] || (t[0] = [
332
+ function sl(t, e) {
333
+ return s(), v("svg", al, e[0] || (e[0] = [
768
334
  l("path", { d: "M12 10h7L8 22l3-9H5l8-11Z" }, null, -1)
769
335
  ]));
770
336
  }
771
- const zl = { render: Cl }, Vl = {
337
+ const ol = { render: sl }, nl = {
772
338
  width: "24",
773
339
  height: "24",
774
340
  fill: "none",
775
341
  viewBox: "0 0 24 24"
776
342
  };
777
- function Bl(e, t) {
778
- return o(), c("svg", Vl, t[0] || (t[0] = [
343
+ function rl(t, e) {
344
+ return s(), v("svg", nl, e[0] || (e[0] = [
779
345
  l("path", {
780
346
  stroke: "currentColor",
781
347
  "stroke-linecap": "round",
@@ -785,58 +351,58 @@ function Bl(e, t) {
785
351
  }, null, -1)
786
352
  ]));
787
353
  }
788
- const Ml = { render: Bl }, Il = {
354
+ const il = { render: rl }, dl = {
789
355
  width: "22",
790
356
  height: "22",
791
357
  fill: "currentColor",
792
358
  viewBox: "0 0 24 24"
793
359
  };
794
- function Al(e, t) {
795
- return o(), c("svg", Il, t[0] || (t[0] = [
360
+ function cl(t, e) {
361
+ return s(), v("svg", dl, e[0] || (e[0] = [
796
362
  l("path", { d: "M5 22a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v3h-2V4H6v16h12v-2h2v3a1 1 0 0 1-1 1zm13-6v-3h-7v-2h7V8l5 4z" }, null, -1)
797
363
  ]));
798
364
  }
799
- const Ie = { render: Al }, Sl = {
365
+ const ul = { render: cl }, vl = {
800
366
  width: "24",
801
367
  height: "24",
802
368
  fill: "currentColor",
803
369
  viewBox: "0 0 24 24"
804
370
  };
805
- function Tl(e, t) {
806
- return o(), c("svg", Sl, t[0] || (t[0] = [
371
+ function fl(t, e) {
372
+ return s(), v("svg", vl, e[0] || (e[0] = [
807
373
  l("path", { d: "M22 20H2v-2h1v-6.969C3 6.043 7.03 2 12 2s9 4.043 9 9.031V18h1zM5 18h14v-6.969C19 7.148 15.866 4 12 4s-7 3.148-7 7.031zm4.5 3h5a2.5 2.5 0 0 1-5 0" }, null, -1)
808
374
  ]));
809
375
  }
810
- const he = { render: Tl }, Hl = {
376
+ const hl = { render: fl }, pl = {
811
377
  width: "24",
812
378
  height: "24",
813
379
  fill: "currentColor",
814
380
  viewBox: "0 0 24 24"
815
381
  };
816
- function Dl(e, t) {
817
- return o(), c("svg", Hl, t[0] || (t[0] = [
382
+ function ml(t, e) {
383
+ return s(), v("svg", pl, e[0] || (e[0] = [
818
384
  l("path", { d: "M7 19v-6h10v6h2V7.828L16.172 5H5v14zM4 3h13l4 4v13a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1m5 12v4h6v-4z" }, null, -1)
819
385
  ]));
820
386
  }
821
- const ie = { render: Dl }, Ll = {
387
+ const gl = { render: ml }, bl = {
822
388
  width: "24",
823
389
  height: "24",
824
390
  fill: "currentColor",
825
391
  viewBox: "0 0 30 30"
826
392
  };
827
- function jl(e, t) {
828
- return o(), c("svg", Ll, t[0] || (t[0] = [
393
+ function yl(t, e) {
394
+ return s(), v("svg", bl, e[0] || (e[0] = [
829
395
  l("path", { d: "M13 3C7.489 3 3 7.489 3 13s4.489 10 10 10a9.95 9.95 0 0 0 6.322-2.264l5.971 5.971a1 1 0 1 0 1.414-1.414l-5.97-5.97A9.95 9.95 0 0 0 23 13c0-5.511-4.489-10-10-10m0 2c4.43 0 8 3.57 8 8s-3.57 8-8 8-8-3.57-8-8 3.57-8 8-8" }, null, -1)
830
396
  ]));
831
397
  }
832
- const Nl = { render: jl }, Ol = {
398
+ const xl = { render: yl }, kl = {
833
399
  width: "24",
834
400
  height: "24",
835
401
  fill: "none",
836
402
  viewBox: "0 0 24 24"
837
403
  };
838
- function Fl(e, t) {
839
- return o(), c("svg", Ol, t[0] || (t[0] = [
404
+ function _l(t, e) {
405
+ return s(), v("svg", kl, e[0] || (e[0] = [
840
406
  l("path", {
841
407
  stroke: "currentColor",
842
408
  "stroke-linecap": "round",
@@ -846,14 +412,14 @@ function Fl(e, t) {
846
412
  }, null, -1)
847
413
  ]));
848
414
  }
849
- const Pl = { render: Fl }, El = {
415
+ const $l = { render: _l }, wl = {
850
416
  width: "24",
851
417
  height: "24",
852
418
  fill: "currentColor",
853
419
  viewBox: "0 0 24 24"
854
420
  };
855
- function Rl(e, t) {
856
- return o(), c("svg", El, t[0] || (t[0] = [
421
+ function Cl(t, e) {
422
+ return s(), v("svg", wl, e[0] || (e[0] = [
857
423
  l("path", {
858
424
  "fill-rule": "evenodd",
859
425
  d: "M11.943 1.25h.114c2.309 0 4.118 0 5.53.19 1.444.194 2.584.6 3.479 1.494.895.895 1.3 2.035 1.494 3.48.19 1.411.19 3.22.19 5.529v.114c0 2.309 0 4.118-.19 5.53-.194 1.444-.6 2.584-1.494 3.479-.895.895-2.035 1.3-3.48 1.494-1.411.19-3.22.19-5.529.19h-.114c-2.309 0-4.118 0-5.53-.19-1.444-.194-2.584-.6-3.479-1.494-.895-.895-1.3-2.035-1.494-3.48-.19-1.411-.19-3.22-.19-5.529v-.114c0-2.309 0-4.118.19-5.53.194-1.444.6-2.584 1.494-3.479.895-.895 2.035-1.3 3.48-1.494 1.411-.19 3.22-.19 5.529-.19m-5.33 1.676c-1.278.172-2.049.5-2.618 1.069-.57.57-.897 1.34-1.069 2.619-.174 1.3-.176 3.008-.176 5.386s.002 4.086.176 5.386c.172 1.279.5 2.05 1.069 2.62.57.569 1.34.896 2.619 1.068 1.3.174 3.008.176 5.386.176s4.086-.002 5.386-.176c1.279-.172 2.05-.5 2.62-1.069.569-.57.896-1.34 1.068-2.619.174-1.3.176-3.008.176-5.386s-.002-4.086-.176-5.386c-.172-1.279-.5-2.05-1.069-2.62-.57-.569-1.34-.896-2.619-1.068-1.3-.174-3.008-.176-5.386-.176s-4.086.002-5.386.176m4.637 3.877a5.251 5.251 0 0 0 0 10.394V16.5a.75.75 0 0 1 1.5 0v.697a5.251 5.251 0 0 0 0-10.394V7.5a.75.75 0 0 1-1.5 0zM5.25 12a6.75 6.75 0 1 1 13.5 0 6.75 6.75 0 0 1-13.5 0",
@@ -862,25 +428,25 @@ function Rl(e, t) {
862
428
  l("path", { d: "M15 12a1 1 0 1 1-2 0 1 1 0 0 1 2 0M11 12a1 1 0 1 1-2 0 1 1 0 0 1 2 0" }, null, -1)
863
429
  ]));
864
430
  }
865
- const Ul = { render: Rl }, Gl = {
431
+ const zl = { render: Cl }, Vl = {
866
432
  width: "24",
867
433
  height: "24",
868
434
  fill: "currentColor",
869
435
  viewBox: "0 0 24 24"
870
436
  };
871
- function Wl(e, t) {
872
- return o(), c("svg", Gl, t[0] || (t[0] = [
437
+ function Bl(t, e) {
438
+ return s(), v("svg", Vl, e[0] || (e[0] = [
873
439
  l("path", { d: "M5 12.5c0 .313.461.858 1.53 1.393C7.914 14.585 9.877 15 12 15s4.086-.415 5.47-1.107c1.069-.535 1.53-1.08 1.53-1.393v-2.171C17.35 11.349 14.827 12 12 12s-5.35-.652-7-1.671zm14 2.829C17.35 16.349 14.827 17 12 17s-5.35-.652-7-1.671V17.5c0 .313.461.858 1.53 1.393C7.914 19.585 9.877 20 12 20s4.086-.415 5.47-1.107c1.069-.535 1.53-1.08 1.53-1.393zM3 17.5v-10C3 5.015 7.03 3 12 3s9 2.015 9 4.5v10c0 2.485-4.03 4.5-9 4.5s-9-2.015-9-4.5m9-7.5c2.123 0 4.086-.415 5.47-1.107C18.539 8.358 19 7.813 19 7.5s-.461-.858-1.53-1.393C16.086 5.415 14.123 5 12 5s-4.086.415-5.47 1.107C5.461 6.642 5 7.187 5 7.5s.461.858 1.53 1.393C7.914 9.585 9.877 10 12 10" }, null, -1)
874
440
  ]));
875
441
  }
876
- const ql = { render: Wl }, Kl = {
442
+ const Ml = { render: Bl }, Il = {
877
443
  width: "24",
878
444
  height: "24",
879
445
  fill: "currentColor",
880
446
  viewBox: "0 0 24 24"
881
447
  };
882
- function Zl(e, t) {
883
- return o(), c("svg", Kl, t[0] || (t[0] = [
448
+ function Al(t, e) {
449
+ return s(), v("svg", Il, e[0] || (e[0] = [
884
450
  l("path", { d: "M12 19a1 1 0 1 0 0-2 1 1 0 0 0 0 2" }, null, -1),
885
451
  l("path", {
886
452
  "fill-rule": "evenodd",
@@ -889,14 +455,14 @@ function Zl(e, t) {
889
455
  }, null, -1)
890
456
  ]));
891
457
  }
892
- const be = { render: Zl }, Jl = {
458
+ const ve = { render: Al }, Sl = {
893
459
  width: "24",
894
460
  height: "24",
895
461
  fill: "none",
896
462
  viewBox: "0 0 24 24"
897
463
  };
898
- function Ql(e, t) {
899
- return o(), c("svg", Jl, t[0] || (t[0] = [
464
+ function Tl(t, e) {
465
+ return s(), v("svg", Sl, e[0] || (e[0] = [
900
466
  l("path", {
901
467
  stroke: "currentColor",
902
468
  "stroke-linecap": "round",
@@ -906,14 +472,14 @@ function Ql(e, t) {
906
472
  }, null, -1)
907
473
  ]));
908
474
  }
909
- const Xl = { render: Ql }, Yl = {
475
+ const Dl = { render: Tl }, Hl = {
910
476
  width: "24",
911
477
  height: "24",
912
478
  fill: "currentColor",
913
479
  viewBox: "0 0 24 24"
914
480
  };
915
- function es(e, t) {
916
- return o(), c("svg", Yl, t[0] || (t[0] = [
481
+ function Ll(t, e) {
482
+ return s(), v("svg", Hl, e[0] || (e[0] = [
917
483
  l("path", {
918
484
  "fill-rule": "evenodd",
919
485
  d: "M12 3.482a8.519 8.519 0 1 0 0 17.037 8.519 8.519 0 0 0 0-17.037M2 12C2 6.477 6.477 2 12 2s10 4.477 10 10-4.477 10-10 10S2 17.523 2 12",
@@ -922,488 +488,900 @@ function es(e, t) {
922
488
  l("path", { d: "M12 11.3a.7.7 0 1 0 0 1.4.7.7 0 0 0 0-1.4m.35-6.3c3.15 0 3.22 2.499 1.561 3.325a2.35 2.35 0 0 0-1.134 1.729c.335.139.63.358.861.637C16.2 9.291 19 9.844 19 12.35c0 3.15-2.506 3.22-3.325 1.561a2.4 2.4 0 0 0-1.75-1.134c-.14.334-.359.629-.637.861 1.4 2.583.84 5.362-1.666 5.362-3.122 0-3.199-2.506-1.54-3.332a2.42 2.42 0 0 0 1.134-1.715 2.1 2.1 0 0 1-.875-.644C7.758 14.695 5 14.149 5 11.65c0-3.15 2.478-3.227 3.304-1.568a2.37 2.37 0 0 0 1.736 1.127c.135-.337.357-.632.644-.854C9.291 7.8 9.844 5 12.336 5z" }, null, -1)
923
489
  ]));
924
490
  }
925
- const ts = { render: es }, ls = {
491
+ const jl = { render: Ll }, Nl = {
926
492
  width: "24",
927
493
  height: "24",
928
494
  fill: "currentColor",
929
495
  viewBox: "0 0 24 24"
930
496
  };
931
- function ss(e, t) {
932
- return o(), c("svg", ls, t[0] || (t[0] = [
497
+ function Ol(t, e) {
498
+ return s(), v("svg", Nl, e[0] || (e[0] = [
933
499
  l("path", { d: "M16 4a1 1 0 0 1 1 1v4.2l5.213-3.65a.5.5 0 0 1 .787.41v12.08a.5.5 0 0 1-.787.41L17 14.8V19a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1zm-1 2H3v12h12zM7.4 8.829a.4.4 0 0 1 .215.062l4.355 2.771a.4.4 0 0 1 0 .675L7.615 15.11A.4.4 0 0 1 7 14.77V9.23c0-.221.18-.4.4-.4M21 8.84l-4 2.8v.718l4 2.8z" }, null, -1)
934
500
  ]));
935
501
  }
936
- const as = { render: ss }, os = {
502
+ const Pl = { render: Ol }, Fl = {
937
503
  width: "24",
938
504
  height: "24",
939
505
  fill: "currentColor",
940
506
  viewBox: "0 0 24 24"
941
507
  };
942
- function ns(e, t) {
943
- return o(), c("svg", os, t[0] || (t[0] = [
508
+ function El(t, e) {
509
+ return s(), v("svg", Fl, e[0] || (e[0] = [
944
510
  l("path", { d: "M12 2C6.489 2 2 6.489 2 12s4.489 10 10 10 10-4.489 10-10S17.511 2 12 2m0 2c4.43 0 8 3.57 8 8s-3.57 8-8 8-8-3.57-8-8 3.57-8 8-8m-1 3v2h2V7zm0 4v6h2v-6z" }, null, -1)
945
511
  ]));
946
512
  }
947
- const rs = { render: ns }, is = {
513
+ const Rl = { render: El }, Ul = {
948
514
  width: "24",
949
515
  height: "24",
950
516
  fill: "currentColor",
951
517
  "fill-rule": "evenodd",
952
518
  viewBox: "0 0 24 24"
953
519
  };
954
- function ds(e, t) {
955
- return o(), c("svg", is, t[0] || (t[0] = [
520
+ function Wl(t, e) {
521
+ return s(), v("svg", Ul, e[0] || (e[0] = [
956
522
  l("path", { d: "M11 2v9H2v2h9v9h2v-9h9v-2h-9V2Z" }, null, -1)
957
523
  ]));
958
524
  }
959
- const se = { render: ds }, Z = /* @__PURE__ */ B({
960
- __name: "VIcons",
525
+ const ql = { render: Wl }, B = /* @__PURE__ */ V({
526
+ __name: "VIcon",
961
527
  props: {
962
528
  name: {}
963
529
  },
964
- setup(e) {
965
- const t = {
966
- IconDots: Ce,
967
- IconAir: $t,
968
- IconBulb: zt,
969
- IconCold: Ht,
970
- IconCamera: Mt,
971
- IconVent: ts,
972
- IconGarage: Pl,
973
- IconVideo: as,
974
- IconLight: zl,
975
- IconTv: Xl,
976
- IconTherm: be,
977
- IconStore: ql,
978
- IconSocket: Ul,
979
- IconSearch: Nl,
980
- IconSave: ie,
981
- IconNoti: he,
982
- IconLogout: Ie,
983
- IconLock: Ml,
984
- IconFolder: ze,
985
- IconChevron: K,
986
- IconClose: G,
987
- IconDashboard: Pt,
988
- IconDevice: Ut,
989
- IconDrop: qt,
990
- IconBurger: Ve,
991
- IconEyeClose: Xt,
992
- IconEyeOpen: tl,
993
- IconFile: al,
994
- IconGpio: rl,
995
- IconUpdate: cl,
996
- IconHeater: fl,
997
- IconSetting: gl,
998
- IconLogo: fe,
999
- IconLogoMini: Be,
1000
- IconPower: re,
1001
- IconTheme: Me,
1002
- IconInfo: rs,
1003
- IconPlus: se
1004
- }, d = M(() => e.name ? t[`Icon${e.name}`] : be);
1005
- return (r, s) => (o(), A(q(d.value), { name: "Icon" }));
530
+ setup(t) {
531
+ const e = {
532
+ IconDots: et,
533
+ IconAir: We,
534
+ IconBulb: Ke,
535
+ IconCold: at,
536
+ IconCamera: Qe,
537
+ IconVent: jl,
538
+ IconGarage: $l,
539
+ IconVideo: Pl,
540
+ IconLight: ol,
541
+ IconTv: Dl,
542
+ IconTherm: ve,
543
+ IconStore: Ml,
544
+ IconSocket: zl,
545
+ IconSearch: xl,
546
+ IconSave: gl,
547
+ IconNoti: hl,
548
+ IconLogout: ul,
549
+ IconLock: il,
550
+ IconFolder: nt,
551
+ IconChevron: dt,
552
+ IconClose: vt,
553
+ IconDashboard: pt,
554
+ IconDevice: bt,
555
+ IconDrop: kt,
556
+ IconBurger: wt,
557
+ IconEyeClose: Vt,
558
+ IconEyeOpen: It,
559
+ IconFile: Tt,
560
+ IconGpio: Lt,
561
+ IconUpdate: Ot,
562
+ IconHeater: Et,
563
+ IconSetting: Wt,
564
+ IconLogo: Kt,
565
+ IconLogoMini: Qt,
566
+ IconPower: el,
567
+ IconTheme: ll,
568
+ IconInfo: Rl,
569
+ IconPlus: ql
570
+ }, o = M(() => t.name ? e[`Icon${t.name}`] : ve);
571
+ return (r, a) => (s(), A(G(o.value), { name: "Icon" }));
1006
572
  }
1007
- }), cs = { class: "relative flex items-end gap-0.5 w-10" }, us = ["title"], vs = { class: "absolute -top-1 -left-1 text-xs text-gray-600 dark:text-gray-300" }, fs = /* @__PURE__ */ B({
1008
- __name: "VWifiIcon",
573
+ }), Gl = { class: "no-scrollbar flex flex-col overflow-y-auto duration-300 ease-linear h-full" }, Kl = /* @__PURE__ */ V({
574
+ __name: "AppAside",
1009
575
  props: {
1010
- rssi: { default: 0 },
1011
- channel: { default: 0 }
576
+ isSidebar: { type: Boolean, default: !1 }
1012
577
  },
1013
- setup(e) {
1014
- const t = 2 * (e.rssi + 100), d = (r) => r < t;
1015
- return (r, s) => (o(), c("div", cs, [
1016
- (o(), c(H, null, N([10, 15, 25, 40, 70], (n, v) => l("div", {
1017
- key: n,
1018
- class: V(["w-1 h-5 rounded-lg", [d(n) ? "bg-gray-900 dark:bg-gray-100" : "bg-gray-300 dark:bg-gray-700"]]),
1019
- style: J(`height: ${(v + 1) * 5}px`),
1020
- title: `rssi: ${r.rssi} channel: ${r.channel}`
1021
- }, null, 14, us)), 64)),
1022
- l("div", vs, _(r.channel), 1)
1023
- ]));
578
+ emits: ["sidebar"],
579
+ setup(t, { emit: e }) {
580
+ const o = e, r = () => {
581
+ t.isSidebar && o("sidebar", !t.isSidebar);
582
+ };
583
+ return (a, u) => {
584
+ const d = oe("router-link");
585
+ return s(), v(D, null, [
586
+ a.isSidebar ? (s(), v("div", {
587
+ key: 0,
588
+ class: "lg:hidden overlay fixed left-0 top-0 h-full w-full bg-black/40 z-10 bg-blur",
589
+ onClick: r
590
+ })) : I("", !0),
591
+ l("aside", {
592
+ class: z([a.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"])
593
+ }, [
594
+ l("div", {
595
+ class: z([a.isSidebar ? "justify-center" : "justify-between", "sidebar-header flex items-center gap-2 pt-6 pb-6 justify-between"])
596
+ }, [
597
+ p(d, { to: "/" }, {
598
+ default: g(() => [
599
+ a.isSidebar ? (s(), A(B, {
600
+ key: 0,
601
+ name: "LogoMini",
602
+ class: "h-[30px] text-primary"
603
+ })) : (s(), A(B, {
604
+ key: 1,
605
+ name: "Logo",
606
+ class: "h-[30px] text-primary"
607
+ }))
608
+ ]),
609
+ _: 1
610
+ })
611
+ ], 2),
612
+ l("div", Gl, [
613
+ C(a.$slots, "default")
614
+ ])
615
+ ], 2)
616
+ ], 64);
617
+ };
1024
618
  }
1025
- }), hs = ["onClick"], ps = {
1026
- key: 0,
1027
- class: "me-1"
1028
- }, gs = { class: "flex items-center z-10" }, ms = ["onClick"], bs = {
1029
- key: 0,
1030
- class: "flex ps-5"
1031
- }, ys = { class: "font-medium me-4" }, xs = ["onClick"], Ae = /* @__PURE__ */ B({
1032
- __name: "VListObject",
619
+ }), ge = (t, e) => {
620
+ const o = t.__vccOpts || t;
621
+ for (const [r, a] of e)
622
+ o[r] = a;
623
+ return o;
624
+ }, Zl = {}, Jl = {
625
+ class: "animate-spin h-6 w-6",
626
+ fill: "none",
627
+ viewBox: "0 0 24 24"
628
+ };
629
+ function Ql(t, e) {
630
+ return s(), v("svg", Jl, e[0] || (e[0] = [
631
+ l("circle", {
632
+ class: "opacity-25",
633
+ cx: "12",
634
+ cy: "12",
635
+ r: "10",
636
+ stroke: "currentColor",
637
+ "stroke-width": "2"
638
+ }, null, -1),
639
+ l("path", {
640
+ class: "opacity-75",
641
+ fill: "currentColor",
642
+ d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
643
+ }, null, -1)
644
+ ]));
645
+ }
646
+ const be = /* @__PURE__ */ ge(Zl, [["render", Ql]]), Xl = "relative flex justify-center items-center transition not-disabled:cursor-pointer not-disabled:hover:opacity-90 disabled:opacity-40 rounded", j = /* @__PURE__ */ V({
647
+ __name: "VButton",
1033
648
  props: {
1034
- items: { default: () => ({}) },
1035
- path: { default: "" },
1036
- onlyValue: { type: Boolean, default: !1 }
649
+ block: { type: Boolean },
650
+ outline: { type: Boolean, default: !1 },
651
+ color: { default: "gray" },
652
+ size: { default: "normal" },
653
+ type: { default: "button" },
654
+ href: { default: "" },
655
+ to: { default: "" },
656
+ loading: { type: Boolean, default: !1 },
657
+ disabled: { type: [Number, Boolean], default: !1 }
1037
658
  },
1038
659
  emits: ["click"],
1039
- setup(e, { emit: t }) {
1040
- const d = t, r = () => "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", s = L({}), n = (a) => {
1041
- s.value[a] = !s.value[a];
1042
- }, v = (a) => typeof a == "object", u = (a) => `${e.path ? e.path + "." : ""}${a}`, f = (a, i) => {
1043
- d("click", { key: a, path: u(a), isObject: i });
1044
- };
1045
- return (a, i) => (o(), c("ul", null, [
1046
- (o(!0), c(H, null, N(a.items, (h, b) => (o(), c("li", {
1047
- key: b,
1048
- class: V(v(h) ? "" : `flex items-center ${r()}`)
1049
- }, [
1050
- l("div", {
1051
- class: V(["flex items-center cursor-pointer ps-2 h-8", v(h) ? `${r()}` : ""]),
1052
- onClick: ($) => n(b)
660
+ setup(t, { emit: e }) {
661
+ const o = e, r = (m) => o("click", m), a = t.outline ? "border border-green-600 text-green-600" : "bg-green-600 dark:bg-green-800", u = t.outline ? "border border-red-600 text-red-600" : "bg-red-600 dark:bg-red-800", d = t.outline ? "border border-gray-600 text-gray-600" : "bg-gray-500 dark:bg-gray-800", f = t.outline ? "border border-blue-600 text-blue-600" : "bg-blue-700 dark:bg-blue-800", c = { green: a, red: u, gray: d, blue: f }, n = {
662
+ button: "px-4",
663
+ icon: "rounded-full border border-gray-200 dark:border-gray-800"
664
+ }, i = {
665
+ button: { normal: "h-10", small: "h-8" },
666
+ icon: { normal: "size-10", small: "size-8" }
667
+ }, h = M(() => [Xl, w(t.color), b(t.type), $(t.type, t.size), { "w-full": t.block }]), y = M(() => t.href || t.to ? "router-link" : "button"), $ = (m, E) => {
668
+ var Q;
669
+ return ((Q = i[m]) == null ? void 0 : Q[E]) || "";
670
+ }, b = (m) => (n == null ? void 0 : n[m]) || "", w = (m) => t.type === "icon" ? "" : `${t.outline ? "dark:text-white" : "text-white"} ${(c == null ? void 0 : c[m]) || ""}`;
671
+ return (m, E) => (s(), A(G(y.value), H(m.$attrs, {
672
+ href: m.href,
673
+ to: m.to,
674
+ class: h.value,
675
+ disabled: !!m.disabled,
676
+ onClick: r
677
+ }), {
678
+ default: g(() => [
679
+ l("span", {
680
+ class: z(m.loading ? "opacity-0" : "")
1053
681
  }, [
1054
- v(h) ? (o(), c("div", ps, [
1055
- p(z(ze), { class: "size-5" })
1056
- ])) : I("", !0),
1057
- l("div", null, _(b), 1),
1058
- !a.onlyValue && v(h) ? (o(), c(H, { key: 1 }, [
1059
- i[1] || (i[1] = l("div", { class: "flex-auto" }, null, -1)),
1060
- l("div", gs, [
1061
- l("button", {
1062
- class: "px-2 cursor-pointer text-gray-400 hover:text-gray-200",
1063
- onClick: F(($) => f(b, v(h)), ["stop"])
682
+ C(m.$slots, "default")
683
+ ], 2),
684
+ m.loading ? (s(), A(be, {
685
+ key: 0,
686
+ class: "absolute left-1/2 -translate-x-1/2"
687
+ })) : I("", !0)
688
+ ]),
689
+ _: 3
690
+ }, 16, ["href", "to", "class", "disabled"]));
691
+ }
692
+ }), Yl = { class: "flex-auto flex align-center md:px-4 overflow-y-auto no-scrollbar" }, ea = { class: "flex items-center justify-between px-4 py-2 rounded-md border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-900 sticky top-0 z-30" }, ta = { class: "px-4 py-2 flex-auto scroll-none" }, la = ["innerHTML"], aa = {
693
+ key: 0,
694
+ class: "px-4 py-2 flex justify-end"
695
+ }, ye = /* @__PURE__ */ V({
696
+ __name: "AppDialog",
697
+ props: {
698
+ value: { type: Boolean },
699
+ title: {},
700
+ message: { default: "" },
701
+ callback: { type: Function },
702
+ button: { default: "OK" },
703
+ size: { default: "sm" }
704
+ },
705
+ emits: ["close", "open"],
706
+ setup(t, { emit: e }) {
707
+ const o = e, r = L(!1), a = { sm: "max-w-[330px]", md: "max-w-[600px]", lg: "max-w-[960px]" }, u = M(() => a[t.size]), d = (n) => {
708
+ r.value = !1, setTimeout(() => {
709
+ o("close", n);
710
+ }, 300);
711
+ }, f = (n) => {
712
+ t.callback && t.callback(), d(n);
713
+ }, c = () => o("open", r.value);
714
+ return ne(() => {
715
+ setTimeout(() => {
716
+ r.value = !0;
717
+ }, 300);
718
+ }), (n, i) => (s(), A(we, { to: "body" }, [
719
+ p(X, {
720
+ "enter-active-class": "duration-300 ease-out",
721
+ "enter-from-class": "transform opacity-0 -translate-y-2",
722
+ "enter-to-class": "opacity-100 translate-y-0",
723
+ "leave-active-class": "duration-200 ease-in",
724
+ "leave-from-class": "opacity-100 translate-y-0",
725
+ "leave-to-class": "transform opacity-0 -translate-y-2",
726
+ onAfterEnter: c
727
+ }, {
728
+ default: g(() => [
729
+ r.value ? (s(), v("div", {
730
+ key: 0,
731
+ class: "z-20 fixed top-0 h-[100dvh] w-full left-0 flex flex-col",
732
+ onWheel: i[0] || (i[0] = P(() => {
733
+ }, ["stop"]))
734
+ }, [
735
+ l("div", {
736
+ class: "absolute h-full w-full top-0 left-0 bg-black/40 bg-blur",
737
+ onClick: d
738
+ }),
739
+ l("div", Yl, [
740
+ l("div", {
741
+ class: z(["m-auto w-full bg-gray-50 dark:bg-gray-900 shadow-lg flex flex-col rounded-sm z-30", u.value])
1064
742
  }, [
1065
- p(z(ie), { class: "size-5" })
1066
- ], 8, ms)
743
+ l("div", ea, [
744
+ C(n.$slots, "header", {}, () => [
745
+ l("h4", null, _(n.title), 1)
746
+ ]),
747
+ p(j, {
748
+ type: "icon",
749
+ onClick: d
750
+ }, {
751
+ default: g(() => [
752
+ p(B, { name: "Close" })
753
+ ]),
754
+ _: 1
755
+ })
756
+ ]),
757
+ l("div", ta, [
758
+ C(n.$slots, "default", {}, () => [
759
+ l("div", { innerHTML: n.message }, null, 8, la)
760
+ ])
761
+ ]),
762
+ n.$slots.footer || n.callback ? (s(), v("div", aa, [
763
+ C(n.$slots, "footer", {}, () => [
764
+ p(j, {
765
+ color: "blue",
766
+ size: "small",
767
+ onClick: f
768
+ }, {
769
+ default: g(() => [
770
+ T(_(n.button), 1)
771
+ ]),
772
+ _: 1
773
+ })
774
+ ])
775
+ ])) : I("", !0)
776
+ ], 2)
777
+ ])
778
+ ], 32)) : I("", !0)
779
+ ]),
780
+ _: 3
781
+ })
782
+ ]));
783
+ }
784
+ }), sa = { class: "relative" }, oa = { class: "flex items-center cursor-pointer" }, Y = /* @__PURE__ */ V({
785
+ __name: "VDropdown",
786
+ props: {
787
+ top: { default: "calc(100% + 5px)" },
788
+ left: { default: "0" },
789
+ right: { default: "" },
790
+ height: { default: "200px" },
791
+ hideOnClick: { type: Boolean, default: !0 }
792
+ },
793
+ emits: ["click", "show", "close"],
794
+ setup(t, { emit: e }) {
795
+ const o = e, r = L(!1), a = M(() => ({ top: t.top, left: t.left, right: t.right, "max-height": t.height })), u = (i) => {
796
+ r.value && c(i);
797
+ }, d = (i) => {
798
+ r.value ? t.hideOnClick && c(i) : f(i), o("click", r.value);
799
+ }, f = (i) => {
800
+ r.value = !0, o("show", i);
801
+ }, c = (i) => {
802
+ r.value = !1, o("close", i);
803
+ }, n = { click: d, open: f };
804
+ return (i, h) => {
805
+ const y = Ce("outside");
806
+ return re((s(), v("div", sa, [
807
+ l("div", oa, [
808
+ C(i.$slots, "activator", {
809
+ on: n,
810
+ show: r.value
811
+ })
812
+ ]),
813
+ p(X, {
814
+ "enter-active-class": "duration-300 ease-out",
815
+ "enter-from-class": "transform opacity-0 -translate-y-2",
816
+ "enter-to-class": "opacity-100 translate-y-0",
817
+ "leave-active-class": "duration-200 ease-in",
818
+ "leave-from-class": "opacity-100 translate-y-0",
819
+ "leave-to-class": "transform opacity-0 -translate-y-2"
820
+ }, {
821
+ default: g(() => [
822
+ r.value ? (s(), v("div", {
823
+ key: 0,
824
+ class: "z-10 min-w-full absolute overflow-auto shadow-lg scrollbar",
825
+ style: K(a.value),
826
+ onClick: d
827
+ }, [
828
+ C(i.$slots, "default", {
829
+ on: n,
830
+ show: f,
831
+ hide: c,
832
+ isShown: r.value
833
+ })
834
+ ], 4)) : I("", !0)
835
+ ]),
836
+ _: 3
837
+ })
838
+ ])), [
839
+ [y, u]
840
+ ]);
841
+ };
842
+ }
843
+ }), na = ["onClick"], ee = /* @__PURE__ */ V({
844
+ __name: "VList",
845
+ props: {
846
+ list: {},
847
+ className: {}
848
+ },
849
+ emits: ["click"],
850
+ setup(t, { emit: e }) {
851
+ const o = t, r = e, a = (u, d) => r("click", u, d);
852
+ return (u, d) => (s(), v("ul", {
853
+ class: z(o.className ?? "bg-white dark:bg-gray-800")
854
+ }, [
855
+ (s(!0), v(D, null, N(o.list, (f) => (s(), v("li", {
856
+ key: `${f.value}_${f.name}`,
857
+ class: "whitespace-nowrap cursor-pointer flex items-center min-h-[40px] py-1 px-6 border-b last:border-b-0 dark:border-gray-700 border-gray-200 hover:bg-gray-50 dark:hover:bg-gray-700/30",
858
+ onClick: (c) => a(f, c)
859
+ }, [
860
+ C(u.$slots, "default", { item: f }, () => [
861
+ T(_(f.name), 1)
862
+ ])
863
+ ], 8, na))), 128))
864
+ ], 2));
865
+ }
866
+ }), ra = { 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" }, ia = { class: "px-4 py-4 sm:px-6 lg:px-8" }, da = { class: "container mx-auto flex flex-auto items-center" }, ca = { class: "lg:hidden h-[30px]" }, ua = { class: "gap-4 hidden lg:flex" }, va = { class: "lg:hidden flex gap-4" }, fa = { class: "ms-2" }, ha = /* @__PURE__ */ V({
867
+ __name: "AppHeader",
868
+ props: {
869
+ changeTheme: { type: Function },
870
+ notifications: {}
871
+ },
872
+ emits: ["sidebar", "notif"],
873
+ setup(t, { emit: e }) {
874
+ const o = e, r = [
875
+ { name: "Theme", value: 1 },
876
+ { name: "Notification", value: 2 },
877
+ { name: "Logout", value: 3 }
878
+ ], a = M(() => !!t.notifications.find((i) => i.isNew)), u = (i) => o("sidebar", i), d = (i) => o("notif", i), f = async () => await fetch("/", { headers: { Authorization: "Basic AAAAAAAAAAAAAAAAAAA=" } }), c = () => {
879
+ t.changeTheme && t.changeTheme();
880
+ }, n = ({ value: i }, h) => {
881
+ i == 1 && c(), i == 2 && d(h), i == 3 && f();
882
+ };
883
+ return (i, h) => {
884
+ const y = oe("router-link");
885
+ return s(), v("header", ra, [
886
+ l("div", ia, [
887
+ l("div", da, [
888
+ p(j, {
889
+ type: "icon",
890
+ color: "gray",
891
+ onClick: u
892
+ }, {
893
+ default: g(() => [
894
+ p(B, {
895
+ name: "Burger",
896
+ class: "size-5"
897
+ })
898
+ ]),
899
+ _: 1
900
+ }),
901
+ h[1] || (h[1] = l("div", { class: "lg:hidden flex-auto" }, null, -1)),
902
+ l("div", ca, [
903
+ p(y, { to: "/" }, {
904
+ default: g(() => [
905
+ p(B, {
906
+ name: "Logo",
907
+ class: "h-[30px] text-primary"
908
+ })
909
+ ]),
910
+ _: 1
911
+ })
912
+ ]),
913
+ h[2] || (h[2] = l("div", { class: "flex-auto" }, null, -1)),
914
+ l("div", ua, [
915
+ p(j, {
916
+ type: "icon",
917
+ color: "gray",
918
+ onClick: c
919
+ }, {
920
+ default: g(() => [
921
+ p(B, { name: "Theme" })
922
+ ]),
923
+ _: 1
924
+ }),
925
+ p(j, {
926
+ type: "icon",
927
+ color: "gray",
928
+ onClick: d
929
+ }, {
930
+ default: g(() => [
931
+ l("span", {
932
+ class: z([a.value ? "flex" : "hidden", "absolute right-0 top-0.5 z-1 h-2 w-2 rounded-full bg-orange-400"])
933
+ }, h[0] || (h[0] = [
934
+ l("span", { class: "absolute -z-1 inline-flex h-full w-full animate-ping rounded-full bg-orange-400 opacity-75" }, null, -1)
935
+ ]), 2),
936
+ p(B, {
937
+ name: "Noti",
938
+ class: "size-5"
939
+ })
940
+ ]),
941
+ _: 1
942
+ }),
943
+ p(j, {
944
+ type: "icon",
945
+ color: "gray",
946
+ onClick: P(f, ["prevent"])
947
+ }, {
948
+ default: g(() => [
949
+ p(B, {
950
+ name: "Logout",
951
+ class: "size-5"
952
+ })
953
+ ]),
954
+ _: 1
955
+ })
956
+ ]),
957
+ l("div", va, [
958
+ p(Y, {
959
+ left: "unset",
960
+ right: "0",
961
+ top: "0"
962
+ }, {
963
+ activator: g(({ on: $ }) => [
964
+ p(j, {
965
+ type: "icon",
966
+ color: "gray",
967
+ class: "flex",
968
+ onClick: $.click
969
+ }, {
970
+ default: g(() => [
971
+ p(B, { name: "Dots" })
972
+ ]),
973
+ _: 2
974
+ }, 1032, ["onClick"])
975
+ ]),
976
+ default: g(() => [
977
+ p(ee, {
978
+ list: r,
979
+ onClick: n
980
+ }, {
981
+ default: g(({ item: $ }) => [
982
+ l("span", fa, _($.name), 1)
983
+ ]),
984
+ _: 1
985
+ })
986
+ ]),
987
+ _: 1
988
+ })
1067
989
  ])
1068
- ], 64)) : I("", !0)
1069
- ], 10, hs),
1070
- v(h) ? (o(), c("div", bs, [
1071
- de(p(Ae, {
1072
- class: "flex-auto",
1073
- path: u(b),
1074
- items: h,
1075
- onlyValue: a.onlyValue,
1076
- onClick: i[0] || (i[0] = ($) => d("click", $))
1077
- }, null, 8, ["path", "items", "onlyValue"]), [
1078
- [Ne, s.value[b]]
1079
990
  ])
1080
- ])) : (o(), c(H, { key: 1 }, [
1081
- i[2] || (i[2] = l("div", { class: "flex-auto" }, null, -1)),
1082
- l("div", ys, _(h), 1),
1083
- l("button", {
1084
- class: "px-2 cursor-pointer z-10",
1085
- onClick: F(($) => f(b, v(h)), ["stop"])
1086
- }, [
1087
- p(z(ie), { class: "size-5" })
1088
- ], 8, xs)
1089
- ], 64))
1090
- ], 2))), 128))
991
+ ])
992
+ ]);
993
+ };
994
+ }
995
+ }), pa = { class: "relative flex items-center gap-2 w-full p-2 overflow-hidden" }, ma = { class: "flex-auto text-xs" }, ga = { class: "text-gray-500 dark:text-gray-400 mt-1" }, ba = /* @__PURE__ */ V({
996
+ __name: "CardNotification",
997
+ props: {
998
+ empty: {},
999
+ key: {},
1000
+ isNew: {},
1001
+ color: {},
1002
+ timeout: {},
1003
+ date: {},
1004
+ text: {}
1005
+ },
1006
+ emits: ["remove", "read"],
1007
+ setup(t, { emit: e }) {
1008
+ const o = t, r = e, a = ["", "bg-green-500", "bg-red-500", "bg-yellow-500", "bg-blue-500"], u = (c) => a[c], d = (c) => r("remove", c), f = (c) => r("read", c);
1009
+ return (c, n) => (s(), v("div", pa, [
1010
+ l("div", {
1011
+ class: z(["absolute left-0 top-0 w-[3px] h-full", u(o.color)])
1012
+ }, null, 2),
1013
+ p(j, {
1014
+ class: "shrink-0",
1015
+ type: "icon",
1016
+ color: "gray",
1017
+ onClick: f
1018
+ }, {
1019
+ default: g(() => [
1020
+ l("span", {
1021
+ class: z([o.isNew ? "flex" : "hidden", "absolute right-0 top-0.5 z-1 h-2 w-2 rounded-full bg-orange-400"])
1022
+ }, n[0] || (n[0] = [
1023
+ l("span", { class: "absolute -z-1 inline-flex h-full w-full animate-ping rounded-full bg-orange-400 opacity-75" }, null, -1)
1024
+ ]), 2),
1025
+ p(B, {
1026
+ name: "Noti",
1027
+ class: "size-5"
1028
+ })
1029
+ ]),
1030
+ _: 1
1031
+ }),
1032
+ l("div", ma, [
1033
+ l("div", null, _(o.text), 1),
1034
+ l("div", ga, _(F(je)(o.date)) + " (" + _(F(Ne)(o.date)) + ")", 1)
1035
+ ]),
1036
+ p(j, {
1037
+ class: "shrink-0",
1038
+ type: "icon",
1039
+ size: "small",
1040
+ onClick: d
1041
+ }, {
1042
+ default: g(() => [
1043
+ p(B, {
1044
+ name: "Close",
1045
+ class: "size-4"
1046
+ })
1047
+ ]),
1048
+ _: 1
1049
+ })
1091
1050
  ]));
1092
1051
  }
1093
- }), ks = ["onDragstart", "onDragenter"], _s = {
1052
+ }), ya = { class: "no-scrollbar flex flex-col overflow-y-auto duration-300 ease-linear h-full" }, xa = {
1094
1053
  key: 0,
1095
- class: "absolute inset-0 border border-dashed border-blue-600 rounded-lg"
1096
- }, v1 = /* @__PURE__ */ B({
1097
- __name: "VDragDrop",
1054
+ class: "flex flex-col gap-2 p-2"
1055
+ }, ka = /* @__PURE__ */ V({
1056
+ __name: "AppNotification",
1057
+ props: {
1058
+ value: { type: Boolean },
1059
+ notifications: {}
1060
+ },
1061
+ emits: ["close", "remove", "read"],
1062
+ setup(t, { emit: e }) {
1063
+ const o = t, r = e, a = M(() => !!o.notifications.find((n) => n.isNew)), u = M(() => !!o.notifications.length), d = (n) => r("close", n), f = (n) => r("remove", n), c = (n) => r("read", n);
1064
+ return (n, i) => (s(), v(D, null, [
1065
+ o.value ? (s(), v("div", {
1066
+ key: 0,
1067
+ class: "overlay fixed left-0 top-0 h-full w-full bg-black/40 bg-blur",
1068
+ onClick: d
1069
+ })) : I("", !0),
1070
+ l("aside", {
1071
+ class: z([o.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"])
1072
+ }, [
1073
+ l("div", ya, [
1074
+ C(n.$slots, "header", { isNew: a.value }),
1075
+ u.value ? (s(), v("div", xa, [
1076
+ p(me, {
1077
+ "enter-active-class": "transition-all duration-300 ",
1078
+ "enter-from-class": "opacity-0 translate-x-1/2",
1079
+ "enter-to-class": "opacity-100 translate-x-0",
1080
+ "leave-active-class": "transition-all duration-300 absolute",
1081
+ "leave-from-class": "opacity-100 translate-x-0",
1082
+ "leave-to-class": "opacity-0 translate-x-1/2"
1083
+ }, {
1084
+ default: g(() => [
1085
+ (s(!0), v(D, null, N(o.notifications, (h) => (s(), v("div", {
1086
+ key: h.date,
1087
+ class: "relative"
1088
+ }, [
1089
+ C(n.$slots, "card", { item: h }, () => [
1090
+ p(ba, H({ ref_for: !0 }, h, {
1091
+ class: "bg-gray-200/50 dark:bg-gray-800/50 rounded-md",
1092
+ onRemove: (y) => f(h),
1093
+ onRead: (y) => c(h)
1094
+ }), null, 16, ["onRemove", "onRead"])
1095
+ ])
1096
+ ]))), 128))
1097
+ ]),
1098
+ _: 3
1099
+ })
1100
+ ])) : C(n.$slots, "empty", { key: 1 })
1101
+ ])
1102
+ ], 2)
1103
+ ], 64));
1104
+ }
1105
+ }), _a = {}, $a = { class: "fixed h-full w-full top-0 left-0 z-20" }, wa = { class: "absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2" };
1106
+ function Ca(t, e) {
1107
+ return s(), v("div", $a, [
1108
+ e[0] || (e[0] = l("div", { class: "absolute h-full w-full top-0 left-0 bg-black/60 bg-blur" }, null, -1)),
1109
+ l("div", wa, [
1110
+ C(t.$slots, "default")
1111
+ ])
1112
+ ]);
1113
+ }
1114
+ const za = /* @__PURE__ */ ge(_a, [["render", Ca]]), Va = { class: "mb-4 flex flex-col gap-4" }, Ba = ["onClick"], Ma = { class: "flex flex-col gap-2" }, Ia = { class: "flex gap-2 ms-8" }, Aa = { class: "flex-1 first-letter:uppercase text-sm" }, Sa = /* @__PURE__ */ V({
1115
+ __name: "AppNav",
1098
1116
  props: {
1099
- items: {},
1100
- itemKey: { default: "id" }
1117
+ menu: { default: () => [] },
1118
+ fullPath: { default: "" },
1119
+ isSidebar: { type: Boolean, default: !1 }
1101
1120
  },
1102
- emits: ["update:items", "order-change"],
1103
- setup(e, { emit: t }) {
1104
- const d = t, r = L(null), s = L(0), n = L(-1), v = ({ id: h }) => ({
1105
- "opacity-30 scale-105 z-10": r.value === h,
1106
- "transition-transform duration-200": r.value !== h
1107
- }), u = (h, b, $) => {
1108
- r.value = b, s.value = $, h.dataTransfer.effectAllowed = "move";
1109
- }, f = (h) => {
1110
- r.value !== null && (n.value = h);
1111
- }, a = () => {
1112
- r.value = null, n.value = -1;
1113
- }, i = (h) => {
1114
- if (h.preventDefault(), r.value && n.value !== -1) {
1115
- const b = e.items.findIndex((y) => y[e.itemKey] === r.value), $ = n.value;
1116
- if (b !== $ && $ !== -1) {
1117
- const y = [...e.items], [w] = y.splice(b, 1);
1118
- y.splice($, 0, w), d("update:items", y), d("order-change", { fromIndex: b, toIndex: $, movedItem: w, newOrder: y });
1119
- }
1121
+ emits: ["sidebar"],
1122
+ setup(t, { emit: e }) {
1123
+ const o = e, r = L(""), a = ({ name: d }) => {
1124
+ t.isSidebar && o("sidebar", !t.isSidebar), r.value !== d && (r.value = r.value === d ? "" : d);
1125
+ }, u = (d) => t.fullPath === d;
1126
+ return W(
1127
+ () => t.menu,
1128
+ () => {
1129
+ var d;
1130
+ return r.value = ((d = Oe(t.menu, t.fullPath)) == null ? void 0 : d.name) || "";
1120
1131
  }
1121
- n.value = -1;
1122
- };
1123
- return (h, b) => (o(), c("div", {
1124
- onDragover: b[1] || (b[1] = F(() => {
1125
- }, ["prevent"])),
1126
- onDrop: i
1127
- }, [
1128
- p(_e, {
1129
- "enter-active-class": "transition-all duration-300 ease",
1130
- "enter-from-class": "opacity-0 translate-x-8",
1131
- "enter-to-class": "opacity-100 translate-x-0",
1132
- "leave-active-class": "transition-all duration-300 ease absolute",
1133
- "leave-from-class": "opacity-100 translate-x-0",
1134
- "leave-to-class": "opacity-0 translate-x-8",
1135
- "move-class": "transition-all duration-300 ease"
1136
- }, {
1137
- default: m(() => [
1138
- (o(!0), c(H, null, N(h.items, ($, y) => (o(), c("div", {
1139
- key: `${$.id}_drug`,
1140
- class: V(["relative group", v($)]),
1141
- draggable: "true",
1142
- onDragstart: (w) => u(w, $.id, y),
1143
- onDragenter: (w) => f(y),
1144
- onDragend: a,
1145
- onDragover: b[0] || (b[0] = F(() => {
1146
- }, ["prevent"]))
1132
+ ), (d, f) => (s(), v("nav", null, [
1133
+ l("ul", Va, [
1134
+ (s(!0), v(D, null, N(d.menu, (c) => (s(), v("li", {
1135
+ key: c.name
1136
+ }, [
1137
+ (s(), A(G(c.path ? "router-link" : "span"), {
1138
+ to: c.path,
1139
+ class: z(["flex gap-2 items-center px-3 py-2 rounded-lg", u(c.path) ? "bg-blue-500/10" : "hover:bg-gray-500/10"]),
1140
+ onClick: P((n) => a(c), ["prevent", "stop"])
1141
+ }, {
1142
+ default: g(() => [
1143
+ p(B, {
1144
+ name: c.icon,
1145
+ class: "size-5 flex-[0_0_24px]"
1146
+ }, null, 8, ["name"]),
1147
+ l("span", {
1148
+ class: z(["flex-1 first-letter:uppercase text-sm", d.isSidebar ? "lg:hidden" : ""])
1149
+ }, _(c.name), 3),
1150
+ l("button", {
1151
+ class: z(["cursor-pointer", [d.isSidebar ? "lg:hidden" : ""]]),
1152
+ onClick: P((n) => a(c), ["prevent", "stop"])
1153
+ }, [
1154
+ c.children ? (s(), A(B, {
1155
+ key: 0,
1156
+ name: "Chevron"
1157
+ })) : I("", !0)
1158
+ ], 10, Ba)
1159
+ ]),
1160
+ _: 2
1161
+ }, 1032, ["to", "class", "onClick"])),
1162
+ c.children ? (s(), v("div", {
1163
+ key: 0,
1164
+ class: z(["translate transform overflow-hidden mt-2", [d.isSidebar ? "lg:hidden" : "", r.value === c.name ? "block" : "hidden"]])
1147
1165
  }, [
1148
- C(h.$slots, "default", {
1149
- item: $,
1150
- key: $.id,
1151
- index: y,
1152
- isDragging: r.value === $.id
1153
- }),
1154
- n.value === y && r.value !== $.id ? (o(), c("div", _s)) : I("", !0)
1155
- ], 42, ks))), 128))
1156
- ]),
1157
- _: 3
1158
- })
1159
- ], 32));
1166
+ l("ul", Ma, [
1167
+ (s(!0), v(D, null, N(c.children, ({ name: n, path: i, icon: h }) => (s(), v("li", { key: n }, [
1168
+ (s(), A(G(i ? "router-link" : "span"), {
1169
+ to: i,
1170
+ class: z(["flex gap-2 items-center px-3 py-2 rounded-lg", u(i) ? "bg-blue-500/10" : "hover:bg-gray-500/10"])
1171
+ }, {
1172
+ default: g(() => [
1173
+ l("div", Ia, [
1174
+ h ? (s(), A(B, {
1175
+ key: 0,
1176
+ name: h,
1177
+ class: "size-5 flex-[0_0_24px]"
1178
+ }, null, 8, ["name"])) : I("", !0),
1179
+ l("span", Aa, _(n), 1)
1180
+ ])
1181
+ ]),
1182
+ _: 2
1183
+ }, 1032, ["to", "class"]))
1184
+ ]))), 128))
1185
+ ])
1186
+ ], 2)) : I("", !0)
1187
+ ]))), 128))
1188
+ ])
1189
+ ]));
1160
1190
  }
1161
1191
  });
1162
- function $s(e) {
1163
- return Ee() ? (Re(e), !0) : !1;
1192
+ function Ta(t) {
1193
+ return Me() ? (Ie(t), !0) : !1;
1164
1194
  }
1165
- const ws = typeof window < "u" && typeof document < "u", Cs = () => {
1195
+ const Da = typeof window < "u" && typeof document < "u", se = () => {
1166
1196
  };
1167
- function ye(...e) {
1168
- if (e.length !== 1)
1169
- return Oe(...e);
1170
- const t = e[0];
1171
- return typeof t == "function" ? Fe(Pe(() => ({ get: t, set: Cs }))) : L(t);
1197
+ function fe(...t) {
1198
+ if (t.length !== 1)
1199
+ return ze(...t);
1200
+ const e = t[0];
1201
+ return typeof e == "function" ? Ve(Be(() => ({ get: e, set: se }))) : L(e);
1202
+ }
1203
+ function Ha(t, e) {
1204
+ function o(...r) {
1205
+ return new Promise((a, u) => {
1206
+ Promise.resolve(t(() => e.apply(this, r), { fn: e, thisArg: this, args: r })).then(a).catch(u);
1207
+ });
1208
+ }
1209
+ return o;
1210
+ }
1211
+ function La(t, e = {}) {
1212
+ let o, r, a = se;
1213
+ const u = (c) => {
1214
+ clearTimeout(c), a(), a = se;
1215
+ };
1216
+ let d;
1217
+ return (c) => {
1218
+ const n = Z(t), i = Z(e.maxWait);
1219
+ return o && u(o), n <= 0 || i !== void 0 && i <= 0 ? (r && (u(r), r = void 0), Promise.resolve(c())) : new Promise((h, y) => {
1220
+ a = e.rejectOnCancel ? y : h, d = c, i && !r && (r = setTimeout(() => {
1221
+ o && u(o), r = void 0, h(d());
1222
+ }, i)), o = setTimeout(() => {
1223
+ r && u(r), r = void 0, h(c());
1224
+ }, n);
1225
+ });
1226
+ };
1227
+ }
1228
+ // @__NO_SIDE_EFFECTS__
1229
+ function ie(t, e = 200, o = {}) {
1230
+ return Ha(
1231
+ La(e, o),
1232
+ t
1233
+ );
1172
1234
  }
1173
- const pe = ws ? window : void 0;
1174
- function xe(e) {
1175
- var t;
1176
- const d = ue(e);
1177
- return (t = d == null ? void 0 : d.$el) != null ? t : d;
1235
+ const de = Da ? window : void 0;
1236
+ function he(t) {
1237
+ var e;
1238
+ const o = Z(t);
1239
+ return (e = o == null ? void 0 : o.$el) != null ? e : o;
1178
1240
  }
1179
1241
  // @__NO_SIDE_EFFECTS__
1180
- function zs(e) {
1181
- return M(() => !!e());
1242
+ function ja(t) {
1243
+ return M(() => !!t());
1182
1244
  }
1183
- function Vs(e, t, d = {}) {
1184
- const { window: r = pe, ...s } = d;
1185
- let n;
1186
- const v = /* @__PURE__ */ zs(() => r && "ResizeObserver" in r), u = () => {
1187
- n && (n.disconnect(), n = void 0);
1188
- }, f = M(() => {
1189
- const h = ue(e);
1190
- return Array.isArray(h) ? h.map((b) => xe(b)) : [xe(h)];
1191
- }), a = U(
1192
- f,
1245
+ function Na(t, e, o = {}) {
1246
+ const { window: r = de, ...a } = o;
1247
+ let u;
1248
+ const d = /* @__PURE__ */ ja(() => r && "ResizeObserver" in r), f = () => {
1249
+ u && (u.disconnect(), u = void 0);
1250
+ }, c = M(() => {
1251
+ const h = Z(t);
1252
+ return Array.isArray(h) ? h.map((y) => he(y)) : [he(h)];
1253
+ }), n = W(
1254
+ c,
1193
1255
  (h) => {
1194
- if (u(), v.value && r) {
1195
- n = new ResizeObserver(t);
1196
- for (const b of h)
1197
- b && n.observe(b, s);
1256
+ if (f(), d.value && r) {
1257
+ u = new ResizeObserver(e);
1258
+ for (const y of h)
1259
+ y && u.observe(y, a);
1198
1260
  }
1199
1261
  },
1200
1262
  { immediate: !0, flush: "post" }
1201
1263
  ), i = () => {
1202
- u(), a();
1264
+ f(), n();
1203
1265
  };
1204
- return $s(i), {
1205
- isSupported: v,
1266
+ return Ta(i), {
1267
+ isSupported: d,
1206
1268
  stop: i
1207
1269
  };
1208
1270
  }
1209
- function Bs(e = pe, t) {
1210
- e && typeof e.requestAnimationFrame == "function" ? e.requestAnimationFrame(t) : t();
1271
+ function Oa(t = de, e) {
1272
+ t && typeof t.requestAnimationFrame == "function" ? t.requestAnimationFrame(e) : e();
1211
1273
  }
1212
- function Ms(e = {}) {
1213
- var t, d;
1214
- const { window: r = pe } = e, s = ye(e == null ? void 0 : e.element), n = ye((t = e == null ? void 0 : e.input) != null ? t : ""), v = (d = e == null ? void 0 : e.styleProp) != null ? d : "height", u = me(1), f = me(0);
1215
- function a() {
1274
+ function Pa(t = {}) {
1275
+ var e, o;
1276
+ const { window: r = de } = t, a = fe(t == null ? void 0 : t.element), u = fe((e = t == null ? void 0 : t.input) != null ? e : ""), d = (o = t == null ? void 0 : t.styleProp) != null ? o : "height", f = ue(1), c = ue(0);
1277
+ function n() {
1216
1278
  var i;
1217
- if (!s.value)
1279
+ if (!a.value)
1218
1280
  return;
1219
1281
  let h = "";
1220
- s.value.style[v] = "1px", u.value = (i = s.value) == null ? void 0 : i.scrollHeight;
1221
- const b = ue(e == null ? void 0 : e.styleTarget);
1222
- b ? b.style[v] = `${u.value}px` : h = `${u.value}px`, s.value.style[v] = h;
1282
+ a.value.style[d] = "1px", f.value = (i = a.value) == null ? void 0 : i.scrollHeight;
1283
+ const y = Z(t == null ? void 0 : t.styleTarget);
1284
+ y ? y.style[d] = `${f.value}px` : h = `${f.value}px`, a.value.style[d] = h;
1223
1285
  }
1224
- return U([n, s], () => Ue(a), { immediate: !0 }), U(u, () => {
1286
+ return W([u, a], () => Ae(n), { immediate: !0 }), W(f, () => {
1225
1287
  var i;
1226
- return (i = e == null ? void 0 : e.onResize) == null ? void 0 : i.call(e);
1227
- }), Vs(s, ([{ contentRect: i }]) => {
1228
- f.value !== i.width && Bs(r, () => {
1229
- f.value = i.width, a();
1288
+ return (i = t == null ? void 0 : t.onResize) == null ? void 0 : i.call(t);
1289
+ }), Na(a, ([{ contentRect: i }]) => {
1290
+ c.value !== i.width && Oa(r, () => {
1291
+ c.value = i.width, n();
1230
1292
  });
1231
- }), e != null && e.watch && U(e.watch, a, { immediate: !0, deep: !0 }), {
1232
- textarea: s,
1233
- input: n,
1234
- triggerResize: a
1293
+ }), t != null && t.watch && W(t.watch, n, { immediate: !0, deep: !0 }), {
1294
+ textarea: a,
1295
+ input: u,
1296
+ triggerResize: n
1235
1297
  };
1236
1298
  }
1237
- const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wrap flex-auto px-2 py-1" }, Ss = ["disabled"], Se = /* @__PURE__ */ B({
1238
- __name: "VTextWrapper",
1239
- props: {
1240
- active: { type: Boolean },
1241
- label: { default: "label" },
1242
- disabled: { type: Boolean, default: !1 },
1243
- hideIcon: { type: Boolean, default: !1 }
1244
- },
1245
- emits: ["icon"],
1246
- setup(e, { emit: t }) {
1247
- const d = t, r = M(() => e.active ? "top-0 left-3 text-xs" : "top-1/2"), s = 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"]);
1248
- return (n, v) => (o(), c("div", Is, [
1249
- l("div", {
1250
- 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", s.value])
1251
- }, [
1252
- l("span", {
1253
- class: V(["absolute left-4 transition-all rounded -translate-y-1/2 text-gray-600 dark:text-gray-400", r.value])
1254
- }, _(n.label), 3),
1255
- l("div", As, [
1256
- C(n.$slots, "default")
1257
- ]),
1258
- n.hideIcon ? I("", !0) : (o(), c("button", {
1259
- key: 0,
1260
- disabled: n.disabled,
1261
- class: V(["h-full flex items-center justify-center text-gray-400 border-l border-gray-300 dark:border-gray-700/50 flex-[0_0_50px]", { "cursor-pointer": !n.disabled }]),
1262
- onClick: v[0] || (v[0] = (u) => d("icon", u))
1263
- }, [
1264
- C(n.$slots, "icon", {}, () => [
1265
- p(z(se), { class: "size-4" })
1266
- ])
1267
- ], 10, Ss))
1268
- ], 2)
1269
- ]));
1270
- }
1271
- }), Ts = { class: "flex gap-1 text-amber-500 self-start text-nowrap select-none" }, Hs = ["title", "onMouseenter", "onMouseleave"], Ds = { class: "flex flex-auto" }, Ls = ["disabled"], ne = /* @__PURE__ */ B({
1272
- __name: "VFunc",
1299
+ const Fa = {
1300
+ key: 0,
1301
+ class: "w-full min-w-[260px] max-w-xs p-4 bg-white rounded-lg shadow-lg dark:bg-gray-800",
1302
+ role: "alert"
1303
+ }, Ea = { class: "flex items-center gap-4 text-sm" }, Ra = {
1304
+ key: 0,
1305
+ class: "text-green-600"
1306
+ }, Ua = {
1307
+ key: 1,
1308
+ class: "relative block h-4 w-full rounded-lg overflow-hidden bg-gray-200 dark:bg-gray-900/50 select-none mt-2"
1309
+ }, Wa = { class: "absolute left-[140px] top-1/2 -translate-1/2 text-sm font-bold text-black dark:text-white text-center leading-none" }, qa = { class: "absolute left-[140px] top-1/2 -translate-1/2 text-sm font-bold text-white text-center leading-none" }, Ga = /* @__PURE__ */ V({
1310
+ __name: "AppProgress",
1273
1311
  props: {
1274
- label: {},
1275
- args: {},
1276
- value: {},
1277
- disabled: { type: Boolean, default: !1 },
1278
- hideIcon: { type: Boolean, default: !1 }
1312
+ timeout: { default: 5e3 },
1313
+ key: {},
1314
+ status: { default: 0 },
1315
+ empty: {},
1316
+ size: { default: 0 },
1317
+ length: { default: 0 }
1279
1318
  },
1280
- emits: ["change", "icon", "hover"],
1281
- setup(e, { emit: t }) {
1282
- const { textarea: d, input: r } = Ms(), s = t, n = ["v", "a", "b", "c"];
1283
- r.value = e.value || "";
1284
- const v = (a) => {
1285
- try {
1286
- return new Function(a), !0;
1287
- } catch {
1288
- return !1;
1289
- }
1290
- }, u = ve((a) => {
1291
- const i = a.target;
1292
- v(i.value) && s("change", i.value);
1293
- }, 500), f = (a) => s("icon", a);
1294
- return U(
1295
- () => e.value,
1319
+ setup(t) {
1320
+ const e = L(!1), o = M(() => !!t.length), r = M(() => !!(o.value && a.value === 100 && !t.status)), a = M(() => t.status ? Math.ceil(t.size * 100 / t.length) : 100), u = /* @__PURE__ */ ie(() => {
1321
+ e.value = !1;
1322
+ }, t.timeout);
1323
+ return W(
1324
+ () => [t.size, t.status],
1296
1325
  () => {
1297
- e.value && (r.value = e.value);
1326
+ e.value = !0, u();
1298
1327
  }
1299
- ), (a, i) => (o(), A(Se, {
1300
- active: !!a.value,
1301
- disabled: a.disabled,
1302
- label: a.label,
1303
- hideIcon: a.hideIcon,
1304
- onIcon: f
1328
+ ), (d, f) => (s(), A(X, {
1329
+ "enter-active-class": "duration-300 ease-out",
1330
+ "enter-from-class": "transform opacity-0 translate-x-full",
1331
+ "enter-to-class": "opacity-100 translate-x-0",
1332
+ "leave-active-class": "duration-200 ease-in",
1333
+ "leave-from-class": "opacity-100 translate-y-0",
1334
+ "leave-to-class": "transform opacity-0 -translate-y-8"
1305
1335
  }, {
1306
- icon: m(() => [
1307
- a.value ? (o(), A(z(G), {
1308
- key: 0,
1309
- class: "size-4"
1310
- })) : (o(), A(z(se), {
1311
- key: 1,
1312
- class: "size-4"
1313
- }))
1314
- ]),
1315
- default: m(() => [
1316
- a.value ? (o(), c(H, { key: 0 }, [
1317
- l("div", Ts, [
1318
- i[3] || (i[3] = T(" ( ")),
1319
- (o(!0), c(H, null, N(a.args, (h, b) => (o(), c(H, { key: h }, [
1320
- l("span", {
1321
- class: "text-blue-400/80",
1322
- title: h,
1323
- onMouseenter: ($) => s("hover", "enter", b),
1324
- onMouseleave: ($) => s("hover", "leave", b)
1325
- }, _(n[b]), 41, Hs),
1326
- i[2] || (i[2] = l("span", { class: "last:hidden" }, ",", -1))
1327
- ], 64))), 128)),
1328
- i[4] || (i[4] = T(" ) => "))
1329
- ]),
1330
- l("div", Ds, [
1331
- de(l("textarea", {
1332
- ref_key: "textarea",
1333
- ref: d,
1334
- "onUpdate:modelValue": i[0] || (i[0] = (h) => Ge(r) ? r.value = h : null),
1335
- class: "outline-0 w-full resize-none",
1336
- type: "text",
1337
- disabled: a.disabled,
1338
- onInput: i[1] || (i[1] = //@ts-ignore
1339
- (...h) => z(u) && z(u)(...h))
1340
- }, null, 40, Ls), [
1341
- [We, z(r)]
1342
- ])
1343
- ])
1344
- ], 64)) : I("", !0)
1345
- ]),
1346
- _: 1
1347
- }, 8, ["active", "disabled", "label", "hideIcon"]));
1348
- }
1349
- }), js = { class: "min-w-full" }, Ns = { class: "border-y border-gray-100 py-3 dark:border-gray-800" }, Os = { class: "bg-gray-50 dark:bg-gray-800" }, Fs = { class: "flex items-center" }, Ps = { class: "divide-y divide-gray-100 dark:divide-gray-800" }, Es = ["onClick"], Rs = { class: "flex items-center text-gray-700 dark:text-gray-400" }, Us = { key: 1 }, Gs = {
1350
- class: "py-3 whitespace-nowrap",
1351
- colspan: "9"
1352
- }, Ws = { class: "flex items-center justify-center text-theme-sm text-gray-700 dark:text-gray-400 px-2" }, f1 = /* @__PURE__ */ B({
1353
- __name: "BlockTable",
1354
- props: {
1355
- headers: { default: () => [] },
1356
- items: { default: () => [] }
1357
- },
1358
- emits: ["click"],
1359
- setup(e, { emit: t }) {
1360
- const d = t, r = (n, v) => {
1361
- d("click", { item: n, event: v });
1362
- }, s = (n) => (n == null ? void 0 : n.className) || "";
1363
- return (n, v) => (o(), c("table", js, [
1364
- l("thead", Ns, [
1365
- l("tr", Os, [
1366
- (o(!0), c(H, null, N(n.headers, (u, f) => (o(), c("th", {
1367
- key: f,
1368
- class: V(["py-2 whitespace-nowrap text-gray-500 dark:text-gray-400 font-normal px-4", s(u)])
1369
- }, [
1370
- C(n.$slots, "header", { item: u }, () => [
1371
- l("div", Fs, _(u.name), 1)
1336
+ default: g(() => [
1337
+ e.value ? (s(), v("div", Fa, [
1338
+ l("div", Ea, [
1339
+ C(d.$slots, "default", { isDone: r.value }, () => [
1340
+ f[1] || (f[1] = l("div", { class: "flex-auto" }, "Progress...", -1)),
1341
+ r.value ? (s(), v("span", Ra, "Done")) : I("", !0)
1342
+ ]),
1343
+ l("button", {
1344
+ class: "cursor-pointer transition text-gray-700 dark:text-gray-400 self-start hover:text-gray-600",
1345
+ onClick: f[0] || (f[0] = (c) => e.value = !1)
1346
+ }, [
1347
+ p(B, {
1348
+ name: "Close",
1349
+ class: "h-4 w-4"
1350
+ })
1372
1351
  ])
1373
- ], 2))), 128))
1374
- ])
1352
+ ]),
1353
+ o.value ? (s(), v("div", {
1354
+ key: 0,
1355
+ class: "h-[2px] fixed top-0 left-0 w-full bg-blue-600 transition-all duration-500",
1356
+ style: K(`width: ${a.value}%`)
1357
+ }, null, 4)) : I("", !0),
1358
+ o.value ? (s(), v("div", Ua, [
1359
+ l("div", Wa, _(a.value) + "%", 1),
1360
+ l("div", {
1361
+ class: "bg-blue-600 rounded-full h-4 overflow-hidden relative transition-all duration-500",
1362
+ style: K(`width: ${a.value}%`)
1363
+ }, [
1364
+ l("div", qa, _(a.value) + "%", 1)
1365
+ ], 4)
1366
+ ])) : I("", !0)
1367
+ ])) : I("", !0)
1375
1368
  ]),
1376
- l("tbody", Ps, [
1377
- n.items.length ? (o(!0), c(H, { key: 0 }, N(n.items, (u, f) => (o(), c("tr", {
1378
- key: f,
1379
- class: "hover:bg-gray-50/50 dark:hover:bg-gray-800/50",
1380
- onClick: (a) => r(u, a)
1381
- }, [
1382
- (o(!0), c(H, null, N(n.headers, (a, i) => (o(), c("td", {
1383
- key: i,
1384
- class: "py-2 whitespace-nowrap px-4"
1385
- }, [
1386
- l("div", Rs, [
1387
- C(n.$slots, a.key, { item: u }, () => [
1388
- T(_(u[a.key]), 1)
1389
- ])
1390
- ])
1391
- ]))), 128))
1392
- ], 8, Es))), 128)) : (o(), c("tr", Us, [
1393
- l("td", Gs, [
1394
- l("div", Ws, [
1395
- C(n.$slots, "empty", {}, () => [
1396
- v[0] || (v[0] = T("The list is empty"))
1397
- ])
1398
- ])
1399
- ])
1400
- ]))
1401
- ])
1402
- ]));
1369
+ _: 3
1370
+ }));
1403
1371
  }
1404
- }), qs = { class: "my-4 text-gray-700 dark:text-gray-400" }, Ks = { class: "flex flex-col md:flex-row flex-wrap md:gap-4 text-sm" }, Zs = { class: "flex gap-2" }, Js = { class: "text-gray-700 dark:text-gray-400" }, Qs = { class: "flex gap-2" }, Xs = { class: "flex gap-2" }, Ys = { class: "text-gray-700 dark:text-gray-400" }, ea = { class: "flex gap-2" }, ta = { class: "text-gray-700 dark:text-gray-400" }, la = { class: "flex flex-col gap-4 text-sm" }, sa = { class: "flex gap-4" }, h1 = /* @__PURE__ */ B({
1372
+ }), Ka = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1373
+ __proto__: null,
1374
+ AppAside: Kl,
1375
+ AppDialog: ye,
1376
+ AppHeader: ha,
1377
+ AppNav: Sa,
1378
+ AppNotification: ka,
1379
+ AppOverlay: za,
1380
+ AppProgress: Ga
1381
+ }, Symbol.toStringTag, { value: "Module" })), Za = { class: "my-4 text-gray-700 dark:text-gray-400" }, Ja = { class: "flex flex-col md:flex-row flex-wrap md:gap-4 text-sm" }, Qa = { class: "flex gap-2" }, Xa = { class: "text-gray-700 dark:text-gray-400" }, Ya = { class: "flex gap-2" }, es = { class: "flex gap-2" }, ts = { class: "text-gray-700 dark:text-gray-400" }, ls = { class: "flex gap-2" }, as = { class: "text-gray-700 dark:text-gray-400" }, ss = { class: "flex flex-col gap-4 text-sm" }, os = { class: "flex gap-4" }, vn = /* @__PURE__ */ V({
1405
1382
  __name: "BlockInfo",
1406
1383
  props: {
1384
+ empty: {},
1407
1385
  pkg: {},
1408
1386
  key: {},
1409
1387
  id: { default: 0 },
@@ -1413,156 +1391,107 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
1413
1391
  uptime: {},
1414
1392
  name: {}
1415
1393
  },
1416
- setup(e) {
1417
- const t = M(() => e.firmware.join(".")), d = M(() => {
1418
- var s, n, v, u, f, a, i;
1394
+ setup(t) {
1395
+ const e = M(() => t.firmware.join(".")), o = M(() => {
1396
+ var a, u, d, f, c, n, i;
1419
1397
  const r = [];
1420
- return (s = e.pkg) != null && s.homepage && r.push({ name: "homepage", href: e.pkg.homepage }), (v = (n = e.pkg) == null ? void 0 : n.repository) != null && v.url && r.push({ name: "repository", href: e.pkg.repository.url }), (f = (u = e.pkg) == null ? void 0 : u.bugs) != null && f.url && r.push({ name: "bugs", href: e.pkg.bugs.url }), (a = e.pkg) != null && a.author && r.push({ name: "author", href: `mailto:${(i = e.pkg) == null ? void 0 : i.author}` }), r;
1398
+ return (a = t.pkg) != null && a.homepage && r.push({ name: "homepage", href: t.pkg.homepage }), (d = (u = t.pkg) == null ? void 0 : u.repository) != null && d.url && r.push({ name: "repository", href: t.pkg.repository.url }), (c = (f = t.pkg) == null ? void 0 : f.bugs) != null && c.url && r.push({ name: "bugs", href: t.pkg.bugs.url }), (n = t.pkg) != null && n.author && r.push({ name: "author", href: `mailto:${(i = t.pkg) == null ? void 0 : i.author}` }), r;
1421
1399
  });
1422
- return (r, s) => {
1423
- var n, v;
1424
- return o(), c("div", null, [
1425
- l("p", qs, _((n = r.pkg) == null ? void 0 : n.description), 1),
1426
- l("div", Ks, [
1427
- l("div", Zs, [
1428
- s[0] || (s[0] = T(" Firmware (hw): ")),
1429
- l("span", Js, _(t.value), 1)
1400
+ return (r, a) => {
1401
+ var u, d;
1402
+ return s(), v("div", null, [
1403
+ l("p", Za, _((u = r.pkg) == null ? void 0 : u.description), 1),
1404
+ l("div", Ja, [
1405
+ l("div", Qa, [
1406
+ a[0] || (a[0] = T(" Firmware (hw): ")),
1407
+ l("span", Xa, _(e.value), 1)
1430
1408
  ]),
1431
- l("div", Qs, [
1432
- l("div", Xs, [
1433
- s[1] || (s[1] = T(" Version (web): ")),
1434
- l("span", Ys, _((v = r.pkg) == null ? void 0 : v.version), 1)
1409
+ l("div", Ya, [
1410
+ l("div", es, [
1411
+ a[1] || (a[1] = T(" Version (web): ")),
1412
+ l("span", ts, _((d = r.pkg) == null ? void 0 : d.version), 1)
1435
1413
  ])
1436
1414
  ]),
1437
- s[3] || (s[3] = l("div", { class: "flex-auto" }, null, -1)),
1438
- l("div", ea, [
1439
- s[2] || (s[2] = T(" ID: ")),
1440
- l("span", ta, _(r.id.toString(16)), 1)
1415
+ a[3] || (a[3] = l("div", { class: "flex-auto" }, null, -1)),
1416
+ l("div", ls, [
1417
+ a[2] || (a[2] = T(" ID: ")),
1418
+ l("span", as, _(r.id.toString(16)), 1)
1441
1419
  ])
1442
1420
  ]),
1443
- s[4] || (s[4] = l("hr", { class: "dark:text-gray-700 text-gray-200 my-2" }, null, -1)),
1444
- l("div", la, [
1445
- l("div", sa, [
1446
- C(r.$slots, "links", { links: d.value })
1421
+ a[4] || (a[4] = l("hr", { class: "dark:text-gray-700 text-gray-200 my-2" }, null, -1)),
1422
+ l("div", ss, [
1423
+ l("div", os, [
1424
+ C(r.$slots, "links", { links: o.value })
1447
1425
  ])
1448
1426
  ])
1449
1427
  ]);
1450
1428
  };
1451
1429
  }
1452
- }), aa = { class: "flex items-center gap-1.5" }, p1 = /* @__PURE__ */ B({
1430
+ }), ns = { class: "flex items-center gap-1.5" }, fn = /* @__PURE__ */ V({
1453
1431
  __name: "BlockBreadcrumb",
1454
1432
  props: {
1455
1433
  items: { default: () => [] }
1456
1434
  },
1457
1435
  emits: ["click"],
1458
- setup(e, { emit: t }) {
1459
- const d = t;
1460
- return (r, s) => (o(), c("nav", null, [
1461
- l("ol", aa, [
1462
- (o(!0), c(H, null, N(r.items, (n, v) => (o(), c("li", {
1463
- key: v,
1464
- class: V(["inline-flex items-center gap-1.5 text-sm text-gray-500 dark:text-gray-400", n.path ? "" : "text-gray-800 dark:text-white/90"])
1436
+ setup(t, { emit: e }) {
1437
+ const o = e, r = (a) => o("click", a);
1438
+ return (a, u) => (s(), v("nav", null, [
1439
+ l("ol", ns, [
1440
+ (s(!0), v(D, null, N(a.items, (d, f) => (s(), v("li", {
1441
+ key: f,
1442
+ class: z(["inline-flex items-center gap-1.5 text-sm text-gray-500 dark:text-gray-400", d.path ? "" : "text-gray-800 dark:text-white/90"])
1465
1443
  }, [
1466
- C(r.$slots, "default", { item: n }, () => [
1467
- (o(), A(q(n.path ? "a" : "span"), {
1468
- href: n.path,
1469
- onClick: s[0] || (s[0] = (u) => d("click", u))
1444
+ C(a.$slots, "default", { item: d }, () => [
1445
+ (s(), A(G(d.path ? "a" : "span"), {
1446
+ href: d.path,
1447
+ onClick: (c) => r(d)
1470
1448
  }, {
1471
- default: m(() => [
1472
- T(_(n.name), 1)
1449
+ default: g(() => [
1450
+ T(_(d.name), 1)
1473
1451
  ]),
1474
1452
  _: 2
1475
- }, 1032, ["href"]))
1453
+ }, 1032, ["href", "onClick"]))
1476
1454
  ]),
1477
- n.path ? (o(), A(z(K), {
1455
+ d.path ? (s(), A(B, {
1478
1456
  key: 0,
1479
- class: "rotate-270"
1457
+ class: "rotate-270",
1458
+ name: "Chevron"
1480
1459
  })) : I("", !0)
1481
1460
  ], 2))), 128))
1482
1461
  ])
1483
1462
  ]));
1484
1463
  }
1485
- }), oa = {
1464
+ }), rs = {
1486
1465
  key: 0,
1487
1466
  class: "loader-line w-full absolute top-0 left-0 h-[3px] bg-gray-100 dark:bg-gray-800 before:bg-blue-600 dark:before:bg-blue-800 before:h-1 rounded-xl z-20 before:absolute before:w-[40%] before:-left-1/2 before:content-[''] before:animate-[lineAnim_1s_linear_infinite]"
1488
- }, na = {
1467
+ }, is = {
1489
1468
  key: 1,
1490
1469
  class: "absolute top-0 left-0 w-full h-full bg-gray-50 dark:bg-gray-900 z-10 opacity-50"
1491
- }, ra = { class: "mb-6 flex items-center justify-between" }, ia = { class: "text-lg font-semibold text-gray-800 dark:text-white/90" }, da = { class: "max-w-full" }, ca = /* @__PURE__ */ B({
1492
- __name: "CardGray",
1470
+ }, ds = { class: "mb-6 flex items-center justify-between" }, cs = { class: "text-lg font-semibold text-gray-800 dark:text-white/90" }, us = { class: "max-w-full" }, vs = /* @__PURE__ */ V({
1471
+ __name: "CardMain",
1493
1472
  props: {
1494
1473
  title: {},
1495
1474
  loading: { type: Boolean }
1496
1475
  },
1497
- setup(e) {
1498
- const t = e;
1499
- return (d, r) => (o(), c("div", {
1500
- class: V(["relative rounded-md border border-gray-200 bg-white p-5 dark:border-gray-800 dark:bg-white/[0.03] sm:p-6", { "overflow-hidden": t.loading }])
1476
+ setup(t) {
1477
+ const e = t;
1478
+ return (o, r) => (s(), v("div", {
1479
+ class: z(["relative rounded-md border border-gray-200 bg-white p-5 dark:border-gray-800 dark:bg-white/[0.03] sm:p-6", { "overflow-hidden": e.loading }])
1501
1480
  }, [
1502
- d.loading ? (o(), c("div", oa)) : I("", !0),
1503
- d.loading ? (o(), c("div", na)) : I("", !0),
1504
- l("div", ra, [
1505
- l("h3", ia, _(t.title), 1),
1481
+ o.loading ? (s(), v("div", rs)) : I("", !0),
1482
+ o.loading ? (s(), v("div", is)) : I("", !0),
1483
+ l("div", ds, [
1484
+ l("h3", cs, _(e.title), 1),
1506
1485
  l("div", null, [
1507
- C(d.$slots, "header")
1486
+ C(o.$slots, "header")
1508
1487
  ])
1509
1488
  ]),
1510
- l("div", da, [
1511
- C(d.$slots, "default")
1489
+ l("div", us, [
1490
+ C(o.$slots, "default")
1512
1491
  ])
1513
1492
  ], 2));
1514
1493
  }
1515
- }), ua = { class: "relative flex items-center gap-2 w-full p-2 overflow-hidden" }, va = { class: "flex-auto text-xs" }, fa = { class: "text-gray-500 dark:text-gray-400 mt-1" }, ha = /* @__PURE__ */ B({
1516
- __name: "CardNotification",
1517
- props: {
1518
- key: {},
1519
- isNew: {},
1520
- color: {},
1521
- timeout: {},
1522
- date: {},
1523
- text: {}
1524
- },
1525
- emits: ["remove", "read"],
1526
- setup(e, { emit: t }) {
1527
- const d = e, r = t, s = ["", "bg-green-500", "bg-red-500", "bg-yellow-500", "bg-blue-500"], n = (f) => s[f], v = (f) => r("remove", f), u = (f) => r("read", f);
1528
- return (f, a) => (o(), c("div", ua, [
1529
- l("div", {
1530
- class: V(["absolute left-0 top-0 w-[3px] h-full", n(d.color)])
1531
- }, null, 2),
1532
- p(j, {
1533
- class: "shrink-0",
1534
- type: "icon",
1535
- color: "gray",
1536
- onClick: u
1537
- }, {
1538
- default: m(() => [
1539
- l("span", {
1540
- class: V([d.isNew ? "flex" : "hidden", "absolute right-0 top-0.5 z-1 h-2 w-2 rounded-full bg-orange-400"])
1541
- }, a[0] || (a[0] = [
1542
- l("span", { class: "absolute -z-1 inline-flex h-full w-full animate-ping rounded-full bg-orange-400 opacity-75" }, null, -1)
1543
- ]), 2),
1544
- p(z(he), { class: "size-5" })
1545
- ]),
1546
- _: 1
1547
- }),
1548
- l("div", va, [
1549
- l("div", null, _(d.text), 1),
1550
- l("div", fa, _(z(Ze)(d.date)) + " (" + _(z(Je)(d.date)) + ")", 1)
1551
- ]),
1552
- p(j, {
1553
- class: "shrink-0",
1554
- type: "icon",
1555
- size: "small",
1556
- onClick: v
1557
- }, {
1558
- default: m(() => [
1559
- p(z(G), { class: "size-4" })
1560
- ]),
1561
- _: 1
1562
- })
1563
- ]));
1564
- }
1565
- }), pa = { class: "flex-auto flex justify-between" }, ga = { class: "text-sm text-gray-500 font-medium line-clamp-2 overflow-hidden" }, ma = { class: "text-sm text-ellipsis overflow-hidden text-nowrap" }, ba = { class: "flex-auto flex items-center justify-between gap-6 me-2" }, ya = { class: "min-h-60 relative" }, xa = { class: "pt-6" }, ka = { class: "text-center text-3xl text-ellipsis overflow-hidden" }, _a = { class: "text-center text-xl mt-4" }, W = /* @__PURE__ */ B({
1494
+ }), fs = { class: "flex-auto flex justify-between" }, hs = { class: "text-sm text-gray-500 font-medium line-clamp-2 overflow-hidden" }, ps = { class: "text-sm text-ellipsis overflow-hidden text-nowrap" }, ms = { class: "flex-auto flex items-center justify-between gap-6 me-2" }, gs = { class: "min-h-60 relative" }, bs = { class: "pt-6" }, ys = { class: "text-center text-3xl text-ellipsis overflow-hidden" }, xs = { class: "text-center text-xl mt-4" }, q = /* @__PURE__ */ V({
1566
1495
  __name: "CardBase",
1567
1496
  props: {
1568
1497
  size: {},
@@ -1578,79 +1507,79 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
1578
1507
  get: {},
1579
1508
  getTo: {}
1580
1509
  },
1581
- emits: ["edit", "close", "open"],
1582
- setup(e, { emit: t }) {
1583
- const d = L(!1), r = t, s = e, n = M(() => ["button", "dimmer"].includes(s.type || "") && s.value ? "text-amber-500" : "text-gray-400"), v = M(() => s.icon || ""), u = (h) => r("edit", h), f = () => d.value = !0, a = (h) => r("open", h), i = (h) => {
1584
- d.value = !1, r("close", h);
1510
+ emits: ["edit", "close", "click", "open", "setState"],
1511
+ setup(t, { emit: e }) {
1512
+ const o = t, r = e, a = L(!1), u = M(() => ["button", "dimmer"].includes(o.type || "") && o.value ? "text-amber-500" : "text-gray-400"), d = M(() => o.icon || ""), f = (h) => r("edit", h), c = () => a.value = !0, n = (h) => r("open", h), i = (h) => {
1513
+ a.value = !1, r("close", h);
1585
1514
  };
1586
- return (h, b) => {
1587
- const $ = ee("AppDialog");
1588
- return o(), c("div", {
1515
+ return (h, y) => {
1516
+ const $ = oe("AppDialog");
1517
+ return s(), v("div", {
1589
1518
  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:border-blue-400 dark:hover:border-blue-700 transition-all cursor-pointer",
1590
- onClick: f
1519
+ onClick: c
1591
1520
  }, [
1592
- l("div", pa, [
1521
+ l("div", fs, [
1593
1522
  l("div", {
1594
- class: V(n.value)
1523
+ class: z(u.value)
1595
1524
  }, [
1596
- p(Z, {
1597
- name: v.value,
1598
- class: V(["size-8", s.value ? "animate-shake" : ""])
1525
+ p(B, {
1526
+ name: d.value,
1527
+ class: z(["size-8", o.value ? "animate-shake" : ""])
1599
1528
  }, null, 8, ["name", "class"])
1600
1529
  ], 2),
1601
- C(h.$slots, "header", E(R(s)))
1530
+ C(h.$slots, "header", R(U(o)))
1602
1531
  ]),
1603
1532
  l("div", null, [
1604
- C(h.$slots, "body", E(R(s)), () => [
1605
- l("h6", ga, [
1606
- C(h.$slots, "name", E(R(s)), () => [
1607
- T(_(s.name), 1)
1533
+ C(h.$slots, "body", R(U(o)), () => [
1534
+ l("h6", hs, [
1535
+ C(h.$slots, "name", R(U(o)), () => [
1536
+ T(_(o.name), 1)
1608
1537
  ])
1609
1538
  ]),
1610
- l("div", ma, [
1611
- C(h.$slots, "value", E(R(s)), () => [
1612
- T(_(s.valueTo || s.value), 1)
1539
+ l("div", ps, [
1540
+ C(h.$slots, "value", R(U(o)), () => [
1541
+ T(_(o.valueTo || o.value), 1)
1613
1542
  ])
1614
1543
  ])
1615
1544
  ])
1616
1545
  ]),
1617
- v.value ? (o(), A(Z, {
1546
+ d.value ? (s(), A(B, {
1618
1547
  key: 0,
1619
- name: v.value,
1548
+ name: d.value,
1620
1549
  class: "absolute left-1/2 top-1/2 size-[calc(50%)] opacity-5 text-gray-200/20 -translate-1/2"
1621
1550
  }, null, 8, ["name"])) : I("", !0),
1622
- d.value ? (o(), A($, {
1551
+ a.value ? (s(), A($, {
1623
1552
  key: 1,
1624
- size: s.size || "sm",
1553
+ size: o.size || "sm",
1625
1554
  title: h.name,
1626
1555
  onClose: i,
1627
- onOpen: a
1556
+ onOpen: n
1628
1557
  }, {
1629
- header: m(() => [
1630
- l("div", ba, [
1558
+ header: g(() => [
1559
+ l("div", ms, [
1631
1560
  p(j, {
1632
1561
  type: "icon",
1633
- onClick: u
1562
+ onClick: f
1634
1563
  }, {
1635
- default: m(() => [
1636
- p(Z, { name: "Dots" })
1564
+ default: g(() => [
1565
+ p(B, { name: "Dots" })
1637
1566
  ]),
1638
1567
  _: 1
1639
1568
  })
1640
1569
  ])
1641
1570
  ]),
1642
- default: m(() => [
1643
- l("div", ya, [
1644
- l("div", xa, [
1645
- l("h3", ka, [
1646
- C(h.$slots, "dialog-name", E(R(s)), () => [
1647
- T(_(s.name), 1)
1571
+ default: g(() => [
1572
+ l("div", gs, [
1573
+ l("div", bs, [
1574
+ l("h3", ys, [
1575
+ C(h.$slots, "dialog-name", R(U(o)), () => [
1576
+ T(_(o.name), 1)
1648
1577
  ])
1649
1578
  ]),
1650
- C(h.$slots, "dialog", E(R(s))),
1651
- l("p", _a, [
1652
- C(h.$slots, "dialog-value", E(R(s)), () => [
1653
- T(_(s.valueTo || s.value), 1)
1579
+ C(h.$slots, "dialog", R(U(o))),
1580
+ l("p", xs, [
1581
+ C(h.$slots, "dialog-value", R(U(o)), () => [
1582
+ T(_(o.valueTo || o.value), 1)
1654
1583
  ])
1655
1584
  ])
1656
1585
  ])
@@ -1661,9 +1590,10 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
1661
1590
  ]);
1662
1591
  };
1663
1592
  }
1664
- }), $a = { class: "flex justify-end" }, wa = { class: "flex justify-center py-4" }, Ca = /* @__PURE__ */ B({
1593
+ }), ks = { class: "flex justify-end" }, _s = { class: "flex justify-center py-4" }, $s = /* @__PURE__ */ V({
1665
1594
  __name: "CardButton",
1666
1595
  props: {
1596
+ size: {},
1667
1597
  id: {},
1668
1598
  name: {},
1669
1599
  type: {},
@@ -1676,36 +1606,42 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
1676
1606
  get: {},
1677
1607
  getTo: {}
1678
1608
  },
1679
- emits: ["click", "setState"],
1680
- setup(e, { emit: t }) {
1681
- const d = t, r = e, s = ({ opts: u = {} }) => {
1682
- const { disabled: f } = u;
1683
- return { disabled: f };
1684
- }, n = (u) => d("click", u), v = () => d("setState", !r.value);
1685
- return (u, f) => (o(), A(W, D(r, { onClick: n }), {
1686
- header: m((a) => [
1687
- l("div", $a, [
1688
- p(j, D(s(a), {
1609
+ emits: ["edit", "close", "click", "open", "setState"],
1610
+ setup(t, { emit: e }) {
1611
+ const o = t, r = e, a = ({ opts: f = {} }) => {
1612
+ const { disabled: c } = f;
1613
+ return { disabled: c };
1614
+ }, u = (f) => r("click", f), d = () => r("setState", !o.value);
1615
+ return (f, c) => (s(), A(q, H(o, { onClick: u }), {
1616
+ header: g((n) => [
1617
+ l("div", ks, [
1618
+ p(j, H(a(n), {
1689
1619
  type: "icon",
1690
1620
  class: "text-gray-500",
1691
- onClick: F(v, ["stop"])
1621
+ onClick: P(d, ["stop"])
1692
1622
  }), {
1693
- default: m(() => [
1694
- p(z(re), { class: "size-10" })
1623
+ default: g(() => [
1624
+ p(B, {
1625
+ name: "Power",
1626
+ class: "size-10"
1627
+ })
1695
1628
  ]),
1696
1629
  _: 2
1697
1630
  }, 1040)
1698
1631
  ])
1699
1632
  ]),
1700
- dialog: m((a) => [
1701
- l("div", wa, [
1702
- p(j, D(s(a), {
1633
+ dialog: g((n) => [
1634
+ l("div", _s, [
1635
+ p(j, H(a(n), {
1703
1636
  type: "icon",
1704
- class: ["size-18", r.value ? "text-amber-500" : "text-blue-600 dark:text-blue-400"],
1705
- onClick: F(v, ["stop"])
1637
+ class: ["size-18", o.value ? "text-amber-500" : "text-blue-600 dark:text-blue-400"],
1638
+ onClick: P(d, ["stop"])
1706
1639
  }), {
1707
- default: m(() => [
1708
- p(z(re), { class: "size-16" })
1640
+ default: g(() => [
1641
+ p(B, {
1642
+ name: "Power",
1643
+ class: "size-16"
1644
+ })
1709
1645
  ]),
1710
1646
  _: 2
1711
1647
  }, 1040, ["class"])
@@ -1714,9 +1650,79 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
1714
1650
  _: 1
1715
1651
  }, 16));
1716
1652
  }
1717
- }), za = { class: "flex justify-center relative mx-2 my-6" }, Va = /* @__PURE__ */ B({
1653
+ }), ws = { class: "w-full relative" }, Cs = ["disabled"], zs = {
1654
+ key: 0,
1655
+ class: "text-red-400 h-[24px] px-2 text-xs"
1656
+ }, Vs = "after:absolute after:h-1 after:w-full after:left-0 after:translate-y-[6px] after:-z-10 dark:after:bg-gray-800 after:bg-white after:transition-all", O = /* @__PURE__ */ V({
1657
+ __name: "VTextField",
1658
+ props: {
1659
+ modelValue: { default: null },
1660
+ label: { default: "" },
1661
+ component: { default: "input" },
1662
+ type: { default: "text" },
1663
+ message: { default: "" },
1664
+ readonly: { type: Boolean },
1665
+ disabled: { type: [Boolean, Number], default: !1 },
1666
+ active: { type: Boolean, default: !1 },
1667
+ hideMessage: { type: Boolean, default: !1 }
1668
+ },
1669
+ emits: ["update:modelValue", "click", "on-icon", "enter", "blur"],
1670
+ setup(t, { emit: e }) {
1671
+ const o = e, r = {
1672
+ input: "w-full h-full px-4 outline-none overflow-ellipsis flex-auto overflow-hidden w-[calc(100% - 20px)] bg-transparent",
1673
+ textarea: "h-full w-full px-4 py-2 outline-none flex-auto bg-transparent"
1674
+ }, a = L(!1), u = M(() => [
1675
+ t.component === "input" ? "h-[40px]" : "min-h-[40px]",
1676
+ t.message ? "border-red-500 hover:border-red-400" : "",
1677
+ t.disabled ? "border-gray-400 opacity-40" : "border-gray-300 hover:border-gray-400 dark:border-gray-700/50 hover:dark:border-gray-600/50"
1678
+ ]), d = M(() => r[t.component]), f = (m) => m || m === 0, c = M(() => [Vs, a.value || f(t.modelValue) || t.active ? "top-0 left-3 text-xs" : "top-1/2"]), n = M(() => t.component === "input"), i = (m) => {
1679
+ a.value = !1, o("blur", m);
1680
+ }, h = (m) => {
1681
+ a.value = !0, o("blur", m);
1682
+ }, y = ({ target: m }) => o("update:modelValue", m.value), $ = (m) => o("enter", m), b = (m) => o("click", m), w = (m) => {
1683
+ t.disabled || o("on-icon", m);
1684
+ };
1685
+ return (m, E) => (s(), v("div", ws, [
1686
+ l("label", {
1687
+ class: z(["relative w-full border border-gray-300 dark:border-gray-700 flex items-center rounded transition bg-white dark:bg-gray-800", u.value])
1688
+ }, [
1689
+ l("span", {
1690
+ class: z(["absolute left-4 transition-all rounded -translate-y-1/2 text-gray-600 dark:text-gray-400", c.value])
1691
+ }, _(m.label), 3),
1692
+ (s(), A(G(m.component), H(m.$attrs, {
1693
+ value: m.modelValue,
1694
+ disabled: !!m.disabled,
1695
+ type: m.type,
1696
+ readonly: m.readonly,
1697
+ rows: n.value ? null : "2",
1698
+ wrap: n.value ? null : "soft",
1699
+ class: d.value,
1700
+ onFocus: h,
1701
+ onBlur: i,
1702
+ onInput: y,
1703
+ onClick: b,
1704
+ onKeypress: Se($, ["enter"])
1705
+ }), null, 16, ["value", "disabled", "type", "readonly", "rows", "wrap", "class"])),
1706
+ m.$slots.icon ? (s(), v("button", {
1707
+ key: 0,
1708
+ disabled: !!m.disabled,
1709
+ class: z([{ "cursor-pointer": !m.disabled }, "flex-[0_0_50px] h-full flex items-center justify-center text-gray-400 border-l border-gray-300 dark:border-gray-700/50"]),
1710
+ onClick: w
1711
+ }, [
1712
+ C(m.$slots, "icon")
1713
+ ], 10, Cs)) : I("", !0)
1714
+ ], 2),
1715
+ m.hideMessage ? I("", !0) : (s(), v("div", zs, [
1716
+ C(m.$slots, "message", {}, () => [
1717
+ T(_(m.message), 1)
1718
+ ])
1719
+ ]))
1720
+ ]));
1721
+ }
1722
+ }), Bs = { class: "flex justify-center relative mx-2 my-6" }, Ms = /* @__PURE__ */ V({
1718
1723
  __name: "CardDate",
1719
1724
  props: {
1725
+ size: {},
1720
1726
  id: {},
1721
1727
  name: {},
1722
1728
  type: {},
@@ -1729,39 +1735,40 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
1729
1735
  get: {},
1730
1736
  getTo: {}
1731
1737
  },
1732
- emits: ["click", "setState"],
1733
- setup(e, { emit: t }) {
1734
- const d = t, r = e, s = (f) => new Date(+f * 1e3).toISOString().slice(0, 16), n = (f) => {
1738
+ emits: ["edit", "close", "click", "open", "setState"],
1739
+ setup(t, { emit: e }) {
1740
+ const o = t, r = e, a = (c) => new Date(+c * 1e3).toISOString().slice(0, 16), u = (c) => {
1735
1741
  var i;
1736
- const a = (i = f == null ? void 0 : f.target) == null ? void 0 : i.valueAsNumber;
1737
- a && d("setState", a / 1e3);
1738
- }, v = ({ name: f, value: a, opts: i = {} }) => {
1742
+ const n = (i = c == null ? void 0 : c.target) == null ? void 0 : i.valueAsNumber;
1743
+ n && r("setState", n / 1e3);
1744
+ }, d = ({ name: c, value: n, opts: i = {} }) => {
1739
1745
  const { disabled: h } = i;
1740
- return { label: f, modelValue: s(a), disabled: h };
1741
- }, u = (f) => d("click", f);
1742
- return (f, a) => (o(), A(W, D(r, { onClick: u }), {
1743
- dialog: m((i) => [
1744
- l("div", za, [
1745
- p(O, D(v(i), {
1746
+ return { label: c, modelValue: a(n), disabled: h };
1747
+ }, f = (c) => r("click", c);
1748
+ return (c, n) => (s(), A(q, H(o, { onClick: f }), {
1749
+ dialog: g((i) => [
1750
+ l("div", Bs, [
1751
+ p(O, H(d(i), {
1746
1752
  type: "datetime-local",
1747
- onChange: n
1753
+ onChange: u
1748
1754
  }), null, 16)
1749
1755
  ])
1750
1756
  ]),
1751
1757
  _: 1
1752
1758
  }, 16));
1753
1759
  }
1754
- }), Ba = { class: "flex justify-end" }, Ma = {
1755
- class: /* @__PURE__ */ V("text-blue-600 dark:text-blue-400")
1756
- }, Ia = {
1760
+ }), Is = { class: "flex justify-end" }, As = {
1761
+ class: /* @__PURE__ */ z("text-blue-600 dark:text-blue-400")
1762
+ }, Ss = {
1757
1763
  width: "32",
1758
1764
  height: "32",
1759
1765
  viewBox: "-7.5 -7.5 75 75",
1760
1766
  version: "1.1",
1761
1767
  style: { transform: "rotate(-90deg)" }
1762
- }, Aa = ["stroke-dashoffset"], Sa = { class: "absolute top-1/2 left-1/2 -translate-1/2 text-white z-10 font-bold text-xl" }, Ta = /* @__PURE__ */ B({
1768
+ }, Ts = ["stroke-dashoffset"], Ds = { class: "absolute top-1/2 left-1/2 -translate-1/2 text-white z-10 font-bold text-xl" }, Hs = /* @__PURE__ */ V({
1763
1769
  __name: "CardDimmer",
1764
1770
  props: {
1771
+ size: {},
1765
1772
  id: {},
1766
1773
  name: {},
1767
1774
  type: {},
@@ -1774,17 +1781,17 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
1774
1781
  get: {},
1775
1782
  getTo: {}
1776
1783
  },
1777
- emits: ["click", "setState"],
1778
- setup(e, { emit: t }) {
1779
- const d = t, r = e, s = ({ opts: a, value: i }) => Math.round(100 * +i / ((a == null ? void 0 : a.max) || 255)), n = ({ opts: a, value: i }) => Math.round(187 - +i / ((a == null ? void 0 : a.max) || 255) * 187), v = ({ value: a, opts: i }) => {
1780
- const { min: h = 0, max: b = 255, step: $ = 1, disabled: y } = i || {};
1781
- return { min: h, max: b, step: $, value: a, disabled: !!y, class: y ? "" : "cursor-pointer" };
1782
- }, u = (a) => d("click", a), f = (a) => d("setState", +a.target.value || 0);
1783
- return (a, i) => (o(), A(W, D(r, { onClick: u }), {
1784
- header: m((h) => [
1785
- l("div", Ba, [
1786
- l("div", Ma, [
1787
- (o(), c("svg", Ia, [
1784
+ emits: ["edit", "close", "click", "open", "setState"],
1785
+ setup(t, { emit: e }) {
1786
+ const o = t, r = e, a = ({ opts: n, value: i }) => Math.round(100 * +i / ((n == null ? void 0 : n.max) || 255)), u = ({ opts: n, value: i }) => Math.round(187 - +i / ((n == null ? void 0 : n.max) || 255) * 187), d = ({ value: n, opts: i }) => {
1787
+ const { min: h = 0, max: y = 255, step: $ = 1, disabled: b } = i || {};
1788
+ return { min: h, max: y, step: $, value: n, disabled: !!b, class: b ? "" : "cursor-pointer" };
1789
+ }, f = (n) => r("click", n), c = (n) => r("setState", +n.target.value || 0);
1790
+ return (n, i) => (s(), A(q, H(o, { onClick: f }), {
1791
+ header: g((h) => [
1792
+ l("div", Is, [
1793
+ l("div", As, [
1794
+ (s(), v("svg", Ss, [
1788
1795
  i[0] || (i[0] = l("circle", {
1789
1796
  class: "stroke-gray-300 dark:stroke-gray-700",
1790
1797
  r: "30",
@@ -1800,36 +1807,37 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
1800
1807
  stroke: "currentColor",
1801
1808
  "stroke-width": "8",
1802
1809
  "stroke-linecap": "butt",
1803
- "stroke-dashoffset": n(h),
1810
+ "stroke-dashoffset": u(h),
1804
1811
  fill: "transparent",
1805
1812
  "stroke-dasharray": "187"
1806
- }, null, 8, Aa)
1813
+ }, null, 8, Ts)
1807
1814
  ]))
1808
1815
  ])
1809
1816
  ])
1810
1817
  ]),
1811
- dialog: m((h) => [
1818
+ dialog: g((h) => [
1812
1819
  l("div", {
1813
- class: V(["flex justify-center relative mx-2 my-6", v(h).disabled ? "opacity-40" : ""])
1820
+ class: z(["flex justify-center relative mx-2 my-6", d(h).disabled ? "opacity-40" : ""])
1814
1821
  }, [
1815
1822
  i[1] || (i[1] = l("div", { class: "absolute h-10 w-full top-0 left-0 bg-gray-400 dark:bg-gray-800 z-0 rounded-md" }, null, -1)),
1816
1823
  l("div", {
1817
1824
  class: "absolute h-10 top-0 left-0 bg-blue-600 dark:bg-blue-400 z-0 rounded-md transition-[width_0.3s_linear]",
1818
- style: J(`width: ${s(h)}%`)
1825
+ style: K(`width: ${a(h)}%`)
1819
1826
  }, null, 4),
1820
- l("div", Sa, _(s(h)) + " %", 1),
1821
- l("input", D({ type: "range" }, v(h), {
1827
+ l("div", Ds, _(a(h)) + " %", 1),
1828
+ l("input", H({ type: "range" }, d(h), {
1822
1829
  class: "w-full h-10 z-10 appearance-none opacity-0",
1823
- onChange: f
1830
+ onChange: c
1824
1831
  }), null, 16)
1825
1832
  ], 2)
1826
1833
  ]),
1827
1834
  _: 1
1828
1835
  }, 16));
1829
1836
  }
1830
- }), Ha = /* @__PURE__ */ B({
1837
+ }), Ls = /* @__PURE__ */ V({
1831
1838
  __name: "CardInfo",
1832
1839
  props: {
1840
+ size: {},
1833
1841
  id: {},
1834
1842
  name: {},
1835
1843
  type: {},
@@ -1842,19 +1850,20 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
1842
1850
  get: {},
1843
1851
  getTo: {}
1844
1852
  },
1845
- emits: ["click"],
1846
- setup(e, { emit: t }) {
1847
- const d = t, r = e, s = (n) => d("click", n);
1848
- return (n, v) => (o(), A(W, D(r, { onClick: s }), {
1849
- default: m(() => [
1850
- C(n.$slots, "dialog")
1853
+ emits: ["edit", "close", "click", "open", "setState"],
1854
+ setup(t, { emit: e }) {
1855
+ const o = t, r = e, a = (u) => r("click", u);
1856
+ return (u, d) => (s(), A(q, H(o, { onClick: a }), {
1857
+ default: g(() => [
1858
+ C(u.$slots, "dialog")
1851
1859
  ]),
1852
1860
  _: 3
1853
1861
  }, 16));
1854
1862
  }
1855
- }), Da = { class: "flex justify-center relative mx-2 my-6" }, La = /* @__PURE__ */ B({
1863
+ }), js = { class: "flex justify-center relative mx-2 my-6" }, Ns = /* @__PURE__ */ V({
1856
1864
  __name: "CardInput",
1857
1865
  props: {
1866
+ size: {},
1858
1867
  id: {},
1859
1868
  name: {},
1860
1869
  type: {},
@@ -1867,22 +1876,25 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
1867
1876
  get: {},
1868
1877
  getTo: {}
1869
1878
  },
1870
- emits: ["click", "setState"],
1871
- setup(e, { emit: t }) {
1872
- const d = t, r = e, s = ({ name: u, value: f, opts: a = {} }) => {
1873
- const { disabled: i } = a;
1874
- return { label: u, modelValue: f, disabled: i };
1875
- }, n = (u) => d("setState", u.target.value), v = (u) => d("click", u);
1876
- return (u, f) => (o(), A(W, D(r, { onClick: v }), {
1877
- dialog: m((a) => [
1878
- l("div", Da, [
1879
- p(O, D(s(a), {
1879
+ emits: ["edit", "close", "click", "open", "setState"],
1880
+ setup(t, { emit: e }) {
1881
+ const o = t, r = e, a = ({ name: f, value: c, opts: n = {} }) => {
1882
+ const { disabled: i } = n;
1883
+ return { label: f, modelValue: c, disabled: i };
1884
+ }, u = (f) => r("setState", f.target.value), d = (f) => r("click", f);
1885
+ return (f, c) => (s(), A(q, H(o, { onClick: d }), {
1886
+ dialog: g((n) => [
1887
+ l("div", js, [
1888
+ p(O, H(a(n), {
1880
1889
  autofocus: "",
1881
- onEnter: n,
1882
- onBlur: n
1890
+ onEnter: u,
1891
+ onBlur: u
1883
1892
  }), {
1884
- icon: m(() => [
1885
- p(z(K), { class: "size-6 rotate-270" })
1893
+ icon: g(() => [
1894
+ p(B, {
1895
+ name: "Chevron",
1896
+ class: "size-6 rotate-270"
1897
+ })
1886
1898
  ]),
1887
1899
  _: 2
1888
1900
  }, 1040)
@@ -1891,9 +1903,77 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
1891
1903
  _: 1
1892
1904
  }, 16));
1893
1905
  }
1894
- }), ja = { class: "flex justify-center py-4" }, Na = /* @__PURE__ */ B({
1906
+ }), Os = ["value", "selected"], J = /* @__PURE__ */ V({
1907
+ __name: "VSelect",
1908
+ props: {
1909
+ value: { default: "" },
1910
+ label: {},
1911
+ disabled: { type: [Boolean, Number], default: !1 },
1912
+ list: {}
1913
+ },
1914
+ emits: ["update:modelValue", "change"],
1915
+ setup(t, { emit: e }) {
1916
+ const o = e, r = M(() => {
1917
+ const f = t.list.find((c) => c.value === t.value);
1918
+ return (f == null ? void 0 : f.name) || "";
1919
+ }), a = (f) => ({ "rotate-x-180": f }), u = (f) => {
1920
+ const c = f.target, n = (c == null ? void 0 : c.value) || 0, i = t.list.find((h) => h.value == n);
1921
+ i && o("change", i);
1922
+ }, d = (f, c) => {
1923
+ f.click(new Event("click")), o("change", c);
1924
+ };
1925
+ return (f, c) => (s(), A(Y, H({ class: "relative w-full" }, f.$attrs, { top: "46px" }), {
1926
+ activator: g(({ on: n, show: i }) => [
1927
+ p(O, {
1928
+ "model-value": r.value,
1929
+ readonly: "",
1930
+ hideMessage: "",
1931
+ disabled: f.disabled,
1932
+ active: "",
1933
+ label: f.label,
1934
+ onClick: n.click,
1935
+ onOnIcon: n.click
1936
+ }, {
1937
+ icon: g(() => [
1938
+ p(B, {
1939
+ name: "Chevron",
1940
+ class: z(["transition", a(i)])
1941
+ }, null, 8, ["class"])
1942
+ ]),
1943
+ _: 2
1944
+ }, 1032, ["model-value", "disabled", "label", "onClick", "onOnIcon"]),
1945
+ l("select", {
1946
+ class: "md:hidden absolute left-0 top-0 w-full h-full opacity-0",
1947
+ name: "select",
1948
+ onChange: u
1949
+ }, [
1950
+ (s(!0), v(D, null, N(f.list, (h) => (s(), v("option", {
1951
+ key: h.value,
1952
+ value: h.value,
1953
+ selected: f.value === h.value
1954
+ }, _(h.name), 9, Os))), 128))
1955
+ ], 32)
1956
+ ]),
1957
+ default: g(({ on: n }) => [
1958
+ p(ee, {
1959
+ list: f.list,
1960
+ onClick: (i) => d(n, i)
1961
+ }, {
1962
+ default: g(({ item: i }) => [
1963
+ C(f.$slots, "default", { item: i }, () => [
1964
+ T(_(i.name), 1)
1965
+ ])
1966
+ ]),
1967
+ _: 2
1968
+ }, 1032, ["list", "onClick"])
1969
+ ]),
1970
+ _: 3
1971
+ }, 16));
1972
+ }
1973
+ }), Ps = { class: "flex justify-center py-4" }, Fs = /* @__PURE__ */ V({
1895
1974
  __name: "CardList",
1896
1975
  props: {
1976
+ size: {},
1897
1977
  id: {},
1898
1978
  name: {},
1899
1979
  type: {},
@@ -1906,31 +1986,31 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
1906
1986
  get: {},
1907
1987
  getTo: {}
1908
1988
  },
1909
- emits: ["click", "setState"],
1910
- setup(e, { emit: t }) {
1911
- const d = t, r = e, s = (f) => d("click", f), n = ({ value: f }) => d("setState", f), v = ({ opts: f, value: a }) => {
1989
+ emits: ["edit", "close", "click", "open", "setState"],
1990
+ setup(t, { emit: e }) {
1991
+ const o = t, r = e, a = (c) => r("click", c), u = ({ value: c }) => r("setState", c), d = ({ opts: c, value: n }) => {
1912
1992
  var i;
1913
- return Array.isArray(f == null ? void 0 : f.list) && ((i = f == null ? void 0 : f.list.find((h) => h.value === a)) == null ? void 0 : i.name) || a;
1914
- }, u = ({ name: f, value: a, opts: i = {} }) => {
1915
- const { list: h = [], disabled: b } = i;
1916
- return { label: f, value: a, list: h, disabled: b };
1993
+ return Array.isArray(c == null ? void 0 : c.list) && ((i = c == null ? void 0 : c.list.find((h) => h.value === n)) == null ? void 0 : i.name) || n;
1994
+ }, f = ({ name: c, value: n, opts: i = {} }) => {
1995
+ const { list: h = [], disabled: y } = i;
1996
+ return { label: c, value: n, list: h, disabled: y };
1917
1997
  };
1918
- return (f, a) => (o(), A(W, D(r, { onClick: s }), {
1919
- value: m((i) => [
1920
- T(_(v(i)), 1)
1998
+ return (c, n) => (s(), A(q, H(o, { onClick: a }), {
1999
+ value: g((i) => [
2000
+ T(_(d(i)), 1)
1921
2001
  ]),
1922
- "dialog-value": m((i) => [
1923
- T(_(v(i)), 1)
2002
+ "dialog-value": g((i) => [
2003
+ T(_(d(i)), 1)
1924
2004
  ]),
1925
- dialog: m((i) => [
1926
- l("div", ja, [
1927
- p(Q, D(u(i), { onChange: n }), null, 16)
2005
+ dialog: g((i) => [
2006
+ l("div", Ps, [
2007
+ p(J, H(f(i), { onChange: u }), null, 16)
1928
2008
  ])
1929
2009
  ]),
1930
2010
  _: 1
1931
2011
  }, 16));
1932
2012
  }
1933
- }), Oa = [
2013
+ }), Es = [
1934
2014
  "Dots",
1935
2015
  "Air",
1936
2016
  "Bulb",
@@ -1969,130 +2049,152 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
1969
2049
  "Theme",
1970
2050
  "Info",
1971
2051
  "Plus"
1972
- ], Fa = ["Button", "Info", "Dimmer", "Date", "Input", "List"], Pa = Oa.map((e, t) => ({ id: ++t, name: `${e}`, value: e })), Ea = Fa.map((e, t) => ({ id: ++t, name: `${e}`, value: `${e.toLowerCase()}` })), Ra = { class: "flex-auto flex align-center md:px-4 overflow-y-auto no-scrollbar" }, Ua = { class: "flex items-center justify-between px-4 py-2 rounded-md border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-900 sticky top-0 z-30" }, Ga = { class: "px-4 py-2 flex-auto scroll-none" }, Wa = ["innerHTML"], qa = {
2052
+ ], Rs = ["Button", "Info", "Dimmer", "Date", "Input", "List"], Us = Es.map((t, e) => ({ id: ++e, name: `${t}`, value: t })), Ws = Rs.map((t, e) => ({ id: ++e, name: `${t}`, value: `${t.toLowerCase()}` })), qs = { class: "flex w-full relative" }, Gs = { class: "flex gap-2 flex-wrap flex-auto px-2 py-1" }, Ks = ["disabled"], xe = /* @__PURE__ */ V({
2053
+ __name: "VTextWrapper",
2054
+ props: {
2055
+ active: { type: Boolean },
2056
+ label: { default: "label" },
2057
+ disabled: { type: Boolean, default: !1 },
2058
+ hideIcon: { type: Boolean, default: !1 }
2059
+ },
2060
+ emits: ["icon"],
2061
+ setup(t, { emit: e }) {
2062
+ const o = e, r = M(() => t.active ? "top-0 left-3 text-xs" : "top-1/2"), a = M(() => [t.disabled ? "border-gray-400 opacity-40" : "border-gray-300 hover:border-gray-400 dark:border-gray-700/50 hover:dark:border-gray-600/50"]);
2063
+ return (u, d) => (s(), v("div", qs, [
2064
+ l("div", {
2065
+ class: z(["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", a.value])
2066
+ }, [
2067
+ l("span", {
2068
+ class: z(["absolute left-4 transition-all rounded -translate-y-1/2 text-gray-600 dark:text-gray-400", r.value])
2069
+ }, _(u.label), 3),
2070
+ l("div", Gs, [
2071
+ C(u.$slots, "default")
2072
+ ]),
2073
+ u.hideIcon ? I("", !0) : (s(), v("button", {
2074
+ key: 0,
2075
+ disabled: u.disabled,
2076
+ class: z([{ "cursor-pointer": !u.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]"]),
2077
+ onClick: d[0] || (d[0] = (f) => o("icon", f))
2078
+ }, [
2079
+ C(u.$slots, "icon", {}, () => [
2080
+ p(B, {
2081
+ name: "Plus",
2082
+ class: "size-4"
2083
+ })
2084
+ ])
2085
+ ], 10, Ks))
2086
+ ], 2)
2087
+ ]));
2088
+ }
2089
+ }), Zs = ["onClick"], Js = {
1973
2090
  key: 0,
1974
- class: "px-4 py-2 flex justify-end"
1975
- }, Te = /* @__PURE__ */ B({
1976
- __name: "AppDialog",
2091
+ class: "me-1"
2092
+ }, Qs = { class: "flex items-center z-10" }, Xs = ["onClick"], Ys = {
2093
+ key: 0,
2094
+ class: "flex ps-5"
2095
+ }, eo = { class: "font-medium me-4" }, to = ["onClick"], ke = /* @__PURE__ */ V({
2096
+ __name: "VListObject",
1977
2097
  props: {
1978
- value: { type: Boolean },
1979
- title: {},
1980
- message: { default: "" },
1981
- callback: { type: Function },
1982
- button: { default: "OK" },
1983
- size: { default: "sm" }
2098
+ items: { default: () => ({}) },
2099
+ path: { default: "" },
2100
+ onlyValue: { type: Boolean, default: !1 }
1984
2101
  },
1985
- emits: ["close", "open"],
1986
- setup(e, { emit: t }) {
1987
- const d = t, r = L(!1), s = { sm: "max-w-[330px]", md: "max-w-[600px]", lg: "max-w-[960px]" }, n = M(() => s[e.size]), v = (a) => {
1988
- r.value = !1, setTimeout(() => {
1989
- d("close", a);
1990
- }, 300);
1991
- }, u = (a) => {
1992
- e.callback && e.callback(), v(a);
1993
- }, f = () => d("open", r.value);
1994
- return ce(() => {
1995
- setTimeout(() => {
1996
- r.value = !0;
1997
- }, 300);
1998
- }), (a, i) => (o(), A(qe, { to: "body" }, [
1999
- p(Y, {
2000
- "enter-active-class": "duration-300 ease-out",
2001
- "enter-from-class": "transform opacity-0 -translate-y-2",
2002
- "enter-to-class": "opacity-100 translate-y-0",
2003
- "leave-active-class": "duration-200 ease-in",
2004
- "leave-from-class": "opacity-100 translate-y-0",
2005
- "leave-to-class": "transform opacity-0 -translate-y-2",
2006
- onAfterEnter: f
2007
- }, {
2008
- default: m(() => [
2009
- r.value ? (o(), c("div", {
2010
- key: 0,
2011
- class: "z-20 fixed top-0 h-[100dvh] w-full left-0 flex flex-col",
2012
- onWheel: i[0] || (i[0] = F(() => {
2013
- }, ["stop"]))
2014
- }, [
2015
- l("div", {
2016
- class: "absolute h-full w-full top-0 left-0 bg-black/40 bg-blur",
2017
- onClick: v
2018
- }),
2019
- l("div", Ra, [
2020
- l("div", {
2021
- class: V(["m-auto w-full bg-gray-50 dark:bg-gray-900 shadow-lg flex flex-col rounded-sm z-30", n.value])
2102
+ emits: ["click"],
2103
+ setup(t, { emit: e }) {
2104
+ const o = e, r = () => "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", a = L({}), u = (n) => {
2105
+ a.value[n] = !a.value[n];
2106
+ }, d = (n) => typeof n == "object", f = (n) => `${t.path ? t.path + "." : ""}${n}`, c = (n, i) => {
2107
+ o("click", { key: n, path: f(n), isObject: i });
2108
+ };
2109
+ return (n, i) => (s(), v("ul", null, [
2110
+ (s(!0), v(D, null, N(n.items, (h, y) => (s(), v("li", {
2111
+ key: y,
2112
+ class: z(d(h) ? "" : `flex items-center ${r()}`)
2113
+ }, [
2114
+ l("div", {
2115
+ class: z(["flex items-center cursor-pointer ps-2 h-8", d(h) ? `${r()}` : ""]),
2116
+ onClick: ($) => u(y)
2117
+ }, [
2118
+ d(h) ? (s(), v("div", Js, [
2119
+ p(B, {
2120
+ name: "Folder",
2121
+ class: "size-5"
2122
+ })
2123
+ ])) : I("", !0),
2124
+ l("div", null, _(y), 1),
2125
+ !n.onlyValue && d(h) ? (s(), v(D, { key: 1 }, [
2126
+ i[1] || (i[1] = l("div", { class: "flex-auto" }, null, -1)),
2127
+ l("div", Qs, [
2128
+ l("button", {
2129
+ class: "px-2 cursor-pointer text-gray-400 hover:text-gray-200",
2130
+ onClick: P(($) => c(y, d(h)), ["stop"])
2022
2131
  }, [
2023
- l("div", Ua, [
2024
- C(a.$slots, "header", {}, () => [
2025
- l("h4", null, _(a.title), 1)
2026
- ]),
2027
- p(j, {
2028
- type: "icon",
2029
- onClick: v
2030
- }, {
2031
- default: m(() => [
2032
- p(z(G))
2033
- ]),
2034
- _: 1
2035
- })
2036
- ]),
2037
- l("div", Ga, [
2038
- C(a.$slots, "default", {}, () => [
2039
- l("div", { innerHTML: a.message }, null, 8, Wa)
2040
- ])
2041
- ]),
2042
- a.$slots.footer || a.callback ? (o(), c("div", qa, [
2043
- C(a.$slots, "footer", {}, () => [
2044
- p(j, {
2045
- color: "blue",
2046
- size: "small",
2047
- onClick: u
2048
- }, {
2049
- default: m(() => [
2050
- T(_(a.button), 1)
2051
- ]),
2052
- _: 1
2053
- })
2054
- ])
2055
- ])) : I("", !0)
2056
- ], 2)
2132
+ p(B, {
2133
+ name: "Save",
2134
+ class: "size-5"
2135
+ })
2136
+ ], 8, Xs)
2057
2137
  ])
2058
- ], 32)) : I("", !0)
2059
- ]),
2060
- _: 3
2061
- })
2138
+ ], 64)) : I("", !0)
2139
+ ], 10, Zs),
2140
+ d(h) ? (s(), v("div", Ys, [
2141
+ re(p(ke, {
2142
+ class: "flex-auto",
2143
+ path: f(y),
2144
+ items: h,
2145
+ onlyValue: n.onlyValue,
2146
+ onClick: i[0] || (i[0] = ($) => o("click", $))
2147
+ }, null, 8, ["path", "items", "onlyValue"]), [
2148
+ [Te, a.value[y]]
2149
+ ])
2150
+ ])) : (s(), v(D, { key: 1 }, [
2151
+ i[2] || (i[2] = l("div", { class: "flex-auto" }, null, -1)),
2152
+ l("div", eo, _(h), 1),
2153
+ l("button", {
2154
+ class: "px-2 cursor-pointer z-10",
2155
+ onClick: P(($) => c(y, d(h)), ["stop"])
2156
+ }, [
2157
+ p(B, {
2158
+ name: "Save",
2159
+ class: "size-5"
2160
+ })
2161
+ ], 8, to)
2162
+ ], 64))
2163
+ ], 2))), 128))
2062
2164
  ]));
2063
2165
  }
2064
- }), Ka = { class: "" }, Za = { class: "flex border-b border-gray-200 dark:border-gray-700" }, Ja = ["onClick"], Qa = { class: "relative my-4" }, Xa = { key: 0 }, Ya = /* @__PURE__ */ B({
2166
+ }), lo = { class: "" }, ao = { class: "flex border-b border-gray-200 dark:border-gray-700" }, so = ["onClick"], oo = { class: "relative my-4" }, no = { key: 0 }, ro = /* @__PURE__ */ V({
2065
2167
  __name: "VTabs",
2066
2168
  props: {
2067
2169
  value: {},
2068
2170
  items: {}
2069
2171
  },
2070
2172
  emits: ["click"],
2071
- setup(e, { expose: t, emit: d }) {
2072
- const r = d, s = L(e.value || 0), n = (u) => [s.value === u ? "" : "before:hidden"], v = (u) => {
2073
- s.value = u, r("click", u);
2173
+ setup(t, { expose: e, emit: o }) {
2174
+ const r = o, a = L(t.value || 0), u = (f) => [a.value === f ? "" : "before:hidden"], d = (f) => {
2175
+ a.value = f, r("click", f);
2074
2176
  };
2075
- return t({
2076
- setActiveTab: v,
2077
- activeTab: s
2078
- }), (u, f) => (o(), c("div", Ka, [
2079
- l("div", Za, [
2080
- (o(!0), c(H, null, N(u.items, (a, i) => (o(), c("div", {
2177
+ return e({
2178
+ setActiveTab: d,
2179
+ activeTab: a
2180
+ }), (f, c) => (s(), v("div", lo, [
2181
+ l("div", ao, [
2182
+ (s(!0), v(D, null, N(f.items, (n, i) => (s(), v("div", {
2081
2183
  key: i,
2082
2184
  class: "relative"
2083
2185
  }, [
2084
2186
  l("button", {
2085
- class: V(["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 px-4 py-2", n(i)]),
2086
- onClick: (h) => v(i)
2087
- }, _(a.title), 11, Ja)
2187
+ class: z(["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 px-4 py-2", u(i)]),
2188
+ onClick: (h) => d(i)
2189
+ }, _(n.title), 11, so)
2088
2190
  ]))), 128))
2089
2191
  ]),
2090
- l("div", Qa, [
2091
- (o(!0), c(H, null, N(u.items, (a, i) => (o(), c("div", {
2192
+ l("div", oo, [
2193
+ (s(!0), v(D, null, N(f.items, (n, i) => (s(), v("div", {
2092
2194
  key: i,
2093
2195
  class: "tab-panel"
2094
2196
  }, [
2095
- p(Y, {
2197
+ p(X, {
2096
2198
  "enter-active-class": "transition-all duration-300 ease-out",
2097
2199
  "enter-from-class": "transform opacity-0 translate-x-2",
2098
2200
  "enter-to-class": "transform opacity-100 translate-x-0",
@@ -2100,9 +2202,9 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
2100
2202
  "leave-from-class": "transform opacity-100 translate-x-0",
2101
2203
  "leave-to-class": "transform opacity-0 -translate-x-2"
2102
2204
  }, {
2103
- default: m(() => [
2104
- s.value === i ? (o(), c("div", Xa, [
2105
- C(u.$slots, `tab-${i}`)
2205
+ default: g(() => [
2206
+ a.value === i ? (s(), v("div", no, [
2207
+ C(f.$slots, `tab-${i}`)
2106
2208
  ])) : I("", !0)
2107
2209
  ]),
2108
2210
  _: 2
@@ -2111,13 +2213,136 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
2111
2213
  ])
2112
2214
  ]));
2113
2215
  }
2114
- }), eo = { class: "flex flex-col" }, to = { class: "flex gap-4 mb-6" }, lo = {
2216
+ }), io = { class: "flex gap-1 text-amber-500 self-start text-nowrap select-none" }, co = ["title", "onMouseenter", "onMouseleave"], uo = { class: "flex flex-auto" }, vo = ["disabled"], ae = /* @__PURE__ */ V({
2217
+ __name: "VFunc",
2218
+ props: {
2219
+ label: {},
2220
+ args: {},
2221
+ value: {},
2222
+ disabled: { type: Boolean, default: !1 },
2223
+ hideIcon: { type: Boolean, default: !1 }
2224
+ },
2225
+ emits: ["change", "icon", "hover"],
2226
+ setup(t, { emit: e }) {
2227
+ const { textarea: o, input: r } = Pa(), a = e, u = ["v", "a", "b", "c"];
2228
+ r.value = t.value || "";
2229
+ const d = (n) => {
2230
+ try {
2231
+ return new Function(n), !0;
2232
+ } catch (i) {
2233
+ return console.warn(i), !1;
2234
+ }
2235
+ }, f = /* @__PURE__ */ ie((n) => {
2236
+ const i = n.target;
2237
+ d(i.value) && a("change", i.value);
2238
+ }, 500), c = (n) => a("icon", n);
2239
+ return W(
2240
+ () => t.value,
2241
+ () => {
2242
+ t.value && (r.value = t.value);
2243
+ }
2244
+ ), (n, i) => (s(), A(xe, {
2245
+ active: !!n.value,
2246
+ disabled: n.disabled,
2247
+ label: n.label,
2248
+ hideIcon: n.hideIcon,
2249
+ onIcon: c
2250
+ }, {
2251
+ icon: g(() => [
2252
+ n.value ? (s(), A(B, {
2253
+ key: 0,
2254
+ name: "Close",
2255
+ class: "size-4"
2256
+ })) : (s(), A(B, {
2257
+ key: 1,
2258
+ name: "Plus",
2259
+ class: "size-4"
2260
+ }))
2261
+ ]),
2262
+ default: g(() => [
2263
+ n.value ? (s(), v(D, { key: 0 }, [
2264
+ l("div", io, [
2265
+ i[3] || (i[3] = T(" ( ")),
2266
+ (s(!0), v(D, null, N(n.args, (h, y) => (s(), v(D, { key: h }, [
2267
+ l("span", {
2268
+ class: "text-blue-400/80",
2269
+ title: h,
2270
+ onMouseenter: ($) => a("hover", "enter", y),
2271
+ onMouseleave: ($) => a("hover", "leave", y)
2272
+ }, _(u[y]), 41, co),
2273
+ i[2] || (i[2] = l("span", { class: "last:hidden" }, ",", -1))
2274
+ ], 64))), 128)),
2275
+ i[4] || (i[4] = T(" ) => "))
2276
+ ]),
2277
+ l("div", uo, [
2278
+ re(l("textarea", {
2279
+ ref_key: "textarea",
2280
+ ref: o,
2281
+ "onUpdate:modelValue": i[0] || (i[0] = (h) => De(r) ? r.value = h : null),
2282
+ class: "outline-0 w-full resize-none",
2283
+ type: "text",
2284
+ disabled: n.disabled,
2285
+ onInput: i[1] || (i[1] = //@ts-ignore
2286
+ (...h) => F(f) && F(f)(...h))
2287
+ }, null, 40, vo), [
2288
+ [He, F(r)]
2289
+ ])
2290
+ ])
2291
+ ], 64)) : I("", !0)
2292
+ ]),
2293
+ _: 1
2294
+ }, 8, ["active", "disabled", "label", "hideIcon"]));
2295
+ }
2296
+ }), fo = ["checked", "disabled"], ho = { class: "text-sm ms-2 peer-disabled:opacity-40" }, po = /* @__PURE__ */ V({
2297
+ __name: "VCheckbox",
2298
+ props: {
2299
+ modelValue: { type: [Number, Boolean], default: !1 },
2300
+ disabled: { type: Boolean, default: !1 }
2301
+ },
2302
+ emits: ["update:modelValue", "click"],
2303
+ setup(t, { emit: e }) {
2304
+ const o = e, r = (u) => {
2305
+ const d = u.target;
2306
+ o("update:modelValue", d.checked);
2307
+ }, a = (u) => o("click", u);
2308
+ return (u, d) => (s(), v("label", {
2309
+ class: z(["inline-flex items-center relative", { "cursor-pointer": !u.disabled }]),
2310
+ onClick: a
2311
+ }, [
2312
+ l("input", {
2313
+ type: "checkbox",
2314
+ checked: !!u.modelValue,
2315
+ disabled: u.disabled,
2316
+ class: "peer size-5 transition-all appearance-none rounded border border-gray-300 dark:border-gray-700 disabled:opacity-40 not-disabled:cursor-pointer",
2317
+ onChange: r
2318
+ }, null, 40, fo),
2319
+ d[0] || (d[0] = l("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" }, [
2320
+ l("svg", {
2321
+ class: "h-3.5 w-3.5",
2322
+ viewBox: "0 0 20 20",
2323
+ fill: "currentColor",
2324
+ stroke: "currentColor",
2325
+ "stroke-width": "1"
2326
+ }, [
2327
+ l("path", {
2328
+ "fill-rule": "evenodd",
2329
+ d: "M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z",
2330
+ "clip-rule": "evenodd"
2331
+ })
2332
+ ])
2333
+ ], -1)),
2334
+ l("span", ho, [
2335
+ C(u.$slots, "default")
2336
+ ])
2337
+ ], 2));
2338
+ }
2339
+ }), mo = { class: "flex flex-col" }, go = { class: "flex gap-4 mb-6" }, bo = {
2115
2340
  key: 0,
2116
2341
  class: "flex gap-4"
2117
- }, so = {
2342
+ }, yo = {
2118
2343
  key: 1,
2119
2344
  class: ""
2120
- }, ao = { class: "flex flex-col md:flex-row gap-4" }, oo = { class: "flex gap-4" }, no = { class: "flex justify-between flex-auto" }, ro = ["onClick"], io = /* @__PURE__ */ B({
2345
+ }, xo = { class: "flex flex-col md:flex-row gap-4" }, ko = { class: "flex gap-4" }, _o = { class: "flex justify-between flex-auto" }, $o = ["onClick"], wo = /* @__PURE__ */ V({
2121
2346
  __name: "ItemOptions",
2122
2347
  props: {
2123
2348
  min: { default: 0 },
@@ -2129,92 +2354,92 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
2129
2354
  type: {}
2130
2355
  },
2131
2356
  emits: ["update"],
2132
- setup(e, { emit: t }) {
2133
- const d = t, r = M(() => e.list.map((y, w) => ({ ...y, id: ++w }))), s = L({ name: "", value: "" }), n = M(() => e.list.length + 1), v = M(() => {
2134
- var y;
2135
- return !((y = s.value) != null && y.id);
2136
- }), u = (y) => e.type === y, f = (y, w) => d("update", y, w), a = (y) => y.map(({ name: w, value: g }) => ({ name: w, value: g })), i = ({ id: y, name: w, value: g }) => s.value = { id: y, name: w, value: g }, h = () => {
2137
- const y = n.value;
2138
- s.value = { name: `New_${y}`, value: y, id: y }, f("list", a([s.value, ...r.value]));
2139
- }, b = (y) => {
2140
- s.value.name === y.name && (s.value = { name: "", value: "" }), f("list", a(r.value.filter((w) => w.value !== y.value)));
2141
- }, $ = ve(() => {
2142
- const y = s.value;
2143
- if (!y.name || !y.value) return;
2144
- const w = r.value.map((g) => g.id === y.id ? y : g);
2145
- f("list", a(w));
2357
+ setup(t, { emit: e }) {
2358
+ const o = e, r = M(() => t.list.map((b, w) => ({ ...b, id: ++w }))), a = L({ name: "", value: "" }), u = M(() => t.list.length + 1), d = M(() => {
2359
+ var b;
2360
+ return !((b = a.value) != null && b.id);
2361
+ }), f = (b) => t.type === b, c = (b, w) => o("update", b, w), n = (b) => b.map(({ name: w, value: m }) => ({ name: w, value: m })), i = ({ id: b, name: w, value: m }) => a.value = { id: b, name: w, value: m }, h = () => {
2362
+ const b = u.value;
2363
+ a.value = { name: `New_${b}`, value: b, id: b }, c("list", n([a.value, ...r.value]));
2364
+ }, y = (b) => {
2365
+ a.value.name === b.name && (a.value = { name: "", value: "" }), c("list", n(r.value.filter((w) => w.value !== b.value)));
2366
+ }, $ = /* @__PURE__ */ ie(() => {
2367
+ const b = a.value;
2368
+ if (!b.name || !b.value) return;
2369
+ const w = r.value.map((m) => m.id === b.id ? b : m);
2370
+ c("list", n(w));
2146
2371
  }, 300);
2147
- return (y, w) => (o(), c("div", eo, [
2148
- l("div", to, [
2149
- p(ht, {
2150
- modelValue: y.disabled,
2151
- "onUpdate:modelValue": w[0] || (w[0] = (g) => f("disabled", g ? 1 : 0))
2372
+ return (b, w) => (s(), v("div", mo, [
2373
+ l("div", go, [
2374
+ p(po, {
2375
+ modelValue: b.disabled,
2376
+ "onUpdate:modelValue": w[0] || (w[0] = (m) => c("disabled", m ? 1 : 0))
2152
2377
  }, {
2153
- default: m(() => w[6] || (w[6] = [
2378
+ default: g(() => w[6] || (w[6] = [
2154
2379
  T("Disabled")
2155
2380
  ])),
2156
2381
  _: 1
2157
2382
  }, 8, ["modelValue"])
2158
2383
  ]),
2159
- u("dimmer") ? (o(), c("div", lo, [
2384
+ f("dimmer") ? (s(), v("div", bo, [
2160
2385
  p(O, {
2161
- modelValue: y.min,
2386
+ modelValue: b.min,
2162
2387
  label: "Min",
2163
- "onUpdate:modelValue": w[1] || (w[1] = (g) => f("min", +g))
2388
+ "onUpdate:modelValue": w[1] || (w[1] = (m) => c("min", +m))
2164
2389
  }, null, 8, ["modelValue"]),
2165
2390
  p(O, {
2166
- modelValue: y.max,
2391
+ modelValue: b.max,
2167
2392
  label: "Max",
2168
- "onUpdate:modelValue": w[2] || (w[2] = (g) => f("max", +g))
2393
+ "onUpdate:modelValue": w[2] || (w[2] = (m) => c("max", +m))
2169
2394
  }, null, 8, ["modelValue"]),
2170
2395
  p(O, {
2171
- modelValue: y.step,
2396
+ modelValue: b.step,
2172
2397
  label: "Step",
2173
- "onUpdate:modelValue": w[3] || (w[3] = (g) => f("step", +g))
2398
+ "onUpdate:modelValue": w[3] || (w[3] = (m) => c("step", +m))
2174
2399
  }, null, 8, ["modelValue"])
2175
2400
  ])) : I("", !0),
2176
- u("list") ? (o(), c("div", so, [
2177
- l("div", ao, [
2401
+ f("list") ? (s(), v("div", yo, [
2402
+ l("div", xo, [
2178
2403
  p(O, {
2179
- modelValue: s.value.name,
2404
+ modelValue: a.value.name,
2180
2405
  "onUpdate:modelValue": [
2181
- w[4] || (w[4] = (g) => s.value.name = g),
2182
- z($)
2406
+ w[4] || (w[4] = (m) => a.value.name = m),
2407
+ F($)
2183
2408
  ],
2184
- disabled: v.value,
2409
+ disabled: d.value,
2185
2410
  label: "Name"
2186
2411
  }, null, 8, ["modelValue", "disabled", "onUpdate:modelValue"]),
2187
2412
  p(O, {
2188
- modelValue: s.value.value,
2413
+ modelValue: a.value.value,
2189
2414
  "onUpdate:modelValue": [
2190
- w[5] || (w[5] = (g) => s.value.value = g),
2191
- z($)
2415
+ w[5] || (w[5] = (m) => a.value.value = m),
2416
+ F($)
2192
2417
  ],
2193
- disabled: v.value,
2418
+ disabled: d.value,
2194
2419
  label: "Value"
2195
2420
  }, {
2196
- default: m(() => w[7] || (w[7] = [
2421
+ default: g(() => w[7] || (w[7] = [
2197
2422
  T(">")
2198
2423
  ])),
2199
2424
  _: 1
2200
2425
  }, 8, ["modelValue", "disabled", "onUpdate:modelValue"])
2201
2426
  ]),
2202
- l("div", oo, [
2203
- p(Q, {
2204
- value: s.value.value,
2427
+ l("div", ko, [
2428
+ p(J, {
2429
+ value: a.value.value,
2205
2430
  label: "List",
2206
2431
  list: r.value,
2207
2432
  onChange: i
2208
2433
  }, {
2209
- default: m(({ item: g }) => [
2210
- l("div", no, [
2211
- l("span", null, _(g.name), 1),
2434
+ default: g(({ item: m }) => [
2435
+ l("div", _o, [
2436
+ l("span", null, _(m.name), 1),
2212
2437
  l("button", {
2213
2438
  class: "cursor-pointer size-4",
2214
- onClick: F((P) => b(g), ["prevent", "stop"])
2439
+ onClick: P((E) => y(m), ["prevent", "stop"])
2215
2440
  }, [
2216
- p(z(G))
2217
- ], 8, ro)
2441
+ p(B, { name: "Close" })
2442
+ ], 8, $o)
2218
2443
  ])
2219
2444
  ]),
2220
2445
  _: 1
@@ -2224,8 +2449,8 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
2224
2449
  color: "blue",
2225
2450
  onClick: h
2226
2451
  }, {
2227
- default: m(() => [
2228
- p(z(se))
2452
+ default: g(() => [
2453
+ p(B, { name: "Plus" })
2229
2454
  ]),
2230
2455
  _: 1
2231
2456
  })
@@ -2233,15 +2458,15 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
2233
2458
  ])) : I("", !0)
2234
2459
  ]));
2235
2460
  }
2236
- }), co = { class: "flex flex-col" }, uo = { class: "flex flex-col md:flex-row gap-6 min-h-[300px]" }, vo = { class: "flex-auto order-1" }, fo = { class: "flex-auto gap-x-2 order-1" }, ho = { class: "grid grid-cols-1 md:grid-cols-2 gap-x-4" }, po = { class: "flex gap-2 items-center" }, go = { class: "flex flex-col gap-4" }, mo = { class: "flex gap-2 flex-wrap flex-auto px-2 py-1" }, bo = { class: "relative group" }, yo = { class: "select-none" }, xo = ["onClick"], ko = { class: "flex justify-center order-0 md:order-1 md:mt-11" }, _o = { class: "flex-[0_0_130px] size-[130px]" }, $o = { class: "flex gap-4 justify-end" }, wo = { class: "relative min-h-[200px] max-h-100dvh overflow-auto scrollbar" }, Co = /* @__PURE__ */ B({
2461
+ }), Co = { class: "flex flex-col" }, zo = { class: "flex flex-col md:flex-row gap-6 min-h-[300px]" }, Vo = { class: "flex-auto order-1" }, Bo = { class: "flex-auto gap-x-2 order-1" }, Mo = { class: "grid grid-cols-1 md:grid-cols-2 gap-x-4" }, Io = { class: "flex gap-2 items-center" }, Ao = { class: "flex flex-col gap-4" }, So = { class: "flex gap-2 flex-wrap flex-auto px-2 py-1" }, To = { class: "relative group" }, Do = { class: "select-none" }, Ho = ["onClick"], Lo = { class: "flex justify-center order-0 md:order-1 md:mt-11" }, jo = { class: "flex-[0_0_130px] size-[130px]" }, No = { class: "flex gap-4 justify-end" }, Oo = { class: "relative min-h-[200px] max-h-100dvh overflow-auto scrollbar" }, Po = /* @__PURE__ */ V({
2237
2462
  __name: "ItemEdit",
2238
2463
  props: {
2239
2464
  item: {},
2240
2465
  object: {}
2241
2466
  },
2242
2467
  emits: ["button"],
2243
- setup(e, { emit: t }) {
2244
- const d = t, r = [{ title: "Main" }, { title: "Data" }, { title: "Options" }], s = L({
2468
+ setup(t, { emit: e }) {
2469
+ const o = e, r = [{ title: "Main" }, { title: "Data" }, { title: "Options" }], a = L({
2245
2470
  id: "",
2246
2471
  name: "",
2247
2472
  type: "button",
@@ -2251,68 +2476,68 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
2251
2476
  set: "",
2252
2477
  get: "",
2253
2478
  getTo: ""
2254
- }), n = L(!1), v = M(() => {
2479
+ }), u = L(!1), d = M(() => {
2255
2480
  var x;
2256
- return !((x = e.item) != null && x.id);
2257
- }), u = M(() => s.value.type === "info"), f = M(() => {
2481
+ return !((x = t.item) != null && x.id);
2482
+ }), f = M(() => a.value.type === "info"), c = M(() => {
2258
2483
  var x;
2259
- return (x = s.value.args) == null ? void 0 : x.length;
2260
- }), a = M(() => s.value.args.length > 3), i = M(() => {
2261
- const { id: x, args: k } = s.value;
2484
+ return (x = a.value.args) == null ? void 0 : x.length;
2485
+ }), n = M(() => a.value.args.length > 3), i = M(() => {
2486
+ const { id: x, args: k } = a.value;
2262
2487
  return !x || !k.length;
2263
- }), h = ({ value: x }) => s.value.icon = x, b = ({ value: x }) => {
2488
+ }), h = ({ value: x }) => a.value.icon = x, y = ({ value: x }) => {
2264
2489
  const k = x;
2265
- s.value.type = k, delete s.value.opts, ["button", "list", "dimmer"].includes(k) && (x === "button" && (s.value.opts = {}), x === "list" && (s.value.opts = { list: [] }), x === "dimmer" && (s.value.opts = { min: 0, max: 255, step: 1 }));
2490
+ a.value.type = k, delete a.value.opts, ["button", "list", "dimmer"].includes(k) && (x === "button" && (a.value.opts = {}), x === "list" && (a.value.opts = { list: [] }), x === "dimmer" && (a.value.opts = { min: 0, max: 255, step: 1 }));
2266
2491
  }, $ = (x) => {
2267
- x === "get" && (s.value.get ? delete s.value.get : s.value.get = "v"), x === "set" && (s.value.set ? delete s.value.set : s.value.set = "v"), x === "getTo" && (s.value.getTo ? delete s.value.getTo : s.value.getTo = "v");
2268
- }, y = (x) => d("button", x, s.value), w = (x) => s.value.args = s.value.args.filter((k) => k !== x), g = ({ path: x }) => {
2269
- s.value.args.length || (s.value.id = x), s.value.args.push(x), n.value = !1;
2270
- }, P = L(-1), X = (x) => P.value === x, ae = (x, k) => {
2271
- x === "enter" && (P.value = k), x === "leave" && (P.value = -1);
2272
- }, oe = (x, k) => {
2273
- x === "set" && (s.value.set = k), x === "get" && (s.value.get = k), x === "getTo" && (s.value.getTo = k), k || delete s.value[x];
2274
- }, He = () => {
2492
+ x === "get" && (a.value.get ? delete a.value.get : a.value.get = "v"), x === "set" && (a.value.set ? delete a.value.set : a.value.set = "v"), x === "getTo" && (a.value.getTo ? delete a.value.getTo : a.value.getTo = "v");
2493
+ }, b = (x) => o("button", x, a.value), w = (x) => a.value.args = a.value.args.filter((k) => k !== x), m = ({ path: x }) => {
2494
+ a.value.args.length || (a.value.id = x), a.value.args.push(x), u.value = !1;
2495
+ }, E = L(-1), Q = (x) => E.value === x, te = (x, k) => {
2496
+ x === "enter" && (E.value = k), x === "leave" && (E.value = -1);
2497
+ }, le = (x, k) => {
2498
+ x === "set" && (a.value.set = k), x === "get" && (a.value.get = k), x === "getTo" && (a.value.getTo = k), k || delete a.value[x];
2499
+ }, _e = () => {
2275
2500
  var x;
2276
- !s.value.args.length && !((x = e.item) != null && x.id) && (n.value = !0);
2277
- }, De = (x, k) => {
2278
- s.value.opts || (s.value.opts = {}), s.value.opts[x] = k, x === "disabled" && !k && delete s.value.opts[x];
2501
+ !a.value.args.length && !((x = t.item) != null && x.id) && (u.value = !0);
2502
+ }, $e = (x, k) => {
2503
+ a.value.opts || (a.value.opts = {}), a.value.opts[x] = k, x === "disabled" && !k && delete a.value.opts[x];
2279
2504
  };
2280
- return ce(() => {
2505
+ return ne(() => {
2281
2506
  var x;
2282
- (x = e.item) != null && x.id && (s.value = Qe(e.item));
2283
- }), (x, k) => (o(), c("div", co, [
2284
- l("div", uo, [
2285
- l("div", vo, [
2286
- p(Ya, {
2507
+ (x = t.item) != null && x.id && (a.value = Pe(t.item));
2508
+ }), (x, k) => (s(), v("div", Co, [
2509
+ l("div", zo, [
2510
+ l("div", Vo, [
2511
+ p(ro, {
2287
2512
  class: "flex-auto",
2288
2513
  value: 0,
2289
2514
  items: r
2290
2515
  }, {
2291
- "tab-0": m(() => [
2292
- l("div", fo, [
2516
+ "tab-0": g(() => [
2517
+ l("div", Bo, [
2293
2518
  p(O, {
2294
- modelValue: s.value.id,
2295
- "onUpdate:modelValue": k[0] || (k[0] = (S) => s.value.id = S),
2519
+ modelValue: a.value.id,
2520
+ "onUpdate:modelValue": k[0] || (k[0] = (S) => a.value.id = S),
2296
2521
  label: "ID",
2297
- disabled: !v.value,
2298
- onClick: He
2522
+ disabled: !d.value,
2523
+ onClick: _e
2299
2524
  }, null, 8, ["modelValue", "disabled"]),
2300
2525
  p(O, {
2301
- modelValue: s.value.name,
2302
- "onUpdate:modelValue": k[1] || (k[1] = (S) => s.value.name = S),
2526
+ modelValue: a.value.name,
2527
+ "onUpdate:modelValue": k[1] || (k[1] = (S) => a.value.name = S),
2303
2528
  label: "Name"
2304
2529
  }, null, 8, ["modelValue"]),
2305
- l("div", ho, [
2306
- p(Q, {
2307
- value: s.value.icon,
2530
+ l("div", Mo, [
2531
+ p(J, {
2532
+ value: a.value.icon,
2308
2533
  label: "Icon",
2309
2534
  class: "mb-6",
2310
- list: z(Pa),
2535
+ list: F(Us),
2311
2536
  onChange: h
2312
2537
  }, {
2313
- default: m(({ item: S }) => [
2314
- l("div", po, [
2315
- p(Z, {
2538
+ default: g(({ item: S }) => [
2539
+ l("div", Io, [
2540
+ p(B, {
2316
2541
  name: `${S.value}`,
2317
2542
  class: "size-5"
2318
2543
  }, null, 8, ["name"]),
@@ -2321,102 +2546,105 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
2321
2546
  ]),
2322
2547
  _: 1
2323
2548
  }, 8, ["value", "list"]),
2324
- p(Q, {
2325
- value: s.value.type,
2549
+ p(J, {
2550
+ value: a.value.type,
2326
2551
  label: "Type",
2327
- list: z(Ea),
2328
- onChange: b
2552
+ list: F(Ws),
2553
+ onChange: y
2329
2554
  }, null, 8, ["value", "list"])
2330
2555
  ])
2331
2556
  ])
2332
2557
  ]),
2333
- "tab-1": m(() => [
2334
- l("div", go, [
2335
- p(Se, {
2336
- active: !!s.value.args.length,
2337
- disabled: a.value,
2558
+ "tab-1": g(() => [
2559
+ l("div", Ao, [
2560
+ p(xe, {
2561
+ active: !!a.value.args.length,
2562
+ disabled: n.value,
2338
2563
  label: "Arguments",
2339
- onIcon: k[2] || (k[2] = (S) => n.value = !0)
2564
+ onIcon: k[2] || (k[2] = (S) => u.value = !0)
2340
2565
  }, {
2341
- default: m(() => [
2342
- l("div", mo, [
2343
- (o(!0), c(H, null, N(s.value.args, (S, ge) => (o(), c("div", {
2566
+ default: g(() => [
2567
+ l("div", So, [
2568
+ (s(!0), v(D, null, N(a.value.args, (S, ce) => (s(), v("div", {
2344
2569
  key: S,
2345
2570
  class: "flex items-center rounded-full bg-gray-200 dark:bg-gray-900/50 px-2 py-[2px] text-xs"
2346
2571
  }, [
2347
- l("div", bo, [
2348
- l("span", yo, _(S), 1),
2572
+ l("div", To, [
2573
+ l("span", Do, _(S), 1),
2349
2574
  l("div", {
2350
- 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", X(ge) ? "visible opacity-100" : ""])
2575
+ class: z(["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", Q(ce) ? "visible opacity-100" : ""])
2351
2576
  }, [
2352
- l("pre", null, _(z(Ke)(S, x.object)), 1)
2577
+ l("pre", null, _(F(Le)(S, x.object)), 1)
2353
2578
  ], 2)
2354
2579
  ]),
2355
- ge ? (o(), c("button", {
2580
+ ce ? (s(), v("button", {
2356
2581
  key: 0,
2357
2582
  class: "cursor-pointer ms-1",
2358
- onClick: (o1) => w(S)
2583
+ onClick: (rn) => w(S)
2359
2584
  }, [
2360
- p(z(G), { class: "size-5" })
2361
- ], 8, xo)) : I("", !0)
2585
+ p(B, {
2586
+ name: "Close",
2587
+ class: "size-5"
2588
+ })
2589
+ ], 8, Ho)) : I("", !0)
2362
2590
  ]))), 128))
2363
2591
  ])
2364
2592
  ]),
2365
2593
  _: 1
2366
2594
  }, 8, ["active", "disabled"]),
2367
- p(ne, {
2368
- value: s.value.set,
2369
- args: s.value.args,
2370
- disabled: !f.value || u.value,
2595
+ p(ae, {
2596
+ value: a.value.set,
2597
+ args: a.value.args,
2598
+ disabled: !c.value || f.value,
2371
2599
  label: "Set",
2372
2600
  onIcon: k[3] || (k[3] = (S) => $("set")),
2373
- onHover: ae,
2374
- onChange: k[4] || (k[4] = (S) => oe("set", S))
2601
+ onHover: te,
2602
+ onChange: k[4] || (k[4] = (S) => le("set", S))
2375
2603
  }, null, 8, ["value", "args", "disabled"]),
2376
- p(ne, {
2377
- value: s.value.get,
2378
- args: s.value.args,
2379
- disabled: !f.value,
2604
+ p(ae, {
2605
+ value: a.value.get,
2606
+ args: a.value.args,
2607
+ disabled: !c.value,
2380
2608
  label: "Get",
2381
2609
  onIcon: k[5] || (k[5] = (S) => $("get")),
2382
- onHover: ae,
2383
- onChange: k[6] || (k[6] = (S) => oe("get", S))
2610
+ onHover: te,
2611
+ onChange: k[6] || (k[6] = (S) => le("get", S))
2384
2612
  }, null, 8, ["value", "args", "disabled"]),
2385
- p(ne, {
2386
- value: s.value.getTo,
2387
- args: s.value.args,
2388
- disabled: !f.value,
2613
+ p(ae, {
2614
+ value: a.value.getTo,
2615
+ args: a.value.args,
2616
+ disabled: !c.value,
2389
2617
  label: "GetTo",
2390
2618
  onIcon: k[7] || (k[7] = (S) => $("getTo")),
2391
- onHover: ae,
2392
- onChange: k[8] || (k[8] = (S) => oe("getTo", S))
2619
+ onHover: te,
2620
+ onChange: k[8] || (k[8] = (S) => le("getTo", S))
2393
2621
  }, null, 8, ["value", "args", "disabled"])
2394
2622
  ])
2395
2623
  ]),
2396
- "tab-2": m(() => [
2397
- p(io, D(s.value.opts, {
2398
- value: s.value.value,
2399
- type: s.value.type,
2400
- onUpdate: De
2624
+ "tab-2": g(() => [
2625
+ p(wo, H(a.value.opts, {
2626
+ value: a.value.value,
2627
+ type: a.value.type,
2628
+ onUpdate: $e
2401
2629
  }), null, 16, ["value", "type"])
2402
2630
  ]),
2403
2631
  _: 1
2404
2632
  })
2405
2633
  ]),
2406
- l("div", ko, [
2407
- l("div", _o, [
2408
- C(x.$slots, "default", { item: s.value })
2634
+ l("div", Lo, [
2635
+ l("div", jo, [
2636
+ C(x.$slots, "default", { item: a.value })
2409
2637
  ])
2410
2638
  ])
2411
2639
  ]),
2412
- l("div", $o, [
2640
+ l("div", No, [
2413
2641
  p(j, {
2414
2642
  class: "px-4",
2415
2643
  color: "red",
2416
2644
  outline: "",
2417
- onClick: k[9] || (k[9] = (S) => y("remove"))
2645
+ onClick: k[9] || (k[9] = (S) => b("remove"))
2418
2646
  }, {
2419
- default: m(() => k[13] || (k[13] = [
2647
+ default: g(() => k[13] || (k[13] = [
2420
2648
  T(_("Remove"))
2421
2649
  ])),
2422
2650
  _: 1
@@ -2425,9 +2653,9 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
2425
2653
  class: "px-4",
2426
2654
  color: "gray",
2427
2655
  outline: "",
2428
- onClick: k[10] || (k[10] = (S) => y("cancel"))
2656
+ onClick: k[10] || (k[10] = (S) => b("cancel"))
2429
2657
  }, {
2430
- default: m(() => k[14] || (k[14] = [
2658
+ default: g(() => k[14] || (k[14] = [
2431
2659
  T(_("Cancel"))
2432
2660
  ])),
2433
2661
  _: 1
@@ -2436,26 +2664,26 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
2436
2664
  class: "px-4",
2437
2665
  color: "blue",
2438
2666
  disabled: i.value,
2439
- onClick: k[11] || (k[11] = (S) => y(v.value ? "add" : "save"))
2667
+ onClick: k[11] || (k[11] = (S) => b(d.value ? "add" : "save"))
2440
2668
  }, {
2441
- default: m(() => [
2442
- T(_(v.value ? "Add" : "Save"), 1)
2669
+ default: g(() => [
2670
+ T(_(d.value ? "Add" : "Save"), 1)
2443
2671
  ]),
2444
2672
  _: 1
2445
2673
  }, 8, ["disabled"])
2446
2674
  ]),
2447
- n.value ? (o(), A(Te, {
2675
+ u.value ? (s(), A(ye, {
2448
2676
  key: 0,
2449
2677
  size: "md",
2450
2678
  title: "Select",
2451
- onClose: k[12] || (k[12] = (S) => n.value = !1)
2679
+ onClose: k[12] || (k[12] = (S) => u.value = !1)
2452
2680
  }, {
2453
- default: m(() => [
2454
- l("div", wo, [
2455
- p(Ae, {
2681
+ default: g(() => [
2682
+ l("div", Oo, [
2683
+ p(ke, {
2456
2684
  items: x.object,
2457
- onlyValue: !f.value,
2458
- onClick: g
2685
+ onlyValue: !c.value,
2686
+ onClick: m
2459
2687
  }, null, 8, ["items", "onlyValue"])
2460
2688
  ])
2461
2689
  ]),
@@ -2463,436 +2691,302 @@ const Is = { class: "flex w-full relative" }, As = { class: "flex gap-2 flex-wra
2463
2691
  })) : I("", !0)
2464
2692
  ]));
2465
2693
  }
2466
- }), zo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2694
+ }), Fo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2467
2695
  __proto__: null,
2468
- CardBase: W,
2469
- CardButton: Ca,
2470
- CardDate: Va,
2471
- CardDimmer: Ta,
2472
- CardInfo: Ha,
2473
- CardInput: La,
2474
- CardList: Na,
2475
- ItemEdit: Co
2476
- }, Symbol.toStringTag, { value: "Module" })), Vo = { class: "no-scrollbar flex flex-col overflow-y-auto duration-300 ease-linear h-full" }, Bo = /* @__PURE__ */ B({
2477
- __name: "AppAside",
2696
+ CardBase: q,
2697
+ CardButton: $s,
2698
+ CardDate: Ms,
2699
+ CardDimmer: Hs,
2700
+ CardInfo: Ls,
2701
+ CardInput: Ns,
2702
+ CardList: Fs,
2703
+ ItemEdit: Po
2704
+ }, Symbol.toStringTag, { value: "Module" })), hn = /* @__PURE__ */ V({
2705
+ __name: "VAutocomplete",
2478
2706
  props: {
2479
- isSidebar: { type: Boolean, default: !1 }
2707
+ modelValue: { default: "" },
2708
+ label: {},
2709
+ name: { default: "" },
2710
+ message: { default: "" },
2711
+ list: {}
2480
2712
  },
2481
- emits: ["sidebar"],
2482
- setup(e, { emit: t }) {
2483
- const d = t, r = () => {
2484
- e.isSidebar && d("sidebar", !e.isSidebar);
2485
- };
2486
- return (s, n) => {
2487
- const v = ee("router-link");
2488
- return o(), c(H, null, [
2489
- s.isSidebar ? (o(), c("div", {
2490
- key: 0,
2491
- class: "lg:hidden overlay fixed left-0 top-0 h-full w-full bg-black/40 z-10 bg-blur",
2492
- onClick: r
2493
- })) : I("", !0),
2494
- l("aside", {
2495
- class: V([s.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"])
2496
- }, [
2497
- l("div", {
2498
- class: V([s.isSidebar ? "justify-center" : "justify-between", "sidebar-header flex items-center gap-2 pt-6 pb-6 justify-between"])
2499
- }, [
2500
- p(v, { to: "/" }, {
2501
- default: m(() => [
2502
- s.isSidebar ? (o(), A(z(Be), {
2503
- key: 0,
2504
- class: "h-[30px] text-primary"
2505
- })) : (o(), A(z(fe), {
2506
- key: 1,
2507
- class: "h-[30px] text-primary"
2508
- }))
2509
- ]),
2510
- _: 1
2511
- })
2512
- ], 2),
2513
- l("div", Vo, [
2514
- C(s.$slots, "default")
2515
- ])
2516
- ], 2)
2517
- ], 64);
2713
+ emits: ["update:modelValue", "select"],
2714
+ setup(t, { emit: e }) {
2715
+ const o = e, r = (u) => o("update:modelValue", u), a = (u, d) => {
2716
+ u.click(new Event("click")), o("select", d);
2518
2717
  };
2718
+ return (u, d) => (s(), A(Y, H(u.$attrs, {
2719
+ top: "50px",
2720
+ "hide-on-click": ""
2721
+ }), {
2722
+ activator: g(({ on: f }) => [
2723
+ p(O, {
2724
+ "model-value": u.modelValue,
2725
+ name: u.name,
2726
+ message: u.message,
2727
+ label: u.label,
2728
+ "onUpdate:modelValue": r,
2729
+ onClick: f.open
2730
+ }, null, 8, ["model-value", "name", "message", "label", "onClick"])
2731
+ ]),
2732
+ default: g(({ on: f }) => [
2733
+ p(ee, {
2734
+ list: u.list,
2735
+ onClick: (c) => a(f, c)
2736
+ }, {
2737
+ default: g(({ item: c }) => [
2738
+ C(u.$slots, "default", { item: c }, () => [
2739
+ T(_(c.name), 1)
2740
+ ])
2741
+ ]),
2742
+ _: 2
2743
+ }, 1032, ["list", "onClick"])
2744
+ ]),
2745
+ _: 3
2746
+ }, 16));
2519
2747
  }
2520
- }), Mo = { 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" }, Io = { class: "px-4 py-4 sm:px-6 lg:px-8" }, Ao = { class: "container mx-auto flex flex-auto items-center" }, So = { class: "lg:hidden h-[30px]" }, To = { class: "gap-4 hidden lg:flex" }, Ho = { class: "lg:hidden flex gap-4" }, Do = { class: "ms-2" }, Lo = /* @__PURE__ */ B({
2521
- __name: "AppHeader",
2748
+ }), Eo = { class: "v-expansion__content max-h-0 overflow-hidden transition-all duration-300" }, Ro = { class: "p-4" }, pn = /* @__PURE__ */ V({
2749
+ __name: "VExpansion",
2522
2750
  props: {
2523
- changeTheme: { type: Function },
2524
- notifications: {}
2751
+ label: { default: "" },
2752
+ value: { type: Boolean, default: !1 }
2525
2753
  },
2526
- emits: ["sidebar", "notif"],
2527
- setup(e, { emit: t }) {
2528
- const d = t, r = [
2529
- { name: "Theme", value: 1 },
2530
- { name: "Notification", value: 2 },
2531
- { name: "Logout", value: 3 }
2532
- ], s = M(() => !!e.notifications.find((i) => i.isNew)), n = (i) => d("sidebar", i), v = (i) => d("notif", i), u = async () => await fetch("/", { headers: { Authorization: "Basic AAAAAAAAAAAAAAAAAAA=" } }), f = () => {
2533
- e.changeTheme && e.changeTheme();
2534
- }, a = ({ value: i }, h) => {
2535
- i == 1 && f(), i == 2 && v(h), i == 3 && u();
2754
+ setup(t) {
2755
+ const e = L(null), o = L(t.value), r = () => {
2756
+ if (!e.value) return;
2757
+ const u = e.value.querySelector(".v-expansion__content");
2758
+ u && (u.style.maxHeight = o.value ? `${u.scrollHeight}px` : "0");
2759
+ }, a = () => {
2760
+ o.value = !o.value, r();
2536
2761
  };
2537
- return (i, h) => {
2538
- const b = ee("router-link");
2539
- return o(), c("header", Mo, [
2540
- l("div", Io, [
2541
- l("div", Ao, [
2542
- p(j, {
2543
- type: "icon",
2544
- color: "gray",
2545
- onClick: n
2546
- }, {
2547
- default: m(() => [
2548
- p(z(Ve), { class: "size-5" })
2549
- ]),
2550
- _: 1
2551
- }),
2552
- h[1] || (h[1] = l("div", { class: "lg:hidden flex-auto" }, null, -1)),
2553
- l("div", So, [
2554
- p(b, { to: "/" }, {
2555
- default: m(() => [
2556
- p(z(fe), { class: "h-[30px] text-primary" })
2557
- ]),
2558
- _: 1
2559
- })
2560
- ]),
2561
- h[2] || (h[2] = l("div", { class: "flex-auto" }, null, -1)),
2562
- l("div", To, [
2563
- p(j, {
2564
- type: "icon",
2565
- color: "gray",
2566
- onClick: f
2567
- }, {
2568
- default: m(() => [
2569
- p(z(Me))
2570
- ]),
2571
- _: 1
2572
- }),
2573
- p(j, {
2574
- type: "icon",
2575
- color: "gray",
2576
- onClick: v
2577
- }, {
2578
- default: m(() => [
2579
- l("span", {
2580
- class: V([s.value ? "flex" : "hidden", "absolute right-0 top-0.5 z-1 h-2 w-2 rounded-full bg-orange-400"])
2581
- }, h[0] || (h[0] = [
2582
- l("span", { class: "absolute -z-1 inline-flex h-full w-full animate-ping rounded-full bg-orange-400 opacity-75" }, null, -1)
2583
- ]), 2),
2584
- p(z(he), { class: "size-5" })
2585
- ]),
2586
- _: 1
2587
- }),
2588
- p(j, {
2589
- type: "icon",
2590
- color: "gray",
2591
- onClick: F(u, ["prevent"])
2592
- }, {
2593
- default: m(() => [
2594
- p(z(Ie), { class: "size-5" })
2595
- ]),
2596
- _: 1
2597
- })
2598
- ]),
2599
- l("div", Ho, [
2600
- p(te, {
2601
- left: "unset",
2602
- right: "0",
2603
- top: "0"
2604
- }, {
2605
- activator: m(({ on: $ }) => [
2606
- p(j, {
2607
- type: "icon",
2608
- color: "gray",
2609
- class: "flex",
2610
- onClick: $.click
2611
- }, {
2612
- default: m(() => [
2613
- p(z(Ce))
2614
- ]),
2615
- _: 2
2616
- }, 1032, ["onClick"])
2617
- ]),
2618
- default: m(() => [
2619
- p(le, {
2620
- list: r,
2621
- onClick: a
2622
- }, {
2623
- default: m(({ item: $ }) => [
2624
- l("span", Do, _($.name), 1)
2625
- ]),
2626
- _: 1
2627
- })
2628
- ]),
2629
- _: 1
2630
- })
2631
- ])
2632
- ])
2762
+ return ne(() => {
2763
+ r();
2764
+ }), (u, d) => (s(), v("div", {
2765
+ ref_key: "root",
2766
+ ref: e,
2767
+ class: "border-b dark:border-gray-700 border-gray-200"
2768
+ }, [
2769
+ l("div", {
2770
+ class: "cursor-pointer min-h-[60px] px-4 flex items-center justify-between",
2771
+ onClick: a
2772
+ }, [
2773
+ l("h4", null, _(u.label), 1),
2774
+ l("div", {
2775
+ class: z(["transition text-gray-400", { "rotate-180": o.value }])
2776
+ }, [
2777
+ p(B, { name: "Chevron" })
2778
+ ], 2)
2779
+ ]),
2780
+ l("div", Eo, [
2781
+ l("div", Ro, [
2782
+ C(u.$slots, "default")
2633
2783
  ])
2634
- ]);
2784
+ ])
2785
+ ], 512));
2786
+ }
2787
+ }), Uo = { class: "flex items-center cursor-pointer" }, mn = /* @__PURE__ */ V({
2788
+ __name: "VFile",
2789
+ emits: ["change"],
2790
+ setup(t, { emit: e }) {
2791
+ const o = e, r = async (a) => {
2792
+ const u = a.target;
2793
+ u.files && o("change", u.files);
2635
2794
  };
2795
+ return (a, u) => (s(), v("label", Uo, [
2796
+ l("input", H({
2797
+ type: "file",
2798
+ class: "hidden"
2799
+ }, a.$attrs, { onChange: r }), null, 16),
2800
+ C(a.$slots, "default")
2801
+ ]));
2636
2802
  }
2637
- }), jo = { class: "no-scrollbar flex flex-col overflow-y-auto duration-300 ease-linear h-full" }, No = {
2638
- key: 0,
2639
- class: "flex flex-col gap-2 p-2"
2640
- }, Oo = /* @__PURE__ */ B({
2641
- __name: "AppNotification",
2803
+ }), Wo = { class: "relative flex items-end gap-0.5 w-10" }, qo = ["title"], Go = { class: "absolute -top-1 -left-1 text-xs text-gray-600 dark:text-gray-300" }, Ko = /* @__PURE__ */ V({
2804
+ __name: "VWifiIcon",
2642
2805
  props: {
2643
- value: { type: Boolean },
2644
- notifications: {}
2806
+ rssi: { default: 0 },
2807
+ channel: { default: 0 }
2645
2808
  },
2646
- emits: ["close", "remove", "read"],
2647
- setup(e, { emit: t }) {
2648
- const d = e, r = t, s = M(() => !!d.notifications.find((a) => a.isNew)), n = M(() => !!d.notifications.length), v = (a) => r("close", a), u = (a) => r("remove", a), f = (a) => r("read", a);
2649
- return (a, i) => (o(), c(H, null, [
2650
- d.value ? (o(), c("div", {
2651
- key: 0,
2652
- class: "overlay fixed left-0 top-0 h-full w-full bg-black/40 bg-blur",
2653
- onClick: v
2654
- })) : I("", !0),
2655
- l("aside", {
2656
- class: V([d.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"])
2657
- }, [
2658
- l("div", jo, [
2659
- C(a.$slots, "header", { isNew: s.value }),
2660
- n.value ? (o(), c("div", No, [
2661
- p(_e, {
2662
- "enter-active-class": "transition-all duration-300 ",
2663
- "enter-from-class": "opacity-0 translate-x-1/2",
2664
- "enter-to-class": "opacity-100 translate-x-0",
2665
- "leave-active-class": "transition-all duration-300 absolute",
2666
- "leave-from-class": "opacity-100 translate-x-0",
2667
- "leave-to-class": "opacity-0 translate-x-1/2"
2668
- }, {
2669
- default: m(() => [
2670
- (o(!0), c(H, null, N(d.notifications, (h) => (o(), c("div", {
2671
- key: h.date,
2672
- class: "relative"
2673
- }, [
2674
- C(a.$slots, "card", { item: h }, () => [
2675
- p(ha, D({ ref_for: !0 }, h, {
2676
- class: "bg-gray-200/50 dark:bg-gray-800/50 rounded-md",
2677
- onRemove: (b) => u(h),
2678
- onRead: (b) => f(h)
2679
- }), null, 16, ["onRemove", "onRead"])
2680
- ])
2681
- ]))), 128))
2682
- ]),
2683
- _: 3
2684
- })
2685
- ])) : C(a.$slots, "empty", { key: 1 })
2686
- ])
2687
- ], 2)
2688
- ], 64));
2809
+ setup(t) {
2810
+ const e = 2 * (t.rssi + 100), o = (r) => r < e;
2811
+ return (r, a) => (s(), v("div", Wo, [
2812
+ (s(), v(D, null, N([10, 15, 25, 40, 70], (u, d) => l("div", {
2813
+ key: u,
2814
+ class: z(["w-1 h-5 rounded-lg", [o(u) ? "bg-gray-900 dark:bg-gray-100" : "bg-gray-300 dark:bg-gray-700"]]),
2815
+ style: K(`height: ${(d + 1) * 5}px`),
2816
+ title: `rssi: ${r.rssi} channel: ${r.channel}`
2817
+ }, null, 14, qo)), 64)),
2818
+ l("div", Go, _(r.channel), 1)
2819
+ ]));
2689
2820
  }
2690
- }), Fo = {}, Po = { class: "fixed h-full w-full top-0 left-0 z-20" }, Eo = { class: "absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2" };
2691
- function Ro(e, t) {
2692
- return o(), c("div", Po, [
2693
- t[0] || (t[0] = l("div", { class: "absolute h-full w-full top-0 left-0 bg-black/60 bg-blur" }, null, -1)),
2694
- l("div", Eo, [
2695
- C(e.$slots, "default")
2696
- ])
2697
- ]);
2698
- }
2699
- const Uo = /* @__PURE__ */ $e(Fo, [["render", Ro]]), Go = { class: "mb-4 flex flex-col gap-4" }, Wo = ["onClick"], qo = { class: "flex flex-col gap-2" }, Ko = { class: "flex gap-2 ms-8" }, Zo = { class: "flex-1 first-letter:uppercase text-sm" }, Jo = /* @__PURE__ */ B({
2700
- __name: "AppNav",
2821
+ }), Zo = ["onDragstart", "onDragenter"], Jo = {
2822
+ key: 0,
2823
+ class: "absolute inset-0 border border-dashed border-blue-600 rounded-lg"
2824
+ }, gn = /* @__PURE__ */ V({
2825
+ __name: "VDragDrop",
2701
2826
  props: {
2702
- menu: { default: () => [] },
2703
- fullPath: { default: "" },
2704
- isSidebar: { type: Boolean, default: !1 }
2827
+ items: {},
2828
+ itemKey: { default: "id" }
2705
2829
  },
2706
- emits: ["sidebar"],
2707
- setup(e, { emit: t }) {
2708
- const d = t, r = L(""), s = ({ name: v, path: u }) => {
2709
- e.isSidebar && d("sidebar", !e.isSidebar), r.value !== v && (r.value = r.value === v ? "" : v);
2710
- }, n = (v) => e.fullPath === v;
2711
- return U(
2712
- () => e.menu,
2713
- () => {
2714
- var v;
2715
- return r.value = ((v = Xe(e.menu, e.fullPath)) == null ? void 0 : v.name) || "";
2830
+ emits: ["update:items", "order-change"],
2831
+ setup(t, { emit: e }) {
2832
+ const o = e, r = L(null), a = L(0), u = L(-1), d = ({ id: h }) => ({
2833
+ "opacity-30 scale-105 z-10": r.value === h,
2834
+ "transition-transform duration-200": r.value !== h
2835
+ }), f = (h, y, $) => {
2836
+ r.value = y, a.value = $, h.dataTransfer.effectAllowed = "move";
2837
+ }, c = (h) => {
2838
+ r.value !== null && (u.value = h);
2839
+ }, n = () => {
2840
+ r.value = null, u.value = -1;
2841
+ }, i = (h) => {
2842
+ if (h.preventDefault(), r.value && u.value !== -1) {
2843
+ const y = t.items.findIndex((b) => b[t.itemKey] === r.value), $ = u.value;
2844
+ if (y !== $ && $ !== -1) {
2845
+ const b = [...t.items], [w] = b.splice(y, 1);
2846
+ b.splice($, 0, w), o("update:items", b), o("order-change", { fromIndex: y, toIndex: $, movedItem: w, newOrder: b });
2847
+ }
2716
2848
  }
2717
- ), (v, u) => {
2718
- const f = ee("v-icons");
2719
- return o(), c("nav", null, [
2720
- l("ul", Go, [
2721
- (o(!0), c(H, null, N(v.menu, (a) => (o(), c("li", {
2722
- key: a.name
2723
- }, [
2724
- (o(), A(q(a.path ? "router-link" : "span"), {
2725
- to: a.path,
2726
- class: V(["flex gap-2 items-center px-3 py-2 rounded-lg", n(a.path) ? "bg-blue-500/10" : "hover:bg-gray-500/10"]),
2727
- onClick: F((i) => s(a), ["prevent", "stop"])
2728
- }, {
2729
- default: m(() => [
2730
- p(f, {
2731
- name: a.icon,
2732
- class: "size-5 flex-[0_0_24px]"
2733
- }, null, 8, ["name"]),
2734
- l("span", {
2735
- class: V(["flex-1 first-letter:uppercase text-sm", v.isSidebar ? "lg:hidden" : ""])
2736
- }, _(a.name), 3),
2737
- l("button", {
2738
- class: V(["cursor-pointer", [v.isSidebar ? "lg:hidden" : ""]]),
2739
- onClick: F((i) => s(a), ["prevent", "stop"])
2740
- }, [
2741
- a.children ? (o(), A(z(K), { key: 0 })) : I("", !0)
2742
- ], 10, Wo)
2743
- ]),
2744
- _: 2
2745
- }, 1032, ["to", "class", "onClick"])),
2746
- a.children ? (o(), c("div", {
2747
- key: 0,
2748
- class: V(["translate transform overflow-hidden mt-2", [v.isSidebar ? "lg:hidden" : "", r.value === a.name ? "block" : "hidden"]])
2749
- }, [
2750
- l("ul", qo, [
2751
- (o(!0), c(H, null, N(a.children, ({ name: i, path: h, icon: b }) => (o(), c("li", { key: i }, [
2752
- (o(), A(q(h ? "router-link" : "span"), {
2753
- to: h,
2754
- class: V(["flex gap-2 items-center px-3 py-2 rounded-lg", n(h) ? "bg-blue-500/10" : "hover:bg-gray-500/10"])
2755
- }, {
2756
- default: m(() => [
2757
- l("div", Ko, [
2758
- b ? (o(), A(f, {
2759
- key: 0,
2760
- name: b,
2761
- class: "size-5 flex-[0_0_24px]"
2762
- }, null, 8, ["name"])) : I("", !0),
2763
- l("span", Zo, _(i), 1)
2764
- ])
2765
- ]),
2766
- _: 2
2767
- }, 1032, ["to", "class"]))
2768
- ]))), 128))
2769
- ])
2770
- ], 2)) : I("", !0)
2771
- ]))), 128))
2772
- ])
2773
- ]);
2849
+ u.value = -1;
2774
2850
  };
2851
+ return (h, y) => (s(), v("div", {
2852
+ onDragover: y[1] || (y[1] = P(() => {
2853
+ }, ["prevent"])),
2854
+ onDrop: i
2855
+ }, [
2856
+ p(me, {
2857
+ "enter-active-class": "transition-all duration-300 ease",
2858
+ "enter-from-class": "opacity-0 translate-x-8",
2859
+ "enter-to-class": "opacity-100 translate-x-0",
2860
+ "leave-active-class": "transition-all duration-300 ease absolute",
2861
+ "leave-from-class": "opacity-100 translate-x-0",
2862
+ "leave-to-class": "opacity-0 translate-x-8",
2863
+ "move-class": "transition-all duration-300 ease"
2864
+ }, {
2865
+ default: g(() => [
2866
+ (s(!0), v(D, null, N(h.items, ($, b) => (s(), v("div", {
2867
+ key: `${$.id}_drug`,
2868
+ class: z(["relative group", d($)]),
2869
+ draggable: "true",
2870
+ onDragstart: (w) => f(w, $.id, b),
2871
+ onDragenter: (w) => c(b),
2872
+ onDragend: n,
2873
+ onDragover: y[0] || (y[0] = P(() => {
2874
+ }, ["prevent"]))
2875
+ }, [
2876
+ C(h.$slots, "default", {
2877
+ item: $,
2878
+ key: $.id,
2879
+ index: b,
2880
+ isDragging: r.value === $.id
2881
+ }),
2882
+ u.value === b && r.value !== $.id ? (s(), v("div", Jo)) : I("", !0)
2883
+ ], 42, Zo))), 128))
2884
+ ]),
2885
+ _: 3
2886
+ })
2887
+ ], 32));
2775
2888
  }
2776
- }), Qo = {
2777
- key: 0,
2778
- class: "w-full min-w-[260px] max-w-xs p-4 bg-white rounded-lg shadow-lg dark:bg-gray-800",
2779
- role: "alert"
2780
- }, Xo = { class: "flex items-center gap-4 text-sm" }, Yo = {
2781
- key: 0,
2782
- class: "text-green-600"
2783
- }, e1 = {
2784
- key: 1,
2785
- class: "relative block h-4 w-full rounded-lg overflow-hidden bg-gray-200 dark:bg-gray-900/50 select-none mt-2"
2786
- }, t1 = { class: "absolute left-[140px] top-1/2 -translate-1/2 text-sm font-bold text-black dark:text-white text-center leading-none" }, l1 = { class: "absolute left-[140px] top-1/2 -translate-1/2 text-sm font-bold text-white text-center leading-none" }, s1 = /* @__PURE__ */ B({
2787
- __name: "AppProgress",
2889
+ }), Qo = { class: "min-w-full" }, Xo = { class: "border-y border-gray-100 py-3 dark:border-gray-800" }, Yo = { class: "bg-gray-50 dark:bg-gray-800" }, en = { class: "flex items-center" }, tn = { class: "divide-y divide-gray-100 dark:divide-gray-800" }, ln = ["onClick"], an = { class: "flex items-center text-gray-700 dark:text-gray-400" }, sn = { key: 1 }, on = {
2890
+ class: "py-3 whitespace-nowrap",
2891
+ colspan: "9"
2892
+ }, nn = { class: "flex items-center justify-center text-theme-sm text-gray-700 dark:text-gray-400 px-2" }, bn = /* @__PURE__ */ V({
2893
+ __name: "VTable",
2788
2894
  props: {
2789
- timeout: { default: 5e3 },
2790
- key: {},
2791
- status: { default: 0 },
2792
- empty: {},
2793
- size: { default: 0 },
2794
- length: { default: 0 }
2895
+ headers: { default: () => [] },
2896
+ items: { default: () => [] }
2795
2897
  },
2796
- setup(e) {
2797
- const t = L(!1), d = M(() => e.status ? Math.ceil(e.size * 100 / e.length) : 100), r = M(() => !!e.length), s = M(() => !!(r.value && d.value === 100 && !e.status)), n = ve(() => {
2798
- t.value = !1;
2799
- }, e.timeout);
2800
- return U(
2801
- () => [e.size, e.status],
2802
- () => {
2803
- t.value = !0, n();
2804
- }
2805
- ), (v, u) => (o(), A(Y, {
2806
- "enter-active-class": "duration-300 ease-out",
2807
- "enter-from-class": "transform opacity-0 translate-x-full",
2808
- "enter-to-class": "opacity-100 translate-x-0",
2809
- "leave-active-class": "duration-200 ease-in",
2810
- "leave-from-class": "opacity-100 translate-y-0",
2811
- "leave-to-class": "transform opacity-0 -translate-y-8"
2812
- }, {
2813
- default: m(() => [
2814
- t.value ? (o(), c("div", Qo, [
2815
- l("div", Xo, [
2816
- C(v.$slots, "default", { isDone: s.value }, () => [
2817
- u[1] || (u[1] = l("div", { class: "flex-auto" }, "Progress...", -1)),
2818
- s.value ? (o(), c("span", Yo, "Done")) : I("", !0)
2819
- ]),
2820
- l("button", {
2821
- class: "cursor-pointer transition text-gray-700 dark:text-gray-400 self-start hover:text-gray-600",
2822
- onClick: u[0] || (u[0] = (f) => t.value = !1)
2823
- }, [
2824
- p(z(G), { class: "h-4 w-4" })
2898
+ emits: ["click"],
2899
+ setup(t, { emit: e }) {
2900
+ const o = e, r = (d, f) => o("click", { item: d, event: f }), a = (d) => (d == null ? void 0 : d.className) || "", u = (d, { key: f }) => d == null ? void 0 : d[f];
2901
+ return (d, f) => (s(), v("table", Qo, [
2902
+ l("thead", Xo, [
2903
+ l("tr", Yo, [
2904
+ (s(!0), v(D, null, N(d.headers, (c, n) => (s(), v("th", {
2905
+ key: n,
2906
+ class: z(["py-2 whitespace-nowrap text-gray-500 dark:text-gray-400 font-normal px-4", a(c)])
2907
+ }, [
2908
+ C(d.$slots, "header", { item: c }, () => [
2909
+ l("div", en, _(c.name), 1)
2825
2910
  ])
2826
- ]),
2827
- r.value ? (o(), c("div", {
2828
- key: 0,
2829
- class: "h-[2px] fixed top-0 left-0 w-full bg-blue-600 transition-all duration-500",
2830
- style: J(`width: ${d.value}%`)
2831
- }, null, 4)) : I("", !0),
2832
- r.value ? (o(), c("div", e1, [
2833
- l("div", t1, _(d.value) + "%", 1),
2834
- l("div", {
2835
- class: "bg-blue-600 rounded-full h-4 overflow-hidden relative transition-all duration-500",
2836
- style: J(`width: ${d.value}%`)
2837
- }, [
2838
- l("div", l1, _(d.value) + "%", 1)
2839
- ], 4)
2840
- ])) : I("", !0)
2841
- ])) : I("", !0)
2911
+ ], 2))), 128))
2912
+ ])
2842
2913
  ]),
2843
- _: 3
2844
- }));
2914
+ l("tbody", tn, [
2915
+ d.items.length ? (s(!0), v(D, { key: 0 }, N(d.items, (c, n) => (s(), v("tr", {
2916
+ key: n,
2917
+ class: "hover:bg-gray-50/50 dark:hover:bg-gray-800/50",
2918
+ onClick: (i) => r(c, i)
2919
+ }, [
2920
+ (s(!0), v(D, null, N(d.headers, (i, h) => (s(), v("td", {
2921
+ key: h,
2922
+ class: "py-2 whitespace-nowrap px-4"
2923
+ }, [
2924
+ l("div", an, [
2925
+ C(d.$slots, i.key, { item: c }, () => [
2926
+ T(_(u(c, i)), 1)
2927
+ ])
2928
+ ])
2929
+ ]))), 128))
2930
+ ], 8, ln))), 128)) : (s(), v("tr", sn, [
2931
+ l("td", on, [
2932
+ l("div", nn, [
2933
+ C(d.$slots, "empty", {}, () => [
2934
+ f[0] || (f[0] = T("The list is empty"))
2935
+ ])
2936
+ ])
2937
+ ])
2938
+ ]))
2939
+ ])
2940
+ ]));
2845
2941
  }
2846
- }), a1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2847
- __proto__: null,
2848
- AppAside: Bo,
2849
- AppDialog: Te,
2850
- AppHeader: Lo,
2851
- AppNav: Jo,
2852
- AppNotification: Oo,
2853
- AppOverlay: Uo,
2854
- AppProgress: s1
2855
- }, Symbol.toStringTag, { value: "Module" })), ke = { ...a1, ...zo, VButton: j, VLoader: we, VDropdown: te, VList: le, VTextField: O, VSelect: Q, VWifiIcon: fs, VIcons: Z, CardGray: ca }, g1 = {
2856
- install: (e, t) => {
2857
- Object.keys(ke).forEach((d) => {
2858
- e.component(d, ke[d]);
2859
- }), et.forEach(({ name: d, directive: r }) => e.directive(d, r));
2942
+ }), pe = { ...Ka, ...Fo, VButton: j, VLoader: be, VDropdown: Y, VList: ee, VTextField: O, VSelect: J, VWifiIcon: Ko, VIcon: B, CardMain: vs }, yn = {
2943
+ install: (t) => {
2944
+ Object.keys(pe).forEach((e) => {
2945
+ t.component(e, pe[e]);
2946
+ }), Ee.forEach(({ name: e, directive: o }) => t.directive(e, o));
2860
2947
  }
2861
2948
  };
2862
2949
  export {
2863
- Bo as AppAside,
2864
- Te as AppDialog,
2865
- Lo as AppHeader,
2866
- Jo as AppNav,
2867
- Oo as AppNotification,
2868
- Uo as AppOverlay,
2869
- s1 as AppProgress,
2870
- p1 as BlockBreadcrumb,
2871
- h1 as BlockInfo,
2872
- f1 as BlockTable,
2873
- ca as CardGray,
2874
- ha as CardNotification,
2875
- d1 as VAutocomplete,
2950
+ Kl as AppAside,
2951
+ ye as AppDialog,
2952
+ ha as AppHeader,
2953
+ Sa as AppNav,
2954
+ ka as AppNotification,
2955
+ za as AppOverlay,
2956
+ Ga as AppProgress,
2957
+ fn as BlockBreadcrumb,
2958
+ vn as BlockInfo,
2959
+ q as CardBase,
2960
+ $s as CardButton,
2961
+ Ms as CardDate,
2962
+ Hs as CardDimmer,
2963
+ Ls as CardInfo,
2964
+ Ns as CardInput,
2965
+ Fs as CardList,
2966
+ vs as CardMain,
2967
+ ba as CardNotification,
2968
+ Po as ItemEdit,
2969
+ hn as VAutocomplete,
2876
2970
  j as VButton,
2877
- ht as VCheckbox,
2878
- v1 as VDragDrop,
2879
- te as VDropdown,
2880
- c1 as VExpansion,
2881
- u1 as VFile,
2882
- ne as VFunc,
2883
- Z as VIcons,
2884
- le as VList,
2885
- Ae as VListObject,
2886
- we as VLoader,
2887
- Q as VSelect,
2971
+ po as VCheckbox,
2972
+ gn as VDragDrop,
2973
+ Y as VDropdown,
2974
+ pn as VExpansion,
2975
+ mn as VFile,
2976
+ ae as VFunc,
2977
+ B as VIcon,
2978
+ ee as VList,
2979
+ ke as VListObject,
2980
+ be as VLoader,
2981
+ J as VSelect,
2982
+ bn as VTable,
2888
2983
  O as VTextField,
2889
- Se as VTextWrapper,
2890
- fs as VWifiIcon,
2891
- g1 as default,
2892
- Ke as getDataValue,
2893
- y1 as getFunction,
2894
- x1 as getParamsData,
2895
- k1 as getStateItem,
2896
- _1 as setStateItem,
2897
- w1 as useForm
2984
+ xe as VTextWrapper,
2985
+ Ko as VWifiIcon,
2986
+ yn as default,
2987
+ Le as getDataValue,
2988
+ _n as getFunction,
2989
+ $n as getParamsData,
2990
+ wn as getStateItem,
2991
+ Cn as setStateItem
2898
2992
  };