@opengis/admin 0.1.75 → 0.1.76

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/dist/{IconChevronDown-DpFXvgwL.js → IconChevronDown-BMnTiJIv.js} +1 -1
  2. package/dist/{add-page-B34T9kD5.js → add-page-BxK4iJe4.js} +1 -1
  3. package/dist/{admin-interface-B7RH9jC0.js → admin-interface-D9vWpTqM.js} +591 -534
  4. package/dist/{admin-view-CB6GnWqy.js → admin-view-DPtlpZue.js} +144 -139
  5. package/dist/admin.js +1 -1
  6. package/dist/admin.umd.cjs +51 -51
  7. package/dist/assets/favicon.svg +1 -0
  8. package/dist/assets/logo.svg +42 -0
  9. package/dist/{card-page-B2ZFa7Pi.js → card-page-KnsaeAPW.js} +3 -3
  10. package/dist/{card-view-BRWlfh-Z.js → card-view-BAC53pSQ.js} +1 -1
  11. package/dist/{edit-page-BUhpjmtA.js → edit-page-D2KM1hue.js} +1 -1
  12. package/dist/{import-file-C08TESFR.js → import-file-C3Slz6rJ.js} +4770 -4754
  13. package/dist/style.css +1 -1
  14. package/module/settings/select/core.user_mentioned.sql +2 -0
  15. package/package.json +4 -4
  16. package/plugin.js +3 -0
  17. package/server/helpers/index.mjs +7 -5
  18. package/server/routes/calendar/controllers/calendar.data.js +3 -3
  19. package/server/routes/data/controllers/cardData.js +5 -5
  20. package/server/routes/data/controllers/cardTabData.js +5 -5
  21. package/server/routes/data/controllers/funcs/getFilterSQL/index.js +3 -3
  22. package/server/routes/data/controllers/tableData.js +4 -3
  23. package/server/routes/data/controllers/tableDataId.js +3 -1
  24. package/server/routes/data/controllers/tableFilter.js +3 -3
  25. package/server/routes/data/controllers/utils/assignTokens.js +6 -6
  26. package/server/routes/notifications/controllers/readNotifications.js +9 -5
  27. package/server/routes/notifications/controllers/testEmail.js +35 -0
  28. package/server/routes/notifications/controllers/userNotifications.js +1 -1
  29. package/server/routes/notifications/funcs/addNotification.js +21 -0
  30. package/server/routes/notifications/funcs/sendNotification.js +105 -0
  31. package/server/routes/notifications/funcs/utils/sendEmail.js +39 -0
  32. package/server/routes/notifications/hook/onWidgetSet.js +4 -4
  33. package/server/routes/notifications/index.mjs +14 -2
  34. package/server/routes/notifications/schema.js +7 -1
  35. package/server/routes/properties/controllers/admin.properties.get.js +2 -2
  36. package/server/routes/user/controllers/user.cls.id.js +14 -0
  37. package/server/routes/user/controllers/user.cls.js +71 -0
  38. package/server/routes/user/controllers/user.cls.post.js +52 -0
  39. package/server/routes/user/controllers/user.info.js +17 -0
  40. package/server/routes/user/index.mjs +15 -0
  41. package/server/routes/user/schema.js +14 -0
  42. package/server/routes/widget/controllers/utils/historyFormat.js +75 -0
  43. package/server/routes/widget/controllers/utils/obj2db.js +13 -0
  44. package/server/routes/widget/controllers/widget.del.js +41 -0
  45. package/server/routes/widget/controllers/widget.get.js +96 -0
  46. package/server/routes/widget/controllers/widget.set.js +76 -0
  47. package/server/routes/widget/index.mjs +39 -0
  48. package/utils.js +5 -0
