@opengis/form 0.0.26 → 0.0.27

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.
package/dist/index.js CHANGED
@@ -1,15 +1,15 @@
1
- import { defineComponent as A, ref as w, onMounted as ge, onUnmounted as Re, createElementBlock as d, openBlock as i, normalizeClass as M, createCommentVNode as F, renderSlot as $e, createElementVNode as l, toDisplayString as T, normalizeProps as Pe, guardReactiveProps as Ne, createTextVNode as ce, computed as D, mergeModels as Q, useModel as X, withDirectives as K, unref as q, vModelText as ne, vModelCheckbox as st, createVNode as j, createBlock as ae, resolveDynamicComponent as Be, normalizeStyle as ke, withCtx as je, withModifiers as ve, onBeforeUnmount as xt, watch as te, createStaticVNode as ue, vModelRadio as nt, Fragment as Y, renderList as le, mergeProps as Ee, reactive as wt, vModelDynamic as kt, vShow as He, inject as Me, resolveComponent as Qe, Transition as rt, nextTick as ze, Teleport as _t, getCurrentInstance as $t, provide as Xe } from "vue";
2
- import { notify as we, modal as Ct, VsModal as Vt } from "@opengis/core";
3
- const Mt = {
1
+ import { defineComponent as F, ref as w, onMounted as be, onUnmounted as He, createElementBlock as d, openBlock as i, normalizeClass as M, createCommentVNode as A, renderSlot as $e, createElementVNode as l, toDisplayString as T, normalizeProps as Ne, guardReactiveProps as qe, createTextVNode as pe, computed as O, mergeModels as Q, useModel as X, withDirectives as K, unref as q, vModelText as re, vModelCheckbox as ut, createVNode as j, createBlock as ae, resolveDynamicComponent as Se, normalizeStyle as ge, withCtx as Be, withModifiers as ve, onBeforeUnmount as _t, watch as te, createStaticVNode as de, vModelRadio as dt, Fragment as Y, renderList as le, mergeProps as Ee, reactive as $t, vModelDynamic as Ct, vShow as Ge, inject as Me, resolveComponent as tt, Transition as ct, nextTick as ze, Teleport as Vt, getCurrentInstance as Mt, provide as lt } from "vue";
2
+ import { notify as ke, modal as Lt, VsModal as St } from "@opengis/core";
3
+ const Bt = {
4
4
  key: 0,
5
5
  class: "text-[14px] font-medium text-gray-900 mb-2"
6
- }, Lt = { class: "opacity-100" }, St = {
6
+ }, jt = { class: "opacity-100" }, It = {
7
7
  key: 0,
8
8
  class: "text-red-500 text-[14px]"
9
- }, Bt = {
9
+ }, zt = {
10
10
  key: 1,
11
11
  class: "text-red-500 text-[10px] absolute bottom-[-14px]"
12
- }, jt = /* @__PURE__ */ A({
12
+ }, Et = /* @__PURE__ */ F({
13
13
  __name: "vs-layout-default",
14
14
  props: {
15
15
  ua: { default: "" },
@@ -26,31 +26,31 @@ const Mt = {
26
26
  const e = w("uk"), t = (n) => {
27
27
  n.detail.key === "locale" && (e.value = n.detail.newValue);
28
28
  };
29
- return ge(() => {
29
+ return be(() => {
30
30
  e.value = localStorage.locale, window.addEventListener("storage", t);
31
- }), Re(() => {
31
+ }), He(() => {
32
32
  window.removeEventListener("resize", t);
33
33
  }), (n, s) => (i(), d("div", {
34
34
  class: M(["w-full relative", { "opacity-60": n.item.disabled }])
35
35
  }, [
36
- n.ua || n.label ? (i(), d("div", Mt, [
37
- l("span", Lt, T(n.item[e.value] || n.ua || n.label), 1),
38
- n.item?.rules?.includes("required") ? (i(), d("span", St, "*")) : F("", !0)
39
- ])) : F("", !0),
40
- $e(n.$slots, "default", Pe(Ne(n.$attrs))),
41
- n.error ? (i(), d("span", Bt, T(n.error), 1)) : F("", !0)
36
+ n.ua || n.label ? (i(), d("div", Bt, [
37
+ l("span", jt, T(n.item[e.value] || n.ua || n.label), 1),
38
+ n.item?.rules?.includes("required") ? (i(), d("span", It, "*")) : A("", !0)
39
+ ])) : A("", !0),
40
+ $e(n.$slots, "default", Ne(qe(n.$attrs))),
41
+ n.error ? (i(), d("span", zt, T(n.error), 1)) : A("", !0)
42
42
  ], 2));
43
43
  }
44
- }), It = { class: "w-full relative flex flex-row items-center gap-2" }, zt = {
44
+ }), At = { class: "w-full relative flex flex-row items-center gap-2" }, Ft = {
45
45
  key: 0,
46
46
  class: "text-sm text-gray-900 font-medium flex shrink-0 w-3/12 max-w-[250px]"
47
- }, Et = {
47
+ }, Dt = {
48
48
  key: 0,
49
49
  class: "text-red-500 text-[14px]"
50
- }, Ft = {
50
+ }, Ot = {
51
51
  key: 1,
52
52
  class: "text-red-500 text-[10px] absolute bottom-[-14px]"
53
- }, At = /* @__PURE__ */ A({
53
+ }, Ut = /* @__PURE__ */ F({
54
54
  __name: "vs-layout-horizontal",
55
55
  props: {
56
56
  ua: { default: "" },
@@ -64,19 +64,19 @@ const Mt = {
64
64
  label: { default: "" }
65
65
  },
66
66
  setup(o) {
67
- return (e, t) => (i(), d("div", It, [
68
- e.item?.type !== "html" ? (i(), d("span", zt, [
69
- ce(T(e.ua || e.label) + " ", 1),
70
- e.item?.rules?.includes("required") && (e.ua || e.label) ? (i(), d("span", Et, "*")) : F("", !0)
71
- ])) : F("", !0),
72
- $e(e.$slots, "default", Pe(Ne(e.$attrs))),
73
- e.error ? (i(), d("span", Ft, T(e.error), 1)) : F("", !0)
67
+ return (e, t) => (i(), d("div", At, [
68
+ e.item?.type !== "html" ? (i(), d("span", Ft, [
69
+ pe(T(e.ua || e.label) + " ", 1),
70
+ e.item?.rules?.includes("required") && (e.ua || e.label) ? (i(), d("span", Dt, "*")) : A("", !0)
71
+ ])) : A("", !0),
72
+ $e(e.$slots, "default", Ne(qe(e.$attrs))),
73
+ e.error ? (i(), d("span", Ot, T(e.error), 1)) : A("", !0)
74
74
  ]));
75
75
  }
76
- }), Ot = { class: "w-full relative" }, Dt = {
76
+ }), Tt = { class: "w-full relative" }, Rt = {
77
77
  key: 0,
78
78
  class: "text-red-500 text-[10px] absolute bottom-[-14px]"
79
- }, Ut = /* @__PURE__ */ A({
79
+ }, Pt = /* @__PURE__ */ F({
80
80
  __name: "vs-layout-inline",
81
81
  props: {
82
82
  ua: { default: "" },
@@ -90,25 +90,25 @@ const Mt = {
90
90
  label: { default: "" }
91
91
  },
92
92
  setup(o) {
93
- return (e, t) => (i(), d("div", Ot, [
94
- $e(e.$slots, "default", Pe(Ne(e.$attrs))),
95
- e.error ? (i(), d("span", Dt, T(e.error), 1)) : F("", !0)
93
+ return (e, t) => (i(), d("div", Tt, [
94
+ $e(e.$slots, "default", Ne(qe(e.$attrs))),
95
+ e.error ? (i(), d("span", Rt, T(e.error), 1)) : A("", !0)
96
96
  ]));
97
97
  }
98
- }), Tt = {
99
- default: jt,
100
- horizontal: At,
101
- inline: Ut
98
+ }), Ht = {
99
+ default: Et,
100
+ horizontal: Ut,
101
+ inline: Pt
102
102
  };
103
- function be(o) {
103
+ function ye(o) {
104
104
  return {
105
- inputClass: D(() => {
105
+ inputClass: O(() => {
106
106
  const t = `disabled:opacity-50 disabled:cursor-not-allowed outline-none focus:ring-2 focus:ring-ring focus:ring-${o?.primaryColor || "blue"}-500 border border-solid border-stone-200 rounded-md text-sm text-stone-800 placeholder:text-stone-400 `;
107
107
  return o?.size === "sm" ? `${t}h-[32px]` : `${t}h-[38px]`;
108
108
  })
109
109
  };
110
110
  }
111
- const Rt = ["placeholder", "disabled"], Oe = /* @__PURE__ */ A({
111
+ const Nt = ["placeholder", "disabled"], De = /* @__PURE__ */ F({
112
112
  __name: "vs-input-text",
113
113
  props: /* @__PURE__ */ Q({
114
114
  style: { default: () => ({}) },
@@ -124,7 +124,7 @@ const Rt = ["placeholder", "disabled"], Oe = /* @__PURE__ */ A({
124
124
  }),
125
125
  emits: ["update:modelValue"],
126
126
  setup(o) {
127
- const e = o, { inputClass: t } = be(e.style), n = X(o, "modelValue");
127
+ const e = o, { inputClass: t } = ye(e.style), n = X(o, "modelValue");
128
128
  return (s, r) => K((i(), d("input", {
129
129
  type: "text",
130
130
  "onUpdate:modelValue": r[0] || (r[0] = (a) => n.value = a),
@@ -134,11 +134,11 @@ const Rt = ["placeholder", "disabled"], Oe = /* @__PURE__ */ A({
134
134
  style: {
135
135
  border: "1px solid #CFD9E0"
136
136
  }
137
- }, null, 10, Rt)), [
138
- [ne, n.value]
137
+ }, null, 10, Nt)), [
138
+ [re, n.value]
139
139
  ]);
140
140
  }
141
- }), Pt = ["placeholder"], Nt = /* @__PURE__ */ A({
141
+ }), qt = ["placeholder"], Gt = /* @__PURE__ */ F({
142
142
  __name: "vs-input-number",
143
143
  props: /* @__PURE__ */ Q({
144
144
  style: { default: () => ({}) },
@@ -154,7 +154,7 @@ const Rt = ["placeholder", "disabled"], Oe = /* @__PURE__ */ A({
154
154
  }),
155
155
  emits: ["update:modelValue"],
156
156
  setup(o) {
157
- const e = o, { inputClass: t } = be(e.style), n = X(o, "modelValue");
157
+ const e = o, { inputClass: t } = ye(e.style), n = X(o, "modelValue");
158
158
  return (s, r) => K((i(), d("input", {
159
159
  type: "number",
160
160
  step: "any",
@@ -164,16 +164,16 @@ const Rt = ["placeholder", "disabled"], Oe = /* @__PURE__ */ A({
164
164
  style: {
165
165
  border: "1px solid #CFD9E0"
166
166
  }
167
- }, null, 10, Pt)), [
168
- [ne, n.value]
167
+ }, null, 10, qt)), [
168
+ [re, n.value]
169
169
  ]);
170
170
  }
171
- }), N = (o, e) => {
171
+ }), H = (o, e) => {
172
172
  const t = o.__vccOpts || o;
173
173
  for (const [n, s] of e)
174
174
  t[n] = s;
175
175
  return t;
176
- }, Ht = {}, qt = {
176
+ }, Jt = {}, Kt = {
177
177
  xmlns: "http://www.w3.org/2000/svg",
178
178
  viewBox: "0 0 24 24",
179
179
  fill: "none",
@@ -183,8 +183,8 @@ const Rt = ["placeholder", "disabled"], Oe = /* @__PURE__ */ A({
183
183
  "stroke-linejoin": "round",
184
184
  class: "icon icon-tabler icons-tabler-outline icon-tabler-check"
185
185
  };
186
- function Gt(o, e) {
187
- return i(), d("svg", qt, e[0] || (e[0] = [
186
+ function Zt(o, e) {
187
+ return i(), d("svg", Kt, e[0] || (e[0] = [
188
188
  l("path", {
189
189
  stroke: "none",
190
190
  d: "M0 0h24v24H0z",
@@ -193,7 +193,7 @@ function Gt(o, e) {
193
193
  l("path", { d: "M5 12l5 5l10 -10" }, null, -1)
194
194
  ]));
195
195
  }
196
- const Jt = /* @__PURE__ */ N(Ht, [["render", Gt]]), Kt = { class: "flex items-center gap-[4px]" }, Zt = ["value", "id", "disabled"], Wt = ["for"], Qt = { class: "text-[14px] text-gray-700 flex items-center gap-x-1 ml-1 dark:text-neutral-400" }, Xt = /* @__PURE__ */ A({
196
+ const Wt = /* @__PURE__ */ H(Jt, [["render", Zt]]), Qt = { class: "flex items-center gap-[4px]" }, Xt = ["value", "id", "disabled"], Yt = ["for"], el = { class: "text-[14px] text-gray-700 flex items-center gap-x-1 ml-1 dark:text-neutral-400" }, tl = /* @__PURE__ */ F({
197
197
  __name: "vs-checkbox-default",
198
198
  props: {
199
199
  value: { default: "" },
@@ -206,11 +206,11 @@ const Jt = /* @__PURE__ */ N(Ht, [["render", Gt]]), Kt = { class: "flex items-ce
206
206
  },
207
207
  emits: ["update:modelValue"],
208
208
  setup(o, { emit: e }) {
209
- const t = e, n = o, s = D({
209
+ const t = e, n = o, s = O({
210
210
  get: () => n.modelValue,
211
211
  set: (r) => t("update:modelValue", r)
212
212
  });
213
- return (r, a) => (i(), d("div", Kt, [
213
+ return (r, a) => (i(), d("div", Qt, [
214
214
  K(l("input", {
215
215
  type: "checkbox",
216
216
  value: r.value,
@@ -218,8 +218,8 @@ const Jt = /* @__PURE__ */ N(Ht, [["render", Gt]]), Kt = { class: "flex items-ce
218
218
  class: M(["shrink-0 border border-solid hidden border-gray-700 w-3.5 h-3.5 rounded text-blue-600 focus:ring-offset-0 dark:bg-neutral-800 dark:border-neutral-700 cursor-pointer", { "!cursor-not-allowed": r.disabled }]),
219
219
  id: r.id,
220
220
  disabled: r.disabled
221
- }, null, 10, Zt), [
222
- [st, s.value]
221
+ }, null, 10, Xt), [
222
+ [ut, s.value]
223
223
  ]),
224
224
  l("label", {
225
225
  for: r.id,
@@ -228,23 +228,23 @@ const Jt = /* @__PURE__ */ N(Ht, [["render", Gt]]), Kt = { class: "flex items-ce
228
228
  l("div", {
229
229
  class: M(["h-[16px] text-white w-[16px] flex items-center justify-center shrink-0 border rounded", [s.value ? "bg-blue-600 border-blue-600" : "bg-white border-gray-600", r.error ? "border-red-600" : ""]])
230
230
  }, [
231
- j(Jt, {
231
+ j(Wt, {
232
232
  height: "12",
233
233
  width: "12"
234
234
  })
235
235
  ], 2),
236
- l("span", Qt, [
236
+ l("span", el, [
237
237
  $e(r.$slots, "default", {}, () => [
238
- ce(T(r.label), 1)
238
+ pe(T(r.label), 1)
239
239
  ])
240
240
  ])
241
- ], 10, Wt)
241
+ ], 10, Yt)
242
242
  ]));
243
243
  }
244
- }), Yt = ["name", "value", "disabled"], el = { class: "flex items-center gap-[6px] text-[14px]" }, tl = {
244
+ }), ll = ["name", "value", "disabled"], ol = { class: "flex items-center gap-[6px] text-[14px]" }, al = {
245
245
  key: 0,
246
246
  class: "text-[16px]"
247
- }, ll = ["src"], ol = /* @__PURE__ */ A({
247
+ }, sl = ["src"], nl = /* @__PURE__ */ F({
248
248
  __name: "vs-checkbox-buttons",
249
249
  props: {
250
250
  value: { type: [String, Number, Boolean], default: "" },
@@ -258,12 +258,12 @@ const Jt = /* @__PURE__ */ N(Ht, [["render", Gt]]), Kt = { class: "flex items-ce
258
258
  },
259
259
  emits: ["update:modelValue"],
260
260
  setup(o, { emit: e }) {
261
- const t = o, n = e, s = D({
261
+ const t = o, n = e, s = O({
262
262
  get: () => t.modelValue,
263
263
  set: (u) => {
264
264
  n("update:modelValue", u);
265
265
  }
266
- }), r = D(() => Array.isArray(s.value) ? s.value.includes(t.value) : s.value === !0 || s.value === t.value), a = D(() => t.style?.size === "xs" ? "p-1.5 text-xs" : t.style?.size === "lg" ? "p-3.5 text-[20px]" : "p-2.5 text-xs");
266
+ }), r = O(() => Array.isArray(s.value) ? s.value.includes(t.value) : s.value === !0 || s.value === t.value), a = O(() => t.style?.size === "xs" ? "p-1.5 text-xs" : t.style?.size === "lg" ? "p-3.5 text-[20px]" : "p-2.5 text-xs");
267
267
  return (u, c) => (i(), d("label", {
268
268
  class: M(["group relative flex justify-center items-center gap-x-3 text-center bg-white text-gray-800 ring-ring ring-2 cursor-pointer rounded-lg", [a.value, r.value ? "ring-blue-500" : "border border-gray-200 ring-transparent"]])
269
269
  }, [
@@ -274,30 +274,30 @@ const Jt = /* @__PURE__ */ N(Ht, [["render", Gt]]), Kt = { class: "flex items-ce
274
274
  value: u.value,
275
275
  "onUpdate:modelValue": c[0] || (c[0] = (v) => s.value = v),
276
276
  disabled: u.disabled
277
- }, null, 8, Yt), [
278
- [st, s.value]
277
+ }, null, 8, ll), [
278
+ [ut, s.value]
279
279
  ]),
280
- l("span", el, [
281
- u.icon || u.imgUrl ? (i(), d("span", tl, [
280
+ l("span", ol, [
281
+ u.icon || u.imgUrl ? (i(), d("span", al, [
282
282
  u.icon ? (i(), d("i", {
283
283
  key: 0,
284
284
  class: M(u.icon)
285
- }, null, 2)) : F("", !0),
285
+ }, null, 2)) : A("", !0),
286
286
  u.imgUrl ? (i(), d("img", {
287
287
  key: 1,
288
288
  src: u.imgUrl,
289
289
  width: "16",
290
290
  height: "16",
291
291
  alt: "icon"
292
- }, null, 8, ll)) : F("", !0)
293
- ])) : F("", !0),
292
+ }, null, 8, sl)) : A("", !0)
293
+ ])) : A("", !0),
294
294
  $e(u.$slots, "default", {}, () => [
295
- ce(T(u.label), 1)
295
+ pe(T(u.label), 1)
296
296
  ])
297
297
  ])
298
298
  ], 2));
299
299
  }
300
- }), al = { class: "flex items-center" }, it = /* @__PURE__ */ A({
300
+ }), rl = { class: "flex items-center" }, pt = /* @__PURE__ */ F({
301
301
  __name: "vs-input-checkbox-item",
302
302
  props: {
303
303
  value: { default: "" },
@@ -314,7 +314,7 @@ const Jt = /* @__PURE__ */ N(Ht, [["render", Gt]]), Kt = { class: "flex items-ce
314
314
  },
315
315
  emits: ["update:modelValue"],
316
316
  setup(o, { emit: e }) {
317
- const t = o, n = e, s = `radio-${Math.floor(Math.random() * 1e4)}`, r = D({
317
+ const t = o, n = e, s = `radio-${Math.floor(Math.random() * 1e4)}`, r = O({
318
318
  get: () => Array.isArray(t.modelValue) ? Array.isArray(t.modelValue) && t.modelValue.includes(t.value) : t.modelValue,
319
319
  set: (u) => {
320
320
  if (Array.isArray(t.modelValue)) {
@@ -324,8 +324,8 @@ const Jt = /* @__PURE__ */ N(Ht, [["render", Gt]]), Kt = { class: "flex items-ce
324
324
  n("update:modelValue", u);
325
325
  }
326
326
  }), a = w(`vs-checkbox-${t.view || "default"}`);
327
- return (u, c) => (i(), d("div", al, [
328
- (i(), ae(Be(a.value === "vs-checkbox-buttons" ? q(ol) : q(Xt)), {
327
+ return (u, c) => (i(), d("div", rl, [
328
+ (i(), ae(Se(a.value === "vs-checkbox-buttons" ? q(nl) : q(tl)), {
329
329
  value: u.value,
330
330
  label: u.label,
331
331
  info: u.option?.info,
@@ -335,17 +335,17 @@ const Jt = /* @__PURE__ */ N(Ht, [["render", Gt]]), Kt = { class: "flex items-ce
335
335
  id: s,
336
336
  icon: u.icon,
337
337
  imgUrl: u.imgUrl,
338
- style: ke(u.style),
338
+ style: ge(u.style),
339
339
  error: u.error
340
340
  }, {
341
- default: je(() => [
342
- ce(T(u.label), 1)
341
+ default: Be(() => [
342
+ pe(T(u.label), 1)
343
343
  ]),
344
344
  _: 1
345
345
  }, 8, ["value", "label", "info", "disabled", "modelValue", "icon", "imgUrl", "style", "error"]))
346
346
  ]));
347
347
  }
348
- }), sl = {}, nl = {
348
+ }), il = {}, ul = {
349
349
  xmlns: "http://www.w3.org/2000/svg",
350
350
  viewBox: "0 0 24 24",
351
351
  fill: "none",
@@ -355,8 +355,8 @@ const Jt = /* @__PURE__ */ N(Ht, [["render", Gt]]), Kt = { class: "flex items-ce
355
355
  "stroke-linejoin": "round",
356
356
  class: "icon icon-tabler icons-tabler-outline icon-tabler-chevron-down"
357
357
  };
358
- function rl(o, e) {
359
- return i(), d("svg", nl, e[0] || (e[0] = [
358
+ function dl(o, e) {
359
+ return i(), d("svg", ul, e[0] || (e[0] = [
360
360
  l("path", {
361
361
  stroke: "none",
362
362
  d: "M0 0h24v24H0z",
@@ -365,7 +365,7 @@ function rl(o, e) {
365
365
  l("path", { d: "M6 9l6 6l6 -6" }, null, -1)
366
366
  ]));
367
367
  }
368
- const il = /* @__PURE__ */ N(sl, [["render", rl]]), ul = {}, dl = {
368
+ const cl = /* @__PURE__ */ H(il, [["render", dl]]), pl = {}, fl = {
369
369
  xmlns: "http://www.w3.org/2000/svg",
370
370
  viewBox: "0 0 24 24",
371
371
  fill: "none",
@@ -375,8 +375,8 @@ const il = /* @__PURE__ */ N(sl, [["render", rl]]), ul = {}, dl = {
375
375
  "stroke-linejoin": "round",
376
376
  class: "icon icon-tabler icons-tabler-outline icon-tabler-x"
377
377
  };
378
- function cl(o, e) {
379
- return i(), d("svg", dl, e[0] || (e[0] = [
378
+ function vl(o, e) {
379
+ return i(), d("svg", fl, e[0] || (e[0] = [
380
380
  l("path", {
381
381
  stroke: "none",
382
382
  d: "M0 0h24v24H0z",
@@ -386,7 +386,7 @@ function cl(o, e) {
386
386
  l("path", { d: "M6 6l12 12" }, null, -1)
387
387
  ]));
388
388
  }
389
- const pl = /* @__PURE__ */ N(ul, [["render", cl]]), fl = {}, vl = {
389
+ const ml = /* @__PURE__ */ H(pl, [["render", vl]]), hl = {}, gl = {
390
390
  xmlns: "http://www.w3.org/2000/svg",
391
391
  width: "24",
392
392
  height: "24",
@@ -397,8 +397,8 @@ const pl = /* @__PURE__ */ N(ul, [["render", cl]]), fl = {}, vl = {
397
397
  "stroke-linecap": "round",
398
398
  "stroke-linejoin": "round"
399
399
  };
400
- function ml(o, e) {
401
- return i(), d("svg", vl, e[0] || (e[0] = [
400
+ function bl(o, e) {
401
+ return i(), d("svg", gl, e[0] || (e[0] = [
402
402
  l("path", {
403
403
  stroke: "none",
404
404
  d: "M0 0h24v24H0z",
@@ -409,13 +409,13 @@ function ml(o, e) {
409
409
  l("path", { d: "M12 3c7.2 0 9 1.8 9 9s-1.8 9 -9 9s-9 -1.8 -9 -9s1.8 -9 9 -9z" }, null, -1)
410
410
  ]));
411
411
  }
412
- const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
412
+ const yl = /* @__PURE__ */ H(hl, [["render", bl]]), xl = {
413
413
  key: 0,
414
414
  class: "flex items-start gap-x-1"
415
- }, bl = {
415
+ }, wl = {
416
416
  key: 0,
417
417
  class: "text-red-500 text-[14px]"
418
- }, yl = ["title"], xl = ["disabled"], ut = /* @__PURE__ */ A({
418
+ }, kl = ["title"], _l = ["disabled"], ft = /* @__PURE__ */ F({
419
419
  __name: "vs-input-switcher",
420
420
  props: /* @__PURE__ */ Q({
421
421
  rules: { default: () => [] },
@@ -437,14 +437,14 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
437
437
  emits: ["update:modelValue"],
438
438
  setup(o) {
439
439
  const e = o, t = X(o, "modelValue");
440
- return (n, s) => e.view === "checkbox" ? (i(), d("div", gl, [
441
- j(it, {
440
+ return (n, s) => e.view === "checkbox" ? (i(), d("div", xl, [
441
+ j(pt, {
442
442
  modelValue: t.value,
443
443
  "onUpdate:modelValue": s[0] || (s[0] = (r) => t.value = r),
444
444
  label: n.text,
445
445
  error: n.error || ""
446
446
  }, null, 8, ["modelValue", "label", "error"]),
447
- n.rules?.includes("required") ? (i(), d("span", bl, "*")) : F("", !0),
447
+ n.rules?.includes("required") ? (i(), d("span", wl, "*")) : A("", !0),
448
448
  n.i ? (i(), d("button", {
449
449
  key: 1,
450
450
  class: "cursor-pointer",
@@ -452,8 +452,8 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
452
452
  onClick: s[1] || (s[1] = ve(() => {
453
453
  }, ["prevent"]))
454
454
  }, [
455
- j(q(hl), { class: "text-gray-500 w-[14px] h-[14px]" })
456
- ], 8, yl)) : F("", !0)
455
+ j(q(yl), { class: "text-gray-500 w-[14px] h-[14px]" })
456
+ ], 8, kl)) : A("", !0)
457
457
  ])) : (i(), d("button", {
458
458
  key: 1,
459
459
  type: "button",
@@ -465,9 +465,9 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
465
465
  "data-state": "checked",
466
466
  class: M(["pointer-events-none block h-4 w-4 rounded-full bg-white shadow-lg ring-0 transition-transform", [t.value ? "translate-x-4" : "translate-x-0"]])
467
467
  }, null, 2)
468
- ], 10, xl));
468
+ ], 10, _l));
469
469
  }
470
- }), wl = ["innerHTML"], Ye = /* @__PURE__ */ A({
470
+ }), $l = ["innerHTML"], ot = /* @__PURE__ */ F({
471
471
  __name: "vs-input-static",
472
472
  props: {
473
473
  text: { default: "" },
@@ -484,9 +484,9 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
484
484
  return (e, t) => (i(), d("div", {
485
485
  class: M(e.customClass),
486
486
  innerHTML: e.html ? e.html : e.text
487
- }, null, 10, wl));
487
+ }, null, 10, $l));
488
488
  }
489
- }), kl = ["placeholder", "disabled", "name"], _l = /* @__PURE__ */ A({
489
+ }), Cl = ["placeholder", "disabled", "name"], Vl = /* @__PURE__ */ F({
490
490
  __name: "vs-input-mask",
491
491
  props: /* @__PURE__ */ Q({
492
492
  name: {},
@@ -504,9 +504,9 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
504
504
  }),
505
505
  emits: ["update:modelValue"],
506
506
  setup(o) {
507
- const e = o, { inputClass: t } = be(e.style), n = X(o, "modelValue"), s = w(null);
507
+ const e = o, { inputClass: t } = ye(e.style), n = X(o, "modelValue"), s = w(null);
508
508
  let r = null;
509
- return ge(async () => {
509
+ return be(async () => {
510
510
  if (s.value) {
511
511
  const { default: a } = await import("./index-W-qQIppj.js");
512
512
  r = a(s.value, {
@@ -523,7 +523,7 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
523
523
  n.value = e.unmask ? r.unmaskedValue : r.value;
524
524
  }), r.value = n.value ?? "";
525
525
  }
526
- }), xt(() => {
526
+ }), _t(() => {
527
527
  r?.destroy();
528
528
  }), te(() => e.mask, (a) => {
529
529
  r && r.updateOptions({
@@ -547,9 +547,9 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
547
547
  style: {
548
548
  border: "1px solid #CFD9E0"
549
549
  }
550
- }, null, 10, kl));
550
+ }, null, 10, Cl));
551
551
  }
552
- }), $l = { class: "relative w-full bg-white rounded-lg" }, Cl = ["placeholder", "disabled"], Vl = /* @__PURE__ */ A({
552
+ }), Ml = { class: "relative w-full bg-white rounded-lg" }, Ll = ["placeholder", "disabled"], Sl = /* @__PURE__ */ F({
553
553
  __name: "vs-input-email",
554
554
  props: /* @__PURE__ */ Q({
555
555
  style: { default: () => ({}) },
@@ -565,9 +565,9 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
565
565
  }),
566
566
  emits: ["update:modelValue"],
567
567
  setup(o) {
568
- const e = o, { inputClass: t } = be(e.style), n = X(o, "modelValue");
569
- return (s, r) => (i(), d("div", $l, [
570
- r[1] || (r[1] = ue('<div class="absolute bottom-2/4 translate-y-2/4 left-[10px] cursor-pointer"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="stroke-gray-500 transition-all"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M3 7a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-10z"></path><path d="M3 7l9 6l9 -6"></path></svg></div>', 1)),
568
+ const e = o, { inputClass: t } = ye(e.style), n = X(o, "modelValue");
569
+ return (s, r) => (i(), d("div", Ml, [
570
+ r[1] || (r[1] = de('<div class="absolute bottom-2/4 translate-y-2/4 left-[10px] cursor-pointer"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="stroke-gray-500 transition-all"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M3 7a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-10z"></path><path d="M3 7l9 6l9 -6"></path></svg></div>', 1)),
571
571
  K(l("input", {
572
572
  type: "email",
573
573
  "onUpdate:modelValue": r[0] || (r[0] = (a) => n.value = a),
@@ -577,12 +577,12 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
577
577
  style: {
578
578
  border: "1px solid #CFD9E0"
579
579
  }
580
- }, null, 10, Cl), [
581
- [ne, n.value]
580
+ }, null, 10, Ll), [
581
+ [re, n.value]
582
582
  ])
583
583
  ]));
584
584
  }
585
- }), Ml = ["value", "disabled"], Ll = { class: "text-[13px] text-gray-700" }, Sl = /* @__PURE__ */ A({
585
+ }), Bl = ["value", "disabled"], jl = { class: "text-[13px] text-gray-700" }, Il = /* @__PURE__ */ F({
586
586
  __name: "vs-input-radio-default",
587
587
  props: /* @__PURE__ */ Q({
588
588
  style: {},
@@ -610,8 +610,8 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
610
610
  value: t.value,
611
611
  disabled: t.disabled,
612
612
  class: "hidden"
613
- }, null, 8, Ml), [
614
- [nt, e.value]
613
+ }, null, 8, Bl), [
614
+ [dt, e.value]
615
615
  ]),
616
616
  l("span", {
617
617
  class: M(["w-[16px] shrink-0 h-[16px] border rounded-full flex items-center justify-center mr-[10px]", [
@@ -622,12 +622,12 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
622
622
  e.value == t.value ? (i(), d("span", {
623
623
  key: 0,
624
624
  class: M(["w-[12px] h-[12px] shrink-0 rounded-full", [`bg-${t.style?.primaryColor || "blue"}-500`]])
625
- }, null, 2)) : F("", !0)
625
+ }, null, 2)) : A("", !0)
626
626
  ], 2),
627
- l("span", Ll, T(t.text), 1)
627
+ l("span", jl, T(t.text), 1)
628
628
  ], 2));
629
629
  }
630
- }), Bl = ["value", "disabled"], jl = { class: "text-[13px] text-gray-700" }, Il = /* @__PURE__ */ A({
630
+ }), zl = ["value", "disabled"], El = { class: "text-[13px] text-gray-700" }, Al = /* @__PURE__ */ F({
631
631
  __name: "vs-input-radio-buttons",
632
632
  props: /* @__PURE__ */ Q({
633
633
  style: {},
@@ -658,16 +658,16 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
658
658
  value: t.value,
659
659
  disabled: t.disabled,
660
660
  class: "hidden"
661
- }, null, 8, Bl), [
662
- [nt, e.value]
661
+ }, null, 8, zl), [
662
+ [dt, e.value]
663
663
  ]),
664
- l("span", jl, T(t.text), 1)
664
+ l("span", El, T(t.text), 1)
665
665
  ], 2));
666
666
  }
667
- }), zl = {
668
- "vs-input-radio-default": Sl,
669
- "vs-input-radio-buttons": Il
670
- }, et = /* @__PURE__ */ A({
667
+ }), Fl = {
668
+ "vs-input-radio-default": Il,
669
+ "vs-input-radio-buttons": Al
670
+ }, at = /* @__PURE__ */ F({
671
671
  __name: "vs-input-radio",
672
672
  props: /* @__PURE__ */ Q({
673
673
  options: {},
@@ -686,11 +686,11 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
686
686
  }),
687
687
  emits: ["update:modelValue"],
688
688
  setup(o) {
689
- const e = o, t = X(o, "modelValue"), n = D(() => zl[`vs-input-radio-${e.view}`]);
689
+ const e = o, t = X(o, "modelValue"), n = O(() => Fl[`vs-input-radio-${e.view}`]);
690
690
  return (s, r) => (i(), d("div", {
691
691
  class: M([s.position === "horizontal" ? "flex items-center flex-wrap gap-2" : ""])
692
692
  }, [
693
- (i(!0), d(Y, null, le(s.options, (a) => (i(), ae(Be(n.value), Ee({
693
+ (i(!0), d(Y, null, le(s.options, (a) => (i(), ae(Se(n.value), Ee({
694
694
  key: a?.id,
695
695
  text: a.text,
696
696
  value: a.id.toString(),
@@ -700,7 +700,7 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
700
700
  }, { ref_for: !0 }, s.$attrs), null, 16, ["text", "value", "checked", "modelValue"]))), 128))
701
701
  ], 2));
702
702
  }
703
- }), El = /* @__PURE__ */ A({
703
+ }), Dl = /* @__PURE__ */ F({
704
704
  __name: "vs-input-checkbox",
705
705
  props: {
706
706
  options: { default: () => [] },
@@ -719,7 +719,7 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
719
719
  },
720
720
  emits: ["update:modelValue"],
721
721
  setup(o, { emit: e }) {
722
- const t = o, n = e, s = w([]), r = wt({}), a = (p) => p?.value || p?.id || p?.text || p, u = (p) => p.text || String(p), c = (p) => `lg:col-span-${p || 12}`, v = async () => {
722
+ const t = o, n = e, s = w([]), r = $t({}), a = (p) => p?.value || p?.id || p?.text || p, u = (p) => p.text || String(p), c = (p) => `lg:col-span-${p || 12}`, v = async () => {
723
723
  try {
724
724
  const p = await fetch(`/api/suggest/${t.data}`).then((x) => x.json());
725
725
  s.value = p?.data || p;
@@ -755,7 +755,7 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
755
755
  n("update:modelValue", p.length === 0 ? [] : p);
756
756
  },
757
757
  { deep: !0 }
758
- ), ge(() => {
758
+ ), be(() => {
759
759
  if (t.data)
760
760
  v().then(() => {
761
761
  if (typeof t.modelValue == "boolean" && s.value.length === 1) {
@@ -786,7 +786,7 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
786
786
  }), (p, x) => (i(), d("div", {
787
787
  class: M(["p-0 w-full gap-[6px]", [p.position === "vertical" ? "flex-col" : "", p.colSpan ? "grid" : "flex justify-start"]])
788
788
  }, [
789
- (i(!0), d(Y, null, le(s.value, (g) => (i(), ae(it, {
789
+ (i(!0), d(Y, null, le(s.value, (g) => (i(), ae(pt, {
790
790
  modelValue: r[a(g)],
791
791
  "onUpdate:modelValue": (_) => r[a(g)] = _,
792
792
  value: a(g),
@@ -801,7 +801,7 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
801
801
  }, null, 8, ["modelValue", "onUpdate:modelValue", "value", "class", "disabled", "label", "icon", "imgUrl", "option", "view"]))), 128))
802
802
  ], 2));
803
803
  }
804
- }), Fl = /* @__PURE__ */ N(El, [["__scopeId", "data-v-91f3584a"]]), Al = ["type", "placeholder", "disabled"], Ol = /* @__PURE__ */ A({
804
+ }), Ol = /* @__PURE__ */ H(Dl, [["__scopeId", "data-v-91f3584a"]]), Ul = ["type", "placeholder", "disabled"], Tl = /* @__PURE__ */ F({
805
805
  __name: "vs-input-date1",
806
806
  props: {
807
807
  style: { default: () => ({}) },
@@ -817,10 +817,10 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
817
817
  setup(o, { emit: e }) {
818
818
  const t = o;
819
819
  console.log(t.mode);
820
- const { inputClass: n } = be(t.style), s = e, r = D({
820
+ const { inputClass: n } = ye(t.style), s = e, r = O({
821
821
  get: () => t.modelValue?.split(" ")[0],
822
822
  set: (u) => s("update:modelValue", u)
823
- }), a = D(() => t.mode === "datetime" ? "datetime-local" : t.mode);
823
+ }), a = O(() => t.mode === "datetime" ? "datetime-local" : t.mode);
824
824
  return (u, c) => K((i(), d("input", {
825
825
  type: a.value,
826
826
  "onUpdate:modelValue": c[0] || (c[0] = (v) => r.value = v),
@@ -831,11 +831,11 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
831
831
  style: {
832
832
  border: "1px solid #CFD9E0"
833
833
  }
834
- }, null, 10, Al)), [
835
- [kt, r.value]
834
+ }, null, 10, Ul)), [
835
+ [Ct, r.value]
836
836
  ]);
837
837
  }
838
- }), Dl = async (o, e, t, n) => {
838
+ }), Rl = async (o, e, t, n) => {
839
839
  try {
840
840
  const s = new FormData();
841
841
  return s.append("unique", "true"), s.append("file", o), (await fetch(
@@ -846,27 +846,27 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
846
846
  }
847
847
  ).then((a) => a.json()))?.result;
848
848
  } catch (s) {
849
- return we({
849
+ return ke({
850
850
  type: "error",
851
851
  title: "Помилка!",
852
852
  message: "Сталась помилка під час завантаження файлу",
853
853
  position: "right-bottom"
854
854
  }), console.error("Сталась помилка завантаження файлу", s), null;
855
855
  }
856
- }, Ul = async (o) => {
856
+ }, Pl = async (o) => {
857
857
  try {
858
858
  return await fetch(`file/delete${o}`), !0;
859
859
  } catch (e) {
860
860
  return console.error(e), !1;
861
861
  }
862
- }, tt = async (o) => {
862
+ }, st = async (o) => {
863
863
  try {
864
864
  const e = await fetch(`file/download/files/uploads${o}`), t = await e.arrayBuffer(), n = e.headers["content-type"], s = new TextDecoder("utf-8").decode(t), r = new Blob([s], { type: n }), a = document.createElement("a");
865
865
  a.setAttribute("download", o), a.href = window.URL.createObjectURL(r), a.click();
866
866
  } catch (e) {
867
867
  console.error(e.message);
868
868
  }
869
- }, Tl = {}, Rl = {
869
+ }, Hl = {}, Nl = {
870
870
  xmlns: "http://www.w3.org/2000/svg",
871
871
  width: "24",
872
872
  height: "24",
@@ -877,13 +877,13 @@ const hl = /* @__PURE__ */ N(fl, [["render", ml]]), gl = {
877
877
  "stroke-linecap": "round",
878
878
  "stroke-linejoin": "round"
879
879
  };
880
- function Pl(o, e) {
881
- return i(), d("svg", Rl, e[0] || (e[0] = [
880
+ function ql(o, e) {
881
+ return i(), d("svg", Nl, e[0] || (e[0] = [
882
882
  l("path", { d: "M5 12h14" }, null, -1),
883
883
  l("path", { d: "M12 5v14" }, null, -1)
884
884
  ]));
885
885
  }
886
- const Fe = /* @__PURE__ */ N(Tl, [["render", Pl]]), Nl = {}, Hl = {
886
+ const Ae = /* @__PURE__ */ H(Hl, [["render", ql]]), Gl = {}, Jl = {
887
887
  xmlns: "http://www.w3.org/2000/svg",
888
888
  class: "icon icon-tabler icon-tabler-file-text",
889
889
  width: "44",
@@ -895,12 +895,12 @@ const Fe = /* @__PURE__ */ N(Tl, [["render", Pl]]), Nl = {}, Hl = {
895
895
  "stroke-linecap": "round",
896
896
  "stroke-linejoin": "round"
897
897
  };
898
- function ql(o, e, t, n, s, r) {
899
- return i(), d("svg", Hl, e[0] || (e[0] = [
900
- ue('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path><line x1="9" y1="9" x2="10" y2="9"></line><line x1="9" y1="13" x2="15" y2="13"></line><line x1="9" y1="17" x2="15" y2="17"></line>', 6)
898
+ function Kl(o, e, t, n, s, r) {
899
+ return i(), d("svg", Jl, e[0] || (e[0] = [
900
+ de('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path><line x1="9" y1="9" x2="10" y2="9"></line><line x1="9" y1="13" x2="15" y2="13"></line><line x1="9" y1="17" x2="15" y2="17"></line>', 6)
901
901
  ]));
902
902
  }
903
- const Gl = /* @__PURE__ */ N(Nl, [["render", ql]]), Jl = {}, Kl = {
903
+ const Zl = /* @__PURE__ */ H(Gl, [["render", Kl]]), Wl = {}, Ql = {
904
904
  xmlns: "http://www.w3.org/2000/svg",
905
905
  class: "icon icon-tabler icon-tabler-table",
906
906
  width: "44",
@@ -912,8 +912,8 @@ const Gl = /* @__PURE__ */ N(Nl, [["render", ql]]), Jl = {}, Kl = {
912
912
  "stroke-linecap": "round",
913
913
  "stroke-linejoin": "round"
914
914
  };
915
- function Zl(o, e, t, n, s, r) {
916
- return i(), d("svg", Kl, e[0] || (e[0] = [
915
+ function Xl(o, e, t, n, s, r) {
916
+ return i(), d("svg", Ql, e[0] || (e[0] = [
917
917
  l("path", {
918
918
  stroke: "none",
919
919
  d: "M0 0h24v24H0z",
@@ -940,7 +940,7 @@ function Zl(o, e, t, n, s, r) {
940
940
  }, null, -1)
941
941
  ]));
942
942
  }
943
- const Wl = /* @__PURE__ */ N(Jl, [["render", Zl]]), Ql = {}, Xl = {
943
+ const Yl = /* @__PURE__ */ H(Wl, [["render", Xl]]), eo = {}, to = {
944
944
  xmlns: "http://www.w3.org/2000/svg",
945
945
  width: "24",
946
946
  height: "24",
@@ -952,12 +952,12 @@ const Wl = /* @__PURE__ */ N(Jl, [["render", Zl]]), Ql = {}, Xl = {
952
952
  "stroke-linejoin": "round",
953
953
  class: "icon icon-tabler icons-tabler-outline icon-tabler-file-unknown"
954
954
  };
955
- function Yl(o, e, t, n, s, r) {
956
- return i(), d("svg", Xl, e[0] || (e[0] = [
957
- ue('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path><path d="M12 17v.01"></path><path d="M12 14a1.5 1.5 0 1 0 -1.14 -2.474"></path>', 5)
955
+ function lo(o, e, t, n, s, r) {
956
+ return i(), d("svg", to, e[0] || (e[0] = [
957
+ de('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path><path d="M12 17v.01"></path><path d="M12 14a1.5 1.5 0 1 0 -1.14 -2.474"></path>', 5)
958
958
  ]));
959
959
  }
960
- const eo = /* @__PURE__ */ N(Ql, [["render", Yl]]), to = {}, lo = {
960
+ const oo = /* @__PURE__ */ H(eo, [["render", lo]]), ao = {}, so = {
961
961
  xmlns: "http://www.w3.org/2000/svg",
962
962
  class: "icon icon-tabler icon-tabler-file-zip",
963
963
  width: "44",
@@ -969,12 +969,12 @@ const eo = /* @__PURE__ */ N(Ql, [["render", Yl]]), to = {}, lo = {
969
969
  "stroke-linecap": "round",
970
970
  "stroke-linejoin": "round"
971
971
  };
972
- function oo(o, e, t, n, s, r) {
973
- return i(), d("svg", lo, e[0] || (e[0] = [
974
- ue('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M6 20.735a2 2 0 0 1 -1 -1.735v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2h-1"></path><path d="M11 17a2 2 0 0 1 2 2v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1v-2a2 2 0 0 1 2 -2z"></path><line x1="11" y1="5" x2="10" y2="5"></line><line x1="13" y1="7" x2="12" y2="7"></line><line x1="11" y1="9" x2="10" y2="9"></line><line x1="13" y1="11" x2="12" y2="11"></line><line x1="11" y1="13" x2="10" y2="13"></line><line x1="13" y1="15" x2="12" y2="15"></line>', 9)
972
+ function no(o, e, t, n, s, r) {
973
+ return i(), d("svg", so, e[0] || (e[0] = [
974
+ de('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M6 20.735a2 2 0 0 1 -1 -1.735v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2h-1"></path><path d="M11 17a2 2 0 0 1 2 2v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1v-2a2 2 0 0 1 2 -2z"></path><line x1="11" y1="5" x2="10" y2="5"></line><line x1="13" y1="7" x2="12" y2="7"></line><line x1="11" y1="9" x2="10" y2="9"></line><line x1="13" y1="11" x2="12" y2="11"></line><line x1="11" y1="13" x2="10" y2="13"></line><line x1="13" y1="15" x2="12" y2="15"></line>', 9)
975
975
  ]));
976
976
  }
977
- const ao = /* @__PURE__ */ N(to, [["render", oo]]), so = {}, no = {
977
+ const ro = /* @__PURE__ */ H(ao, [["render", no]]), io = {}, uo = {
978
978
  xmlns: "http://www.w3.org/2000/svg",
979
979
  class: "icon icon-tabler icon-tabler-file-code",
980
980
  width: "44",
@@ -986,25 +986,25 @@ const ao = /* @__PURE__ */ N(to, [["render", oo]]), so = {}, no = {
986
986
  "stroke-linecap": "round",
987
987
  "stroke-linejoin": "round"
988
988
  };
989
- function ro(o, e, t, n, s, r) {
990
- return i(), d("svg", no, e[0] || (e[0] = [
991
- ue('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path><path d="M10 13l-1 2l1 2"></path><path d="M14 13l1 2l-1 2"></path>', 5)
989
+ function co(o, e, t, n, s, r) {
990
+ return i(), d("svg", uo, e[0] || (e[0] = [
991
+ de('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path><path d="M10 13l-1 2l1 2"></path><path d="M14 13l1 2l-1 2"></path>', 5)
992
992
  ]));
993
993
  }
994
- const io = /* @__PURE__ */ N(so, [["render", ro]]), uo = (o) => {
994
+ const po = /* @__PURE__ */ H(io, [["render", co]]), fo = (o) => {
995
995
  if (!o) return "";
996
996
  const e = o?.split(".");
997
997
  return e[e.length - 1];
998
- }, co = (o) => {
999
- const e = uo(o), t = {
998
+ }, vo = (o) => {
999
+ const e = fo(o), t = {
1000
1000
  imageFormat: ["tiff", "jpg", "jpeg", "png", "svg", "ico", "webp"],
1001
1001
  sheetsFormat: ["xls", "csv", "xlsx"],
1002
1002
  archivesFormat: ["zip", "rar"],
1003
1003
  textsFormat: ["json", "geojson", "txt", "yml", "yaml", "shp"],
1004
1004
  documentsFormat: ["pdf"]
1005
1005
  };
1006
- return t.imageFormat.includes(e) ? "img" : t.sheetsFormat.includes(e) ? Wl : t.textsFormat.includes(e) ? io : t.documentsFormat.includes(e) ? Gl : t.archivesFormat.includes(e) ? ao : eo;
1007
- }, po = {}, fo = {
1006
+ return t.imageFormat.includes(e) ? "img" : t.sheetsFormat.includes(e) ? Yl : t.textsFormat.includes(e) ? po : t.documentsFormat.includes(e) ? Zl : t.archivesFormat.includes(e) ? ro : oo;
1007
+ }, mo = {}, ho = {
1008
1008
  xmlns: "http://www.w3.org/2000/svg",
1009
1009
  width: "24",
1010
1010
  height: "24",
@@ -1016,12 +1016,12 @@ const io = /* @__PURE__ */ N(so, [["render", ro]]), uo = (o) => {
1016
1016
  "stroke-linejoin": "round",
1017
1017
  class: "icon icon-tabler icons-tabler-outline icon-tabler-trash"
1018
1018
  };
1019
- function vo(o, e) {
1020
- return i(), d("svg", fo, e[0] || (e[0] = [
1021
- ue('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M4 7l16 0"></path><path d="M10 11l0 6"></path><path d="M14 11l0 6"></path><path d="M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2 -2l1 -12"></path><path d="M9 7v-3a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v3"></path>', 6)
1019
+ function go(o, e) {
1020
+ return i(), d("svg", ho, e[0] || (e[0] = [
1021
+ de('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M4 7l16 0"></path><path d="M10 11l0 6"></path><path d="M14 11l0 6"></path><path d="M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2 -2l1 -12"></path><path d="M9 7v-3a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v3"></path>', 6)
1022
1022
  ]));
1023
1023
  }
1024
- const Ue = /* @__PURE__ */ N(po, [["render", vo]]), mo = {}, ho = {
1024
+ const Ue = /* @__PURE__ */ H(mo, [["render", go]]), bo = {}, yo = {
1025
1025
  xmlns: "http://www.w3.org/2000/svg",
1026
1026
  width: "24",
1027
1027
  height: "24",
@@ -1033,8 +1033,8 @@ const Ue = /* @__PURE__ */ N(po, [["render", vo]]), mo = {}, ho = {
1033
1033
  "stroke-linejoin": "round",
1034
1034
  class: "icon icon-tabler icons-tabler-outline icon-tabler-download"
1035
1035
  };
1036
- function go(o, e) {
1037
- return i(), d("svg", ho, e[0] || (e[0] = [
1036
+ function xo(o, e) {
1037
+ return i(), d("svg", yo, e[0] || (e[0] = [
1038
1038
  l("path", {
1039
1039
  stroke: "none",
1040
1040
  d: "M0 0h24v24H0z",
@@ -1045,7 +1045,7 @@ function go(o, e) {
1045
1045
  l("path", { d: "M12 4l0 12" }, null, -1)
1046
1046
  ]));
1047
1047
  }
1048
- const dt = /* @__PURE__ */ N(mo, [["render", go]]), bo = { class: "h-[120px] w-[120px] border text-gray-300 border-dashed border-[#CFD9E0] rounded-lg overflow-hidden relative item-file" }, yo = { class: "absolute hidden top-0 right-0 flex items-center gap-x-2 w-full h-full justify-center" }, xo = /* @__PURE__ */ A({
1048
+ const vt = /* @__PURE__ */ H(bo, [["render", xo]]), wo = { class: "h-[120px] w-[120px] border text-gray-300 border-dashed border-[#CFD9E0] rounded-lg overflow-hidden relative item-file" }, ko = { class: "absolute hidden top-0 right-0 flex items-center gap-x-2 w-full h-full justify-center" }, _o = /* @__PURE__ */ F({
1049
1049
  __name: "vs-input-file-list-item",
1050
1050
  props: /* @__PURE__ */ Q({
1051
1051
  format: {},
@@ -1066,18 +1066,18 @@ const dt = /* @__PURE__ */ N(mo, [["render", go]]), bo = { class: "h-[120px] w-[
1066
1066
  emits: ["update:value", "update:item"],
1067
1067
  setup(o) {
1068
1068
  const e = X(o, "value"), t = X(o, "item"), n = o;
1069
- return (s, r) => (i(), d("div", bo, [
1070
- (i(), ae(Be(q(co)(t.value)), {
1069
+ return (s, r) => (i(), d("div", wo, [
1070
+ (i(), ae(Se(q(vo)(t.value)), {
1071
1071
  src: t.value,
1072
1072
  alt: "file",
1073
1073
  class: "w-full h-full object-cover cursor-pointer",
1074
- onClick: r[0] || (r[0] = (a) => q(tt)(t.value))
1074
+ onClick: r[0] || (r[0] = (a) => q(st)(t.value))
1075
1075
  }, null, 8, ["src"])),
1076
- l("div", yo, [
1076
+ l("div", ko, [
1077
1077
  l("button", {
1078
1078
  type: "button",
1079
1079
  onClick: r[1] || (r[1] = (a) => {
1080
- q(Ul)(t.value), e.value = n.multiple ? e.value?.filter((u) => u !== t.value) : "";
1080
+ q(Pl)(t.value), e.value = n.multiple ? e.value?.filter((u) => u !== t.value) : "";
1081
1081
  }),
1082
1082
  class: "w-6 h-6 flex items-center justify-center text-gray-500 bg-gray-200 rounded-lg hover:text-red-500"
1083
1083
  }, [
@@ -1085,18 +1085,18 @@ const dt = /* @__PURE__ */ N(mo, [["render", go]]), bo = { class: "h-[120px] w-[
1085
1085
  ]),
1086
1086
  l("button", {
1087
1087
  type: "button",
1088
- onClick: r[2] || (r[2] = (a) => q(tt)(t.value)),
1088
+ onClick: r[2] || (r[2] = (a) => q(st)(t.value)),
1089
1089
  class: "w-6 h-6 flex items-center justify-center text-gray-500 bg-gray-200 rounded-lg hover:text-blue-500"
1090
1090
  }, [
1091
- j(dt, { class: "w-4 h-4" })
1091
+ j(vt, { class: "w-4 h-4" })
1092
1092
  ])
1093
1093
  ])
1094
1094
  ]));
1095
1095
  }
1096
- }), lt = /* @__PURE__ */ N(xo, [["__scopeId", "data-v-0ca886b3"]]), wo = { class: "flex items-center gap-x-2" }, ko = {
1096
+ }), nt = /* @__PURE__ */ H(_o, [["__scopeId", "data-v-0ca886b3"]]), $o = { class: "flex items-center gap-x-2" }, Co = {
1097
1097
  key: 1,
1098
1098
  class: "flex items-center flex-wrap gap-2"
1099
- }, _o = /* @__PURE__ */ A({
1099
+ }, Vo = /* @__PURE__ */ F({
1100
1100
  __name: "vs-input-file",
1101
1101
  props: /* @__PURE__ */ Q({
1102
1102
  format: {},
@@ -1122,10 +1122,10 @@ const dt = /* @__PURE__ */ N(mo, [["render", go]]), bo = { class: "h-[120px] w-[
1122
1122
  }
1123
1123
  const u = a.target.files?.[0];
1124
1124
  if (!u) return;
1125
- const c = await Dl(u, "1", "form", "table");
1125
+ const c = await Rl(u, "1", "form", "table");
1126
1126
  t.value = e.multiple ? [...t.value || [], c?.file_path] : c?.file_path;
1127
1127
  };
1128
- return (a, u) => (i(), d("div", wo, [
1128
+ return (a, u) => (i(), d("div", $o, [
1129
1129
  l("input", {
1130
1130
  class: "hidden",
1131
1131
  ref_key: "fileInput",
@@ -1133,14 +1133,14 @@ const dt = /* @__PURE__ */ N(mo, [["render", go]]), bo = { class: "h-[120px] w-[
1133
1133
  type: "file",
1134
1134
  onChange: r
1135
1135
  }, null, 544),
1136
- !a.multiple && t.value ? (i(), ae(lt, {
1136
+ !a.multiple && t.value ? (i(), ae(nt, {
1137
1137
  key: 0,
1138
1138
  item: t.value,
1139
1139
  "onUpdate:item": u[0] || (u[0] = (c) => t.value = c),
1140
1140
  value: t.value,
1141
1141
  "onUpdate:value": u[1] || (u[1] = (c) => t.value = c)
1142
- }, null, 8, ["item", "value"])) : a.multiple ? (i(), d("div", ko, [
1143
- (i(!0), d(Y, null, le(t.value, (c, v) => (i(), ae(lt, {
1142
+ }, null, 8, ["item", "value"])) : a.multiple ? (i(), d("div", Co, [
1143
+ (i(!0), d(Y, null, le(t.value, (c, v) => (i(), ae(nt, {
1144
1144
  multiple: a.multiple,
1145
1145
  key: v,
1146
1146
  value: t.value,
@@ -1154,25 +1154,25 @@ const dt = /* @__PURE__ */ N(mo, [["render", go]]), bo = { class: "h-[120px] w-[
1154
1154
  a.disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer hover:border-blue-500 hover:bg-blue-50"
1155
1155
  ])
1156
1156
  }, [
1157
- j(Fe, { class: "w-6 h-6" })
1157
+ j(Ae, { class: "w-6 h-6" })
1158
1158
  ], 2)
1159
- ])) : F("", !0),
1160
- a.multiple ? F("", !0) : (i(), d("div", {
1159
+ ])) : A("", !0),
1160
+ a.multiple ? A("", !0) : (i(), d("div", {
1161
1161
  key: 2,
1162
1162
  onClick: u[4] || (u[4] = (c) => n.value?.click()),
1163
1163
  class: M([a.disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer hover:border-blue-500", "h-[120px] w-[120px] border text-gray-300 hover:text-blue-500 border-dashed border-gray-300 rounded-lg flex items-center justify-center cursor-pointer hover:border-blue-500 transition-all duration-300 hover:bg-blue-50"])
1164
1164
  }, [
1165
- j(Fe, { class: "w-6 h-6" })
1165
+ j(Ae, { class: "w-6 h-6" })
1166
1166
  ], 2))
1167
1167
  ]));
1168
1168
  }
1169
- }), $o = { class: "max-w-[55vw]" }, Co = { class: "text-sm font-semibold text-gray-800 truncate dark:text-neutral-200" }, Vo = { class: "flex items-center text-xs text-gray-500 truncate dark:text-neutral-500" }, Mo = { class: "px-[5px]" }, Lo = { class: "" }, Ae = /* @__PURE__ */ A({
1169
+ }), Mo = { class: "max-w-[55vw]" }, Lo = { class: "text-sm font-semibold text-gray-800 truncate dark:text-neutral-200" }, So = { class: "flex items-center text-xs text-gray-500 truncate dark:text-neutral-500" }, Bo = { class: "px-[5px]" }, jo = { class: "" }, Fe = /* @__PURE__ */ F({
1170
1170
  __name: "vs-widget-file-info",
1171
1171
  props: {
1172
1172
  item: { default: null }
1173
1173
  },
1174
1174
  setup(o) {
1175
- const e = o, t = D(() => {
1175
+ const e = o, t = O(() => {
1176
1176
  try {
1177
1177
  return new Date(e.item.cdate).toLocaleDateString("uk-UA", {
1178
1178
  day: "2-digit",
@@ -1190,34 +1190,34 @@ const dt = /* @__PURE__ */ N(mo, [["render", go]]), bo = { class: "h-[120px] w-[
1190
1190
  return r < 1024 ? `${r.toFixed(2)} KB` : `${(r / 1024).toFixed(2)} MB`;
1191
1191
  }
1192
1192
  return (s, r) => (i(), d(Y, null, [
1193
- r[1] || (r[1] = ue('<div class="flex items-center justify-center h-[30px] w-[30px]"><svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-file"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path></svg></div>', 1)),
1194
- l("div", $o, [
1195
- l("p", Co, T(s.item?.uploaded_name), 1),
1196
- l("p", Vo, [
1193
+ r[1] || (r[1] = de('<div class="flex items-center justify-center h-[30px] w-[30px]"><svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-file"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path></svg></div>', 1)),
1194
+ l("div", Mo, [
1195
+ l("p", Lo, T(s.item?.uploaded_name), 1),
1196
+ l("p", So, [
1197
1197
  l("span", null, T(s.item?.username), 1),
1198
- K(l("span", Mo, "|", 512), [
1199
- [He, s.item?.username]
1198
+ K(l("span", Bo, "|", 512), [
1199
+ [Ge, s.item?.username]
1200
1200
  ]),
1201
1201
  l("span", null, T(t.value), 1),
1202
1202
  r[0] || (r[0] = l("span", { class: "px-[5px]" }, "|", -1)),
1203
- l("span", Lo, T(n(s.item?.size)), 1)
1203
+ l("span", jo, T(n(s.item?.size)), 1)
1204
1204
  ])
1205
1205
  ])
1206
1206
  ], 64));
1207
1207
  }
1208
- }), So = { class: "p-3 relative group flex items-center gap-x-3 border border-gray-200 bg-white rounded-md w-full" }, Bo = {
1208
+ }), Io = { class: "p-3 relative group flex items-center gap-x-3 border border-gray-200 bg-white rounded-md w-full" }, zo = {
1209
1209
  key: 0,
1210
1210
  class: "flex w-full gap-x-3 items-center"
1211
- }, jo = {
1211
+ }, Eo = {
1212
1212
  key: 1,
1213
1213
  class: "flex gap-x-3 w-full items-center"
1214
- }, Io = {
1214
+ }, Ao = {
1215
1215
  key: 2,
1216
1216
  class: "flex gap-x-3 w-full items-center"
1217
- }, zo = ["href"], Eo = {
1217
+ }, Fo = ["href"], Do = {
1218
1218
  key: 3,
1219
1219
  class: "flex gap-x-3 w-full items-center"
1220
- }, Fo = { class: "lg:absolute lg:top-3 lg:end-1 opacity-100" }, Ao = { class: "p-0.5 sm:p-1 inline-flex items-center gap-0.5 bg-white rounded-lg dark:bg-neutral-800 dark:border-neutral-700" }, Oo = { class: "inline-block" }, Do = { class: "inline-block" }, Uo = /* @__PURE__ */ A({
1220
+ }, Oo = { class: "lg:absolute lg:top-3 lg:end-1 opacity-100" }, Uo = { class: "p-0.5 sm:p-1 inline-flex items-center gap-0.5 bg-white rounded-lg dark:bg-neutral-800 dark:border-neutral-700" }, To = { class: "inline-block" }, Ro = { class: "inline-block" }, Po = /* @__PURE__ */ F({
1221
1221
  __name: "vs-widget-file-item",
1222
1222
  props: {
1223
1223
  item: { default: null },
@@ -1259,42 +1259,42 @@ const dt = /* @__PURE__ */ N(mo, [["render", go]]), bo = { class: "h-[120px] w-[
1259
1259
  function v(p) {
1260
1260
  (t.item.ext === "jpg" || t.item.ext === "png") && n("openLightbox", { item: t.item, index: p });
1261
1261
  }
1262
- return (p, x) => (i(), d("div", So, [
1263
- p.item.ext === "jpg" || p.item.ext === "png" ? (i(), d("div", Bo, [
1262
+ return (p, x) => (i(), d("div", Io, [
1263
+ p.item.ext === "jpg" || p.item.ext === "png" ? (i(), d("div", zo, [
1264
1264
  l("div", {
1265
1265
  class: "max-w-[55vw] cursor-pointer flex gap-x-3 w-full items-center",
1266
1266
  onClick: x[0] || (x[0] = (g) => v(p.index))
1267
1267
  }, [
1268
- j(Ae, { item: p.item }, null, 8, ["item"])
1268
+ j(Fe, { item: p.item }, null, 8, ["item"])
1269
1269
  ])
1270
- ])) : s(p.item) ? (i(), d("div", jo, [
1271
- j(Ae, { item: p.item }, null, 8, ["item"])
1272
- ])) : r(p.item) ? (i(), d("div", Io, [
1270
+ ])) : s(p.item) ? (i(), d("div", Eo, [
1271
+ j(Fe, { item: p.item }, null, 8, ["item"])
1272
+ ])) : r(p.item) ? (i(), d("div", Ao, [
1273
1273
  l("a", {
1274
1274
  href: `/api/file-preview?id=${p.item.file_id}`,
1275
1275
  target: "_blank",
1276
1276
  class: "flex gap-x-3 w-full items-center"
1277
1277
  }, [
1278
- j(Ae, { item: p.item }, null, 8, ["item"])
1279
- ], 8, zo)
1280
- ])) : (i(), d("div", Eo, [
1281
- j(Ae, { item: p.item }, null, 8, ["item"])
1278
+ j(Fe, { item: p.item }, null, 8, ["item"])
1279
+ ], 8, Fo)
1280
+ ])) : (i(), d("div", Do, [
1281
+ j(Fe, { item: p.item }, null, 8, ["item"])
1282
1282
  ])),
1283
- l("div", Fo, [
1284
- l("div", Ao, [
1285
- l("div", Oo, [
1283
+ l("div", Oo, [
1284
+ l("div", Uo, [
1285
+ l("div", To, [
1286
1286
  l("button", {
1287
1287
  class: "inline-flex p-[6px] justify-center items-center gap-x-2 rounded-lg border border-transparent text-gray-500 hover:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none dark:text-neutral-400 focus:outline-none focus:bg-gray-100 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700",
1288
1288
  onClick: x[1] || (x[1] = (g) => a(p.item))
1289
1289
  }, [
1290
- j(dt, {
1290
+ j(vt, {
1291
1291
  height: "14",
1292
1292
  width: "14"
1293
1293
  })
1294
1294
  ])
1295
1295
  ]),
1296
1296
  x[3] || (x[3] = l("div", { class: "w-px h-5 mx-1 bg-gray-200 dark:bg-neutral-700" }, null, -1)),
1297
- l("div", Do, [
1297
+ l("div", Ro, [
1298
1298
  l("button", {
1299
1299
  type: "button",
1300
1300
  class: "size-[30px] inline-flex justify-center items-center gap-x-2 rounded-lg border border-transparent text-red-600 hover:bg-red-100 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-red-100 dark:text-red-500 dark:hover:bg-red-500/20 dark:focus:bg-red-500/20",
@@ -1310,7 +1310,7 @@ const dt = /* @__PURE__ */ N(mo, [["render", go]]), bo = { class: "h-[120px] w-[
1310
1310
  ])
1311
1311
  ]));
1312
1312
  }
1313
- }), To = {}, Ro = {
1313
+ }), Ho = {}, No = {
1314
1314
  xmlns: "http://www.w3.org/2000/svg",
1315
1315
  width: "24",
1316
1316
  height: "24",
@@ -1322,8 +1322,8 @@ const dt = /* @__PURE__ */ N(mo, [["render", go]]), bo = { class: "h-[120px] w-[
1322
1322
  "stroke-linejoin": "round",
1323
1323
  class: "icon icon-tabler icons-tabler-outline icon-tabler-download"
1324
1324
  };
1325
- function Po(o, e) {
1326
- return i(), d("svg", Ro, e[0] || (e[0] = [
1325
+ function qo(o, e) {
1326
+ return i(), d("svg", No, e[0] || (e[0] = [
1327
1327
  l("path", {
1328
1328
  stroke: "none",
1329
1329
  d: "M0 0h24v24H0z",
@@ -1334,13 +1334,13 @@ function Po(o, e) {
1334
1334
  l("path", { d: "M12 4l0 12" }, null, -1)
1335
1335
  ]));
1336
1336
  }
1337
- const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col widget-file xl:bg-white xl:rounded-xl dark:xl:bg-neutral-800 dark:xl:border-neutral-700 w-full" }, qo = { class: "flex w-full mb-[12px] items-center gap-x-2" }, Go = { class: "font-semibold text-gray-800 dark:text-neutral-200 text-[14px]" }, Jo = { class1: "ml-auto" }, Ko = { class: "py-1.5 px-4 inline-flex items-center gap-x-2 text-sm font-medium rounded-lg bg-gray-100 cursor-pointer hover:bg-gray-200 text-gray-800 shadow-2xs hover:bg-gray-50 focus:outline-hidden focus:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-800 dark:border-neutral-700 dark:text-white dark:hover:bg-neutral-700 dark:focus:bg-neutral-700" }, Zo = {
1337
+ const Go = /* @__PURE__ */ H(Ho, [["render", qo]]), Jo = { class: "flex flex-col widget-file xl:bg-white xl:rounded-xl dark:xl:bg-neutral-800 dark:xl:border-neutral-700 w-full" }, Ko = { class: "flex w-full mb-[12px] items-center gap-x-2" }, Zo = { class: "font-semibold text-gray-800 dark:text-neutral-200 text-[14px]" }, Wo = { class1: "ml-auto" }, Qo = { class: "py-1.5 px-4 inline-flex items-center gap-x-2 text-sm font-medium rounded-lg bg-gray-100 cursor-pointer hover:bg-gray-200 text-gray-800 shadow-2xs hover:bg-gray-50 focus:outline-hidden focus:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-800 dark:border-neutral-700 dark:text-white dark:hover:bg-neutral-700 dark:focus:bg-neutral-700" }, Xo = {
1338
1338
  key: 0,
1339
1339
  class: "py-4 mb-4 space-y-4 border-gray-200 border-y dark:border-neutral-700"
1340
- }, Wo = { class: "relative" }, Qo = {
1340
+ }, Yo = { class: "relative" }, ea = {
1341
1341
  key: 1,
1342
1342
  class: "space-y-3 max-h-[300px] overflow-y-auto [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500"
1343
- }, Xo = { key: 0 }, Yo = /* @__PURE__ */ A({
1343
+ }, ta = { key: 0 }, la = /* @__PURE__ */ F({
1344
1344
  __name: "vs-input-file-list",
1345
1345
  props: {
1346
1346
  id: { default: "" },
@@ -1355,7 +1355,7 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1355
1355
  },
1356
1356
  emits: ["update"],
1357
1357
  setup(o, { emit: e }) {
1358
- const t = o, n = Me("form"), s = D(() => n.value.formId), r = w(!1), a = w(0), u = e, c = w(!1), v = w({}), p = w([]), x = w(""), g = D(() => Array.isArray(p.value) ? p.value.filter((m) => m.ext === "jpg" || m.ext === "png").map((m) => m?.file_path) : []), _ = D(() => x.value === "" ? p.value : p.value.filter((m) => m?.uploaded_name?.includes(x.value))), S = (m) => {
1358
+ const t = o, n = Me("form"), s = O(() => n.value.formId), r = w(!1), a = w(0), u = e, c = w(!1), v = w({}), p = w([]), x = w(""), g = O(() => Array.isArray(p.value) ? p.value.filter((m) => m.ext === "jpg" || m.ext === "png").map((m) => m?.file_path) : []), _ = O(() => x.value === "" ? p.value : p.value.filter((m) => m?.uploaded_name?.includes(x.value))), S = (m) => {
1359
1359
  const f = g.value.findIndex((Z) => Z === m.item.file_path);
1360
1360
  f !== -1 && (r.value = !0, a.value = f);
1361
1361
  }, R = async () => {
@@ -1390,22 +1390,22 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1390
1390
  };
1391
1391
  return te(s, (m) => {
1392
1392
  m && R();
1393
- }), ge(() => {
1393
+ }), be(() => {
1394
1394
  s.value && R();
1395
1395
  }), (m, f) => {
1396
- const Z = Qe("Lightbox"), U = Qe("MessageBox");
1397
- return i(), d("div", Ho, [
1398
- l("div", qo, [
1399
- l("h2", Go, " Файлів: " + T(p.value?.length), 1),
1400
- l("div", Jo, [
1396
+ const Z = tt("Lightbox"), U = tt("MessageBox");
1397
+ return i(), d("div", Jo, [
1398
+ l("div", Ko, [
1399
+ l("h2", Zo, " Файлів: " + T(p.value?.length), 1),
1400
+ l("div", Wo, [
1401
1401
  l("label", null, [
1402
1402
  l("input", {
1403
1403
  type: "file",
1404
1404
  class: "hidden",
1405
- onChange: f[0] || (f[0] = (O) => $(O))
1405
+ onChange: f[0] || (f[0] = (D) => $(D))
1406
1406
  }, null, 32),
1407
- l("div", Ko, [
1408
- j(No, {
1407
+ l("div", Qo, [
1408
+ j(Go, {
1409
1409
  height: "16",
1410
1410
  width: "16"
1411
1411
  })
@@ -1413,9 +1413,9 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1413
1413
  ])
1414
1414
  ])
1415
1415
  ]),
1416
- p.value?.length > 4 ? (i(), d("div", Zo, [
1416
+ p.value?.length > 4 ? (i(), d("div", Xo, [
1417
1417
  l("div", null, [
1418
- l("div", Wo, [
1418
+ l("div", Yo, [
1419
1419
  f[8] || (f[8] = l("div", { class: "absolute inset-y-0 start-0 flex items-center pointer-events-none z-[1] ps-3.5" }, [
1420
1420
  l("svg", {
1421
1421
  class: "flex-shrink-0 text-gray-500 size-4 dark:text-neutral-400",
@@ -1439,12 +1439,12 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1439
1439
  ], -1)),
1440
1440
  K(l("input", {
1441
1441
  type: "text",
1442
- "onUpdate:modelValue": f[1] || (f[1] = (O) => x.value = O),
1442
+ "onUpdate:modelValue": f[1] || (f[1] = (D) => x.value = D),
1443
1443
  class: "py-2 px-3 ps-10 pe-16 block w-full bg-gray-200 xl:bg-gray-100 rounded-lg text-sm focus:border-blue-500 h-[40px] focus:border-2 focus:outline-none disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-700 dark:border-transparent dark:text-neutral-400 dark:placeholder:text-neutral-400 dark:focus:ring-neutral-600",
1444
1444
  placeholder: "Введіть назву файлу"
1445
1445
  }, null, 512), [
1446
1446
  [
1447
- ne,
1447
+ re,
1448
1448
  x.value,
1449
1449
  void 0,
1450
1450
  { trim: !0 }
@@ -1452,37 +1452,37 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1452
1452
  ])
1453
1453
  ])
1454
1454
  ])
1455
- ])) : F("", !0),
1456
- p.value?.length ? (i(), d("div", Qo, [
1457
- (i(!0), d(Y, null, le(_.value, (O, re) => (i(), ae(Uo, {
1458
- key: re,
1455
+ ])) : A("", !0),
1456
+ p.value?.length ? (i(), d("div", ea, [
1457
+ (i(!0), d(Y, null, le(_.value, (D, ie) => (i(), ae(Po, {
1458
+ key: ie,
1459
1459
  prefix: m.prefix,
1460
- item: O,
1461
- index: re,
1460
+ item: D,
1461
+ index: ie,
1462
1462
  onUpdate: f[2] || (f[2] = (ee) => m.$emit("update", "file-list")),
1463
1463
  onOpenModal: f[3] || (f[3] = (ee) => B(ee)),
1464
1464
  onOpenLightbox: f[4] || (f[4] = (ee) => S(ee))
1465
1465
  }, null, 8, ["prefix", "item", "index"]))), 128)),
1466
- _.value.length ? F("", !0) : (i(), d("div", Xo, f[9] || (f[9] = [
1466
+ _.value.length ? A("", !0) : (i(), d("div", ta, f[9] || (f[9] = [
1467
1467
  l("p", { class: "text-sm text-gray-600 font-sm" }, " Файлів з такою назвою не існує, введіть інше пошукове слово ", -1)
1468
1468
  ])))
1469
- ])) : F("", !0),
1469
+ ])) : A("", !0),
1470
1470
  j(Z, {
1471
1471
  modelValue: r.value,
1472
- "onUpdate:modelValue": f[5] || (f[5] = (O) => r.value = O),
1472
+ "onUpdate:modelValue": f[5] || (f[5] = (D) => r.value = D),
1473
1473
  startIndex: a.value,
1474
- "onUpdate:index": f[6] || (f[6] = (O) => a.value = O),
1474
+ "onUpdate:index": f[6] || (f[6] = (D) => a.value = D),
1475
1475
  images: g.value
1476
1476
  }, null, 8, ["modelValue", "startIndex", "images"]),
1477
1477
  j(U, Ee({
1478
1478
  modelValue: c.value,
1479
- "onUpdate:modelValue": f[7] || (f[7] = (O) => c.value = O),
1479
+ "onUpdate:modelValue": f[7] || (f[7] = (D) => c.value = D),
1480
1480
  onConfirm: v.value.confirm
1481
1481
  }, v.value), null, 16, ["modelValue", "onConfirm"])
1482
1482
  ]);
1483
1483
  };
1484
1484
  }
1485
- }), ea = { class: "flex items-center justify-between" }, ta = { class: "text-[16px] text-gray-900 font-medium" }, la = { class: "grid gap-3" }, oa = /* @__PURE__ */ A({
1485
+ }), oa = { class: "flex items-center justify-between" }, aa = { class: "text-[16px] text-gray-900 font-medium" }, sa = { class: "grid gap-3" }, na = /* @__PURE__ */ F({
1486
1486
  __name: "vs-container-switcher",
1487
1487
  props: {
1488
1488
  title: {
@@ -1506,27 +1506,27 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1506
1506
  t.value = n;
1507
1507
  }
1508
1508
  ), (n, s) => (i(), d("div", null, [
1509
- l("div", ea, [
1510
- l("p", ta, T(o.title), 1),
1511
- j(ut, {
1509
+ l("div", oa, [
1510
+ l("p", aa, T(o.title), 1),
1511
+ j(ft, {
1512
1512
  modelValue: t.value,
1513
1513
  "onUpdate:modelValue": s[0] || (s[0] = (r) => t.value = r),
1514
- style: ke(o.style)
1514
+ style: ge(o.style)
1515
1515
  }, null, 8, ["modelValue", "style"])
1516
1516
  ]),
1517
- j(rt, { name: "slide-fade" }, {
1518
- default: je(() => [
1519
- K(l("div", la, [
1517
+ j(ct, { name: "slide-fade" }, {
1518
+ default: Be(() => [
1519
+ K(l("div", sa, [
1520
1520
  $e(n.$slots, "default", {}, void 0, !0)
1521
1521
  ], 512), [
1522
- [He, t.value]
1522
+ [Ge, t.value]
1523
1523
  ])
1524
1524
  ]),
1525
1525
  _: 3
1526
1526
  })
1527
1527
  ]));
1528
1528
  }
1529
- }), aa = /* @__PURE__ */ N(oa, [["__scopeId", "data-v-90320b87"]]), sa = { class: "text-[16px] text-gray-900 font-medium" }, na = { class: "grid gap-3" }, ra = /* @__PURE__ */ A({
1529
+ }), ra = /* @__PURE__ */ H(na, [["__scopeId", "data-v-90320b87"]]), ia = { class: "text-[16px] text-gray-900 font-medium" }, ua = { class: "grid gap-3" }, da = /* @__PURE__ */ F({
1530
1530
  __name: "vs-container-accordion",
1531
1531
  props: {
1532
1532
  title: {
@@ -1555,24 +1555,24 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1555
1555
  onClick: s[0] || (s[0] = (r) => t.value = !t.value),
1556
1556
  class: "flex items-center gap-2"
1557
1557
  }, [
1558
- j(q(il), {
1558
+ j(q(cl), {
1559
1559
  class: M(["h-4 w-4 duration-300", [t.value ? "-rotate-180" : ""]])
1560
1560
  }, null, 8, ["class"]),
1561
- l("span", sa, T(o.title), 1)
1561
+ l("span", ia, T(o.title), 1)
1562
1562
  ]),
1563
- j(rt, { name: "slide-fade" }, {
1564
- default: je(() => [
1565
- K(l("div", na, [
1563
+ j(ct, { name: "slide-fade" }, {
1564
+ default: Be(() => [
1565
+ K(l("div", ua, [
1566
1566
  $e(n.$slots, "default", {}, void 0, !0)
1567
1567
  ], 512), [
1568
- [He, t.value]
1568
+ [Ge, t.value]
1569
1569
  ])
1570
1570
  ]),
1571
1571
  _: 3
1572
1572
  })
1573
1573
  ]));
1574
1574
  }
1575
- }), ia = /* @__PURE__ */ N(ra, [["__scopeId", "data-v-590eff11"]]), ua = { class: "flex items-center justify-between" }, da = /* @__PURE__ */ A({
1575
+ }), ca = /* @__PURE__ */ H(da, [["__scopeId", "data-v-590eff11"]]), pa = { class: "flex items-center justify-between" }, fa = /* @__PURE__ */ F({
1576
1576
  __name: "vs-container-default",
1577
1577
  props: {
1578
1578
  title: {
@@ -1586,17 +1586,17 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1586
1586
  },
1587
1587
  setup(o) {
1588
1588
  return (e, t) => (i(), d("div", null, [
1589
- l("div", ua, [
1589
+ l("div", pa, [
1590
1590
  l("p", null, T(o.title), 1)
1591
1591
  ]),
1592
1592
  $e(e.$slots, "default")
1593
1593
  ]));
1594
1594
  }
1595
- }), ca = {
1596
- switcher: aa,
1597
- accordion: ia,
1598
- default: da
1599
- }, de = {
1595
+ }), va = {
1596
+ switcher: ra,
1597
+ accordion: ca,
1598
+ default: fa
1599
+ }, ce = {
1600
1600
  Equal: "==",
1601
1601
  Inequal: "!=",
1602
1602
  Higer: ">",
@@ -1609,37 +1609,37 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1609
1609
  Contain: "*",
1610
1610
  In: "in",
1611
1611
  NotIn: "not_in"
1612
- }, pa = (o, e) => String(o) === String(e), fa = (o, e) => String(o) !== String(e), va = (o, e) => o > e, ma = (o, e) => o >= e, ha = (o, e) => o < e, ga = (o, e) => o <= e, ba = (o, e) => Array.isArray(e) && e.length === 2 ? o >= e[0] && o <= e[1] : !1, ya = (o, e) => String(o).startsWith(String(e)), xa = (o, e) => String(o).endsWith(String(e)), wa = (o, e) => String(o).includes(String(e)), ka = (o, e) => Array.isArray(e) ? e.includes(o) : !1, _a = (o, e) => Array.isArray(e) ? !e.includes(o) : !0, ct = (o, e) => {
1612
+ }, ma = (o, e) => String(o) === String(e), ha = (o, e) => String(o) !== String(e), ga = (o, e) => o > e, ba = (o, e) => o >= e, ya = (o, e) => o < e, xa = (o, e) => o <= e, wa = (o, e) => Array.isArray(e) && e.length === 2 ? o >= e[0] && o <= e[1] : !1, ka = (o, e) => String(o).startsWith(String(e)), _a = (o, e) => String(o).endsWith(String(e)), $a = (o, e) => String(o).includes(String(e)), Ca = (o, e) => Array.isArray(e) ? e.includes(o) : !1, Va = (o, e) => Array.isArray(e) ? !e.includes(o) : !0, mt = (o, e) => {
1613
1613
  if (!e) return !0;
1614
1614
  switch (e?.[1]) {
1615
- case de.Equal:
1616
- return pa(o, e?.[2]);
1617
- case de.Inequal:
1618
- return fa(o, e?.[2]);
1619
- case de.Higer:
1620
- return va(o, e?.[2]);
1621
- case de.HigerOrEqual:
1615
+ case ce.Equal:
1622
1616
  return ma(o, e?.[2]);
1623
- case de.Lower:
1617
+ case ce.Inequal:
1624
1618
  return ha(o, e?.[2]);
1625
- case de.LowerOrEqual:
1619
+ case ce.Higer:
1626
1620
  return ga(o, e?.[2]);
1627
- case de.Between:
1621
+ case ce.HigerOrEqual:
1628
1622
  return ba(o, e?.[2]);
1629
- case de.StartWith:
1623
+ case ce.Lower:
1630
1624
  return ya(o, e?.[2]);
1631
- case de.EndWith:
1625
+ case ce.LowerOrEqual:
1632
1626
  return xa(o, e?.[2]);
1633
- case de.Contain:
1627
+ case ce.Between:
1634
1628
  return wa(o, e?.[2]);
1635
- case de.In:
1629
+ case ce.StartWith:
1636
1630
  return ka(o, e?.[2]);
1637
- case de.NotIn:
1631
+ case ce.EndWith:
1638
1632
  return _a(o, e?.[2]);
1633
+ case ce.Contain:
1634
+ return $a(o, e?.[2]);
1635
+ case ce.In:
1636
+ return Ca(o, e?.[2]);
1637
+ case ce.NotIn:
1638
+ return Va(o, e?.[2]);
1639
1639
  default:
1640
1640
  return !0;
1641
1641
  }
1642
- }, $a = /* @__PURE__ */ A({
1642
+ }, Ma = /* @__PURE__ */ F({
1643
1643
  __name: "vs-input-container",
1644
1644
  props: {
1645
1645
  style: {
@@ -1660,19 +1660,19 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1660
1660
  }
1661
1661
  },
1662
1662
  setup(o) {
1663
- const e = o, t = Me("formValues", { default: {} }), n = Me("form"), s = D(() => e.schema?.filter((a) => {
1663
+ const e = o, t = Me("formValues", { default: {} }), n = Me("form"), s = O(() => e.schema?.filter((a) => {
1664
1664
  const u = a?.conditions;
1665
1665
  if (!u) return !0;
1666
1666
  const c = Array.isArray(u) ? u[0] : u, v = t?.value?.[c];
1667
- return ct(v, u);
1668
- })), r = D(() => ca[e.view]);
1669
- return (a, u) => o.schema?.length ? (i(), ae(Be(r.value), {
1667
+ return mt(v, u);
1668
+ })), r = O(() => va[e.view]);
1669
+ return (a, u) => o.schema?.length ? (i(), ae(Se(r.value), {
1670
1670
  key: 0,
1671
1671
  title: o.title,
1672
- style: ke(o.style)
1672
+ style: ge(o.style)
1673
1673
  }, {
1674
- default: je(() => [
1675
- (i(!0), d(Y, null, le(s.value, (c) => (i(), ae(pt, Ee({
1674
+ default: Be(() => [
1675
+ (i(!0), d(Y, null, le(s.value, (c) => (i(), ae(ht, Ee({
1676
1676
  key: c.name
1677
1677
  }, { ref_for: !0 }, c, {
1678
1678
  item: c,
@@ -1683,9 +1683,9 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1683
1683
  }), null, 16, ["item", "modelValue", "onUpdate:modelValue", "style", "error"]))), 128))
1684
1684
  ]),
1685
1685
  _: 1
1686
- }, 8, ["title", "style"])) : F("", !0);
1686
+ }, 8, ["title", "style"])) : A("", !0);
1687
1687
  }
1688
- }), Ca = { class: "relative" }, Va = { class: "w-full h-full fixed top-0 start-0 z-[1000] bg-black bg-opacity-50" }, Ma = { class: "m-[10px] fixed top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 min-h-0 h-fit max-h-[80vh] overflow-hidden opacity-1 flex flex-col bg-white dark:bg-[#1A1A1A] border dark:border-[#454545] pointer-events-auto shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-xl lg:w-7/12 w-11/12" }, La = { class: "py-2.5 px-4 flex justify-between items-center border-0 border-b border-solid border-gray-200 dark:border-b-[#454545]" }, Sa = { class: "font-medium text-gray-800 dark:text-[#ffffff]" }, Ba = { class: "p-4 mim-h-0 h-full overflow-auto" }, ja = /* @__PURE__ */ A({
1688
+ }), La = { class: "relative" }, Sa = { class: "w-full h-full fixed top-0 start-0 z-[1000] bg-black bg-opacity-50" }, Ba = { class: "m-[10px] fixed top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 min-h-0 h-fit max-h-[80vh] overflow-hidden opacity-1 flex flex-col bg-white dark:bg-[#1A1A1A] border dark:border-[#454545] pointer-events-auto shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-xl lg:w-7/12 w-11/12" }, ja = { class: "py-2.5 px-4 flex justify-between items-center border-0 border-b border-solid border-gray-200 dark:border-b-[#454545]" }, Ia = { class: "font-medium text-gray-800 dark:text-[#ffffff]" }, za = { class: "p-4 mim-h-0 h-full overflow-auto" }, Ea = /* @__PURE__ */ F({
1689
1689
  __name: "modal-edit",
1690
1690
  props: {
1691
1691
  schema: {},
@@ -1700,7 +1700,7 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1700
1700
  async function v() {
1701
1701
  const x = a.value.validate();
1702
1702
  if (x) {
1703
- we({ type: "warning", title: "Помилка валідації", message: Object.entries(x).map(([g, _]) => `${g}: ${_}`).join(`
1703
+ ke({ type: "warning", title: "Помилка валідації", message: Object.entries(x).map(([g, _]) => `${g}: ${_}`).join(`
1704
1704
  `) });
1705
1705
  return;
1706
1706
  }
@@ -1714,29 +1714,29 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1714
1714
  body: JSON.stringify(r.value)
1715
1715
  });
1716
1716
  if (g.ok)
1717
- await g.json(), we({
1717
+ await g.json(), ke({
1718
1718
  type: "success",
1719
1719
  title: "Успішно",
1720
1720
  message: `Дані успішно ${c.value === "add" ? "збережено" : "оновлено"}`
1721
1721
  }), n("save", r.value);
1722
1722
  else if (g.status === 400) {
1723
1723
  const _ = await g.json().catch(() => ({}));
1724
- we({
1724
+ ke({
1725
1725
  type: "warning",
1726
1726
  title: "Помилка валідації",
1727
1727
  message: _.message || "Некоректні дані (400)"
1728
1728
  });
1729
- } else g.status === 500 ? we({
1729
+ } else g.status === 500 ? ke({
1730
1730
  type: "error",
1731
1731
  title: "Серверна помилка",
1732
1732
  message: "Виникла помилка на сервері (500)"
1733
- }) : we({
1733
+ }) : ke({
1734
1734
  type: "error",
1735
1735
  title: "Помилка",
1736
1736
  message: `Статус: ${g.status}`
1737
1737
  });
1738
1738
  } catch (g) {
1739
- we({
1739
+ ke({
1740
1740
  type: "error",
1741
1741
  title: "Помилка з’єднання",
1742
1742
  message: g.message || "Не вдалося виконати запит"
@@ -1746,7 +1746,7 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1746
1746
  function p() {
1747
1747
  n("close");
1748
1748
  }
1749
- return ge(async () => {
1749
+ return be(async () => {
1750
1750
  if (t.form) {
1751
1751
  const x = await fetch(`/api/template/form/${t.form}`).then((g) => g.json());
1752
1752
  s.value = x.schema, u.value = x.token;
@@ -1755,11 +1755,11 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1755
1755
  const x = await fetch(`/api/form/${u.value}`).then((g) => g.json());
1756
1756
  s.value = x.schema, x.data ? r.value = x.data : c.value = "add";
1757
1757
  }
1758
- }), (x, g) => (i(), d("div", Ca, [
1759
- l("div", Va, [
1760
- l("div", Ma, [
1761
- l("div", La, [
1762
- l("h3", Sa, T(c.value === "add" ? "Додати" : "Змінити"), 1),
1758
+ }), (x, g) => (i(), d("div", La, [
1759
+ l("div", Sa, [
1760
+ l("div", Ba, [
1761
+ l("div", ja, [
1762
+ l("h3", Ia, T(c.value === "add" ? "Додати" : "Змінити"), 1),
1763
1763
  l("button", {
1764
1764
  onClick: p,
1765
1765
  type: "button",
@@ -1783,15 +1783,15 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1783
1783
  ], -1)
1784
1784
  ]))
1785
1785
  ]),
1786
- l("div", Ba, [
1787
- s.value ? (i(), ae(De, {
1786
+ l("div", za, [
1787
+ s.value ? (i(), ae(Oe, {
1788
1788
  key: 0,
1789
1789
  schema: s.value,
1790
1790
  values: r.value,
1791
1791
  "onUpdate:values": g[0] || (g[0] = (_) => r.value = _),
1792
1792
  form: a.value,
1793
1793
  "onUpdate:form": g[1] || (g[1] = (_) => a.value = _)
1794
- }, null, 8, ["schema", "values", "form"])) : F("", !0)
1794
+ }, null, 8, ["schema", "values", "form"])) : A("", !0)
1795
1795
  ]),
1796
1796
  l("div", { class: "vs-form__head mr-5 mb-5 mt-3 flex items-center justify-end sticky top-0 left-0 z-[60] bg-white" }, [
1797
1797
  l("button", {
@@ -1809,14 +1809,14 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1809
1809
  ])
1810
1810
  ]));
1811
1811
  }
1812
- }), Te = (o = { mode: "edit", schema: null }) => new Promise((e) => {
1813
- const { close: t } = Ct({
1812
+ }), Pe = (o = { mode: "edit", schema: null }) => new Promise((e) => {
1813
+ const { close: t } = Lt({
1814
1814
  title: o.mode === "add" ? "Додати" : "Редагувати",
1815
1815
  template: "",
1816
1816
  visible: !0,
1817
1817
  size: "medium",
1818
1818
  closeClickBack: !0,
1819
- content: ja,
1819
+ content: Ea,
1820
1820
  contentProps: {
1821
1821
  ...o,
1822
1822
  onClose: () => {
@@ -1827,13 +1827,13 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1827
1827
  }
1828
1828
  }
1829
1829
  });
1830
- }), Ia = ["aria-expanded", "data-focus"], za = { class: "flex items-center" }, Ea = ["title"], Fa = ["onClick"], Aa = ["title"], Oa = {
1830
+ }), Aa = ["aria-expanded", "data-focus"], Fa = { class: "flex items-center" }, Da = ["title"], Oa = ["onClick"], Ua = ["title"], Ta = {
1831
1831
  key: 2,
1832
1832
  class: "text-gray-500 truncate"
1833
- }, Da = { class: "flex-1 min-w-[2px]" }, Ua = ["placeholder"], Ta = { class: "flex items-center shrink-0" }, Ra = ["disabled"], Pa = ["disabled"], Na = ["aria-disabled", "onClick"], Ha = {
1833
+ }, Ra = { class: "flex-1 min-w-[2px]" }, Pa = ["placeholder"], Ha = { class: "flex items-center shrink-0" }, Na = ["disabled"], qa = ["disabled", "title"], Ga = ["aria-disabled", "onClick"], Ja = {
1834
1834
  key: 1,
1835
1835
  class: "px-3 py-2 text-center text-gray-500"
1836
- }, qa = ["disabled"], Ga = /* @__PURE__ */ A({
1836
+ }, Ka = ["disabled"], Za = /* @__PURE__ */ F({
1837
1837
  __name: "vs-input-select",
1838
1838
  props: {
1839
1839
  multiple: { type: Boolean, default: !1 },
@@ -1858,18 +1858,18 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1858
1858
  },
1859
1859
  emits: ["change", "update:modelValue"],
1860
1860
  setup(o, { emit: e }) {
1861
- const t = o, n = e, s = D(() => t.multiple), r = D(() => t.disabled);
1862
- be(t.style);
1863
- const a = D({
1861
+ const t = o, n = e, s = O(() => t.multiple), r = O(() => t.disabled);
1862
+ ye(t.style);
1863
+ const a = O({
1864
1864
  get: () => t.modelValue,
1865
1865
  set: (h) => n("update:modelValue", h)
1866
1866
  });
1867
1867
  !a.value && t.defaultValue && (a.value = t.defaultValue);
1868
- const u = w(null), c = w(null), v = w(null), p = w(!1), x = w(!1), g = w(null), _ = w([]), S = w(-1), R = w([]), $ = w(""), z = w(null), B = w("bottom"), m = w({}), f = w([]), Z = D(() => {
1868
+ const u = w(null), c = w(null), v = w(null), p = w(!1), x = w(!1), g = w(null), _ = w([]), S = w(-1), R = w([]), $ = w(""), z = w(null), B = w("bottom"), m = w({}), f = w([]), Z = O(() => {
1869
1869
  if (!f.value.length) return [];
1870
1870
  const h = new Map(_.value.map((b) => [b.id?.toString(), b]));
1871
1871
  return f.value.map((b) => h.get(b?.toString())).filter((b) => !!b);
1872
- }), U = D(() => t.placeholder || "Select..."), O = D(() => s.value ? !f.value.length && $.value === "" : !g.value?.text && $.value === ""), re = D(() => r.value ? !1 : s.value ? f.value.length > 0 : !!a.value), ee = (h) => s.value ? f.value.some((b) => b?.toString() === h?.toString()) : a.value?.toString() === h?.toString(), W = D(() => {
1872
+ }), U = O(() => t.placeholder || "Select..."), D = O(() => s.value ? !f.value.length && $.value === "" : !g.value?.text && $.value === ""), ie = O(() => r.value ? !1 : s.value ? f.value.length > 0 : !!a.value), ee = (h) => s.value ? f.value.some((b) => b?.toString() === h?.toString()) : a.value?.toString() === h?.toString(), W = O(() => {
1873
1873
  let h = _.value ?? [];
1874
1874
  if (!t.data && $.value.trim() !== "") {
1875
1875
  const b = $.value.toLowerCase();
@@ -1880,18 +1880,18 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1880
1880
  h = h.filter((V) => !b.has(V.id?.toString()));
1881
1881
  }
1882
1882
  return h;
1883
- }), Ie = Me("values"), ye = D(() => t.parent ? Ie?.value?.[t.parent] ?? null : null), I = async (h) => {
1883
+ }), je = Me("values"), xe = O(() => t.parent ? je?.value?.[t.parent] ?? null : null), I = async (h) => {
1884
1884
  if (!t.data) {
1885
1885
  let b = t.options ?? [];
1886
1886
  if (h?.trim()) {
1887
1887
  const V = h.toLowerCase();
1888
- b = b.filter((H) => H.text?.toLowerCase?.().includes(V));
1888
+ b = b.filter((N) => N.text?.toLowerCase?.().includes(V));
1889
1889
  }
1890
1890
  return b;
1891
1891
  }
1892
1892
  try {
1893
- const b = t.host ?? "", V = t.prefix ?? "api", H = t.api ?? `/${V}/suggest/${t.data}`, se = `${b}${H}`, fe = new URLSearchParams();
1894
- return fe.set("json", "1"), h && fe.set("key", h), ye.value !== void 0 && ye.value !== null && ye.value !== "" && fe.set("parent", String(ye.value)), (await fetch(`${se}?${fe.toString()}`).then((Se) => Se.json()))?.data ?? [];
1893
+ const b = t.host ?? "", V = t.prefix ?? "api", N = t.api ?? `/${V}/suggest/${t.data}`, se = `${b}${N}`, ne = new URLSearchParams();
1894
+ return ne.set("json", "1"), h && ne.set("key", h), xe.value !== void 0 && xe.value !== null && xe.value !== "" && ne.set("parent", String(xe.value)), (await fetch(`${se}?${ne.toString()}`).then((Ie) => Ie.json()))?.data ?? [];
1895
1895
  } catch {
1896
1896
  return [];
1897
1897
  }
@@ -1899,24 +1899,24 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1899
1899
  t.data ? _.value = await I($.value) : _.value = t.options ? [...t.options] : [];
1900
1900
  }, E = async (h) => {
1901
1901
  if (h == null) return null;
1902
- const b = _.value?.find((H) => H?.id?.toString() === String(h));
1902
+ const b = _.value?.find((N) => N?.id?.toString() === String(h));
1903
1903
  return b || ((await I(String(h)))?.[0] ?? null);
1904
1904
  }, G = async (h) => {
1905
- const b = new Set(_.value.map((H) => H.id?.toString())), V = h.filter((H) => !b.has(H?.toString()));
1906
- V.length && await V.reduce(async (H, se) => {
1907
- await H;
1908
- const fe = await E(se);
1909
- fe && _.value.push(fe);
1905
+ const b = new Set(_.value.map((N) => N.id?.toString())), V = h.filter((N) => !b.has(N?.toString()));
1906
+ V.length && await V.reduce(async (N, se) => {
1907
+ await N;
1908
+ const ne = await E(se);
1909
+ ne && _.value.push(ne);
1910
1910
  }, Promise.resolve());
1911
1911
  }, oe = async () => {
1912
1912
  r.value || (p.value = !0, await C(), await ze(() => {
1913
1913
  he(), z.value?.focus(), W.value.length ? S.value = 0 : S.value = -1;
1914
1914
  }));
1915
- }, ie = () => {
1915
+ }, ue = () => {
1916
1916
  p.value = !1, S.value = -1;
1917
- }, xe = async (h) => {
1917
+ }, we = async (h) => {
1918
1918
  if (r.value) return;
1919
- !p.value ? await oe() : ie();
1919
+ !p.value ? await oe() : ue();
1920
1920
  }, y = async () => {
1921
1921
  p.value ? z.value?.focus() : await oe();
1922
1922
  }, k = () => {
@@ -1926,39 +1926,54 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1926
1926
  }, J = (h) => {
1927
1927
  s.value ? (ee(h.id) || (f.value = [...f.value, h.id], a.value = [...f.value], n("change", a.value)), $.value = "", ze(() => {
1928
1928
  z.value?.focus(), S.value = Math.min(S.value, W.value.length - 1);
1929
- })) : (g.value = h, a.value = h.id, n("change", a.value), $.value = "", ie());
1930
- }, pe = (h) => {
1929
+ })) : (g.value = h, a.value = h.id, n("change", a.value), $.value = "", ue());
1930
+ }, fe = (h) => {
1931
1931
  ee(h.id) || J(h);
1932
1932
  }, _e = (h, b) => {
1933
1933
  if (!h || !b) return;
1934
- const V = h.offsetTop, H = V + h.offsetHeight, se = b.scrollTop, fe = se + b.clientHeight;
1934
+ const V = h.offsetTop, N = V + h.offsetHeight, se = b.scrollTop, ne = se + b.clientHeight;
1935
1935
  let Le = b.scrollTop;
1936
- V < se ? Le = V - 80 : H > fe && (Le = H - b.clientHeight + 4);
1937
- const Se = b;
1938
- Se.scrollTop = Le;
1936
+ V < se ? Le = V - 80 : N > ne && (Le = N - b.clientHeight + 4);
1937
+ const Ie = b;
1938
+ Ie.scrollTop = Le;
1939
1939
  }, me = (h) => {
1940
1940
  let b = h.parentElement;
1941
1941
  for (; b; ) {
1942
- const V = window.getComputedStyle(b), H = V.overflow + V.overflowY + V.overflowX;
1943
- if (H.includes("auto") || H.includes("scroll") || b === document.body || b === document.documentElement)
1942
+ if (b.classList.contains("ui-dialog__content"))
1944
1943
  return b;
1945
- b = b.parentElement;
1944
+ {
1945
+ const V = window.getComputedStyle(b), N = V.overflow + V.overflowY + V.overflowX;
1946
+ if (N.includes("auto") || N.includes("scroll") || b === document.body || b === document.documentElement)
1947
+ return b;
1948
+ b = b.parentElement;
1949
+ }
1946
1950
  }
1947
1951
  return document.body;
1948
1952
  }, he = () => {
1949
1953
  if (!c.value) return;
1950
- const h = c.value.getBoundingClientRect(), V = me(c.value).getBoundingClientRect(), H = 300, se = 8, fe = h.top - V.top, Le = h.bottom - V.top, Se = V.height - Le - se, yt = fe - se;
1951
- Se >= H || yt < Se ? (B.value = "bottom", m.value = {
1952
- top: `${h.height + se}px`,
1953
- left: "0px",
1954
- right: "0px",
1955
- bottom: "auto"
1956
- }) : (B.value = "top", m.value = {
1957
- top: "auto",
1958
- left: "0px",
1959
- right: "0px",
1960
- bottom: `${h.height + se}px`
1961
- });
1954
+ const h = c.value.getBoundingClientRect(), V = me(c.value).getBoundingClientRect(), N = 300, se = 20, ne = 8, Le = h.top - V.top, Ie = h.bottom - V.top, Ye = V.height - Ie - ne - se, et = Le - ne - se;
1955
+ let Te = !1;
1956
+ if (Ye >= et ? Te = !0 : Te = !1, Te) {
1957
+ B.value = "bottom";
1958
+ const Re = Math.min(N, Math.max(Ye + se, 50));
1959
+ m.value = {
1960
+ top: `${h.height + ne}px`,
1961
+ left: "0px",
1962
+ right: "0px",
1963
+ bottom: "auto",
1964
+ maxHeight: `${Re}px`
1965
+ };
1966
+ } else {
1967
+ B.value = "top";
1968
+ const Re = Math.min(N, Math.max(et + se, 50));
1969
+ m.value = {
1970
+ top: "auto",
1971
+ left: "0px",
1972
+ right: "0px",
1973
+ bottom: `${h.height + ne}px`,
1974
+ maxHeight: `${Re}px`
1975
+ };
1976
+ }
1962
1977
  }, Ce = async (h) => {
1963
1978
  r.value || !p.value && (h.key === "ArrowDown" || h.key === "ArrowUp") && (h.preventDefault(), await oe());
1964
1979
  }, Ve = (h) => {
@@ -1972,26 +1987,26 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
1972
1987
  h.preventDefault();
1973
1988
  const V = W.value[S.value];
1974
1989
  V && J(V), z.value?.blur();
1975
- } else b === "Escape" ? (h.preventDefault(), ie()) : b === "Backspace" ? s.value && $.value === "" && f.value.length && (f.value = f.value.slice(0, -1), a.value = [...f.value], n("change", a.value)) : b === "Home" ? (S.value = 0, _e(R.value[0], v.value)) : b === "End" ? (S.value = W.value.length - 1, _e(R.value[S.value], v.value)) : b === "Tab" && ie();
1976
- }, vt = () => {
1990
+ } else b === "Escape" ? (h.preventDefault(), ue()) : b === "Backspace" ? s.value && $.value === "" && f.value.length && (f.value = f.value.slice(0, -1), a.value = [...f.value], n("change", a.value)) : b === "Home" ? (S.value = 0, _e(R.value[0], v.value)) : b === "End" ? (S.value = W.value.length - 1, _e(R.value[S.value], v.value)) : b === "Tab" && ue();
1991
+ }, bt = () => {
1977
1992
  r.value || (x.value = !0);
1978
- }, mt = () => {
1993
+ }, yt = () => {
1979
1994
  x.value = !1, $.value = "";
1980
- }, qe = (h) => {
1981
- h.key === "Escape" && p.value && ie();
1982
- }, Ge = (h) => {
1983
- u.value && (u.value.contains(h.target) || ie());
1984
1995
  }, Je = (h) => {
1996
+ h.key === "Escape" && p.value && ue();
1997
+ }, Ke = (h) => {
1998
+ u.value && (u.value.contains(h.target) || ue());
1999
+ }, Ze = (h) => {
1985
2000
  p.value && v.value && !v.value.contains(h.target) && he();
1986
- }, Ke = () => {
2001
+ }, We = () => {
1987
2002
  p.value && he();
1988
- }, Ze = () => {
2003
+ }, Qe = () => {
1989
2004
  p.value && he();
1990
2005
  };
1991
2006
  te(() => t.options, (h) => {
1992
2007
  h?.length && (_.value = [...h]);
1993
2008
  }, { immediate: !0 });
1994
- const We = async () => {
2009
+ const Xe = async () => {
1995
2010
  if (s.value)
1996
2011
  Array.isArray(a.value) ? f.value = [...a.value] : (f.value = a.value == null ? [] : [a.value], a.value = [...f.value]), !t.options?.length && t.data && await G(f.value);
1997
2012
  else {
@@ -2003,37 +2018,37 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
2003
2018
  }
2004
2019
  };
2005
2020
  te(a, () => {
2006
- We();
2007
- }), ge(async () => {
2008
- addEventListener("keydown", qe), addEventListener("scroll", Je, !0), addEventListener("resize", Ke), document.addEventListener("click", Ge, !0), c.value && me(c.value).addEventListener("scroll", Ze, !0), t.options?.length ? _.value = [...t.options] : t.data && (_.value = await I("")), await We();
2009
- }), Re(() => {
2010
- removeEventListener("keydown", qe), removeEventListener("scroll", Je, !0), removeEventListener("resize", Ke), document.removeEventListener("click", Ge, !0), c.value && me(c.value).removeEventListener("scroll", Ze, !0);
2021
+ Xe();
2022
+ }), be(async () => {
2023
+ addEventListener("keydown", Je), addEventListener("scroll", Ze, !0), addEventListener("resize", We), document.addEventListener("click", Ke, !0), c.value && me(c.value).addEventListener("scroll", Qe, !0), t.options?.length ? _.value = [...t.options] : t.data && (_.value = await I("")), await Xe();
2024
+ }), He(() => {
2025
+ removeEventListener("keydown", Je), removeEventListener("scroll", Ze, !0), removeEventListener("resize", We), document.removeEventListener("click", Ke, !0), c.value && me(c.value).removeEventListener("scroll", Qe, !0);
2011
2026
  });
2012
- async function ht() {
2027
+ async function xt() {
2013
2028
  if (!t.add) return;
2014
- const h = await Te({ form: t.add.form, mode: "add" });
2029
+ const h = await Pe({ form: t.add.form, mode: "add" });
2015
2030
  h && (await fetch(`/api/table/${t.add.token}`, {
2016
2031
  method: "POST",
2017
2032
  headers: { "Content-Type": "application/json" },
2018
2033
  body: JSON.stringify(h)
2019
2034
  }).then((b) => b.json()), !t.options?.length && t.data && (_.value = await I($.value)));
2020
2035
  }
2021
- function gt(h, b = 200) {
2036
+ function wt(h, b = 200) {
2022
2037
  let V;
2023
- return (...H) => {
2024
- V && clearTimeout(V), V = window.setTimeout(() => h(...H), b);
2038
+ return (...N) => {
2039
+ V && clearTimeout(V), V = window.setTimeout(() => h(...N), b);
2025
2040
  };
2026
2041
  }
2027
- const bt = gt(async (h) => {
2042
+ const kt = wt(async (h) => {
2028
2043
  _.value = await I(h);
2029
2044
  }, 200);
2030
2045
  return te($, (h) => {
2031
- t.data && bt(h.trim());
2046
+ t.data && kt(h.trim());
2032
2047
  }), te(() => t.options, (h) => {
2033
2048
  !t.data && h?.length && (_.value = [...h]);
2034
2049
  }, { immediate: !0 }), te(() => t.parent ?? t.parentValue, () => {
2035
2050
  t.data && C();
2036
- }), te(ye, async () => {
2051
+ }), te(xe, async () => {
2037
2052
  t.data && (s.value ? (f.value = [], a.value = [], n("change", [])) : (g.value = null, a.value = null, n("change", null)));
2038
2053
  }), (h, b) => (i(), d("div", {
2039
2054
  class: "flex gap-1 w-full",
@@ -2079,21 +2094,21 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
2079
2094
  class: "flex min-w-0 bg-[#e6e6e6] rounded-sm m-0.5 box-border",
2080
2095
  key: V.id
2081
2096
  }, [
2082
- l("div", za, [
2097
+ l("div", Fa, [
2083
2098
  V?.color ? (i(), d("span", {
2084
2099
  key: 0,
2085
2100
  class: "w-[16px] h-[16px] rounded-md block ml-1.5",
2086
- style: ke({ backgroundColor: V?.color })
2087
- }, null, 4)) : F("", !0),
2101
+ style: ge({ backgroundColor: V?.color })
2102
+ }, null, 4)) : A("", !0),
2088
2103
  l("div", {
2089
2104
  class: "truncate text-gray-900 overflow-hidden",
2090
2105
  title: V.text
2091
- }, T(V.text), 9, Ea)
2106
+ }, T(V.text), 9, Da)
2092
2107
  ]),
2093
2108
  l("div", {
2094
2109
  role: "button",
2095
2110
  class: "flex items-center rounded-sm px-1 box-border hover:bg-[#ffbdad] hover:text-[#de350b]",
2096
- onClick: ve((H) => P(V.id), ["stop"])
2111
+ onClick: ve((N) => P(V.id), ["stop"])
2097
2112
  }, b[3] || (b[3] = [
2098
2113
  l("svg", {
2099
2114
  height: "14",
@@ -2105,7 +2120,7 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
2105
2120
  }, [
2106
2121
  l("path", { d: "M14.348 14.849c-0.469 0.469-1.229 0.469-1.697 0l-2.651-3.030-2.651 3.029c-0.469 0.469-1.229 0.469-1.697 0-0.469-0.469-0.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-0.469-0.469-0.469-1.228 0-1.697s1.228-0.469 1.697 0l2.652 3.031 2.651-3.031c0.469-0.469 1.228-0.469 1.697 0s0.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c0.469 0.469 0.469 1.229 0 1.698z" })
2107
2122
  ], -1)
2108
- ]), 8, Fa)
2123
+ ]), 8, Oa)
2109
2124
  ]))), 128)) : !s.value && !x.value && g.value?.text && $.value === "" ? (i(), d("div", {
2110
2125
  key: 1,
2111
2126
  class: M(["truncate text-gray-900"]),
@@ -2114,14 +2129,14 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
2114
2129
  g.value?.color ? (i(), d("span", {
2115
2130
  key: 0,
2116
2131
  class: "w-[14px] h-[14px] rounded-md block mr-1 mt-1 absolute",
2117
- style: ke({ backgroundColor: g.value?.color })
2118
- }, null, 4)) : F("", !0),
2132
+ style: ge({ backgroundColor: g.value?.color })
2133
+ }, null, 4)) : A("", !0),
2119
2134
  l("span", {
2120
2135
  class: M({ "pl-5": g.value?.color })
2121
2136
  }, T(g.value.text), 3)
2122
- ], 8, Aa)) : F("", !0),
2123
- O.value ? (i(), d("div", Oa, T(U.value), 1)) : F("", !0),
2124
- l("div", Da, [
2137
+ ], 8, Ua)) : A("", !0),
2138
+ D.value ? (i(), d("div", Ta, T(U.value), 1)) : A("", !0),
2139
+ l("div", Ra, [
2125
2140
  !r.value && h.search ? K((i(), d("input", {
2126
2141
  key: 0,
2127
2142
  ref_key: "inputRef",
@@ -2136,16 +2151,16 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
2136
2151
  "aria-autocomplete": "list",
2137
2152
  placeholder: (s.value && f.value.length ? " " : null) || (x.value && !$.value?.length ? g.value?.text : " "),
2138
2153
  "onUpdate:modelValue": b[0] || (b[0] = (V) => $.value = V),
2139
- onFocus: vt,
2140
- onBlur: mt,
2154
+ onFocus: bt,
2155
+ onBlur: yt,
2141
2156
  onKeydown: Ve
2142
- }, null, 40, Ua)), [
2143
- [ne, $.value]
2144
- ]) : F("", !0)
2157
+ }, null, 40, Pa)), [
2158
+ [re, $.value]
2159
+ ]) : A("", !0)
2145
2160
  ])
2146
2161
  ], 512),
2147
- l("div", Ta, [
2148
- re.value ? (i(), d("button", {
2162
+ l("div", Ha, [
2163
+ ie.value ? (i(), d("button", {
2149
2164
  key: 0,
2150
2165
  type: "button",
2151
2166
  class: "px-2 text-gray-400 hover:text-gray-500 transition-colors disabled:opacity-50",
@@ -2161,14 +2176,15 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
2161
2176
  }, [
2162
2177
  l("path", { d: "M14.348 14.849c-0.469 0.469-1.229 0.469-1.697 0l-2.651-3.030-2.651 3.029c-0.469 0.469-1.229 0.469-1.697 0-0.469-0.469-0.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-0.469-0.469-0.469-1.228 0-1.697s1.228-0.469 1.697 0l2.652 3.031 2.651-3.031c0.469-0.469 1.228-0.469 1.697 0s0.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c0.469 0.469 0.469 1.229 0 1.698z" })
2163
2178
  ], -1)
2164
- ]), 8, Ra)) : F("", !0),
2179
+ ]), 8, Na)) : A("", !0),
2165
2180
  b[6] || (b[6] = l("div", { class: "self-stretch w-px bg-[#ccc] my-[1px]" }, null, -1)),
2166
2181
  l("button", {
2167
2182
  type: "button",
2168
2183
  class: "px-2 text-gray-400 hover:text-gray-500 transition-colors disabled:opacity-50",
2169
2184
  "aria-hidden": "true",
2170
2185
  disabled: r.value,
2171
- onClick: b[1] || (b[1] = ve((V) => xe(), ["stop"]))
2186
+ onClick: b[1] || (b[1] = ve((V) => we(), ["stop"])),
2187
+ title: p.value ? "Закрити список" : "Відкрити список"
2172
2188
  }, b[5] || (b[5] = [
2173
2189
  l("svg", {
2174
2190
  height: "20",
@@ -2178,70 +2194,71 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
2178
2194
  }, [
2179
2195
  l("path", { d: "M4.516 7.548c0.436-0.446 1.043-0.481 1.576 0l3.908 3.747 3.908-3.747c0.533-0.481 1.141-0.446 1.574 0 0.436 0.445 0.408 1.197 0 1.615-0.406 0.418-4.695 4.502-4.695 4.502-0.217 0.223-0.502 0.335-0.787 0.335s-0.57-0.112-0.789-0.335c0 0-4.287-4.084-4.695-4.502s-0.436-1.17 0-1.615z" })
2180
2196
  ], -1)
2181
- ]), 8, Pa)
2197
+ ]), 8, qa)
2182
2198
  ])
2183
- ], 42, Ia),
2199
+ ], 42, Aa),
2184
2200
  p.value ? (i(), d("div", {
2185
2201
  key: 0,
2186
2202
  class: M([
2187
2203
  "absolute z-10 w-full rounded bg-white shadow-[0_0_0_1px_rgba(0,0,0,0.1),0_4px_11px_rgba(0,0,0,0.1)]",
2188
2204
  B.value === "bottom" ? "mt-2" : "mb-2"
2189
2205
  ]),
2190
- style: ke(m.value),
2206
+ style: ge(m.value),
2191
2207
  role: "listbox"
2192
2208
  }, [
2193
2209
  l("div", {
2194
- class: "max-h-[300px] overflow-y-auto py-1",
2210
+ class: "overflow-y-auto py-1",
2211
+ style: ge({ maxHeight: m.value.maxHeight || "300px" }),
2195
2212
  ref_key: "listRef",
2196
2213
  ref: v
2197
2214
  }, [
2198
- W.value.length ? (i(!0), d(Y, { key: 0 }, le(W.value, (V, H) => (i(), d("div", {
2215
+ W.value.length ? (i(!0), d(Y, { key: 0 }, le(W.value, (V, N) => (i(), d("div", {
2199
2216
  key: V.id,
2200
2217
  ref_for: !0,
2201
- ref: (se) => R.value[H] = se,
2218
+ ref: (se) => R.value[N] = se,
2202
2219
  class: M([
2203
2220
  "flex px-3 py-2 cursor-default select-none hover:bg-blue-300",
2204
- S.value === H ? "bg-blue-300" : "",
2221
+ S.value === N ? "bg-blue-300" : "",
2205
2222
  ee(V.id) ? "text-white bg-blue-500" : "text-gray-900 bg-white"
2206
2223
  ]),
2207
2224
  "aria-disabled": ee(V.id) ? "true" : "false",
2208
2225
  role: "option",
2209
2226
  tabindex: "-1",
2210
- onClick: (se) => pe(V)
2227
+ onClick: (se) => fe(V)
2211
2228
  }, [
2212
2229
  V?.color ? (i(), d("span", {
2213
2230
  key: 0,
2214
2231
  class: "w-[11px] h-[11px] rounded-full block mr-1 mt-1.5",
2215
- style: ke({ backgroundColor: V?.color })
2216
- }, null, 4)) : F("", !0),
2232
+ style: ge({ backgroundColor: V?.color })
2233
+ }, null, 4)) : A("", !0),
2217
2234
  l("div", {
2218
2235
  class: M([
2219
2236
  "leading-[19px]",
2220
2237
  S.value === V.id ? "text-white" : "",
2221
2238
  // active style like react-select
2222
- (S.value === H, "")
2239
+ (S.value === N, "")
2223
2240
  ])
2224
2241
  }, T(V.text), 3)
2225
- ], 10, Na))), 128)) : (i(), d("div", Ha, " No options "))
2226
- ], 512)
2227
- ], 6)) : F("", !0)
2242
+ ], 10, Ga))), 128)) : (i(), d("div", Ja, " No options "))
2243
+ ], 4)
2244
+ ], 6)) : A("", !0)
2228
2245
  ], 2),
2229
2246
  t.add ? (i(), d("button", {
2230
2247
  key: 0,
2231
- onClick: ht,
2248
+ onClick: xt,
2232
2249
  class: "bg-white hover:bg-gray-100 text-sm text-gray-900 py-[10px] px-3 border border-stone-200 rounded-md h-[38px] flex items-center gap-2",
2233
2250
  disabled: r.value,
2234
2251
  type: "button"
2235
2252
  }, [
2236
- j(Fe, {
2253
+ j(Ae, {
2237
2254
  width: "16",
2238
2255
  height: "16"
2239
2256
  }),
2240
2257
  b[9] || (b[9] = l("span", null, "Додати", -1))
2241
- ], 8, qa)) : F("", !0)
2258
+ ], 8, Ka)) : A("", !0)
2242
2259
  ], 512));
2243
2260
  }
2244
- }), Ja = ["placeholder", "disabled"], Ka = /* @__PURE__ */ A({
2261
+ }), Wa = ["placeholder", "disabled"], Qa = /* @__PURE__ */ F({
2245
2262
  __name: "vs-input-textarea",
2246
2263
  props: /* @__PURE__ */ Q({
2247
2264
  style: { default: () => ({}) },
@@ -2257,7 +2274,7 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
2257
2274
  }),
2258
2275
  emits: ["update:modelValue"],
2259
2276
  setup(o) {
2260
- const e = o, { inputClass: t } = be(e.style), n = X(o, "modelValue");
2277
+ const e = o, { inputClass: t } = ye(e.style), n = X(o, "modelValue");
2261
2278
  return (s, r) => K((i(), d("textarea", {
2262
2279
  "onUpdate:modelValue": r[0] || (r[0] = (a) => n.value = a),
2263
2280
  placeholder: s.placeholder,
@@ -2267,11 +2284,11 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
2267
2284
  style: {
2268
2285
  border: "1px solid #CFD9E0"
2269
2286
  }
2270
- }, null, 10, Ja)), [
2271
- [ne, n.value]
2287
+ }, null, 10, Wa)), [
2288
+ [re, n.value]
2272
2289
  ]);
2273
2290
  }
2274
- }), Za = {}, Wa = {
2291
+ }), Xa = {}, Ya = {
2275
2292
  xmlns: "http://www.w3.org/2000/svg",
2276
2293
  viewBox: "0 0 24 24",
2277
2294
  fill: "none",
@@ -2281,8 +2298,8 @@ const No = /* @__PURE__ */ N(To, [["render", Po]]), Ho = { class: "flex flex-col
2281
2298
  "stroke-linejoin": "round",
2282
2299
  class: "icon icon-tabler icons-tabler-outline icon-tabler-search stroke-gray-500 transition-all"
2283
2300
  };
2284
- function Qa(o, e) {
2285
- return i(), d("svg", Wa, e[0] || (e[0] = [
2301
+ function es(o, e) {
2302
+ return i(), d("svg", Ya, e[0] || (e[0] = [
2286
2303
  l("path", {
2287
2304
  stroke: "none",
2288
2305
  d: "M0 0h24v24H0z",
@@ -2292,7 +2309,7 @@ function Qa(o, e) {
2292
2309
  l("path", { d: "M21 21l-6 -6" }, null, -1)
2293
2310
  ]));
2294
2311
  }
2295
- const Xa = /* @__PURE__ */ N(Za, [["render", Qa]]), Ya = {}, es = {
2312
+ const ts = /* @__PURE__ */ H(Xa, [["render", es]]), ls = {}, os = {
2296
2313
  class: "flex-shrink-0 mt-0.5 size-3.5",
2297
2314
  xmlns: "http://www.w3.org/2000/svg",
2298
2315
  viewBox: "0 0 24 24",
@@ -2302,15 +2319,15 @@ const Xa = /* @__PURE__ */ N(Za, [["render", Qa]]), Ya = {}, es = {
2302
2319
  "stroke-linecap": "round",
2303
2320
  "stroke-linejoin": "round"
2304
2321
  };
2305
- function ts(o, e) {
2306
- return i(), d("svg", es, e[0] || (e[0] = [
2322
+ function as(o, e) {
2323
+ return i(), d("svg", os, e[0] || (e[0] = [
2307
2324
  l("path", { d: "m3 16 4 4 4-4" }, null, -1),
2308
2325
  l("path", { d: "M7 20V4" }, null, -1),
2309
2326
  l("path", { d: "m21 8-4-4-4 4" }, null, -1),
2310
2327
  l("path", { d: "M17 4v16" }, null, -1)
2311
2328
  ]));
2312
2329
  }
2313
- const ls = /* @__PURE__ */ N(Ya, [["render", ts]]), os = {}, as = {
2330
+ const ss = /* @__PURE__ */ H(ls, [["render", as]]), ns = {}, rs = {
2314
2331
  xmlns: "http://www.w3.org/2000/svg",
2315
2332
  width: "14",
2316
2333
  height: "14",
@@ -2321,8 +2338,8 @@ const ls = /* @__PURE__ */ N(Ya, [["render", ts]]), os = {}, as = {
2321
2338
  "stroke-linecap": "round",
2322
2339
  "stroke-linejoin": "round"
2323
2340
  };
2324
- function ss(o, e) {
2325
- return i(), d("svg", as, e[0] || (e[0] = [
2341
+ function is(o, e) {
2342
+ return i(), d("svg", rs, e[0] || (e[0] = [
2326
2343
  l("path", {
2327
2344
  stroke: "none",
2328
2345
  d: "M0 0h24v24H0z",
@@ -2333,7 +2350,7 @@ function ss(o, e) {
2333
2350
  l("path", { d: "M12 4l0 12" }, null, -1)
2334
2351
  ]));
2335
2352
  }
2336
- const ns = /* @__PURE__ */ N(os, [["render", ss]]), rs = {}, is = {
2353
+ const us = /* @__PURE__ */ H(ns, [["render", is]]), ds = {}, cs = {
2337
2354
  xmlns: "http://www.w3.org/2000/svg",
2338
2355
  viewBox: "0 0 24 24",
2339
2356
  fill: "none",
@@ -2342,8 +2359,8 @@ const ns = /* @__PURE__ */ N(os, [["render", ss]]), rs = {}, is = {
2342
2359
  "stroke-linecap": "round",
2343
2360
  "stroke-linejoin": "round"
2344
2361
  };
2345
- function us(o, e) {
2346
- return i(), d("svg", is, e[0] || (e[0] = [
2362
+ function ps(o, e) {
2363
+ return i(), d("svg", cs, e[0] || (e[0] = [
2347
2364
  l("path", {
2348
2365
  stroke: "none",
2349
2366
  d: "M0 0h24v24H0z",
@@ -2354,7 +2371,7 @@ function us(o, e) {
2354
2371
  l("path", { d: "M12 4l0 12" }, null, -1)
2355
2372
  ]));
2356
2373
  }
2357
- const ds = /* @__PURE__ */ N(rs, [["render", us]]), cs = {}, ps = {
2374
+ const fs = /* @__PURE__ */ H(ds, [["render", ps]]), vs = {}, ms = {
2358
2375
  xmlns: "http://www.w3.org/2000/svg",
2359
2376
  viewBox: "0 0 24 24",
2360
2377
  fill: "none",
@@ -2363,22 +2380,22 @@ const ds = /* @__PURE__ */ N(rs, [["render", us]]), cs = {}, ps = {
2363
2380
  "stroke-linecap": "round",
2364
2381
  "stroke-linejoin": "round"
2365
2382
  };
2366
- function fs(o, e) {
2367
- return i(), d("svg", ps, e[0] || (e[0] = [
2368
- ue('<circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle>', 6)
2383
+ function hs(o, e) {
2384
+ return i(), d("svg", ms, e[0] || (e[0] = [
2385
+ de('<circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle>', 6)
2369
2386
  ]));
2370
2387
  }
2371
- const ot = /* @__PURE__ */ N(cs, [["render", fs]]), vs = {}, ms = {
2388
+ const rt = /* @__PURE__ */ H(vs, [["render", hs]]), gs = {}, bs = {
2372
2389
  viewBox: "0 0 178 90",
2373
2390
  fill: "none",
2374
2391
  xmlns: "http://www.w3.org/2000/svg"
2375
2392
  };
2376
- function hs(o, e) {
2377
- return i(), d("svg", ms, e[0] || (e[0] = [
2378
- ue('<rect x="27" y="50.5" width="124" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="27" y="50.5" width="124" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-50 dark:stroke-neutral-700/10"></rect><rect x="34.5" y="58" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="61" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="73" width="77" height="6" rx="3" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-100 dark:stroke-neutral-700/30"></rect><rect x="27" y="36" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><rect x="59" y="39" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><rect x="59" y="51" width="92" height="6" rx="3" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><g filter="url(#filter1)"><rect x="12" y="6" width="154" height="40" rx="8" fill="currentColor" class="fill-white dark:fill-neutral-800" shape-rendering="crispEdges"></rect><rect x="12.5" y="6.5" width="153" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-100 dark:stroke-neutral-700/60" shape-rendering="crispEdges"></rect><rect x="20" y="14" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect><rect x="52" y="17" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect><rect x="52" y="29" width="106" height="6" rx="3" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect></g><defs><filter id="filter1" x="0" y="0" width="178" height="64" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"></feColorMatrix><feOffset dy="6"></feOffset><feGaussianBlur stdDeviation="6"></feGaussianBlur><feComposite in2="hardAlpha" operator="out"></feComposite><feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.03 0"></feColorMatrix><feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_1187_14810"></feBlend><feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_1187_14810" result="shape"></feBlend></filter></defs>', 12)
2393
+ function ys(o, e) {
2394
+ return i(), d("svg", bs, e[0] || (e[0] = [
2395
+ de('<rect x="27" y="50.5" width="124" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="27" y="50.5" width="124" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-50 dark:stroke-neutral-700/10"></rect><rect x="34.5" y="58" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="61" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="73" width="77" height="6" rx="3" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-100 dark:stroke-neutral-700/30"></rect><rect x="27" y="36" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><rect x="59" y="39" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><rect x="59" y="51" width="92" height="6" rx="3" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><g filter="url(#filter1)"><rect x="12" y="6" width="154" height="40" rx="8" fill="currentColor" class="fill-white dark:fill-neutral-800" shape-rendering="crispEdges"></rect><rect x="12.5" y="6.5" width="153" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-100 dark:stroke-neutral-700/60" shape-rendering="crispEdges"></rect><rect x="20" y="14" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect><rect x="52" y="17" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect><rect x="52" y="29" width="106" height="6" rx="3" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect></g><defs><filter id="filter1" x="0" y="0" width="178" height="64" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"></feColorMatrix><feOffset dy="6"></feOffset><feGaussianBlur stdDeviation="6"></feGaussianBlur><feComposite in2="hardAlpha" operator="out"></feComposite><feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.03 0"></feColorMatrix><feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_1187_14810"></feBlend><feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_1187_14810" result="shape"></feBlend></filter></defs>', 12)
2379
2396
  ]));
2380
2397
  }
2381
- const gs = /* @__PURE__ */ N(vs, [["render", hs]]), bs = {}, ys = {
2398
+ const xs = /* @__PURE__ */ H(gs, [["render", ys]]), ws = {}, ks = {
2382
2399
  xmlns: "http://www.w3.org/2000/svg",
2383
2400
  viewBox: "0 0 24 24",
2384
2401
  fill: "none",
@@ -2387,16 +2404,16 @@ const gs = /* @__PURE__ */ N(vs, [["render", hs]]), bs = {}, ys = {
2387
2404
  "stroke-linecap": "round",
2388
2405
  "stroke-linejoin": "round"
2389
2406
  };
2390
- function xs(o, e) {
2391
- return i(), d("svg", ys, e[0] || (e[0] = [
2407
+ function _s(o, e) {
2408
+ return i(), d("svg", ks, e[0] || (e[0] = [
2392
2409
  l("path", { d: "M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z" }, null, -1)
2393
2410
  ]));
2394
2411
  }
2395
- const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable border rounded-xl w-full flex-grow" }, _s = { class: "flex items-center npm gap-[16px] justify-between p-[20px] pb-[16px]" }, $s = { class: "relative w-full" }, Cs = { class: "table-wrapper flex gap-2" }, Vs = { class: "vs-popover inline-block text-slate-700" }, Ms = { class: "text-center" }, Ls = { class: "" }, Ss = { class: "py-1 px-0 w-full text-sm text-stone-800 bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-lg focus:outline-none focus:bg-stone-100 dark:bg-neutral-900 dark:text-neutral-200 dark:focus:bg-neutral-800 after:h-4 after:absolute after:-bottom-4 after:start-0 after:w-full before:h-4 before:absolute before:-top-4 before:start-0 before:w-full" }, Bs = { class: "flex flex-col p-[1px] gap-[2px] w-[140px]" }, js = { class: "text-sm items-center text-gray-800 flex gap-1" }, Is = { class: "w-full overflow-x-auto" }, zs = { class: "w-full table-auto caption-bottom text-sm" }, Es = { class: "[&_tr]:border-b" }, Fs = { class: "border-b data-[state=selected]:bg-muted bg-slate-50/50 dark:bg-slate-700/50 hover:bg-slate-50/80 dark:hover:bg-slate-700/80 transition-colors" }, As = { class: "h-10 px-2 align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] w-12 text-center" }, Os = {
2412
+ const $s = /* @__PURE__ */ H(ws, [["render", _s]]), Cs = { class: "vs-datatable border rounded-xl w-full flex-grow" }, Vs = { class: "flex items-center npm gap-[16px] justify-between p-[20px] pb-[16px]" }, Ms = { class: "relative w-full" }, Ls = { class: "table-wrapper flex gap-2" }, Ss = { class: "vs-popover inline-block text-slate-700" }, Bs = { class: "text-center" }, js = { class: "" }, Is = { class: "py-1 px-0 w-full text-sm text-stone-800 bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-lg focus:outline-none focus:bg-stone-100 dark:bg-neutral-900 dark:text-neutral-200 dark:focus:bg-neutral-800 after:h-4 after:absolute after:-bottom-4 after:start-0 after:w-full before:h-4 before:absolute before:-top-4 before:start-0 before:w-full" }, zs = { class: "flex flex-col p-[1px] gap-[2px] w-[140px]" }, Es = { class: "text-sm items-center text-gray-800 flex gap-1" }, As = { class: "w-full overflow-x-auto" }, Fs = { class: "w-full table-auto caption-bottom text-sm" }, Ds = { class: "[&_tr]:border-b" }, Os = { class: "border-b data-[state=selected]:bg-muted bg-slate-50/50 dark:bg-slate-700/50 hover:bg-slate-50/80 dark:hover:bg-slate-700/80 transition-colors" }, Us = { class: "h-10 px-2 align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] w-12 text-center" }, Ts = {
2396
2413
  key: 0,
2397
2414
  colspan: "100%",
2398
2415
  class: "text-center"
2399
- }, Ds = { class: "w-full" }, Us = { class: "p-5 min-h-[200px] flex flex-col justify-center items-center text-center" }, Ts = ["onDragstart", "onDragover", "onDrop"], Rs = { class: "p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] text-center" }, Ps = { class: "flex items-center justify-center" }, Ns = { class: "inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent bg-slate-100 dark:bg-slate-700 text-slate-700 dark:text-slate-300 hover:bg-slate-200 dark:hover:bg-slate-600 transition-colors" }, Hs = { class: "p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]" }, qs = { class: "flex items-center justify-center gap-2" }, Gs = ["onClick"], Js = ["onClick"], Ks = { class: "vs-form__head mr-5 mt-3 flex items-center justify-end sticky top-0 left-0 z-[60] bg-white" }, Zs = /* @__PURE__ */ A({
2416
+ }, Rs = { class: "w-full" }, Ps = { class: "p-5 min-h-[200px] flex flex-col justify-center items-center text-center" }, Hs = ["onDragstart", "onDragover", "onDrop"], Ns = { class: "p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] text-center" }, qs = { class: "flex items-center justify-center" }, Gs = { class: "inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent bg-slate-100 dark:bg-slate-700 text-slate-700 dark:text-slate-300 hover:bg-slate-200 dark:hover:bg-slate-600 transition-colors" }, Js = { class: "p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]" }, Ks = { class: "flex items-center justify-center gap-2" }, Zs = ["onClick"], Ws = ["onClick"], Qs = { class: "vs-form__head mr-5 mt-3 flex items-center justify-end sticky top-0 left-0 z-[60] bg-white" }, Xs = /* @__PURE__ */ F({
2400
2417
  __name: "vs-input-datatable",
2401
2418
  props: /* @__PURE__ */ Q({
2402
2419
  colModel: {},
@@ -2413,7 +2430,7 @@ const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable
2413
2430
  }),
2414
2431
  emits: ["update:modelValue"],
2415
2432
  setup(o) {
2416
- const e = o, t = X(o, "modelValue"), n = w({}), s = w(""), r = D(() => {
2433
+ const e = o, t = X(o, "modelValue"), n = w({}), s = w(""), r = O(() => {
2417
2434
  if (!s.value) return t.value ?? [];
2418
2435
  const I = s.value.toLowerCase();
2419
2436
  return t.value.filter((C) => e.colModel?.some((E) => {
@@ -2442,20 +2459,20 @@ const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable
2442
2459
  const G = new FileReader();
2443
2460
  G.onload = (oe) => {
2444
2461
  try {
2445
- const ie = oe.target?.result;
2446
- if (typeof ie == "string") {
2447
- const xe = JSON.parse(ie);
2448
- Array.isArray(xe) && t.value.push(...xe);
2462
+ const ue = oe.target?.result;
2463
+ if (typeof ue == "string") {
2464
+ const we = JSON.parse(ue);
2465
+ Array.isArray(we) && t.value.push(...we);
2449
2466
  }
2450
- } catch (ie) {
2451
- console.error("Error parsing file:", ie);
2467
+ } catch (ue) {
2468
+ console.error("Error parsing file:", ue);
2452
2469
  }
2453
2470
  }, G.readAsText(E);
2454
2471
  }, z = () => {
2455
2472
  const I = JSON.stringify(t.value, null, 2), C = new Blob([I], { type: "application/json" }), E = URL.createObjectURL(C), G = document.createElement("a");
2456
2473
  G.href = E, G.download = "data.json", G.click(), URL.revokeObjectURL(E);
2457
2474
  };
2458
- ge(async () => {
2475
+ be(async () => {
2459
2476
  const I = e.colModel?.filter((C) => C.data);
2460
2477
  I?.length && Promise.all(I.map(async (C) => {
2461
2478
  const G = await (await fetch(`/api/suggest/${C.data}`)).json();
@@ -2464,8 +2481,8 @@ const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable
2464
2481
  });
2465
2482
  const B = w(""), m = w(!1);
2466
2483
  let f = "edit", Z = 0;
2467
- const U = w({}), O = w({});
2468
- async function re() {
2484
+ const U = w({}), D = w({});
2485
+ async function ie() {
2469
2486
  B.value = "Додати", m.value = !0, f = "add", U.value = {};
2470
2487
  }
2471
2488
  function ee(I, C) {
@@ -2474,22 +2491,22 @@ const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable
2474
2491
  async function W(I, C) {
2475
2492
  B.value = "Редагувати", m.value = !0, f = "edit", Z = C, U.value = { ...I };
2476
2493
  }
2477
- function Ie() {
2478
- const I = O.value.validate();
2494
+ function je() {
2495
+ const I = D.value.validate();
2479
2496
  if (I) {
2480
- we({ type: "warning", title: "Помилка валідації", message: Object.entries(I).map(([C, E]) => `${C}: ${E}`).join(`
2497
+ ke({ type: "warning", title: "Помилка валідації", message: Object.entries(I).map(([C, E]) => `${C}: ${E}`).join(`
2481
2498
  `) });
2482
2499
  return;
2483
2500
  }
2484
2501
  f === "add" ? Array.isArray(t.value) ? t.value = [...t.value, U.value] : t.value = [U.value] : t.value = t.value.map((C, E) => E === Z ? U.value : C), m.value = !1;
2485
2502
  }
2486
- function ye(I) {
2503
+ function xe(I) {
2487
2504
  t.value = t.value.filter((C, E) => E !== I);
2488
2505
  }
2489
- return (I, C) => (i(), d("div", ks, [
2490
- l("div", _s, [
2491
- l("div", $s, [
2492
- j(Xa, {
2506
+ return (I, C) => (i(), d("div", Cs, [
2507
+ l("div", Vs, [
2508
+ l("div", Ms, [
2509
+ j(ts, {
2493
2510
  width: "14",
2494
2511
  height: "14",
2495
2512
  class: "absolute left-3 top-1/2 transform -translate-y-1/2 text-stone-500"
@@ -2500,10 +2517,10 @@ const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable
2500
2517
  placeholder: "Пошук",
2501
2518
  class: "py-2 px-3 pl-10 w-full bg-gray-100 h-[36px] rounded-[8px] text-[15px] leading-[18px] focus:border-1 text-stone-800 placeholder:text-[#6B7280] focus:outline-blue-500 focus:outline-2"
2502
2519
  }, null, 512), [
2503
- [ne, s.value]
2520
+ [re, s.value]
2504
2521
  ])
2505
2522
  ]),
2506
- l("div", Cs, [
2523
+ l("div", Ls, [
2507
2524
  l("input", {
2508
2525
  ref_key: "fileInput",
2509
2526
  ref: v,
@@ -2512,14 +2529,14 @@ const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable
2512
2529
  accept: ".json",
2513
2530
  type: "file"
2514
2531
  }, null, 544),
2515
- l("div", Vs, [
2516
- l("div", Ms, [
2517
- l("div", Ls, [
2532
+ l("div", Ss, [
2533
+ l("div", Bs, [
2534
+ l("div", js, [
2518
2535
  l("button", {
2519
2536
  onClick: S,
2520
2537
  class: "bg-white hover:bg-gray-100 font-semibold text-[15px] leadig-[18.5px] py-[10px] px-[12px] border border-[#E5E7EB] rounded-[8px] h-[38px] max-h-[38px] gap-[8px] flex items-center"
2521
2538
  }, [
2522
- j(ls, {
2539
+ j(ss, {
2523
2540
  height: "16",
2524
2541
  width: "16"
2525
2542
  })
@@ -2528,56 +2545,56 @@ const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable
2528
2545
  ])
2529
2546
  ])
2530
2547
  ]),
2531
- (i(), ae(_t, { to: "body" }, [
2548
+ (i(), ae(Vt, { to: "body" }, [
2532
2549
  c.value ? (i(), d("div", {
2533
2550
  key: 0,
2534
2551
  class: "text-slate-700 vsTailwind vs-popover__content bottom",
2535
- style: ke([{ width: "fit-content", "z-index": "10002", position: "fixed" }, { position: "absolute", top: p.value.top + "px", left: p.value.left + "px" }])
2552
+ style: ge([{ width: "fit-content", "z-index": "10002", position: "fixed" }, { position: "absolute", top: p.value.top + "px", left: p.value.left + "px" }])
2536
2553
  }, [
2537
- l("div", Ss, [
2538
- l("div", Bs, [
2554
+ l("div", Is, [
2555
+ l("div", zs, [
2539
2556
  l("button", {
2540
2557
  onClick: R,
2541
2558
  class: "text-slate-700 flex items-center gap-1 px-3 py-2 rounded-md cursor-pointer group hover:bg-gray-100"
2542
2559
  }, [
2543
- j(ns, {
2560
+ j(us, {
2544
2561
  class: "text-black",
2545
2562
  width: "14",
2546
2563
  height: "14"
2547
2564
  }),
2548
- C[4] || (C[4] = ce(" Імпортувати ", -1))
2565
+ C[4] || (C[4] = pe(" Імпортувати ", -1))
2549
2566
  ]),
2550
2567
  l("button", {
2551
2568
  onClick: z,
2552
2569
  class: "text-slate-700 flex items-center px-3 py-2 rounded-md cursor-pointer group hover:bg-gray-100"
2553
2570
  }, [
2554
- l("span", js, [
2555
- j(ds, {
2571
+ l("span", Es, [
2572
+ j(fs, {
2556
2573
  class: "text-black",
2557
2574
  width: "14",
2558
2575
  height: "14"
2559
2576
  }),
2560
- C[5] || (C[5] = ce(" Експортувати ", -1))
2577
+ C[5] || (C[5] = pe(" Експортувати ", -1))
2561
2578
  ])
2562
2579
  ])
2563
2580
  ])
2564
2581
  ])
2565
- ], 4)) : F("", !0)
2582
+ ], 4)) : A("", !0)
2566
2583
  ])),
2567
2584
  l("button", {
2568
- onClick: re,
2585
+ onClick: ie,
2569
2586
  class: "text-slate-700 bg-white hover:bg-gray-100 font-semibold text-[15px] leadig-[18.5px] py-[10px] px-[12px] border border-[#E5E7EB] rounded-[8px] h-[38px] max-h-[38px] gap-[8px] flex items-center"
2570
2587
  }, [
2571
- j(Fe),
2572
- C[6] || (C[6] = ce(" Додати ", -1))
2588
+ j(Ae),
2589
+ C[6] || (C[6] = pe(" Додати ", -1))
2573
2590
  ])
2574
2591
  ]),
2575
- l("div", Is, [
2576
- l("table", zs, [
2577
- l("thead", Es, [
2578
- l("tr", Fs, [
2579
- l("th", As, [
2580
- j(ot, {
2592
+ l("div", As, [
2593
+ l("table", Fs, [
2594
+ l("thead", Ds, [
2595
+ l("tr", Os, [
2596
+ l("th", Us, [
2597
+ j(rt, {
2581
2598
  width: "24",
2582
2599
  height: "24",
2583
2600
  class: "w-4 h-4 mx-auto text-slate-400 dark:text-slate-500"
@@ -2593,17 +2610,17 @@ const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable
2593
2610
  l("tbody", {
2594
2611
  class: M({ "[&_tr:last-child]:border-0": !u.value })
2595
2612
  }, [
2596
- r.value.length === 0 ? (i(), d("td", Os, [
2597
- l("div", Ds, [
2598
- l("div", Us, [
2599
- j(gs, { class: "w-48 mx-auto" }),
2613
+ r.value.length === 0 ? (i(), d("td", Ts, [
2614
+ l("div", Rs, [
2615
+ l("div", Ps, [
2616
+ j(xs, { class: "w-48 mx-auto" }),
2600
2617
  C[8] || (C[8] = l("div", { class: "max-w-sm mx-auto mt-6" }, [
2601
2618
  l("p", { class: "font-medium text-gray-800 dark:text-neutral-200" }, "Нічого не знайдено"),
2602
2619
  l("p", { class: "mt-2 text-sm text-gray-500 dark:text-neutral-500" })
2603
2620
  ], -1))
2604
2621
  ])
2605
2622
  ])
2606
- ])) : F("", !0),
2623
+ ])) : A("", !0),
2607
2624
  (i(!0), d(Y, null, le(r.value, (E, G) => (i(), d("tr", {
2608
2625
  key: E.id,
2609
2626
  class: M(["border-b data-[state=selected]:bg-muted transition-all duration-200 hover:bg-slate-50/60 dark:hover:bg-slate-700/60 cursor-move", {
@@ -2615,9 +2632,9 @@ const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable
2615
2632
  onDragover: ve((oe) => g(G), ["prevent"]),
2616
2633
  onDrop: (oe) => _(G)
2617
2634
  }, [
2618
- l("td", Rs, [
2619
- l("div", Ps, [
2620
- j(ot, {
2635
+ l("td", Ns, [
2636
+ l("div", qs, [
2637
+ j(rt, {
2621
2638
  width: "24",
2622
2639
  height: "24",
2623
2640
  class: "w-4 h-4 mx-auto text-slate-400 dark:text-slate-500"
@@ -2628,22 +2645,22 @@ const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable
2628
2645
  key: oe.key,
2629
2646
  class: "p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]"
2630
2647
  }, [
2631
- l("div", Ns, T(ee(E, oe)), 1)
2648
+ l("div", Gs, T(ee(E, oe)), 1)
2632
2649
  ]))), 128)),
2633
- l("td", Hs, [
2634
- l("div", qs, [
2650
+ l("td", Js, [
2651
+ l("div", Ks, [
2635
2652
  l("button", {
2636
2653
  onClick: (oe) => W(E, G),
2637
2654
  class: "text-slate-700 inline-flex items-center justify-center whitespace-nowrap font-medium focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 border rounded-md text-xs h-7 w-7 p-0 border-slate-300 dark:border-slate-600 bg-white dark:bg-slate-700 hover:bg-blue-50 dark:hover:bg-slate-600 hover:border-blue-300 dark:hover:border-slate-500 hover:text-blue-600 dark:hover:text-slate-200 transition-all duration-200 shadow-sm"
2638
2655
  }, [
2639
- j(ws, {
2656
+ j($s, {
2640
2657
  width: "24",
2641
2658
  height: "24",
2642
2659
  class: "w-3 h-3"
2643
2660
  })
2644
- ], 8, Gs),
2661
+ ], 8, Zs),
2645
2662
  l("button", {
2646
- onClick: (oe) => ye(G),
2663
+ onClick: (oe) => xe(G),
2647
2664
  class: "text-slate-700 inline-flex items-center justify-center whitespace-nowrap font-medium focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 border rounded-md text-xs h-7 w-7 p-0 border-slate-300 dark:border-slate-600 bg-white dark:bg-slate-700 hover:bg-red-50 dark:hover:bg-slate-600 hover:border-red-300 dark:hover:border-slate-500 hover:text-red-600 dark:hover:text-slate-200 transition-all duration-200 shadow-sm"
2648
2665
  }, [
2649
2666
  j(Ue, {
@@ -2651,34 +2668,34 @@ const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable
2651
2668
  height: "24",
2652
2669
  class: "w-3 h-3"
2653
2670
  })
2654
- ], 8, Js)
2671
+ ], 8, Ws)
2655
2672
  ])
2656
2673
  ])
2657
- ], 42, Ts))), 128))
2674
+ ], 42, Hs))), 128))
2658
2675
  ], 2)
2659
2676
  ])
2660
2677
  ]),
2661
- j(q(Vt), {
2678
+ j(q(St), {
2662
2679
  visible: m.value,
2663
2680
  title: B.value,
2664
2681
  size: "lg"
2665
2682
  }, {
2666
- default: je(() => [
2667
- j(De, {
2683
+ default: Be(() => [
2684
+ j(Oe, {
2668
2685
  schema: e.colModel,
2669
2686
  values: U.value,
2670
2687
  "onUpdate:values": C[1] || (C[1] = (E) => U.value = E),
2671
- form: O.value,
2672
- "onUpdate:form": C[2] || (C[2] = (E) => O.value = E)
2688
+ form: D.value,
2689
+ "onUpdate:form": C[2] || (C[2] = (E) => D.value = E)
2673
2690
  }, null, 8, ["schema", "values", "form"]),
2674
- l("div", Ks, [
2691
+ l("div", Qs, [
2675
2692
  l("button", {
2676
2693
  type: "button",
2677
2694
  onClick: C[3] || (C[3] = (E) => m.value = !1),
2678
2695
  class: "vs-button inline-flex border-solid justify-center items-center gap-2 rounded-md font-semibold focus:outline-none text-sm transition-all border !border-gray-200 hover:text-white bg-white text-red-500 hover:border-red-500 hover:bg-red-500 focus:ring-red-500 py-1.5 px-5 focus:ring-1 focus:ring-offset-1 mr-2"
2679
2696
  }, " Скасувати "),
2680
2697
  l("button", {
2681
- onClick: Ie,
2698
+ onClick: je,
2682
2699
  type: "button",
2683
2700
  class: "vs-button inline-flex border-solid justify-center items-center gap-2 rounded-md font-semibold focus:outline-none text-sm transition-all border-1 border-transparent text-white bg-blue-500 hover:bg-blue-600 focus:ring-blue-500 py-1.5 px-5 focus:ring-1 focus:ring-offset-1"
2684
2701
  }, " Зберегти ")
@@ -2688,7 +2705,7 @@ const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable
2688
2705
  }, 8, ["visible", "title"])
2689
2706
  ]));
2690
2707
  }
2691
- }), Ws = {
2708
+ }), Ys = {
2692
2709
  draw: {
2693
2710
  toolbar: {
2694
2711
  actions: {
@@ -2796,7 +2813,7 @@ const ws = /* @__PURE__ */ N(bs, [["render", xs]]), ks = { class: "vs-datatable
2796
2813
  }
2797
2814
  }
2798
2815
  };
2799
- function Qs(o) {
2816
+ function en(o) {
2800
2817
  return o ? o.type === "FeatureCollection" || o.type === "Feature" ? o : o.geom ? {
2801
2818
  type: "Feature",
2802
2819
  geometry: {
@@ -2810,7 +2827,7 @@ function Qs(o) {
2810
2827
  properties: {}
2811
2828
  } : null : null;
2812
2829
  }
2813
- const Xs = {}, Ys = {
2830
+ const tn = {}, ln = {
2814
2831
  xmlns: "http://www.w3.org/2000/svg",
2815
2832
  viewBox: "0 0 24 24",
2816
2833
  stroke: "currentColor",
@@ -2820,8 +2837,8 @@ const Xs = {}, Ys = {
2820
2837
  "stroke-linejoin": "round",
2821
2838
  class: "icon icon-tabler icons-tabler-outline icon-tabler-map-pin"
2822
2839
  };
2823
- function en(o, e) {
2824
- return i(), d("svg", Ys, e[0] || (e[0] = [
2840
+ function on(o, e) {
2841
+ return i(), d("svg", ln, e[0] || (e[0] = [
2825
2842
  l("path", {
2826
2843
  stroke: "none",
2827
2844
  d: "M0 0h24v24H0z",
@@ -2831,7 +2848,7 @@ function en(o, e) {
2831
2848
  l("path", { d: "M17.657 16.657l-4.243 4.243a2 2 0 0 1 -2.827 0l-4.244 -4.243a8 8 0 1 1 11.314 0z" }, null, -1)
2832
2849
  ]));
2833
2850
  }
2834
- const tn = /* @__PURE__ */ N(Xs, [["render", en]]), ln = {}, on = {
2851
+ const an = /* @__PURE__ */ H(tn, [["render", on]]), sn = {}, nn = {
2835
2852
  xmlns: "http://www.w3.org/2000/svg",
2836
2853
  viewBox: "0 0 24 24",
2837
2854
  fill: "none",
@@ -2841,8 +2858,8 @@ const tn = /* @__PURE__ */ N(Xs, [["render", en]]), ln = {}, on = {
2841
2858
  "stroke-linejoin": "round",
2842
2859
  class: "icon icon-tabler icons-tabler-outline icon-tabler-line"
2843
2860
  };
2844
- function an(o, e) {
2845
- return i(), d("svg", on, e[0] || (e[0] = [
2861
+ function rn(o, e) {
2862
+ return i(), d("svg", nn, e[0] || (e[0] = [
2846
2863
  l("path", {
2847
2864
  stroke: "none",
2848
2865
  d: "M0 0h24v24H0z",
@@ -2853,7 +2870,7 @@ function an(o, e) {
2853
2870
  l("path", { d: "M7.5 16.5l9 -9" }, null, -1)
2854
2871
  ]));
2855
2872
  }
2856
- const sn = /* @__PURE__ */ N(ln, [["render", an]]), nn = {}, rn = {
2873
+ const un = /* @__PURE__ */ H(sn, [["render", rn]]), dn = {}, cn = {
2857
2874
  xmlns: "http://www.w3.org/2000/svg",
2858
2875
  viewBox: "0 0 24 24",
2859
2876
  fill: "none",
@@ -2863,12 +2880,12 @@ const sn = /* @__PURE__ */ N(ln, [["render", an]]), nn = {}, rn = {
2863
2880
  "stroke-linejoin": "round",
2864
2881
  class: "icon icon-tabler icons-tabler-outline icon-tabler-polygon"
2865
2882
  };
2866
- function un(o, e) {
2867
- return i(), d("svg", rn, e[0] || (e[0] = [
2868
- ue('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M12 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path><path d="M19 8m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path><path d="M5 11m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path><path d="M15 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path><path d="M6.5 9.5l3.5 -3"></path><path d="M14 5.5l3 1.5"></path><path d="M18.5 10l-2.5 7"></path><path d="M13.5 17.5l-7 -5"></path>', 9)
2883
+ function pn(o, e) {
2884
+ return i(), d("svg", cn, e[0] || (e[0] = [
2885
+ de('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M12 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path><path d="M19 8m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path><path d="M5 11m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path><path d="M15 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path><path d="M6.5 9.5l3.5 -3"></path><path d="M14 5.5l3 1.5"></path><path d="M18.5 10l-2.5 7"></path><path d="M13.5 17.5l-7 -5"></path>', 9)
2869
2886
  ]));
2870
2887
  }
2871
- const dn = /* @__PURE__ */ N(nn, [["render", un]]), cn = {}, pn = {
2888
+ const fn = /* @__PURE__ */ H(dn, [["render", pn]]), vn = {}, mn = {
2872
2889
  xmlns: "http://www.w3.org/2000/svg",
2873
2890
  viewBox: "0 0 24 24",
2874
2891
  fill: "none",
@@ -2878,12 +2895,12 @@ const dn = /* @__PURE__ */ N(nn, [["render", un]]), cn = {}, pn = {
2878
2895
  "stroke-linejoin": "round",
2879
2896
  class: "icon icon-tabler icons-tabler-outline icon-tabler-topology-ring-3"
2880
2897
  };
2881
- function fn(o, e) {
2882
- return i(), d("svg", pn, e[0] || (e[0] = [
2883
- ue('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M8 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z"></path><path d="M20 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z"></path><path d="M20 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z"></path><path d="M8 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z"></path><path d="M6 8v8"></path><path d="M18 16v-8"></path><path d="M8 6h8"></path><path d="M16 18h-8"></path>', 9)
2898
+ function hn(o, e) {
2899
+ return i(), d("svg", mn, e[0] || (e[0] = [
2900
+ de('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M8 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z"></path><path d="M20 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z"></path><path d="M20 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z"></path><path d="M8 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z"></path><path d="M6 8v8"></path><path d="M18 16v-8"></path><path d="M8 6h8"></path><path d="M16 18h-8"></path>', 9)
2884
2901
  ]));
2885
2902
  }
2886
- const vn = /* @__PURE__ */ N(cn, [["render", fn]]), mn = {}, hn = {
2903
+ const gn = /* @__PURE__ */ H(vn, [["render", hn]]), bn = {}, yn = {
2887
2904
  version: "1.1",
2888
2905
  viewBox: "0 0 14 14",
2889
2906
  xmlns: "http://www.w3.org/2000/svg",
@@ -2891,8 +2908,8 @@ const vn = /* @__PURE__ */ N(cn, [["render", fn]]), mn = {}, hn = {
2891
2908
  "xmlns:xlink": "http://www.w3.org/1999/xlink",
2892
2909
  class: "fullscreen-icon"
2893
2910
  };
2894
- function gn(o, e) {
2895
- return i(), d("svg", hn, e[0] || (e[0] = [
2911
+ function xn(o, e) {
2912
+ return i(), d("svg", yn, e[0] || (e[0] = [
2896
2913
  l("title", null, null, -1),
2897
2914
  l("desc", null, null, -1),
2898
2915
  l("defs", null, null, -1),
@@ -2921,10 +2938,10 @@ function gn(o, e) {
2921
2938
  ], -1)
2922
2939
  ]));
2923
2940
  }
2924
- const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__search" }, xn = { class: "map-search__input" }, wn = { class: "flex flex-nowrap relative" }, kn = { class: "form-autocomplete relative min-w-[6rem] vsTailwind map-search__select hidden" }, _n = { class: "flex items-center w-full" }, $n = { class: "max-w-[90%] truncate" }, Cn = {
2941
+ const wn = /* @__PURE__ */ H(bn, [["render", xn]]), kn = { class: "form-geom__search" }, _n = { class: "map-search__input" }, $n = { class: "flex flex-nowrap relative" }, Cn = { class: "form-autocomplete relative min-w-[6rem] vsTailwind map-search__select hidden" }, Vn = { class: "flex items-center w-full" }, Mn = { class: "max-w-[90%] truncate" }, Ln = {
2925
2942
  key: 0,
2926
2943
  class: "absolute z-[3100] mt-0.5 left-0 right-0"
2927
- }, Vn = { class: "form-autocomplete__wrapper mt-[10px] z-50 w-full min-w-36 max-h-72 p-0 space-y-0.5 bg-white rounded-xl shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] dark:bg-neutral-900 top-full opened" }, Mn = { class: "form-autocomplete__list vsTailwind px-2 pb-2 pt-0 max-h-200 relative [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500 dark:bg-neutral-900" }, Ln = ["onClick"], Sn = { class: "flex justify-between items-center w-full" }, Bn = { class: "flex items-center" }, jn = {
2944
+ }, Sn = { class: "form-autocomplete__wrapper mt-[10px] z-50 w-full min-w-36 max-h-72 p-0 space-y-0.5 bg-white rounded-xl shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] dark:bg-neutral-900 top-full opened" }, Bn = { class: "form-autocomplete__list vsTailwind px-2 pb-2 pt-0 max-h-200 relative [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500 dark:bg-neutral-900" }, jn = ["onClick"], In = { class: "flex justify-between items-center w-full" }, zn = { class: "flex items-center" }, En = {
2928
2945
  key: 0,
2929
2946
  class: "flex-shrink-0 w-3.5 h-3.5 text-blue-600",
2930
2947
  width: "24",
@@ -2935,16 +2952,16 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
2935
2952
  "stroke-width": "2",
2936
2953
  "stroke-linecap": "round",
2937
2954
  "stroke-linejoin": "round"
2938
- }, In = { class: "relative w-full" }, zn = { class: "vs-form-text relative bg-white rounded-lg" }, En = {
2955
+ }, An = { class: "relative w-full" }, Fn = { class: "vs-form-text relative bg-white rounded-lg" }, Dn = {
2939
2956
  key: 1,
2940
2957
  class: "absolute left-0 right-0 top-full z-[3200] bg-white border border-gray-200 rounded-b-lg shadow-lg max-h-72 overflow-auto"
2941
- }, Fn = { key: 0 }, An = ["onClick"], On = {
2958
+ }, On = { key: 0 }, Un = ["onClick"], Tn = {
2942
2959
  key: 1,
2943
2960
  class: "px-3 py-2 text-xs text-gray-500"
2944
- }, Dn = {
2961
+ }, Rn = {
2945
2962
  key: 2,
2946
2963
  class: "px-3 py-2 text-xs text-gray-400"
2947
- }, Un = /* @__PURE__ */ A({
2964
+ }, Pn = /* @__PURE__ */ F({
2948
2965
  __name: "map-search",
2949
2966
  props: {
2950
2967
  placeholder: { default: "50, 30" }
@@ -2958,14 +2975,14 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
2958
2975
  { value: "atu", label: "АТУ" },
2959
2976
  { value: "address", label: "Адресса" },
2960
2977
  { value: "search_here", label: "Пошук HERE" }
2961
- ], x = D(() => p.find((B) => B.value === s.value)?.label ?? "АТУ");
2978
+ ], x = O(() => p.find((B) => B.value === s.value)?.label ?? "АТУ");
2962
2979
  function g(B) {
2963
2980
  s.value = B.value, n.value = !1, r.value = "", r.value && R();
2964
2981
  }
2965
2982
  function _(B) {
2966
2983
  B.target.closest(".map-search__input") || (n.value = !1);
2967
2984
  }
2968
- ge(() => document.addEventListener("click", _)), Re(() => document.removeEventListener("click", _));
2985
+ be(() => document.addEventListener("click", _)), He(() => document.removeEventListener("click", _));
2969
2986
  async function S(B) {
2970
2987
  let m;
2971
2988
  s.value === "atu" ? m = "/api/suggest/atu.nsdi.ato_level" : s.value === "address" ? m = "/api/suggest/map.address_id" : s.value === "search_here" && (m = "/api/gis-url-proxy");
@@ -3003,17 +3020,17 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3003
3020
  function z(B) {
3004
3021
  t("goToCoordinates", B), u.value = !1, c.value = !1, a.value = [];
3005
3022
  }
3006
- return (B, m) => (i(), d("div", yn, [
3007
- l("div", xn, [
3008
- l("div", wn, [
3009
- l("div", kn, [
3023
+ return (B, m) => (i(), d("div", kn, [
3024
+ l("div", _n, [
3025
+ l("div", $n, [
3026
+ l("div", Cn, [
3010
3027
  l("button", {
3011
3028
  type: "button",
3012
3029
  onClick: m[0] || (m[0] = (f) => n.value = !n.value),
3013
3030
  class: "h-[40px] relative px-4 pe-9 flex text-nowrap w-full cursor-pointer bg-white border border-solid border-stone-200 rounded-lg text-start text-sm text-stone-800 focus:outline-none focus:ring-1 focus:ring-blue-600 dark:bg-neutral-800 dark:border-neutral-700 dark:text-neutral-200"
3014
3031
  }, [
3015
- l("div", _n, [
3016
- l("span", $n, T(x.value), 1)
3032
+ l("div", Vn, [
3033
+ l("span", Mn, T(x.value), 1)
3017
3034
  ]),
3018
3035
  m[3] || (m[3] = l("svg", {
3019
3036
  class: "stroke-gray-500 absolute right-3 translate-y-1/2 bottom-1/2",
@@ -3030,29 +3047,29 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3030
3047
  })
3031
3048
  ], -1))
3032
3049
  ]),
3033
- n.value ? (i(), d("div", Cn, [
3034
- l("div", Vn, [
3035
- l("div", Mn, [
3050
+ n.value ? (i(), d("div", Ln, [
3051
+ l("div", Sn, [
3052
+ l("div", Bn, [
3036
3053
  (i(), d(Y, null, le(p, (f) => l("div", {
3037
3054
  onClick: (Z) => g(f),
3038
3055
  key: f.value,
3039
3056
  class: "form-autocomplete__item cursor-pointer hs-selected:bg-stone-100 dark:hs-selected:bg-neutral-800 py-2 px-4 w-full text-sm text-gray-800 hover:bg-gray-100 rounded-lg focus:outline-none focus:bg-stone-100 dark:bg-neutral-900 dark:hover:bg-neutral-800 dark:text-neutral-200 dark:focus:bg-neutral-800 cursor-default"
3040
3057
  }, [
3041
- l("div", Sn, [
3042
- l("div", Bn, [
3058
+ l("div", In, [
3059
+ l("div", zn, [
3043
3060
  l("div", null, T(f.label), 1)
3044
3061
  ]),
3045
- f.value === s.value ? (i(), d("svg", jn, m[4] || (m[4] = [
3062
+ f.value === s.value ? (i(), d("svg", En, m[4] || (m[4] = [
3046
3063
  l("polyline", { points: "20 6 9 17 4 12" }, null, -1)
3047
- ]))) : F("", !0)
3064
+ ]))) : A("", !0)
3048
3065
  ])
3049
- ], 8, Ln)), 64))
3066
+ ], 8, jn)), 64))
3050
3067
  ])
3051
3068
  ])
3052
- ])) : F("", !0)
3069
+ ])) : A("", !0)
3053
3070
  ]),
3054
- l("div", In, [
3055
- l("div", zn, [
3071
+ l("div", An, [
3072
+ l("div", Fn, [
3056
3073
  m[6] || (m[6] = l("i", { class: "absolute bottom-1/2 translate-y-1/2 left-3 text-gray-500" }, [
3057
3074
  l("svg", {
3058
3075
  width: "16",
@@ -3084,7 +3101,7 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3084
3101
  placeholder: "lat, lng ex. 50, 30",
3085
3102
  class: "bg-white h-[38px] text-sm py-2 px-3 ps-9 pe-8 block w-full border border-solid placeholder:text-nowrap border-stone-200 rounded-lg text-stone-800 placeholder:text-stone-400 focus:outline focus:z-10 focus:border-blue-500 focus:ring-blue-500 focus:outline-blue-500"
3086
3103
  }, null, 544), [
3087
- [ne, r.value]
3104
+ [re, r.value]
3088
3105
  ]),
3089
3106
  r.value ? (i(), d("button", {
3090
3107
  key: 0,
@@ -3107,23 +3124,23 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3107
3124
  "stroke-linejoin": "round"
3108
3125
  })
3109
3126
  ], -1)
3110
- ]))) : F("", !0),
3111
- u.value && s.value !== "coordinates" ? (i(), d("div", En, [
3112
- a.value.length ? (i(), d("ul", Fn, [
3127
+ ]))) : A("", !0),
3128
+ u.value && s.value !== "coordinates" ? (i(), d("div", Dn, [
3129
+ a.value.length ? (i(), d("ul", On, [
3113
3130
  (i(!0), d(Y, null, le(a.value, (f) => (i(), d("li", {
3114
3131
  key: f.properties.place_id,
3115
3132
  onClick: (Z) => z(f),
3116
3133
  class: "px-3 py-2 text-sm cursor-pointer hover:bg-gray-100"
3117
- }, T(f.properties.display_name), 9, An))), 128))
3118
- ])) : c.value ? (i(), d("div", On, "Шукаю…")) : (i(), d("div", Dn, "Нічого не знайдено"))
3119
- ])) : F("", !0)
3134
+ }, T(f.properties.display_name), 9, Un))), 128))
3135
+ ])) : c.value ? (i(), d("div", Tn, "Шукаю…")) : (i(), d("div", Rn, "Нічого не знайдено"))
3136
+ ])) : A("", !0)
3120
3137
  ])
3121
3138
  ])
3122
3139
  ])
3123
3140
  ])
3124
3141
  ]));
3125
3142
  }
3126
- }), Tn = { class: "bg-white/95 p-2 rounded-xl shadow border border-gray-200" }, Rn = { class: "flex gap-2" }, Pn = ["onClick", "title"], Nn = ["src"], Hn = /* @__PURE__ */ A({
3143
+ }), Hn = { class: "bg-white/95 p-2 rounded-xl shadow border border-gray-200" }, Nn = { class: "flex gap-2" }, qn = ["onClick", "title"], Gn = ["src"], Jn = /* @__PURE__ */ F({
3127
3144
  __name: "map-layers",
3128
3145
  props: {
3129
3146
  basemaps: {}
@@ -3134,8 +3151,8 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3134
3151
  function r(a) {
3135
3152
  s("onLayerChange", a), n.value = a;
3136
3153
  }
3137
- return (a, u) => (i(), d("div", Tn, [
3138
- l("div", Rn, [
3154
+ return (a, u) => (i(), d("div", Hn, [
3155
+ l("div", Nn, [
3139
3156
  (i(!0), d(Y, null, le(a.basemaps, (c, v) => (i(), d("div", {
3140
3157
  key: v,
3141
3158
  class: M(["cursor-pointer border rounded-lg overflow-hidden hover:shadow-sm", { "ring-2 ring-blue-500 border-blue-300": n.value === v }]),
@@ -3148,21 +3165,21 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3148
3165
  src: c.preview,
3149
3166
  alt: "",
3150
3167
  class: "w-14 h-14 object-cover"
3151
- }, null, 8, Nn)
3152
- ], 10, Pn))), 128))
3168
+ }, null, 8, Gn)
3169
+ ], 10, qn))), 128))
3153
3170
  ])
3154
3171
  ]));
3155
3172
  }
3156
- }), qn = { class: "absolute top-4 left-4 z-[1000] w-[calc(100%-20px)] sm:w-[350px]" }, Gn = { class: "form-geom__panel flex gap-1 items-start mt-2" }, Jn = { class: "flex items-center gap-1" }, Kn = ["disabled"], Zn = { class: "absolute top-4 right-4 z-[1000]" }, Wn = { class: "flex flex-col gap-[2px]" }, Qn = ["aria-pressed"], Xn = ["aria-pressed"], Yn = ["aria-pressed"], er = ["aria-pressed"], tr = { class: "absolute bottom-0 left-0 right-0 z-[1000] bg-white/95 border-t border-gray-200 text-xs text-gray-700 flex items-center gap-4 pt-1" }, lr = {
3173
+ }), Kn = { class: "absolute top-4 left-4 z-[1000] w-[calc(100%-20px)] sm:w-[350px]" }, Zn = { class: "form-geom__panel flex gap-1 items-start mt-2" }, Wn = { class: "flex items-center gap-1" }, Qn = ["disabled"], Xn = { class: "absolute top-4 right-4 z-[1000]" }, Yn = { class: "flex flex-col gap-[2px]" }, er = ["aria-pressed"], tr = ["aria-pressed"], lr = ["aria-pressed"], or = ["aria-pressed"], ar = { class: "absolute bottom-0 left-0 right-0 z-[1000] bg-white/95 border-t border-gray-200 text-xs text-gray-700 flex items-center gap-4 pt-1" }, sr = {
3157
3174
  key: 0,
3158
3175
  class: "form-geom__feature flex items-center text-xs transition-all gap-2 w-full"
3159
- }, or = { class: "mr-auto" }, ar = { class: "font-bold" }, sr = { class: "flex items-center" }, nr = { class: "text-xs mr-2" }, rr = {
3176
+ }, nr = { class: "mr-auto" }, rr = { class: "font-bold" }, ir = { class: "flex items-center" }, ur = { class: "text-xs mr-2" }, dr = {
3160
3177
  key: 0,
3161
3178
  class: "text-xs"
3162
- }, ir = {
3179
+ }, cr = {
3163
3180
  key: 1,
3164
3181
  class: "text-xs"
3165
- }, ur = /* @__PURE__ */ A({
3182
+ }, pr = /* @__PURE__ */ F({
3166
3183
  __name: "vs-input-map",
3167
3184
  props: {
3168
3185
  tools: {},
@@ -3176,26 +3193,26 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3176
3193
  },
3177
3194
  emits: ["update:modelValue"],
3178
3195
  setup(o, { emit: e }) {
3179
- const t = $t(), n = o, s = e, r = w(null);
3196
+ const t = Mt(), n = o, s = e, r = w(null);
3180
3197
  let a, u, c;
3181
- const v = w(null), p = w(null), x = w(6), g = w(0), _ = w(t?.appContext.config.globalProperties.$settings?.center || [50, 30]), S = w(null), R = ie();
3198
+ const v = w(null), p = w(null), x = w(6), g = w(0), _ = w(t?.appContext.config.globalProperties.$settings?.center || [50, 30]), S = w(null), R = ue();
3182
3199
  let $;
3183
3200
  const z = w("topo100");
3184
3201
  function B() {
3185
3202
  return new Promise((y, k) => {
3186
3203
  window.L && window.L.Draw && y(0);
3187
- const P = (pe) => {
3188
- if (Array.from(document.styleSheets).some((he) => he?.href?.includes(pe))) return;
3204
+ const P = (fe) => {
3205
+ if (Array.from(document.styleSheets).some((he) => he?.href?.includes(fe))) return;
3189
3206
  const me = document.createElement("link");
3190
- me.rel = "stylesheet", me.href = pe, document.head.appendChild(me);
3191
- }, J = (pe) => new Promise((_e, me) => {
3192
- const he = Array.from(document.scripts).find((Ve) => Ve.src === pe);
3207
+ me.rel = "stylesheet", me.href = fe, document.head.appendChild(me);
3208
+ }, J = (fe) => new Promise((_e, me) => {
3209
+ const he = Array.from(document.scripts).find((Ve) => Ve.src === fe);
3193
3210
  if (he) {
3194
3211
  he.addEventListener("load", () => _e()), he.addEventListener("error", (Ve) => me(Ve));
3195
3212
  return;
3196
3213
  }
3197
3214
  const Ce = document.createElement("script");
3198
- Ce.src = pe, Ce.async = !0, Ce.onload = () => _e(), Ce.onerror = (Ve) => me(Ve), document.body.appendChild(Ce);
3215
+ Ce.src = fe, Ce.async = !0, Ce.onload = () => _e(), Ce.onerror = (Ve) => me(Ve), document.body.appendChild(Ce);
3199
3216
  });
3200
3217
  P("https://unpkg.com/leaflet@1.9.4/dist/leaflet.css"), P("https://unpkg.com/leaflet-draw@1.0.4/dist/leaflet.draw.css"), J("https://unpkg.com/leaflet@1.9.4/dist/leaflet.js").then(() => J("https://unpkg.com/leaflet-draw@1.0.4/dist/leaflet.draw.js")).then(() => y(0)).catch(k);
3201
3218
  });
@@ -3215,10 +3232,10 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3215
3232
  v.value?.click();
3216
3233
  }
3217
3234
  const U = w("");
3218
- function O(y) {
3235
+ function D(y) {
3219
3236
  return y instanceof L.Circle ? "Circle" : y instanceof L.Rectangle ? "Rectangle" : y instanceof L.Polygon && !(y instanceof L.Rectangle) ? "Polygon" : y instanceof L.Polyline && !(y instanceof L.Polygon) ? "Polyline" : y instanceof L.Marker ? "Point" : "Feature";
3220
3237
  }
3221
- function re(y) {
3238
+ function ie(y) {
3222
3239
  if (y instanceof L.Circle) {
3223
3240
  const k = y.getRadius();
3224
3241
  return Math.PI * (k * k) / 1e6;
@@ -3241,24 +3258,24 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3241
3258
  S.value = null, g.value = 0;
3242
3259
  return;
3243
3260
  }
3244
- const k = y[y.length - 1], P = O(k), J = ee(k), pe = re(k);
3261
+ const k = y[y.length - 1], P = D(k), J = ee(k), fe = ie(k);
3245
3262
  S.value = {
3246
3263
  type: P,
3247
3264
  center: J,
3248
- areaKm2: pe,
3265
+ areaKm2: fe,
3249
3266
  layer: k
3250
3267
  }, g.value = y.length;
3251
3268
  }
3252
- function Ie() {
3269
+ function je() {
3253
3270
  const y = S.value?.layer;
3254
3271
  y && (y instanceof L.Circle && y.getBounds ? a.fitBounds(y.getBounds(), { padding: [30, 30] }) : y.getBounds ? a.fitBounds(y.getBounds(), { padding: [30, 30] }) : y.getLatLng && a.setView(y.getLatLng(), Math.max(x.value, 14)));
3255
3272
  }
3256
- function ye() {
3273
+ function xe() {
3257
3274
  const y = S.value?.layer;
3258
3275
  y && (u.removeLayer(y), m(), W());
3259
3276
  }
3260
- ge(async () => {
3261
- await B(), L.drawLocal = Ws, a = L.map(r.value, { zoomControl: !1 }).setView(_.value, 10), L.control.zoom({ position: "bottomright" }).addTo(a), z.value = Object.keys(R)[0], $ = L.tileLayer(R[z.value].url, { maxZoom: 19, minZoom: 6 }).addTo(a), u = new L.FeatureGroup().addTo(a), a.on(L.Draw.Event.CREATED, (P) => {
3277
+ be(async () => {
3278
+ await B(), L.drawLocal = Ys, a = L.map(r.value, { zoomControl: !1 }).setView(_.value, 10), L.control.zoom({ position: "bottomright" }).addTo(a), z.value = Object.keys(R)[0], $ = L.tileLayer(R[z.value].url, { maxZoom: 19, minZoom: 6 }).addTo(a), u = new L.FeatureGroup().addTo(a), a.on(L.Draw.Event.CREATED, (P) => {
3262
3279
  const { layer: J } = P;
3263
3280
  u.clearLayers(), u.addLayer(J), m(), W(), f(), U.value = "";
3264
3281
  }), a.on(L.Draw.Event.EDITED, () => {
@@ -3272,7 +3289,7 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3272
3289
  }), a.on("zoomend", () => {
3273
3290
  x.value = a.getZoom();
3274
3291
  });
3275
- const k = Qs(n.modelValue);
3292
+ const k = en(n.modelValue);
3276
3293
  if (k) {
3277
3294
  const P = [];
3278
3295
  L.geoJSON(k).eachLayer((J) => P.push(J)), P.length && u.addLayer(P[0]), m(), W(), f();
@@ -3312,8 +3329,8 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3312
3329
  if (typeof P.result == "string")
3313
3330
  try {
3314
3331
  const J = JSON.parse(P.result);
3315
- u.clearLayers(), J && L.geoJSON({ type: "Feature", geometry: J }).eachLayer((pe) => {
3316
- u.addLayer(pe);
3332
+ u.clearLayers(), J && L.geoJSON({ type: "Feature", geometry: J }).eachLayer((fe) => {
3333
+ u.addLayer(fe);
3317
3334
  }), m(), W(), f();
3318
3335
  } finally {
3319
3336
  y.target.value = "";
@@ -3335,7 +3352,7 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3335
3352
  }), g.value = u.getLayers().length, W(), f();
3336
3353
  }
3337
3354
  );
3338
- function ie() {
3355
+ function ue() {
3339
3356
  return t?.appContext.config.globalProperties.$settings?.basemaps ? t?.appContext.config.globalProperties.$settings?.basemaps.map((y, k) => Object.assign(y, { key: `b${k}`, preview: y.preview || y.url.replace("{z}/{x}/{y}.png", "13/4790/2762.png") })).reduce((y, k) => ({ ...y, [k.key]: k }), {}) : {
3340
3357
  topo100: {
3341
3358
  url: "https://data.gki.com.ua/api-user/rtile/voyager/ua/{z}/{x}/{y}.png",
@@ -3351,23 +3368,23 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3351
3368
  }
3352
3369
  };
3353
3370
  }
3354
- const xe = w(!1);
3355
- return te(xe, () => {
3371
+ const we = w(!1);
3372
+ return te(we, () => {
3356
3373
  setTimeout(() => {
3357
3374
  a.invalidateSize();
3358
3375
  }, 50);
3359
3376
  }), (y, k) => (i(), d("div", {
3360
- class: M(["leaflet-map-wrapper relative w-full h-[400px]", { fullscreen: xe.value }])
3377
+ class: M(["leaflet-map-wrapper relative w-full h-[400px]", { fullscreen: we.value }])
3361
3378
  }, [
3362
3379
  l("div", {
3363
3380
  ref_key: "mapContainer",
3364
3381
  ref: r,
3365
3382
  class: "w-full h-full"
3366
3383
  }, null, 512),
3367
- l("div", qn, [
3368
- j(Un, { onGoToCoordinates: oe }),
3369
- l("div", Gn, [
3370
- l("div", Jn, [
3384
+ l("div", Kn, [
3385
+ j(Pn, { onGoToCoordinates: oe }),
3386
+ l("div", Zn, [
3387
+ l("div", Wn, [
3371
3388
  l("button", {
3372
3389
  type: "button",
3373
3390
  class: "vs-btn-row",
@@ -3378,7 +3395,7 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3378
3395
  class: "vs-btn-row",
3379
3396
  onClick: C,
3380
3397
  disabled: g.value === 0
3381
- }, "Export ", 8, Kn)
3398
+ }, "Export ", 8, Qn)
3382
3399
  ]),
3383
3400
  l("input", {
3384
3401
  ref_key: "importRef",
@@ -3390,8 +3407,8 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3390
3407
  }, null, 544)
3391
3408
  ])
3392
3409
  ]),
3393
- l("div", Zn, [
3394
- l("div", Wn, [
3410
+ l("div", Xn, [
3411
+ l("div", Yn, [
3395
3412
  l("button", {
3396
3413
  class: M(["vs-btn", { "vs-active": U.value === "marker" }]),
3397
3414
  "aria-pressed": U.value === "marker",
@@ -3399,8 +3416,8 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3399
3416
  "aria-label": "Draw point",
3400
3417
  onClick: k[0] || (k[0] = (P) => I("marker"))
3401
3418
  }, [
3402
- j(tn)
3403
- ], 10, Qn),
3419
+ j(an)
3420
+ ], 10, er),
3404
3421
  l("button", {
3405
3422
  class: M(["vs-btn", { "vs-active": U.value === "polyline" }]),
3406
3423
  "aria-pressed": U.value === "polyline",
@@ -3408,8 +3425,8 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3408
3425
  "aria-label": "Draw polyline",
3409
3426
  onClick: k[1] || (k[1] = (P) => I("polyline"))
3410
3427
  }, [
3411
- j(sn)
3412
- ], 10, Xn),
3428
+ j(un)
3429
+ ], 10, tr),
3413
3430
  l("button", {
3414
3431
  class: M(["vs-btn", { "vs-active": U.value === "polygon" }]),
3415
3432
  "aria-pressed": U.value === "polygon",
@@ -3417,8 +3434,8 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3417
3434
  "aria-label": "Draw polygon",
3418
3435
  onClick: k[2] || (k[2] = (P) => I("polygon"))
3419
3436
  }, [
3420
- j(dn)
3421
- ], 10, Yn),
3437
+ j(fn)
3438
+ ], 10, lr),
3422
3439
  l("button", {
3423
3440
  class: M(["vs-btn", { "vs-active": U.value === "rectangle" }]),
3424
3441
  "aria-pressed": U.value === "rectangle",
@@ -3426,69 +3443,69 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3426
3443
  "aria-label": "Draw rectangle",
3427
3444
  onClick: k[3] || (k[3] = (P) => I("rectangle"))
3428
3445
  }, [
3429
- j(vn)
3430
- ], 10, er),
3446
+ j(gn)
3447
+ ], 10, or),
3431
3448
  l("button", {
3432
3449
  class: "vs-btn mt-5",
3433
3450
  onClick: k[4] || (k[4] = (P) => {
3434
- xe.value = !xe.value;
3451
+ we.value = !we.value;
3435
3452
  }),
3436
3453
  title: "Full Screen",
3437
3454
  "aria-label": "Full Screen"
3438
3455
  }, [
3439
- j(bn, { style: { width: "12px", height: "12px" } })
3456
+ j(wn, { style: { width: "12px", height: "12px" } })
3440
3457
  ])
3441
3458
  ])
3442
3459
  ]),
3443
3460
  l("div", {
3444
3461
  class: M(["absolute left-4 z-[1000]", S.value ? "bottom-8" : "bottom-4"])
3445
3462
  }, [
3446
- j(Hn, {
3463
+ j(Jn, {
3447
3464
  basemaps: q(R),
3448
3465
  onOnLayerChange: G
3449
3466
  }, null, 8, ["basemaps"])
3450
3467
  ], 2),
3451
- l("div", tr, [
3452
- S.value ? (i(), d("div", lr, [
3453
- l("div", or, [
3454
- k[7] || (k[7] = ce(" Тип: ", -1)),
3455
- l("span", ar, T(S.value.type), 1)
3468
+ l("div", ar, [
3469
+ S.value ? (i(), d("div", sr, [
3470
+ l("div", nr, [
3471
+ k[7] || (k[7] = pe(" Тип: ", -1)),
3472
+ l("span", rr, T(S.value.type), 1)
3456
3473
  ]),
3457
- l("div", sr, [
3458
- l("div", nr, [
3459
- k[8] || (k[8] = ce(" Центр: ", -1)),
3474
+ l("div", ir, [
3475
+ l("div", ur, [
3476
+ k[8] || (k[8] = pe(" Центр: ", -1)),
3460
3477
  l("b", null, T(S.value.center.lat.toFixed(5)) + ", " + T(S.value.center.lng.toFixed(5)), 1)
3461
3478
  ]),
3462
- S.value.areaKm2 !== null ? (i(), d("div", rr, [
3463
- k[9] || (k[9] = ce(" Площа: ", -1)),
3479
+ S.value.areaKm2 !== null ? (i(), d("div", dr, [
3480
+ k[9] || (k[9] = pe(" Площа: ", -1)),
3464
3481
  l("b", null, T(S.value.areaKm2.toFixed(1)) + "км²", 1)
3465
- ])) : (i(), d("div", ir, k[10] || (k[10] = [
3466
- ce(" Площа: ", -1),
3482
+ ])) : (i(), d("div", cr, k[10] || (k[10] = [
3483
+ pe(" Площа: ", -1),
3467
3484
  l("b", null, "—", -1)
3468
3485
  ]))),
3469
3486
  l("button", {
3470
3487
  class: "tool bg-gray-100 py-1.5 px-2 rounded-lg text-md mr-1 cursor-pointer hover:bg-blue-500 hover:text-white transition-all",
3471
3488
  title: "Наблизити",
3472
- onClick: k[5] || (k[5] = (P) => Ie())
3489
+ onClick: k[5] || (k[5] = (P) => je())
3473
3490
  }, k[11] || (k[11] = [
3474
- ue('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="w-3 h-3" data-v-e82d2d97><path d="M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0" data-v-e82d2d97></path><path d="M7 10l6 0" data-v-e82d2d97></path><path d="M10 7l0 6" data-v-e82d2d97></path><path d="M21 21l-6 -6" data-v-e82d2d97></path></svg>', 1)
3491
+ de('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="w-3 h-3" data-v-e82d2d97><path d="M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0" data-v-e82d2d97></path><path d="M7 10l6 0" data-v-e82d2d97></path><path d="M10 7l0 6" data-v-e82d2d97></path><path d="M21 21l-6 -6" data-v-e82d2d97></path></svg>', 1)
3475
3492
  ])),
3476
3493
  l("button", {
3477
3494
  class: "tool bg-gray-100 py-1.5 px-2 rounded-lg text-md cursor-pointer hover:bg-blue-500 hover:text-white transition-all",
3478
3495
  title: "Видалити",
3479
- onClick: k[6] || (k[6] = (P) => ye())
3496
+ onClick: k[6] || (k[6] = (P) => xe())
3480
3497
  }, [
3481
3498
  j(Ue, { class: "w-3 h-3" })
3482
3499
  ])
3483
3500
  ])
3484
- ])) : F("", !0)
3501
+ ])) : A("", !0)
3485
3502
  ])
3486
3503
  ], 2));
3487
3504
  }
3488
- }), dr = /* @__PURE__ */ N(ur, [["__scopeId", "data-v-e82d2d97"]]), cr = ["data-focus"], pr = { class: "flex items-center" }, fr = { class: "overflow-hidden text-ellipsis whitespace-nowrap rounded-sm text-[#333] text-[85%] px-0.5 py-[3px] pl-1.5 box-border" }, vr = ["onClick", "aria-label"], mr = {
3505
+ }), fr = /* @__PURE__ */ H(pr, [["__scopeId", "data-v-e82d2d97"]]), vr = ["data-focus"], mr = { class: "flex items-center" }, hr = { class: "overflow-hidden text-ellipsis whitespace-nowrap rounded-sm text-[#333] text-[85%] px-0.5 py-[3px] pl-1.5 box-border" }, gr = ["onClick", "aria-label"], br = {
3489
3506
  key: 0,
3490
3507
  class: "absolute text-gray-500 truncate pl-2"
3491
- }, hr = { class: "flex-1 min-w-[2px]" }, gr = ["placeholder"], br = { class: "flex items-center shrink-0" }, yr = ["disabled"], xr = /* @__PURE__ */ A({
3508
+ }, yr = { class: "flex-1 min-w-[2px]" }, xr = ["placeholder"], wr = { class: "flex items-center shrink-0" }, kr = ["disabled"], _r = /* @__PURE__ */ F({
3492
3509
  __name: "vs-input-tag",
3493
3510
  props: /* @__PURE__ */ Q({
3494
3511
  unique: { type: Boolean, default: !0 },
@@ -3506,18 +3523,18 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3506
3523
  emits: /* @__PURE__ */ Q(["update:modelValue"], ["update:modelValue"]),
3507
3524
  setup(o, { emit: e }) {
3508
3525
  const t = o, n = e;
3509
- be(t.style);
3510
- const s = w(null), r = w(null), a = w(null), u = w(!1), c = w(""), v = X(o, "modelValue"), p = D(() => t.placeholder || "Add tag…"), x = D(() => v.value?.length === 0 && c.value === ""), g = D(() => !t.disabled && v.value?.length > 0), _ = D(() => t.disabled), S = async () => {
3526
+ ye(t.style);
3527
+ const s = w(null), r = w(null), a = w(null), u = w(!1), c = w(""), v = X(o, "modelValue"), p = O(() => t.placeholder || "Add tag…"), x = O(() => v.value?.length === 0 && c.value === ""), g = O(() => !t.disabled && v.value?.length > 0), _ = O(() => t.disabled), S = async () => {
3511
3528
  _.value || await ze(() => a.value?.focus());
3512
3529
  }, R = (U) => {
3513
- const O = U.trim();
3514
- O !== "" && (!v.value || !Array.isArray(v.value) ? v.value = [O] : t.unique ? v.value.includes(O) || (v.value = [...v.value, O]) : v.value = [...v.value, O], c.value = "");
3530
+ const D = U.trim();
3531
+ D !== "" && (!v.value || !Array.isArray(v.value) ? v.value = [D] : t.unique ? v.value.includes(D) || (v.value = [...v.value, D]) : v.value = [...v.value, D], c.value = "");
3515
3532
  }, $ = () => {
3516
3533
  const U = c.value;
3517
3534
  U.trim() !== "" && R(U), c.value = "";
3518
3535
  }, z = (U) => {
3519
- const O = v.value.slice();
3520
- O.splice(U, 1), n("update:modelValue", O);
3536
+ const D = v.value.slice();
3537
+ D.splice(U, 1), n("update:modelValue", D);
3521
3538
  }, B = () => {
3522
3539
  n("update:modelValue", []);
3523
3540
  }, m = () => {
@@ -3525,14 +3542,14 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3525
3542
  }, f = () => {
3526
3543
  u.value = !1;
3527
3544
  }, Z = (U) => {
3528
- const { key: O } = U;
3529
- O === "Enter" ? (U.preventDefault(), $()) : O === "Backspace" && c.value === "" && v.value.length > 0 && z(v.value.length - 1);
3545
+ const { key: D } = U;
3546
+ D === "Enter" ? (U.preventDefault(), $()) : D === "Backspace" && c.value === "" && v.value.length > 0 && z(v.value.length - 1);
3530
3547
  };
3531
- return (U, O) => (i(), d("div", {
3548
+ return (U, D) => (i(), d("div", {
3532
3549
  class: "flex gap-1 w-full",
3533
3550
  ref_key: "root",
3534
3551
  ref: s,
3535
- onClick: O[1] || (O[1] = ve(() => {
3552
+ onClick: D[1] || (D[1] = ve(() => {
3536
3553
  }, ["stop"]))
3537
3554
  }, [
3538
3555
  l("div", {
@@ -3555,19 +3572,19 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3555
3572
  ref_key: "chipsRef",
3556
3573
  ref: r
3557
3574
  }, [
3558
- (i(!0), d(Y, null, le(v.value, (re, ee) => (i(), d("div", {
3575
+ (i(!0), d(Y, null, le(v.value, (ie, ee) => (i(), d("div", {
3559
3576
  key: ee,
3560
3577
  class: "flex min-w-0 bg-[#e6e6e6] rounded-sm m-0.5 box-border"
3561
3578
  }, [
3562
- l("div", pr, [
3563
- l("div", fr, T(re), 1)
3579
+ l("div", mr, [
3580
+ l("div", hr, T(ie), 1)
3564
3581
  ]),
3565
3582
  l("div", {
3566
3583
  role: "button",
3567
3584
  class: "flex items-center rounded-sm px-1 box-border hover:bg-[#ffbdad] hover:text-[#de350b]",
3568
3585
  onClick: ve((W) => z(ee), ["stop"]),
3569
- "aria-label": `Remove ${re}`
3570
- }, O[2] || (O[2] = [
3586
+ "aria-label": `Remove ${ie}`
3587
+ }, D[2] || (D[2] = [
3571
3588
  l("svg", {
3572
3589
  height: "14",
3573
3590
  width: "14",
@@ -3578,11 +3595,11 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3578
3595
  }, [
3579
3596
  l("path", { d: "M14.348 14.849c-0.469 0.469-1.229 0.469-1.697 0l-2.651-3.030-2.651 3.029c-0.469 0.469-1.229 0.469-1.697 0-0.469-0.469-0.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-0.469-0.469-0.469-1.228 0-1.697s1.228-0.469 1.697 0l2.652 3.031 2.651-3.031c0.469-0.469 1.228-0.469 1.697 0s0.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c0.469 0.469 0.469 1.229 0 1.698z" })
3580
3597
  ], -1)
3581
- ]), 8, vr)
3598
+ ]), 8, gr)
3582
3599
  ]))), 128)),
3583
- x.value ? (i(), d("div", mr, T(p.value), 1)) : F("", !0),
3584
- l("div", hr, [
3585
- _.value ? F("", !0) : K((i(), d("input", {
3600
+ x.value ? (i(), d("div", br, T(p.value), 1)) : A("", !0),
3601
+ l("div", yr, [
3602
+ _.value ? A("", !0) : K((i(), d("input", {
3586
3603
  key: 0,
3587
3604
  ref_key: "inputRef",
3588
3605
  ref: a,
@@ -3594,17 +3611,17 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3594
3611
  type: "text",
3595
3612
  tabindex: "0",
3596
3613
  "aria-label": "Add tag",
3597
- "onUpdate:modelValue": O[0] || (O[0] = (re) => c.value = re),
3614
+ "onUpdate:modelValue": D[0] || (D[0] = (ie) => c.value = ie),
3598
3615
  onFocus: m,
3599
3616
  onBlur: f,
3600
3617
  onKeydown: Z,
3601
3618
  placeholder: v.value && v.value.length ? "" : void 0
3602
- }, null, 40, gr)), [
3603
- [ne, c.value]
3619
+ }, null, 40, xr)), [
3620
+ [re, c.value]
3604
3621
  ])
3605
3622
  ])
3606
3623
  ], 512),
3607
- l("div", br, [
3624
+ l("div", wr, [
3608
3625
  g.value ? (i(), d("button", {
3609
3626
  key: 0,
3610
3627
  type: "button",
@@ -3612,7 +3629,7 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3612
3629
  "aria-label": "Clear all tags",
3613
3630
  disabled: _.value,
3614
3631
  onClick: ve(B, ["stop"])
3615
- }, O[3] || (O[3] = [
3632
+ }, D[3] || (D[3] = [
3616
3633
  l("svg", {
3617
3634
  height: "20",
3618
3635
  width: "20",
@@ -3621,13 +3638,13 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3621
3638
  }, [
3622
3639
  l("path", { d: "M14.348 14.849c-0.469 0.469-1.229 0.469-1.697 0l-2.651-3.030-2.651 3.029c-0.469 0.469-1.229 0.469-1.697 0-0.469-0.469-0.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-0.469-0.469-0.469-1.228 0-1.697s1.228-0.469 1.697 0l2.652 3.031 2.651-3.031c0.469-0.469 1.228-0.469 1.697 0s0.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c0.469 0.469 0.469 1.229 0 1.698z" })
3623
3640
  ], -1)
3624
- ]), 8, yr)) : F("", !0)
3641
+ ]), 8, kr)) : A("", !0)
3625
3642
  ])
3626
- ], 10, cr)
3643
+ ], 10, vr)
3627
3644
  ], 2)
3628
3645
  ], 512));
3629
3646
  }
3630
- }), wr = { class: "relative flex gap-1 bg-white w-full" }, kr = ["disabled", "placeholder"], _r = /* @__PURE__ */ A({
3647
+ }), $r = { class: "relative flex gap-1 bg-white w-full" }, Cr = ["disabled", "placeholder"], Vr = /* @__PURE__ */ F({
3631
3648
  __name: "vs-input-slug",
3632
3649
  props: /* @__PURE__ */ Q({
3633
3650
  disabled: { type: Boolean },
@@ -3686,15 +3703,15 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3686
3703
  const a = e?.value?.[t.parent || ""]?.toString(), u = s(a);
3687
3704
  n.value = u.toString();
3688
3705
  };
3689
- return (a, u) => (i(), d("div", wr, [
3706
+ return (a, u) => (i(), d("div", $r, [
3690
3707
  K(l("input", {
3691
3708
  ref: "vsText",
3692
3709
  disabled: a.disabled,
3693
3710
  placeholder: a.placeholder,
3694
3711
  "onUpdate:modelValue": u[0] || (u[0] = (c) => n.value = c),
3695
3712
  class: "block w-full px-3 py-2 text-sm border border-solid rounded-lg placeholder:text-nowrap border-stone-200 text-stone-800 placeholder:text-stone-400 focus:outline focus:z-10 focus:border-blue-500 focus:ring-blue-500 focus:outline-blue-500"
3696
- }, null, 8, kr), [
3697
- [ne, n.value]
3713
+ }, null, 8, Cr), [
3714
+ [re, n.value]
3698
3715
  ]),
3699
3716
  l("button", {
3700
3717
  class: "px-2 bg-gray-100 border rounded-lg hover:bg-gray-200",
@@ -3702,13 +3719,13 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3702
3719
  }, " Gen ")
3703
3720
  ]));
3704
3721
  }
3705
- }), $r = /* @__PURE__ */ N(_r, [["__scopeId", "data-v-b0eba370"]]), Cr = { class: "w-full" }, Vr = {
3722
+ }), Mr = /* @__PURE__ */ H(Vr, [["__scopeId", "data-v-b0eba370"]]), Lr = { class: "w-full" }, Sr = {
3706
3723
  ref: "sortableContainer",
3707
3724
  class: "flex flex-col gap-1"
3708
- }, Mr = ["onDragstart", "onDrop"], Lr = { class: "w-1/3" }, Sr = { class: "w-2/3" }, Br = ["onClick"], jr = {
3725
+ }, Br = ["onDragstart", "onDrop"], jr = { class: "w-1/3" }, Ir = { class: "w-2/3" }, zr = ["onClick"], Er = {
3709
3726
  key: 0,
3710
3727
  class: "text-[14px] text-gray-700"
3711
- }, Ir = { class: "mt-2 w-full flex items-center" }, zr = ["disabled"], Er = /* @__PURE__ */ A({
3728
+ }, Ar = { class: "mt-2 w-full flex items-center" }, Fr = ["disabled"], Dr = /* @__PURE__ */ F({
3712
3729
  __name: "vs-input-key-value",
3713
3730
  props: {
3714
3731
  parent: {},
@@ -3735,7 +3752,7 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3735
3752
  const z = c.value.splice(v.value, 1)[0];
3736
3753
  c.value.splice($, 0, z), v.value = null;
3737
3754
  }
3738
- const _ = D(
3755
+ const _ = O(
3739
3756
  () => c.value.some(($) => $.key && !$.value || !$.key && $.value)
3740
3757
  ), S = () => {
3741
3758
  c.value.push({ id: t("key-value-"), key: "", value: "" });
@@ -3758,8 +3775,8 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3758
3775
  }), r("update:modelValue", z);
3759
3776
  },
3760
3777
  { deep: !0 }
3761
- ), ($, z) => (i(), d("div", Cr, [
3762
- l("div", Vr, [
3778
+ ), ($, z) => (i(), d("div", Lr, [
3779
+ l("div", Sr, [
3763
3780
  (i(!0), d(Y, null, le(c.value, (B, m) => (i(), d("div", {
3764
3781
  key: B.id,
3765
3782
  class: M(["flex items-center gap-2 w-full", { "opacity-50": v.value === m }]),
@@ -3769,16 +3786,16 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3769
3786
  }, ["prevent"])),
3770
3787
  onDrop: (f) => g(m)
3771
3788
  }, [
3772
- z[1] || (z[1] = ue('<button class="cursor-move" data-v-a0f7fbfc><svg fill="#000000" width="20" height="20" viewBox="0 0 36 36" data-v-a0f7fbfc><circle cx="15" cy="12" r="1.5" data-v-a0f7fbfc></circle><circle cx="15" cy="24" r="1.5" data-v-a0f7fbfc></circle><circle cx="21" cy="12" r="1.5" data-v-a0f7fbfc></circle><circle cx="21" cy="24" r="1.5" data-v-a0f7fbfc></circle><circle cx="21" cy="18" r="1.5" data-v-a0f7fbfc></circle><circle cx="15" cy="18" r="1.5" data-v-a0f7fbfc></circle></svg></button>', 1)),
3773
- l("div", Lr, [
3774
- j(Oe, {
3789
+ z[1] || (z[1] = de('<button class="cursor-move" data-v-a0f7fbfc><svg fill="#000000" width="20" height="20" viewBox="0 0 36 36" data-v-a0f7fbfc><circle cx="15" cy="12" r="1.5" data-v-a0f7fbfc></circle><circle cx="15" cy="24" r="1.5" data-v-a0f7fbfc></circle><circle cx="21" cy="12" r="1.5" data-v-a0f7fbfc></circle><circle cx="21" cy="24" r="1.5" data-v-a0f7fbfc></circle><circle cx="21" cy="18" r="1.5" data-v-a0f7fbfc></circle><circle cx="15" cy="18" r="1.5" data-v-a0f7fbfc></circle></svg></button>', 1)),
3790
+ l("div", jr, [
3791
+ j(De, {
3775
3792
  modelValue: B.key,
3776
3793
  "onUpdate:modelValue": (f) => B.key = f,
3777
3794
  placeholder: "Ключ"
3778
3795
  }, null, 8, ["modelValue", "onUpdate:modelValue"])
3779
3796
  ]),
3780
- l("div", Sr, [
3781
- j(Oe, {
3797
+ l("div", Ir, [
3798
+ j(De, {
3782
3799
  modelValue: B.value,
3783
3800
  "onUpdate:modelValue": (f) => B.value = f,
3784
3801
  placeholder: "Значення"
@@ -3788,31 +3805,31 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3788
3805
  onClick: (f) => R(B.id),
3789
3806
  class: "shrink-0 w-[30px] text-gray-600 h-[30px] rounded-full flex items-center justify-center bg-gray-100 hover:bg-gray-200"
3790
3807
  }, [
3791
- j(q(pl), {
3808
+ j(q(ml), {
3792
3809
  height: "16",
3793
3810
  width: "16"
3794
3811
  })
3795
- ], 8, Br)
3796
- ], 42, Mr))), 128))
3812
+ ], 8, zr)
3813
+ ], 42, Br))), 128))
3797
3814
  ], 512),
3798
- c.value.length ? F("", !0) : (i(), d("span", jr, " Дані для відображення відсутні ")),
3799
- l("div", Ir, [
3815
+ c.value.length ? A("", !0) : (i(), d("span", Er, " Дані для відображення відсутні ")),
3816
+ l("div", Ar, [
3800
3817
  l("button", {
3801
3818
  type: "button",
3802
3819
  onClick: S,
3803
3820
  disabled: _.value,
3804
3821
  class: "py-1.5 px-2 flex items-center gap-x-1 text-xs font-medium rounded-full border border-dashed border-gray-200 bg-white text-gray-800 hover:bg-gray-50 disabled:opacity-50 disabled:cursor-not-allowed"
3805
3822
  }, [
3806
- j(Fe, {
3823
+ j(Ae, {
3807
3824
  height: "14",
3808
3825
  width: "14"
3809
3826
  }),
3810
- ce(" " + T(q(a)), 1)
3811
- ], 8, zr)
3827
+ pe(" " + T(q(a)), 1)
3828
+ ], 8, Fr)
3812
3829
  ])
3813
3830
  ]));
3814
3831
  }
3815
- }), Fr = /* @__PURE__ */ N(Er, [["__scopeId", "data-v-a0f7fbfc"]]), Ar = { class: "flex items-center gap-2 w-full" }, Or = ["disabled"], Dr = /* @__PURE__ */ A({
3832
+ }), Or = /* @__PURE__ */ H(Dr, [["__scopeId", "data-v-a0f7fbfc"]]), Ur = { class: "flex items-center gap-2 w-full" }, Tr = ["disabled"], Rr = /* @__PURE__ */ F({
3816
3833
  __name: "vs-input-color",
3817
3834
  props: {
3818
3835
  style: { default: () => ({}) },
@@ -3825,11 +3842,11 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3825
3842
  },
3826
3843
  emits: ["update:modelValue"],
3827
3844
  setup(o, { emit: e }) {
3828
- const t = o, { inputClass: n } = be(t.style), s = e, r = D({
3845
+ const t = o, { inputClass: n } = ye(t.style), s = e, r = O({
3829
3846
  get: () => t.modelValue || "#000000",
3830
3847
  set: (a) => s("update:modelValue", a)
3831
3848
  });
3832
- return (a, u) => (i(), d("div", Ar, [
3849
+ return (a, u) => (i(), d("div", Ur, [
3833
3850
  K(l("input", {
3834
3851
  type: "color",
3835
3852
  "onUpdate:modelValue": u[0] || (u[0] = (c) => r.value = c),
@@ -3837,18 +3854,18 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3837
3854
  ref: "color",
3838
3855
  class: M(["py-1.5 px-1 block w-full bg-white cursor-pointer max-w-[50px]", [a.modelValue ? "" : "text-opacity-50", q(n)].join(" ")]),
3839
3856
  style: { border: "1px solid #CFD9E0" }
3840
- }, null, 10, Or), [
3841
- [ne, r.value]
3857
+ }, null, 10, Tr), [
3858
+ [re, r.value]
3842
3859
  ]),
3843
3860
  K(l("input", {
3844
3861
  class: "text-sm text-gray-600 border border-solid border-stone-200 rounded-md p-2",
3845
3862
  "onUpdate:modelValue": u[1] || (u[1] = (c) => r.value = c)
3846
3863
  }, null, 512), [
3847
- [ne, r.value]
3864
+ [re, r.value]
3848
3865
  ])
3849
3866
  ]));
3850
3867
  }
3851
- }), Ur = { class: "flex items-center gap-2 w-full" }, Tr = ["min", "max", "step", "disabled"], Rr = /* @__PURE__ */ A({
3868
+ }), Pr = { class: "flex items-center gap-2 w-full" }, Hr = ["min", "max", "step", "disabled"], Nr = /* @__PURE__ */ F({
3852
3869
  __name: "vs-input-range",
3853
3870
  props: {
3854
3871
  style: { default: () => ({}) },
@@ -3864,11 +3881,11 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3864
3881
  },
3865
3882
  emits: ["update:modelValue"],
3866
3883
  setup(o, { emit: e }) {
3867
- const t = o, { inputClass: n } = be(t.style), s = e, r = D({
3884
+ const t = o, { inputClass: n } = ye(t.style), s = e, r = O({
3868
3885
  get: () => Number(t.modelValue ?? t.min),
3869
3886
  set: (a) => s("update:modelValue", Number(a))
3870
3887
  });
3871
- return (a, u) => (i(), d("div", Ur, [
3888
+ return (a, u) => (i(), d("div", Pr, [
3872
3889
  K(l("input", {
3873
3890
  type: "range",
3874
3891
  "onUpdate:modelValue": u[0] || (u[0] = (c) => r.value = c),
@@ -3878,44 +3895,44 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3878
3895
  disabled: a.disabled,
3879
3896
  ref: "range",
3880
3897
  class: M(["w-full cursor-pointer accent-blue-500", [a.modelValue ? "" : "text-opacity-50", q(n)].join(" ")])
3881
- }, null, 10, Tr), [
3882
- [ne, r.value]
3898
+ }, null, 10, Hr), [
3899
+ [re, r.value]
3883
3900
  ]),
3884
3901
  K(l("input", {
3885
3902
  class: "text-sm text-gray-600 border border-solid border-stone-200 rounded-md p-2 max-w-[100px]",
3886
3903
  type: "number",
3887
3904
  "onUpdate:modelValue": u[1] || (u[1] = (c) => r.value = c)
3888
3905
  }, null, 512), [
3889
- [ne, r.value]
3906
+ [re, r.value]
3890
3907
  ])
3891
3908
  ]));
3892
3909
  }
3893
- }), Pr = {
3894
- VsInputText: Oe,
3895
- VsInputRadio: et,
3896
- "vs-input-text": Oe,
3897
- "vs-input-textarea": Ka,
3898
- "vs-input-mask": _l,
3899
- "vs-input-number": Nt,
3900
- "vs-input-radio": et,
3901
- "vs-input-select": Ga,
3902
- "vs-input-switcher": ut,
3903
- "vs-input-static": Ye,
3904
- "vs-input-container": $a,
3905
- "vs-input-date": Ol,
3906
- "vs-input-checkbox": Fl,
3907
- "vs-input-file": _o,
3908
- "vs-input-html": Ye,
3909
- "vs-input-email": Vl,
3910
- "vs-input-datatable": Zs,
3911
- "vs-input-map": dr,
3912
- "vs-input-file-list": Yo,
3913
- "vs-input-tag": xr,
3914
- "vs-input-slug": $r,
3915
- "vs-input-key-value": Fr,
3916
- "vs-input-range": Rr,
3917
- "vs-input-color": Dr
3918
- }, Nr = /* @__PURE__ */ A({
3910
+ }), qr = {
3911
+ VsInputText: De,
3912
+ VsInputRadio: at,
3913
+ "vs-input-text": De,
3914
+ "vs-input-textarea": Qa,
3915
+ "vs-input-mask": Vl,
3916
+ "vs-input-number": Gt,
3917
+ "vs-input-radio": at,
3918
+ "vs-input-select": Za,
3919
+ "vs-input-switcher": ft,
3920
+ "vs-input-static": ot,
3921
+ "vs-input-container": Ma,
3922
+ "vs-input-date": Tl,
3923
+ "vs-input-checkbox": Ol,
3924
+ "vs-input-file": Vo,
3925
+ "vs-input-html": ot,
3926
+ "vs-input-email": Sl,
3927
+ "vs-input-datatable": Xs,
3928
+ "vs-input-map": fr,
3929
+ "vs-input-file-list": la,
3930
+ "vs-input-tag": _r,
3931
+ "vs-input-slug": Mr,
3932
+ "vs-input-key-value": Or,
3933
+ "vs-input-range": Nr,
3934
+ "vs-input-color": Rr
3935
+ }, Gr = /* @__PURE__ */ F({
3919
3936
  __name: "behavior",
3920
3937
  props: {
3921
3938
  api: {},
@@ -3931,7 +3948,7 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3931
3948
  if (!e.api) return;
3932
3949
  const s = e.api.replace("{{value}}", e.value), r = await fetch(s);
3933
3950
  if (!r.ok) {
3934
- we({ type: "warning", title: "Validation", message: "При спробі завантажити дані виникла помилка." });
3951
+ ke({ type: "warning", title: "Validation", message: "При спробі завантажити дані виникла помилка." });
3935
3952
  return;
3936
3953
  }
3937
3954
  const a = await r.json();
@@ -3947,7 +3964,7 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3947
3964
  class: "vs-button relative inline-flex border-solid justify-center items-center gap-2 rounded-md font-semibold focus:outline-none text-sm transition-all border !border-gray-200 hover:text-white bg-white text-blue-500 hover:border-blue-500 hover:bg-blue-500 focus:ring-blue-500 py-1.5 px-5 focus:ring-1 focus:ring-offset-1 ml-0 md:ml-2 mt-2 md:mt-0 py-[8px] md:w-2/4 whitespace-nowrap w-full"
3948
3965
  }, T(s.button), 1));
3949
3966
  }
3950
- }), Hr = { class: "flex w-full" }, pt = /* @__PURE__ */ A({
3967
+ }), Jr = { class: "flex w-full" }, ht = /* @__PURE__ */ F({
3951
3968
  __name: "vs-compact-form-layout",
3952
3969
  props: /* @__PURE__ */ Q({
3953
3970
  item: { default: {} },
@@ -3961,55 +3978,55 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
3961
3978
  }),
3962
3979
  emits: ["update:modelValue"],
3963
3980
  setup(o) {
3964
- const e = o, t = X(o, "modelValue"), n = D(() => Tt[`${e.layout}`]), s = D(() => Pr?.[`vs-input-${e.item.type}`]), r = D(() => {
3981
+ const e = o, t = X(o, "modelValue"), n = O(() => Ht[`${e.layout}`]), s = O(() => qr?.[`vs-input-${e.item.type}`]), r = O(() => {
3965
3982
  const u = q(s);
3966
3983
  if (!u) return /* @__PURE__ */ new Set();
3967
3984
  const c = u.props ?? u.__vccOpts?.props;
3968
3985
  if (!c) return /* @__PURE__ */ new Set();
3969
3986
  const v = Array.isArray(c) ? c : Object.keys(c);
3970
3987
  return new Set(v);
3971
- }), a = D(() => {
3988
+ }), a = O(() => {
3972
3989
  const u = e.item ?? {}, c = r.value;
3973
3990
  return c.size ? Object.fromEntries(Object.entries(u).filter(([v]) => c.has(v))) : {};
3974
3991
  });
3975
- return (u, c) => (i(), ae(Be(n.value), {
3992
+ return (u, c) => (i(), ae(Se(n.value), {
3976
3993
  ua: e.item.ua,
3977
3994
  error: e.error || "",
3978
3995
  item: u.item,
3979
3996
  label: e.item.label
3980
3997
  }, {
3981
- default: je(() => [
3982
- l("div", Hr, [
3983
- (i(), ae(Be(s.value), Ee(a.value, {
3998
+ default: Be(() => [
3999
+ l("div", Jr, [
4000
+ (i(), ae(Se(s.value), Ee(a.value, {
3984
4001
  modelValue: t.value,
3985
4002
  "onUpdate:modelValue": c[0] || (c[0] = (v) => t.value = v)
3986
4003
  }), null, 16, ["modelValue"])),
3987
- u.item.behavior?.api && u.item.behavior?.button ? (i(), ae(Nr, Ee({ key: 0 }, u.item.behavior, { value: t.value }), null, 16, ["value"])) : F("", !0)
4004
+ u.item.behavior?.api && u.item.behavior?.button ? (i(), ae(Gr, Ee({ key: 0 }, u.item.behavior, { value: t.value }), null, 16, ["value"])) : A("", !0)
3988
4005
  ])
3989
4006
  ]),
3990
4007
  _: 1
3991
4008
  }, 8, ["ua", "error", "item", "label"]));
3992
4009
  }
3993
- }), ft = {
4010
+ }), gt = {
3994
4011
  required: "Це поле є обов’язковим",
3995
4012
  email: "Неправильний email"
3996
- }, qr = (o) => o ? !1 : ft.required, Gr = (o) => !o && !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(o) ? ft.email : !1, Jr = (o, e) => {
4013
+ }, Kr = (o) => o ? !1 : gt.required, Zr = (o) => !o && !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(o) ? gt.email : !1, Wr = (o, e) => {
3997
4014
  const t = e.pattern ?? e.regexp;
3998
4015
  return !(typeof t == "string" ? new RegExp(t) : t).test(o) && o ? e.message : !1;
3999
- }, Kr = (o, e) => !1, Zr = (o, e) => {
4016
+ }, Qr = (o, e) => !1, Xr = (o, e) => {
4000
4017
  switch (typeof e == "string" ? e : e.type) {
4001
4018
  case "required":
4002
- return qr(o);
4019
+ return Kr(o);
4003
4020
  case "email":
4004
- return Gr(o);
4021
+ return Zr(o);
4005
4022
  case "regexp":
4006
- return Jr(o, e);
4023
+ return Wr(o, e);
4007
4024
  case "custom":
4008
- return Kr();
4025
+ return Qr();
4009
4026
  default:
4010
4027
  return !1;
4011
4028
  }
4012
- }, Wr = {
4029
+ }, Yr = {
4013
4030
  autocomplete: "select",
4014
4031
  combobox: "select",
4015
4032
  datepicker: "date",
@@ -4021,16 +4038,16 @@ const bn = /* @__PURE__ */ N(mn, [["render", gn]]), yn = { class: "form-geom__se
4021
4038
  file: "file"
4022
4039
  // mask: 'text',
4023
4040
  };
4024
- function at(o) {
4041
+ function it(o) {
4025
4042
  const e = o.toLowerCase();
4026
- return Wr[e] || e;
4043
+ return Yr[e] || e;
4027
4044
  }
4028
- function Qr(o) {
4045
+ function ei(o) {
4029
4046
  if (Array.isArray(o)) {
4030
4047
  const t = [];
4031
4048
  return o.forEach((n) => {
4032
4049
  const s = { ...n };
4033
- s.name = (n.name || n.id || n.key || "").toString(), s.type = at(n.type), s.label = n.label || n.ua, s.rules = n.rules || n.validators, n.data && (s.api = `/api/suggest/${n.data}`), t.push(s);
4050
+ s.name = (n.name || n.id || n.key || "").toString(), s.type = it(n.type), s.label = n.label || n.ua, s.rules = n.rules || n.validators, n.data && (s.api = `/api/suggest/${n.data}`), t.push(s);
4034
4051
  }), t;
4035
4052
  }
4036
4053
  const e = [];
@@ -4038,20 +4055,20 @@ function Qr(o) {
4038
4055
  const n = {
4039
4056
  name: t[0],
4040
4057
  ...t[1],
4041
- type: at(t[1].type),
4058
+ type: it(t[1].type),
4042
4059
  label: t[1].label || t[1].ua,
4043
4060
  rules: t[1].rules || t[1].validators
4044
4061
  };
4045
4062
  t[1].type.includes("list") && (n.multiple = !0), t[1].data && (n.api = `/api/suggest/${t[1].data}`), e.push(n);
4046
4063
  }), e;
4047
4064
  }
4048
- function Xr(o, e) {
4049
- const t = Qr(e), n = w({});
4065
+ function ti(o, e) {
4066
+ const t = ei(e), n = w({});
4050
4067
  function s(c) {
4051
4068
  const v = c?.conditions;
4052
4069
  if (!v) return !0;
4053
4070
  const p = Array.isArray(v) ? v[0] : v, x = o?.value?.[p];
4054
- return ct(x, v);
4071
+ return mt(x, v);
4055
4072
  }
4056
4073
  const r = (c = t, v = !0) => (c.forEach((p) => {
4057
4074
  if (p.rules) {
@@ -4060,12 +4077,12 @@ function Xr(o, e) {
4060
4077
  return;
4061
4078
  }
4062
4079
  p.rules.forEach((x) => {
4063
- const g = Zr(o.value[p.name], x);
4080
+ const g = Xr(o.value[p.name], x);
4064
4081
  g ? n.value[p.name] = g : delete n.value[p.name];
4065
4082
  });
4066
4083
  }
4067
4084
  p.schema && r(p.schema, !1);
4068
- }), v && Object.values(n.value).some(Boolean) ? n.value : null), a = D(() => t?.filter((c) => s(c)));
4085
+ }), v && Object.values(n.value).some(Boolean) ? n.value : null), a = O(() => t?.filter((c) => s(c)));
4069
4086
  return {
4070
4087
  errors: n,
4071
4088
  validate: r,
@@ -4075,7 +4092,7 @@ function Xr(o, e) {
4075
4092
  visibleSchema: a
4076
4093
  };
4077
4094
  }
4078
- const De = /* @__PURE__ */ A({
4095
+ const Oe = /* @__PURE__ */ F({
4079
4096
  __name: "vs-compact-form",
4080
4097
  props: /* @__PURE__ */ Q({
4081
4098
  schema: { default: () => [] },
@@ -4096,14 +4113,14 @@ const De = /* @__PURE__ */ A({
4096
4113
  validate: c,
4097
4114
  reset: v,
4098
4115
  visibleSchema: p
4099
- } = Xr(a, s.schema), x = () => {
4116
+ } = ti(a, s.schema), x = () => {
4100
4117
  n("update:modelValue", a.value), c(), n("handle-submit", a.value);
4101
4118
  };
4102
4119
  e({
4103
4120
  validate: c,
4104
4121
  reset: v,
4105
4122
  errors: u
4106
- }), ge(() => {
4123
+ }), be(() => {
4107
4124
  s.modelValue && (a.value = s.modelValue), r.value.value = a.value, r.value.errors = u.value, r.value.reset = v, r.value.validate = c, r.value.formId = s.formId;
4108
4125
  });
4109
4126
  function g(_, S) {
@@ -4112,14 +4129,14 @@ const De = /* @__PURE__ */ A({
4112
4129
  const R = Object.keys(_), $ = Object.keys(S);
4113
4130
  return R.length !== $.length ? !1 : R.every((z) => _[z] === S[z]);
4114
4131
  }
4115
- return Xe("form", r), Xe("values", a), (_, S) => (i(), d("form", {
4132
+ return lt("form", r), lt("values", a), (_, S) => (i(), d("form", {
4116
4133
  onSubmit: ve(x, ["prevent"]),
4117
4134
  class: M(["grid grid-cols-12", _.layout === "default" ? "gap-6" : "gap-4"])
4118
4135
  }, [
4119
- (i(!0), d(Y, null, le(q(p), (R) => (i(), ae(pt, {
4136
+ (i(!0), d(Y, null, le(q(p), (R) => (i(), ae(ht, {
4120
4137
  key: R.name,
4121
4138
  class: M(_.layout === "horizontal" ? "col-span-12" : `col-span-${R.col || 12} `),
4122
- style: ke(_.style),
4139
+ style: ge(_.style),
4123
4140
  item: R,
4124
4141
  layout: _.layout,
4125
4142
  "model-value": a.value[R.name],
@@ -4132,35 +4149,35 @@ const De = /* @__PURE__ */ A({
4132
4149
  ], 34));
4133
4150
  }
4134
4151
  });
4135
- De.install = function(e) {
4136
- e.component("VForm", De), Object.assign(e.config.globalProperties, {
4137
- $form: Te
4138
- }), e.provide("form", Te), window.v3plugin || (window.v3plugin = {});
4152
+ Oe.install = function(e) {
4153
+ e.component("VForm", Oe), Object.assign(e.config.globalProperties, {
4154
+ $form: Pe
4155
+ }), e.provide("form", Pe), window.v3plugin || (window.v3plugin = {});
4139
4156
  };
4140
4157
  export {
4141
- ja as ModalEdit,
4142
- De as VForm,
4143
- Fl as VsInputCheckbox,
4144
- Dr as VsInputColor,
4145
- $a as VsInputContainer,
4146
- Ol as VsInputDate,
4147
- Vl as VsInputEmail,
4148
- _o as VsInputFile,
4149
- Yo as VsInputFileList,
4150
- Fr as VsInputKeyValue,
4151
- _l as VsInputMask,
4152
- Nt as VsInputNumber,
4153
- et as VsInputRadio,
4154
- Rr as VsInputRange,
4155
- Ga as VsInputSelect,
4156
- $r as VsInputSlug,
4157
- Ye as VsInputStatic,
4158
- ut as VsInputSwitcher,
4159
- xr as VsInputTag,
4160
- Oe as VsInputText,
4161
- Ka as VsInputTextarea,
4162
- De as default,
4163
- Pr as inputs,
4164
- Zs as vsInputDatatable,
4165
- dr as vsInputMap
4158
+ Ea as ModalEdit,
4159
+ Oe as VForm,
4160
+ Ol as VsInputCheckbox,
4161
+ Rr as VsInputColor,
4162
+ Ma as VsInputContainer,
4163
+ Tl as VsInputDate,
4164
+ Sl as VsInputEmail,
4165
+ Vo as VsInputFile,
4166
+ la as VsInputFileList,
4167
+ Or as VsInputKeyValue,
4168
+ Vl as VsInputMask,
4169
+ Gt as VsInputNumber,
4170
+ at as VsInputRadio,
4171
+ Nr as VsInputRange,
4172
+ Za as VsInputSelect,
4173
+ Mr as VsInputSlug,
4174
+ ot as VsInputStatic,
4175
+ ft as VsInputSwitcher,
4176
+ _r as VsInputTag,
4177
+ De as VsInputText,
4178
+ Qa as VsInputTextarea,
4179
+ Oe as default,
4180
+ qr as inputs,
4181
+ Xs as vsInputDatatable,
4182
+ fr as vsInputMap
4166
4183
  };