@opengis/bi 1.2.25 → 1.2.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.
@@ -1,14 +1,15 @@
1
1
  var us = Object.defineProperty;
2
2
  var hs = (s, e, t) => e in s ? us(s, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : s[e] = t;
3
3
  var P = (s, e, t) => hs(s, typeof e != "symbol" ? e + "" : e, t);
4
- import { h as et, defineComponent as ge, ref as I, computed as F, onUnmounted as Ue, createElementBlock as y, openBlock as p, Fragment as U, createElementVNode as h, createCommentVNode as A, createTextVNode as X, toDisplayString as W, renderList as Z, mergeModels as Be, useModel as Gt, withDirectives as Ht, normalizeClass as ee, vModelCheckbox as ps, defineAsyncComponent as M, onMounted as le, watch as te, normalizeStyle as Ge, createBlock as N, createVNode as T, unref as E, resolveDynamicComponent as Zt, createStaticVNode as fs, mergeProps as he, resolveComponent as Y, inject as He, withCtx as j, Teleport as gs, Transition as ms, withModifiers as bs, renderSlot as Rt, getCurrentInstance as me, onErrorCaptured as xs, vModelText as ys, provide as Xe, readonly as ws } from "vue";
4
+ import { h as Ke, defineComponent as ge, ref as I, computed as q, onUnmounted as Ue, createElementBlock as x, openBlock as h, Fragment as U, createElementVNode as c, createCommentVNode as A, createTextVNode as X, toDisplayString as W, renderList as Z, mergeModels as Be, useModel as Gt, withDirectives as et, normalizeClass as se, vModelCheckbox as ps, defineAsyncComponent as M, onMounted as le, watch as ae, normalizeStyle as Ge, createBlock as E, createVNode as T, unref as N, withModifiers as Ht, resolveDynamicComponent as Zt, createStaticVNode as fs, mergeProps as he, resolveComponent as K, withCtx as j, Teleport as gs, Transition as ms, renderSlot as Rt, getCurrentInstance as me, onErrorCaptured as bs, inject as Qt, vModelText as xs, vModelSelect as ys, provide as Qe, readonly as ws } from "vue";
5
+ import { useRouter as we, useRoute as vs } from "vue-router";
5
6
  /**
6
7
  * @license lucide-vue-next v0.577.0 - ISC
7
8
  *
8
9
  * This source code is licensed under the ISC license.
9
10
  * See the LICENSE file in the root directory of this source tree.
10
11
  */
11
- const vs = (s) => {
12
+ const ks = (s) => {
12
13
  for (const e in s)
13
14
  if (e.startsWith("aria-") || e === "role" || e === "title")
14
15
  return !0;
@@ -27,7 +28,7 @@ const Vt = (s) => s === "";
27
28
  * This source code is licensed under the ISC license.
28
29
  * See the LICENSE file in the root directory of this source tree.
29
30
  */
30
- const ks = (...s) => s.filter((e, t, a) => !!e && e.trim() !== "" && a.indexOf(e) === t).join(" ").trim();
31
+ const $s = (...s) => s.filter((e, t, a) => !!e && e.trim() !== "" && a.indexOf(e) === t).join(" ").trim();
31
32
  /**
32
33
  * @license lucide-vue-next v0.577.0 - ISC
33
34
  *
@@ -41,7 +42,7 @@ const Lt = (s) => s.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
41
42
  * This source code is licensed under the ISC license.
42
43
  * See the LICENSE file in the root directory of this source tree.
43
44
  */
44
- const $s = (s) => s.replace(
45
+ const _s = (s) => s.replace(
45
46
  /^([A-Z])|[\s-_]+(\w)/g,
46
47
  (e, t, a) => a ? a.toUpperCase() : t.toLowerCase()
47
48
  );
@@ -51,8 +52,8 @@ const $s = (s) => s.replace(
51
52
  * This source code is licensed under the ISC license.
52
53
  * See the LICENSE file in the root directory of this source tree.
53
54
  */
54
- const _s = (s) => {
55
- const e = $s(s);
55
+ const Ds = (s) => {
56
+ const e = _s(s);
56
57
  return e.charAt(0).toUpperCase() + e.slice(1);
57
58
  };
58
59
  /**
@@ -78,7 +79,7 @@ var ze = {
78
79
  * This source code is licensed under the ISC license.
79
80
  * See the LICENSE file in the root directory of this source tree.
80
81
  */
81
- const Ds = ({
82
+ const Cs = ({
82
83
  name: s,
83
84
  iconNode: e,
84
85
  absoluteStrokeWidth: t,
@@ -88,7 +89,7 @@ const Ds = ({
88
89
  size: n = ze.width,
89
90
  color: o = ze.stroke,
90
91
  ...l
91
- }, { slots: c }) => et(
92
+ }, { slots: d }) => Ke(
92
93
  "svg",
93
94
  {
94
95
  ...ze,
@@ -97,14 +98,14 @@ const Ds = ({
97
98
  height: n,
98
99
  stroke: o,
99
100
  "stroke-width": Vt(t) || Vt(a) || t === !0 || a === !0 ? Number(r || i || ze["stroke-width"]) * 24 / Number(n) : r || i || ze["stroke-width"],
100
- class: ks(
101
+ class: $s(
101
102
  "lucide",
102
103
  l.class,
103
- ...s ? [`lucide-${Lt(_s(s))}-icon`, `lucide-${Lt(s)}`] : ["lucide-icon"]
104
+ ...s ? [`lucide-${Lt(Ds(s))}-icon`, `lucide-${Lt(s)}`] : ["lucide-icon"]
104
105
  ),
105
- ...!c.default && !vs(l) && { "aria-hidden": "true" }
106
+ ...!d.default && !ks(l) && { "aria-hidden": "true" }
106
107
  },
107
- [...e.map((u) => et(...u)), ...c.default ? [c.default()] : []]
108
+ [...e.map((u) => Ke(...u)), ...d.default ? [d.default()] : []]
108
109
  );
109
110
  /**
110
111
  * @license lucide-vue-next v0.577.0 - ISC
@@ -112,8 +113,8 @@ const Ds = ({
112
113
  * This source code is licensed under the ISC license.
113
114
  * See the LICENSE file in the root directory of this source tree.
114
115
  */
115
- const se = (s, e) => (t, { slots: a, attrs: r }) => et(
116
- Ds,
116
+ const ee = (s, e) => (t, { slots: a, attrs: r }) => Ke(
117
+ Cs,
117
118
  {
118
119
  ...r,
119
120
  ...t,
@@ -128,7 +129,19 @@ const se = (s, e) => (t, { slots: a, attrs: r }) => et(
128
129
  * This source code is licensed under the ISC license.
129
130
  * See the LICENSE file in the root directory of this source tree.
130
131
  */
131
- const Cs = se("chevron-right", [
132
+ const zs = ee("arrow-up-down", [
133
+ ["path", { d: "m21 16-4 4-4-4", key: "f6ql7i" }],
134
+ ["path", { d: "M17 20V4", key: "1ejh1v" }],
135
+ ["path", { d: "m3 8 4-4 4 4", key: "11wl7u" }],
136
+ ["path", { d: "M7 4v16", key: "1glfcx" }]
137
+ ]);
138
+ /**
139
+ * @license lucide-vue-next v0.577.0 - ISC
140
+ *
141
+ * This source code is licensed under the ISC license.
142
+ * See the LICENSE file in the root directory of this source tree.
143
+ */
144
+ const Ts = ee("chevron-right", [
132
145
  ["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]
133
146
  ]);
134
147
  /**
@@ -137,7 +150,7 @@ const Cs = se("chevron-right", [
137
150
  * This source code is licensed under the ISC license.
138
151
  * See the LICENSE file in the root directory of this source tree.
139
152
  */
140
- const zs = se("download", [
153
+ const Is = ee("download", [
141
154
  ["path", { d: "M12 15V3", key: "m9g1x1" }],
142
155
  ["path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4", key: "ih7n3h" }],
143
156
  ["path", { d: "m7 10 5 5 5-5", key: "brsn70" }]
@@ -148,7 +161,7 @@ const zs = se("download", [
148
161
  * This source code is licensed under the ISC license.
149
162
  * See the LICENSE file in the root directory of this source tree.
150
163
  */
151
- const Ts = se("ellipsis-vertical", [
164
+ const Ss = ee("ellipsis-vertical", [
152
165
  ["circle", { cx: "12", cy: "12", r: "1", key: "41hilf" }],
153
166
  ["circle", { cx: "12", cy: "5", r: "1", key: "gxeob9" }],
154
167
  ["circle", { cx: "12", cy: "19", r: "1", key: "lyex9k" }]
@@ -159,7 +172,7 @@ const Ts = se("ellipsis-vertical", [
159
172
  * This source code is licensed under the ISC license.
160
173
  * See the LICENSE file in the root directory of this source tree.
161
174
  */
162
- const Is = se("funnel", [
175
+ const Rs = ee("funnel", [
163
176
  [
164
177
  "path",
165
178
  {
@@ -174,7 +187,7 @@ const Is = se("funnel", [
174
187
  * This source code is licensed under the ISC license.
175
188
  * See the LICENSE file in the root directory of this source tree.
176
189
  */
177
- const Ss = se("layout-dashboard", [
190
+ const Vs = ee("layout-dashboard", [
178
191
  ["rect", { width: "7", height: "9", x: "3", y: "3", rx: "1", key: "10lvy0" }],
179
192
  ["rect", { width: "7", height: "5", x: "14", y: "3", rx: "1", key: "16une8" }],
180
193
  ["rect", { width: "7", height: "9", x: "14", y: "12", rx: "1", key: "1hutg5" }],
@@ -186,7 +199,7 @@ const Ss = se("layout-dashboard", [
186
199
  * This source code is licensed under the ISC license.
187
200
  * See the LICENSE file in the root directory of this source tree.
188
201
  */
189
- const Rs = se("layout-grid", [
202
+ const Ls = ee("layout-grid", [
190
203
  ["rect", { width: "7", height: "7", x: "3", y: "3", rx: "1", key: "1g98yp" }],
191
204
  ["rect", { width: "7", height: "7", x: "14", y: "3", rx: "1", key: "6d4xhi" }],
192
205
  ["rect", { width: "7", height: "7", x: "14", y: "14", rx: "1", key: "nxv5o0" }],
@@ -198,7 +211,7 @@ const Rs = se("layout-grid", [
198
211
  * This source code is licensed under the ISC license.
199
212
  * See the LICENSE file in the root directory of this source tree.
200
213
  */
201
- const Vs = se("pencil", [
214
+ const Ws = ee("pencil", [
202
215
  [
203
216
  "path",
204
217
  {
@@ -214,7 +227,7 @@ const Vs = se("pencil", [
214
227
  * This source code is licensed under the ISC license.
215
228
  * See the LICENSE file in the root directory of this source tree.
216
229
  */
217
- const Qt = se("plus", [
230
+ const Xt = ee("plus", [
218
231
  ["path", { d: "M5 12h14", key: "1ays0h" }],
219
232
  ["path", { d: "M12 5v14", key: "s699le" }]
220
233
  ]);
@@ -224,7 +237,7 @@ const Qt = se("plus", [
224
237
  * This source code is licensed under the ISC license.
225
238
  * See the LICENSE file in the root directory of this source tree.
226
239
  */
227
- const Ls = se("save", [
240
+ const Ns = ee("save", [
228
241
  [
229
242
  "path",
230
243
  {
@@ -241,7 +254,7 @@ const Ls = se("save", [
241
254
  * This source code is licensed under the ISC license.
242
255
  * See the LICENSE file in the root directory of this source tree.
243
256
  */
244
- const Wt = se("search", [
257
+ const Wt = ee("search", [
245
258
  ["path", { d: "m21 21-4.34-4.34", key: "14j7rj" }],
246
259
  ["circle", { cx: "11", cy: "11", r: "8", key: "4ej97u" }]
247
260
  ]);
@@ -251,7 +264,7 @@ const Wt = se("search", [
251
264
  * This source code is licensed under the ISC license.
252
265
  * See the LICENSE file in the root directory of this source tree.
253
266
  */
254
- const Ws = se("table-2", [
267
+ const Es = ee("table-2", [
255
268
  [
256
269
  "path",
257
270
  {
@@ -266,7 +279,7 @@ const Ws = se("table-2", [
266
279
  * This source code is licensed under the ISC license.
267
280
  * See the LICENSE file in the root directory of this source tree.
268
281
  */
269
- const Ns = se("trash-2", [
282
+ const js = ee("trash-2", [
270
283
  ["path", { d: "M10 11v6", key: "nco0om" }],
271
284
  ["path", { d: "M14 11v6", key: "outv1u" }],
272
285
  ["path", { d: "M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6", key: "miytrc" }],
@@ -279,15 +292,15 @@ const Ns = se("trash-2", [
279
292
  * This source code is licensed under the ISC license.
280
293
  * See the LICENSE file in the root directory of this source tree.
281
294
  */
282
- const Es = se("x", [
295
+ const Bs = ee("x", [
283
296
  ["path", { d: "M18 6 6 18", key: "1bl5f8" }],
284
297
  ["path", { d: "m6 6 12 12", key: "d8bk6v" }]
285
- ]), Ke = {
298
+ ]), Xe = {
286
299
  week: "Тиждень",
287
300
  month: "Місяць",
288
301
  quarter: "Квартал",
289
302
  year: "Рік"
290
- }, js = ["onClick"], Bs = { class: "flex items-center justify-between w-full" }, Os = { key: 0 }, Ps = /* @__PURE__ */ ge({
303
+ }, Os = ["onClick"], Ps = { class: "flex items-center justify-between w-full" }, As = { key: 0 }, Fs = /* @__PURE__ */ ge({
291
304
  __name: "vs-bi-dropdown",
292
305
  props: {
293
306
  title: {},
@@ -296,35 +309,35 @@ const Es = se("x", [
296
309
  },
297
310
  emits: ["selected"],
298
311
  setup(s, { emit: e }) {
299
- const t = s, a = e, r = I(!1), i = I(t.value ?? null), n = I(null), o = F(() => {
300
- const g = t.options;
301
- return typeof g == "string" ? g.split(",").map((b, k) => ({ id: k, text: b.trim() })) : Array.isArray(g) ? g : [];
302
- }), l = F(() => {
303
- const g = o.value.find(
312
+ const t = s, a = e, r = I(!1), i = I(t.value ?? null), n = I(null), o = q(() => {
313
+ const m = t.options;
314
+ return typeof m == "string" ? m.split(",").map((b, k) => ({ id: k, text: b.trim() })) : Array.isArray(m) ? m : [];
315
+ }), l = q(() => {
316
+ const m = o.value.find(
304
317
  (b) => (b.id ?? b) === i.value
305
318
  );
306
- return g ? g.text ?? String(g) : t.title ?? "";
307
- }), c = (g) => {
308
- const b = (g == null ? void 0 : g.id) ?? g;
319
+ return m ? m.text ?? String(m) : t.title ?? "";
320
+ }), d = (m) => {
321
+ const b = (m == null ? void 0 : m.id) ?? m;
309
322
  i.value = b, r.value = !1, a("selected", b), document.removeEventListener("click", u);
310
- }, u = (g) => {
311
- n.value && !n.value.contains(g.target) && (r.value = !1, document.removeEventListener("click", u));
312
- }, f = () => {
323
+ }, u = (m) => {
324
+ n.value && !n.value.contains(m.target) && (r.value = !1, document.removeEventListener("click", u));
325
+ }, p = () => {
313
326
  r.value = !r.value, r.value ? setTimeout(() => {
314
327
  document.addEventListener("click", u);
315
328
  }, 200) : document.removeEventListener("click", u);
316
- }, v = (g) => (Ke == null ? void 0 : Ke[g]) ?? g;
329
+ }, v = (m) => (Xe == null ? void 0 : Xe[m]) ?? m;
317
330
  return Ue(() => {
318
331
  document.removeEventListener("click", u);
319
- }), (g, b) => (p(), y(U, null, [
320
- h("button", {
332
+ }), (m, b) => (h(), x(U, null, [
333
+ c("button", {
321
334
  type: "button",
322
335
  "aria-expanded": "true",
323
336
  class: "hs-select-disabled:pointer-events-none hs-select-disabled:opacity-50 relative group pr-2 -ms-2 py-1.5 pl-2.5 inline-flex shrink-0 justify-center items-center gap-x-1.5 text-sm text-gray-800 rounded-lg hover:bg-gray-100 focus:outline-none focus:bg-gray-100 before:absolute before:inset-0 before:z-[1] dark:text-neutral-400 dark:hover:bg-neutral-800 dark:focus:bg-neutral-700",
324
- onClick: f
337
+ onClick: p
325
338
  }, [
326
339
  X(W(v(l.value)) + " ", 1),
327
- b[0] || (b[0] = h("svg", {
340
+ b[0] || (b[0] = c("svg", {
328
341
  class: "shrink-0 size-3.5 text-gray-600 dark:text-neutral-400",
329
342
  xmlns: "http://www.w3.org/2000/svg",
330
343
  width: "16",
@@ -336,10 +349,10 @@ const Es = se("x", [
336
349
  "stroke-linecap": "round",
337
350
  "stroke-linejoin": "round"
338
351
  }, [
339
- h("path", { d: "m6 9 6 6 6-6" })
352
+ c("path", { d: "m6 9 6 6 6-6" })
340
353
  ], -1))
341
354
  ]),
342
- r.value ? (p(), y("div", {
355
+ r.value ? (h(), x("div", {
343
356
  key: 0,
344
357
  ref_key: "biDropdown",
345
358
  ref: n,
@@ -350,15 +363,15 @@ const Es = se("x", [
350
363
  "aria-orientation": "vertical",
351
364
  style: { "margin-top": "10px" }
352
365
  }, [
353
- (p(!0), y(U, null, Z(o.value, (k) => (p(), y("div", {
366
+ (h(!0), x(U, null, Z(o.value, (k) => (h(), x("div", {
354
367
  key: k.id || k,
355
368
  class: "cursor-pointer selected hs-selected:bg-gray-100 dark:hs-selected:bg-neutral-800 py-1.5 px-2 w-full text-[13px] text-gray-800 rounded-lg hover:bg-gray-100 focus:outline-none focus:bg-gray-100 dark:text-neutral-300 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700",
356
- onClick: ($) => c(k)
369
+ onClick: (D) => d(k)
357
370
  }, [
358
- h("div", Bs, [
359
- h("span", null, W(v(k.text || k)), 1),
360
- i.value === (k.id || k) ? (p(), y("span", Os, [...b[1] || (b[1] = [
361
- h("svg", {
371
+ c("div", Ps, [
372
+ c("span", null, W(v(k.text || k)), 1),
373
+ i.value === (k.id || k) ? (h(), x("span", As, [...b[1] || (b[1] = [
374
+ c("svg", {
362
375
  class: "shrink-0 h-3.5 w-3.5 text-gray-800 dark:text-neutral-200",
363
376
  xmlns: "http:.w3.org/2000/svg",
364
377
  width: "24",
@@ -370,15 +383,15 @@ const Es = se("x", [
370
383
  "stroke-linecap": "round",
371
384
  "stroke-linejoin": "round"
372
385
  }, [
373
- h("polyline", { points: "20 6 9 17 4 12" })
386
+ c("polyline", { points: "20 6 9 17 4 12" })
374
387
  ], -1)
375
388
  ])])) : A("", !0)
376
389
  ])
377
- ], 8, js))), 128))
390
+ ], 8, Os))), 128))
378
391
  ], 512)) : A("", !0)
379
392
  ], 64));
380
393
  }
381
- }), As = { class: "flex items-center space-x-2" }, Fs = /* @__PURE__ */ ge({
394
+ }), qs = { class: "flex items-center space-x-2" }, Ms = /* @__PURE__ */ ge({
382
395
  __name: "vs-bi-switch",
383
396
  props: /* @__PURE__ */ Be({
384
397
  leftLabel: {},
@@ -396,12 +409,12 @@ const Es = se("x", [
396
409
  const t = e, a = Gt(s, "modelValue"), r = () => {
397
410
  t("update:is-enabled", a);
398
411
  };
399
- return (i, n) => (p(), y("div", As, [
400
- s.leftLabel ? (p(), y("div", {
412
+ return (i, n) => (h(), x("div", qs, [
413
+ s.leftLabel ? (h(), x("div", {
401
414
  key: 0,
402
- class: ee(["transition-colors", { "text-blue-500": !a.value }])
415
+ class: se(["transition-colors", { "text-blue-500": !a.value }])
403
416
  }, W(s.leftLabel), 3)) : A("", !0),
404
- Ht(h("input", {
417
+ et(c("input", {
405
418
  "onUpdate:modelValue": n[0] || (n[0] = (o) => a.value = o),
406
419
  type: "checkbox",
407
420
  class: "relative w-11 h-6 p-px bg-gray-100 border-transparent text-transparent rounded-full cursor-pointer transition-colors ease-in-out duration-200 focus:ring-blue-600 disabled:opacity-50 disabled:pointer-events-none checked:bg-none checked:text-blue-600 checked:border-blue-600 focus:checked:border-blue-600 dark:bg-neutral-800 dark:border-neutral-700 dark:checked:bg-blue-500 dark:checked:border-blue-500 dark:focus:ring-offset-gray-600 before:inline-block before:size-5 before:bg-white checked:before:bg-blue-200 before:translate-x-0 checked:before:translate-x-full before:rounded-full before:shadow before:h-5 before:w-5 before:transform before:ring-0 before:transition before:ease-in-out before:duration-200 dark:before:bg-neutral-400 dark:checked:before:bg-blue-200",
@@ -409,9 +422,9 @@ const Es = se("x", [
409
422
  }, null, 544), [
410
423
  [ps, a.value]
411
424
  ]),
412
- s.rightLabel ? (p(), y("div", {
425
+ s.rightLabel ? (h(), x("div", {
413
426
  key: 1,
414
- class: ee(["transition-colors", { "text-blue-500": a.value }])
427
+ class: se(["transition-colors", { "text-blue-500": a.value }])
415
428
  }, W(s.rightLabel), 3)) : A("", !0)
416
429
  ]));
417
430
  }
@@ -420,36 +433,36 @@ const Es = se("x", [
420
433
  for (const [a, r] of e)
421
434
  t[a] = r;
422
435
  return t;
423
- }, qs = {}, Ms = { class: "flex items-center justify-center h-full" };
424
- function Us(s, e) {
425
- return p(), y("div", Ms, [...e[0] || (e[0] = [
426
- h("div", { class: "text-center text-gray-500" }, [
427
- h("h2", { class: "text-2xl font-bold" }, "No data available")
436
+ }, Us = {}, Gs = { class: "flex items-center justify-center h-full" };
437
+ function Hs(s, e) {
438
+ return h(), x("div", Gs, [...e[0] || (e[0] = [
439
+ c("div", { class: "text-center text-gray-500" }, [
440
+ c("h2", { class: "text-2xl font-bold" }, "No data available")
428
441
  ], -1)
429
442
  ])]);
430
443
  }
431
- const Gs = /* @__PURE__ */ Q(qs, [["render", Us]]), Nt = {
432
- "bi-bar": M(() => Promise.resolve().then(() => ti)),
433
- "bi-number": M(() => import("./vs-number-DcNzw794.js")),
434
- "bi-text": M(() => import("./vs-text-BrR4ghm-.js")),
435
- "bi-listbar": M(() => Promise.resolve().then(() => eo)),
436
- "bi-pie": M(() => Promise.resolve().then(() => ui)),
437
- "bi-donut": M(() => Promise.resolve().then(() => ii)),
438
- "bi-line": M(() => Promise.resolve().then(() => mi)),
439
- "bi-stat": M(() => Promise.resolve().then(() => Vi)),
440
- "bi-pivot": M(() => Promise.resolve().then(() => xo)),
441
- "bi-progress": M(() => Promise.resolve().then(() => Ui)),
442
- "bi-funnel": M(() => import("./vs-funnel-bar-DqAvALNw.js")),
443
- "bi-map": M(() => import("./vs-map-Bv1DE5Cy.js")),
444
- "bi-cluster": M(() => import("./vs-map-cluster-Bi6VgdLb.js")),
445
- "bi-table": M(() => import("./vs-table-BNtAxSD5.js"))
444
+ const Zs = /* @__PURE__ */ Q(Us, [["render", Hs]]), Nt = {
445
+ "bi-bar": M(() => Promise.resolve().then(() => ei)),
446
+ "bi-number": M(() => import("./vs-number-BvAcFzRT.js")),
447
+ "bi-text": M(() => import("./vs-text-GIhpwEL4.js")),
448
+ "bi-listbar": M(() => Promise.resolve().then(() => Ki)),
449
+ "bi-pie": M(() => Promise.resolve().then(() => ci)),
450
+ "bi-donut": M(() => Promise.resolve().then(() => ni)),
451
+ "bi-line": M(() => Promise.resolve().then(() => gi)),
452
+ "bi-stat": M(() => Promise.resolve().then(() => Ri)),
453
+ "bi-pivot": M(() => Promise.resolve().then(() => bo)),
454
+ "bi-progress": M(() => Promise.resolve().then(() => Mi)),
455
+ "bi-funnel": M(() => import("./vs-funnel-bar-DwVkX7Q2.js")),
456
+ "bi-map": M(() => import("./vs-map-BeYJ2aj0.js")),
457
+ "bi-cluster": M(() => import("./vs-map-cluster-ltvourI_.js")),
458
+ "bi-table": M(() => import("./vs-table-CBFIS-pF.js"))
446
459
  };
447
- let Xt = "/api";
448
- function Ze(s) {
449
- Xt = s || "/api";
460
+ let Yt = "/api";
461
+ function He(s) {
462
+ Yt = s || "/api";
450
463
  }
451
- function Hs(s, e) {
452
- const t = Xt.replace(/\/$/, ""), r = s.startsWith("http") || s.startsWith("//") || t && s.startsWith(t) ? s : `${t}${s.startsWith("/") ? s : `/${s}`}`;
464
+ function Qs(s, e) {
465
+ const t = Yt.replace(/\/$/, ""), r = s.startsWith("http") || s.startsWith("//") || t && s.startsWith(t) ? s : `${t}${s.startsWith("/") ? s : `/${s}`}`;
453
466
  if (!e || !Object.keys(e).length) return r;
454
467
  const i = new URLSearchParams();
455
468
  Object.entries(e).forEach(([o, l]) => {
@@ -459,7 +472,7 @@ function Hs(s, e) {
459
472
  return n ? `${r}${r.includes("?") ? "&" : "?"}${n}` : r;
460
473
  }
461
474
  async function Ee(s, e = {}) {
462
- const { params: t, ...a } = e, r = Hs(s, t), i = {
475
+ const { params: t, ...a } = e, r = Qs(s, t), i = {
463
476
  ...a.headers
464
477
  };
465
478
  a.body != null && (i["Content-Type"] = i["Content-Type"] ?? "application/json");
@@ -489,13 +502,13 @@ const H = {
489
502
  delete(s) {
490
503
  return Ee(s, { method: "DELETE" });
491
504
  }
492
- }, Zs = {
505
+ }, Xs = {
493
506
  key: 0,
494
507
  class: "text-[16px] flex max-w-full items-center min-h-0 justify-between h-fit shrink-0"
495
- }, Qs = { class: "flex items-center justify-between w-full gap-2" }, Xs = { class: "flex items-center gap-2 min-w-0" }, Ks = { class: "text-gray-800 inline-block line-clamp-1 font-semibold" }, Ys = { class: "flex flex-col justify-end" }, Js = {
508
+ }, Ys = { class: "flex items-center justify-between w-full gap-2" }, Js = { class: "flex items-center gap-2 min-w-0" }, Ks = { class: "text-gray-800 inline-block line-clamp-1 font-semibold" }, ea = { class: "flex flex-col justify-end" }, ta = {
496
509
  key: 0,
497
510
  class: "flex items-center justify-end w-full gap-2"
498
- }, ea = { class: "w-full h-full" }, Oe = /* @__PURE__ */ ge({
511
+ }, Oe = /* @__PURE__ */ ge({
499
512
  __name: "vs-widget",
500
513
  props: {
501
514
  dashboard: {},
@@ -509,117 +522,117 @@ const H = {
509
522
  },
510
523
  emits: ["update:current-widget-data"],
511
524
  setup(s, { emit: e }) {
512
- const t = s, a = e, r = I(null), i = I(null), n = I(null), o = I({}), l = I([]), c = F(() => {
513
- var d, x;
514
- const w = (d = t.dashboardWidgets) == null ? void 0 : d.find((_) => _.name === t.widget);
515
- return ((x = w == null ? void 0 : w.data) == null ? void 0 : x.title) ?? (w == null ? void 0 : w.title) ?? "";
516
- }), u = F(() => {
517
- var d;
518
- const w = (d = t.dashboardWidgets) == null ? void 0 : d.find((x) => x.name === t.widget);
519
- return (w == null ? void 0 : w.type) ?? "text";
520
- }), f = F(() => {
521
- var w, d;
522
- return t.height || ((d = (w = o.value) == null ? void 0 : w.style) == null ? void 0 : d.height) || 480;
523
- }), v = F(() => {
524
- var d;
525
- const w = (d = o.value) == null ? void 0 : d.controls;
526
- return !w || typeof w == "boolean" ? [] : Object.keys(w).map((x) => ({
527
- name: x,
528
- options: w[x]
525
+ const t = s, a = e, r = I(null), i = I(null), n = I(null), o = I({}), l = I([]), d = q(() => {
526
+ var f, w;
527
+ const y = (f = t.dashboardWidgets) == null ? void 0 : f.find(($) => $.name === t.widget);
528
+ return ((w = y == null ? void 0 : y.data) == null ? void 0 : w.title) ?? (y == null ? void 0 : y.title) ?? "";
529
+ }), u = q(() => {
530
+ var f;
531
+ const y = (f = t.dashboardWidgets) == null ? void 0 : f.find((w) => w.name === t.widget);
532
+ return (y == null ? void 0 : y.type) ?? "text";
533
+ }), p = q(() => {
534
+ var y, f;
535
+ return t.height || ((f = (y = o.value) == null ? void 0 : y.style) == null ? void 0 : f.height) || 480;
536
+ }), v = q(() => {
537
+ var f;
538
+ const y = (f = o.value) == null ? void 0 : f.controls;
539
+ return !y || typeof y == "boolean" ? [] : Object.keys(y).map((w) => ({
540
+ name: w,
541
+ options: y[w]
529
542
  }));
530
- }), g = F(() => {
531
- const w = u.value ? `bi-${u.value}` : "";
532
- return w && w in Nt ? Nt[w] : null;
543
+ }), m = q(() => {
544
+ const y = u.value ? `bi-${u.value}` : "";
545
+ return y && y in Nt ? Nt[y] : null;
533
546
  });
534
- function b(w, d) {
535
- var x, _;
536
- (_ = (x = i.value) == null ? void 0 : x.changeStyle) == null || _.call(x, w, d);
547
+ function b(y, f) {
548
+ var w, $;
549
+ ($ = (w = i.value) == null ? void 0 : w.changeStyle) == null || $.call(w, y, f);
537
550
  }
538
- function k(w, d) {
539
- const x = l.value.find((_) => _.name === d);
540
- x ? x.option = w : l.value.push({ name: d, option: w }), $();
551
+ function k(y, f) {
552
+ const w = l.value.find(($) => $.name === f);
553
+ w ? w.option = y : l.value.push({ name: f, option: y }), D();
541
554
  }
542
- function $() {
543
- var d, x;
544
- let w = `/bi-data?dashboard=${t.dashboard}&widget=${t.widget}`;
545
- l.value.forEach((_) => {
546
- w += `&${_.name}=${_.option}`;
547
- }), (x = (d = i.value) == null ? void 0 : d.getDataFromURL) == null || x.call(d, w);
555
+ function D() {
556
+ var f, w;
557
+ let y = `/bi-data?dashboard=${t.dashboard}&widget=${t.widget}`;
558
+ l.value.forEach(($) => {
559
+ y += `&${$.name}=${$.option}`;
560
+ }), (w = (f = i.value) == null ? void 0 : f.getDataFromURL) == null || w.call(f, y);
548
561
  }
549
562
  function V() {
550
- const w = n.value;
551
- if (w != null && w.getDataURL) {
552
- const d = w.getDataURL({
563
+ const y = n.value;
564
+ if (y != null && y.getDataURL) {
565
+ const f = y.getDataURL({
553
566
  type: "png",
554
567
  pixelRatio: 2,
555
568
  backgroundColor: "#ffffff"
556
- }), x = document.createElement("a");
557
- x.href = d, x.download = "chart.png", document.body.appendChild(x), x.click(), document.body.removeChild(x);
569
+ }), w = document.createElement("a");
570
+ w.href = f, w.download = "chart.png", document.body.appendChild(w), w.click(), document.body.removeChild(w);
558
571
  }
559
572
  }
560
573
  return le(() => {
561
- t.prefix && Ze(t.prefix);
562
- }), te(
574
+ t.prefix && He(t.prefix);
575
+ }), ae(
563
576
  () => t.filterURl,
564
- (w) => {
565
- var d, x;
566
- w && ((x = (d = i.value) == null ? void 0 : d.setFilter) == null || x.call(d, w));
577
+ (y) => {
578
+ var f, w;
579
+ y && ((w = (f = i.value) == null ? void 0 : f.setFilter) == null || w.call(f, y));
567
580
  }
568
- ), te(
581
+ ), ae(
569
582
  () => t.selectedWidget,
570
- (w, d) => {
571
- var x;
572
- w !== d && w === ((x = o.value) == null ? void 0 : x.id) && a("update:current-widget-data", o.value);
583
+ (y, f) => {
584
+ var w;
585
+ y !== f && y === ((w = o.value) == null ? void 0 : w.id) && a("update:current-widget-data", o.value);
573
586
  }
574
- ), te(
587
+ ), ae(
575
588
  o,
576
- (w, d) => {
577
- (w == null ? void 0 : w.id) !== (d == null ? void 0 : d.id) && a("update:current-widget-data", w);
589
+ (y, f) => {
590
+ (y == null ? void 0 : y.id) !== (f == null ? void 0 : f.id) && a("update:current-widget-data", y);
578
591
  },
579
592
  { deep: !0 }
580
- ), (w, d) => {
581
- var x, _, D;
582
- return p(), y("div", {
593
+ ), (y, f) => {
594
+ var w, $, _;
595
+ return h(), x("div", {
583
596
  ref_key: "widgetRef",
584
597
  ref: r,
585
598
  class: "box-border relative p-4 bg-white border border-gray-200 rounded-xl shadow-sm select-auto overflow-hidden",
586
- style: Ge({ height: f.value + "px", maxHeight: f.value + "px" })
599
+ style: Ge({ height: p.value + "px", maxHeight: p.value + "px" })
587
600
  }, [
588
- ["text", "cluster", "map"].includes(u.value) ? A("", !0) : (p(), y("div", Zs, [
589
- h("div", Qs, [
590
- h("div", Xs, [
591
- h("span", Ks, W(c.value), 1)
601
+ ["text", "cluster", "map"].includes(u.value) ? A("", !0) : (h(), x("div", Xs, [
602
+ c("div", Ys, [
603
+ c("div", Js, [
604
+ c("span", Ks, W(d.value), 1)
592
605
  ]),
593
- h("div", Ys, [
594
- (x = v.value) != null && x.length ? (p(), y("span", Js, [
595
- (p(!0), y(U, null, Z((_ = v.value) == null ? void 0 : _.filter(
596
- (m) => (m == null ? void 0 : m.options) && (m == null ? void 0 : m.name) !== "export"
597
- ), (m) => {
606
+ c("div", ea, [
607
+ (w = v.value) != null && w.length ? (h(), x("span", ta, [
608
+ (h(!0), x(U, null, Z(($ = v.value) == null ? void 0 : $.filter(
609
+ (g) => (g == null ? void 0 : g.options) && (g == null ? void 0 : g.name) !== "export"
610
+ ), (g) => {
598
611
  var C, z;
599
- return p(), y("div", {
600
- key: m == null ? void 0 : m.name
612
+ return h(), x("div", {
613
+ key: g == null ? void 0 : g.name
601
614
  }, [
602
- Array.isArray(m == null ? void 0 : m.options) ? (p(), N(Ps, {
615
+ Array.isArray(g == null ? void 0 : g.options) ? (h(), E(Fs, {
603
616
  key: 0,
604
- title: m == null ? void 0 : m.name,
605
- options: m == null ? void 0 : m.options,
606
- value: ((z = (C = o.value) == null ? void 0 : C.data) == null ? void 0 : z[m == null ? void 0 : m.name]) ?? null,
607
- onSelected: (R) => k(R, m == null ? void 0 : m.name)
608
- }, null, 8, ["title", "options", "value", "onSelected"])) : typeof m.options == "boolean" ? (p(), N(Fs, {
617
+ title: g == null ? void 0 : g.name,
618
+ options: g == null ? void 0 : g.options,
619
+ value: ((z = (C = o.value) == null ? void 0 : C.data) == null ? void 0 : z[g == null ? void 0 : g.name]) ?? null,
620
+ onSelected: (R) => k(R, g == null ? void 0 : g.name)
621
+ }, null, 8, ["title", "options", "value", "onSelected"])) : typeof g.options == "boolean" ? (h(), E(Ms, {
609
622
  key: 1,
610
- "left-label": m == null ? void 0 : m.name,
611
- "model-value": !!(m != null && m.options),
612
- "onUpdate:isEnabled": (R) => b(m == null ? void 0 : m.name, R)
623
+ "left-label": g == null ? void 0 : g.name,
624
+ "model-value": !!(g != null && g.options),
625
+ "onUpdate:isEnabled": (R) => b(g == null ? void 0 : g.name, R)
613
626
  }, null, 8, ["left-label", "model-value", "onUpdate:isEnabled"])) : A("", !0)
614
627
  ]);
615
628
  }), 128)),
616
- (D = v.value) != null && D.some((m) => (m == null ? void 0 : m.name) === "export") ? (p(), y("button", {
629
+ (_ = v.value) != null && _.some((g) => (g == null ? void 0 : g.name) === "export") ? (h(), x("button", {
617
630
  key: 0,
618
631
  type: "button",
619
632
  class: "h-[32px] w-[32px] rounded-lg hover:bg-gray-100 duration-100 flex items-center justify-center",
620
633
  onClick: V
621
634
  }, [
622
- T(E(zs), {
635
+ T(N(Is), {
623
636
  size: 16,
624
637
  class: "text-gray-800"
625
638
  })
@@ -628,20 +641,24 @@ const H = {
628
641
  ])
629
642
  ])
630
643
  ])),
631
- h("div", ea, [
632
- g.value ? (p(), N(Zt(g.value), {
644
+ c("div", {
645
+ class: "w-full h-full",
646
+ onClick: f[2] || (f[2] = Ht(() => {
647
+ }, ["stop"]))
648
+ }, [
649
+ m.value ? (h(), E(Zt(m.value), {
633
650
  key: 0,
634
651
  ref_key: "chartRef",
635
652
  ref: i,
636
653
  "current-widget": n.value,
637
- "onUpdate:currentWidget": d[0] || (d[0] = (m) => n.value = m),
654
+ "onUpdate:currentWidget": f[0] || (f[0] = (g) => n.value = g),
638
655
  "widget-data": o.value,
639
- "onUpdate:widgetData": d[1] || (d[1] = (m) => o.value = m),
656
+ "onUpdate:widgetData": f[1] || (f[1] = (g) => o.value = g),
640
657
  dashboard: s.dashboard,
641
- title: c.value,
658
+ title: d.value,
642
659
  widget: s.widget,
643
660
  "prefetched-data": s.prefetchedData
644
- }, null, 40, ["current-widget", "widget-data", "dashboard", "title", "widget", "prefetched-data"])) : (p(), N(Gs, {
661
+ }, null, 40, ["current-widget", "widget-data", "dashboard", "title", "widget", "prefetched-data"])) : (h(), E(Zs, {
645
662
  key: 1,
646
663
  class: "w-full h-full"
647
664
  }))
@@ -649,72 +666,72 @@ const H = {
649
666
  ], 4);
650
667
  };
651
668
  }
652
- }), ta = { class: "w-full overflow-hidden rounded vs-table-interface__table-wrp h-fit" }, sa = { class: "p-5 min-h-[500px] flex flex-col justify-center items-center text-center" }, aa = { class: "max-w-sm mx-auto mt-6" }, ra = { class: "font-medium text-gray-800 dark:text-neutral-200" }, na = { class: "mt-2 text-sm text-gray-500 dark:text-neutral-500" }, Pe = /* @__PURE__ */ ge({
669
+ }), sa = { class: "w-full overflow-hidden rounded vs-table-interface__table-wrp h-fit" }, aa = { class: "p-5 min-h-[500px] flex flex-col justify-center items-center text-center" }, ra = { class: "max-w-sm mx-auto mt-6" }, na = { class: "font-medium text-gray-800 dark:text-neutral-200" }, ia = { class: "mt-2 text-sm text-gray-500 dark:text-neutral-500" }, Pe = /* @__PURE__ */ ge({
653
670
  __name: "vs-new-nodata",
654
671
  props: {
655
672
  title: { default: "Дані для відображення відсутні" },
656
673
  text: { default: "Змініть параметри пошуку або спробуйте пізніше" }
657
674
  },
658
675
  setup(s) {
659
- return (e, t) => (p(), y("div", ta, [
660
- h("div", null, [
661
- h("div", sa, [
676
+ return (e, t) => (h(), x("div", sa, [
677
+ c("div", null, [
678
+ c("div", aa, [
662
679
  t[0] || (t[0] = fs('<svg class="w-48 mx-auto" viewBox="0 0 178 90" fill="none" xmlns="http://www.w3.org/2000/svg"><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></svg>', 1)),
663
- h("div", aa, [
664
- h("p", ra, W(s.title), 1),
665
- h("p", na, W(s.text), 1)
680
+ c("div", ra, [
681
+ c("p", na, W(s.title), 1),
682
+ c("p", ia, W(s.text), 1)
666
683
  ])
667
684
  ])
668
685
  ])
669
686
  ]));
670
687
  }
671
- }), ia = {
688
+ }), oa = {
672
689
  __name: "filter",
673
690
  setup(s) {
674
- return (e, t) => (p(), N(E(Is), he(e.$attrs, { size: 24 }), null, 16));
691
+ return (e, t) => (h(), E(N(Rs), he(e.$attrs, { size: 24 }), null, 16));
675
692
  }
676
- }, oa = {
677
- components: { filterIcon: ia },
693
+ }, la = {
694
+ components: { filterIcon: oa },
678
695
  props: ["filterScheme"],
679
696
  emits: ["filters:changed"]
680
- }, la = { class: "flex items-center" }, ca = {
697
+ }, da = { class: "flex items-center" }, ca = {
681
698
  key: 0,
682
699
  type: "button",
683
700
  class: "py-2 px-2.5 ml-3 h-[38px] inline-flex items-center gap-x-1.5 text-xs font-medium rounded-lg border border-gray-200 bg-white text-gray-800 hover:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-50 opacity-60 cursor-not-allowed",
684
701
  disabled: "",
685
702
  title: "Фільтри вимкнено (v3-filter видалено)"
686
703
  };
687
- function da(s, e, t, a, r, i) {
688
- const n = Y("filterIcon");
689
- return p(), y("div", la, [
690
- t.filterScheme ? (p(), y("button", ca, [
704
+ function ua(s, e, t, a, r, i) {
705
+ const n = K("filterIcon");
706
+ return h(), x("div", da, [
707
+ t.filterScheme ? (h(), x("button", ca, [
691
708
  T(n),
692
709
  e[0] || (e[0] = X(" Фільтри ", -1))
693
710
  ])) : A("", !0)
694
711
  ]);
695
712
  }
696
- const ua = /* @__PURE__ */ Q(oa, [["render", da]]), ha = {
697
- components: { VsFilterHeader: ua },
713
+ const ha = /* @__PURE__ */ Q(la, [["render", ua]]), pa = {
714
+ components: { VsFilterHeader: ha },
698
715
  props: {
699
716
  dashboardData: { type: Object, default: null },
700
717
  filters: { type: Array, default: null }
701
718
  }
702
- }, pa = { class: "bg-white px-5 flex gap-4 h-[90px] border border-gray-200 rounded-xl mb-2 pt-[3px] justify-between items-center" }, fa = { class: "grow" }, ga = { class: "text-lg font-semibold text-stone-800 dark:text-neutral-200" }, ma = {
719
+ }, fa = { class: "bg-white px-5 flex gap-4 h-[90px] border border-gray-200 rounded-xl mb-2 pt-[3px] justify-between items-center" }, ga = { class: "grow" }, ma = { class: "text-lg font-semibold text-stone-800 dark:text-neutral-200" }, ba = {
703
720
  key: 0,
704
721
  class: "inline-flex items-center text-sm gap-x-2 text-stone-800 hover:text-stone-500 focus:outline-none focus:text-stone-500 dark:text-neutral-200 dark:hover:text-neutral-400 dark:focus:text-neutral-400"
705
- }, ba = {
722
+ }, xa = {
706
723
  key: 0,
707
724
  class: "flex items-center gap-3"
708
725
  };
709
- function xa(s, e, t, a, r, i) {
710
- var o, l, c;
711
- const n = Y("VsFilterHeader");
712
- return p(), y("div", pa, [
713
- h("div", fa, [
714
- h("h1", ga, W((o = t.dashboardData) == null ? void 0 : o.title), 1),
715
- (l = t.dashboardData) != null && l.description ? (p(), y("button", ma, W((c = t.dashboardData) == null ? void 0 : c.description), 1)) : A("", !0)
726
+ function ya(s, e, t, a, r, i) {
727
+ var o, l, d;
728
+ const n = K("VsFilterHeader");
729
+ return h(), x("div", fa, [
730
+ c("div", ga, [
731
+ c("h1", ma, W((o = t.dashboardData) == null ? void 0 : o.title), 1),
732
+ (l = t.dashboardData) != null && l.description ? (h(), x("button", ba, W((d = t.dashboardData) == null ? void 0 : d.description), 1)) : A("", !0)
716
733
  ]),
717
- t.filters ? (p(), y("div", ba, [
734
+ t.filters ? (h(), x("div", xa, [
718
735
  T(n, {
719
736
  filterScheme: t.filters,
720
737
  "onFilters:changed": e[0] || (e[0] = (u) => s.$emit("filters:changed", u))
@@ -722,22 +739,13 @@ function xa(s, e, t, a, r, i) {
722
739
  ])) : A("", !0)
723
740
  ]);
724
741
  }
725
- const ya = /* @__PURE__ */ Q(ha, [["render", xa]]);
726
- var Kt = {};
727
- const wa = Symbol(Kt.NODE_ENV !== "production" ? "router" : ""), va = Symbol(Kt.NODE_ENV !== "production" ? "route location" : "");
728
- function we() {
729
- return He(wa);
730
- }
731
- function ka(s) {
732
- return He(va);
733
- }
734
- const $a = {
742
+ const wa = /* @__PURE__ */ Q(pa, [["render", ya]]), va = {
735
743
  key: 0,
736
744
  class: "text-gray-400 shrink-0"
737
- }, _a = ["onClick"], Da = ["onClick"], Ca = {
745
+ }, ka = ["onClick"], $a = ["onClick"], _a = {
738
746
  key: 4,
739
747
  class: "text-gray-900 font-medium truncate"
740
- }, Yt = {
748
+ }, Jt = {
741
749
  __name: "vs-breadcrumbs",
742
750
  props: {
743
751
  items: {
@@ -748,25 +756,25 @@ const $a = {
748
756
  compact: { type: Boolean, default: !1 }
749
757
  },
750
758
  setup(s) {
751
- const e = s, t = we(), a = F(() => Array.isArray(e.items) ? e.items : []);
759
+ const e = s, t = we(), a = q(() => Array.isArray(e.items) ? e.items : []);
752
760
  function r(i) {
753
761
  t != null && t.push ? t.push(i) : typeof i == "string" && (window != null && window.location) && (window.location.href = i);
754
762
  }
755
763
  return (i, n) => {
756
- const o = Y("router-link");
757
- return p(), y("nav", {
758
- class: ee(["flex items-center gap-2 text-sm text-gray-600", s.compact ? "py-1" : "py-6"]),
764
+ const o = K("router-link");
765
+ return h(), x("nav", {
766
+ class: se(["flex items-center gap-2 text-sm text-gray-600", s.compact ? "py-1" : "py-6"]),
759
767
  "aria-label": "Breadcrumb"
760
768
  }, [
761
- (p(!0), y(U, null, Z(a.value, (l, c) => (p(), y(U, { key: c }, [
762
- c > 0 ? (p(), y("span", $a, [
763
- T(E(Cs), { class: "w-4 h-4" })
769
+ (h(!0), x(U, null, Z(a.value, (l, d) => (h(), x(U, { key: d }, [
770
+ d > 0 ? (h(), x("span", va, [
771
+ T(N(Ts), { class: "w-4 h-4" })
764
772
  ])) : A("", !0),
765
- typeof l.onClick == "function" ? (p(), y("span", {
773
+ typeof l.onClick == "function" ? (h(), x("span", {
766
774
  key: 1,
767
775
  class: "hover:text-gray-900 transition-colors cursor-pointer",
768
776
  onClick: (u) => l.onClick()
769
- }, W(l.label), 9, _a)) : E(t) && l.to ? (p(), N(o, {
777
+ }, W(l.label), 9, ka)) : N(t) && l.to ? (h(), E(o, {
770
778
  key: 2,
771
779
  to: l.to,
772
780
  class: "hover:text-gray-900 transition-colors"
@@ -775,17 +783,17 @@ const $a = {
775
783
  X(W(l.label), 1)
776
784
  ]),
777
785
  _: 2
778
- }, 1032, ["to"])) : l.to ? (p(), y("span", {
786
+ }, 1032, ["to"])) : l.to ? (h(), x("span", {
779
787
  key: 3,
780
788
  class: "hover:text-gray-900 transition-colors cursor-pointer",
781
789
  onClick: (u) => r(l.to)
782
- }, W(l.label), 9, Da)) : (p(), y("span", Ca, W(l.label), 1))
790
+ }, W(l.label), 9, $a)) : (h(), x("span", _a, W(l.label), 1))
783
791
  ], 64))), 128))
784
792
  ], 2);
785
793
  };
786
794
  }
787
- }, za = {
788
- components: { VsWidget: Oe, VsNewNodata: Pe, VsHeader: ya, VsBreadcrumbs: Yt },
795
+ }, Da = {
796
+ components: { VsWidget: Oe, VsNewNodata: Pe, VsHeader: wa, VsBreadcrumbs: Jt },
789
797
  props: ["id", "prefix"],
790
798
  data() {
791
799
  return {
@@ -798,7 +806,7 @@ const $a = {
798
806
  };
799
807
  },
800
808
  async mounted() {
801
- Ze(this.prefix || "/api"), await this.fetchData();
809
+ He(this.prefix || "/api"), await this.fetchData();
802
810
  },
803
811
  methods: {
804
812
  async fetchData() {
@@ -833,33 +841,33 @@ const $a = {
833
841
  }), this.filterURl += e);
834
842
  }
835
843
  }
836
- }, Ta = { class: "w-full pb-8 overflow-y-auto mx-auto" }, Ia = { class: "grid flex-grow w-full grid-cols-12 gap-4 h-fit" };
837
- function Sa(s, e, t, a, r, i) {
844
+ }, Ca = { class: "w-full pb-8 overflow-y-auto mx-auto" }, za = { class: "grid flex-grow w-full grid-cols-12 gap-4 h-fit" };
845
+ function Ta(s, e, t, a, r, i) {
838
846
  var l;
839
- const n = Y("VsNewNodata"), o = Y("VsWidget");
840
- return p(), y("div", Ta, [
841
- h("div", Ia, [
842
- r.error || !r.dashboardData ? (p(), N(n, {
847
+ const n = K("VsNewNodata"), o = K("VsWidget");
848
+ return h(), x("div", Ca, [
849
+ c("div", za, [
850
+ r.error || !r.dashboardData ? (h(), E(n, {
843
851
  key: 0,
844
852
  class: "col-span-12"
845
853
  })) : A("", !0),
846
- (p(!0), y(U, null, Z(((l = r.dashboardData) == null ? void 0 : l.panels) || [], (c, u) => {
847
- var f;
848
- return p(), y("div", {
854
+ (h(!0), x(U, null, Z(((l = r.dashboardData) == null ? void 0 : l.panels) || [], (d, u) => {
855
+ var p;
856
+ return h(), x("div", {
849
857
  key: u,
850
- class: ee([`col-span-12 lg:col-span-${c.col || 12}`, "flex flex-col gap-[10px]"])
858
+ class: se([`col-span-12 lg:col-span-${d.col || 12}`, "flex flex-col gap-[10px]"])
851
859
  }, [
852
- (f = c.widgets) != null && f.length ? (p(!0), y(U, { key: 0 }, Z(c.widgets, (v) => (p(), N(o, {
860
+ (p = d.widgets) != null && p.length ? (h(!0), x(U, { key: 0 }, Z(d.widgets, (v) => (h(), E(o, {
853
861
  key: v,
854
862
  dashboard: t.id,
855
863
  widget: v,
856
864
  "dashboard-widgets": r.dashboardData.widgets,
857
865
  "filter-u-rl": r.filterURl
858
- }, null, 8, ["dashboard", "widget", "dashboard-widgets", "filter-u-rl"]))), 128)) : (p(), N(o, {
866
+ }, null, 8, ["dashboard", "widget", "dashboard-widgets", "filter-u-rl"]))), 128)) : (h(), E(o, {
859
867
  key: 1,
860
868
  class: "flex flex-col",
861
869
  dashboard: t.id,
862
- widget: c.widget,
870
+ widget: d.widget,
863
871
  "dashboard-widgets": r.dashboardData.widgets,
864
872
  "filter-u-rl": r.filterURl
865
873
  }, null, 8, ["dashboard", "widget", "dashboard-widgets", "filter-u-rl"]))
@@ -868,21 +876,21 @@ function Sa(s, e, t, a, r, i) {
868
876
  ])
869
877
  ]);
870
878
  }
871
- const vo = /* @__PURE__ */ Q(za, [["render", Sa]]);
872
- var Ra = /* @__PURE__ */ ((s) => (s.Dashboard = "/dashboard", s.BiPlatform = "/bi-platform", s.EditorBase = "/editor", s.AllDashboards = "/dashboards", s.DashboardByName = "/dashboards/:name", s))(Ra || {}), Et;
879
+ const vo = /* @__PURE__ */ Q(Da, [["render", Ta]]);
880
+ var Ia = /* @__PURE__ */ ((s) => (s.Dashboard = "/dashboard", s.BiPlatform = "/bi-platform", s.EditorBase = "/editor", s.AllDashboards = "/dashboards", s.DashboardByName = "/dashboards/:name", s))(Ia || {}), Et;
873
881
  ((s) => {
874
882
  ((e) => {
875
883
  e.Bar = "bar", e.ListBar = "listbar", e.Number = "number", e.Text = "text", e.Pie = "pie", e.Heatmap = "heatmap", e.Calendar = "calendar", e.Line = "line", e.Stat = "stat", e.Pivot = "pivot", e.Funnel = "funnel", e.Progress = "progress";
876
884
  })(s.Types || (s.Types = {}));
877
885
  })(Et || (Et = {}));
878
- var K = /* @__PURE__ */ ((s) => (s.AllDashboards = "all-dashboards", s.BiPlatform = "bi-platform", s.Dashboard = "dashboard", s.Erobota = "erobota", s.Datatest = "datatest", s.Sourcedate = "sourcedate", s.Widgetwidget = "widgetwidget", s.Test = "test", s.Demo = "demo", s.Crm = "crm", s.Editor = "editor", s.EditorDashboard = "editor-dashboard", s.EditorWidget = "editor-widget", s.Editordetails = "editordetails", s.Dbtables = "dbtables", s.Biviewer = "biviewer", s.Biviewerinner = "biviewerinner", s.Bieditor = "bieditor", s.Bieditorinner = "bieditorinner", s))(K || {});
879
- const Va = {
886
+ var J = /* @__PURE__ */ ((s) => (s.AllDashboards = "all-dashboards", s.BiPlatform = "bi-platform", s.Dashboard = "dashboard", s.Erobota = "erobota", s.Datatest = "datatest", s.Sourcedate = "sourcedate", s.Widgetwidget = "widgetwidget", s.Test = "test", s.Demo = "demo", s.Crm = "crm", s.Editor = "editor-all-dashboards", s.EditorDashboard = "editor-dashboard", s.EditorWidget = "editor-widget", s.Editordetails = "editordetails", s.Dbtables = "dbtables", s.Biviewer = "biviewer", s.Biviewerinner = "biviewerinner", s.Bieditor = "bieditor", s.Bieditorinner = "bieditorinner", s))(J || {});
887
+ const Sa = {
880
888
  key: 0,
881
889
  class: "vs-modal-wrapper fixed inset-0 flex items-center justify-center p-4"
882
- }, La = { class: "flex items-center justify-between shrink-0 py-2.5 px-4 border-b border-gray-200 dark:border-[#454545]" }, Wa = { class: "font-medium text-gray-800 dark:text-white" }, Na = { class: "vs-modal-content flex-1 min-h-0 overflow-auto p-4" }, Ea = {
890
+ }, Ra = { class: "flex items-center justify-between shrink-0 py-2.5 px-4 border-b border-gray-200 dark:border-[#454545]" }, Va = { class: "font-medium text-gray-800 dark:text-white" }, La = { class: "vs-modal-content flex-1 min-h-0 overflow-auto p-4" }, Wa = {
883
891
  key: 0,
884
892
  class: "shrink-0 border-t border-gray-200 dark:border-neutral-700"
885
- }, ja = {
893
+ }, Na = {
886
894
  __name: "vs-modal",
887
895
  props: {
888
896
  visible: { type: Boolean, default: !1 },
@@ -893,7 +901,7 @@ const Va = {
893
901
  },
894
902
  emits: ["close", "update:visible"],
895
903
  setup(s, { emit: e }) {
896
- const t = s, a = e, r = F(() => t.size === "small" ? "md:max-w-[40%] w-full max-w-md" : t.size === "lg" ? "md:max-w-[70%] w-full max-w-4xl" : "md:max-w-[50%] w-full max-w-lg");
904
+ const t = s, a = e, r = q(() => t.size === "small" ? "md:max-w-[40%] w-full max-w-md" : t.size === "lg" ? "md:max-w-[70%] w-full max-w-4xl" : "md:max-w-[50%] w-full max-w-lg");
897
905
  function i() {
898
906
  a("update:visible", !1), a("close");
899
907
  }
@@ -904,35 +912,35 @@ const Va = {
904
912
  window.addEventListener("keydown", n);
905
913
  }), Ue(() => {
906
914
  window.removeEventListener("keydown", n);
907
- }), (o, l) => (p(), N(gs, { to: s.teleport }, [
908
- s.visible ? (p(), y("div", Va, [
909
- h("div", {
915
+ }), (o, l) => (h(), E(gs, { to: s.teleport }, [
916
+ s.visible ? (h(), x("div", Sa, [
917
+ c("div", {
910
918
  class: "absolute inset-0 bg-black/50",
911
919
  "aria-hidden": "true",
912
- onMousedown: l[0] || (l[0] = (c) => s.closeClickBack && c.target === c.currentTarget && i())
920
+ onMousedown: l[0] || (l[0] = (d) => s.closeClickBack && d.target === d.currentTarget && i())
913
921
  }, null, 32),
914
922
  T(ms, {
915
923
  name: "vs-modal",
916
924
  appear: ""
917
925
  }, {
918
926
  default: j(() => [
919
- s.visible ? (p(), y("div", {
927
+ s.visible ? (h(), x("div", {
920
928
  key: 0,
921
- class: ee(["vs-modal-panel relative flex flex-col bg-white dark:bg-[#1A1A1A] rounded-xl shadow-xl max-h-[85vh] min-w-0 border border-gray-200 dark:border-[#454545]", r.value]),
929
+ class: se(["vs-modal-panel relative flex flex-col bg-white dark:bg-[#1A1A1A] rounded-xl shadow-xl max-h-[85vh] min-w-0 border border-gray-200 dark:border-[#454545]", r.value]),
922
930
  role: "dialog",
923
931
  "aria-modal": "true",
924
- onMousedown: l[1] || (l[1] = bs(() => {
932
+ onMousedown: l[1] || (l[1] = Ht(() => {
925
933
  }, ["stop"]))
926
934
  }, [
927
- h("div", La, [
928
- h("h3", Wa, W(s.title), 1),
929
- h("button", {
935
+ c("div", Ra, [
936
+ c("h3", Va, W(s.title), 1),
937
+ c("button", {
930
938
  type: "button",
931
939
  class: "size-8 inline-flex justify-center items-center rounded-full bg-gray-100 text-gray-800 hover:bg-gray-200 dark:bg-neutral-700 dark:hover:bg-neutral-600 dark:text-neutral-300",
932
940
  "aria-label": "Закрити",
933
941
  onClick: i
934
942
  }, [...l[2] || (l[2] = [
935
- h("svg", {
943
+ c("svg", {
936
944
  class: "w-4 h-4",
937
945
  xmlns: "http://www.w3.org/2000/svg",
938
946
  fill: "none",
@@ -940,7 +948,7 @@ const Va = {
940
948
  stroke: "currentColor",
941
949
  "stroke-width": "2"
942
950
  }, [
943
- h("path", {
951
+ c("path", {
944
952
  "stroke-linecap": "round",
945
953
  "stroke-linejoin": "round",
946
954
  d: "M6 18L18 6M6 6l12 12"
@@ -948,10 +956,10 @@ const Va = {
948
956
  ], -1)
949
957
  ])])
950
958
  ]),
951
- h("div", Na, [
959
+ c("div", La, [
952
960
  Rt(o.$slots, "default", {}, void 0, !0)
953
961
  ]),
954
- o.$slots.footer ? (p(), y("div", Ea, [
962
+ o.$slots.footer ? (h(), x("div", Wa, [
955
963
  Rt(o.$slots, "footer", {}, void 0, !0)
956
964
  ])) : A("", !0)
957
965
  ], 34)) : A("", !0)
@@ -961,12 +969,12 @@ const Va = {
961
969
  ])) : A("", !0)
962
970
  ], 8, ["to"]));
963
971
  }
964
- }, Ve = /* @__PURE__ */ Q(ja, [["__scopeId", "data-v-5722a50f"]]), Ba = {
972
+ }, Ve = /* @__PURE__ */ Q(Na, [["__scopeId", "data-v-5722a50f"]]), Ea = {
965
973
  __name: "icon-plus",
966
974
  setup(s) {
967
- return (e, t) => (p(), N(E(Qt), he(e.$attrs, { size: 24 }), null, 16));
975
+ return (e, t) => (h(), E(N(Xt), he(e.$attrs, { size: 24 }), null, 16));
968
976
  }
969
- }, Oa = { class: "mb-4 overflow-auto scrollbar max-h-96" }, Pa = {
977
+ }, ja = { class: "mb-4 overflow-auto scrollbar max-h-96" }, Ba = {
970
978
  __name: "vs-editor-create-widget",
971
979
  props: {
972
980
  columns: {
@@ -980,19 +988,19 @@ const Va = {
980
988
  emits: ["update-data"],
981
989
  setup(s, { expose: e, emit: t }) {
982
990
  var b;
983
- const a = M(() => import("@opengis/form")), r = (b = me().proxy) == null ? void 0 : b.$notify, i = t, n = s, o = I(!1), l = I({}), c = I();
991
+ const a = M(() => import("@opengis/form")), r = (b = me().proxy) == null ? void 0 : b.$notify, i = t, n = s, o = I(!1), l = I({}), d = I();
984
992
  function u() {
985
993
  o.value = !0;
986
994
  }
987
- function f() {
995
+ function p() {
988
996
  o.value = !1;
989
997
  }
990
- e({ open: u, close: f });
998
+ e({ open: u, close: p });
991
999
  const v = async () => {
992
1000
  var k;
993
1001
  try {
994
- const $ = (k = c.value) == null ? void 0 : k.doValidation;
995
- typeof $ == "function" && await $(), await H.post(
1002
+ const D = (k = d.value) == null ? void 0 : k.doValidation;
1003
+ typeof D == "function" && await D(), await H.post(
996
1004
  `/bi-dashboard/${n.selectedDashboard}`,
997
1005
  l.value
998
1006
  ), await r({
@@ -1000,16 +1008,16 @@ const Va = {
1000
1008
  title: "Успішно!",
1001
1009
  message: "Віджет успішно створено"
1002
1010
  }), await i("update-data"), l.value = {}, o.value = !1;
1003
- } catch ($) {
1004
- const V = ($ == null ? void 0 : $.message) || "При спробі створити віджет сталася помилка. Перевірте обов'язкові поля (зокрема Type).";
1011
+ } catch (D) {
1012
+ const V = (D == null ? void 0 : D.message) || "При спробі створити віджет сталася помилка. Перевірте обов'язкові поля (зокрема Type).";
1005
1013
  r == null || r({
1006
1014
  type: "error",
1007
1015
  title: "Помилка!",
1008
1016
  message: V
1009
1017
  });
1010
1018
  }
1011
- }, g = F(() => {
1012
- var k, $, V, w;
1019
+ }, m = q(() => {
1020
+ var k, D, V, y;
1013
1021
  return {
1014
1022
  title: {
1015
1023
  type: "text",
@@ -1023,12 +1031,12 @@ const Va = {
1023
1031
  view: "buttons",
1024
1032
  style: { size: "xs" },
1025
1033
  validators: ["required"],
1026
- options: ($ = (k = n.columns) == null ? void 0 : k.filter(
1027
- (d) => (d == null ? void 0 : d.type) == "text" || (d == null ? void 0 : d.type) === "date" || (d == null ? void 0 : d.type) === "timestamp without time zone" || (d == null ? void 0 : d.type) === "boolean" || (d == null ? void 0 : d.type) === "integer"
1028
- )) == null ? void 0 : $.map(({ name: d, type: x }) => ({
1029
- id: d,
1030
- text: d,
1031
- type: x
1034
+ options: (D = (k = n.columns) == null ? void 0 : k.filter(
1035
+ (f) => (f == null ? void 0 : f.type) == "text" || (f == null ? void 0 : f.type) === "date" || (f == null ? void 0 : f.type) === "timestamp without time zone" || (f == null ? void 0 : f.type) === "boolean" || (f == null ? void 0 : f.type) === "integer"
1036
+ )) == null ? void 0 : D.map(({ name: f, type: w }) => ({
1037
+ id: f,
1038
+ text: f,
1039
+ type: w
1032
1040
  }))
1033
1041
  },
1034
1042
  metric: {
@@ -1039,10 +1047,10 @@ const Va = {
1039
1047
  style: { size: "xs" },
1040
1048
  options: [
1041
1049
  { id: "count", label: "count" },
1042
- ...(w = (V = n.columns) == null ? void 0 : V.filter((d) => (d == null ? void 0 : d.type) === "numeric" || (d == null ? void 0 : d.type) === "double precision")) == null ? void 0 : w.map(({ name: d, type: x }) => ({
1043
- id: d,
1044
- text: d,
1045
- type: x
1050
+ ...(y = (V = n.columns) == null ? void 0 : V.filter((f) => (f == null ? void 0 : f.type) === "numeric" || (f == null ? void 0 : f.type) === "double precision")) == null ? void 0 : y.map(({ name: f, type: w }) => ({
1051
+ id: f,
1052
+ text: f,
1053
+ type: w
1046
1054
  }))
1047
1055
  ]
1048
1056
  },
@@ -1148,21 +1156,21 @@ const Va = {
1148
1156
  }
1149
1157
  };
1150
1158
  });
1151
- return (k, $) => {
1152
- const V = Y("VsPopover");
1153
- return p(), y("div", null, [
1154
- s.inline ? A("", !0) : (p(), N(V, {
1159
+ return (k, D) => {
1160
+ const V = K("VsPopover");
1161
+ return h(), x("div", null, [
1162
+ s.inline ? A("", !0) : (h(), E(V, {
1155
1163
  key: 0,
1156
1164
  placement: "right",
1157
1165
  trigger: "hover"
1158
1166
  }, {
1159
1167
  reference: j(() => [
1160
- h("div", null, [
1161
- h("button", {
1168
+ c("div", null, [
1169
+ c("button", {
1162
1170
  class: "z-50 flex items-center justify-center h-[50px] !w-[50px] text-2xl text-white transition-colors bg-blue-500 rounded-full cursor-pointer hover:bg-blue-700",
1163
1171
  onClick: u
1164
1172
  }, [
1165
- T(Ba, {
1173
+ T(Ea, {
1166
1174
  height: "20",
1167
1175
  width: "20"
1168
1176
  })
@@ -1170,7 +1178,7 @@ const Va = {
1170
1178
  ])
1171
1179
  ]),
1172
1180
  default: j(() => [
1173
- $[1] || ($[1] = X(" Створити віджет ", -1))
1181
+ D[1] || (D[1] = X(" Створити віджет ", -1))
1174
1182
  ]),
1175
1183
  _: 1
1176
1184
  })),
@@ -1178,29 +1186,29 @@ const Va = {
1178
1186
  teleport: "#modal",
1179
1187
  visible: o.value,
1180
1188
  title: "Створити віджет",
1181
- onClose: f
1189
+ onClose: p
1182
1190
  }, {
1183
1191
  footer: j(() => [
1184
- h("div", { class: "flex justify-end p-[20px] gap-[10px] border-t w-full" }, [
1185
- h("button", {
1192
+ c("div", { class: "flex justify-end p-[20px] gap-[10px] border-t w-full" }, [
1193
+ c("button", {
1186
1194
  style: { border: "1px solid #000" },
1187
- onClick: f,
1195
+ onClick: p,
1188
1196
  class: "py-2 px-3 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-black border-gray-200 rounded-lg !border-gray-200 hover:bg-gray-100 duration-300"
1189
1197
  }, " Скасувати "),
1190
- h("button", {
1198
+ c("button", {
1191
1199
  onClick: v,
1192
1200
  class: "py-2 px-3 inline-flex items-center gap-x-2 text-[14px] font-[400] whitespace-nowrap text-white bg-blue-500 rounded-lg !border-gray-200 hover:bg-blue-700 duration-300"
1193
1201
  }, " Створити ")
1194
1202
  ])
1195
1203
  ]),
1196
1204
  default: j(() => [
1197
- h("div", Oa, [
1198
- T(E(a), {
1205
+ c("div", ja, [
1206
+ T(N(a), {
1199
1207
  ref_key: "form",
1200
- ref: c,
1201
- schema: g.value,
1208
+ ref: d,
1209
+ schema: m.value,
1202
1210
  values: l.value,
1203
- "onUpdate:values": $[0] || ($[0] = (w) => l.value = w)
1211
+ "onUpdate:values": D[0] || (D[0] = (y) => l.value = y)
1204
1212
  }, null, 8, ["schema", "values"])
1205
1213
  ])
1206
1214
  ]),
@@ -1209,17 +1217,17 @@ const Va = {
1209
1217
  ]);
1210
1218
  };
1211
1219
  }
1212
- }, Jt = {
1220
+ }, Kt = {
1213
1221
  __name: "delete",
1214
1222
  setup(s) {
1215
- return (e, t) => (p(), N(E(Ns), he(e.$attrs, { size: 24 }), null, 16));
1223
+ return (e, t) => (h(), E(N(js), he(e.$attrs, { size: 24 }), null, 16));
1216
1224
  }
1217
1225
  }, es = {
1218
1226
  __name: "edit",
1219
1227
  setup(s) {
1220
- return (e, t) => (p(), N(E(Vs), he(e.$attrs, { size: 24 }), null, 16));
1228
+ return (e, t) => (h(), E(N(Ws), he(e.$attrs, { size: 24 }), null, 16));
1221
1229
  }
1222
- }, Aa = { class: "space-y-4" }, Fa = {
1230
+ }, Oa = { class: "space-y-4" }, Pa = {
1223
1231
  __name: "vs-editor-form-style",
1224
1232
  props: {
1225
1233
  widgetName: { type: String },
@@ -1229,14 +1237,14 @@ const Va = {
1229
1237
  },
1230
1238
  emits: ["update-dashboard"],
1231
1239
  setup(s, { expose: e, emit: t }) {
1232
- var _, D, m, C;
1233
- const a = M(() => import("@opengis/form")), { $notify: r } = me().proxy, i = t, n = s, o = I(null), l = F(() => n.dashboardId || o.value), c = ((_ = n.data) == null ? void 0 : _.type) || ((m = (D = n.data) == null ? void 0 : D.data) == null ? void 0 : m.type), f = {
1240
+ var $, _, g, C;
1241
+ const a = M(() => import("@opengis/form")), { $notify: r } = me().proxy, i = t, n = s, o = I(null), l = q(() => n.dashboardId || o.value), d = (($ = n.data) == null ? void 0 : $.type) || ((g = (_ = n.data) == null ? void 0 : _.data) == null ? void 0 : g.type), p = {
1234
1242
  pie: { label: !1, legend: !0, tooltip: !0 },
1235
1243
  donut: { label: !1, legend: !0, tooltip: !0 },
1236
1244
  bar: { label: !1, legend: !1, tooltip: !0 },
1237
1245
  line: { label: !1, legend: !1, tooltip: !0 },
1238
1246
  funnel: { label: !1, legend: !1, tooltip: !0 }
1239
- }[c] || { label: !1, legend: !1, tooltip: !0 }, v = {
1247
+ }[d] || { label: !1, legend: !1, tooltip: !0 }, v = {
1240
1248
  show: {
1241
1249
  label: "Підпис",
1242
1250
  type: "switcher",
@@ -1269,7 +1277,7 @@ const Va = {
1269
1277
  { id: "bottom", text: "Bottom" }
1270
1278
  ]
1271
1279
  }
1272
- }, g = {
1280
+ }, m = {
1273
1281
  show: {
1274
1282
  label: "Легенда",
1275
1283
  type: "switcher",
@@ -1281,41 +1289,41 @@ const Va = {
1281
1289
  type: "switcher",
1282
1290
  title: "Показати тултіп"
1283
1291
  }
1284
- }, k = (C = n.data) == null ? void 0 : C.style, $ = I(
1285
- k != null && k.label ? { ...k.label } : { show: f.label }
1292
+ }, k = (C = n.data) == null ? void 0 : C.style, D = I(
1293
+ k != null && k.label ? { ...k.label } : { show: p.label }
1286
1294
  ), V = I(
1287
- k != null && k.legend ? { ...k.legend } : { show: f.legend }
1288
- ), w = I(
1289
- k != null && k.tooltip ? { ...k.tooltip } : { show: f.tooltip }
1290
- ), d = () => {
1295
+ k != null && k.legend ? { ...k.legend } : { show: p.legend }
1296
+ ), y = I(
1297
+ k != null && k.tooltip ? { ...k.tooltip } : { show: p.tooltip }
1298
+ ), f = () => {
1291
1299
  const z = new CustomEvent(`update-style-${n.widgetName}`);
1292
1300
  z.chartId = n.widgetName, z.options = {
1293
1301
  options: {
1294
1302
  legend: V.value,
1295
- tooltip: w.value,
1296
- label: $.value
1303
+ tooltip: y.value,
1304
+ label: D.value
1297
1305
  },
1298
- seriesOptions: $.value
1306
+ seriesOptions: D.value
1299
1307
  }, window.dispatchEvent(z);
1300
1308
  };
1301
- te($, d, { deep: !0 }), te(V, d, { deep: !0 }), te(w, d, { deep: !0 });
1302
- const x = async () => {
1309
+ ae(D, f, { deep: !0 }), ae(V, f, { deep: !0 }), ae(y, f, { deep: !0 });
1310
+ const w = async () => {
1303
1311
  try {
1304
1312
  await H.put(`/bi-dashboard/${l.value}/${n.widgetName}`, {
1305
1313
  style: {
1306
1314
  legend: V.value,
1307
- tooltip: w.value,
1308
- label: $.value
1315
+ tooltip: y.value,
1316
+ label: D.value
1309
1317
  }
1310
1318
  });
1311
1319
  const z = new CustomEvent(`update-style-${n.widgetName}`);
1312
1320
  z.chartId = n.widgetName, z.options = {
1313
1321
  options: {
1314
1322
  legend: V.value,
1315
- tooltip: w.value,
1316
- label: $.value
1323
+ tooltip: y.value,
1324
+ label: D.value
1317
1325
  },
1318
- seriesOptions: $.value
1326
+ seriesOptions: D.value
1319
1327
  }, window.dispatchEvent(z), i("update-dashboard"), r({
1320
1328
  type: "success",
1321
1329
  title: "Успішно!",
@@ -1331,24 +1339,24 @@ const Va = {
1331
1339
  };
1332
1340
  return le(() => {
1333
1341
  const z = new URLSearchParams(window.top.location.search);
1334
- o.value = z.get("dashboard"), d();
1335
- }), e({ requestUpdateWidget: x }), (z, R) => (p(), y("div", Aa, [
1336
- T(E(a), {
1342
+ o.value = z.get("dashboard"), f();
1343
+ }), e({ requestUpdateWidget: w }), (z, R) => (h(), x("div", Oa, [
1344
+ T(N(a), {
1337
1345
  schema: v,
1338
- values: $.value,
1339
- "onUpdate:values": R[0] || (R[0] = (q) => $.value = q),
1346
+ values: D.value,
1347
+ "onUpdate:values": R[0] || (R[0] = (F) => D.value = F),
1340
1348
  class: "p-0"
1341
1349
  }, null, 8, ["values"]),
1342
- T(E(a), {
1343
- schema: g,
1350
+ T(N(a), {
1351
+ schema: m,
1344
1352
  values: V.value,
1345
- "onUpdate:values": R[1] || (R[1] = (q) => V.value = q),
1353
+ "onUpdate:values": R[1] || (R[1] = (F) => V.value = F),
1346
1354
  class: "p-0"
1347
1355
  }, null, 8, ["values"]),
1348
- T(E(a), {
1356
+ T(N(a), {
1349
1357
  schema: b,
1350
- values: w.value,
1351
- "onUpdate:values": R[2] || (R[2] = (q) => w.value = q),
1358
+ values: y.value,
1359
+ "onUpdate:values": R[2] || (R[2] = (F) => y.value = F),
1352
1360
  class: "p-0"
1353
1361
  }, null, 8, ["values"])
1354
1362
  ]));
@@ -1372,29 +1380,29 @@ let be = st();
1372
1380
  function ts(s) {
1373
1381
  be = s;
1374
1382
  }
1375
- const ss = /[&<>"']/, qa = new RegExp(ss.source, "g"), as = /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/, Ma = new RegExp(as.source, "g"), Ua = {
1383
+ const ss = /[&<>"']/, Aa = new RegExp(ss.source, "g"), as = /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/, Fa = new RegExp(as.source, "g"), qa = {
1376
1384
  "&": "&amp;",
1377
1385
  "<": "&lt;",
1378
1386
  ">": "&gt;",
1379
1387
  '"': "&quot;",
1380
1388
  "'": "&#39;"
1381
- }, jt = (s) => Ua[s];
1382
- function J(s, e) {
1389
+ }, jt = (s) => qa[s];
1390
+ function te(s, e) {
1383
1391
  if (e) {
1384
1392
  if (ss.test(s))
1385
- return s.replace(qa, jt);
1393
+ return s.replace(Aa, jt);
1386
1394
  } else if (as.test(s))
1387
- return s.replace(Ma, jt);
1395
+ return s.replace(Fa, jt);
1388
1396
  return s;
1389
1397
  }
1390
- const Ga = /(^|[^\[])\^/g;
1398
+ const Ma = /(^|[^\[])\^/g;
1391
1399
  function O(s, e) {
1392
1400
  let t = typeof s == "string" ? s : s.source;
1393
1401
  e = e || "";
1394
1402
  const a = {
1395
1403
  replace: (r, i) => {
1396
1404
  let n = typeof i == "string" ? i : i.source;
1397
- return n = n.replace(Ga, "$1"), t = t.replace(r, n), a;
1405
+ return n = n.replace(Ma, "$1"), t = t.replace(r, n), a;
1398
1406
  },
1399
1407
  getRegex: () => new RegExp(t, e)
1400
1408
  };
@@ -1411,8 +1419,8 @@ function Bt(s) {
1411
1419
  const Se = { exec: () => null };
1412
1420
  function Ot(s, e) {
1413
1421
  const t = s.replace(/\|/g, (i, n, o) => {
1414
- let l = !1, c = n;
1415
- for (; --c >= 0 && o[c] === "\\"; )
1422
+ let l = !1, d = n;
1423
+ for (; --d >= 0 && o[d] === "\\"; )
1416
1424
  l = !l;
1417
1425
  return l ? "|" : " |";
1418
1426
  }), a = t.split(/ \|/);
@@ -1436,7 +1444,7 @@ function Te(s, e, t) {
1436
1444
  r++;
1437
1445
  return s.slice(0, a - r);
1438
1446
  }
1439
- function Ha(s, e) {
1447
+ function Ua(s, e) {
1440
1448
  if (s.indexOf(e[1]) === -1)
1441
1449
  return -1;
1442
1450
  let t = 0;
@@ -1450,7 +1458,7 @@ function Ha(s, e) {
1450
1458
  return -1;
1451
1459
  }
1452
1460
  function Pt(s, e, t, a) {
1453
- const r = e.href, i = e.title ? J(e.title) : null, n = s[1].replace(/\\([\[\]])/g, "$1");
1461
+ const r = e.href, i = e.title ? te(e.title) : null, n = s[1].replace(/\\([\[\]])/g, "$1");
1454
1462
  if (s[0].charAt(0) !== "!") {
1455
1463
  a.state.inLink = !0;
1456
1464
  const o = {
@@ -1468,10 +1476,10 @@ function Pt(s, e, t, a) {
1468
1476
  raw: t,
1469
1477
  href: r,
1470
1478
  title: i,
1471
- text: J(n)
1479
+ text: te(n)
1472
1480
  };
1473
1481
  }
1474
- function Za(s, e) {
1482
+ function Ga(s, e) {
1475
1483
  const t = s.match(/^(\s+)(?:```)/);
1476
1484
  if (t === null)
1477
1485
  return e;
@@ -1519,7 +1527,7 @@ class Ae {
1519
1527
  fences(e) {
1520
1528
  const t = this.rules.block.fences.exec(e);
1521
1529
  if (t) {
1522
- const a = t[0], r = Za(a, t[3] || "");
1530
+ const a = t[0], r = Ga(a, t[3] || "");
1523
1531
  return {
1524
1532
  type: "code",
1525
1533
  raw: a,
@@ -1564,38 +1572,38 @@ class Ae {
1564
1572
  for (; a.length > 0; ) {
1565
1573
  let o = !1;
1566
1574
  const l = [];
1567
- let c;
1568
- for (c = 0; c < a.length; c++)
1569
- if (/^ {0,3}>/.test(a[c]))
1570
- l.push(a[c]), o = !0;
1575
+ let d;
1576
+ for (d = 0; d < a.length; d++)
1577
+ if (/^ {0,3}>/.test(a[d]))
1578
+ l.push(a[d]), o = !0;
1571
1579
  else if (!o)
1572
- l.push(a[c]);
1580
+ l.push(a[d]);
1573
1581
  else
1574
1582
  break;
1575
- a = a.slice(c);
1583
+ a = a.slice(d);
1576
1584
  const u = l.join(`
1577
- `), f = u.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g, `
1585
+ `), p = u.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g, `
1578
1586
  $1`).replace(/^ {0,3}>[ \t]?/gm, "");
1579
1587
  r = r ? `${r}
1580
1588
  ${u}` : u, i = i ? `${i}
1581
- ${f}` : f;
1589
+ ${p}` : p;
1582
1590
  const v = this.lexer.state.top;
1583
- if (this.lexer.state.top = !0, this.lexer.blockTokens(f, n, !0), this.lexer.state.top = v, a.length === 0)
1591
+ if (this.lexer.state.top = !0, this.lexer.blockTokens(p, n, !0), this.lexer.state.top = v, a.length === 0)
1584
1592
  break;
1585
- const g = n[n.length - 1];
1586
- if ((g == null ? void 0 : g.type) === "code")
1593
+ const m = n[n.length - 1];
1594
+ if ((m == null ? void 0 : m.type) === "code")
1587
1595
  break;
1588
- if ((g == null ? void 0 : g.type) === "blockquote") {
1589
- const b = g, k = b.raw + `
1596
+ if ((m == null ? void 0 : m.type) === "blockquote") {
1597
+ const b = m, k = b.raw + `
1590
1598
  ` + a.join(`
1591
- `), $ = this.blockquote(k);
1592
- n[n.length - 1] = $, r = r.substring(0, r.length - b.raw.length) + $.raw, i = i.substring(0, i.length - b.text.length) + $.text;
1599
+ `), D = this.blockquote(k);
1600
+ n[n.length - 1] = D, r = r.substring(0, r.length - b.raw.length) + D.raw, i = i.substring(0, i.length - b.text.length) + D.text;
1593
1601
  break;
1594
- } else if ((g == null ? void 0 : g.type) === "list") {
1595
- const b = g, k = b.raw + `
1602
+ } else if ((m == null ? void 0 : m.type) === "list") {
1603
+ const b = m, k = b.raw + `
1596
1604
  ` + a.join(`
1597
- `), $ = this.list(k);
1598
- n[n.length - 1] = $, r = r.substring(0, r.length - g.raw.length) + $.raw, i = i.substring(0, i.length - b.raw.length) + $.raw, a = k.substring(n[n.length - 1].raw.length).split(`
1605
+ `), D = this.list(k);
1606
+ n[n.length - 1] = D, r = r.substring(0, r.length - m.raw.length) + D.raw, i = i.substring(0, i.length - b.raw.length) + D.raw, a = k.substring(n[n.length - 1].raw.length).split(`
1599
1607
  `);
1600
1608
  continue;
1601
1609
  }
@@ -1624,51 +1632,51 @@ ${f}` : f;
1624
1632
  const n = new RegExp(`^( {0,3}${a})((?:[ ][^\\n]*)?(?:\\n|$))`);
1625
1633
  let o = !1;
1626
1634
  for (; e; ) {
1627
- let l = !1, c = "", u = "";
1635
+ let l = !1, d = "", u = "";
1628
1636
  if (!(t = n.exec(e)) || this.rules.block.hr.test(e))
1629
1637
  break;
1630
- c = t[0], e = e.substring(c.length);
1631
- let f = t[2].split(`
1638
+ d = t[0], e = e.substring(d.length);
1639
+ let p = t[2].split(`
1632
1640
  `, 1)[0].replace(/^\t+/, (V) => " ".repeat(3 * V.length)), v = e.split(`
1633
- `, 1)[0], g = !f.trim(), b = 0;
1634
- if (this.options.pedantic ? (b = 2, u = f.trimStart()) : g ? b = t[1].length + 1 : (b = t[2].search(/[^ ]/), b = b > 4 ? 1 : b, u = f.slice(b), b += t[1].length), g && /^[ \t]*$/.test(v) && (c += v + `
1641
+ `, 1)[0], m = !p.trim(), b = 0;
1642
+ if (this.options.pedantic ? (b = 2, u = p.trimStart()) : m ? b = t[1].length + 1 : (b = t[2].search(/[^ ]/), b = b > 4 ? 1 : b, u = p.slice(b), b += t[1].length), m && /^[ \t]*$/.test(v) && (d += v + `
1635
1643
  `, e = e.substring(v.length + 1), l = !0), !l) {
1636
- const V = new RegExp(`^ {0,${Math.min(3, b - 1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`), w = new RegExp(`^ {0,${Math.min(3, b - 1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`), d = new RegExp(`^ {0,${Math.min(3, b - 1)}}(?:\`\`\`|~~~)`), x = new RegExp(`^ {0,${Math.min(3, b - 1)}}#`), _ = new RegExp(`^ {0,${Math.min(3, b - 1)}}<(?:[a-z].*>|!--)`, "i");
1644
+ const V = new RegExp(`^ {0,${Math.min(3, b - 1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`), y = new RegExp(`^ {0,${Math.min(3, b - 1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`), f = new RegExp(`^ {0,${Math.min(3, b - 1)}}(?:\`\`\`|~~~)`), w = new RegExp(`^ {0,${Math.min(3, b - 1)}}#`), $ = new RegExp(`^ {0,${Math.min(3, b - 1)}}<(?:[a-z].*>|!--)`, "i");
1637
1645
  for (; e; ) {
1638
- const D = e.split(`
1646
+ const _ = e.split(`
1639
1647
  `, 1)[0];
1640
- let m;
1641
- if (v = D, this.options.pedantic ? (v = v.replace(/^ {1,4}(?=( {4})*[^ ])/g, " "), m = v) : m = v.replace(/\t/g, " "), d.test(v) || x.test(v) || _.test(v) || V.test(v) || w.test(v))
1648
+ let g;
1649
+ if (v = _, this.options.pedantic ? (v = v.replace(/^ {1,4}(?=( {4})*[^ ])/g, " "), g = v) : g = v.replace(/\t/g, " "), f.test(v) || w.test(v) || $.test(v) || V.test(v) || y.test(v))
1642
1650
  break;
1643
- if (m.search(/[^ ]/) >= b || !v.trim())
1651
+ if (g.search(/[^ ]/) >= b || !v.trim())
1644
1652
  u += `
1645
- ` + m.slice(b);
1653
+ ` + g.slice(b);
1646
1654
  else {
1647
- if (g || f.replace(/\t/g, " ").search(/[^ ]/) >= 4 || d.test(f) || x.test(f) || w.test(f))
1655
+ if (m || p.replace(/\t/g, " ").search(/[^ ]/) >= 4 || f.test(p) || w.test(p) || y.test(p))
1648
1656
  break;
1649
1657
  u += `
1650
1658
  ` + v;
1651
1659
  }
1652
- !g && !v.trim() && (g = !0), c += D + `
1653
- `, e = e.substring(D.length + 1), f = m.slice(b);
1660
+ !m && !v.trim() && (m = !0), d += _ + `
1661
+ `, e = e.substring(_.length + 1), p = g.slice(b);
1654
1662
  }
1655
1663
  }
1656
- i.loose || (o ? i.loose = !0 : /\n[ \t]*\n[ \t]*$/.test(c) && (o = !0));
1657
- let k = null, $;
1658
- this.options.gfm && (k = /^\[[ xX]\] /.exec(u), k && ($ = k[0] !== "[ ] ", u = u.replace(/^\[[ xX]\] +/, ""))), i.items.push({
1664
+ i.loose || (o ? i.loose = !0 : /\n[ \t]*\n[ \t]*$/.test(d) && (o = !0));
1665
+ let k = null, D;
1666
+ this.options.gfm && (k = /^\[[ xX]\] /.exec(u), k && (D = k[0] !== "[ ] ", u = u.replace(/^\[[ xX]\] +/, ""))), i.items.push({
1659
1667
  type: "list_item",
1660
- raw: c,
1668
+ raw: d,
1661
1669
  task: !!k,
1662
- checked: $,
1670
+ checked: D,
1663
1671
  loose: !1,
1664
1672
  text: u,
1665
1673
  tokens: []
1666
- }), i.raw += c;
1674
+ }), i.raw += d;
1667
1675
  }
1668
1676
  i.items[i.items.length - 1].raw = i.items[i.items.length - 1].raw.trimEnd(), i.items[i.items.length - 1].text = i.items[i.items.length - 1].text.trimEnd(), i.raw = i.raw.trimEnd();
1669
1677
  for (let l = 0; l < i.items.length; l++)
1670
1678
  if (this.lexer.state.top = !1, i.items[l].tokens = this.lexer.blockTokens(i.items[l].text, []), !i.loose) {
1671
- const c = i.items[l].tokens.filter((f) => f.type === "space"), u = c.length > 0 && c.some((f) => /\n.*\n/.test(f.raw));
1679
+ const d = i.items[l].tokens.filter((p) => p.type === "space"), u = d.length > 0 && d.some((p) => /\n.*\n/.test(p.raw));
1672
1680
  i.loose = u;
1673
1681
  }
1674
1682
  if (i.loose)
@@ -1724,11 +1732,11 @@ ${f}` : f;
1724
1732
  align: n.align[o]
1725
1733
  });
1726
1734
  for (const o of i)
1727
- n.rows.push(Ot(o, n.header.length).map((l, c) => ({
1735
+ n.rows.push(Ot(o, n.header.length).map((l, d) => ({
1728
1736
  text: l,
1729
1737
  tokens: this.lexer.inline(l),
1730
1738
  header: !1,
1731
- align: n.align[c]
1739
+ align: n.align[d]
1732
1740
  })));
1733
1741
  return n;
1734
1742
  }
@@ -1773,7 +1781,7 @@ ${f}` : f;
1773
1781
  return {
1774
1782
  type: "escape",
1775
1783
  raw: t[0],
1776
- text: J(t[1])
1784
+ text: te(t[1])
1777
1785
  };
1778
1786
  }
1779
1787
  tag(e) {
@@ -1799,7 +1807,7 @@ ${f}` : f;
1799
1807
  if ((a.length - n.length) % 2 === 0)
1800
1808
  return;
1801
1809
  } else {
1802
- const n = Ha(t[2], "()");
1810
+ const n = Ua(t[2], "()");
1803
1811
  if (n > -1) {
1804
1812
  const l = (t[0].indexOf("!") === 0 ? 5 : 4) + t[1].length + n;
1805
1813
  t[2] = t[2].substring(0, n), t[0] = t[0].substring(0, l).trim(), t[3] = "";
@@ -1838,35 +1846,35 @@ ${f}` : f;
1838
1846
  return;
1839
1847
  if (!(r[1] || r[2] || "") || !a || this.rules.inline.punctuation.exec(a)) {
1840
1848
  const n = [...r[0]].length - 1;
1841
- let o, l, c = n, u = 0;
1842
- const f = r[0][0] === "*" ? this.rules.inline.emStrongRDelimAst : this.rules.inline.emStrongRDelimUnd;
1843
- for (f.lastIndex = 0, t = t.slice(-1 * e.length + n); (r = f.exec(t)) != null; ) {
1849
+ let o, l, d = n, u = 0;
1850
+ const p = r[0][0] === "*" ? this.rules.inline.emStrongRDelimAst : this.rules.inline.emStrongRDelimUnd;
1851
+ for (p.lastIndex = 0, t = t.slice(-1 * e.length + n); (r = p.exec(t)) != null; ) {
1844
1852
  if (o = r[1] || r[2] || r[3] || r[4] || r[5] || r[6], !o)
1845
1853
  continue;
1846
1854
  if (l = [...o].length, r[3] || r[4]) {
1847
- c += l;
1855
+ d += l;
1848
1856
  continue;
1849
1857
  } else if ((r[5] || r[6]) && n % 3 && !((n + l) % 3)) {
1850
1858
  u += l;
1851
1859
  continue;
1852
1860
  }
1853
- if (c -= l, c > 0)
1861
+ if (d -= l, d > 0)
1854
1862
  continue;
1855
- l = Math.min(l, l + c + u);
1856
- const v = [...r[0]][0].length, g = e.slice(0, n + r.index + v + l);
1863
+ l = Math.min(l, l + d + u);
1864
+ const v = [...r[0]][0].length, m = e.slice(0, n + r.index + v + l);
1857
1865
  if (Math.min(n, l) % 2) {
1858
- const k = g.slice(1, -1);
1866
+ const k = m.slice(1, -1);
1859
1867
  return {
1860
1868
  type: "em",
1861
- raw: g,
1869
+ raw: m,
1862
1870
  text: k,
1863
1871
  tokens: this.lexer.inlineTokens(k)
1864
1872
  };
1865
1873
  }
1866
- const b = g.slice(2, -2);
1874
+ const b = m.slice(2, -2);
1867
1875
  return {
1868
1876
  type: "strong",
1869
- raw: g,
1877
+ raw: m,
1870
1878
  text: b,
1871
1879
  tokens: this.lexer.inlineTokens(b)
1872
1880
  };
@@ -1878,7 +1886,7 @@ ${f}` : f;
1878
1886
  if (t) {
1879
1887
  let a = t[2].replace(/\n/g, " ");
1880
1888
  const r = /[^ ]/.test(a), i = /^ /.test(a) && / $/.test(a);
1881
- return r && i && (a = a.substring(1, a.length - 1)), a = J(a, !0), {
1889
+ return r && i && (a = a.substring(1, a.length - 1)), a = te(a, !0), {
1882
1890
  type: "codespan",
1883
1891
  raw: t[0],
1884
1892
  text: a
@@ -1907,7 +1915,7 @@ ${f}` : f;
1907
1915
  const t = this.rules.inline.autolink.exec(e);
1908
1916
  if (t) {
1909
1917
  let a, r;
1910
- return t[2] === "@" ? (a = J(t[1]), r = "mailto:" + a) : (a = J(t[1]), r = a), {
1918
+ return t[2] === "@" ? (a = te(t[1]), r = "mailto:" + a) : (a = te(t[1]), r = a), {
1911
1919
  type: "link",
1912
1920
  raw: t[0],
1913
1921
  text: a,
@@ -1928,13 +1936,13 @@ ${f}` : f;
1928
1936
  if (t = this.rules.inline.url.exec(e)) {
1929
1937
  let r, i;
1930
1938
  if (t[2] === "@")
1931
- r = J(t[0]), i = "mailto:" + r;
1939
+ r = te(t[0]), i = "mailto:" + r;
1932
1940
  else {
1933
1941
  let n;
1934
1942
  do
1935
1943
  n = t[0], t[0] = ((a = this.rules.inline._backpedal.exec(t[0])) == null ? void 0 : a[0]) ?? "";
1936
1944
  while (n !== t[0]);
1937
- r = J(t[0]), t[1] === "www." ? i = "http://" + t[0] : i = t[0];
1945
+ r = te(t[0]), t[1] === "www." ? i = "http://" + t[0] : i = t[0];
1938
1946
  }
1939
1947
  return {
1940
1948
  type: "link",
@@ -1955,7 +1963,7 @@ ${f}` : f;
1955
1963
  const t = this.rules.inline.text.exec(e);
1956
1964
  if (t) {
1957
1965
  let a;
1958
- return this.lexer.state.inRawBlock ? a = t[0] : a = J(t[0]), {
1966
+ return this.lexer.state.inRawBlock ? a = t[0] : a = te(t[0]), {
1959
1967
  type: "text",
1960
1968
  raw: t[0],
1961
1969
  text: a
@@ -1963,25 +1971,25 @@ ${f}` : f;
1963
1971
  }
1964
1972
  }
1965
1973
  }
1966
- const Qa = /^(?:[ \t]*(?:\n|$))+/, Xa = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, Ka = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, We = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, Ya = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, rs = /(?:[*+-]|\d{1,9}[.)])/, ns = O(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g, rs).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).getRegex(), at = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, Ja = /^[^\n]+/, rt = /(?!\s*\])(?:\\.|[^\[\]\\])+/, er = O(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", rt).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), tr = O(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g, rs).getRegex(), Qe = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", nt = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, sr = O("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", nt).replace("tag", Qe).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), is = O(at).replace("hr", We).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Qe).getRegex(), ar = O(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", is).getRegex(), it = {
1967
- blockquote: ar,
1968
- code: Xa,
1969
- def: er,
1970
- fences: Ka,
1971
- heading: Ya,
1974
+ const Ha = /^(?:[ \t]*(?:\n|$))+/, Za = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, Qa = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, We = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, Xa = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, rs = /(?:[*+-]|\d{1,9}[.)])/, ns = O(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g, rs).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).getRegex(), at = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, Ya = /^[^\n]+/, rt = /(?!\s*\])(?:\\.|[^\[\]\\])+/, Ja = O(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", rt).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), Ka = O(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g, rs).getRegex(), Ze = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", nt = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, er = O("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", nt).replace("tag", Ze).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), is = O(at).replace("hr", We).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Ze).getRegex(), tr = O(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", is).getRegex(), it = {
1975
+ blockquote: tr,
1976
+ code: Za,
1977
+ def: Ja,
1978
+ fences: Qa,
1979
+ heading: Xa,
1972
1980
  hr: We,
1973
- html: sr,
1981
+ html: er,
1974
1982
  lheading: ns,
1975
- list: tr,
1976
- newline: Qa,
1983
+ list: Ka,
1984
+ newline: Ha,
1977
1985
  paragraph: is,
1978
1986
  table: Se,
1979
- text: Ja
1980
- }, At = O("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", We).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Qe).getRegex(), rr = {
1987
+ text: Ya
1988
+ }, At = O("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", We).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Ze).getRegex(), sr = {
1981
1989
  ...it,
1982
1990
  table: At,
1983
- paragraph: O(at).replace("hr", We).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", At).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Qe).getRegex()
1984
- }, nr = {
1991
+ paragraph: O(at).replace("hr", We).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", At).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Ze).getRegex()
1992
+ }, ar = {
1985
1993
  ...it,
1986
1994
  html: O(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment", nt).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
1987
1995
  def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
@@ -1991,28 +1999,28 @@ const Qa = /^(?:[ \t]*(?:\n|$))+/, Xa = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*
1991
1999
  lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,
1992
2000
  paragraph: O(at).replace("hr", We).replace("heading", ` *#{1,6} *[^
1993
2001
  ]`).replace("lheading", ns).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex()
1994
- }, os = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, ir = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, ls = /^( {2,}|\\)\n(?!\s*$)/, or = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, Ne = "\\p{P}\\p{S}", lr = O(/^((?![*_])[\spunctuation])/, "u").replace(/punctuation/g, Ne).getRegex(), cr = /\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g, dr = O(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/, "u").replace(/punct/g, Ne).getRegex(), ur = O("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])", "gu").replace(/punct/g, Ne).getRegex(), hr = O("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])", "gu").replace(/punct/g, Ne).getRegex(), pr = O(/\\([punct])/, "gu").replace(/punct/g, Ne).getRegex(), fr = O(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), gr = O(nt).replace("(?:-->|$)", "-->").getRegex(), mr = O("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", gr).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), Fe = /(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/, br = O(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label", Fe).replace("href", /<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), cs = O(/^!?\[(label)\]\[(ref)\]/).replace("label", Fe).replace("ref", rt).getRegex(), ds = O(/^!?\[(ref)\](?:\[\])?/).replace("ref", rt).getRegex(), xr = O("reflink|nolink(?!\\()", "g").replace("reflink", cs).replace("nolink", ds).getRegex(), ot = {
2002
+ }, os = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, rr = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, ls = /^( {2,}|\\)\n(?!\s*$)/, nr = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, Ne = "\\p{P}\\p{S}", ir = O(/^((?![*_])[\spunctuation])/, "u").replace(/punctuation/g, Ne).getRegex(), or = /\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g, lr = O(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/, "u").replace(/punct/g, Ne).getRegex(), dr = O("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])", "gu").replace(/punct/g, Ne).getRegex(), cr = O("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])", "gu").replace(/punct/g, Ne).getRegex(), ur = O(/\\([punct])/, "gu").replace(/punct/g, Ne).getRegex(), hr = O(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), pr = O(nt).replace("(?:-->|$)", "-->").getRegex(), fr = O("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", pr).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), Fe = /(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/, gr = O(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label", Fe).replace("href", /<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), ds = O(/^!?\[(label)\]\[(ref)\]/).replace("label", Fe).replace("ref", rt).getRegex(), cs = O(/^!?\[(ref)\](?:\[\])?/).replace("ref", rt).getRegex(), mr = O("reflink|nolink(?!\\()", "g").replace("reflink", ds).replace("nolink", cs).getRegex(), ot = {
1995
2003
  _backpedal: Se,
1996
2004
  // only used for GFM url
1997
- anyPunctuation: pr,
1998
- autolink: fr,
1999
- blockSkip: cr,
2005
+ anyPunctuation: ur,
2006
+ autolink: hr,
2007
+ blockSkip: or,
2000
2008
  br: ls,
2001
- code: ir,
2009
+ code: rr,
2002
2010
  del: Se,
2003
- emStrongLDelim: dr,
2004
- emStrongRDelimAst: ur,
2005
- emStrongRDelimUnd: hr,
2011
+ emStrongLDelim: lr,
2012
+ emStrongRDelimAst: dr,
2013
+ emStrongRDelimUnd: cr,
2006
2014
  escape: os,
2007
- link: br,
2008
- nolink: ds,
2009
- punctuation: lr,
2010
- reflink: cs,
2011
- reflinkSearch: xr,
2012
- tag: mr,
2013
- text: or,
2015
+ link: gr,
2016
+ nolink: cs,
2017
+ punctuation: ir,
2018
+ reflink: ds,
2019
+ reflinkSearch: mr,
2020
+ tag: fr,
2021
+ text: nr,
2014
2022
  url: Se
2015
- }, yr = {
2023
+ }, br = {
2016
2024
  ...ot,
2017
2025
  link: O(/^!?\[(label)\]\((.*?)\)/).replace("label", Fe).getRegex(),
2018
2026
  reflink: O(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", Fe).getRegex()
@@ -2023,21 +2031,21 @@ const Qa = /^(?:[ \t]*(?:\n|$))+/, Xa = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*
2023
2031
  _backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,
2024
2032
  del: /^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,
2025
2033
  text: /^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/
2026
- }, wr = {
2034
+ }, xr = {
2027
2035
  ...tt,
2028
2036
  br: O(ls).replace("{2,}", "*").getRegex(),
2029
2037
  text: O(tt.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
2030
2038
  }, je = {
2031
2039
  normal: it,
2032
- gfm: rr,
2033
- pedantic: nr
2040
+ gfm: sr,
2041
+ pedantic: ar
2034
2042
  }, Ie = {
2035
2043
  normal: ot,
2036
2044
  gfm: tt,
2037
- breaks: wr,
2038
- pedantic: yr
2045
+ breaks: xr,
2046
+ pedantic: br
2039
2047
  };
2040
- class ae {
2048
+ class re {
2041
2049
  constructor(e) {
2042
2050
  P(this, "tokens");
2043
2051
  P(this, "options");
@@ -2068,13 +2076,13 @@ class ae {
2068
2076
  * Static Lex Method
2069
2077
  */
2070
2078
  static lex(e, t) {
2071
- return new ae(t).lex(e);
2079
+ return new re(t).lex(e);
2072
2080
  }
2073
2081
  /**
2074
2082
  * Static Lex Inline Method
2075
2083
  */
2076
2084
  static lexInline(e, t) {
2077
- return new ae(t).inlineTokens(e);
2085
+ return new re(t).inlineTokens(e);
2078
2086
  }
2079
2087
  /**
2080
2088
  * Preprocessing
@@ -2148,9 +2156,9 @@ class ae {
2148
2156
  if (n = e, this.options.extensions && this.options.extensions.startBlock) {
2149
2157
  let o = 1 / 0;
2150
2158
  const l = e.slice(1);
2151
- let c;
2159
+ let d;
2152
2160
  this.options.extensions.startBlock.forEach((u) => {
2153
- c = u.call({ lexer: this }, l), typeof c == "number" && c >= 0 && (o = Math.min(o, c));
2161
+ d = u.call({ lexer: this }, l), typeof d == "number" && d >= 0 && (o = Math.min(o, d));
2154
2162
  }), o < 1 / 0 && o >= 0 && (n = e.substring(0, o + 1));
2155
2163
  }
2156
2164
  if (this.state.top && (r = this.tokenizer.paragraph(n))) {
@@ -2183,7 +2191,7 @@ class ae {
2183
2191
  * Lexing/Compiling
2184
2192
  */
2185
2193
  inlineTokens(e, t = []) {
2186
- let a, r, i, n = e, o, l, c;
2194
+ let a, r, i, n = e, o, l, d;
2187
2195
  if (this.tokens.links) {
2188
2196
  const u = Object.keys(this.tokens.links);
2189
2197
  if (u.length > 0)
@@ -2195,7 +2203,7 @@ class ae {
2195
2203
  for (; (o = this.tokenizer.rules.inline.anyPunctuation.exec(n)) != null; )
2196
2204
  n = n.slice(0, o.index) + "++" + n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);
2197
2205
  for (; e; )
2198
- if (l || (c = ""), l = !1, !(this.options.extensions && this.options.extensions.inline && this.options.extensions.inline.some((u) => (a = u.call({ lexer: this }, e, t)) ? (e = e.substring(a.raw.length), t.push(a), !0) : !1))) {
2206
+ if (l || (d = ""), l = !1, !(this.options.extensions && this.options.extensions.inline && this.options.extensions.inline.some((u) => (a = u.call({ lexer: this }, e, t)) ? (e = e.substring(a.raw.length), t.push(a), !0) : !1))) {
2199
2207
  if (a = this.tokenizer.escape(e)) {
2200
2208
  e = e.substring(a.raw.length), t.push(a);
2201
2209
  continue;
@@ -2212,7 +2220,7 @@ class ae {
2212
2220
  e = e.substring(a.raw.length), r = t[t.length - 1], r && a.type === "text" && r.type === "text" ? (r.raw += a.raw, r.text += a.text) : t.push(a);
2213
2221
  continue;
2214
2222
  }
2215
- if (a = this.tokenizer.emStrong(e, n, c)) {
2223
+ if (a = this.tokenizer.emStrong(e, n, d)) {
2216
2224
  e = e.substring(a.raw.length), t.push(a);
2217
2225
  continue;
2218
2226
  }
@@ -2238,14 +2246,14 @@ class ae {
2238
2246
  }
2239
2247
  if (i = e, this.options.extensions && this.options.extensions.startInline) {
2240
2248
  let u = 1 / 0;
2241
- const f = e.slice(1);
2249
+ const p = e.slice(1);
2242
2250
  let v;
2243
- this.options.extensions.startInline.forEach((g) => {
2244
- v = g.call({ lexer: this }, f), typeof v == "number" && v >= 0 && (u = Math.min(u, v));
2251
+ this.options.extensions.startInline.forEach((m) => {
2252
+ v = m.call({ lexer: this }, p), typeof v == "number" && v >= 0 && (u = Math.min(u, v));
2245
2253
  }), u < 1 / 0 && u >= 0 && (i = e.substring(0, u + 1));
2246
2254
  }
2247
2255
  if (a = this.tokenizer.inlineText(i)) {
2248
- e = e.substring(a.raw.length), a.raw.slice(-1) !== "_" && (c = a.raw.slice(-1)), l = !0, r = t[t.length - 1], r && r.type === "text" ? (r.raw += a.raw, r.text += a.text) : t.push(a);
2256
+ e = e.substring(a.raw.length), a.raw.slice(-1) !== "_" && (d = a.raw.slice(-1)), l = !0, r = t[t.length - 1], r && r.type === "text" ? (r.raw += a.raw, r.text += a.text) : t.push(a);
2249
2257
  continue;
2250
2258
  }
2251
2259
  if (e) {
@@ -2274,8 +2282,8 @@ class qe {
2274
2282
  var n;
2275
2283
  const r = (n = (t || "").match(/^\S*/)) == null ? void 0 : n[0], i = e.replace(/\n$/, "") + `
2276
2284
  `;
2277
- return r ? '<pre><code class="language-' + J(r) + '">' + (a ? i : J(i, !0)) + `</code></pre>
2278
- ` : "<pre><code>" + (a ? i : J(i, !0)) + `</code></pre>
2285
+ return r ? '<pre><code class="language-' + te(r) + '">' + (a ? i : te(i, !0)) + `</code></pre>
2286
+ ` : "<pre><code>" + (a ? i : te(i, !0)) + `</code></pre>
2279
2287
  `;
2280
2288
  }
2281
2289
  blockquote({ tokens: e }) {
@@ -2423,7 +2431,7 @@ class lt {
2423
2431
  return "";
2424
2432
  }
2425
2433
  }
2426
- class re {
2434
+ class ne {
2427
2435
  constructor(e) {
2428
2436
  P(this, "options");
2429
2437
  P(this, "renderer");
@@ -2434,13 +2442,13 @@ class re {
2434
2442
  * Static Parse Method
2435
2443
  */
2436
2444
  static parse(e, t) {
2437
- return new re(t).parse(e);
2445
+ return new ne(t).parse(e);
2438
2446
  }
2439
2447
  /**
2440
2448
  * Static Parse Inline Method
2441
2449
  */
2442
2450
  static parseInline(e, t) {
2443
- return new re(t).parseInline(e);
2451
+ return new ne(t).parseInline(e);
2444
2452
  }
2445
2453
  /**
2446
2454
  * Parse Loop
@@ -2613,13 +2621,13 @@ class Re {
2613
2621
  * Provide function to tokenize markdown
2614
2622
  */
2615
2623
  provideLexer() {
2616
- return this.block ? ae.lex : ae.lexInline;
2624
+ return this.block ? re.lex : re.lexInline;
2617
2625
  }
2618
2626
  /**
2619
2627
  * Provide function to parse tokens
2620
2628
  */
2621
2629
  provideParser() {
2622
- return this.block ? re.parse : re.parseInline;
2630
+ return this.block ? ne.parse : ne.parseInline;
2623
2631
  }
2624
2632
  }
2625
2633
  P(Re, "passThroughHooks", /* @__PURE__ */ new Set([
@@ -2627,16 +2635,16 @@ P(Re, "passThroughHooks", /* @__PURE__ */ new Set([
2627
2635
  "postprocess",
2628
2636
  "processAllTokens"
2629
2637
  ]));
2630
- class vr {
2638
+ class yr {
2631
2639
  constructor(...e) {
2632
2640
  P(this, "defaults", st());
2633
2641
  P(this, "options", this.setOptions);
2634
2642
  P(this, "parse", this.parseMarkdown(!0));
2635
2643
  P(this, "parseInline", this.parseMarkdown(!1));
2636
- P(this, "Parser", re);
2644
+ P(this, "Parser", ne);
2637
2645
  P(this, "Renderer", qe);
2638
2646
  P(this, "TextRenderer", lt);
2639
- P(this, "Lexer", ae);
2647
+ P(this, "Lexer", re);
2640
2648
  P(this, "Tokenizer", Ae);
2641
2649
  P(this, "Hooks", Re);
2642
2650
  this.use(...e);
@@ -2654,8 +2662,8 @@ class vr {
2654
2662
  for (const l of o.header)
2655
2663
  a = a.concat(this.walkTokens(l.tokens, t));
2656
2664
  for (const l of o.rows)
2657
- for (const c of l)
2658
- a = a.concat(this.walkTokens(c.tokens, t));
2665
+ for (const d of l)
2666
+ a = a.concat(this.walkTokens(d.tokens, t));
2659
2667
  break;
2660
2668
  }
2661
2669
  case "list": {
@@ -2666,8 +2674,8 @@ class vr {
2666
2674
  default: {
2667
2675
  const o = n;
2668
2676
  (i = (r = this.defaults.extensions) == null ? void 0 : r.childTokens) != null && i[o.type] ? this.defaults.extensions.childTokens[o.type].forEach((l) => {
2669
- const c = o[l].flat(1 / 0);
2670
- a = a.concat(this.walkTokens(c, t));
2677
+ const d = o[l].flat(1 / 0);
2678
+ a = a.concat(this.walkTokens(d, t));
2671
2679
  }) : o.tokens && (a = a.concat(this.walkTokens(o.tokens, t)));
2672
2680
  }
2673
2681
  }
@@ -2701,10 +2709,10 @@ class vr {
2701
2709
  throw new Error(`renderer '${n}' does not exist`);
2702
2710
  if (["options", "parser"].includes(n))
2703
2711
  continue;
2704
- const o = n, l = a.renderer[o], c = i[o];
2712
+ const o = n, l = a.renderer[o], d = i[o];
2705
2713
  i[o] = (...u) => {
2706
- let f = l.apply(i, u);
2707
- return f === !1 && (f = c.apply(i, u)), f || "";
2714
+ let p = l.apply(i, u);
2715
+ return p === !1 && (p = d.apply(i, u)), p || "";
2708
2716
  };
2709
2717
  }
2710
2718
  r.renderer = i;
@@ -2716,10 +2724,10 @@ class vr {
2716
2724
  throw new Error(`tokenizer '${n}' does not exist`);
2717
2725
  if (["options", "rules", "lexer"].includes(n))
2718
2726
  continue;
2719
- const o = n, l = a.tokenizer[o], c = i[o];
2727
+ const o = n, l = a.tokenizer[o], d = i[o];
2720
2728
  i[o] = (...u) => {
2721
- let f = l.apply(i, u);
2722
- return f === !1 && (f = c.apply(i, u)), f;
2729
+ let p = l.apply(i, u);
2730
+ return p === !1 && (p = d.apply(i, u)), p;
2723
2731
  };
2724
2732
  }
2725
2733
  r.tokenizer = i;
@@ -2731,15 +2739,15 @@ class vr {
2731
2739
  throw new Error(`hook '${n}' does not exist`);
2732
2740
  if (["options", "block"].includes(n))
2733
2741
  continue;
2734
- const o = n, l = a.hooks[o], c = i[o];
2742
+ const o = n, l = a.hooks[o], d = i[o];
2735
2743
  Re.passThroughHooks.has(n) ? i[o] = (u) => {
2736
2744
  if (this.defaults.async)
2737
- return Promise.resolve(l.call(i, u)).then((v) => c.call(i, v));
2738
- const f = l.call(i, u);
2739
- return c.call(i, f);
2745
+ return Promise.resolve(l.call(i, u)).then((v) => d.call(i, v));
2746
+ const p = l.call(i, u);
2747
+ return d.call(i, p);
2740
2748
  } : i[o] = (...u) => {
2741
- let f = l.apply(i, u);
2742
- return f === !1 && (f = c.apply(i, u)), f;
2749
+ let p = l.apply(i, u);
2750
+ return p === !1 && (p = d.apply(i, u)), p;
2743
2751
  };
2744
2752
  }
2745
2753
  r.hooks = i;
@@ -2758,10 +2766,10 @@ class vr {
2758
2766
  return this.defaults = { ...this.defaults, ...e }, this;
2759
2767
  }
2760
2768
  lexer(e, t) {
2761
- return ae.lex(e, t ?? this.defaults);
2769
+ return re.lex(e, t ?? this.defaults);
2762
2770
  }
2763
2771
  parser(e, t) {
2764
- return re.parse(e, t ?? this.defaults);
2772
+ return ne.parse(e, t ?? this.defaults);
2765
2773
  }
2766
2774
  parseMarkdown(e) {
2767
2775
  return (a, r) => {
@@ -2773,15 +2781,15 @@ class vr {
2773
2781
  if (typeof a != "string")
2774
2782
  return o(new Error("marked(): input parameter is of type " + Object.prototype.toString.call(a) + ", string expected"));
2775
2783
  n.hooks && (n.hooks.options = n, n.hooks.block = e);
2776
- const l = n.hooks ? n.hooks.provideLexer() : e ? ae.lex : ae.lexInline, c = n.hooks ? n.hooks.provideParser() : e ? re.parse : re.parseInline;
2784
+ const l = n.hooks ? n.hooks.provideLexer() : e ? re.lex : re.lexInline, d = n.hooks ? n.hooks.provideParser() : e ? ne.parse : ne.parseInline;
2777
2785
  if (n.async)
2778
- return Promise.resolve(n.hooks ? n.hooks.preprocess(a) : a).then((u) => l(u, n)).then((u) => n.hooks ? n.hooks.processAllTokens(u) : u).then((u) => n.walkTokens ? Promise.all(this.walkTokens(u, n.walkTokens)).then(() => u) : u).then((u) => c(u, n)).then((u) => n.hooks ? n.hooks.postprocess(u) : u).catch(o);
2786
+ return Promise.resolve(n.hooks ? n.hooks.preprocess(a) : a).then((u) => l(u, n)).then((u) => n.hooks ? n.hooks.processAllTokens(u) : u).then((u) => n.walkTokens ? Promise.all(this.walkTokens(u, n.walkTokens)).then(() => u) : u).then((u) => d(u, n)).then((u) => n.hooks ? n.hooks.postprocess(u) : u).catch(o);
2779
2787
  try {
2780
2788
  n.hooks && (a = n.hooks.preprocess(a));
2781
2789
  let u = l(a, n);
2782
2790
  n.hooks && (u = n.hooks.processAllTokens(u)), n.walkTokens && this.walkTokens(u, n.walkTokens);
2783
- let f = c(u, n);
2784
- return n.hooks && (f = n.hooks.postprocess(f)), f;
2791
+ let p = d(u, n);
2792
+ return n.hooks && (p = n.hooks.postprocess(p)), p;
2785
2793
  } catch (u) {
2786
2794
  return o(u);
2787
2795
  }
@@ -2791,7 +2799,7 @@ class vr {
2791
2799
  return (a) => {
2792
2800
  if (a.message += `
2793
2801
  Please report this to https://github.com/markedjs/marked.`, e) {
2794
- const r = "<p>An error occurred:</p><pre>" + J(a.message + "", !0) + "</pre>";
2802
+ const r = "<p>An error occurred:</p><pre>" + te(a.message + "", !0) + "</pre>";
2795
2803
  return t ? Promise.resolve(r) : r;
2796
2804
  }
2797
2805
  if (t)
@@ -2800,7 +2808,7 @@ Please report this to https://github.com/markedjs/marked.`, e) {
2800
2808
  };
2801
2809
  }
2802
2810
  }
2803
- const fe = new vr();
2811
+ const fe = new yr();
2804
2812
  function B(s, e) {
2805
2813
  return fe.parse(s, e);
2806
2814
  }
@@ -2816,12 +2824,12 @@ B.walkTokens = function(s, e) {
2816
2824
  return fe.walkTokens(s, e);
2817
2825
  };
2818
2826
  B.parseInline = fe.parseInline;
2819
- B.Parser = re;
2820
- B.parser = re.parse;
2827
+ B.Parser = ne;
2828
+ B.parser = ne.parse;
2821
2829
  B.Renderer = qe;
2822
2830
  B.TextRenderer = lt;
2823
- B.Lexer = ae;
2824
- B.lexer = ae.lex;
2831
+ B.Lexer = re;
2832
+ B.lexer = re.lex;
2825
2833
  B.Tokenizer = Ae;
2826
2834
  B.Hooks = Re;
2827
2835
  B.parse = B;
@@ -2830,9 +2838,9 @@ B.setOptions;
2830
2838
  B.use;
2831
2839
  B.walkTokens;
2832
2840
  B.parseInline;
2833
- re.parse;
2834
- ae.lex;
2835
- const kr = { class: "space-y-4" }, $r = {
2841
+ ne.parse;
2842
+ re.lex;
2843
+ const wr = { class: "space-y-4" }, vr = {
2836
2844
  __name: "vs-editor-form-data",
2837
2845
  props: {
2838
2846
  widgetName: { type: String },
@@ -2843,30 +2851,30 @@ const kr = { class: "space-y-4" }, $r = {
2843
2851
  },
2844
2852
  emits: ["update-dashboard"],
2845
2853
  setup(s, { expose: e, emit: t }) {
2846
- var _, D, m, C, z, R, q, ne, ie, de, ve, ke, $e, _e, De, G, ue, Ce, dt, ut, ht, pt, ft, gt, mt, bt, xt, yt, wt, vt, kt, $t, _t, Dt, Ct, zt, Tt, It;
2847
- const a = M(() => import("@opengis/form")), { $notify: r } = me().proxy, i = t, n = s, o = typeof window < "u" ? new URLSearchParams(window.top.location.search) : null, l = I((o == null ? void 0 : o.get("dashboard")) || null), c = I([]), u = F(() => {
2854
+ var $, _, g, C, z, R, F, Y, ie, ce, ve, ke, $e, _e, De, G, ue, Ce, ct, ut, ht, pt, ft, gt, mt, bt, xt, yt, wt, vt, kt, $t, _t, Dt, Ct, zt, Tt, It;
2855
+ const a = M(() => import("@opengis/form")), { $notify: r } = me().proxy, i = t, n = s, o = typeof window < "u" ? new URLSearchParams(window.top.location.search) : null, l = I((o == null ? void 0 : o.get("dashboard")) || null), d = I([]), u = q(() => {
2848
2856
  const S = n.columns ?? [];
2849
- return S.length ? S : c.value;
2850
- }), f = F(() => n.dashboardId || l.value);
2857
+ return S.length ? S : d.value;
2858
+ }), p = q(() => n.dashboardId || l.value);
2851
2859
  async function v() {
2852
2860
  if (n.columns !== null) return;
2853
- const S = f.value;
2861
+ const S = p.value;
2854
2862
  if (!(u.value.length || !S || !n.widgetName))
2855
2863
  try {
2856
2864
  const L = await H.get(`/bi-data?dashboard=${S}&widget=${n.widgetName}`);
2857
- Array.isArray(L == null ? void 0 : L.columns) && L.columns.length && (c.value = L.columns);
2865
+ Array.isArray(L == null ? void 0 : L.columns) && L.columns.length && (d.value = L.columns);
2858
2866
  } catch {
2859
2867
  }
2860
2868
  }
2861
- const g = (S) => (S == null ? void 0 : S.name) != null ? { id: S.name, text: S.title || S.name } : null, b = (S) => Array.isArray(S) ? [...S].sort((L, oe) => {
2869
+ const m = (S) => (S == null ? void 0 : S.name) != null ? { id: S.name, text: S.title || S.name } : null, b = (S) => Array.isArray(S) ? [...S].sort((L, oe) => {
2862
2870
  const xe = L.text && L.text !== L.id, St = oe.text && oe.text !== oe.id;
2863
2871
  return xe && !St ? -1 : !xe && St ? 1 : (L.text || "").localeCompare(oe.text || "", void 0, { sensitivity: "base" });
2864
- }) : S, k = F(() => {
2872
+ }) : S, k = q(() => {
2865
2873
  const S = (u.value ?? []).filter(
2866
2874
  (L) => (L == null ? void 0 : L.type) == "text" || (L == null ? void 0 : L.type) === "date" || (L == null ? void 0 : L.type) === "timestamp without time zone" || (L == null ? void 0 : L.type) === "boolean" || (L == null ? void 0 : L.type) === "integer"
2867
- ).map(g).filter(Boolean);
2875
+ ).map(m).filter(Boolean);
2868
2876
  return b(S);
2869
- }), $ = F(() => `${n.widgetName}-${k.value.length}-${(u.value ?? []).length}`), V = F(() => ({
2877
+ }), D = q(() => `${n.widgetName}-${k.value.length}-${(u.value ?? []).length}`), V = q(() => ({
2870
2878
  text: {
2871
2879
  type: "Text",
2872
2880
  label: "Текст",
@@ -2912,7 +2920,7 @@ const kr = { class: "space-y-4" }, $r = {
2912
2920
  options: [
2913
2921
  { id: "count", text: "count" },
2914
2922
  ...b(
2915
- u.value.filter((S) => (S == null ? void 0 : S.type) === "numeric" || (S == null ? void 0 : S.type) === "double precision").map(g).filter(Boolean)
2923
+ u.value.filter((S) => (S == null ? void 0 : S.type) === "numeric" || (S == null ? void 0 : S.type) === "double precision").map(m).filter(Boolean)
2916
2924
  )
2917
2925
  ]
2918
2926
  },
@@ -2936,7 +2944,7 @@ const kr = { class: "space-y-4" }, $r = {
2936
2944
  ...b(
2937
2945
  u.value.filter(
2938
2946
  (S) => (S == null ? void 0 : S.type) == "text" || (S == null ? void 0 : S.type) === "boolean" || (S == null ? void 0 : S.type) === "integer"
2939
- ).map(g).filter(Boolean)
2947
+ ).map(m).filter(Boolean)
2940
2948
  )
2941
2949
  ],
2942
2950
  conditions: ["type", "==", "bar"]
@@ -2946,7 +2954,7 @@ const kr = { class: "space-y-4" }, $r = {
2946
2954
  label: "Колонки",
2947
2955
  style: { size: "xs" },
2948
2956
  options: b(
2949
- (u.value ?? []).map(g).filter(Boolean)
2957
+ (u.value ?? []).map(m).filter(Boolean)
2950
2958
  ),
2951
2959
  conditions: ["type", "in", ["table", "map"]]
2952
2960
  },
@@ -2965,27 +2973,27 @@ const kr = { class: "space-y-4" }, $r = {
2965
2973
  type: "Text",
2966
2974
  hidden: !0
2967
2975
  }
2968
- })), w = I({
2969
- x: ((D = (_ = n.data) == null ? void 0 : _.data) == null ? void 0 : D.x) || ((m = n.data) == null ? void 0 : m.x) || null,
2976
+ })), y = I({
2977
+ x: ((_ = ($ = n.data) == null ? void 0 : $.data) == null ? void 0 : _.x) || ((g = n.data) == null ? void 0 : g.x) || null,
2970
2978
  metric: ((z = (C = n.data) == null ? void 0 : C.data) == null ? void 0 : z.metric) || ((R = n.data) == null ? void 0 : R.metric) || null,
2971
- columns: ((ne = (q = n.data) == null ? void 0 : q.data) == null ? void 0 : ne.columns) || ((ie = n.data) == null ? void 0 : ie.columns) || null,
2972
- granularity: ((ve = (de = n.data) == null ? void 0 : de.data) == null ? void 0 : ve.granularity) || ((ke = n.data) == null ? void 0 : ke.granularity) || null,
2979
+ columns: ((Y = (F = n.data) == null ? void 0 : F.data) == null ? void 0 : Y.columns) || ((ie = n.data) == null ? void 0 : ie.columns) || null,
2980
+ granularity: ((ve = (ce = n.data) == null ? void 0 : ce.data) == null ? void 0 : ve.granularity) || ((ke = n.data) == null ? void 0 : ke.granularity) || null,
2973
2981
  type: ((_e = ($e = n.data) == null ? void 0 : $e.data) == null ? void 0 : _e.type) || ((De = n.data) == null ? void 0 : De.type) || null,
2974
2982
  groupby: ((ue = (G = n.data) == null ? void 0 : G.data) == null ? void 0 : ue.groupby) || n.data.groupby || null,
2975
- fx: ((dt = (Ce = n.data) == null ? void 0 : Ce.data) == null ? void 0 : dt.fx) || ((ut = n.data) == null ? void 0 : ut.fx) || null,
2983
+ fx: ((ct = (Ce = n.data) == null ? void 0 : Ce.data) == null ? void 0 : ct.fx) || ((ut = n.data) == null ? void 0 : ut.fx) || null,
2976
2984
  query: ((pt = (ht = n.data) == null ? void 0 : ht.data) == null ? void 0 : pt.query) || ((ft = n.data) == null ? void 0 : ft.query) || null,
2977
2985
  y_type: ((mt = (gt = n.data) == null ? void 0 : gt.data) == null ? void 0 : mt.y_type) || ((bt = n.data) == null ? void 0 : bt.y_type) || null,
2978
2986
  tableSQL: ((yt = (xt = n.data) == null ? void 0 : xt.data) == null ? void 0 : yt.tableSQL) || ((wt = n.data) == null ? void 0 : wt.tableSQL) || null,
2979
2987
  cls: ((kt = (vt = n.data) == null ? void 0 : vt.data) == null ? void 0 : kt.cls) || (($t = n.data) == null ? void 0 : $t.cls) || null,
2980
2988
  text: ((Dt = (_t = n.data) == null ? void 0 : _t.data) == null ? void 0 : Dt.text) || ((Ct = n.data) == null ? void 0 : Ct.text) || null,
2981
2989
  table: ((Tt = (zt = n.data) == null ? void 0 : zt.data) == null ? void 0 : Tt.table) || ((It = n.data) == null ? void 0 : It.table) || null
2982
- }), d = async () => {
2990
+ }), f = async () => {
2983
2991
  try {
2984
- await H.put(`/bi-dashboard/${f.value}/${n.widgetName}`, {
2985
- data: w.value
2992
+ await H.put(`/bi-dashboard/${p.value}/${n.widgetName}`, {
2993
+ data: y.value
2986
2994
  });
2987
- let S = `/bi-data?dashboard=${f.value}&widget=${n.widgetName}`;
2988
- Object.entries(w.value).forEach(([oe, xe]) => {
2995
+ let S = `/bi-data?dashboard=${p.value}&widget=${n.widgetName}`;
2996
+ Object.entries(y.value).forEach(([oe, xe]) => {
2989
2997
  S += `&${oe}=${xe}`;
2990
2998
  });
2991
2999
  const L = new CustomEvent(`update-data-${n.widgetName}`);
@@ -3001,10 +3009,10 @@ const kr = { class: "space-y-4" }, $r = {
3001
3009
  message: "При спробі оновити данні сталася помилка"
3002
3010
  });
3003
3011
  }
3004
- }, x = async () => {
3012
+ }, w = async () => {
3005
3013
  try {
3006
- let S = `/bi-data?dashboard=${f.value}&widget=${n.widgetName}`;
3007
- Object.entries(w.value).forEach(([oe, xe]) => {
3014
+ let S = `/bi-data?dashboard=${p.value}&widget=${n.widgetName}`;
3015
+ Object.entries(y.value).forEach(([oe, xe]) => {
3008
3016
  S += `&${oe}=${xe}`;
3009
3017
  });
3010
3018
  const L = new CustomEvent(`update-data-${n.widgetName}`);
@@ -3017,24 +3025,24 @@ const kr = { class: "space-y-4" }, $r = {
3017
3025
  });
3018
3026
  }
3019
3027
  };
3020
- return te(w, () => {
3021
- x();
3022
- }, { deep: !0 }), te(
3028
+ return ae(y, () => {
3029
+ w();
3030
+ }, { deep: !0 }), ae(
3023
3031
  () => [n.widgetName, n.dashboardId, l.value],
3024
3032
  () => {
3025
- c.value = [], v();
3033
+ d.value = [], v();
3026
3034
  },
3027
3035
  { immediate: !0 }
3028
- ), e({ requestUpdateWidget: d }), (S, L) => (p(), y("div", kr, [
3029
- (p(), N(E(a), {
3030
- key: $.value,
3036
+ ), e({ requestUpdateWidget: f }), (S, L) => (h(), x("div", wr, [
3037
+ (h(), E(N(a), {
3038
+ key: D.value,
3031
3039
  schema: V.value,
3032
- values: w.value,
3033
- "onUpdate:values": L[0] || (L[0] = (oe) => w.value = oe)
3040
+ values: y.value,
3041
+ "onUpdate:values": L[0] || (L[0] = (oe) => y.value = oe)
3034
3042
  }, null, 8, ["schema", "values"]))
3035
3043
  ]));
3036
3044
  }
3037
- }, _r = { class: "space-y-4" }, Dr = {
3045
+ }, kr = { class: "space-y-4" }, $r = {
3038
3046
  __name: "vs-editor-form-yaml",
3039
3047
  props: {
3040
3048
  yamlValue: { type: null, default: () => "" },
@@ -3044,42 +3052,42 @@ const kr = { class: "space-y-4" }, $r = {
3044
3052
  emits: ["update-dashboard"],
3045
3053
  setup(s, { expose: e, emit: t }) {
3046
3054
  const a = typeof window < "u" ? window.echarts : null, r = M(
3047
- () => import("@opengis/form").then((g) => g.VsInputMonaco)
3048
- ), i = I(null), { $notify: n } = me().proxy, o = t, l = s, c = (g, { dimensions: b, source: k }) => {
3049
- const $ = g.getOption(), { data: V, ...w } = ($ == null ? void 0 : $.series)[0], [, ...d] = b || [], x = d.map((_, D) => ({
3050
- ...($ == null ? void 0 : $.series[D]) || {},
3051
- data: k.map((m) => m[D + 1]),
3052
- name: _
3055
+ () => import("@opengis/form").then((m) => m.VsInputMonaco)
3056
+ ), i = I(null), { $notify: n } = me().proxy, o = t, l = s, d = (m, { dimensions: b, source: k }) => {
3057
+ const D = m.getOption(), { data: V, ...y } = (D == null ? void 0 : D.series)[0], [, ...f] = b || [], w = f.map(($, _) => ({
3058
+ ...(D == null ? void 0 : D.series[_]) || {},
3059
+ data: k.map((g) => g[_ + 1]),
3060
+ name: $
3053
3061
  }));
3054
- g == null || g.setOption(
3062
+ m == null || m.setOption(
3055
3063
  {
3056
- ...$ || {},
3064
+ ...D || {},
3057
3065
  dataset: {
3058
3066
  dimensions: b,
3059
3067
  source: k
3060
3068
  },
3061
- series: x,
3069
+ series: w,
3062
3070
  xAxis: { type: "category" },
3063
3071
  yAxis: {}
3064
3072
  },
3065
3073
  !0
3066
3074
  );
3067
- }, u = (g) => {
3068
- const b = document.getElementById(g);
3075
+ }, u = (m) => {
3076
+ const b = document.getElementById(m);
3069
3077
  if (!b) return null;
3070
3078
  const k = a == null ? void 0 : a.getInstanceByDom(b);
3071
3079
  return k || null;
3072
- }, f = I(l.yamlValue), v = async () => {
3080
+ }, p = I(l.yamlValue), v = async () => {
3073
3081
  try {
3074
3082
  await H.put(`/bi-dashboard/${i.value}/${l.widgetName}`, {
3075
- yml: f.value
3083
+ yml: p.value
3076
3084
  });
3077
- const g = u(l.widgetName);
3078
- if (g) {
3085
+ const m = u(l.widgetName);
3086
+ if (m) {
3079
3087
  const b = await H.get(
3080
3088
  `/bi-data?dashboard=${i.value}&widget=${l.widgetName}`
3081
3089
  );
3082
- c(g, b);
3090
+ d(m, b);
3083
3091
  }
3084
3092
  o("update-dashboard"), n({
3085
3093
  type: "success",
@@ -3095,12 +3103,12 @@ const kr = { class: "space-y-4" }, $r = {
3095
3103
  }
3096
3104
  };
3097
3105
  return le(() => {
3098
- const g = new URLSearchParams(window.top.location.search);
3099
- i.value = g.get("dashboard");
3100
- }), e({ requestUpdateWidget: v }), (g, b) => (p(), y("div", _r, [
3101
- T(E(r), {
3102
- modelValue: f.value,
3103
- "onUpdate:modelValue": b[0] || (b[0] = (k) => f.value = k),
3106
+ const m = new URLSearchParams(window.top.location.search);
3107
+ i.value = m.get("dashboard");
3108
+ }), e({ requestUpdateWidget: v }), (m, b) => (h(), x("div", kr, [
3109
+ T(N(r), {
3110
+ modelValue: p.value,
3111
+ "onUpdate:modelValue": b[0] || (b[0] = (k) => p.value = k),
3104
3112
  syntax: "yaml",
3105
3113
  theme: "vs-light",
3106
3114
  height: 400,
@@ -3108,7 +3116,7 @@ const kr = { class: "space-y-4" }, $r = {
3108
3116
  }, null, 8, ["modelValue"])
3109
3117
  ]));
3110
3118
  }
3111
- }, Cr = { class: "pt-[10px]" }, zr = {
3119
+ }, _r = { class: "pt-[10px]" }, Dr = {
3112
3120
  __name: "vs-editor-form-controls",
3113
3121
  props: {
3114
3122
  widgetName: { type: String },
@@ -3132,9 +3140,9 @@ const kr = { class: "space-y-4" }, $r = {
3132
3140
  groupby: {
3133
3141
  ua: "Groupby",
3134
3142
  type: "checkbox",
3135
- options: (u = i.columns) == null ? void 0 : u.map(({ name: f }) => f)
3143
+ options: (u = i.columns) == null ? void 0 : u.map(({ name: p }) => p)
3136
3144
  }
3137
- }, l = I(i.controls || {}), c = async () => {
3145
+ }, l = I(i.controls || {}), d = async () => {
3138
3146
  try {
3139
3147
  await H.put(`/bi-dashboard/${n.value}/${i.widgetName}`, {
3140
3148
  controls: l.value
@@ -3152,22 +3160,22 @@ const kr = { class: "space-y-4" }, $r = {
3152
3160
  }
3153
3161
  };
3154
3162
  return le(() => {
3155
- const f = new URLSearchParams(window.top.location.search);
3156
- n.value = f.get("dashboard");
3157
- }), (f, v) => {
3158
- const g = Y("VsButton");
3159
- return p(), y("div", Cr, [
3160
- T(g, {
3163
+ const p = new URLSearchParams(window.top.location.search);
3164
+ n.value = p.get("dashboard");
3165
+ }), (p, v) => {
3166
+ const m = K("VsButton");
3167
+ return h(), x("div", _r, [
3168
+ T(m, {
3161
3169
  class: "ml-[10px] mb-[10px]",
3162
3170
  type: "plain",
3163
- onClick: c
3171
+ onClick: d
3164
3172
  }, {
3165
3173
  default: j(() => [...v[1] || (v[1] = [
3166
3174
  X(" Зберегти ", -1)
3167
3175
  ])]),
3168
3176
  _: 1
3169
3177
  }),
3170
- T(E(t), {
3178
+ T(N(t), {
3171
3179
  schema: o,
3172
3180
  values: l.value,
3173
3181
  "onUpdate:values": v[0] || (v[0] = (b) => l.value = b)
@@ -3176,11 +3184,11 @@ const kr = { class: "space-y-4" }, $r = {
3176
3184
  };
3177
3185
  }
3178
3186
  }, Ft = {
3179
- "vs-editor-form-style": Fa,
3180
- "vs-editor-form-data": $r,
3181
- "vs-editor-form-yaml": Dr,
3182
- "vs-editor-form-controls": zr
3183
- }, Tr = {
3187
+ "vs-editor-form-style": Pa,
3188
+ "vs-editor-form-data": vr,
3189
+ "vs-editor-form-yaml": $r,
3190
+ "vs-editor-form-controls": Dr
3191
+ }, Cr = {
3184
3192
  key: 0,
3185
3193
  class: "p-4 text-sm text-amber-700 bg-amber-50 rounded-lg"
3186
3194
  }, qt = {
@@ -3198,13 +3206,13 @@ const kr = { class: "space-y-4" }, $r = {
3198
3206
  }
3199
3207
  e({ save: r });
3200
3208
  const i = I(!1);
3201
- return xs((n, o, l) => (console.error("Editor tab error:", n, l), i.value = !0, !1)), te(
3209
+ return bs((n, o, l) => (console.error("Editor tab error:", n, l), i.value = !0, !1)), ae(
3202
3210
  () => t.tabComponent,
3203
3211
  () => {
3204
3212
  i.value = !1;
3205
3213
  },
3206
3214
  { immediate: !0 }
3207
- ), (n, o) => i.value ? (p(), y("div", Tr, " Помилка завантаження вмісту. Переключіть таб або оновіть сторінку. ")) : (p(), N(Zt(s.tabComponent), he({
3215
+ ), (n, o) => i.value ? (h(), x("div", Cr, " Помилка завантаження вмісту. Переключіть таб або оновіть сторінку. ")) : (h(), E(Zt(s.tabComponent), he({
3208
3216
  ref_key: "tabRef",
3209
3217
  ref: a,
3210
3218
  key: s.tabKey || "tab"
@@ -3212,16 +3220,16 @@ const kr = { class: "space-y-4" }, $r = {
3212
3220
  onUpdateDashboard: o[0] || (o[0] = (l) => n.$emit("update-dashboard"))
3213
3221
  }), null, 16));
3214
3222
  }
3215
- }, Ir = { class: "h-full flex flex-col bg-white shrink-0 !w-[400px] border rounded-xl overflow-hidden border-gray-200" }, Sr = {
3223
+ }, zr = { class: "h-full flex flex-col bg-white shrink-0 !w-[400px] border rounded-xl overflow-hidden border-gray-200" }, Tr = {
3216
3224
  key: 0,
3217
3225
  class: "flex flex-col min-h-0 flex-1"
3218
- }, Rr = { class: "flex items-center border-b border-gray-200 bg-white shrink-0 px-4 h-[49px]" }, Vr = { class: "flex items-center gap-6 min-w-0 -mb-[14px]" }, Lr = ["onClick"], Wr = {
3226
+ }, Ir = { class: "flex items-center border-b border-gray-200 bg-white shrink-0 px-4 h-[49px]" }, Sr = { class: "flex items-center gap-6 min-w-0 -mb-[14px]" }, Rr = ["onClick"], Vr = {
3219
3227
  key: 0,
3220
3228
  class: "absolute bottom-0 left-0 right-0 h-0.5 bg-blue-600 rounded-full"
3221
- }, Nr = { class: "flex items-center gap-1 ml-auto shrink-0" }, Er = {
3229
+ }, Lr = { class: "flex items-center gap-1 ml-auto shrink-0" }, Wr = {
3222
3230
  key: 1,
3223
3231
  class: "flex-1 min-h-0 overflow-auto px-4 py-4 [&::-webkit-scrollbar]:h-2 [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-stone-100 [&::-webkit-scrollbar-thumb]:bg-stone-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500"
3224
- }, jr = { key: 0 }, Br = { key: 1 }, Or = { class: "p-4" }, Pr = { class: "flex justify-end mt-4 gap-x-3" }, Ar = { class: "flex justify-end p-[20px] gap-[10px] border-t w-full" }, Fr = {
3232
+ }, Nr = { key: 0 }, Er = { key: 1 }, jr = { class: "p-4" }, Br = { class: "flex justify-end mt-4 gap-x-3" }, Or = { class: "flex justify-end p-[20px] gap-[10px] border-t w-full" }, Pr = {
3225
3233
  __name: "vs-editor-forms",
3226
3234
  props: /* @__PURE__ */ Be({
3227
3235
  selectedWidgetData: {
@@ -3234,7 +3242,7 @@ const kr = { class: "space-y-4" }, $r = {
3234
3242
  default: () => ""
3235
3243
  },
3236
3244
  currentWidgetData: {
3237
- type: String,
3245
+ type: Object,
3238
3246
  default: () => ""
3239
3247
  }
3240
3248
  }, {
@@ -3243,8 +3251,8 @@ const kr = { class: "space-y-4" }, $r = {
3243
3251
  }),
3244
3252
  emits: /* @__PURE__ */ Be(["update-data"], ["update:selectedWidget"]),
3245
3253
  setup(s, { emit: e }) {
3246
- var x, _;
3247
- const t = M(() => import("@opengis/form")), a = (_ = (x = me()) == null ? void 0 : x.proxy) == null ? void 0 : _.$notify, r = we(), i = e, n = I(null), o = s, l = I(!1), c = I(!0), u = I(!1), f = I({}), v = Gt(s, "selectedWidget"), g = [
3254
+ var w, $;
3255
+ const t = M(() => import("@opengis/form")), a = ($ = (w = me()) == null ? void 0 : w.proxy) == null ? void 0 : $.$notify, r = we(), i = e, n = I(null), o = s, l = I(!1), d = I(!0), u = I(!1), p = I({}), v = Gt(s, "selectedWidget"), m = [
3248
3256
  "table",
3249
3257
  "text",
3250
3258
  "number",
@@ -3257,49 +3265,49 @@ const kr = { class: "space-y-4" }, $r = {
3257
3265
  try {
3258
3266
  await H.delete(
3259
3267
  `/bi-dashboard/${o.selectedDashboard}/${o.selectedWidgetData.name}`
3260
- ), r.hasRoute(K.EditorDashboard) ? r.push({
3261
- name: K.EditorDashboard,
3268
+ ), r.hasRoute(J.EditorDashboard) ? r.push({
3269
+ name: J.EditorDashboard,
3262
3270
  params: { dashboardId: o.selectedDashboard }
3263
3271
  }) : v.value = "", i("update-data"), l.value = !1, a({
3264
3272
  type: "success",
3265
3273
  title: "Успішно!",
3266
3274
  message: "Віджет успішно видалено"
3267
3275
  });
3268
- } catch (D) {
3269
- console.error(D), a({
3276
+ } catch (_) {
3277
+ console.error(_), a({
3270
3278
  type: "error",
3271
3279
  title: "Помилка!",
3272
3280
  message: "При спробі видалити віджет виникла помилка"
3273
3281
  });
3274
3282
  }
3275
- }, $ = F(() => {
3276
- const D = [
3283
+ }, D = q(() => {
3284
+ const _ = [
3277
3285
  { id: "data", label: "Дані" },
3278
3286
  { id: "style", label: "Стилі" },
3279
3287
  { id: "yaml", label: "{ }" }
3280
3288
  // { id: 'controls', label: 'Контролси' },
3281
3289
  ];
3282
- return D == null ? void 0 : D.filter((m) => {
3290
+ return _ == null ? void 0 : _.filter((g) => {
3283
3291
  var C, z, R;
3284
- return m.id === "style" ? !(g != null && g.includes(
3292
+ return g.id === "style" ? !(m != null && m.includes(
3285
3293
  ((C = o.selectedWidgetData) == null ? void 0 : C.type) || ((R = (z = o.selectedWidgetData) == null ? void 0 : z.data) == null ? void 0 : R.type)
3286
3294
  )) : !0;
3287
3295
  });
3288
3296
  }), V = () => {
3289
- var D, m, C, z, R, q, ne, ie, de;
3290
- f.value = {
3291
- title: (D = o.selectedWidgetData) == null ? void 0 : D.title,
3292
- type: (m = o.selectedWidgetData) == null ? void 0 : m.type,
3297
+ var _, g, C, z, R, F, Y, ie, ce;
3298
+ p.value = {
3299
+ title: (_ = o.selectedWidgetData) == null ? void 0 : _.title,
3300
+ type: (g = o.selectedWidgetData) == null ? void 0 : g.type,
3293
3301
  table: (C = o.selectedWidgetData) == null ? void 0 : C.table_name,
3294
3302
  query: (R = (z = o.selectedWidgetData) == null ? void 0 : z.data) == null ? void 0 : R.query,
3295
- x: (ne = (q = o.selectedWidgetData) == null ? void 0 : q.data) == null ? void 0 : ne.x,
3296
- cls: (de = (ie = o.selectedWidgetData) == null ? void 0 : ie.data) == null ? void 0 : de.cls
3303
+ x: (Y = (F = o.selectedWidgetData) == null ? void 0 : F.data) == null ? void 0 : Y.x,
3304
+ cls: (ce = (ie = o.selectedWidgetData) == null ? void 0 : ie.data) == null ? void 0 : ce.cls
3297
3305
  }, u.value = !0;
3298
- }, w = async () => {
3306
+ }, y = async () => {
3299
3307
  try {
3300
3308
  await H.put(
3301
3309
  `/bi-dashboard/${o.selectedDashboard}/${o.selectedWidgetData.name}`,
3302
- f.value
3310
+ p.value
3303
3311
  ), a({
3304
3312
  type: "success",
3305
3313
  title: "Успішно!",
@@ -3313,10 +3321,10 @@ const kr = { class: "space-y-4" }, $r = {
3313
3321
  });
3314
3322
  }
3315
3323
  };
3316
- te(v, () => {
3317
- c.value = !1, setTimeout(() => c.value = !0);
3324
+ ae(v, () => {
3325
+ d.value = !1, setTimeout(() => d.value = !0);
3318
3326
  });
3319
- const d = {
3327
+ const f = {
3320
3328
  title: {
3321
3329
  type: "text",
3322
3330
  ua: "Заголовок",
@@ -3404,44 +3412,44 @@ const kr = { class: "space-y-4" }, $r = {
3404
3412
  placeholder: "Cls"
3405
3413
  }
3406
3414
  };
3407
- return (D, m) => {
3408
- var z, R, q, ne, ie, de, ve, ke, $e, _e, De;
3409
- const C = Y("VsPopover");
3410
- return p(), y(U, null, [
3411
- h("div", Ir, [
3412
- s.selectedWidgetData ? (p(), y("div", Sr, [
3413
- h("div", Rr, [
3414
- h("nav", Vr, [
3415
- (p(!0), y(U, null, Z($.value, (G) => (p(), y("button", {
3415
+ return (_, g) => {
3416
+ var z, R, F, Y, ie, ce, ve, ke, $e, _e, De;
3417
+ const C = K("VsPopover");
3418
+ return h(), x(U, null, [
3419
+ c("div", zr, [
3420
+ s.selectedWidgetData ? (h(), x("div", Tr, [
3421
+ c("div", Ir, [
3422
+ c("nav", Sr, [
3423
+ (h(!0), x(U, null, Z(D.value, (G) => (h(), x("button", {
3416
3424
  key: G.id,
3417
3425
  type: "button",
3418
- class: ee(["relative pb-3 pt-1 text-sm font-medium transition-colors whitespace-nowrap", b.value === G.id ? "text-blue-600" : "text-gray-600 hover:text-gray-900"]),
3426
+ class: se(["relative pb-3 pt-1 text-sm font-medium transition-colors whitespace-nowrap", b.value === G.id ? "text-blue-600" : "text-gray-600 hover:text-gray-900"]),
3419
3427
  onClick: (ue) => b.value = G.id
3420
3428
  }, [
3421
3429
  X(W(G.label) + " ", 1),
3422
- b.value === G.id ? (p(), y("span", Wr)) : A("", !0)
3423
- ], 10, Lr))), 128))
3430
+ b.value === G.id ? (h(), x("span", Vr)) : A("", !0)
3431
+ ], 10, Rr))), 128))
3424
3432
  ]),
3425
- h("div", Nr, [
3433
+ c("div", Lr, [
3426
3434
  T(C, {
3427
3435
  placement: "left",
3428
3436
  trigger: "hover"
3429
3437
  }, {
3430
3438
  reference: j(() => [
3431
- h("button", {
3439
+ c("button", {
3432
3440
  type: "button",
3433
3441
  class: "h-8 w-8 flex items-center justify-center rounded-lg text-gray-500 hover:text-gray-700 hover:bg-gray-100 transition-colors",
3434
3442
  title: "Зберегти",
3435
- onClick: m[0] || (m[0] = (G) => {
3443
+ onClick: g[0] || (g[0] = (G) => {
3436
3444
  var ue, Ce;
3437
3445
  return (Ce = (ue = n.value) == null ? void 0 : ue.save) == null ? void 0 : Ce.call(ue);
3438
3446
  })
3439
3447
  }, [
3440
- T(E(Ls), { class: "h-4 w-4" })
3448
+ T(N(Ns), { class: "h-4 w-4" })
3441
3449
  ])
3442
3450
  ]),
3443
3451
  default: j(() => [
3444
- m[9] || (m[9] = X(" Зберегти ", -1))
3452
+ g[9] || (g[9] = X(" Зберегти ", -1))
3445
3453
  ]),
3446
3454
  _: 1
3447
3455
  }),
@@ -3450,7 +3458,7 @@ const kr = { class: "space-y-4" }, $r = {
3450
3458
  trigger: "hover"
3451
3459
  }, {
3452
3460
  reference: j(() => [
3453
- h("button", {
3461
+ c("button", {
3454
3462
  type: "button",
3455
3463
  class: "h-8 w-8 flex items-center justify-center rounded-lg text-gray-500 hover:text-gray-700 hover:bg-gray-100 transition-colors",
3456
3464
  onClick: V
@@ -3459,7 +3467,7 @@ const kr = { class: "space-y-4" }, $r = {
3459
3467
  ])
3460
3468
  ]),
3461
3469
  default: j(() => [
3462
- m[10] || (m[10] = X(" Редагувати віджет ", -1))
3470
+ g[10] || (g[10] = X(" Редагувати віджет ", -1))
3463
3471
  ]),
3464
3472
  _: 1
3465
3473
  }),
@@ -3468,71 +3476,71 @@ const kr = { class: "space-y-4" }, $r = {
3468
3476
  trigger: "hover"
3469
3477
  }, {
3470
3478
  reference: j(() => [
3471
- h("button", {
3479
+ c("button", {
3472
3480
  type: "button",
3473
3481
  class: "h-8 w-8 flex items-center justify-center rounded-lg text-gray-500 hover:text-gray-700 hover:bg-gray-100 transition-colors",
3474
- onClick: m[1] || (m[1] = (G) => l.value = !0)
3482
+ onClick: g[1] || (g[1] = (G) => l.value = !0)
3475
3483
  }, [
3476
- T(E(Jt), { class: "h-4 w-4" })
3484
+ T(N(Kt), { class: "h-4 w-4" })
3477
3485
  ])
3478
3486
  ]),
3479
3487
  default: j(() => [
3480
- m[11] || (m[11] = X(" Видалити віджет ", -1))
3488
+ g[11] || (g[11] = X(" Видалити віджет ", -1))
3481
3489
  ]),
3482
3490
  _: 1
3483
3491
  })
3484
3492
  ])
3485
3493
  ]),
3486
- (z = s.currentWidgetData) != null && z.status ? (p(), N(Pe, {
3494
+ (z = s.currentWidgetData) != null && z.status ? (h(), E(Pe, {
3487
3495
  key: 0,
3488
3496
  title: (R = s.currentWidgetData) == null ? void 0 : R.title,
3489
- text: (q = s.currentWidgetData) == null ? void 0 : q.message
3490
- }, null, 8, ["title", "text"])) : (p(), y("div", Er, [
3491
- c.value && s.currentWidgetData ? (p(), y("div", jr, [
3497
+ text: (F = s.currentWidgetData) == null ? void 0 : F.message
3498
+ }, null, 8, ["title", "text"])) : (h(), x("div", Wr, [
3499
+ d.value && s.currentWidgetData ? (h(), x("div", Nr, [
3492
3500
  T(qt, {
3493
3501
  ref_key: "tabPanelRef",
3494
3502
  ref: n,
3495
3503
  "tab-key": b.value,
3496
- "tab-component": E(Ft)["vs-editor-form-" + b.value],
3497
- widgetName: (ne = s.selectedWidgetData) == null ? void 0 : ne.name,
3504
+ "tab-component": N(Ft)["vs-editor-form-" + b.value],
3505
+ widgetName: (Y = s.selectedWidgetData) == null ? void 0 : Y.name,
3498
3506
  dashboardId: s.selectedDashboard,
3499
3507
  yamlValue: ((ie = s.selectedWidgetData) == null ? void 0 : ie.yml) || "",
3500
3508
  data: s.selectedWidgetData,
3501
- controls: (de = s.selectedWidgetData) == null ? void 0 : de.controls,
3509
+ controls: (ce = s.selectedWidgetData) == null ? void 0 : ce.controls,
3502
3510
  columns: (ve = s.currentWidgetData) == null ? void 0 : ve.columns,
3503
- onUpdateDashboard: m[2] || (m[2] = (G) => D.$emit("update-data"))
3511
+ onUpdateDashboard: g[2] || (g[2] = (G) => _.$emit("update-data"))
3504
3512
  }, null, 8, ["tab-key", "tab-component", "widgetName", "dashboardId", "yamlValue", "data", "controls", "columns"])
3505
- ])) : (p(), y("div", Br, [
3513
+ ])) : (h(), x("div", Er, [
3506
3514
  T(qt, {
3507
3515
  ref_key: "tabPanelRef",
3508
3516
  ref: n,
3509
3517
  "tab-key": b.value,
3510
- "tab-component": E(Ft)["vs-editor-form-" + b.value],
3518
+ "tab-component": N(Ft)["vs-editor-form-" + b.value],
3511
3519
  widgetName: (ke = s.selectedWidgetData) == null ? void 0 : ke.name,
3512
3520
  dashboardId: s.selectedDashboard,
3513
3521
  yamlValue: (($e = s.selectedWidgetData) == null ? void 0 : $e.yml) || "",
3514
3522
  data: s.selectedWidgetData,
3515
3523
  controls: (_e = s.selectedWidgetData) == null ? void 0 : _e.controls,
3516
3524
  columns: (De = s.currentWidgetData) == null ? void 0 : De.columns,
3517
- onUpdateDashboard: m[3] || (m[3] = (G) => D.$emit("update-data"))
3525
+ onUpdateDashboard: g[3] || (g[3] = (G) => _.$emit("update-data"))
3518
3526
  }, null, 8, ["tab-key", "tab-component", "widgetName", "dashboardId", "yamlValue", "data", "controls", "columns"])
3519
3527
  ])),
3520
3528
  T(Ve, {
3521
3529
  teleport: "#modal",
3522
3530
  visible: l.value,
3523
3531
  title: "Ви впевнені?",
3524
- onClose: m[5] || (m[5] = (G) => l.value = !1)
3532
+ onClose: g[5] || (g[5] = (G) => l.value = !1)
3525
3533
  }, {
3526
3534
  default: j(() => [
3527
- h("div", Or, [
3528
- m[12] || (m[12] = h("p", { class: "mt-1 text-gray-500 dark:text-neutral-500" }, " Ви впевнені, що хочете видалити цей віджет? ", -1)),
3529
- h("div", Pr, [
3530
- h("button", {
3535
+ c("div", jr, [
3536
+ g[12] || (g[12] = c("p", { class: "mt-1 text-gray-500 dark:text-neutral-500" }, " Ви впевнені, що хочете видалити цей віджет? ", -1)),
3537
+ c("div", Br, [
3538
+ c("button", {
3531
3539
  type: "button",
3532
3540
  class: "inline-flex items-center px-3 py-2 text-sm font-medium text-gray-800 bg-white border border-gray-200 rounded-lg shadow-sm gap-x-2 hover:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-50 dark:bg-neutral-800 dark:border-neutral-700 dark:text-neutral-300 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700",
3533
- onClick: m[4] || (m[4] = (G) => l.value = !1)
3541
+ onClick: g[4] || (g[4] = (G) => l.value = !1)
3534
3542
  }, " Скасувати "),
3535
- h("button", {
3543
+ c("button", {
3536
3544
  type: "button",
3537
3545
  class: "inline-flex items-center px-3 py-2 text-sm font-semibold text-white bg-red-500 border border-transparent rounded-lg gap-x-2 hover:bg-red-600 disabled:opacity-50 disabled:pointer-events-none",
3538
3546
  onClick: k
@@ -3543,7 +3551,7 @@ const kr = { class: "space-y-4" }, $r = {
3543
3551
  _: 1
3544
3552
  }, 8, ["visible"])
3545
3553
  ]))
3546
- ])) : (p(), N(Pe, {
3554
+ ])) : (h(), E(Pe, {
3547
3555
  key: 1,
3548
3556
  title: "Оберіть один з віджетів",
3549
3557
  text: "",
@@ -3554,27 +3562,27 @@ const kr = { class: "space-y-4" }, $r = {
3554
3562
  teleport: "#modal",
3555
3563
  visible: u.value,
3556
3564
  title: "Редагувати віджет",
3557
- onClose: m[8] || (m[8] = (G) => u.value = !1)
3565
+ onClose: g[8] || (g[8] = (G) => u.value = !1)
3558
3566
  }, {
3559
3567
  footer: j(() => [
3560
- h("div", Ar, [
3561
- h("button", {
3568
+ c("div", Or, [
3569
+ c("button", {
3562
3570
  style: { border: "1px solid #000" },
3563
- onClick: m[7] || (m[7] = (G) => u.value = !1),
3571
+ onClick: g[7] || (g[7] = (G) => u.value = !1),
3564
3572
  class: "py-2 px-3 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-black border-gray-200 rounded-lg hover:bg-gray-100 duration-300"
3565
3573
  }, " Скасувати "),
3566
- h("button", {
3567
- onClick: w,
3574
+ c("button", {
3575
+ onClick: y,
3568
3576
  class: "py-2 px-3 inline-flex items-center gap-x-2 text-[14px] font-[400] whitespace-nowrap text-white bg-blue-500 rounded-lg hover:bg-blue-700 duration-300"
3569
3577
  }, " Зберегти ")
3570
3578
  ])
3571
3579
  ]),
3572
3580
  default: j(() => [
3573
- d ? (p(), N(E(t), {
3581
+ f ? (h(), E(N(t), {
3574
3582
  key: 0,
3575
- schema: d,
3576
- values: f.value,
3577
- "onUpdate:values": m[6] || (m[6] = (G) => f.value = G)
3583
+ schema: f,
3584
+ values: p.value,
3585
+ "onUpdate:values": g[6] || (g[6] = (G) => p.value = G)
3578
3586
  }, null, 8, ["values"])) : A("", !0)
3579
3587
  ]),
3580
3588
  _: 1
@@ -3582,10 +3590,10 @@ const kr = { class: "space-y-4" }, $r = {
3582
3590
  ], 64);
3583
3591
  };
3584
3592
  }
3585
- }, qr = { class: "overflow-hidden flex flex-col min-h-[480px]" }, Mr = { class: "flex-1 flex min-h-0 gap-4" }, Ur = { class: "flex-1 min-w-0 pb-4 overflow-auto bg-gray-50/50" }, Gr = {
3593
+ }, Ar = { class: "overflow-hidden flex flex-col min-h-[480px]" }, Fr = { class: "flex-1 flex min-h-0 gap-4" }, qr = { class: "flex-1 min-w-0 pb-4 overflow-auto bg-gray-50/50" }, Mr = {
3586
3594
  key: 1,
3587
3595
  class: "flex items-center justify-center h-full"
3588
- }, Hr = { class: "w-[400px] shrink-0 flex flex-col" }, Zr = {
3596
+ }, Ur = { class: "w-[400px] shrink-0 flex flex-col" }, Gr = {
3589
3597
  __name: "vs-widget-editor-panel",
3590
3598
  props: {
3591
3599
  selectedWidget: { type: String, default: "" },
@@ -3610,21 +3618,21 @@ const kr = { class: "space-y-4" }, $r = {
3610
3618
  function n() {
3611
3619
  a("update-data");
3612
3620
  }
3613
- te(
3621
+ ae(
3614
3622
  () => [t.selectedDashboard, t.selectedWidget],
3615
3623
  () => {
3616
3624
  i();
3617
3625
  },
3618
3626
  { immediate: !0 }
3619
3627
  );
3620
- const o = F({
3628
+ const o = q({
3621
3629
  get: () => t.selectedWidget,
3622
3630
  set: (l) => a("update:selectedWidget", l)
3623
3631
  });
3624
- return (l, c) => (p(), y("div", qr, [
3625
- h("div", Mr, [
3626
- h("div", Ur, [
3627
- r.value ? (p(), N(Oe, {
3632
+ return (l, d) => (h(), x("div", Ar, [
3633
+ c("div", Fr, [
3634
+ c("div", qr, [
3635
+ r.value ? (h(), E(Oe, {
3628
3636
  key: 0,
3629
3637
  dashboard: s.selectedDashboard,
3630
3638
  widget: s.selectedWidget,
@@ -3633,14 +3641,14 @@ const kr = { class: "space-y-4" }, $r = {
3633
3641
  "prefetched-data": r.value,
3634
3642
  "filter-u-rl": void 0,
3635
3643
  class: "max-h-full"
3636
- }, null, 8, ["dashboard", "widget", "selected-widget", "dashboard-widgets", "prefetched-data"])) : (p(), y("div", Gr, [...c[1] || (c[1] = [
3637
- h("span", { class: "text-sm text-gray-400" }, "Завантаження...", -1)
3644
+ }, null, 8, ["dashboard", "widget", "selected-widget", "dashboard-widgets", "prefetched-data"])) : (h(), x("div", Mr, [...d[1] || (d[1] = [
3645
+ c("span", { class: "text-sm text-gray-400" }, "Завантаження...", -1)
3638
3646
  ])]))
3639
3647
  ]),
3640
- h("div", Hr, [
3641
- T(Fr, {
3648
+ c("div", Ur, [
3649
+ T(Pr, {
3642
3650
  selectedWidget: o.value,
3643
- "onUpdate:selectedWidget": c[0] || (c[0] = (u) => o.value = u),
3651
+ "onUpdate:selectedWidget": d[0] || (d[0] = (u) => o.value = u),
3644
3652
  selectedWidgetData: s.selectedWidgetData,
3645
3653
  currentWidgetData: r.value || s.currentWidgetData || { columns: [] },
3646
3654
  selectedDashboard: s.selectedDashboard,
@@ -3650,30 +3658,30 @@ const kr = { class: "space-y-4" }, $r = {
3650
3658
  ])
3651
3659
  ]));
3652
3660
  }
3653
- }, Qr = {
3661
+ }, Hr = {
3654
3662
  __name: "icon-grid",
3655
3663
  setup(s) {
3656
- return (e, t) => (p(), N(E(Rs), he(e.$attrs, { size: 24 }), null, 16));
3664
+ return (e, t) => (h(), E(N(Ls), he(e.$attrs, { size: 24 }), null, 16));
3657
3665
  }
3658
- }, Xr = {
3666
+ }, Zr = {
3659
3667
  __name: "icon-table",
3660
3668
  setup(s) {
3661
- return (e, t) => (p(), N(E(Ws), he(e.$attrs, { size: 24 }), null, 16));
3669
+ return (e, t) => (h(), E(N(Es), he(e.$attrs, { size: 24 }), null, 16));
3662
3670
  }
3663
- }, Kr = {
3671
+ }, Qr = {
3664
3672
  __name: "icon-more",
3665
3673
  setup(s) {
3666
- return (e, t) => (p(), N(E(Ts), he(e.$attrs, { size: 24 }), null, 16));
3674
+ return (e, t) => (h(), E(N(Ss), he(e.$attrs, { size: 24 }), null, 16));
3667
3675
  }
3668
- }, Yr = M(() => import("@opengis/form")), Jr = {
3676
+ }, Xr = M(() => import("@opengis/form")), Yr = {
3669
3677
  components: {
3670
3678
  VsModal: Ve,
3671
- VForm: Yr,
3672
- deleteIcon: Jt,
3679
+ VForm: Xr,
3680
+ deleteIcon: Kt,
3673
3681
  editIcon: es,
3674
- IconGrid: Qr,
3675
- IconMore: Kr,
3676
- IconTable: Xr
3682
+ IconGrid: Hr,
3683
+ IconMore: Qr,
3684
+ IconTable: Zr
3677
3685
  },
3678
3686
  watch: {
3679
3687
  dashboardData: {
@@ -3692,7 +3700,7 @@ const kr = { class: "space-y-4" }, $r = {
3692
3700
  }
3693
3701
  const e = (a = s == null ? void 0 : s.panels) == null ? void 0 : a.map((r) => {
3694
3702
  var o, l;
3695
- const { title: i = "", type: n = "" } = ((l = (o = s == null ? void 0 : s.widgets) == null ? void 0 : o.find((c) => (c == null ? void 0 : c.name) === (r == null ? void 0 : r.widget))) == null ? void 0 : l.data) || {};
3703
+ const { title: i = "", type: n = "" } = ((l = (o = s == null ? void 0 : s.widgets) == null ? void 0 : o.find((d) => (d == null ? void 0 : d.name) === (r == null ? void 0 : r.widget))) == null ? void 0 : l.data) || {};
3696
3704
  return { title: i, type: n, ...r };
3697
3705
  });
3698
3706
  this.formGridValue = {
@@ -3723,9 +3731,10 @@ const kr = { class: "space-y-4" }, $r = {
3723
3731
  label: "Опис"
3724
3732
  },
3725
3733
  {
3726
- type: "Text",
3734
+ type: "Select",
3727
3735
  key: "table_name",
3728
3736
  validators: ["required"],
3737
+ data: "pg.table_name",
3729
3738
  label: "Назва таблиці"
3730
3739
  },
3731
3740
  {
@@ -3871,22 +3880,22 @@ const kr = { class: "space-y-4" }, $r = {
3871
3880
  document.body.click();
3872
3881
  }
3873
3882
  }
3874
- }, en = {
3883
+ }, Jr = {
3875
3884
  key: 0,
3876
3885
  class: "flex items-center gap-4"
3877
- }, tn = { class: "h-[30px] w-[30px] flex items-center justify-center" }, sn = { class: "flex flex-col items-start -ml-2 -mr-2" }, an = { class: "p-4" }, rn = { class: "flex justify-end mt-4 gap-x-3" }, nn = { class: "flex justify-end p-[20px] gap-[10px] border-t w-full" }, on = { class: "flex justify-end p-[20px] gap-[10px] border-t w-full" };
3878
- function ln(s, e, t, a, r, i) {
3879
- const n = Y("IconGrid"), o = Y("VsPopover"), l = Y("IconMore"), c = Y("VsModal"), u = Y("VForm");
3880
- return p(), y("div", null, [
3881
- t.selected ? (p(), y("div", en, [
3886
+ }, Kr = { class: "h-[30px] w-[30px] flex items-center justify-center" }, en = { class: "flex flex-col items-start -ml-2 -mr-2" }, tn = { class: "p-4" }, sn = { class: "flex justify-end mt-4 gap-x-3" }, an = { class: "flex justify-end p-[20px] gap-[10px] border-t w-full" }, rn = { class: "flex justify-end p-[20px] gap-[10px] border-t w-full" };
3887
+ function nn(s, e, t, a, r, i) {
3888
+ const n = K("IconGrid"), o = K("VsPopover"), l = K("IconMore"), d = K("VsModal"), u = K("VForm");
3889
+ return h(), x("div", null, [
3890
+ t.selected ? (h(), x("div", Jr, [
3882
3891
  T(o, {
3883
3892
  placement: "left",
3884
3893
  trigger: "hover"
3885
3894
  }, {
3886
3895
  reference: j(() => [
3887
- h("button", {
3896
+ c("button", {
3888
3897
  class: "h-[30px] w-[30px] flex items-center justify-center",
3889
- onClick: e[0] || (e[0] = (f) => r.isFormGrid = !0)
3898
+ onClick: e[0] || (e[0] = (p) => r.isFormGrid = !0)
3890
3899
  }, [
3891
3900
  T(n, { class: "h-[20px] text-gray-500" })
3892
3901
  ])
@@ -3903,20 +3912,20 @@ function ln(s, e, t, a, r, i) {
3903
3912
  reference: j(() => [
3904
3913
  T(o, { placement: "bottom-left" }, {
3905
3914
  reference: j(() => [
3906
- h("button", tn, [
3915
+ c("button", Kr, [
3907
3916
  T(l, { class: "h-[20px]" })
3908
3917
  ])
3909
3918
  ]),
3910
3919
  default: j(() => [
3911
- h("div", sn, [
3912
- h("button", {
3913
- onClick: e[1] || (e[1] = (f) => {
3920
+ c("div", en, [
3921
+ c("button", {
3922
+ onClick: e[1] || (e[1] = (p) => {
3914
3923
  i.closePopover(), r.isFormEdit = !0;
3915
3924
  }),
3916
3925
  class: "px-[8px] py-[4px] hover:bg-gray-100 w-full text-start rounded-lg"
3917
3926
  }, " Редагувати дашборд "),
3918
- h("button", {
3919
- onClick: e[2] || (e[2] = (f) => {
3927
+ c("button", {
3928
+ onClick: e[2] || (e[2] = (p) => {
3920
3929
  i.closePopover(), r.isDeleteConfirm = !0;
3921
3930
  }),
3922
3931
  class: "px-[8px] py-[4px] hover:bg-gray-100 w-full text-start rounded-lg"
@@ -3932,47 +3941,47 @@ function ln(s, e, t, a, r, i) {
3932
3941
  _: 1
3933
3942
  })
3934
3943
  ])) : A("", !0),
3935
- T(c, {
3944
+ T(d, {
3936
3945
  teleport: "#modal",
3937
3946
  visible: r.isDeleteConfirm,
3938
3947
  size: "small",
3939
3948
  title: "Ви впевнені?",
3940
- onClose: e[5] || (e[5] = (f) => r.isDeleteConfirm = !1)
3949
+ onClose: e[5] || (e[5] = (p) => r.isDeleteConfirm = !1)
3941
3950
  }, {
3942
3951
  default: j(() => [
3943
- h("div", an, [
3944
- e[16] || (e[16] = h("p", { class: "mt-1 text-gray-500 dark:text-neutral-500" }, " Ви впевнені, що хочете видалити цей дашборд? ", -1)),
3945
- h("div", rn, [
3946
- h("button", {
3952
+ c("div", tn, [
3953
+ e[16] || (e[16] = c("p", { class: "mt-1 text-gray-500 dark:text-neutral-500" }, " Ви впевнені, що хочете видалити цей дашборд? ", -1)),
3954
+ c("div", sn, [
3955
+ c("button", {
3947
3956
  type: "button",
3948
3957
  class: "inline-flex items-center px-3 py-2 text-sm font-medium text-gray-800 bg-white border border-gray-200 rounded-lg shadow-sm gap-x-2 hover:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-50 dark:bg-neutral-800 dark:border-neutral-700 dark:text-neutral-300 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700",
3949
- onClick: e[3] || (e[3] = (f) => r.isDeleteConfirm = !1)
3958
+ onClick: e[3] || (e[3] = (p) => r.isDeleteConfirm = !1)
3950
3959
  }, " Скасувати "),
3951
- h("button", {
3960
+ c("button", {
3952
3961
  type: "button",
3953
3962
  class: "inline-flex items-center px-3 py-2 text-sm font-semibold text-white bg-red-500 border border-transparent rounded-lg gap-x-2 hover:bg-red-600 disabled:opacity-50 disabled:pointer-events-none",
3954
- onClick: e[4] || (e[4] = (...f) => i.deleteDashboard && i.deleteDashboard(...f))
3963
+ onClick: e[4] || (e[4] = (...p) => i.deleteDashboard && i.deleteDashboard(...p))
3955
3964
  }, " Так, я впевнена(ий) ")
3956
3965
  ])
3957
3966
  ])
3958
3967
  ]),
3959
3968
  _: 1
3960
3969
  }, 8, ["visible"]),
3961
- T(c, {
3970
+ T(d, {
3962
3971
  teleport: "#modal",
3963
3972
  visible: r.isFormEdit,
3964
3973
  title: "Редагувати дашборд",
3965
- onClose: e[9] || (e[9] = (f) => r.isFormEdit = !1)
3974
+ onClose: e[9] || (e[9] = (p) => r.isFormEdit = !1)
3966
3975
  }, {
3967
3976
  footer: j(() => [
3968
- h("div", nn, [
3969
- h("button", {
3977
+ c("div", an, [
3978
+ c("button", {
3970
3979
  style: { border: "1px solid #000" },
3971
- onClick: e[7] || (e[7] = (f) => r.isFormEdit = !1),
3980
+ onClick: e[7] || (e[7] = (p) => r.isFormEdit = !1),
3972
3981
  class: "py-2 px-3 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-black border-gray-200 rounded-lg !border-gray-200 hover:bg-gray-100 duration-300"
3973
3982
  }, " Скасувати "),
3974
- h("button", {
3975
- onClick: e[8] || (e[8] = (...f) => i.editDashboard && i.editDashboard(...f)),
3983
+ c("button", {
3984
+ onClick: e[8] || (e[8] = (...p) => i.editDashboard && i.editDashboard(...p)),
3976
3985
  class: "py-2 px-3 inline-flex items-center gap-x-2 text-[14px] font-[400] whitespace-nowrap text-white bg-blue-500 rounded-lg !border-gray-200 hover:bg-blue-700 duration-300"
3977
3986
  }, " Зберегти ")
3978
3987
  ])
@@ -3982,26 +3991,26 @@ function ln(s, e, t, a, r, i) {
3982
3991
  ref: "formEdit",
3983
3992
  schema: r.editDashboardScheme,
3984
3993
  values: r.formEditValue,
3985
- "onUpdate:values": e[6] || (e[6] = (f) => r.formEditValue = f)
3994
+ "onUpdate:values": e[6] || (e[6] = (p) => r.formEditValue = p)
3986
3995
  }, null, 8, ["schema", "values"])
3987
3996
  ]),
3988
3997
  _: 1
3989
3998
  }, 8, ["visible"]),
3990
- T(c, {
3999
+ T(d, {
3991
4000
  teleport: "#modal",
3992
4001
  visible: r.isFormGrid,
3993
4002
  title: "Редагувати структуру дашборду",
3994
- onClose: e[13] || (e[13] = (f) => r.isFormGrid = !1)
4003
+ onClose: e[13] || (e[13] = (p) => r.isFormGrid = !1)
3995
4004
  }, {
3996
4005
  footer: j(() => [
3997
- h("div", on, [
3998
- h("button", {
4006
+ c("div", rn, [
4007
+ c("button", {
3999
4008
  style: { border: "1px solid #000" },
4000
- onClick: e[11] || (e[11] = (f) => r.isFormGrid = !1),
4009
+ onClick: e[11] || (e[11] = (p) => r.isFormGrid = !1),
4001
4010
  class: "py-2 px-3 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-black border-gray-200 rounded-lg !border-gray-200 hover:bg-gray-100 duration-300"
4002
4011
  }, " Скасувати "),
4003
- h("button", {
4004
- onClick: e[12] || (e[12] = (...f) => i.editDashboardGrid && i.editDashboardGrid(...f)),
4012
+ c("button", {
4013
+ onClick: e[12] || (e[12] = (...p) => i.editDashboardGrid && i.editDashboardGrid(...p)),
4005
4014
  class: "py-2 px-3 inline-flex items-center gap-x-2 text-[14px] font-[400] whitespace-nowrap text-white bg-blue-500 rounded-lg !border-gray-200 hover:bg-blue-700 duration-300"
4006
4015
  }, " Зберегти ")
4007
4016
  ])
@@ -4011,23 +4020,23 @@ function ln(s, e, t, a, r, i) {
4011
4020
  ref: "formgrid",
4012
4021
  schema: r.editGridScheme,
4013
4022
  values: r.formGridValue,
4014
- "onUpdate:values": e[10] || (e[10] = (f) => r.formGridValue = f)
4023
+ "onUpdate:values": e[10] || (e[10] = (p) => r.formGridValue = p)
4015
4024
  }, null, 8, ["schema", "values"])
4016
4025
  ]),
4017
4026
  _: 1
4018
4027
  }, 8, ["visible"])
4019
4028
  ]);
4020
4029
  }
4021
- const cn = /* @__PURE__ */ Q(Jr, [["render", ln]]), dn = { class: "flex-1 min-w-0 flex flex-col overflow-auto" }, un = { class: "max-w-7xl mx-auto px-6 w-full flex flex-col min-h-0 flex-1" }, hn = { class: "relative z-10 shrink-0 mt-4 mb-6" }, pn = { class: "flex items-center text-sm text-gray-600" }, fn = {
4030
+ const on = /* @__PURE__ */ Q(Yr, [["render", nn]]), ln = { class: "flex-1 min-w-0 flex flex-col overflow-auto" }, dn = { class: "max-w-7xl mx-auto px-6 w-full flex flex-col min-h-0 flex-1" }, cn = { class: "relative z-10 shrink-0 mt-4 mb-6" }, un = { class: "flex items-center text-sm text-gray-600" }, hn = {
4022
4031
  key: 0,
4023
4032
  class: "flex items-center justify-between gap-4 mt-3"
4024
- }, gn = { class: "min-w-0" }, mn = { class: "text-2xl font-bold text-gray-900" }, bn = {
4033
+ }, pn = { class: "min-w-0" }, fn = { class: "text-2xl font-bold text-gray-900" }, gn = {
4025
4034
  key: 0,
4026
4035
  class: "mt-1.5 text-sm text-gray-600"
4027
- }, xn = { class: "flex items-center shrink-0" }, yn = {
4036
+ }, mn = { class: "flex items-center shrink-0" }, bn = {
4028
4037
  key: 1,
4029
4038
  class: "grid flex-grow w-full grid-cols-12 gap-4 py-4 pr-[15px] min-h-0 overflow-auto [&::-webkit-scrollbar]:h-2 [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-stone-100 [&::-webkit-scrollbar-thumb]:bg-stone-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500"
4030
- }, wn = {
4039
+ }, xn = {
4031
4040
  __name: "vs-editor",
4032
4041
  props: {
4033
4042
  prefix: String,
@@ -4038,122 +4047,122 @@ const cn = /* @__PURE__ */ Q(Jr, [["render", ln]]), dn = { class: "flex-1 min-w-
4038
4047
  emits: ["back"],
4039
4048
  setup(s, { emit: e }) {
4040
4049
  const t = s;
4041
- Ze(t.prefix || "/api");
4042
- const a = e, r = we(), i = F(() => r.hasRoute(K.EditorWidget)), n = He("biClearDashboard", null), o = I(t.initialDashboardId || ""), l = I(t.initialWidgetId || ""), c = I(null), u = I(null), f = I(null);
4043
- te(() => t.initialWidgetId, (w) => {
4044
- l.value = w || "";
4050
+ He(t.prefix || "/api");
4051
+ const a = e, r = we(), i = q(() => r.hasRoute(J.EditorWidget)), n = Qt("biClearDashboard", null), o = I(t.initialDashboardId || ""), l = I(t.initialWidgetId || ""), d = I(null), u = I(null), p = I(null);
4052
+ ae(() => t.initialWidgetId, (y) => {
4053
+ l.value = y || "";
4045
4054
  });
4046
4055
  const v = async () => {
4047
4056
  if (!o.value) {
4048
- c.value = null;
4057
+ d.value = null;
4049
4058
  return;
4050
4059
  }
4051
4060
  try {
4052
- const w = await H.get(
4061
+ const y = await H.get(
4053
4062
  `/bi-dashboard/${o.value}`
4054
4063
  );
4055
- c.value = w;
4056
- } catch (w) {
4057
- console.error(w);
4064
+ d.value = y;
4065
+ } catch (y) {
4066
+ console.error(y);
4058
4067
  }
4059
- }, g = F(
4068
+ }, m = q(
4060
4069
  () => {
4061
- var w, d, x;
4062
- return (x = Array.isArray((w = c.value) == null ? void 0 : w.widgets) ? (d = c.value) == null ? void 0 : d.widgets : []) == null ? void 0 : x.find((_) => (_ == null ? void 0 : _.name) === l.value);
4070
+ var y, f, w;
4071
+ return (w = Array.isArray((y = d.value) == null ? void 0 : y.widgets) ? (f = d.value) == null ? void 0 : f.widgets : []) == null ? void 0 : w.find(($) => ($ == null ? void 0 : $.name) === l.value);
4063
4072
  }
4064
4073
  );
4065
- function b(w) {
4074
+ function b(y) {
4066
4075
  i.value ? r.push({
4067
- name: K.EditorWidget,
4068
- params: { dashboardId: o.value, widgetId: w }
4069
- }) : l.value = w;
4076
+ name: J.EditorWidget,
4077
+ params: { dashboardId: o.value, widgetId: y }
4078
+ }) : l.value = y;
4070
4079
  }
4071
4080
  function k() {
4072
4081
  i.value ? r.push({
4073
- name: K.EditorDashboard,
4082
+ name: J.EditorDashboard,
4074
4083
  params: { dashboardId: o.value }
4075
4084
  }) : l.value = "";
4076
4085
  }
4077
- function $() {
4078
- i.value ? r.push({ name: K.Editor }) : (typeof n == "function" && n(), a("back"));
4086
+ function D() {
4087
+ i.value ? r.push({ name: J.Editor }) : (typeof n == "function" && n(), a("back"));
4079
4088
  }
4080
- const V = F(() => {
4081
- var x, _, D, m, C;
4082
- const d = [i.value ? { label: "Дашборди", to: { name: K.Editor } } : { label: "Дашборди", onClick: $ }];
4083
- if ((x = c.value) != null && x.title || o.value) {
4084
- const z = ((_ = c.value) == null ? void 0 : _.title) || o.value || "Редактор";
4085
- !!l.value ? d.push(
4086
- i.value ? { label: z, to: { name: K.EditorDashboard, params: { dashboardId: o.value } } } : { label: z, onClick: () => {
4089
+ const V = q(() => {
4090
+ var w, $, _, g, C;
4091
+ const f = [i.value ? { label: "Дашборди", to: { name: J.Editor } } : { label: "Дашборди", onClick: D }];
4092
+ if ((w = d.value) != null && w.title || o.value) {
4093
+ const z = (($ = d.value) == null ? void 0 : $.title) || o.value || "Редактор";
4094
+ !!l.value ? f.push(
4095
+ i.value ? { label: z, to: { name: J.EditorDashboard, params: { dashboardId: o.value } } } : { label: z, onClick: () => {
4087
4096
  l.value = "";
4088
4097
  } }
4089
- ) : d.push({ label: z });
4098
+ ) : f.push({ label: z });
4090
4099
  } else
4091
- d.push({ label: "Редактор" });
4092
- if (l.value && g.value) {
4093
- const z = ((m = (D = g.value) == null ? void 0 : D.data) == null ? void 0 : m.title) || ((C = g.value) == null ? void 0 : C.title) || l.value;
4094
- d.push({ label: z });
4100
+ f.push({ label: "Редактор" });
4101
+ if (l.value && m.value) {
4102
+ const z = ((g = (_ = m.value) == null ? void 0 : _.data) == null ? void 0 : g.title) || ((C = m.value) == null ? void 0 : C.title) || l.value;
4103
+ f.push({ label: z });
4095
4104
  }
4096
- return d;
4105
+ return f;
4097
4106
  });
4098
- return te(o, (w, d) => {
4099
- d && (l.value = ""), w ? v() : (c.value = null, $());
4107
+ return ae(o, (y, f) => {
4108
+ f && (l.value = ""), y ? v() : (d.value = null, D());
4100
4109
  }), le(() => {
4101
4110
  v();
4102
- }), (w, d) => {
4103
- var x, _;
4104
- return p(), y("div", {
4105
- class: ee(["flex w-full h-full", [s.customClass]])
4111
+ }), (y, f) => {
4112
+ var w, $;
4113
+ return h(), x("div", {
4114
+ class: se(["flex w-full h-full", [s.customClass]])
4106
4115
  }, [
4107
- h("div", dn, [
4108
- h("div", un, [
4109
- h("div", hn, [
4110
- h("div", pn, [
4111
- T(Yt, {
4116
+ c("div", ln, [
4117
+ c("div", dn, [
4118
+ c("div", cn, [
4119
+ c("div", un, [
4120
+ T(Jt, {
4112
4121
  items: V.value,
4113
4122
  compact: ""
4114
4123
  }, null, 8, ["items"])
4115
4124
  ]),
4116
- o.value && c.value ? (p(), y("div", fn, [
4117
- h("div", gn, [
4118
- h("h1", mn, W(c.value.title || o.value), 1),
4119
- c.value.description ? (p(), y("p", bn, W(c.value.description), 1)) : A("", !0)
4125
+ o.value && d.value ? (h(), x("div", hn, [
4126
+ c("div", pn, [
4127
+ c("h1", fn, W(d.value.title || o.value), 1),
4128
+ d.value.description ? (h(), x("p", gn, W(d.value.description), 1)) : A("", !0)
4120
4129
  ]),
4121
- h("div", xn, [
4122
- l.value ? (p(), y("button", {
4130
+ c("div", mn, [
4131
+ l.value ? (h(), x("button", {
4123
4132
  key: 0,
4124
4133
  type: "button",
4125
4134
  class: "flex items-center gap-1.5 px-3 py-1.5 text-sm text-gray-600 hover:text-gray-900 hover:bg-gray-100 rounded-lg transition-colors",
4126
4135
  onClick: k
4127
4136
  }, [
4128
- T(E(Es), { class: "w-4 h-4" }),
4129
- d[5] || (d[5] = X(" Закрити ", -1))
4130
- ])) : (p(), y(U, { key: 1 }, [
4131
- T(cn, {
4137
+ T(N(Bs), { class: "w-4 h-4" }),
4138
+ f[5] || (f[5] = X(" Закрити ", -1))
4139
+ ])) : (h(), x(U, { key: 1 }, [
4140
+ T(on, {
4132
4141
  selected: o.value,
4133
- "onUpdate:selected": d[0] || (d[0] = (D) => o.value = D),
4134
- dashboardData: c.value,
4135
- columns: (x = c.value) == null ? void 0 : x.columns,
4136
- selectedWidgetData: g.value,
4142
+ "onUpdate:selected": f[0] || (f[0] = (_) => o.value = _),
4143
+ dashboardData: d.value,
4144
+ columns: (w = d.value) == null ? void 0 : w.columns,
4145
+ selectedWidgetData: m.value,
4137
4146
  prefix: s.prefix,
4138
4147
  onUpdateEditor: v
4139
4148
  }, null, 8, ["selected", "dashboardData", "columns", "selectedWidgetData", "prefix"]),
4140
- h("button", {
4149
+ c("button", {
4141
4150
  type: "button",
4142
4151
  class: "ml-4 flex items-center gap-2 px-4 py-2 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors shadow-sm font-medium",
4143
- onClick: d[1] || (d[1] = (D) => {
4144
- var m, C;
4145
- return (C = (m = f.value) == null ? void 0 : m.open) == null ? void 0 : C.call(m);
4152
+ onClick: f[1] || (f[1] = (_) => {
4153
+ var g, C;
4154
+ return (C = (g = p.value) == null ? void 0 : g.open) == null ? void 0 : C.call(g);
4146
4155
  })
4147
- }, [...d[6] || (d[6] = [
4148
- h("span", { class: "leading-none" }, "+", -1),
4156
+ }, [...f[6] || (f[6] = [
4157
+ c("span", { class: "leading-none" }, "+", -1),
4149
4158
  X(" Створити віджет ", -1)
4150
4159
  ])]),
4151
- o.value ? (p(), N(Pa, {
4160
+ o.value ? (h(), E(Ba, {
4152
4161
  key: 0,
4153
4162
  ref_key: "createWidgetRef",
4154
- ref: f,
4163
+ ref: p,
4155
4164
  inline: "",
4156
- columns: (_ = c.value) == null ? void 0 : _.columns,
4165
+ columns: ($ = d.value) == null ? void 0 : $.columns,
4157
4166
  selectedDashboard: o.value,
4158
4167
  onUpdateData: v
4159
4168
  }, null, 8, ["columns", "selectedDashboard"])) : A("", !0)
@@ -4161,49 +4170,49 @@ const cn = /* @__PURE__ */ Q(Jr, [["render", ln]]), dn = { class: "flex-1 min-w-
4161
4170
  ])
4162
4171
  ])) : A("", !0)
4163
4172
  ]),
4164
- l.value && c.value ? (p(), N(Zr, {
4173
+ l.value && d.value ? (h(), E(Gr, {
4165
4174
  key: 0,
4166
4175
  "selected-widget": l.value,
4167
- "onUpdate:selectedWidget": d[2] || (d[2] = (D) => l.value = D),
4168
- "selected-widget-data": g.value,
4176
+ "onUpdate:selectedWidget": f[2] || (f[2] = (_) => l.value = _),
4177
+ "selected-widget-data": m.value,
4169
4178
  "current-widget-data": u.value,
4170
4179
  "selected-dashboard": o.value,
4171
- "dashboard-widgets": c.value.widgets || [],
4180
+ "dashboard-widgets": d.value.widgets || [],
4172
4181
  onUpdateData: v
4173
- }, null, 8, ["selected-widget", "selected-widget-data", "current-widget-data", "selected-dashboard", "dashboard-widgets"])) : (p(), y("div", yn, [
4174
- c.value ? (p(!0), y(U, { key: 1 }, Z(c.value.panels, (D, m) => {
4182
+ }, null, 8, ["selected-widget", "selected-widget-data", "current-widget-data", "selected-dashboard", "dashboard-widgets"])) : (h(), x("div", bn, [
4183
+ d.value ? (h(!0), x(U, { key: 1 }, Z(d.value.panels, (_, g) => {
4175
4184
  var C;
4176
- return p(), y("div", {
4177
- key: m,
4178
- class: ee([`md:col-span-${D.col || 12} col-span-12`, "flex flex-col gap-[10px]"])
4185
+ return h(), x("div", {
4186
+ key: g,
4187
+ class: se([`md:col-span-${_.col || 12} col-span-12`, "flex flex-col gap-[10px]"])
4179
4188
  }, [
4180
- (C = D.widgets) != null && C.length ? (p(!0), y(U, { key: 0 }, Z(D.widgets, (z) => (p(), N(Oe, {
4189
+ (C = _.widgets) != null && C.length ? (h(!0), x(U, { key: 0 }, Z(_.widgets, (z) => (h(), E(Oe, {
4181
4190
  onClick: (R) => b(z),
4182
- "onUpdate:currentWidgetData": d[3] || (d[3] = (R) => u.value = R),
4191
+ "onUpdate:currentWidgetData": f[3] || (f[3] = (R) => u.value = R),
4183
4192
  key: z,
4184
4193
  dashboard: o.value,
4185
4194
  widget: z,
4186
4195
  selectedWidget: l.value,
4187
- "dashboard-widgets": c.value.widgets,
4188
- height: Number(D.height ?? 480),
4189
- class: ee({
4196
+ "dashboard-widgets": d.value.widgets,
4197
+ height: Number(_.height ?? 480),
4198
+ class: se({
4190
4199
  "border border-blue-500": l.value === z
4191
4200
  })
4192
- }, null, 8, ["onClick", "dashboard", "widget", "selectedWidget", "dashboard-widgets", "height", "class"]))), 128)) : (p(), N(Oe, {
4201
+ }, null, 8, ["onClick", "dashboard", "widget", "selectedWidget", "dashboard-widgets", "height", "class"]))), 128)) : (h(), E(Oe, {
4193
4202
  key: 1,
4194
- onClick: (z) => b(D.widget),
4195
- "onUpdate:currentWidgetData": d[4] || (d[4] = (z) => u.value = z),
4196
- class: ee(["flex flex-col", {
4197
- "border border-blue-500": l.value === D.widget
4203
+ onClick: (z) => b(_.widget),
4204
+ "onUpdate:currentWidgetData": f[4] || (f[4] = (z) => u.value = z),
4205
+ class: se(["flex flex-col", {
4206
+ "border border-blue-500": l.value === _.widget
4198
4207
  }]),
4199
4208
  dashboard: o.value,
4200
- widget: D.widget,
4209
+ widget: _.widget,
4201
4210
  selectedWidget: l.value,
4202
- "dashboard-widgets": c.value.widgets,
4203
- height: Number(D.height ?? 480)
4211
+ "dashboard-widgets": d.value.widgets,
4212
+ height: Number(_.height ?? 480)
4204
4213
  }, null, 8, ["onClick", "class", "dashboard", "widget", "selectedWidget", "dashboard-widgets", "height"]))
4205
4214
  ], 2);
4206
- }), 128)) : (p(), N(Pe, {
4215
+ }), 128)) : (h(), E(Pe, {
4207
4216
  key: 0,
4208
4217
  class: "col-span-12"
4209
4218
  }))
@@ -4213,7 +4222,7 @@ const cn = /* @__PURE__ */ Q(Jr, [["render", ln]]), dn = { class: "flex-1 min-w-
4213
4222
  ], 2);
4214
4223
  };
4215
4224
  }
4216
- }, vn = /* @__PURE__ */ Q(wn, [["__scopeId", "data-v-f586e5b0"]]), kn = { class: "w-full h-screen" }, $n = /* @__PURE__ */ ge({
4225
+ }, yn = /* @__PURE__ */ Q(xn, [["__scopeId", "data-v-f586e5b0"]]), wn = { class: "w-full h-screen" }, vn = /* @__PURE__ */ ge({
4217
4226
  __name: "vs-editor-page",
4218
4227
  props: {
4219
4228
  prefix: { default: "/api" },
@@ -4222,8 +4231,8 @@ const cn = /* @__PURE__ */ Q(Jr, [["render", ln]]), dn = { class: "flex-1 min-w-
4222
4231
  },
4223
4232
  emits: ["back"],
4224
4233
  setup(s) {
4225
- return (e, t) => (p(), y("div", kn, [
4226
- T(vn, {
4234
+ return (e, t) => (h(), x("div", wn, [
4235
+ T(yn, {
4227
4236
  customClass: "h-full w-full",
4228
4237
  prefix: s.prefix,
4229
4238
  "initial-dashboard-id": s.dashboardId,
@@ -4232,17 +4241,17 @@ const cn = /* @__PURE__ */ Q(Jr, [["render", ln]]), dn = { class: "flex-1 min-w-
4232
4241
  }, null, 8, ["prefix", "initial-dashboard-id", "initial-widget-id"])
4233
4242
  ]));
4234
4243
  }
4235
- }), _n = { class: "relative group h-full" }, Dn = { class: "flex items-start gap-3 flex-1 min-h-0" }, Cn = { class: "p-2 bg-blue-50 rounded-lg group-hover:bg-blue-100 transition-colors shrink-0" }, zn = { class: "flex-1 min-w-0 flex flex-col min-h-0" }, Tn = { class: "font-semibold text-gray-900 mb-1 truncate" }, In = {
4244
+ }), kn = { class: "relative group h-full" }, $n = { class: "flex items-start gap-3 flex-1 min-h-0" }, _n = { class: "p-2 bg-blue-50 rounded-lg group-hover:bg-blue-100 transition-colors shrink-0" }, Dn = { class: "flex-1 min-w-0 flex flex-col min-h-0" }, Cn = { class: "font-semibold text-gray-900 mb-1 truncate" }, zn = {
4236
4245
  key: 0,
4237
4246
  class: "text-sm text-gray-600 mb-2 line-clamp-2 min-h-10"
4238
- }, Sn = {
4247
+ }, Tn = {
4239
4248
  key: 1,
4240
4249
  class: "text-sm text-gray-600 mb-2 line-clamp-2 min-h-10 invisible",
4241
4250
  "aria-hidden": "true"
4242
- }, Rn = {
4251
+ }, In = {
4243
4252
  key: 2,
4244
4253
  class: "text-sm text-gray-400 mt-1 shrink-0"
4245
- }, Vn = {
4254
+ }, Sn = {
4246
4255
  __name: "dashboard-card",
4247
4256
  props: {
4248
4257
  title: String,
@@ -4257,104 +4266,107 @@ const cn = /* @__PURE__ */ Q(Jr, [["render", ln]]), dn = { class: "flex-1 min-w-
4257
4266
  setup(s) {
4258
4267
  const e = s, t = we(), a = I(!1);
4259
4268
  function r() {
4260
- e.dashboardRouteName && (t.hasRoute(K.EditorDashboard) ? t.push({
4261
- name: K.EditorDashboard,
4269
+ e.dashboardRouteName && (t.hasRoute(J.EditorDashboard) ? t.push({
4270
+ name: J.EditorDashboard,
4262
4271
  params: { dashboardId: e.dashboardRouteName }
4263
4272
  }) : e.onOpenEditor ? e.onOpenEditor(e.dashboardRouteName) : t.push({ path: "/editor", query: { dashboard: e.dashboardRouteName } }));
4264
4273
  }
4265
4274
  function i(n) {
4266
4275
  n.target.closest(".dashboard-card-menu") || (a.value = !1);
4267
4276
  }
4268
- return le(() => document.addEventListener("click", i)), Ue(() => document.removeEventListener("click", i)), (n, o) => (p(), y("div", _n, [
4269
- h("button", {
4277
+ return le(() => document.addEventListener("click", i)), Ue(() => document.removeEventListener("click", i)), (n, o) => (h(), x("div", kn, [
4278
+ c("button", {
4270
4279
  type: "button",
4271
4280
  class: "w-full h-full bg-white border border-gray-200 rounded-lg p-6 hover:shadow-md hover:border-blue-200 transition-all text-left animate-fade-in flex flex-col",
4272
4281
  onClick: r
4273
4282
  }, [
4274
- h("div", Dn, [
4275
- h("div", Cn, [
4276
- T(E(Ss), {
4283
+ c("div", $n, [
4284
+ c("div", _n, [
4285
+ T(N(Vs), {
4277
4286
  size: 24,
4278
4287
  class: "w-5 h-5 text-blue-600"
4279
4288
  })
4280
4289
  ]),
4281
- h("div", zn, [
4282
- h("h3", Tn, W(s.title), 1),
4283
- s.description ? (p(), y("p", In, W(s.description), 1)) : (p(), y("p", Sn, "   ")),
4284
- s.widgetCount != null ? (p(), y("p", Rn, W(s.widgetCount) + " віджетів ", 1)) : A("", !0)
4290
+ c("div", Dn, [
4291
+ c("h3", Cn, W(s.title), 1),
4292
+ s.description ? (h(), x("p", zn, W(s.description), 1)) : (h(), x("p", Tn, "   ")),
4293
+ s.widgetCount != null ? (h(), x("p", In, W(s.widgetCount) + " віджетів ", 1)) : A("", !0)
4285
4294
  ])
4286
4295
  ])
4287
4296
  ])
4288
4297
  ]));
4289
4298
  }
4290
- }, Ln = /* @__PURE__ */ Q(Vn, [["__scopeId", "data-v-716ced89"]]), Wn = [
4299
+ }, Rn = /* @__PURE__ */ Q(Sn, [["__scopeId", "data-v-716ced89"]]), Vn = [
4291
4300
  { type: "Text", key: "name", label: "Назва", validators: ["required"], original: { type: "Text", ua: "Назва", col: 8 } },
4292
4301
  { type: "Text", key: "title", label: "Заголовок", validators: ["required"], original: { type: "Text", ua: "Титул", col: 8 } },
4293
4302
  { type: "Text", key: "description", label: "Опис", original: { type: "Text", ua: "Назва", col: 8 } },
4294
4303
  { type: "Text", key: "words", label: "Ключові слова", original: { type: "Text", ua: "Назва", col: 8 } },
4295
- { type: "Text", key: "table_name", validators: ["required"], label: "Назва таблиці", original: { type: "Text", ua: "Назва", col: 8 } },
4304
+ { type: "Select", data: "pg.table_name", key: "table_name", validators: ["required"], label: "Назва", original: { type: "select", ua: "Назва", col: 8, data: "pg.table_name" } },
4296
4305
  { type: "Text", key: "db", label: "База даних", original: { type: "Text", ua: "Назва", col: 8 } },
4297
4306
  { type: "Text", key: "category", label: "Категорія", original: { type: "Text", ua: "Категорія", col: 8 } },
4298
4307
  { type: "Switcher", key: "public", label: "Публічний", original: { type: "Text", ua: "Назва", col: 8 } }
4299
4308
  ];
4300
- function Nn(s) {
4309
+ function Ln(s) {
4301
4310
  return !Array.isArray(s) || s.length === 0 ? {} : s.reduce((e, t) => {
4302
4311
  if (!t || t.key == null) return e;
4303
4312
  const { key: a, ...r } = t;
4304
4313
  return e[a] = r, e;
4305
4314
  }, {});
4306
4315
  }
4307
- const En = { class: "flex-1 bg-gray-50" }, jn = { class: "max-w-7xl mx-auto px-6 py-8" }, Bn = { class: "mb-6" }, On = { class: "flex items-center justify-between mb-6" }, Pn = { class: "flex justify-end p-[20px] gap-[10px] border-t w-full" }, An = { class: "flex items-center space-x-4" }, Fn = { class: "flex-1 relative" }, qn = {
4316
+ const Wn = { class: "flex-1 bg-gray-50" }, Nn = { class: "max-w-7xl mx-auto px-6 py-8" }, En = { class: "mb-6" }, jn = { class: "flex items-center justify-between mb-6" }, Bn = { class: "flex justify-end p-[20px] gap-[10px] border-t w-full" }, On = { class: "flex items-center space-x-4" }, Pn = { class: "flex-1 relative" }, An = { class: "relative" }, Fn = {
4308
4317
  key: 0,
4309
4318
  class: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6"
4310
- }, Mn = {
4319
+ }, qn = {
4311
4320
  key: 1,
4312
4321
  class: "flex flex-col items-center justify-center py-20 text-center"
4313
- }, Un = { class: "mt-1 text-sm text-gray-400" }, Gn = { class: "font-medium text-gray-500" }, Hn = /* @__PURE__ */ ge({
4322
+ }, Mn = { class: "mt-1 text-sm text-gray-400" }, Un = { class: "font-medium text-gray-500" }, Gn = /* @__PURE__ */ ge({
4314
4323
  __name: "all-dashboards-page",
4315
4324
  props: {
4316
4325
  prefix: {}
4317
4326
  },
4318
4327
  setup(s) {
4319
- const e = M(() => import("@opengis/form")), t = Nn(Wn), a = I([]), r = I([]), i = we(), n = He("biSetDashboard", void 0), o = s, l = I(null), c = I(!1), u = I({}), f = I(""), v = F(() => {
4320
- const d = f.value.trim().toLowerCase();
4321
- return d ? a.value.filter((x) => x.title.toLowerCase().includes(d)) : a.value;
4328
+ const e = M(() => import("@opengis/form")), t = Ln(Vn), a = I([]), r = I([]), i = we(), n = Qt("biSetDashboard", void 0), o = s, l = I(null), d = I(!1), u = I({}), p = I(""), v = I("title-asc"), m = q(() => {
4329
+ const w = p.value.trim().toLowerCase();
4330
+ let $ = a.value;
4331
+ w && ($ = $.filter((g) => g.title.toLowerCase().includes(w)));
4332
+ const _ = v.value === "title-asc" ? 1 : -1;
4333
+ return [...$].sort((g, C) => _ * g.title.localeCompare(C.title, "uk"));
4322
4334
  });
4323
- async function g() {
4335
+ async function b() {
4324
4336
  try {
4325
- const d = await H.get("/bi-dashboard?type=db"), x = Array.isArray(d == null ? void 0 : d.rows) ? d.rows : [];
4326
- r.value = x, a.value = x.map((_) => ({
4337
+ const w = await H.get("/bi-dashboard?type=db"), $ = Array.isArray(w == null ? void 0 : w.rows) ? w.rows : [];
4338
+ r.value = $, a.value = $.map((_) => ({
4327
4339
  routeName: String(_.name ?? ""),
4328
4340
  title: _.title ?? _.name ?? "Без назви",
4329
4341
  description: _.description ?? null,
4330
4342
  modified: "-",
4331
4343
  name: "-"
4332
4344
  }));
4333
- } catch (d) {
4334
- console.error("Failed to load dashboards", d), r.value = [], a.value = [];
4345
+ } catch (w) {
4346
+ console.error("Failed to load dashboards", w), r.value = [], a.value = [];
4335
4347
  }
4336
4348
  }
4337
- async function b() {
4338
- var x, _, D;
4339
- const d = (_ = (x = me()) == null ? void 0 : x.proxy) == null ? void 0 : _.$notify;
4349
+ async function k() {
4350
+ var $, _, g;
4351
+ const w = (_ = ($ = me()) == null ? void 0 : $.proxy) == null ? void 0 : _.$notify;
4340
4352
  try {
4341
- const m = (D = l.value) == null ? void 0 : D.validate();
4342
- typeof m == "function" && await m();
4343
- const { name: C, title: z, table_name: R } = u.value;
4344
- if (!C || !z || !R) {
4345
- d == null || d({ type: "error", title: "Помилка!", message: "Заповніть усі обов'язкові поля" });
4353
+ const C = (g = l.value) == null ? void 0 : g.validate();
4354
+ typeof C == "function" && await C();
4355
+ const { name: z, title: R, table_name: F } = u.value;
4356
+ if (!z || !R || !F) {
4357
+ w == null || w({ type: "error", title: "Помилка!", message: "Заповніть усі обов'язкові поля" });
4346
4358
  return;
4347
4359
  }
4348
- await H.post("/bi-dashboard", u.value), c.value = !1, u.value = {}, d == null || d({
4360
+ await H.post("/bi-dashboard", u.value), d.value = !1, u.value = {}, w == null || w({
4349
4361
  type: "success",
4350
4362
  title: "Успішно!",
4351
4363
  message: "Дашборд створено успішно"
4352
- }), i.hasRoute(K.EditorDashboard) ? i.push({
4353
- name: K.EditorDashboard,
4354
- params: { dashboardId: C }
4355
- }) : n ? n(C) : await g();
4364
+ }), i.hasRoute(J.EditorDashboard) ? i.push({
4365
+ name: J.EditorDashboard,
4366
+ params: { dashboardId: z }
4367
+ }) : n ? n(z) : await b();
4356
4368
  } catch {
4357
- d == null || d({
4369
+ w == null || w({
4358
4370
  type: "error",
4359
4371
  title: "Помилка!",
4360
4372
  message: "При спробі створити дашборд виникла помилка"
@@ -4362,119 +4374,134 @@ const En = { class: "flex-1 bg-gray-50" }, jn = { class: "max-w-7xl mx-auto px-6
4362
4374
  }
4363
4375
  }
4364
4376
  le(() => {
4365
- Ze(o.prefix || "/api"), g();
4377
+ He(o.prefix || "/api"), b();
4366
4378
  });
4367
- const k = I(1), $ = () => {
4368
- const d = window.innerWidth;
4369
- k.value = d >= 1024 ? 3 : d >= 768 ? 2 : 1;
4379
+ const D = I(1), V = () => {
4380
+ const w = window.innerWidth;
4381
+ D.value = w >= 1024 ? 3 : w >= 768 ? 2 : 1;
4370
4382
  };
4371
4383
  le(() => {
4372
- $(), window.addEventListener("resize", $);
4384
+ V(), window.addEventListener("resize", V);
4373
4385
  }), Ue(() => {
4374
- window.removeEventListener("resize", $);
4386
+ window.removeEventListener("resize", V);
4375
4387
  });
4376
- const V = (d) => d ? d.trim().length > 70 ? 2 : 1 : 0, w = (d) => {
4377
- const x = k.value || 1, D = Math.floor(d / x) * x, m = D + x, C = v.value.slice(D, m);
4378
- let z = 0;
4379
- for (const R of C) {
4380
- const q = V(R.description ?? null);
4381
- if (q > z && (z = q), z === 2) break;
4388
+ const y = (w) => w ? w.trim().length > 70 ? 2 : 1 : 0, f = (w) => {
4389
+ const $ = D.value || 1, g = Math.floor(w / $) * $, C = g + $, z = m.value.slice(g, C);
4390
+ let R = 0;
4391
+ for (const F of z) {
4392
+ const Y = y(F.description ?? null);
4393
+ if (Y > R && (R = Y), R === 2) break;
4382
4394
  }
4383
- return z;
4395
+ return R;
4384
4396
  };
4385
- return I("grid"), (d, x) => (p(), y("div", En, [
4386
- h("div", jn, [
4387
- h("div", Bn, [
4388
- h("div", On, [
4389
- x[6] || (x[6] = h("div", null, [
4390
- h("h1", { class: "text-3xl font-bold text-gray-900" }, "Дашборди"),
4391
- h("p", { class: "mt-2 text-gray-600" }, " Керуйте та переглядайте свої аналітичні дашборди ")
4397
+ return I("grid"), (w, $) => (h(), x("div", Wn, [
4398
+ c("div", Nn, [
4399
+ c("div", En, [
4400
+ c("div", jn, [
4401
+ $[7] || ($[7] = c("div", null, [
4402
+ c("h1", { class: "text-3xl font-bold text-gray-900" }, "Дашборди"),
4403
+ c("p", { class: "mt-2 text-gray-600" }, " Керуйте та переглядайте свої аналітичні дашборди ")
4392
4404
  ], -1)),
4393
- h("button", {
4405
+ c("button", {
4394
4406
  type: "button",
4395
4407
  class: "flex items-center gap-2 px-4 py-2.5 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors shadow-sm font-medium",
4396
- onClick: x[0] || (x[0] = (_) => c.value = !0)
4408
+ onClick: $[0] || ($[0] = (_) => d.value = !0)
4397
4409
  }, [
4398
- T(E(Qt), {
4410
+ T(N(Xt), {
4399
4411
  size: 24,
4400
4412
  class: "w-4 h-4"
4401
4413
  }),
4402
- x[5] || (x[5] = h("span", null, "Новий дашборд", -1))
4414
+ $[6] || ($[6] = c("span", null, "Новий дашборд", -1))
4403
4415
  ])
4404
4416
  ]),
4405
4417
  T(Ve, {
4406
4418
  teleport: "#modal",
4407
- visible: c.value,
4419
+ visible: d.value,
4408
4420
  title: "Створити дашборд",
4409
- onClose: x[3] || (x[3] = (_) => c.value = !1)
4421
+ onClose: $[3] || ($[3] = (_) => d.value = !1)
4410
4422
  }, {
4411
4423
  footer: j(() => [
4412
- h("div", Pn, [
4413
- h("button", {
4424
+ c("div", Bn, [
4425
+ c("button", {
4414
4426
  type: "button",
4415
4427
  class: "py-2 px-3 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-black border border-gray-200 rounded-lg hover:bg-gray-100 duration-300",
4416
- onClick: x[2] || (x[2] = (_) => c.value = !1)
4428
+ onClick: $[2] || ($[2] = (_) => d.value = !1)
4417
4429
  }, " Скасувати "),
4418
- h("button", {
4430
+ c("button", {
4419
4431
  type: "button",
4420
4432
  class: "py-2 px-3 inline-flex items-center gap-x-2 text-[14px] font-[400] whitespace-nowrap text-white bg-blue-500 rounded-lg hover:bg-blue-700 duration-300",
4421
- onClick: b
4433
+ onClick: k
4422
4434
  }, " Зберегти ")
4423
4435
  ])
4424
4436
  ]),
4425
4437
  default: j(() => [
4426
- T(E(e), {
4438
+ T(N(e), {
4427
4439
  ref_key: "createFormRef",
4428
4440
  ref: l,
4429
- schema: E(t),
4441
+ schema: N(t),
4430
4442
  values: u.value,
4431
- "onUpdate:values": x[1] || (x[1] = (_) => u.value = _)
4443
+ "onUpdate:values": $[1] || ($[1] = (_) => u.value = _)
4432
4444
  }, null, 8, ["schema", "values"])
4433
4445
  ]),
4434
4446
  _: 1
4435
4447
  }, 8, ["visible"]),
4436
- h("div", An, [
4437
- h("div", Fn, [
4438
- T(E(Wt), {
4448
+ c("div", On, [
4449
+ c("div", Pn, [
4450
+ T(N(Wt), {
4439
4451
  size: 24,
4440
4452
  class: "absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400"
4441
4453
  }),
4442
- Ht(h("input", {
4443
- "onUpdate:modelValue": x[4] || (x[4] = (_) => f.value = _),
4454
+ et(c("input", {
4455
+ "onUpdate:modelValue": $[4] || ($[4] = (_) => p.value = _),
4444
4456
  type: "text",
4445
4457
  placeholder: "Пошук дашбордів...",
4446
4458
  class: "w-full pl-10 pr-4 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500"
4447
4459
  }, null, 512), [
4448
- [ys, f.value]
4460
+ [xs, p.value]
4449
4461
  ])
4462
+ ]),
4463
+ c("div", An, [
4464
+ et(c("select", {
4465
+ "onUpdate:modelValue": $[5] || ($[5] = (_) => v.value = _),
4466
+ class: "appearance-none pl-3 pr-8 py-2 border border-gray-300 rounded-lg bg-white text-sm text-gray-700 cursor-pointer focus:outline-none focus:ring-2 focus:ring-blue-500"
4467
+ }, [...$[8] || ($[8] = [
4468
+ c("option", { value: "title-asc" }, "Назва (А → Я)", -1),
4469
+ c("option", { value: "title-desc" }, "Назва (Я → А)", -1)
4470
+ ])], 512), [
4471
+ [ys, v.value]
4472
+ ]),
4473
+ T(N(zs), {
4474
+ size: 16,
4475
+ class: "absolute right-2.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400 pointer-events-none"
4476
+ })
4450
4477
  ])
4451
4478
  ])
4452
4479
  ]),
4453
- v.value.length ? (p(), y("div", qn, [
4454
- (p(!0), y(U, null, Z(v.value, (_, D) => (p(), y("div", {
4480
+ m.value.length ? (h(), x("div", Fn, [
4481
+ (h(!0), x(U, null, Z(m.value, (_, g) => (h(), x("div", {
4455
4482
  key: _.routeName,
4456
4483
  class: "cursor-pointer h-full"
4457
4484
  }, [
4458
- T(Ln, {
4485
+ T(Rn, {
4459
4486
  title: _.title,
4460
4487
  description: _.description,
4461
4488
  modified: _.modified,
4462
4489
  name: _.name,
4463
- reserveLines: w(D),
4490
+ reserveLines: f(g),
4464
4491
  "dashboard-route-name": _.routeName,
4465
- "on-open-editor": E(n)
4492
+ "on-open-editor": N(n)
4466
4493
  }, null, 8, ["title", "description", "modified", "name", "reserveLines", "dashboard-route-name", "on-open-editor"])
4467
4494
  ]))), 128))
4468
- ])) : (p(), y("div", Mn, [
4469
- T(E(Wt), {
4495
+ ])) : (h(), x("div", qn, [
4496
+ T(N(Wt), {
4470
4497
  size: 48,
4471
4498
  class: "text-gray-300 mb-4"
4472
4499
  }),
4473
- x[9] || (x[9] = h("p", { class: "text-lg font-medium text-gray-500" }, "Дашбордів не знайдено", -1)),
4474
- h("p", Un, [
4475
- x[7] || (x[7] = X(" За запитом «", -1)),
4476
- h("span", Gn, W(f.value), 1),
4477
- x[8] || (x[8] = X("» нічого не знайдено. Спробуйте змінити пошуковий запит. ", -1))
4500
+ $[11] || ($[11] = c("p", { class: "text-lg font-medium text-gray-500" }, "Дашбордів не знайдено", -1)),
4501
+ c("p", Mn, [
4502
+ $[9] || ($[9] = X(" За запитом «", -1)),
4503
+ c("span", Un, W(p.value), 1),
4504
+ $[10] || ($[10] = X("» нічого не знайдено. Спробуйте змінити пошуковий запит. ", -1))
4478
4505
  ])
4479
4506
  ]))
4480
4507
  ])
@@ -4486,30 +4513,30 @@ const En = { class: "flex-1 bg-gray-50" }, jn = { class: "max-w-7xl mx-auto px-6
4486
4513
  prefix: { default: "/api" }
4487
4514
  },
4488
4515
  setup(s) {
4489
- const e = s, t = F(() => e.prefix), a = we(), r = ka(), i = F(
4490
- () => a.hasRoute(K.EditorDashboard)
4516
+ const e = s, t = q(() => e.prefix), a = we(), r = vs(), i = q(
4517
+ () => a.hasRoute(J.EditorDashboard)
4491
4518
  ), n = I("");
4492
4519
  le(() => {
4493
4520
  var l;
4494
4521
  if (!i.value) {
4495
- const c = (l = r == null ? void 0 : r.query) == null ? void 0 : l.dashboard;
4496
- c != null && typeof c == "string" && (n.value = c.trim());
4522
+ const d = (l = r == null ? void 0 : r.query) == null ? void 0 : l.dashboard;
4523
+ d != null && typeof d == "string" && (n.value = d.trim());
4497
4524
  }
4498
4525
  });
4499
- const o = F(() => n.value.length > 0);
4500
- return Xe("biSetDashboard", (l) => {
4526
+ const o = q(() => n.value.length > 0);
4527
+ return Qe("biSetDashboard", (l) => {
4501
4528
  n.value = l || "";
4502
- }), Xe("biClearDashboard", () => {
4529
+ }), Qe("biClearDashboard", () => {
4503
4530
  n.value = "";
4504
- }), Xe("biSelectedDashboardId", ws(n)), (l, c) => {
4505
- const u = Y("router-view");
4506
- return i.value ? (p(), N(u, { key: 0 })) : (p(), y(U, { key: 1 }, [
4507
- o.value ? (p(), N($n, {
4531
+ }), Qe("biSelectedDashboardId", ws(n)), (l, d) => {
4532
+ const u = K("router-view");
4533
+ return i.value ? (h(), E(u, { key: 0 })) : (h(), x(U, { key: 1 }, [
4534
+ o.value ? (h(), E(vn, {
4508
4535
  key: `editor-${n.value}`,
4509
4536
  prefix: t.value,
4510
4537
  "dashboard-id": n.value,
4511
- onBack: c[0] || (c[0] = (f) => n.value = "")
4512
- }, null, 8, ["prefix", "dashboard-id"])) : (p(), N(Hn, {
4538
+ onBack: d[0] || (d[0] = (p) => n.value = "")
4539
+ }, null, 8, ["prefix", "dashboard-id"])) : (h(), E(Gn, {
4513
4540
  key: 0,
4514
4541
  prefix: t.value
4515
4542
  }, null, 8, ["prefix"]))
@@ -4517,13 +4544,13 @@ const En = { class: "flex-1 bg-gray-50" }, jn = { class: "max-w-7xl mx-auto px-6
4517
4544
  };
4518
4545
  }
4519
4546
  });
4520
- function ce(s, e) {
4547
+ function de(s, e) {
4521
4548
  const t = s && typeof s == "object" && "value" in s ? s.value : s;
4522
4549
  if (t == null) return "";
4523
4550
  const a = Number(t);
4524
4551
  return Number.isNaN(a) ? String(t) : new Intl.NumberFormat("en", e ?? { notation: "compact" }).format(a);
4525
4552
  }
4526
- function ct(s) {
4553
+ function dt(s) {
4527
4554
  if (!(s != null && s.includes("T"))) return s ?? "";
4528
4555
  const [e, t, a] = s.split("T")[0].split("-");
4529
4556
  return `${a}.${t}.${e}`;
@@ -4531,7 +4558,7 @@ function ct(s) {
4531
4558
  function $o(s) {
4532
4559
  return Intl.NumberFormat("en").format(s ?? 0);
4533
4560
  }
4534
- class Zn {
4561
+ class Hn {
4535
4562
  static getTooltipOptions(e = !0) {
4536
4563
  return {
4537
4564
  show: e,
@@ -4546,7 +4573,7 @@ class Zn {
4546
4573
  };
4547
4574
  }
4548
4575
  }
4549
- const Qn = {
4576
+ const Zn = {
4550
4577
  show_label: !1,
4551
4578
  show_legend: !1,
4552
4579
  label: null,
@@ -4555,19 +4582,19 @@ const Qn = {
4555
4582
  color: null,
4556
4583
  title: null
4557
4584
  };
4558
- function Xn() {
4585
+ function Qn() {
4559
4586
  const s = "0123456789ABCDEF";
4560
4587
  let e = "#";
4561
4588
  for (let t = 0; t < 6; t += 1)
4562
4589
  e += s[Math.floor(Math.random() * 16)];
4563
4590
  return e;
4564
4591
  }
4565
- function Le(s = Qn) {
4592
+ function Le(s = Zn) {
4566
4593
  var t, a, r;
4567
4594
  const e = {
4568
4595
  label: {
4569
4596
  show: ((t = s == null ? void 0 : s.label) == null ? void 0 : t.show) ?? (s == null ? void 0 : s.show_label) ?? !1,
4570
- formatter: (s == null ? void 0 : s.formatter) ?? ((i) => ce(i)),
4597
+ formatter: (s == null ? void 0 : s.formatter) ?? ((i) => de(i)),
4571
4598
  ...(s == null ? void 0 : s.label) || {}
4572
4599
  },
4573
4600
  legend: {
@@ -4589,7 +4616,7 @@ function Mt(s) {
4589
4616
  fontWeight: 400,
4590
4617
  label: s == null ? void 0 : s.label,
4591
4618
  show: !0,
4592
- formatter: (s == null ? void 0 : s.formatter) ?? ((e) => ce(e)),
4619
+ formatter: (s == null ? void 0 : s.formatter) ?? ((e) => de(e)),
4593
4620
  margin: (s == null ? void 0 : s.margin) ?? 7,
4594
4621
  interval: (s == null ? void 0 : s.interval) ?? "auto",
4595
4622
  rotate: (s == null ? void 0 : s.rotate) ?? 0
@@ -4727,11 +4754,11 @@ const ye = typeof window < "u" ? window.echarts : null, pe = {
4727
4754
  }
4728
4755
  },
4729
4756
  async initChart(s, e, t) {
4730
- var a, r, i, n, o, l, c, u, f;
4757
+ var a, r, i, n, o, l, d, u, p;
4731
4758
  this.widgetInstance && this.widgetInstance.clear();
4732
4759
  try {
4733
- const v = this.$refs.chart, g = ye == null ? void 0 : ye.init(v);
4734
- if (!g) return;
4760
+ const v = this.$refs.chart, m = ye == null ? void 0 : ye.init(v);
4761
+ if (!m) return;
4735
4762
  const b = {
4736
4763
  tooltip: {
4737
4764
  show: ((r = (a = this.styleData) == null ? void 0 : a.tooltip) == null ? void 0 : r.show) !== !1,
@@ -4743,29 +4770,29 @@ const ye = typeof window < "u" ? window.echarts : null, pe = {
4743
4770
  shadowColor: "transparent",
4744
4771
  padding: [0, 0, 0, 0],
4745
4772
  borderWidth: 0,
4746
- position: (k, $, V, w, d) => {
4747
- const [x, _] = k, [D, m] = d.contentSize, [C, z] = d.viewSize;
4748
- let R = x + 14, q = _ - m / 2;
4749
- return R + D > C && (R = x - D - 14), R < 0 && (R = 0), q + m > z && (q = z - m), q < 0 && (q = 0), [R, q];
4773
+ position: (k, D, V, y, f) => {
4774
+ const [w, $] = k, [_, g] = f.contentSize, [C, z] = f.viewSize;
4775
+ let R = w + 14, F = $ - g / 2;
4776
+ return R + _ > C && (R = w - _ - 14), R < 0 && (R = 0), F + g > z && (F = z - g), F < 0 && (F = 0), [R, F];
4750
4777
  },
4751
4778
  formatter: (k) => {
4752
- var m;
4753
- const V = (m = k[0]) == null ? void 0 : m.axisValue, w = V ? this.formatDate(V) : "N/A", d = [...k].filter((C) => {
4779
+ var g;
4780
+ const V = (g = k[0]) == null ? void 0 : g.axisValue, y = V ? this.formatDate(V) : "N/A", f = [...k].filter((C) => {
4754
4781
  var z;
4755
4782
  return parseFloat(C == null ? void 0 : C.data) || ((z = C == null ? void 0 : C.data) == null ? void 0 : z.value);
4756
4783
  }).sort((C, z) => {
4757
- var ne, ie;
4758
- const R = parseFloat(((ne = C == null ? void 0 : C.data) == null ? void 0 : ne.value) ?? (C == null ? void 0 : C.data)) || 0;
4784
+ var Y, ie;
4785
+ const R = parseFloat(((Y = C == null ? void 0 : C.data) == null ? void 0 : Y.value) ?? (C == null ? void 0 : C.data)) || 0;
4759
4786
  return (parseFloat(((ie = z == null ? void 0 : z.data) == null ? void 0 : ie.value) ?? (z == null ? void 0 : z.data)) || 0) - R;
4760
- }), x = d.slice(0, 8), _ = d.length - x.length;
4761
- let D = `
4787
+ }), w = f.slice(0, 8), $ = f.length - w.length;
4788
+ let _ = `
4762
4789
  <div style="background-color: rgba(255, 255, 255, 0.95)" class="border border-gray-200 text-gray-800 rounded-lg shadow-md dark:bg-neutral-800 dark:border-neutral-700 min-w-28">
4763
4790
  <div class="font-semibold text-sm border-b border-solid border-gray-200 text-gray-800 rounded-t-lg dark:bg-neutral-800 dark:border-neutral-700 dark:text-neutral-200 px-2 py-1">
4764
- ${w}
4791
+ ${y}
4765
4792
  </div>
4766
4793
  `;
4767
- return x.forEach((C) => {
4768
- D += `
4794
+ return w.forEach((C) => {
4795
+ _ += `
4769
4796
  <div class="flex justify-between items-center text-xs px-2 py-0.5 text-gray-500 dark:text-neutral-400">
4770
4797
  <span class="flex items-center">
4771
4798
  <span class="w-2.5 h-2.5 me-1.5 rounded-sm" style="background-color: ${C.color};"></span>
@@ -4774,10 +4801,10 @@ const ye = typeof window < "u" ? window.echarts : null, pe = {
4774
4801
  <span>${this.getMetricValue(C == null ? void 0 : C.data)}</span>
4775
4802
  </div>
4776
4803
  `;
4777
- }), _ > 0 && (D += `
4804
+ }), $ > 0 && (_ += `
4778
4805
  <div class="text-xs px-2 py-0.5 text-gray-400 dark:text-neutral-500">
4779
- ... ще ${_}
4780
- </div>`), D += "</div>", D;
4806
+ ... ще ${$}
4807
+ </div>`), _ += "</div>", _;
4781
4808
  }
4782
4809
  },
4783
4810
  xAxis: {
@@ -4787,16 +4814,16 @@ const ye = typeof window < "u" ? window.echarts : null, pe = {
4787
4814
  axisLabel: {
4788
4815
  ...Mt((o = this.styleData) == null ? void 0 : o.x_axis),
4789
4816
  formatter: (k) => {
4790
- var V, w;
4791
- const $ = this.formatDate(k);
4792
- return ((w = (V = this.styleData) == null ? void 0 : V.x_axis) == null ? void 0 : w.overflow) === "ellipsis" && $.length > 10 ? `${$.slice(0, 10)}...` : $;
4817
+ var V, y;
4818
+ const D = this.formatDate(k);
4819
+ return ((y = (V = this.styleData) == null ? void 0 : V.x_axis) == null ? void 0 : y.overflow) === "ellipsis" && D.length > 10 ? `${D.slice(0, 10)}...` : D;
4793
4820
  }
4794
4821
  }
4795
4822
  },
4796
4823
  yAxis: {
4797
4824
  data: t != null && t.length ? t : null,
4798
4825
  type: t ? "category" : "value",
4799
- name: ((c = (l = this.styleData) == null ? void 0 : l.y_axis) == null ? void 0 : c.name) || "",
4826
+ name: ((d = (l = this.styleData) == null ? void 0 : l.y_axis) == null ? void 0 : d.name) || "",
4800
4827
  axisLabel: Mt((u = this.styleData) == null ? void 0 : u.y_axis)
4801
4828
  },
4802
4829
  series: s != null && s.length ? s : null,
@@ -4807,10 +4834,10 @@ const ye = typeof window < "u" ? window.echarts : null, pe = {
4807
4834
  left: "0%",
4808
4835
  top: "20px",
4809
4836
  containLabel: !0,
4810
- ...((f = this.styleData) == null ? void 0 : f.grid) || {}
4837
+ ...((p = this.styleData) == null ? void 0 : p.grid) || {}
4811
4838
  }
4812
4839
  };
4813
- await g.setOption(b), g.resize(), this.widgetInstance = g, this.$emit("update:currentWidget", g);
4840
+ await m.setOption(b), m.resize(), this.widgetInstance = m, this.$emit("update:currentWidget", m);
4814
4841
  } catch (v) {
4815
4842
  console.error(v);
4816
4843
  }
@@ -4835,7 +4862,7 @@ const ye = typeof window < "u" ? window.echarts : null, pe = {
4835
4862
  ...r,
4836
4863
  ...e.options,
4837
4864
  tooltip: {
4838
- ...Zn.getTooltipOptions(e.options.tooltip.show)
4865
+ ...Hn.getTooltipOptions(e.options.tooltip.show)
4839
4866
  }
4840
4867
  });
4841
4868
  },
@@ -4858,13 +4885,13 @@ const ye = typeof window < "u" ? window.echarts : null, pe = {
4858
4885
  getMetricValue(s) {
4859
4886
  var a;
4860
4887
  const e = (s == null ? void 0 : s.metric) || s;
4861
- return parseFloat(e) ? (a = ce(e, { notation: "standard" })) == null ? void 0 : a.replaceAll(
4888
+ return parseFloat(e) ? (a = de(e, { notation: "standard" })) == null ? void 0 : a.replaceAll(
4862
4889
  ",",
4863
4890
  " "
4864
4891
  ) : e;
4865
4892
  }
4866
4893
  }
4867
- }, Kn = {
4894
+ }, Xn = {
4868
4895
  name: "VsBar",
4869
4896
  mixins: [pe],
4870
4897
  data() {
@@ -4912,19 +4939,19 @@ const ye = typeof window < "u" ? window.echarts : null, pe = {
4912
4939
  )
4913
4940
  );
4914
4941
  let o;
4915
- this.dimensions[0].includes("date") ? o = n.map((v) => ct(v)) : o = [...n];
4916
- let l, c;
4917
- ((e = this.styleData) == null ? void 0 : e.horizontal) === !0 ? c = [...o] : l = [...o];
4942
+ this.dimensions[0].includes("date") ? o = n.map((v) => dt(v)) : o = [...n];
4943
+ let l, d;
4944
+ ((e = this.styleData) == null ? void 0 : e.horizontal) === !0 ? d = [...o] : l = [...o];
4918
4945
  const u = this.sourceData.filter(
4919
4946
  (v) => parseFloat(v[this.dimensions[1]]) && v[this.dimensions[0]]
4920
4947
  ).map((v) => parseFloat(v[this.dimensions[1]]));
4921
- let f;
4922
- return ((t = this.styleData) == null ? void 0 : t.stack) !== !1 ? f = this.prepareStackData() : ((a = this.styleData) == null ? void 0 : a.negative_waterfall) === !0 ? f = this.prepareNegativeWaterfall() : ((r = this.styleData) == null ? void 0 : r.waterfall) === !0 ? f = this.prepareWaterfallData(u) : ((i = this.styleData) == null ? void 0 : i.accumulative) === !0 ? f = this.prepareAccumulative(u) : f = this.dimensions.slice(1).map((g, b) => ({
4923
- name: g,
4948
+ let p;
4949
+ return ((t = this.styleData) == null ? void 0 : t.stack) !== !1 ? p = this.prepareStackData() : ((a = this.styleData) == null ? void 0 : a.negative_waterfall) === !0 ? p = this.prepareNegativeWaterfall() : ((r = this.styleData) == null ? void 0 : r.waterfall) === !0 ? p = this.prepareWaterfallData(u) : ((i = this.styleData) == null ? void 0 : i.accumulative) === !0 ? p = this.prepareAccumulative(u) : p = this.dimensions.slice(1).map((m, b) => ({
4950
+ name: m,
4924
4951
  type: "bar",
4925
4952
  stack: `a${b}`,
4926
- data: this.sourceData.filter((k) => parseFloat(k[g]) && g).map((k) => parseFloat(k[g]))
4927
- })), { series: f, xs: l, ys: c };
4953
+ data: this.sourceData.filter((k) => parseFloat(k[m]) && m).map((k) => parseFloat(k[m]))
4954
+ })), { series: p, xs: l, ys: d };
4928
4955
  } catch (n) {
4929
4956
  return console.error(n), { series: [], xs: [], ys: [] };
4930
4957
  }
@@ -5018,16 +5045,16 @@ const ye = typeof window < "u" ? window.echarts : null, pe = {
5018
5045
  }
5019
5046
  }, Yn = ["id"];
5020
5047
  function Jn(s, e, t, a, r, i) {
5021
- return p(), y("div", {
5048
+ return h(), x("div", {
5022
5049
  id: i.uniqueID,
5023
5050
  ref: "chart",
5024
5051
  class: "h-full w-full min-h-[200px]"
5025
5052
  }, null, 8, Yn);
5026
5053
  }
5027
- const ei = /* @__PURE__ */ Q(Kn, [["render", Jn]]), ti = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5054
+ const Kn = /* @__PURE__ */ Q(Xn, [["render", Jn]]), ei = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5028
5055
  __proto__: null,
5029
- default: ei
5030
- }, Symbol.toStringTag, { value: "Module" })), Ye = typeof window < "u" ? window.echarts : null, si = {
5056
+ default: Kn
5057
+ }, Symbol.toStringTag, { value: "Module" })), Ye = typeof window < "u" ? window.echarts : null, ti = {
5031
5058
  name: "VsPie",
5032
5059
  props: ["currentWidget"],
5033
5060
  mixins: [pe],
@@ -5074,7 +5101,7 @@ const ei = /* @__PURE__ */ Q(Kn, [["render", Jn]]), ti = /* @__PURE__ */ Object.
5074
5101
  const { name: t, value: a, percent: r } = s;
5075
5102
  return `
5076
5103
  <div style="background-color:${e[0]}; font-size:12px; font-family:Helvetica, Arial, sans-serif; color:#ffff; padding:5px; border-radius:5px;">
5077
- ${t == null ? void 0 : t.replace("null", "Не визначено")}: ${ce(a)} (${r}%)
5104
+ ${t == null ? void 0 : t.replace("null", "Не визначено")}: ${de(a)} (${r}%)
5078
5105
  </div>`;
5079
5106
  },
5080
5107
  prepareData() {
@@ -5096,13 +5123,13 @@ const ei = /* @__PURE__ */ Q(Kn, [["render", Jn]]), ti = /* @__PURE__ */ Object.
5096
5123
  0
5097
5124
  ),
5098
5125
  10
5099
- ), c = n.map((b, k) => {
5100
- const $ = (o[k] / l * 100).toFixed(2);
5126
+ ), d = n.map((b, k) => {
5127
+ const D = (o[k] / l * 100).toFixed(2);
5101
5128
  return {
5102
- name: `${b} (${$}%)`,
5129
+ name: `${b} (${D}%)`,
5103
5130
  value: o[k]
5104
5131
  };
5105
- }), u = ((e = this.styleData) == null ? void 0 : e.innerRadius) || "80%", f = ((t = this.styleData) == null ? void 0 : t.outerRadius) || "100%", v = [u, f];
5132
+ }), u = ((e = this.styleData) == null ? void 0 : e.innerRadius) || "80%", p = ((t = this.styleData) == null ? void 0 : t.outerRadius) || "100%", v = [u, p];
5106
5133
  return this.styleData.legend = Me.getLegendOpions({
5107
5134
  borderRadius: 10,
5108
5135
  height: "100%",
@@ -5126,7 +5153,7 @@ const ei = /* @__PURE__ */ Q(Kn, [["render", Jn]]), ti = /* @__PURE__ */ Object.
5126
5153
  center: ["50%", "60%"],
5127
5154
  height: "75%",
5128
5155
  ...Le(this.styleData),
5129
- data: c
5156
+ data: d
5130
5157
  }
5131
5158
  ] };
5132
5159
  } catch (n) {
@@ -5169,7 +5196,7 @@ const ei = /* @__PURE__ */ Q(Kn, [["render", Jn]]), ti = /* @__PURE__ */ Object.
5169
5196
  series: s,
5170
5197
  ...Le(this.styleData || {}),
5171
5198
  title: {
5172
- text: ce(r),
5199
+ text: de(r),
5173
5200
  left: "center",
5174
5201
  top: "41%",
5175
5202
  textStyle: {
@@ -5188,18 +5215,18 @@ const ei = /* @__PURE__ */ Q(Kn, [["render", Jn]]), ti = /* @__PURE__ */ Object.
5188
5215
  }
5189
5216
  }
5190
5217
  }
5191
- }, ai = ["id"];
5192
- function ri(s, e, t, a, r, i) {
5193
- return p(), y("div", {
5218
+ }, si = ["id"];
5219
+ function ai(s, e, t, a, r, i) {
5220
+ return h(), x("div", {
5194
5221
  id: i.uniqueID,
5195
5222
  ref: "chart",
5196
5223
  class: "h-full min-h-[200px] flex items-center"
5197
- }, null, 8, ai);
5224
+ }, null, 8, si);
5198
5225
  }
5199
- const ni = /* @__PURE__ */ Q(si, [["render", ri]]), ii = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5226
+ const ri = /* @__PURE__ */ Q(ti, [["render", ai]]), ni = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5200
5227
  __proto__: null,
5201
- default: ni
5202
- }, Symbol.toStringTag, { value: "Module" })), Je = typeof window < "u" ? window.echarts : null, oi = {
5228
+ default: ri
5229
+ }, Symbol.toStringTag, { value: "Module" })), Je = typeof window < "u" ? window.echarts : null, ii = {
5203
5230
  name: "VsPie",
5204
5231
  props: ["currentWidget"],
5205
5232
  mixins: [pe],
@@ -5246,7 +5273,7 @@ const ni = /* @__PURE__ */ Q(si, [["render", ri]]), ii = /* @__PURE__ */ Object.
5246
5273
  const { name: t, value: a, percent: r } = s;
5247
5274
  return `
5248
5275
  <div style="background-color:${e[0]}; font-size:12px; font-family:Helvetica, Arial, sans-serif; color:#ffff; padding:5px; border-radius:5px;">
5249
- ${t == null ? void 0 : t.replace("null", "Не визначено")}: ${ce(a)} (${r}%)
5276
+ ${t == null ? void 0 : t.replace("null", "Не визначено")}: ${de(a)} (${r}%)
5250
5277
  </div>`;
5251
5278
  },
5252
5279
  prepareData() {
@@ -5255,25 +5282,25 @@ const ni = /* @__PURE__ */ Q(si, [["render", ri]]), ii = /* @__PURE__ */ Object.
5255
5282
  this.styleData = this.styleData || {};
5256
5283
  const i = Array.from(
5257
5284
  new Set(
5258
- (this.sourceData || []).map((g) => g[this.dimensions[0]])
5285
+ (this.sourceData || []).map((m) => m[this.dimensions[0]])
5259
5286
  )
5260
5287
  ), n = Array.from(
5261
5288
  new Set(
5262
- (this.sourceData || []).map((g) => g[this.dimensions[1]])
5289
+ (this.sourceData || []).map((m) => m[this.dimensions[1]])
5263
5290
  )
5264
5291
  ), o = parseInt(
5265
5292
  (this.sourceData || []).reduce(
5266
- (g, b) => g + parseFloat(b == null ? void 0 : b.metric),
5293
+ (m, b) => m + parseFloat(b == null ? void 0 : b.metric),
5267
5294
  0
5268
5295
  ),
5269
5296
  10
5270
- ), l = i.map((g, b) => {
5297
+ ), l = i.map((m, b) => {
5271
5298
  const k = (n[b] / o * 100).toFixed(2);
5272
5299
  return {
5273
- name: `${g} (${k}%)`,
5300
+ name: `${m} (${k}%)`,
5274
5301
  value: n[b]
5275
5302
  };
5276
- }), c = ((s = this.styleData) == null ? void 0 : s.innerRadius) || "0%", u = ((e = this.styleData) == null ? void 0 : e.outerRadius) || "100%", f = [c, u];
5303
+ }), d = ((s = this.styleData) == null ? void 0 : s.innerRadius) || "0%", u = ((e = this.styleData) == null ? void 0 : e.outerRadius) || "100%", p = [d, u];
5277
5304
  return this.styleData.legend = Me.getLegendOpions({
5278
5305
  borderRadius: 10,
5279
5306
  height: "100%",
@@ -5281,7 +5308,7 @@ const ni = /* @__PURE__ */ Q(si, [["render", ri]]), ii = /* @__PURE__ */ Object.
5281
5308
  type: "scroll",
5282
5309
  itemWidth: 14,
5283
5310
  itemHeight: 14,
5284
- formatter: (g) => g == null ? void 0 : g.replace("null", "Не визначено"),
5311
+ formatter: (m) => m == null ? void 0 : m.replace("null", "Не визначено"),
5285
5312
  textStyle: { fontSize: "14px" },
5286
5313
  ...((t = this.styleData) == null ? void 0 : t.legend) || {}
5287
5314
  }), this.styleData.label = Me.getLabelOptions(
@@ -5290,7 +5317,7 @@ const ni = /* @__PURE__ */ Q(si, [["render", ri]]), ii = /* @__PURE__ */ Object.
5290
5317
  {
5291
5318
  name: this.titleCharts ? this.titleCharts : this.dimensions[0],
5292
5319
  type: "pie",
5293
- radius: f,
5320
+ radius: p,
5294
5321
  center: ["50%", "60%"],
5295
5322
  height: "75%",
5296
5323
  ...Le(this.styleData),
@@ -5340,18 +5367,18 @@ const ni = /* @__PURE__ */ Q(si, [["render", ri]]), ii = /* @__PURE__ */ Object.
5340
5367
  }
5341
5368
  }
5342
5369
  }
5343
- }, li = ["id"];
5344
- function ci(s, e, t, a, r, i) {
5345
- return p(), y("div", {
5370
+ }, oi = ["id"];
5371
+ function li(s, e, t, a, r, i) {
5372
+ return h(), x("div", {
5346
5373
  id: i.uniqueID,
5347
5374
  ref: "chart",
5348
5375
  class: "h-full min-h-[200px] flex items-center"
5349
- }, null, 8, li);
5376
+ }, null, 8, oi);
5350
5377
  }
5351
- const di = /* @__PURE__ */ Q(oi, [["render", ci]]), ui = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5378
+ const di = /* @__PURE__ */ Q(ii, [["render", li]]), ci = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5352
5379
  __proto__: null,
5353
5380
  default: di
5354
- }, Symbol.toStringTag, { value: "Module" })), hi = {
5381
+ }, Symbol.toStringTag, { value: "Module" })), ui = {
5355
5382
  name: "VsLine",
5356
5383
  mixins: [pe],
5357
5384
  data() {
@@ -5383,7 +5410,7 @@ const di = /* @__PURE__ */ Q(oi, [["render", ci]]), ui = /* @__PURE__ */ Object.
5383
5410
  new Set(this.sourceData.map((n) => n[this.dimensions[0]]))
5384
5411
  );
5385
5412
  let a;
5386
- this.dimensions[0].includes("date") ? a = t.map((n) => ct(n)) : a = [...t];
5413
+ this.dimensions[0].includes("date") ? a = t.map((n) => dt(n)) : a = [...t];
5387
5414
  const r = this.sourceData.map(
5388
5415
  (n) => parseFloat(n[this.dimensions[1]])
5389
5416
  );
@@ -5408,18 +5435,18 @@ const di = /* @__PURE__ */ Q(oi, [["render", ci]]), ui = /* @__PURE__ */ Object.
5408
5435
  }
5409
5436
  }
5410
5437
  }
5411
- }, pi = ["id"];
5412
- function fi(s, e, t, a, r, i) {
5413
- return p(), y("div", {
5438
+ }, hi = ["id"];
5439
+ function pi(s, e, t, a, r, i) {
5440
+ return h(), x("div", {
5414
5441
  id: r.uniqueID,
5415
5442
  ref: "chart",
5416
5443
  style: { height: "400px" }
5417
- }, null, 8, pi);
5444
+ }, null, 8, hi);
5418
5445
  }
5419
- const gi = /* @__PURE__ */ Q(hi, [["render", fi]]), mi = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5446
+ const fi = /* @__PURE__ */ Q(ui, [["render", pi]]), gi = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5420
5447
  __proto__: null,
5421
- default: gi
5422
- }, Symbol.toStringTag, { value: "Module" })), bi = {
5448
+ default: fi
5449
+ }, Symbol.toStringTag, { value: "Module" })), mi = {
5423
5450
  name: "VsStat",
5424
5451
  mixins: [pe],
5425
5452
  data() {
@@ -5444,27 +5471,27 @@ const gi = /* @__PURE__ */ Q(hi, [["render", fi]]), mi = /* @__PURE__ */ Object.
5444
5471
  this.columns = Object.keys(this.sourceData[0]);
5445
5472
  const s = this.getValues();
5446
5473
  this.sumValue = s.reduce((e, t) => e + t, 0), this.sourceData.forEach((e, t) => {
5447
- e.color = t < Ut.length - 1 ? Ut[t] : Xn();
5474
+ e.color = t < Ut.length - 1 ? Ut[t] : Qn();
5448
5475
  });
5449
5476
  },
5450
5477
  formattedValue(s) {
5451
5478
  const e = parseFloat(s);
5452
- return ce(e);
5479
+ return de(e);
5453
5480
  }
5454
5481
  }
5455
- }, xi = { class: "flex flex-col w-full h-full pt-[16px] rounded-xl" }, yi = { class: "flex flex-col justify-between w-full h-full" }, wi = { class: "w-full h-full pb-6 space-y-4" }, vi = { class: "flex w-full h-3 rounded-full gap-x-1 min-h-3 custom-x-scrollbar" }, ki = ["onMouseover"], $i = {
5482
+ }, bi = { class: "flex flex-col w-full h-full pt-[16px] rounded-xl" }, xi = { class: "flex flex-col justify-between w-full h-full" }, yi = { class: "w-full h-full pb-6 space-y-4" }, wi = { class: "flex w-full h-3 rounded-full gap-x-1 min-h-3 custom-x-scrollbar" }, vi = ["onMouseover"], ki = {
5456
5483
  key: 0,
5457
5484
  class: "absolute top-[-1] left-1/2 transform -translate-x-1/2 -translate-y-full bg-black text-white rounded px-2 py-1"
5458
- }, _i = { class: "h-[calc(100%-20px)] w-full custom-scrollbar" }, Di = { class: "grid items-center justify-between grid-cols-2 py-2 gap-x-4" }, Ci = { class: "flex items-center" }, zi = { class: "text-sm text-gray-800" }, Ti = { class: "text-end" }, Ii = { class: "text-sm text-gray-500" };
5459
- function Si(s, e, t, a, r, i) {
5460
- return p(), y("div", xi, [
5461
- h("div", yi, [
5462
- h("div", wi, [
5463
- h("div", vi, [
5464
- (p(!0), y(U, null, Z(s.sourceData, (n, o) => {
5465
- var l, c, u, f;
5466
- return p(), y("div", {
5467
- class: ee(["flex flex-col min-w-[5px] justify-center min-h-2.5 h-2.5 text-xs text-white text-center whitespace-nowrap", `bg-[${n.color}]`]),
5485
+ }, $i = { class: "h-[calc(100%-40px)] w-full custom-scrollbar" }, _i = { class: "grid items-center justify-between grid-cols-2 py-2 gap-x-4" }, Di = { class: "flex items-center" }, Ci = { class: "text-sm text-gray-800" }, zi = { class: "text-end" }, Ti = { class: "text-sm text-gray-500" };
5486
+ function Ii(s, e, t, a, r, i) {
5487
+ return h(), x("div", bi, [
5488
+ c("div", xi, [
5489
+ c("div", yi, [
5490
+ c("div", wi, [
5491
+ (h(!0), x(U, null, Z(s.sourceData, (n, o) => {
5492
+ var l, d, u, p;
5493
+ return h(), x("div", {
5494
+ class: se(["flex flex-col min-w-[5px] justify-center min-h-2.5 h-2.5 text-xs text-white text-center whitespace-nowrap", `bg-[${n.color}]`]),
5468
5495
  style: Ge({
5469
5496
  width: `${parseFloat(n == null ? void 0 : n[(l = r.columns) == null ? void 0 : l[1]]) / r.sumValue * 100}%`
5470
5497
  }),
@@ -5475,22 +5502,22 @@ function Si(s, e, t, a, r, i) {
5475
5502
  onMouseover: (v) => r.showTooltip = o,
5476
5503
  onMouseleave: e[0] || (e[0] = (v) => r.showTooltip = -1)
5477
5504
  }, [
5478
- r.showTooltip > -1 ? (p(), y("div", $i, W(s.sourceData[r.showTooltip][r.columns[0]]) + " " + W((parseFloat((f = (c = s.sourceData) == null ? void 0 : c[r.showTooltip]) == null ? void 0 : f[(u = r.columns) == null ? void 0 : u[1]]) / r.sumValue * 100).toFixed(2)) + "% ", 1)) : A("", !0)
5479
- ], 46, ki);
5505
+ r.showTooltip > -1 ? (h(), x("div", ki, W(s.sourceData[r.showTooltip][r.columns[0]]) + " " + W((parseFloat((p = (d = s.sourceData) == null ? void 0 : d[r.showTooltip]) == null ? void 0 : p[(u = r.columns) == null ? void 0 : u[1]]) / r.sumValue * 100).toFixed(2)) + "% ", 1)) : A("", !0)
5506
+ ], 46, vi);
5480
5507
  }), 256))
5481
5508
  ]),
5482
- h("ul", _i, [
5483
- (p(!0), y(U, null, Z(s.sourceData, (n) => {
5509
+ c("ul", $i, [
5510
+ (h(!0), x(U, null, Z(s.sourceData, (n) => {
5484
5511
  var o, l;
5485
- return p(), y("li", Di, [
5486
- h("div", Ci, [
5487
- h("span", {
5488
- class: ee(["shrink-0 size-2.5 inline-block rounded-sm me-2.5 min-w-[10px] w-[10px] h-[10px] min-h-[10px]", `bg-[${n.color}]`])
5512
+ return h(), x("li", _i, [
5513
+ c("div", Di, [
5514
+ c("span", {
5515
+ class: se(["shrink-0 size-2.5 inline-block rounded-sm me-2.5 min-w-[10px] w-[10px] h-[10px] min-h-[10px]", `bg-[${n.color}]`])
5489
5516
  }, null, 2),
5490
- h("span", zi, W((n == null ? void 0 : n[(o = r.columns) == null ? void 0 : o[0]]) || "Не визначено"), 1)
5517
+ c("span", Ci, W((n == null ? void 0 : n[(o = r.columns) == null ? void 0 : o[0]]) || "Не визначено"), 1)
5491
5518
  ]),
5492
- h("div", Ti, [
5493
- h("span", Ii, W(i.formattedValue(n == null ? void 0 : n[(l = r.columns) == null ? void 0 : l[1]]) || "-"), 1)
5519
+ c("div", zi, [
5520
+ c("span", Ti, W(i.formattedValue(n == null ? void 0 : n[(l = r.columns) == null ? void 0 : l[1]]) || "-"), 1)
5494
5521
  ])
5495
5522
  ]);
5496
5523
  }), 256))
@@ -5499,10 +5526,10 @@ function Si(s, e, t, a, r, i) {
5499
5526
  ])
5500
5527
  ]);
5501
5528
  }
5502
- const Ri = /* @__PURE__ */ Q(bi, [["render", Si]]), Vi = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5529
+ const Si = /* @__PURE__ */ Q(mi, [["render", Ii]]), Ri = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5503
5530
  __proto__: null,
5504
- default: Ri
5505
- }, Symbol.toStringTag, { value: "Module" })), Li = {
5531
+ default: Si
5532
+ }, Symbol.toStringTag, { value: "Module" })), Vi = {
5506
5533
  name: "VsProgressBar",
5507
5534
  mixins: [pe],
5508
5535
  data() {
@@ -5529,28 +5556,28 @@ const Ri = /* @__PURE__ */ Q(bi, [["render", Si]]), Vi = /* @__PURE__ */ Object.
5529
5556
  this.maxValue = Math.max(...s);
5530
5557
  },
5531
5558
  formattedValue(s) {
5532
- return ce(s);
5559
+ return de(s);
5533
5560
  }
5534
5561
  }
5535
- }, Wi = {
5562
+ }, Li = {
5536
5563
  key: 0,
5537
5564
  class: "flex flex-col h-full pt-[16px] rounded-xl"
5538
- }, Ni = { class: "h-full pt-0 pb-6 space-y-4" }, Ei = { class: "h-full space-y-4 custom-scrollbar" }, ji = { class: "flex items-center justify-between mr-2 gap-x-2" }, Bi = { class: "grid items-center w-full grid-cols-2 gap-x-2" }, Oi = { class: "text-sm text-gray-800" }, Pi = {
5565
+ }, Wi = { class: "h-full pt-0 pb-6 space-y-4" }, Ni = { class: "h-full space-y-4 custom-scrollbar" }, Ei = { class: "flex items-center justify-between mr-2 gap-x-2" }, ji = { class: "grid items-center w-full grid-cols-2 gap-x-2" }, Bi = { class: "text-sm text-gray-800" }, Oi = {
5539
5566
  class: "flex justify-end",
5540
5567
  role: "progressbar",
5541
5568
  "aria-valuenow": "100",
5542
5569
  "aria-valuemin": "0",
5543
5570
  "aria-valuemax": "100"
5544
- }, Ai = { class: "min-w-[60px] text-end" }, Fi = { class: "text-sm text-gray-500" };
5545
- function qi(s, e, t, a, r, i) {
5546
- return r.columns ? (p(), y("div", Wi, [
5547
- h("div", Ni, [
5548
- h("ul", Ei, [
5549
- (p(!0), y(U, null, Z(s.sourceData, (n, o) => (p(), y("li", ji, [
5550
- h("div", Bi, [
5551
- h("span", Oi, W(n[r.columns[0]]), 1),
5552
- h("div", Pi, [
5553
- h("div", {
5571
+ }, Pi = { class: "min-w-[60px] text-end" }, Ai = { class: "text-sm text-gray-500" };
5572
+ function Fi(s, e, t, a, r, i) {
5573
+ return r.columns ? (h(), x("div", Li, [
5574
+ c("div", Wi, [
5575
+ c("ul", Ni, [
5576
+ (h(!0), x(U, null, Z(s.sourceData, (n, o) => (h(), x("li", Ei, [
5577
+ c("div", ji, [
5578
+ c("span", Bi, W(n[r.columns[0]]), 1),
5579
+ c("div", Oi, [
5580
+ c("div", {
5554
5581
  class: "h-1.5 flex flex-col justify-center overflow-hidden bg-indigo-500 rounded-full text-xs text-white text-center whitespace-nowrap",
5555
5582
  style: Ge({
5556
5583
  width: `${parseFloat(n[r.columns[1]]) / r.maxValue * 100}%`
@@ -5558,18 +5585,18 @@ function qi(s, e, t, a, r, i) {
5558
5585
  }, null, 4)
5559
5586
  ])
5560
5587
  ]),
5561
- h("div", Ai, [
5562
- h("span", Fi, W(i.formattedValue(n[r.columns[1]])), 1)
5588
+ c("div", Pi, [
5589
+ c("span", Ai, W(i.formattedValue(n[r.columns[1]])), 1)
5563
5590
  ])
5564
5591
  ]))), 256))
5565
5592
  ])
5566
5593
  ])
5567
5594
  ])) : A("", !0);
5568
5595
  }
5569
- const Mi = /* @__PURE__ */ Q(Li, [["render", qi]]), Ui = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5596
+ const qi = /* @__PURE__ */ Q(Vi, [["render", Fi]]), Mi = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5570
5597
  __proto__: null,
5571
- default: Mi
5572
- }, Symbol.toStringTag, { value: "Module" })), Gi = {
5598
+ default: qi
5599
+ }, Symbol.toStringTag, { value: "Module" })), Ui = {
5573
5600
  name: "VsListbar",
5574
5601
  mixins: [pe],
5575
5602
  props: ["source"],
@@ -5601,44 +5628,44 @@ const Mi = /* @__PURE__ */ Q(Li, [["render", qi]]), Ui = /* @__PURE__ */ Object.
5601
5628
  this.maxValue = Math.max(...s || []), this.restDimensions = (a = this.columns) == null ? void 0 : a.filter((r, i) => i !== 0);
5602
5629
  },
5603
5630
  formattedValue(s) {
5604
- return ce(s);
5631
+ return de(s);
5605
5632
  },
5606
5633
  getWidth(s) {
5607
5634
  return `${s / this.maxValue * 100}%`;
5608
5635
  }
5609
5636
  }
5610
- }, Hi = { class: "h-full pt-[20px] list-bar" }, Zi = { class: "space-y-2 custom-scrollbar h-full h-[calc(100%-20px)]" }, Qi = { class: "relative w-full truncate" }, Xi = { class: "relative z-[1] text-sm block py-1 px-2 w-full text-sm truncate text-gray-800" }, Ki = { class: "text-[14px] text-gray-500" };
5637
+ }, Gi = { class: "h-full pt-[20px] list-bar" }, Hi = { class: "space-y-2 custom-scrollbar h-[calc(100%-40px)]" }, Zi = { class: "relative w-full truncate" }, Qi = { class: "relative z-[1] text-sm block py-1 px-2 w-full text-sm truncate text-gray-800" }, Xi = { class: "text-[14px] text-gray-500" };
5611
5638
  function Yi(s, e, t, a, r, i) {
5612
- return p(), y("div", Hi, [
5613
- h("ul", Zi, [
5614
- (p(!0), y(U, null, Z(s.sourceData, (n, o) => {
5615
- var l, c, u;
5616
- return p(), y("li", {
5639
+ return h(), x("div", Gi, [
5640
+ c("ul", Hi, [
5641
+ (h(!0), x(U, null, Z(s.sourceData, (n, o) => {
5642
+ var l, d, u;
5643
+ return h(), x("li", {
5617
5644
  key: o,
5618
5645
  class: "flex items-center justify-between w-full gap-x-2"
5619
5646
  }, [
5620
- h("div", Qi, [
5621
- h("span", Xi, W((n == null ? void 0 : n[(l = r.columns) == null ? void 0 : l[0]]) || "Без категорії"), 1),
5622
- h("div", {
5623
- class: ee(["absolute inset-y-0 h-full rounded start-0", n != null && n[(c = r.columns) == null ? void 0 : c[0]] ? "bg-indigo-100" : "bg-gray-100"]),
5647
+ c("div", Zi, [
5648
+ c("span", Qi, W((n == null ? void 0 : n[(l = r.columns) == null ? void 0 : l[0]]) || "Без категорії"), 1),
5649
+ c("div", {
5650
+ class: se(["absolute inset-y-0 h-full rounded start-0", n != null && n[(d = r.columns) == null ? void 0 : d[0]] ? "bg-indigo-100" : "bg-gray-100"]),
5624
5651
  style: Ge({ width: i.getWidth(n == null ? void 0 : n[(u = r.columns) == null ? void 0 : u[1]]) })
5625
5652
  }, null, 6)
5626
5653
  ]),
5627
- (p(!0), y(U, null, Z(r.restDimensions, (f, v) => (p(), y("div", {
5654
+ (h(!0), x(U, null, Z(r.restDimensions, (p, v) => (h(), x("div", {
5628
5655
  key: v,
5629
5656
  class: "w-20 mr-2 text-end"
5630
5657
  }, [
5631
- h("span", Ki, W(i.formattedValue(n == null ? void 0 : n[f])), 1)
5658
+ c("span", Xi, W(i.formattedValue(n == null ? void 0 : n[p])), 1)
5632
5659
  ]))), 128))
5633
5660
  ]);
5634
5661
  }), 128))
5635
5662
  ])
5636
5663
  ]);
5637
5664
  }
5638
- const Ji = /* @__PURE__ */ Q(Gi, [["render", Yi]]), eo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5665
+ const Ji = /* @__PURE__ */ Q(Ui, [["render", Yi]]), Ki = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5639
5666
  __proto__: null,
5640
5667
  default: Ji
5641
- }, Symbol.toStringTag, { value: "Module" })), to = {
5668
+ }, Symbol.toStringTag, { value: "Module" })), eo = {
5642
5669
  name: "VsPivotTable",
5643
5670
  mixins: [pe],
5644
5671
  data() {
@@ -5663,46 +5690,46 @@ const Ji = /* @__PURE__ */ Q(Gi, [["render", Yi]]), eo = /* @__PURE__ */ Object.
5663
5690
  const s = Array.from(
5664
5691
  new Set(this.sourceData.map((e) => e[this.dimensions[0]]))
5665
5692
  );
5666
- this.dimensions[0].includes("date") ? this.xs = s.map((e) => ct(e)) : this.xs = [...s], this.products = this.dimensions.filter((e, t) => t != 0), this.values = this.products.map((e, t) => ({
5693
+ this.dimensions[0].includes("date") ? this.xs = s.map((e) => dt(e)) : this.xs = [...s], this.products = this.dimensions.filter((e, t) => t != 0), this.values = this.products.map((e, t) => ({
5667
5694
  name: e,
5668
- data: this.sourceData.filter((a) => parseFloat(a[e])).map((a) => ce(parseFloat(a[e])))
5695
+ data: this.sourceData.filter((a) => parseFloat(a[e])).map((a) => de(parseFloat(a[e])))
5669
5696
  }));
5670
5697
  } catch (s) {
5671
5698
  console.error(s);
5672
5699
  }
5673
5700
  }
5674
5701
  }
5675
- }, so = { class: "flex flex-col h-full p-5 space-y-4 rounded-xl custom-scrollbar" }, ao = { class: "overflow-x-auto [&::-webkit-scrollbar]:h-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 custom-scrollbar" }, ro = { class: "inline-block min-w-full align-middle" }, no = { class: "min-w-full divide-y divide-gray-200" }, io = { class: "space-x-2" }, oo = {
5702
+ }, to = { class: "flex flex-col h-full p-5 space-y-4 rounded-xl custom-scrollbar" }, so = { class: "overflow-x-auto [&::-webkit-scrollbar]:h-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 custom-scrollbar" }, ao = { class: "inline-block min-w-full align-middle" }, ro = { class: "min-w-full divide-y divide-gray-200" }, no = { class: "space-x-2" }, io = {
5676
5703
  scope: "col",
5677
5704
  class: "xl:min-w-[120px] min-w-48"
5678
- }, lo = { class: "py-2.5 text-text-start flex items-center gap-x-1 text-sm font-normal text-gray-500" }, co = { class: "divide-y divide-gray-200 text-[12px]" }, uo = { class: "py-3 size-px whitespace-nowrap" }, ho = { class: "flex items-center gap-x-3" }, po = { class: "font-medium text-gray-800" }, fo = { class: "py-3 size-px whitespace-nowrap" }, go = { class: "text-gray-600" };
5679
- function mo(s, e, t, a, r, i) {
5680
- return p(), y("div", so, [
5681
- h("div", ao, [
5682
- h("div", ro, [
5683
- h("table", no, [
5684
- h("thead", null, [
5685
- h("tr", io, [
5686
- e[0] || (e[0] = h("th", {
5705
+ }, oo = { class: "py-2.5 text-text-start flex items-center gap-x-1 text-sm font-normal text-gray-500" }, lo = { class: "divide-y divide-gray-200 text-[12px]" }, co = { class: "py-3 size-px whitespace-nowrap" }, uo = { class: "flex items-center gap-x-3" }, ho = { class: "font-medium text-gray-800" }, po = { class: "py-3 size-px whitespace-nowrap" }, fo = { class: "text-gray-600" };
5706
+ function go(s, e, t, a, r, i) {
5707
+ return h(), x("div", to, [
5708
+ c("div", so, [
5709
+ c("div", ao, [
5710
+ c("table", ro, [
5711
+ c("thead", null, [
5712
+ c("tr", no, [
5713
+ e[0] || (e[0] = c("th", {
5687
5714
  scope: "col",
5688
5715
  class: "min-w-[200px]"
5689
5716
  }, [
5690
- h("div", { class: "py-2.5 text-text-start flex items-center gap-x-1 text-sm font-normal text-gray-500" })
5717
+ c("div", { class: "py-2.5 text-text-start flex items-center gap-x-1 text-sm font-normal text-gray-500" })
5691
5718
  ], -1)),
5692
- (p(!0), y(U, null, Z(r.xs, (n) => (p(), y("th", oo, [
5693
- h("div", lo, W(n), 1)
5719
+ (h(!0), x(U, null, Z(r.xs, (n) => (h(), x("th", io, [
5720
+ c("div", oo, W(n), 1)
5694
5721
  ]))), 256))
5695
5722
  ])
5696
5723
  ]),
5697
- (p(!0), y(U, null, Z(r.values, (n) => (p(), y("tbody", co, [
5698
- h("tr", null, [
5699
- h("td", uo, [
5700
- h("div", ho, [
5701
- h("span", po, W(n.name), 1)
5724
+ (h(!0), x(U, null, Z(r.values, (n) => (h(), x("tbody", lo, [
5725
+ c("tr", null, [
5726
+ c("td", co, [
5727
+ c("div", uo, [
5728
+ c("span", ho, W(n.name), 1)
5702
5729
  ])
5703
5730
  ]),
5704
- (p(!0), y(U, null, Z(r.xs, (o, l) => (p(), y("td", fo, [
5705
- h("span", go, W(n.data[l]), 1)
5731
+ (h(!0), x(U, null, Z(r.xs, (o, l) => (h(), x("td", po, [
5732
+ c("span", fo, W(n.data[l]), 1)
5706
5733
  ]))), 256))
5707
5734
  ])
5708
5735
  ]))), 256))
@@ -5711,36 +5738,36 @@ function mo(s, e, t, a, r, i) {
5711
5738
  ])
5712
5739
  ]);
5713
5740
  }
5714
- const bo = /* @__PURE__ */ Q(to, [["render", mo]]), xo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5741
+ const mo = /* @__PURE__ */ Q(eo, [["render", go]]), bo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5715
5742
  __proto__: null,
5716
- default: bo
5743
+ default: mo
5717
5744
  }, Symbol.toStringTag, { value: "Module" }));
5718
5745
  export {
5719
- K as R,
5720
- Ra as U,
5721
- ei as V,
5722
- Es as X,
5746
+ J as R,
5747
+ Ia as U,
5748
+ Kn as V,
5749
+ Bs as X,
5723
5750
  Q as _,
5724
5751
  Le as a,
5725
- ct as b,
5752
+ dt as b,
5726
5753
  pe as c,
5727
- ce as d,
5728
- se as e,
5754
+ de as d,
5755
+ ee as e,
5729
5756
  $o as f,
5730
5757
  H as g,
5731
- Xr as h,
5732
- Qr as i,
5733
- Hn as j,
5734
- $n as k,
5758
+ Zr as h,
5759
+ Hr as i,
5760
+ Gn as j,
5761
+ vn as k,
5735
5762
  ko as l,
5736
5763
  B as m,
5737
5764
  di as n,
5738
- gi as o,
5739
- Ri as p,
5740
- Mi as q,
5765
+ fi as o,
5766
+ Si as p,
5767
+ qi as q,
5741
5768
  Ji as r,
5742
- bo as s,
5769
+ mo as s,
5743
5770
  vo as t,
5744
5771
  Oe as u,
5745
- ni as v
5772
+ ri as v
5746
5773
  };