@@ -1,7 +1,7 @@
1
- import { _, b as pe, a as V, c as be, d as fe, e as me, f as ge, I as xe, u as ne } from "./import-file-C08TESFR.js";
2
- import { openBlock as l, createElementBlock as i, createTextVNode as D, toDisplayString as S, createCommentVNode as C, createStaticVNode as j, Fragment as $, createElementVNode as s, resolveComponent as d, createVNode as f, withCtx as w, createBlock as v, withModifiers as ye, renderList as A, normalizeClass as T, withDirectives as q, vModelCheckbox as _e, resolveDynamicComponent as ke, Transition as z, renderSlot as ve, vShow as le, normalizeStyle as se } from "vue";
3
- import { I as we } from "./IconChevronDown-DpFXvgwL.js";
4
- const Ce = {
1
+ import { _ as k, b as Ie, a as V, c as Te, d as Ve, e as De, f as Fe, I as Me, u as ge, s as je } from "./import-file-C3Slz6rJ.js";
2
+ import { openBlock as l, createElementBlock as a, createTextVNode as D, toDisplayString as A, createCommentVNode as w, createStaticVNode as j, Fragment as $, createElementVNode as r, resolveComponent as h, createVNode as x, withCtx as C, createBlock as _, withModifiers as qe, renderList as T, normalizeClass as I, withDirectives as z, vModelCheckbox as Be, resolveDynamicComponent as B, Transition as P, renderSlot as ze, vShow as _e, getCurrentInstance as Pe, ref as xe, normalizeStyle as ye } from "vue";
3
+ import { I as Le } from "./IconChevronDown-BMnTiJIv.js";
4
+ const Ue = {
5
5
  data() {
6
6
  return {
7
7
  currentSort: ""
@@ -47,11 +47,11 @@ const Ce = {
47
47
  },
48
48
  handleClickSortBtn(t) {
49
49
  this.$emit("change-active", this.data.name), this.currentSort = this.changeCurrentSort(t);
50
- const e = this.$route.query, { sort: n, ...a } = e, r = this.currentSort ? `${this.data.name}-${this.currentSort}` : "";
50
+ const e = this.$route.query, { sort: s, ...i } = e, n = this.currentSort ? `${this.data.name}-${this.currentSort}` : "";
51
51
  this.$router.replace({
52
52
  query: {
53
- ...a,
54
- ...r && { sort: r }
53
+ ...i,
54
+ ...n && { sort: n }
55
55
  }
56
56
  });
57
57
  },
@@ -59,10 +59,10 @@ const Ce = {
59
59
  return `${this.data.name}-${t}` === this.selectedSortParam;
60
60
  }
61
61
  }
62
- }, $e = {
62
+ }, Oe = {
63
63
  scope: "col",
64
64
  class: "text-start px-2 py-1"
65
- }, Se = {
65
+ }, Ee = {
66
66
  class: "flex-shrink-0 size-3.5",
67
67
  xmlns: "http://www.w3.org/2000/svg",
68
68
  width: "24",
@@ -73,33 +73,33 @@ const Ce = {
73
73
  "stroke-width": "2",
74
74
  "stroke-linecap": "round",
75
75
  "stroke-linejoin": "round"
76
- }, Ie = {
76
+ }, Ne = {
77
77
  key: 0,
78
78
  d: "m7 15 5 5 5-5"
79
- }, Ae = {
79
+ }, He = {
80
80
  key: 1,
81
81
  d: "m7 9 5-5 5 5"
82
- }, Te = {
82
+ }, Re = {
83
83
  key: 1,
84
84
  class: "text-sm text-stone-500 px-[4px] py-2.5 text-start font-normal text-gray-500"
85
85
  };
86
- function Ve(t, e, n, a, r, o) {
87
- return l(), i("th", $e, [
88
- o.getVisibleIcon ? (l(), i("button", {
86
+ function We(t, e, s, i, n, o) {
87
+ return l(), a("th", Oe, [
88
+ o.getVisibleIcon ? (l(), a("button", {
89
89
  key: 0,
90
90
  type: "button",
91
91
  class: "text-sm text-stone-500 px-[4px] py-2.5 text-start font-normal text-gray-500 flex items-center gap-[6px]",
92
- onClick: e[0] || (e[0] = (u) => o.handleClickSortBtn(r.currentSort))
92
+ onClick: e[0] || (e[0] = (u) => o.handleClickSortBtn(n.currentSort))
93
93
  }, [
94
- D(S(o.label) + " ", 1),
95
- (l(), i("svg", Se, [
96
- r.currentSort === "asc" || r.currentSort === "" ? (l(), i("path", Ie)) : C("", !0),
97
- r.currentSort === "desc" || r.currentSort === "" ? (l(), i("path", Ae)) : C("", !0)
94
+ D(A(o.label) + " ", 1),
95
+ (l(), a("svg", Ee, [
96
+ n.currentSort === "asc" || n.currentSort === "" ? (l(), a("path", Ne)) : w("", !0),
97
+ n.currentSort === "desc" || n.currentSort === "" ? (l(), a("path", He)) : w("", !0)
98
98
  ]))
99
- ])) : (l(), i("p", Te, S(o.label), 1))
99
+ ])) : (l(), a("p", Re, A(o.label), 1))
100
100
  ]);
101
101
  }
102
- const De = /* @__PURE__ */ _(Ce, [["render", Ve]]), Fe = {}, Me = {
102
+ const Ge = /* @__PURE__ */ k(Ue, [["render", We]]), Ze = {}, Je = {
103
103
  class: "flex-shrink-0 size-3.5",
104
104
  xmlns: "http://www.w3.org/2000/svg",
105
105
  viewBox: "0 0 24 24",
@@ -109,42 +109,42 @@ const De = /* @__PURE__ */ _(Ce, [["render", Ve]]), Fe = {}, Me = {
109
109
  "stroke-linecap": "round",
110
110
  "stroke-linejoin": "round"
111
111
  };
112
- function je(t, e, n, a, r, o) {
113
- return l(), i("svg", Me, e[0] || (e[0] = [
112
+ function Ke(t, e, s, i, n, o) {
113
+ return l(), a("svg", Je, e[0] || (e[0] = [
114
114
  j('<path d="M3 6h18"></path><path d="M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"></path><path d="M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"></path><line x1="10" x2="10" y1="11" y2="17"></line><line x1="14" x2="14" y1="11" y2="17"></line>', 5)
115
115
  ]));
116
116
  }
117
- const qe = /* @__PURE__ */ _(Fe, [["render", je]]), ze = {
117
+ const Qe = /* @__PURE__ */ k(Ze, [["render", Ke]]), Xe = {
118
118
  props: {
119
119
  height: { type: String, default: "16" },
120
120
  width: { type: String, default: "12" },
121
121
  color: { type: String, default: "black" }
122
122
  }
123
- }, Be = { style: { display: "none" } }, Pe = ["height", "width", "fill"];
124
- function Le(t, e, n, a, r, o) {
125
- return l(), i($, null, [
126
- (l(), i("svg", Be, e[0] || (e[0] = [
127
- s("symbol", {
123
+ }, Ye = { style: { display: "none" } }, et = ["height", "width", "fill"];
124
+ function tt(t, e, s, i, n, o) {
125
+ return l(), a($, null, [
126
+ (l(), a("svg", Ye, e[0] || (e[0] = [
127
+ r("symbol", {
128
128
  id: "icon-pencil",
129
129
  viewBox: "0 0 32 32"
130
130
  }, [
131
- s("path", { d: "M27 0c2.761 0 5 2.239 5 5 0 1.126-0.372 2.164-1 3l-2 2-7-7 2-2c0.836-0.628 1.874-1 3-1zM2 23l-2 9 9-2 18.5-18.5-7-7-18.5 18.5zM22.362 11.362l-14 14-1.724-1.724 14-14 1.724 1.724z" })
131
+ r("path", { d: "M27 0c2.761 0 5 2.239 5 5 0 1.126-0.372 2.164-1 3l-2 2-7-7 2-2c0.836-0.628 1.874-1 3-1zM2 23l-2 9 9-2 18.5-18.5-7-7-18.5 18.5zM22.362 11.362l-14 14-1.724-1.724 14-14 1.724 1.724z" })
132
132
  ], -1)
133
133
  ]))),
134
- (l(), i("svg", {
135
- height: n.height,
136
- width: n.width,
137
- fill: n.color
134
+ (l(), a("svg", {
135
+ height: s.height,
136
+ width: s.width,
137
+ fill: s.color
138
138
  }, e[1] || (e[1] = [
139
- s("use", { "xlink:href": "#icon-pencil" }, null, -1)
140
- ]), 8, Pe))
139
+ r("use", { "xlink:href": "#icon-pencil" }, null, -1)
140
+ ]), 8, et))
141
141
  ], 64);
142
142
  }
143
- const Ue = /* @__PURE__ */ _(ze, [["render", Le]]), Oe = {
143
+ const nt = /* @__PURE__ */ k(Xe, [["render", tt]]), st = {
144
144
  components: {
145
- IconMore: pe,
146
- IconDelete: qe,
147
- IconEdit: Ue
145
+ IconMore: Ie,
146
+ IconDelete: Qe,
147
+ IconEdit: nt
148
148
  },
149
149
  emits: ["updateTable"],
150
150
  props: {
@@ -203,75 +203,75 @@ const Ue = /* @__PURE__ */ _(ze, [["render", Le]]), Oe = {
203
203
  }
204
204
  }
205
205
  }
206
- }, Ee = { class: "hs-dropdown [--placement:bottom-right] inline-flex" }, He = { class: "inline-flex items-center justify-center bg-white border rounded-lg shadow-sm size-7 gap-x-2 border-stone-200 text-stone-800 hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-50" }, Ne = { class: "flex flex-col items-start" }, We = {
206
+ }, rt = { class: "hs-dropdown [--placement:bottom-right] inline-flex" }, lt = { class: "inline-flex items-center justify-center bg-white border rounded-lg shadow-sm size-7 gap-x-2 border-stone-200 text-stone-800 hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-50" }, ot = { class: "flex flex-col items-start" }, at = {
207
207
  key: 1,
208
208
  class: "h-[1px] w-[80%] bg-gray-200 ml-auto mr-auto"
209
- }, Re = { class: "p-4" }, Ge = { class: "flex justify-end mt-4 gap-x-3" };
210
- function Ze(t, e, n, a, r, o) {
211
- const u = d("IconMore"), b = d("IconEdit"), p = d("router-link"), g = d("IconDelete"), k = d("VsPopover"), c = d("VsDialog");
212
- return l(), i($, null, [
213
- s("div", Ee, [
214
- f(k, {
209
+ }, it = { class: "p-4" }, ct = { class: "flex justify-end mt-4 gap-x-3" };
210
+ function ut(t, e, s, i, n, o) {
211
+ const u = h("IconMore"), b = h("IconEdit"), f = h("router-link"), g = h("IconDelete"), v = h("VsPopover"), c = h("VsDialog");
212
+ return l(), a($, null, [
213
+ r("div", rt, [
214
+ x(v, {
215
215
  trigger: "click",
216
216
  placement: "bottom-left"
217
217
  }, {
218
- reference: w(() => [
219
- s("button", He, [
220
- f(u, {
218
+ reference: C(() => [
219
+ r("button", lt, [
220
+ x(u, {
221
221
  height: "16",
222
222
  width: "16"
223
223
  })
224
224
  ])
225
225
  ]),
226
- default: w(() => {
227
- var y, h, x, I, F;
226
+ default: C(() => {
227
+ var m, p, S, y, F;
228
228
  return [
229
- s("div", Ne, [
230
- (y = n.actions) != null && y.includes("edit") && n.isForm ? (l(), v(p, {
229
+ r("div", ot, [
230
+ (m = s.actions) != null && m.includes("edit") && s.isForm ? (l(), _(f, {
231
231
  key: 0,
232
- to: `/edit?table=${(x = (h = t.$route) == null ? void 0 : h.params) == null ? void 0 : x.catchAll}&id=${(I = n.item) == null ? void 0 : I.id}`,
232
+ to: `/edit?table=${(S = (p = t.$route) == null ? void 0 : p.params) == null ? void 0 : S.catchAll}&id=${(y = s.item) == null ? void 0 : y.id}`,
233
233
  class: "w-full flex items-center gap-x-3 py-1.5 px-2 rounded-lg text-[13px] text-stone-800 hover:bg-stone-100 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-100"
234
234
  }, {
235
- default: w(() => [
236
- f(b, { color: "#000" }),
235
+ default: C(() => [
236
+ x(b, { color: "#000" }),
237
237
  e[4] || (e[4] = D(" Редагувати "))
238
238
  ]),
239
239
  _: 1
240
- }, 8, ["to"])) : C("", !0),
241
- n.isForm ? (l(), i("div", We)) : C("", !0),
242
- (F = n.actions) != null && F.includes("del") ? (l(), i("button", {
240
+ }, 8, ["to"])) : w("", !0),
241
+ s.isForm ? (l(), a("div", at)) : w("", !0),
242
+ (F = s.actions) != null && F.includes("del") ? (l(), a("button", {
243
243
  key: 2,
244
- onClick: e[0] || (e[0] = ye((...M) => o.openConfirm && o.openConfirm(...M), ["stop"])),
244
+ onClick: e[0] || (e[0] = qe((...q) => o.openConfirm && o.openConfirm(...q), ["stop"])),
245
245
  class: "w-full flex items-center gap-x-3 py-1.5 px-2 rounded-lg text-[13px] text-stone-800 hover:bg-stone-100 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-100"
246
246
  }, [
247
- f(g),
248
- e[5] || (e[5] = s("span", { class: "text-gray-800" }, "Видалити", -1))
249
- ])) : C("", !0)
247
+ x(g),
248
+ e[5] || (e[5] = r("span", { class: "text-gray-800" }, "Видалити", -1))
249
+ ])) : w("", !0)
250
250
  ])
251
251
  ];
252
252
  }),
253
253
  _: 1
254
254
  })
255
255
  ]),
256
- f(c, {
257
- visible: r.isDeleteConfirm,
258
- "onUpdate:visible": e[3] || (e[3] = (y) => r.isDeleteConfirm = y),
256
+ x(c, {
257
+ visible: n.isDeleteConfirm,
258
+ "onUpdate:visible": e[3] || (e[3] = (m) => n.isDeleteConfirm = m),
259
259
  size: "small",
260
260
  title: "Ви впевнені?"
261
261
  }, {
262
- default: w(() => [
263
- s("div", Re, [
264
- e[6] || (e[6] = s("p", { class: "mt-1 text-gray-500 dark:text-neutral-500" }, " Ви впевнені, що хочете видалити цей об'єкт? ", -1)),
265
- s("div", Ge, [
266
- s("button", {
262
+ default: C(() => [
263
+ r("div", it, [
264
+ e[6] || (e[6] = r("p", { class: "mt-1 text-gray-500 dark:text-neutral-500" }, " Ви впевнені, що хочете видалити цей об'єкт? ", -1)),
265
+ r("div", ct, [
266
+ r("button", {
267
267
  type: "button",
268
268
  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",
269
- onClick: e[1] || (e[1] = (y) => r.isDeleteConfirm = !1)
269
+ onClick: e[1] || (e[1] = (m) => n.isDeleteConfirm = !1)
270
270
  }, " Скасувати "),
271
- s("button", {
271
+ r("button", {
272
272
  type: "button",
273
273
  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",
274
- onClick: e[2] || (e[2] = (...y) => o.deleteElement && o.deleteElement(...y))
274
+ onClick: e[2] || (e[2] = (...m) => o.deleteElement && o.deleteElement(...m))
275
275
  }, " Так, я впевнена/ий ")
276
276
  ])
277
277
  ])
@@ -280,7 +280,7 @@ function Ze(t, e, n, a, r, o) {
280
280
  }, 8, ["visible"])
281
281
  ], 64);
282
282
  }
283
- const Je = /* @__PURE__ */ _(Oe, [["render", Ze]]), Ke = {}, Qe = {
283
+ const dt = /* @__PURE__ */ k(st, [["render", ut]]), ht = {}, pt = {
284
284
  class: "flex-shrink-0 mt-0.5 size-3.5",
285
285
  xmlns: "http://www.w3.org/2000/svg",
286
286
  viewBox: "0 0 24 24",
@@ -290,15 +290,15 @@ const Je = /* @__PURE__ */ _(Oe, [["render", Ze]]), Ke = {}, Qe = {
290
290
  "stroke-linecap": "round",
291
291
  "stroke-linejoin": "round"
292
292
  };
293
- function Xe(t, e, n, a, r, o) {
294
- return l(), i("svg", Qe, e[0] || (e[0] = [
295
- s("path", { d: "m3 16 4 4 4-4" }, null, -1),
296
- s("path", { d: "M7 20V4" }, null, -1),
297
- s("path", { d: "m21 8-4-4-4 4" }, null, -1),
298
- s("path", { d: "M17 4v16" }, null, -1)
293
+ function ft(t, e, s, i, n, o) {
294
+ return l(), a("svg", pt, e[0] || (e[0] = [
295
+ r("path", { d: "m3 16 4 4 4-4" }, null, -1),
296
+ r("path", { d: "M7 20V4" }, null, -1),
297
+ r("path", { d: "m21 8-4-4-4 4" }, null, -1),
298
+ r("path", { d: "M17 4v16" }, null, -1)
299
299
  ]));
300
300
  }
301
- const Ye = /* @__PURE__ */ _(Ke, [["render", Xe]]), et = {}, tt = {
301
+ const bt = /* @__PURE__ */ k(ht, [["render", ft]]), mt = {}, gt = {
302
302
  xmlns: "http://www.w3.org/2000/svg",
303
303
  width: "24",
304
304
  height: "24",
@@ -310,19 +310,19 @@ const Ye = /* @__PURE__ */ _(Ke, [["render", Xe]]), et = {}, tt = {
310
310
  "stroke-linejoin": "round",
311
311
  class: "icon icon-tabler icons-tabler-outline icon-tabler-rosette-discount-check"
312
312
  };
313
- function rt(t, e, n, a, r, o) {
314
- return l(), i("svg", tt, e[0] || (e[0] = [
315
- s("path", {
313
+ function xt(t, e, s, i, n, o) {
314
+ return l(), a("svg", gt, e[0] || (e[0] = [
315
+ r("path", {
316
316
  stroke: "none",
317
317
  d: "M0 0h24v24H0z",
318
318
  fill: "none"
319
319
  }, null, -1),
320
- s("path", { d: "M5 7.2a2.2 2.2 0 0 1 2.2 -2.2h1a2.2 2.2 0 0 0 1.55 -.64l.7 -.7a2.2 2.2 0 0 1 3.12 0l.7 .7c.412 .41 .97 .64 1.55 .64h1a2.2 2.2 0 0 1 2.2 2.2v1c0 .58 .23 1.138 .64 1.55l.7 .7a2.2 2.2 0 0 1 0 3.12l-.7 .7a2.2 2.2 0 0 0 -.64 1.55v1a2.2 2.2 0 0 1 -2.2 2.2h-1a2.2 2.2 0 0 0 -1.55 .64l-.7 .7a2.2 2.2 0 0 1 -3.12 0l-.7 -.7a2.2 2.2 0 0 0 -1.55 -.64h-1a2.2 2.2 0 0 1 -2.2 -2.2v-1a2.2 2.2 0 0 0 -.64 -1.55l-.7 -.7a2.2 2.2 0 0 1 0 -3.12l.7 -.7a2.2 2.2 0 0 0 .64 -1.55v-1" }, null, -1),
321
- s("path", { d: "M9 12l2 2l4 -4" }, null, -1)
320
+ r("path", { d: "M5 7.2a2.2 2.2 0 0 1 2.2 -2.2h1a2.2 2.2 0 0 0 1.55 -.64l.7 -.7a2.2 2.2 0 0 1 3.12 0l.7 .7c.412 .41 .97 .64 1.55 .64h1a2.2 2.2 0 0 1 2.2 2.2v1c0 .58 .23 1.138 .64 1.55l.7 .7a2.2 2.2 0 0 1 0 3.12l-.7 .7a2.2 2.2 0 0 0 -.64 1.55v1a2.2 2.2 0 0 1 -2.2 2.2h-1a2.2 2.2 0 0 0 -1.55 .64l-.7 .7a2.2 2.2 0 0 1 -3.12 0l-.7 -.7a2.2 2.2 0 0 0 -1.55 -.64h-1a2.2 2.2 0 0 1 -2.2 -2.2v-1a2.2 2.2 0 0 0 -.64 -1.55l-.7 -.7a2.2 2.2 0 0 1 0 -3.12l.7 -.7a2.2 2.2 0 0 0 .64 -1.55v-1" }, null, -1),
321
+ r("path", { d: "M9 12l2 2l4 -4" }, null, -1)
322
322
  ]));
323
323
  }
324
- const nt = /* @__PURE__ */ _(et, [["render", rt]]), st = {
325
- components: { IconExport: Ye, IconChevronDown: we, IconSuccess: nt },
324
+ const yt = /* @__PURE__ */ k(mt, [["render", xt]]), _t = {
325
+ components: { IconExport: bt, IconChevronDown: Le, IconSuccess: yt },
326
326
  props: {
327
327
  table: String,
328
328
  columns: Array,
@@ -386,13 +386,13 @@ const nt = /* @__PURE__ */ _(et, [["render", rt]]), st = {
386
386
  custom: this.filterCustom || null
387
387
  },
388
388
  responseType: "blob"
389
- }), n = new Blob([e.data], {
389
+ }), s = new Blob([e.data], {
390
390
  type: "application/octet-stream"
391
- }), a = window.URL.createObjectURL(n), r = document.createElement("a");
392
- r.href = a, r.setAttribute(
391
+ }), i = window.URL.createObjectURL(s), n = document.createElement("a");
392
+ n.href = i, n.setAttribute(
393
393
  "download",
394
394
  `${this.table.split(".")[0]}.${this.format}`
395
- ), document.body.appendChild(r), r.click(), document.body.removeChild(r), window.URL.revokeObjectURL(a), this.$notify({
395
+ ), document.body.appendChild(n), n.click(), document.body.removeChild(n), window.URL.revokeObjectURL(i), this.$notify({
396
396
  type: "success",
397
397
  title: "Експорт",
398
398
  message: "Файл успішно експортовано!"
@@ -417,135 +417,135 @@ const nt = /* @__PURE__ */ _(et, [["render", rt]]), st = {
417
417
  },
418
418
  choceVisible() {
419
419
  var t, e;
420
- this.cols = (e = (t = this.columns) == null ? void 0 : t.filter((n) => (n == null ? void 0 : n.hidden) !== !0)) == null ? void 0 : e.map((n) => n == null ? void 0 : n.name), this.activeAction = "choceVisible";
420
+ this.cols = (e = (t = this.columns) == null ? void 0 : t.filter((s) => (s == null ? void 0 : s.hidden) !== !0)) == null ? void 0 : e.map((s) => s == null ? void 0 : s.name), this.activeAction = "choceVisible";
421
421
  }
422
422
  }
423
- }, lt = {
423
+ }, kt = {
424
424
  key: 0,
425
425
  class: "flex flex-col items-center"
426
- }, ot = {
426
+ }, vt = {
427
427
  key: 1,
428
428
  class: "p-4"
429
- }, it = { class: "pb-5 mb-5 border-b border-gray-200 last:pb-0 last:mb-0 last:border-b-0 dark:border-neutral-700" }, at = { class: "flex items-center" }, ct = { class: "flex items-center gap-[10px] ml-auto" }, ut = ["onClick"], dt = {
429
+ }, wt = { class: "pb-5 mb-5 border-b border-gray-200 last:pb-0 last:mb-0 last:border-b-0 dark:border-neutral-700" }, Ct = { class: "flex items-center" }, $t = { class: "flex items-center gap-[10px] ml-auto" }, St = ["onClick"], At = {
430
430
  key: 0,
431
431
  class: "block h-[8px] w-[8px] rounded-full bg-blue-500"
432
- }, ht = { class: "mt-2 flex row flex-wrap gap-y-[5px] gap-x-[10px]" }, pt = { class: "pb-5 mb-5 border-b border-gray-200 last:pb-0 last:mb-0 last:border-b-0 dark:border-neutral-700" }, bt = { class: "mt-2 space-y-2" }, ft = ["id", "onChange"], mt = ["for"], gt = {
432
+ }, It = { class: "mt-2 flex row flex-wrap gap-y-[5px] gap-x-[10px]" }, Tt = { class: "pb-5 mb-5 border-b border-gray-200 last:pb-0 last:mb-0 last:border-b-0 dark:border-neutral-700" }, Vt = { class: "mt-2 space-y-2" }, Dt = ["id", "onChange"], Ft = ["for"], Mt = {
433
433
  key: 0,
434
434
  class: "flex w-full justify-end p-[20px] gap-[6px] border-t"
435
- }, xt = {
435
+ }, jt = {
436
436
  key: 1,
437
437
  class: "flex w-full justify-end p-[20px] gap-[6px] border-t"
438
438
  };
439
- function yt(t, e, n, a, r, o) {
440
- const u = d("IconExport"), b = d("IconChevronDown"), p = d("IconSuccess"), g = d("VsCheckbox"), k = d("VsDialog");
441
- return l(), i($, null, [
442
- s("button", {
443
- onClick: e[0] || (e[0] = (c) => r.isOpen = !0),
439
+ function qt(t, e, s, i, n, o) {
440
+ const u = h("IconExport"), b = h("IconChevronDown"), f = h("IconSuccess"), g = h("VsCheckbox"), v = h("VsDialog");
441
+ return l(), a($, null, [
442
+ r("button", {
443
+ onClick: e[0] || (e[0] = (c) => n.isOpen = !0),
444
444
  class: "py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs font-medium rounded-lg border border-gray-200 bg-white text-gray-800 shadow-sm 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"
445
445
  }, [
446
- f(u, {
446
+ x(u, {
447
447
  height: "16",
448
448
  width: "16"
449
449
  }),
450
450
  e[7] || (e[7] = D(" Експорт ")),
451
- f(b, {
451
+ x(b, {
452
452
  height: "12",
453
453
  width: "16"
454
454
  })
455
455
  ]),
456
- f(k, {
457
- visible: r.isOpen,
458
- "onUpdate:visible": e[6] || (e[6] = (c) => r.isOpen = c),
456
+ x(v, {
457
+ visible: n.isOpen,
458
+ "onUpdate:visible": e[6] || (e[6] = (c) => n.isOpen = c),
459
459
  title: "Експорт таблиці",
460
460
  size: "small",
461
461
  closeClickBack: !0
462
462
  }, {
463
- footer: w(() => [
464
- r.isSuccessTemplate ? (l(), i("div", gt, [
465
- s("button", {
463
+ footer: C(() => [
464
+ n.isSuccessTemplate ? (l(), a("div", Mt, [
465
+ r("button", {
466
466
  type: "button",
467
467
  class: "inline-flex items-center justify-center px-3 py-2 text-sm font-medium text-gray-800 align-middle bg-white border border-gray-200 rounded-lg shadow-sm text-nowrap text-start hover:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-800 dark:border-neutral-700 dark:text-neutral-300 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700",
468
- onClick: e[2] || (e[2] = (c) => r.isOpen = !1)
468
+ onClick: e[2] || (e[2] = (c) => n.isOpen = !1)
469
469
  }, " Закрити "),
470
- s("button", {
470
+ r("button", {
471
471
  type: "button",
472
472
  class: "inline-flex items-center justify-center px-3 py-2 text-sm font-medium text-white align-middle bg-blue-600 border border-blue-600 rounded-lg shadow-sm text-nowrap gap-x-2 text-start hover:bg-blue-700 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:ring-1 focus:ring-blue-300 dark:focus:ring-blue-500",
473
- onClick: e[3] || (e[3] = (c) => r.isSuccessTemplate = !1)
473
+ onClick: e[3] || (e[3] = (c) => n.isSuccessTemplate = !1)
474
474
  }, " Вигрузити ще ")
475
- ])) : (l(), i("div", xt, [
476
- s("button", {
475
+ ])) : (l(), a("div", jt, [
476
+ r("button", {
477
477
  type: "button",
478
478
  class: "inline-flex items-center justify-center px-3 py-2 text-sm font-medium text-gray-800 align-middle bg-white border border-gray-200 rounded-lg shadow-sm text-nowrap text-start hover:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-800 dark:border-neutral-700 dark:text-neutral-300 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700",
479
- onClick: e[4] || (e[4] = (c) => r.isOpen = !1)
479
+ onClick: e[4] || (e[4] = (c) => n.isOpen = !1)
480
480
  }, " Скасувати "),
481
- s("button", {
481
+ r("button", {
482
482
  type: "button",
483
483
  class: "inline-flex items-center justify-center px-3 py-2 text-sm font-medium text-white align-middle bg-blue-600 border border-blue-600 rounded-lg shadow-sm text-nowrap gap-x-2 text-start hover:bg-blue-700 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:ring-1 focus:ring-blue-300 dark:focus:ring-blue-500",
484
484
  onClick: e[5] || (e[5] = (...c) => o.exportTable && o.exportTable(...c))
485
485
  }, " Завантажити таблицю ")
486
486
  ]))
487
487
  ]),
488
- default: w(() => [
489
- r.isSuccessTemplate ? (l(), i("div", lt, [
490
- f(p, {
488
+ default: C(() => [
489
+ n.isSuccessTemplate ? (l(), a("div", kt, [
490
+ x(f, {
491
491
  height: "100",
492
492
  width: "100",
493
493
  class: "text-green-200 mb-[20px]"
494
494
  }),
495
- e[8] || (e[8] = s("h2", null, "Звіт сформовано і збережено", -1))
496
- ])) : (l(), i("div", ot, [
497
- s("div", it, [
498
- s("div", at, [
499
- e[9] || (e[9] = s("h2", { class: "text-sm text-gray-500" }, " Виберіть стовпці таблиці для експорту: ", -1)),
500
- s("div", ct, [
501
- (l(!0), i($, null, A(r.actions, (c) => (l(), i("button", {
495
+ e[8] || (e[8] = r("h2", null, "Звіт сформовано і збережено", -1))
496
+ ])) : (l(), a("div", vt, [
497
+ r("div", wt, [
498
+ r("div", Ct, [
499
+ e[9] || (e[9] = r("h2", { class: "text-sm text-gray-500" }, " Виберіть стовпці таблиці для експорту: ", -1)),
500
+ r("div", $t, [
501
+ (l(!0), a($, null, T(n.actions, (c) => (l(), a("button", {
502
502
  key: c == null ? void 0 : c.name,
503
503
  onClick: c == null ? void 0 : c.function,
504
504
  class: "inline-flex items-center gap-[8px] justify-center px-3 py-2 text-sm font-medium text-gray-800 align-middle bg-white border-gray-200 text-nowrap text-start"
505
505
  }, [
506
- s("span", {
507
- class: T(["h-[14px] w-[14px] border rounded-full flex items-center justify-center", { "border-blue-500": (c == null ? void 0 : c.name) === r.activeAction }])
506
+ r("span", {
507
+ class: I(["h-[14px] w-[14px] border rounded-full flex items-center justify-center", { "border-blue-500": (c == null ? void 0 : c.name) === n.activeAction }])
508
508
  }, [
509
- (c == null ? void 0 : c.name) === r.activeAction ? (l(), i("span", dt)) : C("", !0)
509
+ (c == null ? void 0 : c.name) === n.activeAction ? (l(), a("span", At)) : w("", !0)
510
510
  ], 2),
511
- D(" " + S(c == null ? void 0 : c.label), 1)
512
- ], 8, ut))), 128))
511
+ D(" " + A(c == null ? void 0 : c.label), 1)
512
+ ], 8, St))), 128))
513
513
  ])
514
514
  ]),
515
- s("div", ht, [
516
- (l(!0), i($, null, A(n.columns, (c, y) => (l(), i("div", {
515
+ r("div", It, [
516
+ (l(!0), a($, null, T(s.columns, (c, m) => (l(), a("div", {
517
517
  class: "flex items-center",
518
- key: y,
518
+ key: m,
519
519
  style: { width: "calc((100% - 10px) / 2)" }
520
520
  }, [
521
- f(g, {
521
+ x(g, {
522
522
  class: "[&>label]:text-sm [&>label]:text-gray-800 [&>label]:ms-3 !gap-x-[1px] !p-0",
523
- modelValue: r.cols,
524
- "onUpdate:modelValue": e[1] || (e[1] = (h) => r.cols = h),
523
+ modelValue: n.cols,
524
+ "onUpdate:modelValue": e[1] || (e[1] = (p) => n.cols = p),
525
525
  value: c == null ? void 0 : c.name,
526
526
  label: c == null ? void 0 : c.ua
527
527
  }, null, 8, ["modelValue", "value", "label"])
528
528
  ]))), 128))
529
529
  ])
530
530
  ]),
531
- s("div", pt, [
532
- e[10] || (e[10] = s("h2", { class: "text-sm text-gray-500" }, "Виберіть формат таблиці:", -1)),
533
- s("div", bt, [
534
- (l(!0), i($, null, A(r.tableFormats, (c, y) => (l(), i("div", {
531
+ r("div", Tt, [
532
+ e[10] || (e[10] = r("h2", { class: "text-sm text-gray-500" }, "Виберіть формат таблиці:", -1)),
533
+ r("div", Vt, [
534
+ (l(!0), a($, null, T(n.tableFormats, (c, m) => (l(), a("div", {
535
535
  class: "flex items-center",
536
- key: y
536
+ key: m
537
537
  }, [
538
- s("input", {
538
+ r("input", {
539
539
  type: "radio",
540
540
  name: "hs-pro-duecmfm",
541
541
  class: "text-blue-600 border-gray-300 rounded-full shrink-0 focus:ring-blue-500 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-800 dark:border-neutral-500 dark:checked:bg-blue-500 dark:checked:border-blue-500 dark:focus:ring-offset-gray-800",
542
542
  id: c,
543
- onChange: (h) => o.selectFormat(c)
544
- }, null, 40, ft),
545
- s("label", {
543
+ onChange: (p) => o.selectFormat(c)
544
+ }, null, 40, Dt),
545
+ r("label", {
546
546
  for: c,
547
547
  class: "text-sm text-gray-800 ms-3 dark:text-neutral-400"
548
- }, " Формат " + S(c), 9, mt)
548
+ }, " Формат " + A(c), 9, Ft)
549
549
  ]))), 128))
550
550
  ])
551
551
  ])
@@ -555,7 +555,7 @@ function yt(t, e, n, a, r, o) {
555
555
  }, 8, ["visible"])
556
556
  ], 64);
557
557
  }
558
- const _t = /* @__PURE__ */ _(st, [["render", yt]]), kt = {}, vt = {
558
+ const Bt = /* @__PURE__ */ k(_t, [["render", qt]]), zt = {}, Pt = {
559
559
  xmlns: "http://www.w3.org/2000/svg",
560
560
  viewBox: "0 0 24 24",
561
561
  fill: "none",
@@ -565,12 +565,12 @@ const _t = /* @__PURE__ */ _(st, [["render", yt]]), kt = {}, vt = {
565
565
  "stroke-linejoin": "round",
566
566
  class: "icon icon-tabler icons-tabler-outline icon-tabler-columns"
567
567
  };
568
- function wt(t, e, n, a, r, o) {
569
- return l(), i("svg", vt, e[0] || (e[0] = [
568
+ function Lt(t, e, s, i, n, o) {
569
+ return l(), a("svg", Pt, e[0] || (e[0] = [
570
570
  j('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M4 6l5.5 0"></path><path d="M4 10l5.5 0"></path><path d="M4 14l5.5 0"></path><path d="M4 18l5.5 0"></path><path d="M14.5 6l5.5 0"></path><path d="M14.5 10l5.5 0"></path><path d="M14.5 14l5.5 0"></path><path d="M14.5 18l5.5 0"></path>', 9)
571
571
  ]));
572
572
  }
573
- const Ct = /* @__PURE__ */ _(kt, [["render", wt]]), $t = {
573
+ const Ut = /* @__PURE__ */ k(zt, [["render", Lt]]), Ot = {
574
574
  props: { column: Object },
575
575
  emits: ["update-column"],
576
576
  data() {
@@ -587,50 +587,50 @@ const Ct = /* @__PURE__ */ _(kt, [["render", wt]]), $t = {
587
587
  var t;
588
588
  ((t = this.column) == null ? void 0 : t.hidden) !== !0 && (this.value = !0);
589
589
  }
590
- }, St = { class: "flex w-full gap-[8px] items-centr" };
591
- function It(t, e, n, a, r, o) {
590
+ }, Et = { class: "flex w-full gap-[8px] items-centr" };
591
+ function Nt(t, e, s, i, n, o) {
592
592
  var u, b;
593
- return l(), i("label", St, [
594
- q(s("input", {
595
- "onUpdate:modelValue": e[0] || (e[0] = (p) => r.value = p),
593
+ return l(), a("label", Et, [
594
+ z(r("input", {
595
+ "onUpdate:modelValue": e[0] || (e[0] = (f) => n.value = f),
596
596
  type: "checkbox"
597
597
  }, null, 512), [
598
- [_e, r.value]
598
+ [Be, n.value]
599
599
  ]),
600
- D(" " + S(((u = n.column) == null ? void 0 : u.ua) || ((b = n.column) == null ? void 0 : b.title)), 1)
600
+ D(" " + A(((u = s.column) == null ? void 0 : u.ua) || ((b = s.column) == null ? void 0 : b.title)), 1)
601
601
  ]);
602
602
  }
603
- const At = /* @__PURE__ */ _($t, [["render", It]]), Tt = {
604
- components: { IconColumns: Ct, AdminTableColumnsHiddenItem: At },
603
+ const Ht = /* @__PURE__ */ k(Ot, [["render", Nt]]), Rt = {
604
+ components: { IconColumns: Ut, AdminTableColumnsHiddenItem: Ht },
605
605
  emits: ["update-columns"],
606
606
  props: { columns: Array },
607
607
  methods: {
608
608
  updateColumn(t) {
609
- const e = this.columns.findIndex((a) => (a == null ? void 0 : a.name) === (t == null ? void 0 : t.name)), n = this.columns;
610
- n[e] = t, this.$emit("update-columns", [...n]);
609
+ const e = this.columns.findIndex((i) => (i == null ? void 0 : i.name) === (t == null ? void 0 : t.name)), s = this.columns;
610
+ s[e] = t, this.$emit("update-columns", [...s]);
611
611
  }
612
612
  }
613
- }, Vt = { class: "py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs font-medium rounded-lg border border-gray-200 bg-white text-gray-800 shadow-sm 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" }, Dt = { class: "py-[10px] px-[10px] w-[260px]" }, Ft = { class: "flex flex-col gap-[3px] max-h-[400px] w-full overflow-auto [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar:horizontal]:h-[8px] [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500" };
614
- function Mt(t, e, n, a, r, o) {
615
- const u = d("IconColumns"), b = d("AdminTableColumnsHiddenItem"), p = d("VsPopover");
616
- return l(), v(p, {
613
+ }, Wt = { class: "py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs font-medium rounded-lg border border-gray-200 bg-white text-gray-800 shadow-sm 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" }, Gt = { class: "py-[10px] px-[10px] w-[260px]" }, Zt = { class: "flex flex-col gap-[3px] max-h-[400px] w-full overflow-auto [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar:horizontal]:h-[8px] [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500" };
614
+ function Jt(t, e, s, i, n, o) {
615
+ const u = h("IconColumns"), b = h("AdminTableColumnsHiddenItem"), f = h("VsPopover");
616
+ return l(), _(f, {
617
617
  trigger: "click",
618
618
  placement: "bottom"
619
619
  }, {
620
- reference: w(() => [
621
- s("button", Vt, [
622
- f(u, {
620
+ reference: C(() => [
621
+ r("button", Wt, [
622
+ x(u, {
623
623
  height: "20",
624
624
  width: "16"
625
625
  })
626
626
  ])
627
627
  ]),
628
- default: w(() => [
629
- s("div", Dt, [
630
- e[0] || (e[0] = s("h2", { class: "text-sm mb-[8px]" }, "Оберіть колонки, щоб приховати", -1)),
631
- s("ul", Ft, [
632
- (l(!0), i($, null, A(n.columns, (g, k) => (l(), i("li", { key: k }, [
633
- f(b, {
628
+ default: C(() => [
629
+ r("div", Gt, [
630
+ e[0] || (e[0] = r("h2", { class: "text-sm mb-[8px]" }, "Оберіть колонки, щоб приховати", -1)),
631
+ r("ul", Zt, [
632
+ (l(!0), a($, null, T(s.columns, (g, v) => (l(), a("li", { key: v }, [
633
+ x(b, {
634
634
  column: g,
635
635
  onUpdateColumn: o.updateColumn
636
636
  }, null, 8, ["column", "onUpdateColumn"])
@@ -641,45 +641,45 @@ function Mt(t, e, n, a, r, o) {
641
641
  _: 1
642
642
  });
643
643
  }
644
- const jt = /* @__PURE__ */ _(Tt, [["render", Mt]]), qt = {}, zt = {
644
+ const Kt = /* @__PURE__ */ k(Rt, [["render", Jt]]), Qt = {}, Xt = {
645
645
  class: "hidden sm:block shrink-0 size-3",
646
646
  xmlns: "http://www.w3.org/2000/svg",
647
647
  fill: "currentColor",
648
648
  viewBox: "0 0 16 16"
649
649
  };
650
- function Bt(t, e, n, a, r, o) {
651
- return l(), i("svg", zt, e[0] || (e[0] = [
652
- s("path", {
650
+ function Yt(t, e, s, i, n, o) {
651
+ return l(), a("svg", Xt, e[0] || (e[0] = [
652
+ r("path", {
653
653
  "fill-rule": "evenodd",
654
654
  "clip-rule": "evenodd",
655
655
  d: "M8 1C8.55228 1 9 1.44772 9 2V7L14 7C14.5523 7 15 7.44771 15 8C15 8.55228 14.5523 9 14 9L9 9V14C9 14.5523 8.55228 15 8 15C7.44772 15 7 14.5523 7 14V9.00001L2 9.00001C1.44772 9.00001 1 8.5523 1 8.00001C0.999999 7.44773 1.44771 7.00001 2 7.00001L7 7.00001V2C7 1.44772 7.44772 1 8 1Z"
656
656
  }, null, -1)
657
657
  ]));
658
658
  }
659
- const oe = /* @__PURE__ */ _(qt, [["render", Bt]]), Pt = {}, Lt = { class: "vs-table-interface__table-wrp w-full rounded h-fit overflow-hidden" };
660
- function Ut(t, e, n, a, r, o) {
661
- return l(), i("div", Lt, e[0] || (e[0] = [
659
+ const ke = /* @__PURE__ */ k(Qt, [["render", Yt]]), en = {}, tn = { class: "vs-table-interface__table-wrp w-full rounded h-fit overflow-hidden" };
660
+ function nn(t, e, s, i, n, o) {
661
+ return l(), a("div", tn, e[0] || (e[0] = [
662
662
  j('<div><div class="p-5 min-h-[500px] flex flex-col justify-center items-center text-center"><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><div class="max-w-sm mx-auto mt-6"><p class="font-medium text-gray-800 dark:text-neutral-200"> Дані для відображення відсутні </p><p class="mt-2 text-sm text-gray-500 dark:text-neutral-500"> Змініть параметри пошуку або спробуйте пізніше </p></div></div></div>', 1)
663
663
  ]));
664
664
  }
665
- const Ot = /* @__PURE__ */ _(Pt, [["render", Ut]]), Et = {
665
+ const sn = /* @__PURE__ */ k(en, [["render", nn]]), rn = {
666
666
  props: { row: Object, column: Object, table: String }
667
667
  };
668
- function Ht(t, e, n, a, r, o) {
669
- var u, b, p, g, k, c, y, h;
670
- return l(), v(ke(
671
- ((u = n.column) == null ? void 0 : u.format) === "custom" ? (b = n.column) == null ? void 0 : b.component : `table-format-${((g = (p = n.column) == null ? void 0 : p.format) == null ? void 0 : g.toLowerCase()) || "text"}`
668
+ function ln(t, e, s, i, n, o) {
669
+ var u, b, f, g, v, c, m, p;
670
+ return l(), _(B(
671
+ ((u = s.column) == null ? void 0 : u.format) === "custom" ? (b = s.column) == null ? void 0 : b.component : `table-format-${((g = (f = s.column) == null ? void 0 : f.format) == null ? void 0 : g.toLowerCase()) || "text"}`
672
672
  ), {
673
- onUpdateTable: e[0] || (e[0] = (x) => t.$emit("update-table")),
674
- name: (k = n.column) == null ? void 0 : k.name,
675
- data: n.row,
676
- value: (y = n.row) == null ? void 0 : y[(c = n.column) == null ? void 0 : c.name],
677
- table: n.table,
678
- column: n.column,
679
- edit: (h = n.column) == null ? void 0 : h.edit
673
+ onUpdateTable: e[0] || (e[0] = (S) => t.$emit("update-table")),
674
+ name: (v = s.column) == null ? void 0 : v.name,
675
+ data: s.row,
676
+ value: (m = s.row) == null ? void 0 : m[(c = s.column) == null ? void 0 : c.name],
677
+ table: s.table,
678
+ column: s.column,
679
+ edit: (p = s.column) == null ? void 0 : p.edit
680
680
  }, null, 40, ["name", "data", "value", "table", "column", "edit"]);
681
681
  }
682
- const ie = /* @__PURE__ */ _(Et, [["render", Ht]]), Nt = {}, Wt = {
682
+ const ve = /* @__PURE__ */ k(rn, [["render", ln]]), on = {}, an = {
683
683
  xmlns: "http://www.w3.org/2000/svg",
684
684
  viewBox: "0 0 24 24",
685
685
  fill: "none",
@@ -689,51 +689,54 @@ const ie = /* @__PURE__ */ _(Et, [["render", Ht]]), Nt = {}, Wt = {
689
689
  "stroke-linejoin": "round",
690
690
  class: "icon icon-tabler icons-tabler-outline icon-tabler-minus"
691
691
  };
692
- function Rt(t, e, n, a, r, o) {
693
- return l(), i("svg", Wt, e[0] || (e[0] = [
694
- s("path", {
692
+ function cn(t, e, s, i, n, o) {
693
+ return l(), a("svg", an, e[0] || (e[0] = [
694
+ r("path", {
695
695
  stroke: "none",
696
696
  d: "M0 0h24v24H0z",
697
697
  fill: "none"
698
698
  }, null, -1),
699
- s("path", { d: "M5 12l14 0" }, null, -1)
699
+ r("path", { d: "M5 12l14 0" }, null, -1)
700
700
  ]));
701
701
  }
702
- const Gt = /* @__PURE__ */ _(Nt, [["render", Rt]]), Zt = {
703
- components: { IconPlus: oe, IconMinus: Gt },
704
- props: { title: String },
702
+ const un = /* @__PURE__ */ k(on, [["render", cn]]), dn = {
703
+ components: { IconPlus: ke, IconMinus: un },
704
+ props: {
705
+ title: String,
706
+ defaultValue: { type: Boolean, default: () => !1 }
707
+ },
705
708
  data() {
706
- return { expanded: !1 };
709
+ return { expanded: this.defaultValue };
707
710
  }
708
- }, Jt = { class: "hs-accordion" }, Kt = { class: "py-0.5 flex items-center gap-x-0.5 w-full" }, Qt = { class: "text-sm font-medium" }, Xt = { class: "w-full duration-150 before:block before:absolute relative inline-block b cursor-pointer" };
709
- function Yt(t, e, n, a, r, o) {
710
- const u = d("IconPlus"), b = d("IconMinus");
711
- return l(), i("div", null, [
712
- s("div", null, [
713
- s("div", Jt, [
714
- s("div", Kt, [
715
- s("div", {
716
- onClick: e[0] || (e[0] = (p) => r.expanded = !r.expanded),
717
- class: "grow rounded-md cursor-pointer"
711
+ }, hn = { class: "hs-accordion" }, pn = { class: "py-0.5 flex items-center gap-x-0.5 w-full" }, fn = { class: "text-sm font-medium" }, bn = { class: "relative inline-block w-full duration-150 cursor-pointer before:block before:absolute b" };
712
+ function mn(t, e, s, i, n, o) {
713
+ const u = h("IconPlus"), b = h("IconMinus");
714
+ return l(), a("div", null, [
715
+ r("div", null, [
716
+ r("div", hn, [
717
+ r("div", pn, [
718
+ r("div", {
719
+ onClick: e[0] || (e[0] = (f) => n.expanded = !n.expanded),
720
+ class: "rounded-md cursor-pointer grow"
718
721
  }, [
719
- s("span", Qt, S(n.title), 1)
722
+ r("span", fn, A(s.title), 1)
720
723
  ]),
721
- s("button", {
722
- class: "size-6 flex justify-center items-center hover:bg-gray-100 rounded-md",
723
- onClick: e[1] || (e[1] = (p) => r.expanded = !r.expanded)
724
+ r("button", {
725
+ class: "flex items-center justify-center rounded-md size-6 hover:bg-gray-100",
726
+ onClick: e[1] || (e[1] = (f) => n.expanded = !n.expanded)
724
727
  }, [
725
- r.expanded ? (l(), v(b, {
728
+ n.expanded ? (l(), _(b, {
726
729
  key: 1,
727
730
  width: "14"
728
- })) : (l(), v(u, { key: 0 }))
731
+ })) : (l(), _(u, { key: 0 }))
729
732
  ])
730
733
  ]),
731
- f(z, { name: "fade" }, {
732
- default: w(() => [
733
- q(s("div", Xt, [
734
- ve(t.$slots, "default", {}, void 0, !0)
734
+ x(P, { name: "fade" }, {
735
+ default: C(() => [
736
+ z(r("div", bn, [
737
+ ze(t.$slots, "default", {}, void 0, !0)
735
738
  ], 512), [
736
- [le, r.expanded]
739
+ [_e, n.expanded]
737
740
  ])
738
741
  ]),
739
742
  _: 3
@@ -742,67 +745,69 @@ function Yt(t, e, n, a, r, o) {
742
745
  ])
743
746
  ]);
744
747
  }
745
- const er = /* @__PURE__ */ _(Zt, [["render", Yt], ["__scopeId", "data-v-4139bc00"]]), tr = {
748
+ const gn = /* @__PURE__ */ k(dn, [["render", mn], ["__scopeId", "data-v-c6318482"]]), xn = {
746
749
  components: {
747
- AdminComponentIs: ie,
748
- AdminTree: er,
749
- VsNoData: be,
750
- VsWidgetComments: fe,
751
- VsWidgetMap: me,
752
- VsWidgetFileList: ge
750
+ AdminComponentIs: ve,
751
+ AdminTree: gn,
752
+ VsNoData: Te,
753
+ VsWidgetComments: Ve,
754
+ VsWidgetMap: De,
755
+ VsWidgetFileList: Fe
753
756
  },
754
757
  props: { table: String, columns: Array, row: Object }
755
- }, rr = {
758
+ }, yn = {
756
759
  class: "hs-accordion border-gray-100 w-[360px] shrink-0 overflow-auto [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar:horizontal]:h-[8px] [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500",
757
760
  style: { height: "calc(100vh - 310px)" }
758
- }, nr = {
761
+ }, _n = {
759
762
  class: "border-l",
760
763
  style: { height: "calc(100vh - 360px)" }
761
- }, sr = { class: "flex items-center justify-between py-1 gap-x-4" }, lr = { class: "col-span-1" }, or = { class: "inline-flex items-center gap-x-2 text-[13px] text-gray-500 dark:text-neutral-500" }, ir = { class: "col-span-2" }, ar = { class: "font-medium text-[13px] text-gray-800 dark:text-neutral-200" }, cr = { class: "table-info-card" }, ur = { class: "table-info-card" };
762
- function dr(t, e, n, a, r, o) {
763
- var y, h;
764
- const u = d("AdminComponentIs"), b = d("AdminTree"), p = d("VsWidgetMap"), g = d("VsNoData"), k = d("VsWidgetComments"), c = d("VsWidgetFileList");
765
- return l(), i("div", rr, [
766
- e[0] || (e[0] = s("div", { class: "p-[10px] pl-[18px] pb-[18px] border-b" }, [
767
- s("h2", { class: "text-sm font-medium" }, "Інформація про об'єкт")
764
+ }, kn = { class: "flex items-center justify-between py-1 gap-x-4" }, vn = { class: "col-span-1" }, wn = { class: "inline-flex items-center gap-x-2 text-[13px] text-gray-500 dark:text-neutral-500" }, Cn = { class: "col-span-2" }, $n = { class: "font-medium text-[13px] text-gray-800 dark:text-neutral-200" }, Sn = { class: "table-info-card" }, An = { class: "table-info-card" };
765
+ function In(t, e, s, i, n, o) {
766
+ var m, p, S;
767
+ const u = h("AdminComponentIs"), b = h("AdminTree"), f = h("VsWidgetMap"), g = h("VsNoData"), v = h("VsWidgetComments"), c = h("VsWidgetFileList");
768
+ return l(), a("div", yn, [
769
+ e[0] || (e[0] = r("div", { class: "p-[10px] pl-[18px] pb-[18px] border-b" }, [
770
+ r("h2", { class: "text-sm font-medium" }, "Інформація про об'єкт")
768
771
  ], -1)),
769
- s("div", nr, [
770
- (h = (y = t.$route) == null ? void 0 : y.query) != null && h.card ? (l(), i($, { key: 0 }, [
771
- n.row ? (l(), v(b, {
772
+ r("div", _n, [
773
+ (p = (m = t.$route) == null ? void 0 : m.query) != null && p.card ? (l(), a($, { key: 0 }, [
774
+ s.row ? (l(), _(b, {
772
775
  key: 0,
776
+ defaultValue: !0,
773
777
  title: "Основна інформація",
774
778
  class: "border-b p-[10px] py-[16px]"
775
779
  }, {
776
- default: w(() => [
777
- (l(!0), i($, null, A(n.columns, (x) => (l(), i("dl", sr, [
778
- s("dt", lr, [
779
- s("p", or, S((x == null ? void 0 : x.ua) || (x == null ? void 0 : x.title)) + ": ", 1)
780
+ default: C(() => [
781
+ (l(!0), a($, null, T(s.columns, (y) => (l(), a("dl", kn, [
782
+ r("dt", vn, [
783
+ r("p", wn, A((y == null ? void 0 : y.ua) || (y == null ? void 0 : y.title)) + ": ", 1)
780
784
  ]),
781
- s("dd", ir, [
782
- s("p", ar, [
783
- f(u, {
784
- row: n.row,
785
- column: x,
786
- table: n.table
785
+ r("dd", Cn, [
786
+ r("p", $n, [
787
+ x(u, {
788
+ row: s.row,
789
+ column: y,
790
+ table: s.table
787
791
  }, null, 8, ["row", "column", "table"])
788
792
  ])
789
793
  ])
790
794
  ]))), 256))
791
795
  ]),
792
796
  _: 1
793
- })) : C("", !0),
794
- f(b, {
797
+ })) : w("", !0),
798
+ (S = s.row) != null && S.geom ? (l(), _(b, {
799
+ key: 1,
795
800
  title: "Карта",
796
801
  class: "border-b p-[10px] py-[16px]"
797
802
  }, {
798
- default: w(() => {
799
- var x, I;
803
+ default: C(() => {
804
+ var y, F;
800
805
  return [
801
- (x = n.row) != null && x.geom ? (l(), v(p, {
806
+ (y = s.row) != null && y.geom ? (l(), _(f, {
802
807
  key: 0,
803
- geometry: (I = n.row) == null ? void 0 : I.geom,
808
+ geometry: (F = s.row) == null ? void 0 : F.geom,
804
809
  zoom: 14
805
- }, null, 8, ["geometry"])) : (l(), v(g, {
810
+ }, null, 8, ["geometry"])) : (l(), _(g, {
806
811
  key: 1,
807
812
  title: "У об'єкта відсутня геометрія",
808
813
  text: "",
@@ -811,47 +816,47 @@ function dr(t, e, n, a, r, o) {
811
816
  ];
812
817
  }),
813
818
  _: 1
814
- }),
815
- f(b, {
819
+ })) : w("", !0),
820
+ x(b, {
816
821
  title: "Коментарі",
817
822
  class: "border-b p-[10px] py-[16px]"
818
823
  }, {
819
- default: w(() => {
820
- var x;
824
+ default: C(() => {
825
+ var y;
821
826
  return [
822
- s("div", cr, [
823
- f(k, {
824
- id: (x = n.row) == null ? void 0 : x.id
827
+ r("div", Sn, [
828
+ x(v, {
829
+ id: (y = s.row) == null ? void 0 : y.id
825
830
  }, null, 8, ["id"])
826
831
  ])
827
832
  ];
828
833
  }),
829
834
  _: 1
830
835
  }),
831
- f(b, {
836
+ x(b, {
832
837
  title: "Файли",
833
838
  class: "border-b p-[10px] py-[16px]"
834
839
  }, {
835
- default: w(() => {
836
- var x;
840
+ default: C(() => {
841
+ var y;
837
842
  return [
838
- s("div", ur, [
839
- f(c, {
840
- id: (x = n.row) == null ? void 0 : x.id
843
+ r("div", An, [
844
+ x(c, {
845
+ id: (y = s.row) == null ? void 0 : y.id
841
846
  }, null, 8, ["id"])
842
847
  ])
843
848
  ];
844
849
  }),
845
850
  _: 1
846
851
  })
847
- ], 64)) : (l(), v(g, {
852
+ ], 64)) : (l(), _(g, {
848
853
  key: 1,
849
854
  text: "Оберіть один з об'єктів в таблиці для відображення інформаціі про нього"
850
855
  }))
851
856
  ])
852
857
  ]);
853
858
  }
854
- const hr = /* @__PURE__ */ _(tr, [["render", dr]]), pr = {}, br = {
859
+ const Tn = /* @__PURE__ */ k(xn, [["render", In]]), Vn = {}, Dn = {
855
860
  class: "hidden xl:block shrink-0 size-4",
856
861
  xmlns: "http://www.w3.org/2000/svg",
857
862
  viewBox: "0 0 24 24",
@@ -861,20 +866,20 @@ const hr = /* @__PURE__ */ _(tr, [["render", dr]]), pr = {}, br = {
861
866
  "stroke-linecap": "round",
862
867
  "stroke-linejoin": "round"
863
868
  };
864
- function fr(t, e, n, a, r, o) {
865
- return l(), i("svg", br, e[0] || (e[0] = [
866
- s("rect", {
869
+ function Fn(t, e, s, i, n, o) {
870
+ return l(), a("svg", Dn, e[0] || (e[0] = [
871
+ r("rect", {
867
872
  width: "18",
868
873
  height: "18",
869
874
  x: "3",
870
875
  y: "3",
871
876
  rx: "2"
872
877
  }, null, -1),
873
- s("path", { d: "M15 3v18" }, null, -1),
874
- s("path", { d: "m8 9 3 3-3 3" }, null, -1)
878
+ r("path", { d: "M15 3v18" }, null, -1),
879
+ r("path", { d: "m8 9 3 3-3 3" }, null, -1)
875
880
  ]));
876
881
  }
877
- const mr = /* @__PURE__ */ _(pr, [["render", fr]]), gr = {}, xr = {
882
+ const Mn = /* @__PURE__ */ k(Vn, [["render", Fn]]), jn = {}, qn = {
878
883
  class: "h21yx vs0hq",
879
884
  xmlns: "http://www.w3.org/2000/svg",
880
885
  width: "24",
@@ -886,15 +891,15 @@ const mr = /* @__PURE__ */ _(pr, [["render", fr]]), gr = {}, xr = {
886
891
  "stroke-linecap": "round",
887
892
  "stroke-linejoin": "round"
888
893
  };
889
- function yr(t, e, n, a, r, o) {
890
- return l(), i("svg", xr, e[0] || (e[0] = [
894
+ function Bn(t, e, s, i, n, o) {
895
+ return l(), a("svg", qn, e[0] || (e[0] = [
891
896
  j('<line x1="21" x2="14" y1="4" y2="4"></line><line x1="10" x2="3" y1="4" y2="4"></line><line x1="21" x2="12" y1="12" y2="12"></line><line x1="8" x2="3" y1="12" y2="12"></line><line x1="21" x2="16" y1="20" y2="20"></line><line x1="12" x2="3" y1="20" y2="20"></line><line x1="14" x2="14" y1="2" y2="6"></line><line x1="8" x2="8" y1="10" y2="14"></line><line x1="16" x2="16" y1="18" y2="22"></line>', 9)
892
897
  ]));
893
898
  }
894
- const _r = /* @__PURE__ */ _(gr, [["render", yr]]), kr = {
899
+ const zn = /* @__PURE__ */ k(jn, [["render", Bn]]), Pn = {
895
900
  emits: ["filterChange"],
896
901
  props: { scheme: { type: Object }, onFilters: { type: Number } },
897
- components: { IconFilter: _r },
902
+ components: { IconFilter: zn },
898
903
  data() {
899
904
  return {
900
905
  isFilters: !1
@@ -905,49 +910,49 @@ const _r = /* @__PURE__ */ _(gr, [["render", yr]]), kr = {
905
910
  this.isFilters && t.classList.contains("filter-container") && (this.isFilters = !1);
906
911
  }
907
912
  }
908
- }, vr = {
913
+ }, Ln = {
909
914
  key: 0,
910
915
  class: "font-medium text-[10px] py-0.5 px-[5px] bg-gray-800 text-white leading-3 rounded-full dark:bg-neutral-500"
911
- }, wr = { class: "filter-content h-screen bg-white w-[400px] p-[20px] pt-[10px] overflow-x-auto bg-white [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar:horizontal]:h-[8px] [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500" };
912
- function Cr(t, e, n, a, r, o) {
913
- const u = d("IconFilter"), b = d("VsFilter");
914
- return l(), i($, null, [
915
- s("button", {
916
- onClick: e[0] || (e[0] = (p) => r.isFilters = !r.isFilters),
916
+ }, Un = { class: "filter-content h-screen bg-white w-[400px] p-[20px] pt-[10px] overflow-x-auto bg-white [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar:horizontal]:h-[8px] [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500" };
917
+ function On(t, e, s, i, n, o) {
918
+ const u = h("IconFilter"), b = h("VsFilter");
919
+ return l(), a($, null, [
920
+ r("button", {
921
+ onClick: e[0] || (e[0] = (f) => n.isFilters = !n.isFilters),
917
922
  class: "py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs font-medium rounded-lg border border-gray-200 bg-white text-gray-800 shadow-sm 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"
918
923
  }, [
919
- f(u, {
924
+ x(u, {
920
925
  height: "16",
921
926
  width: "16"
922
927
  }),
923
928
  e[4] || (e[4] = D(" Фільтри ")),
924
- n.onFilters ? (l(), i("span", vr, S(n.onFilters), 1)) : C("", !0)
929
+ s.onFilters ? (l(), a("span", Ln, A(s.onFilters), 1)) : w("", !0)
925
930
  ]),
926
- f(z, { name: "fade" }, {
927
- default: w(() => {
928
- var p;
931
+ x(P, { name: "fade" }, {
932
+ default: C(() => {
933
+ var f;
929
934
  return [
930
- q(s("div", {
935
+ z(r("div", {
931
936
  onClick: e[3] || (e[3] = (...g) => o.closeFilter && o.closeFilter(...g)),
932
937
  style: { height: "100vh" },
933
938
  class: "fixed filter-container top-0 flex justify-end items-center z-[2] right-0 left-0 bottom-0 bg-[rgba(0,0,0,0.5)]"
934
939
  }, [
935
- s("div", wr, [
936
- (p = n.scheme) != null && p.length ? (l(), v(b, {
940
+ r("div", Un, [
941
+ (f = s.scheme) != null && f.length ? (l(), _(b, {
937
942
  key: 0,
938
943
  ref: "filter",
939
- scheme: n.scheme,
944
+ scheme: s.scheme,
940
945
  layout: "default",
941
946
  "apply-vue-router": "",
942
947
  history: "",
943
948
  name: "filter",
944
949
  onFilterChange: e[1] || (e[1] = (g) => t.$emit("filterChange", g)),
945
950
  closeFilterBtn: !0,
946
- onFilterClose: e[2] || (e[2] = (g) => r.isFilters = !1)
947
- }, null, 8, ["scheme"])) : C("", !0)
951
+ onFilterClose: e[2] || (e[2] = (g) => n.isFilters = !1)
952
+ }, null, 8, ["scheme"])) : w("", !0)
948
953
  ])
949
954
  ], 512), [
950
- [le, r.isFilters]
955
+ [_e, n.isFilters]
951
956
  ])
952
957
  ];
953
958
  }),
@@ -955,25 +960,25 @@ function Cr(t, e, n, a, r, o) {
955
960
  })
956
961
  ], 64);
957
962
  }
958
- const $r = /* @__PURE__ */ _(kr, [["render", Cr]]), Sr = {
963
+ const En = /* @__PURE__ */ k(Pn, [["render", On]]), Nn = {
959
964
  props: { tabsList: { type: Array, default: () => [] }, filterState: String }
960
- }, Ir = {
965
+ }, Hn = {
961
966
  class: "relative flex space-x-1 mb-[20px] after:absolute after:w-[99%] after:bottom-0 after:inset-x-0 after:border-b-2 after:border-gray-200 dark:after:border-neutral-700",
962
967
  "aria-label": "Tabs",
963
968
  role: "tablist",
964
969
  "aria-orientation": "horizontal"
965
- }, Ar = ["onClick"];
966
- function Tr(t, e, n, a, r, o) {
967
- return l(), i("nav", Ir, [
968
- (l(!0), i($, null, A(n.tabsList, (u) => (l(), i("button", {
970
+ }, Rn = ["onClick"];
971
+ function Wn(t, e, s, i, n, o) {
972
+ return l(), a("nav", Hn, [
973
+ (l(!0), a($, null, T(s.tabsList, (u) => (l(), a("button", {
969
974
  onClick: (b) => t.$emit("update:filterState", u == null ? void 0 : u.name),
970
- class: T(["hs-tab-active:after:bg-gray-800 hs-tab-active:text-gray-800 px-2.5 py-1.5 mb-2 relative inline-flex justify-center items-center gap-x-2 hover:bg-gray-100 text-gray-500 hover:text-gray-800 text-sm rounded-lg disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100 after:absolute after:-bottom-2 after:inset-x-0 after:z-10 after:h-0.5 after:pointer-events-none dark:hs-tab-active:text-neutral-200 dark:hs-tab-active:after:bg-neutral-400 dark:text-neutral-500 dark:hover:text-neutral-300 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700 active", {
971
- " font-semibold after:absolute after:bottom-[-8px] after:left-2.5 after:right-2.5 after:z-10 after:h-0.5 after:bg-gray-800": (u == null ? void 0 : u.name) === n.filterState
975
+ class: I(["hs-tab-active:after:bg-gray-800 hs-tab-active:text-gray-800 px-2.5 py-1.5 mb-2 relative inline-flex justify-center items-center gap-x-2 hover:bg-gray-100 text-gray-500 hover:text-gray-800 text-sm rounded-lg disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100 after:absolute after:-bottom-2 after:inset-x-0 after:z-10 after:h-0.5 after:pointer-events-none dark:hs-tab-active:text-neutral-200 dark:hs-tab-active:after:bg-neutral-400 dark:text-neutral-500 dark:hover:text-neutral-300 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700 active", {
976
+ " font-semibold after:absolute after:bottom-[-8px] after:left-2.5 after:right-2.5 after:z-10 after:h-0.5 after:bg-gray-800": (u == null ? void 0 : u.name) === s.filterState
972
977
  }])
973
- }, S(u == null ? void 0 : u.label), 11, Ar))), 256))
978
+ }, A(u == null ? void 0 : u.label), 11, Rn))), 256))
974
979
  ]);
975
980
  }
976
- const Vr = /* @__PURE__ */ _(Sr, [["render", Tr]]), Dr = {}, Fr = {
981
+ const Gn = /* @__PURE__ */ k(Nn, [["render", Wn]]), Zn = {}, Jn = {
977
982
  xmlns: "http://www.w3.org/2000/svg",
978
983
  viewBox: "0 0 24 24",
979
984
  fill: "none",
@@ -983,47 +988,47 @@ const Vr = /* @__PURE__ */ _(Sr, [["render", Tr]]), Dr = {}, Fr = {
983
988
  "stroke-linejoin": "round",
984
989
  class: "icon icon-tabler icons-tabler-outline icon-tabler-filter"
985
990
  };
986
- function Mr(t, e, n, a, r, o) {
987
- return l(), i("svg", Fr, e[0] || (e[0] = [
988
- s("path", {
991
+ function Kn(t, e, s, i, n, o) {
992
+ return l(), a("svg", Jn, e[0] || (e[0] = [
993
+ r("path", {
989
994
  stroke: "none",
990
995
  d: "M0 0h24v24H0z",
991
996
  fill: "none"
992
997
  }, null, -1),
993
- s("path", { d: "M4 4h16v2.172a2 2 0 0 1 -.586 1.414l-4.414 4.414v7l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227z" }, null, -1)
998
+ r("path", { d: "M4 4h16v2.172a2 2 0 0 1 -.586 1.414l-4.414 4.414v7l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227z" }, null, -1)
994
999
  ]));
995
1000
  }
996
- const jr = /* @__PURE__ */ _(Dr, [["render", Mr]]), qr = {
997
- components: { IconFilter2: jr },
1001
+ const Qn = /* @__PURE__ */ k(Zn, [["render", Kn]]), Xn = {
1002
+ components: { IconFilter2: Qn },
998
1003
  props: { filterCustom: String, customList: Array }
999
- }, zr = { class: "py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs font-medium rounded-lg border border-gray-200 bg-white text-gray-800 shadow-sm 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" }, Br = { class: "flex flex-col gap-[4px]" }, Pr = ["onClick"];
1000
- function Lr(t, e, n, a, r, o) {
1001
- const u = d("IconFilter2"), b = d("VsPopover");
1002
- return l(), v(b, {
1004
+ }, Yn = { class: "py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs font-medium rounded-lg border border-gray-200 bg-white text-gray-800 shadow-sm 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" }, es = { class: "flex flex-col gap-[4px]" }, ts = ["onClick"];
1005
+ function ns(t, e, s, i, n, o) {
1006
+ const u = h("IconFilter2"), b = h("VsPopover");
1007
+ return l(), _(b, {
1003
1008
  ref: "popover",
1004
1009
  placement: "bottom"
1005
1010
  }, {
1006
- reference: w(() => [
1007
- s("button", zr, [
1008
- f(u, {
1011
+ reference: C(() => [
1012
+ r("button", Yn, [
1013
+ x(u, {
1009
1014
  height: "20",
1010
1015
  width: "20"
1011
1016
  })
1012
1017
  ])
1013
1018
  ]),
1014
- default: w(() => [
1015
- s("div", Br, [
1016
- (l(!0), i($, null, A(n.customList, (p, g) => (l(), i("button", {
1017
- onClick: (k) => {
1019
+ default: C(() => [
1020
+ r("div", es, [
1021
+ (l(!0), a($, null, T(s.customList, (f, g) => (l(), a("button", {
1022
+ onClick: (v) => {
1018
1023
  var c;
1019
- t.$emit("update:filterCustom", p == null ? void 0 : p.name), (c = t.$refs) == null || c.popover.togglePopover();
1024
+ t.$emit("update:filterCustom", f == null ? void 0 : f.name), (c = t.$refs) == null || c.popover.togglePopover();
1020
1025
  },
1021
1026
  key: g,
1022
- class: T(["p-[8px] block rounded-lg w-[140px] text-start hover:bg-gray-100 !duration-300", { "bg-gray-100": n.filterCustom === (p == null ? void 0 : p.name) }])
1023
- }, S(p == null ? void 0 : p.label), 11, Pr))), 128)),
1024
- s("button", {
1027
+ class: I(["p-[8px] block rounded-lg w-[140px] text-start hover:bg-gray-100 !duration-300", { "bg-gray-100": s.filterCustom === (f == null ? void 0 : f.name) }])
1028
+ }, A(f == null ? void 0 : f.label), 11, ts))), 128)),
1029
+ r("button", {
1025
1030
  class: "p-[8px] block rounded-lg w-[140px] text-start hover:bg-gray-100 !duration-300",
1026
- onClick: e[0] || (e[0] = (p) => {
1031
+ onClick: e[0] || (e[0] = (f) => {
1027
1032
  var g;
1028
1033
  t.$emit("update:filterCustom", void 0), (g = t.$refs) == null || g.popover.togglePopover();
1029
1034
  })
@@ -1033,29 +1038,61 @@ function Lr(t, e, n, a, r, o) {
1033
1038
  _: 1
1034
1039
  }, 512);
1035
1040
  }
1036
- const Ur = /* @__PURE__ */ _(qr, [["render", Lr]]), Or = (t, e = 300) => {
1037
- let n;
1038
- return function(...a) {
1039
- clearTimeout(n), n = setTimeout(() => {
1040
- t.apply(this, a);
1041
+ const ss = /* @__PURE__ */ k(Xn, [["render", ns]]), rs = { class: "flex items-center gap-x-2" }, ls = {
1042
+ __name: "admin-table-custom-buttons",
1043
+ props: {
1044
+ slots: Object
1045
+ },
1046
+ setup(t) {
1047
+ var b, f, g, v, c;
1048
+ const { asyncTemplateSlot: e } = (c = (v = (g = (f = (b = Pe()) == null ? void 0 : b.appContext) == null ? void 0 : f.app) == null ? void 0 : g.config) == null ? void 0 : v.globalProperties) == null ? void 0 : c.utils, s = xe(""), i = xe(""), n = t, o = () => {
1049
+ var m;
1050
+ if (n.slots.panelLeft.includes("<")) {
1051
+ const p = e("PanelLeft", (m = n.slots) == null ? void 0 : m.panelLeft, [
1052
+ "name"
1053
+ ]);
1054
+ i.value = p;
1055
+ } else
1056
+ i.value = n.slots.panelLeft;
1057
+ }, u = () => {
1058
+ var m;
1059
+ if (n.slots.panelRight.includes("<")) {
1060
+ const p = e("PanelRight", (m = n.slots) == null ? void 0 : m.panelRight, [
1061
+ "name"
1062
+ ]);
1063
+ s.value = p;
1064
+ } else
1065
+ s.value = n.slots.panelRight;
1066
+ };
1067
+ return o(), u(), (m, p) => (l(), a("div", rs, [
1068
+ (l(), _(B(i.value))),
1069
+ (l(), _(B(s.value)))
1070
+ ]));
1071
+ }
1072
+ }, os = (t, e = 300) => {
1073
+ let s;
1074
+ return function(...i) {
1075
+ clearTimeout(s), s = setTimeout(() => {
1076
+ t.apply(this, i);
1041
1077
  }, e);
1042
1078
  };
1043
- }, Er = {
1079
+ }, as = {
1044
1080
  props: { table: String, title: String },
1045
1081
  components: {
1046
- AdminTableControl: Je,
1047
- AdminTableExport: _t,
1048
- AdminTableColumnsHidden: jt,
1049
- AdminTableColumn: De,
1050
- AdminNodata: Ot,
1051
- IconPlus: oe,
1052
- IconSearch: xe,
1053
- AdminTableCardInfo: hr,
1054
- IconOpenCard: mr,
1055
- AdminComponentIs: ie,
1056
- AdminTableFilters: $r,
1057
- AdminTableTabs: Vr,
1058
- AdminTableCustomFilters: Ur
1082
+ AdminTableControl: dt,
1083
+ AdminTableExport: Bt,
1084
+ AdminTableColumnsHidden: Kt,
1085
+ AdminTableColumn: Ge,
1086
+ AdminNodata: sn,
1087
+ IconPlus: ke,
1088
+ IconSearch: Me,
1089
+ AdminTableCardInfo: Tn,
1090
+ IconOpenCard: Mn,
1091
+ AdminComponentIs: ve,
1092
+ AdminTableFilters: En,
1093
+ AdminTableTabs: Gn,
1094
+ AdminTableCustomFilters: ss,
1095
+ AdminTableCustomButtons: ls
1059
1096
  },
1060
1097
  data() {
1061
1098
  return {
@@ -1084,7 +1121,7 @@ const Ur = /* @__PURE__ */ _(qr, [["render", Lr]]), Or = (t, e = 300) => {
1084
1121
  },
1085
1122
  columns() {
1086
1123
  var t, e;
1087
- return (e = (t = this.tableData) == null ? void 0 : t.columns) == null ? void 0 : e.filter((n) => (n == null ? void 0 : n.hidden) !== !0);
1124
+ return (e = (t = this.tableData) == null ? void 0 : t.columns) == null ? void 0 : e.filter((s) => (s == null ? void 0 : s.hidden) !== !0);
1088
1125
  },
1089
1126
  isForm() {
1090
1127
  var t;
@@ -1096,9 +1133,9 @@ const Ur = /* @__PURE__ */ _(qr, [["render", Lr]]), Or = (t, e = 300) => {
1096
1133
  },
1097
1134
  activeCardRow() {
1098
1135
  var t, e;
1099
- return ((e = (t = this.tableData) == null ? void 0 : t.rows) == null ? void 0 : e.find((n) => {
1100
- var a, r;
1101
- return (n == null ? void 0 : n.id) === ((r = (a = this.$route) == null ? void 0 : a.query) == null ? void 0 : r.card);
1136
+ return ((e = (t = this.tableData) == null ? void 0 : t.rows) == null ? void 0 : e.find((s) => {
1137
+ var i, n;
1138
+ return (s == null ? void 0 : s.id) === ((n = (i = this.$route) == null ? void 0 : i.query) == null ? void 0 : n.card);
1102
1139
  })) || {};
1103
1140
  },
1104
1141
  getActions() {
@@ -1111,7 +1148,7 @@ const Ur = /* @__PURE__ */ _(qr, [["render", Lr]]), Or = (t, e = 300) => {
1111
1148
  this.tableData = null, await this.getTableData();
1112
1149
  },
1113
1150
  searchValue: {
1114
- handler: Or(async function(t) {
1151
+ handler: os(async function(t) {
1115
1152
  var e;
1116
1153
  await this.getTableData(), this.$router.push({
1117
1154
  ...this.$route,
@@ -1121,8 +1158,8 @@ const Ur = /* @__PURE__ */ _(qr, [["render", Lr]]), Or = (t, e = 300) => {
1121
1158
  },
1122
1159
  $route: {
1123
1160
  handler(t, e) {
1124
- var n, a;
1125
- ((n = t == null ? void 0 : t.params) == null ? void 0 : n.catchAll) !== ((a = e == null ? void 0 : e.params) == null ? void 0 : a.catchAll) && (this.visibleColumns = [], this.unmountedData(), this.getFilters());
1161
+ var s, i;
1162
+ ((s = t == null ? void 0 : t.params) == null ? void 0 : s.catchAll) !== ((i = e == null ? void 0 : e.params) == null ? void 0 : i.catchAll) && (this.visibleColumns = [], this.unmountedData(), this.getFilters());
1126
1163
  },
1127
1164
  deep: !0
1128
1165
  },
@@ -1145,36 +1182,36 @@ const Ur = /* @__PURE__ */ _(qr, [["render", Lr]]), Or = (t, e = 300) => {
1145
1182
  }), this.getTableData();
1146
1183
  },
1147
1184
  columns(t) {
1148
- var e, n, a, r;
1185
+ var e, s, i, n;
1149
1186
  this.visibleColumns = t == null ? void 0 : t.map((o) => o == null ? void 0 : o.name), this.initialHiddenColumns === ((e = this.visibleColumns) == null ? void 0 : e.join(",")) && (this.visibleColumns = []), this.$router.replace({
1150
1187
  ...this.$route,
1151
1188
  query: {
1152
- ...(n = this.$route) == null ? void 0 : n.query,
1153
- columns: (a = this.visibleColumns) != null && a.length ? (r = this.visibleColumns) == null ? void 0 : r.join(",") : void 0
1189
+ ...(s = this.$route) == null ? void 0 : s.query,
1190
+ columns: (i = this.visibleColumns) != null && i.length ? (n = this.visibleColumns) == null ? void 0 : n.join(",") : void 0
1154
1191
  }
1155
1192
  });
1156
1193
  }
1157
1194
  },
1158
1195
  methods: {
1159
1196
  async checkUrlMounted() {
1160
- var t, e, n, a, r, o, u, b, p, g, k, c, y, h, x, I;
1161
- this.page = ((e = (t = this.$route) == null ? void 0 : t.query) == null ? void 0 : e.page) || 1, this.limit = ((a = (n = this.$route) == null ? void 0 : n.query) == null ? void 0 : a.limit) || 20, this.filters = decodeURI((o = (r = this.$route) == null ? void 0 : r.query) == null ? void 0 : o.filter) || void 0, this.filterState = ((b = (u = this.$route) == null ? void 0 : u.query) == null ? void 0 : b.filterState) || null, this.filterCustom = ((g = (p = this.$route) == null ? void 0 : p.query) == null ? void 0 : g.custom) || null, this.searchValue = ((c = (k = this.$route) == null ? void 0 : k.query) == null ? void 0 : c.search) || "", this.visibleColumns = ((x = (h = (y = this.$route) == null ? void 0 : y.query) == null ? void 0 : h.columns) == null ? void 0 : x.split(",")) || [], (I = this.$route) != null && I.query.card && (this.isVisibleCardInfo = !0);
1197
+ var t, e, s, i, n, o, u, b, f, g, v, c, m, p, S, y;
1198
+ this.page = ((e = (t = this.$route) == null ? void 0 : t.query) == null ? void 0 : e.page) || 1, this.limit = ((i = (s = this.$route) == null ? void 0 : s.query) == null ? void 0 : i.limit) || 20, this.filters = decodeURI((o = (n = this.$route) == null ? void 0 : n.query) == null ? void 0 : o.filter) || void 0, this.filterState = ((b = (u = this.$route) == null ? void 0 : u.query) == null ? void 0 : b.filterState) || null, this.filterCustom = ((g = (f = this.$route) == null ? void 0 : f.query) == null ? void 0 : g.custom) || null, this.searchValue = ((c = (v = this.$route) == null ? void 0 : v.query) == null ? void 0 : c.search) || "", this.visibleColumns = ((S = (p = (m = this.$route) == null ? void 0 : m.query) == null ? void 0 : p.columns) == null ? void 0 : S.split(",")) || [], (y = this.$route) != null && y.query.card && (this.isVisibleCardInfo = !0);
1162
1199
  },
1163
1200
  rowWidth(t) {
1164
- var n, a;
1165
- const e = (a = (n = this.tableData) == null ? void 0 : n.columns) == null ? void 0 : a.find((r) => r.name === t);
1201
+ var s, i;
1202
+ const e = (i = (s = this.tableData) == null ? void 0 : s.columns) == null ? void 0 : i.find((n) => n.name === t);
1166
1203
  if (e) {
1167
- const r = e == null ? void 0 : e.width;
1168
- return r != null && r.includes("px") ? r : `${r}px`;
1204
+ const n = e == null ? void 0 : e.width;
1205
+ return n != null && n.includes("px") ? n : `${n}px`;
1169
1206
  }
1170
1207
  },
1171
1208
  unmountedData() {
1172
1209
  this.page = 1, this.visibleColumns = [], this.filterCustom = null, this.filterState = null, this.isVisibleCardInfo = !1, this.filterScheme = null, this.filters = null, this.onFilters = 0, this.searchValue = "";
1173
1210
  },
1174
1211
  async getTableData() {
1175
- var t, e, n, a, r, o, u, b, p, g, k;
1212
+ var t, e, s, i, n, o, u, b, f, g, v;
1176
1213
  try {
1177
- const { data: c } = await V.get(`/api/template/table/${this.table}`), y = await V.get(`/api/table-data/${this.table}`, {
1214
+ const { data: c } = await V.get(`/api/template/table/${this.table}`), m = await V.get(`/api/table-data/${this.table}`, {
1178
1215
  params: {
1179
1216
  page: this.page,
1180
1217
  search: this.searchValue || null,
@@ -1187,11 +1224,11 @@ const Ur = /* @__PURE__ */ _(qr, [["render", Lr]]), Or = (t, e = 300) => {
1187
1224
  });
1188
1225
  this.tableData = {
1189
1226
  ...c,
1190
- ...(y == null ? void 0 : y.data) || {}
1191
- }, this.initialHiddenColumns = (o = (r = (a = (n = this.tableData) == null ? void 0 : n.columns) == null ? void 0 : a.filter((h) => (h == null ? void 0 : h.hidden) !== !0)) == null ? void 0 : r.map((h) => h == null ? void 0 : h.name)) == null ? void 0 : o.join(","), (u = this.visibleColumns) != null && u.length ? (b = this.tableData) == null || b.columns.forEach((h) => {
1192
- var x;
1193
- (x = this.visibleColumns) != null && x.includes(h == null ? void 0 : h.name) ? h.hidden = !1 : h.hidden = !0;
1194
- }) : this.visibleColumns = (k = (g = (p = this.tableData) == null ? void 0 : p.columns) == null ? void 0 : g.filter((h) => (h == null ? void 0 : h.hidden) !== !0)) == null ? void 0 : k.map((h) => h == null ? void 0 : h.name);
1227
+ ...(m == null ? void 0 : m.data) || {}
1228
+ }, this.initialHiddenColumns = (o = (n = (i = (s = this.tableData) == null ? void 0 : s.columns) == null ? void 0 : i.filter((p) => (p == null ? void 0 : p.hidden) !== !0)) == null ? void 0 : n.map((p) => p == null ? void 0 : p.name)) == null ? void 0 : o.join(","), (u = this.visibleColumns) != null && u.length ? (b = this.tableData) == null || b.columns.forEach((p) => {
1229
+ var S;
1230
+ (S = this.visibleColumns) != null && S.includes(p == null ? void 0 : p.name) ? p.hidden = !1 : p.hidden = !0;
1231
+ }) : this.visibleColumns = (v = (g = (f = this.tableData) == null ? void 0 : f.columns) == null ? void 0 : g.filter((p) => (p == null ? void 0 : p.hidden) !== !0)) == null ? void 0 : v.map((p) => p == null ? void 0 : p.name);
1195
1232
  } catch {
1196
1233
  }
1197
1234
  },
@@ -1199,9 +1236,9 @@ const Ur = /* @__PURE__ */ _(qr, [["render", Lr]]), Or = (t, e = 300) => {
1199
1236
  var t;
1200
1237
  try {
1201
1238
  const { data: e } = await V.get(`/api/table-filter/${this.table}`);
1202
- this.filterScheme = (t = e == null ? void 0 : e.list) == null ? void 0 : t.map((n) => ({
1203
- ...n,
1204
- label: (n == null ? void 0 : n.label) || (n == null ? void 0 : n.ua)
1239
+ this.filterScheme = (t = e == null ? void 0 : e.list) == null ? void 0 : t.map((s) => ({
1240
+ ...s,
1241
+ label: (s == null ? void 0 : s.label) || (s == null ? void 0 : s.ua)
1205
1242
  }));
1206
1243
  } catch {
1207
1244
  }
@@ -1214,8 +1251,8 @@ const Ur = /* @__PURE__ */ _(qr, [["render", Lr]]), Or = (t, e = 300) => {
1214
1251
  this.limit = await t, this.defaultPage = 1, await this.getTableData();
1215
1252
  },
1216
1253
  async filterChange({ url: t, state: e }) {
1217
- var n;
1218
- this.filters = t !== "no-url" ? t : null, this.onFilters = (n = Object.entries(e)) == null ? void 0 : n.length, this.page = 1, await this.getTableData();
1254
+ var s;
1255
+ this.filters = t !== "no-url" ? t : null, this.onFilters = (s = Object.entries(e)) == null ? void 0 : s.length, this.page = 1, await this.getTableData();
1219
1256
  },
1220
1257
  changeActiveColumn(t) {
1221
1258
  this.activeColumn = t, this.getTableData();
@@ -1239,208 +1276,227 @@ const Ur = /* @__PURE__ */ _(qr, [["render", Lr]]), Or = (t, e = 300) => {
1239
1276
  });
1240
1277
  }
1241
1278
  }
1242
- }, Hr = { class: "w-[calc(100vw - 320px)] bg-gray-50" }, Nr = { class: "h-[76px] mt-[15px] flex items-center justify-between mx-[20px] px-[20px] bg-white border rounded-xl" }, Wr = { class: "text-xl font-medium" }, Rr = {
1279
+ }, is = { class: "w-[calc(100vw - 320px)] bg-gray-50" }, cs = { class: "h-[76px] mt-[15px] flex items-center justify-between mx-[20px] px-[20px] bg-white border rounded-xl" }, us = { class: "text-xl font-medium" }, ds = {
1243
1280
  style: { height: "calc(100vh - 155px)", width: "calc(100vw - 260px)" },
1244
1281
  class: "bg-gray-50 p-[20px] flex pt-[10px]"
1245
- }, Gr = { class: "bg-white w-full rounded-xl border p-[20px] pr-0" }, Zr = { class: "flex" }, Jr = { class: "flex gap-[6px] ml-auto" }, Kr = { class: "inline-block w-full align-middle" }, Qr = {
1282
+ }, hs = { class: "bg-white w-full rounded-xl border p-[20px] pr-0" }, ps = { class: "flex" }, fs = { class: "flex gap-[6px] ml-auto" }, bs = { class: "inline-block w-full align-middle" }, ms = {
1246
1283
  key: 0,
1247
1284
  class: "relative min-w-full divide-y divide-gray-200 table-fixed dark:divide-neutral-700"
1248
- }, Xr = { class: "sticky top-[-1px] bg-white w-full after:absolute after:content-[''] after:block after:w-full after:h-px after:bg-stone-200" }, Yr = { class: "right-0 border-t border-stone-200" }, en = { class: "divide-y divide-gray-200" }, tn = { class: "px-4 py-3 text-sm text-gray-600" }, rn = ["onClick"], nn = ["onClick"], sn = {
1285
+ }, gs = { class: "sticky top-[-1px] bg-white w-full after:absolute after:content-[''] after:block after:w-full after:h-px after:bg-stone-200" }, xs = { class: "right-0 border-t border-stone-200" }, ys = {
1249
1286
  key: 0,
1250
- class: "text-center sticky right-0 bg-white w-[80px] px-[10px]"
1251
- }, ln = { class: "p-[20px] flex justify-start items-center w-full" }, on = { class: "w-[200px]" }, an = { class: "text-sm text-gray-600 dark:text-neutral-400" }, cn = { class: "font-semibold text-gray-800 dark:text-neutral-200" }, un = { key: 0 }, dn = {
1287
+ class: "w-[70px] sticky right-0 top-0"
1288
+ }, _s = { class: "divide-y divide-gray-200" }, ks = { class: "px-4 py-3 text-sm text-gray-600" }, vs = ["onClick"], ws = ["onClick"], Cs = { class: "p-[20px] flex justify-start items-center w-full" }, $s = { class: "w-[200px]" }, Ss = { class: "text-sm text-gray-600 dark:text-neutral-400" }, As = { class: "font-semibold text-gray-800 dark:text-neutral-200" }, Is = { key: 0 }, Ts = {
1252
1289
  key: 0,
1253
1290
  class: "font-semibold text-gray-800 dark:text-neutral-200"
1254
1291
  };
1255
- function hn(t, e, n, a, r, o) {
1256
- var B, P, L, U, O, E, H, N, W, R, G, Z, J, K, Q, X;
1257
- const u = d("IconPlus"), b = d("router-link"), p = d("AdminTableTabs"), g = d("IconSearch"), k = d("VsText"), c = d("AdminTableCustomFilters"), y = d("AdminTableColumnsHidden"), h = d("AdminTableExport"), x = d("AdminTableFilters"), I = d("IconOpenCard"), F = d("AdminTableColumn"), M = d("AdminComponentIs"), ae = d("AdminTableControl"), ce = d("AdminNodata"), ue = d("VsPagination"), de = d("AdminTableCardInfo");
1258
- return l(), i("div", Hr, [
1259
- s("div", Nr, [
1260
- s("h2", Wr, S(n.title), 1),
1261
- o.isForm ? (l(), v(b, {
1292
+ function Vs(t, e, s, i, n, o) {
1293
+ var U, O, E, N, H, R, W, G, Z, J, K, Q, X, Y, ee, te, ne, se, re, le, oe;
1294
+ const u = h("IconPlus"), b = h("router-link"), f = h("AdminTableTabs"), g = h("IconSearch"), v = h("VsText"), c = h("AdminTableCustomButtons"), m = h("AdminTableCustomFilters"), p = h("AdminTableColumnsHidden"), S = h("AdminTableExport"), y = h("AdminTableFilters"), F = h("IconOpenCard"), q = h("AdminTableColumn"), L = h("AdminComponentIs"), we = h("AdminTableControl"), Ce = h("AdminNodata"), $e = h("VsPagination"), Se = h("AdminTableCardInfo");
1295
+ return l(), a("div", is, [
1296
+ r("div", cs, [
1297
+ r("h2", us, A(s.title), 1),
1298
+ o.isForm ? (l(), _(b, {
1262
1299
  key: 0,
1263
- to: `/add?table=${(P = (B = t.$route) == null ? void 0 : B.params) == null ? void 0 : P.catchAll}`,
1300
+ to: `/add?table=${(O = (U = t.$route) == null ? void 0 : U.params) == null ? void 0 : O.catchAll}`,
1264
1301
  class: "inline-flex items-center px-3 py-2 text-sm font-medium text-white duration-300 bg-blue-600 border border-transparent rounded-lg gap-x-2 hover:bg-blue-700 hover:text-white"
1265
1302
  }, {
1266
- default: w(() => [
1267
- f(u, {
1303
+ default: C(() => [
1304
+ x(u, {
1268
1305
  height: "16",
1269
1306
  width: "16"
1270
1307
  }),
1271
1308
  e[5] || (e[5] = D(" Додати "))
1272
1309
  ]),
1273
1310
  _: 1
1274
- }, 8, ["to"])) : C("", !0)
1311
+ }, 8, ["to"])) : w("", !0)
1275
1312
  ]),
1276
- s("div", Rr, [
1277
- s("div", Gr, [
1278
- (U = (L = r.tableData) == null ? void 0 : L.filterState) != null && U.length ? (l(), v(p, {
1313
+ r("div", ds, [
1314
+ r("div", hs, [
1315
+ (N = (E = n.tableData) == null ? void 0 : E.filterState) != null && N.length ? (l(), _(f, {
1279
1316
  key: 0,
1280
- tabsList: (O = r.tableData) == null ? void 0 : O.filterState,
1281
- filterState: r.filterState,
1282
- "onUpdate:filterState": e[0] || (e[0] = (m) => r.filterState = m)
1283
- }, null, 8, ["tabsList", "filterState"])) : C("", !0),
1284
- s("div", Zr, [
1285
- s("div", {
1286
- class: T([r.isVisibleCardInfo ? "w-[calc(100%-360px)]" : "w-full"])
1317
+ tabsList: (H = n.tableData) == null ? void 0 : H.filterState,
1318
+ filterState: n.filterState,
1319
+ "onUpdate:filterState": e[0] || (e[0] = (d) => n.filterState = d)
1320
+ }, null, 8, ["tabsList", "filterState"])) : w("", !0),
1321
+ r("div", ps, [
1322
+ r("div", {
1323
+ class: I([n.isVisibleCardInfo ? "w-[calc(100%-360px)]" : "w-full"])
1287
1324
  }, [
1288
- s("div", {
1289
- class: T(["flex sm:grid sm:grid-cols-2 gap-x-2 sm:gap-x-5 mb-[10px] relative", { "pr-[20px]": !r.isVisibleCardInfo }])
1325
+ r("div", {
1326
+ class: I(["flex sm:grid sm:grid-cols-2 gap-x-2 sm:gap-x-5 mb-[10px] relative", { "pr-[20px]": !n.isVisibleCardInfo }])
1290
1327
  }, [
1291
- f(g, {
1328
+ x(g, {
1292
1329
  height: "14",
1293
1330
  width: "14",
1294
1331
  class: "absolute top-[10px] left-[14px] text-gray-500 z-[1]"
1295
1332
  }),
1296
- f(k, {
1297
- modelValue: r.searchValue,
1298
- "onUpdate:modelValue": e[1] || (e[1] = (m) => r.searchValue = m),
1333
+ x(v, {
1334
+ modelValue: n.searchValue,
1335
+ "onUpdate:modelValue": e[1] || (e[1] = (d) => n.searchValue = d),
1299
1336
  placeholder: "Пошук...",
1300
1337
  clearable: !0,
1301
1338
  class: "[&>input]:py-[7px] [&>input]:ps-10 [&>input]:pe-8 [&>input]:block [&>input]:w-full [&>input]:bg-gray-100 [&>input]:border-transparent [&>input]:rounded-lg [&>input]:text-sm [&>input]:focus:bg-white [&>input]:focus:border-blue-500 [&>input]:focus:ring-blue-500 [&>input]:disabled:opacity-50 [&>input]:disabled:pointer-events-none [&>input]:dark:bg-neutral-700 [&>input]:dark:border-transparent [&>input]:dark:text-neutral-400 [&>input]:dark:placeholder:text-neutral-400 dark:focus:bg-neutral-800 dark:focus:ring-neutral-600"
1302
1339
  }, null, 8, ["modelValue"]),
1303
- s("div", Jr, [
1304
- (H = (E = r.tableData) == null ? void 0 : E.filterCustom) != null && H.length ? (l(), v(c, {
1340
+ r("div", fs, [
1341
+ (R = n.tableData) != null && R.slots ? (l(), _(c, {
1305
1342
  key: 0,
1306
- customList: (N = r.tableData) == null ? void 0 : N.filterCustom,
1307
- filterCustom: r.filterCustom,
1308
- "onUpdate:filterCustom": e[2] || (e[2] = (m) => r.filterCustom = m)
1309
- }, null, 8, ["customList", "filterCustom"])) : C("", !0),
1310
- f(y, {
1311
- columns: (W = r.tableData) == null ? void 0 : W.columns,
1312
- onUpdateColumns: e[3] || (e[3] = (m) => r.tableData.columns = m)
1343
+ slots: (W = n.tableData) == null ? void 0 : W.slots
1344
+ }, null, 8, ["slots"])) : w("", !0),
1345
+ (Z = (G = n.tableData) == null ? void 0 : G.filterCustom) != null && Z.length ? (l(), _(m, {
1346
+ key: 1,
1347
+ customList: (J = n.tableData) == null ? void 0 : J.filterCustom,
1348
+ filterCustom: n.filterCustom,
1349
+ "onUpdate:filterCustom": e[2] || (e[2] = (d) => n.filterCustom = d)
1350
+ }, null, 8, ["customList", "filterCustom"])) : w("", !0),
1351
+ x(p, {
1352
+ columns: (K = n.tableData) == null ? void 0 : K.columns,
1353
+ onUpdateColumns: e[3] || (e[3] = (d) => n.tableData.columns = d)
1313
1354
  }, null, 8, ["columns"]),
1314
- f(h, {
1315
- table: n.table,
1316
- columns: (R = r.tableData) == null ? void 0 : R.columns,
1317
- page: r.page,
1318
- "filter-state": r.filterState,
1319
- "filter-custom": r.filterCustom,
1320
- filters: r.filters
1355
+ x(S, {
1356
+ table: s.table,
1357
+ columns: (Q = n.tableData) == null ? void 0 : Q.columns,
1358
+ page: n.page,
1359
+ "filter-state": n.filterState,
1360
+ "filter-custom": n.filterCustom,
1361
+ filters: n.filters
1321
1362
  }, null, 8, ["table", "columns", "page", "filter-state", "filter-custom", "filters"]),
1322
- f(x, {
1323
- scheme: r.filterScheme,
1324
- onFilters: r.onFilters,
1363
+ (X = n.filterScheme) != null && X.length ? (l(), _(y, {
1364
+ key: 2,
1365
+ scheme: n.filterScheme,
1366
+ onFilters: n.onFilters,
1325
1367
  onFilterChange: o.filterChange
1326
- }, null, 8, ["scheme", "onFilters", "onFilterChange"]),
1327
- s("button", {
1328
- onClick: e[4] || (e[4] = (...m) => o.toggleCardInfo && o.toggleCardInfo(...m)),
1368
+ }, null, 8, ["scheme", "onFilters", "onFilterChange"])) : w("", !0),
1369
+ r("button", {
1370
+ onClick: e[4] || (e[4] = (...d) => o.toggleCardInfo && o.toggleCardInfo(...d)),
1329
1371
  class: "py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs font-medium rounded-lg border border-gray-200 bg-white text-gray-800 shadow-sm 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"
1330
1372
  }, [
1331
- f(I, {
1332
- class: T({ "rotate-180 duration-300": !r.isVisibleCardInfo })
1373
+ x(F, {
1374
+ class: I({ "rotate-180 duration-300": !n.isVisibleCardInfo })
1333
1375
  }, null, 8, ["class"])
1334
1376
  ])
1335
1377
  ])
1336
1378
  ], 2),
1337
- s("div", {
1338
- class: T(["flex items-start justify-start w-full space-y-5", { "pr-[20px]": !r.isVisibleCardInfo }])
1379
+ r("div", {
1380
+ class: I(["flex items-start justify-start w-full space-y-5", { "pr-[20px]": !n.isVisibleCardInfo }])
1339
1381
  }, [
1340
- s("div", {
1341
- style: se({
1342
- height: (Z = (G = r.tableData) == null ? void 0 : G.filterState) != null && Z.length ? "calc(100vh - 370px)" : "calc(100vh - 330px)"
1382
+ r("div", {
1383
+ style: ye({
1384
+ height: (ee = (Y = n.tableData) == null ? void 0 : Y.filterState) != null && ee.length ? "calc(100vh - 370px)" : "calc(100vh - 330px)"
1343
1385
  }),
1344
1386
  class: "overflow-x-auto w-full [&::-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"
1345
1387
  }, [
1346
- s("div", Kr, [
1347
- o.isNoData ? (l(), v(ce, { key: 1 })) : (l(), i("table", Qr, [
1348
- s("thead", Xr, [
1349
- s("tr", Yr, [
1350
- (l(!0), i($, null, A(o.columns, (m) => (l(), v(F, {
1351
- key: m.name,
1352
- style: se({
1353
- width: o.rowWidth(m == null ? void 0 : m.name),
1354
- textAlign: m == null ? void 0 : m.align,
1355
- wordBreak: m == null ? void 0 : m.wrap
1388
+ r("div", bs, [
1389
+ o.isNoData ? (l(), _(Ce, { key: 1 })) : (l(), a("table", ms, [
1390
+ r("thead", gs, [
1391
+ r("tr", xs, [
1392
+ (l(!0), a($, null, T(o.columns, (d) => (l(), _(q, {
1393
+ key: d.name,
1394
+ style: ye({
1395
+ width: o.rowWidth(d == null ? void 0 : d.name),
1396
+ textAlign: d == null ? void 0 : d.align,
1397
+ wordBreak: d == null ? void 0 : d.wrap
1356
1398
  }),
1357
- data: m,
1358
- activeColumn: r.activeColumn,
1399
+ data: d,
1400
+ activeColumn: n.activeColumn,
1359
1401
  onChangeActive: o.changeActiveColumn
1360
1402
  }, null, 8, ["style", "data", "activeColumn", "onChangeActive"]))), 128)),
1361
- e[6] || (e[6] = s("th", { class: "w-[70px] sticky right-0 top-0" }, null, -1))
1403
+ (ne = (te = o.getActions) == null ? void 0 : te.filter((d) => d !== "add")) != null && ne.length ? (l(), a("th", ys)) : w("", !0)
1362
1404
  ])
1363
1405
  ]),
1364
- s("tbody", en, [
1365
- (l(!0), i($, null, A((J = r.tableData) == null ? void 0 : J.rows, (m, he) => {
1366
- var Y, ee, te;
1367
- return l(), i("tr", { key: he }, [
1368
- s("td", tn, [
1369
- s("button", {
1370
- onClick: () => o.pushToCard(m == null ? void 0 : m.id),
1371
- class: T(["text-sm font-medium", [
1372
- ((Y = r.tableData) == null ? void 0 : Y.card) === !1 ? "" : "text-blue-600 decoration-2 focus:outline-none focus:underline hover:text-blue-600 hover:underline"
1406
+ r("tbody", _s, [
1407
+ (l(!0), a($, null, T((se = n.tableData) == null ? void 0 : se.rows, (d, Ae) => {
1408
+ var ae, ie, ce, ue, de, he, pe, fe, be, me;
1409
+ return l(), a("tr", {
1410
+ key: Ae,
1411
+ class: I({
1412
+ "bg-gray-50": ((ie = (ae = t.$route) == null ? void 0 : ae.query) == null ? void 0 : ie.card) === (d == null ? void 0 : d.id)
1413
+ })
1414
+ }, [
1415
+ r("td", ks, [
1416
+ r("button", {
1417
+ onClick: () => o.pushToCard(d == null ? void 0 : d.id),
1418
+ class: I(["text-sm font-medium", [
1419
+ ((ce = n.tableData) == null ? void 0 : ce.card) === !1 ? "" : "text-blue-600 decoration-2 focus:outline-none focus:underline hover:text-blue-600 hover:underline"
1373
1420
  ]])
1374
1421
  }, [
1375
- f(M, {
1376
- row: m,
1422
+ x(L, {
1423
+ row: d,
1377
1424
  column: o.columns[0],
1378
- table: n.table,
1425
+ table: s.table,
1379
1426
  onUpdateTable: o.getTableData
1380
1427
  }, null, 8, ["row", "column", "table", "onUpdateTable"])
1381
- ], 10, rn)
1428
+ ], 10, vs)
1382
1429
  ]),
1383
- (l(!0), i($, null, A((ee = o.columns) == null ? void 0 : ee.slice(1), (re) => (l(), i("td", {
1384
- onClick: (gn) => o.changeActiveCardInfo(m == null ? void 0 : m.id),
1385
- class: T(["px-3 py-3 text-sm text-gray-600 text-start whitespace-nowrap", { "cursor-pointer": r.isVisibleCardInfo }]),
1386
- key: re.name
1430
+ (l(!0), a($, null, T((ue = o.columns) == null ? void 0 : ue.slice(1), (M) => (l(), a("td", {
1431
+ onClick: (qs) => o.changeActiveCardInfo(d == null ? void 0 : d.id),
1432
+ class: I(["px-3 py-3 text-sm text-gray-600 text-start whitespace-nowrap", { "cursor-pointer": n.isVisibleCardInfo }]),
1433
+ key: M.name
1387
1434
  }, [
1388
- f(M, {
1389
- row: m,
1390
- column: re,
1391
- table: n.table,
1435
+ x(L, {
1436
+ row: d,
1437
+ column: M,
1438
+ table: s.table,
1392
1439
  onUpdateTable: o.getTableData
1393
1440
  }, null, 8, ["row", "column", "table", "onUpdateTable"])
1394
- ], 10, nn))), 128)),
1395
- (te = o.getActions) != null && te.length ? (l(), i("td", sn, [
1396
- f(ae, {
1441
+ ], 10, ws))), 128)),
1442
+ (he = (de = o.getActions) == null ? void 0 : de.filter((M) => M !== "add")) != null && he.length ? (l(), a("td", {
1443
+ key: 0,
1444
+ class: I(["text-center sticky right-0 w-[80px] px-[10px]", {
1445
+ "bg-gray-50": ((fe = (pe = t.$route) == null ? void 0 : pe.query) == null ? void 0 : fe.card) === (d == null ? void 0 : d.id),
1446
+ "bg-white": ((me = (be = t.$route) == null ? void 0 : be.query) == null ? void 0 : me.card) !== (d == null ? void 0 : d.id)
1447
+ }])
1448
+ }, [
1449
+ x(we, {
1397
1450
  actions: o.getActions,
1398
1451
  isForm: o.isForm,
1399
- item: m,
1400
- table: n.table,
1452
+ item: d,
1453
+ table: s.table,
1401
1454
  onUpdateTable: o.getTableData
1402
1455
  }, null, 8, ["actions", "isForm", "item", "table", "onUpdateTable"])
1403
- ])) : C("", !0)
1404
- ]);
1456
+ ], 2)) : w("", !0)
1457
+ ], 2);
1405
1458
  }), 128))
1406
1459
  ])
1407
1460
  ]))
1408
1461
  ])
1409
1462
  ], 4)
1410
1463
  ], 2),
1411
- s("div", ln, [
1412
- s("div", on, [
1413
- s("p", an, [
1414
- s("span", cn, [
1415
- D(S(r.filters || r.searchValue ? "Знайдено" : "Об'єктів") + " " + S(((K = r.tableData) == null ? void 0 : K.count) || "0 ") + " ", 1),
1416
- r.filters || r.searchValue ? (l(), i("span", un, " з")) : C("", !0)
1464
+ r("div", Cs, [
1465
+ r("div", $s, [
1466
+ r("p", Ss, [
1467
+ r("span", As, [
1468
+ D(A(n.filters || n.searchValue ? "Знайдено" : "Об'єктів") + " " + A(((re = n.tableData) == null ? void 0 : re.count) || "0 ") + " ", 1),
1469
+ n.filters || n.searchValue ? (l(), a("span", Is, " з")) : w("", !0)
1417
1470
  ]),
1418
- r.filters || r.searchValue ? (l(), i("span", dn, S(" " + ((Q = r.tableData) == null ? void 0 : Q.filtered) || 0), 1)) : C("", !0)
1471
+ n.filters || n.searchValue ? (l(), a("span", Ts, A(" " + ((le = n.tableData) == null ? void 0 : le.filtered) || 0), 1)) : w("", !0)
1419
1472
  ])
1420
1473
  ]),
1421
- r.limit ? (l(), v(ue, {
1474
+ n.limit ? (l(), _($e, {
1422
1475
  key: 0,
1423
1476
  goTo: !1,
1424
1477
  class: "justify-end",
1425
1478
  "default-page": parseInt(o.defaultPage),
1426
- total: ((X = r.tableData) == null ? void 0 : X.filtered) || 0,
1427
- pageSize: parseInt(r.limit),
1479
+ total: ((oe = n.tableData) == null ? void 0 : oe.filtered) || 0,
1480
+ pageSize: parseInt(n.limit),
1428
1481
  onPageChange: o.handlePageChange,
1429
1482
  pageSizes: [10, 16, 20],
1430
1483
  onPageSizeChange: o.changeLimit,
1431
1484
  backgroundColor: "#D6D3D1"
1432
- }, null, 8, ["default-page", "total", "pageSize", "onPageChange", "onPageSizeChange"])) : C("", !0)
1485
+ }, null, 8, ["default-page", "total", "pageSize", "onPageChange", "onPageSizeChange"])) : w("", !0)
1433
1486
  ])
1434
1487
  ], 2),
1435
- f(z, { name: "slide-fade" }, {
1436
- default: w(() => [
1437
- r.isVisibleCardInfo ? (l(), v(de, {
1438
- key: 0,
1439
- table: n.table,
1440
- columns: o.columns,
1441
- row: o.activeCardRow
1442
- }, null, 8, ["table", "columns", "row"])) : C("", !0)
1443
- ]),
1488
+ x(P, { name: "slide-fade" }, {
1489
+ default: C(() => {
1490
+ var d;
1491
+ return [
1492
+ n.isVisibleCardInfo ? (l(), _(Se, {
1493
+ key: 0,
1494
+ table: s.table,
1495
+ columns: (d = n.tableData) == null ? void 0 : d.columns,
1496
+ row: o.activeCardRow
1497
+ }, null, 8, ["table", "columns", "row"])) : w("", !0)
1498
+ ];
1499
+ }),
1444
1500
  _: 1
1445
1501
  })
1446
1502
  ])
@@ -1448,8 +1504,8 @@ function hn(t, e, n, a, r, o) {
1448
1504
  ])
1449
1505
  ]);
1450
1506
  }
1451
- const pn = /* @__PURE__ */ _(Er, [["render", hn], ["__scopeId", "data-v-0b56a902"]]), bn = {
1452
- components: { AdminTable: pn },
1507
+ const Ds = /* @__PURE__ */ k(as, [["render", Vs], ["__scopeId", "data-v-f77b0b94"]]), Fs = {
1508
+ components: { AdminTable: Ds },
1453
1509
  data() {
1454
1510
  return {
1455
1511
  table: !1,
@@ -1461,12 +1517,13 @@ const pn = /* @__PURE__ */ _(Er, [["render", hn], ["__scopeId", "data-v-0b56a902
1461
1517
  $route: {
1462
1518
  async handler() {
1463
1519
  var t;
1464
- (t = ne) != null && t.value || await this.getMenu(), await this.checkPageType();
1520
+ (t = ge) != null && t.value || await this.getMenu(), await this.checkPageType();
1465
1521
  },
1466
1522
  deep: !0
1467
1523
  },
1468
1524
  title(t) {
1469
- t && (document.title = t);
1525
+ var e;
1526
+ t && (document.title = (((e = je.value) == null ? void 0 : e.titlePrefix) || "") + t);
1470
1527
  }
1471
1528
  },
1472
1529
  async mounted() {
@@ -1475,49 +1532,49 @@ const pn = /* @__PURE__ */ _(Er, [["render", hn], ["__scopeId", "data-v-0b56a902
1475
1532
  methods: {
1476
1533
  flattenMenu(t) {
1477
1534
  const e = [];
1478
- return t.forEach((n) => {
1479
- n.menu ? e.push(...this.flattenMenu(n.menu)) : e.push(n);
1535
+ return t.forEach((s) => {
1536
+ s.menu ? e.push(...this.flattenMenu(s.menu)) : e.push(s);
1480
1537
  }), e;
1481
1538
  },
1482
1539
  async checkPageType() {
1483
- var a, r;
1484
- const t = this.flattenMenu(ne.value);
1540
+ var i, n;
1541
+ const t = this.flattenMenu(ge.value);
1485
1542
  t != null && t.length || this.$router.replace("/404");
1486
1543
  const e = t == null ? void 0 : t.find((o) => {
1487
1544
  var u, b;
1488
1545
  return (o == null ? void 0 : o.path) == ((b = (u = this.$route) == null ? void 0 : u.params) == null ? void 0 : b.catchAll);
1489
1546
  });
1490
- this.title = e == null ? void 0 : e.ua, e || this.$router.replace("/404"), e != null && e.component && this.$router.replace((r = (a = this.$route) == null ? void 0 : a.params) == null ? void 0 : r.catchAll);
1491
- const n = e == null ? void 0 : e.table;
1492
- this.table = n || !1, !n && this.getInterface();
1547
+ this.title = e == null ? void 0 : e.ua, e || this.$router.replace("/404"), e != null && e.component && this.$router.replace((n = (i = this.$route) == null ? void 0 : i.params) == null ? void 0 : n.catchAll);
1548
+ const s = e == null ? void 0 : e.table;
1549
+ this.table = s || !1, !s && this.getInterface();
1493
1550
  },
1494
1551
  async getInterface() {
1495
1552
  var t, e;
1496
1553
  try {
1497
- const { data: n } = await V.get(
1554
+ const { data: s } = await V.get(
1498
1555
  `/api/template/interface/${((e = (t = this.$route) == null ? void 0 : t.params) == null ? void 0 : e.catchAll) || ""}`
1499
1556
  );
1500
- this.interface = n || "";
1557
+ this.interface = s || "";
1501
1558
  } catch {
1502
1559
  this.interface = "";
1503
1560
  }
1504
1561
  }
1505
1562
  }
1506
- }, fn = ["innerHTML"];
1507
- function mn(t, e, n, a, r, o) {
1508
- const u = d("AdminTable");
1509
- return r.table ? (l(), v(u, {
1563
+ }, Ms = ["innerHTML"];
1564
+ function js(t, e, s, i, n, o) {
1565
+ const u = h("AdminTable");
1566
+ return n.table ? (l(), _(u, {
1510
1567
  key: 0,
1511
- table: r.table,
1512
- title: r.title
1513
- }, null, 8, ["table", "title"])) : (l(), i("div", {
1568
+ table: n.table,
1569
+ title: n.title
1570
+ }, null, 8, ["table", "title"])) : (l(), a("div", {
1514
1571
  key: 1,
1515
1572
  class: "w-full bg-gray-50",
1516
1573
  style: { height: "calc(100vh - 120px)" },
1517
- innerHTML: r.interface
1518
- }, null, 8, fn));
1574
+ innerHTML: n.interface
1575
+ }, null, 8, Ms));
1519
1576
  }
1520
- const kn = /* @__PURE__ */ _(bn, [["render", mn]]);
1577
+ const Ls = /* @__PURE__ */ k(Fs, [["render", js]]);
1521
1578
  export {
1522
- kn as default
1579
+ Ls as default
1523
1580
  };