@opengis/admin 0.1.68 → 0.1.70
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/{add-page-Bv-BNhYQ.js → add-page-Dl_bGhPC.js} +8 -11
- package/dist/{admin-interface-j3f16Iy8.js → admin-interface-Dma-D4A9.js} +444 -593
- package/dist/{admin-view-DykzQo5I.js → admin-view-TeTAUVK1.js} +223 -214
- package/dist/admin.js +1 -1
- package/dist/admin.umd.cjs +77 -77
- package/dist/card-page-D-3aubBo.js +230 -0
- package/dist/{card-view-MpG-dhK0.js → card-view-CZjPaUKx.js} +1 -1
- package/dist/{edit-page-DkD5JFQv.js → edit-page-RhKgRai9.js} +12 -13
- package/dist/{import-file-DGI0k9si.js → import-file-DgJqxKyF.js} +7307 -7259
- package/dist/style.css +1 -1
- package/module/settings/select/core.roles.json +2 -2
- package/module/settings/table/admin.custom_column.table.json +0 -1
- package/package.json +3 -2
- package/server/routes/data/controllers/cardData.js +5 -5
- package/server/routes/data/controllers/tableData.js +5 -107
- package/server/routes/data/controllers/tableDataId.js +3 -5
- package/server/routes/menu/controllers/getMenu.js +3 -1
- package/server/routes/notifications/controllers/readNotifications.js +7 -14
- package/server/routes/notifications/controllers/userNotifications.js +15 -22
- package/dist/IconChevronDown-Co0qOLyQ.js +0 -26
- package/dist/card-page-DtXydAxe.js +0 -275
@@ -1,7 +1,6 @@
|
|
1
|
-
import { _ as
|
2
|
-
import { openBlock as s, createElementBlock as
|
3
|
-
|
4
|
-
const Ce = {
|
1
|
+
import { _ as m, b as ue, a as A, c as he, d as pe, e as be, f as fe, I as me, u as te } from "./import-file-DgJqxKyF.js";
|
2
|
+
import { openBlock as s, createElementBlock as i, createTextVNode as F, toDisplayString as I, createCommentVNode as v, createStaticVNode as j, Fragment as C, createElementVNode as l, resolveComponent as c, createVNode as b, withCtx as y, createBlock as x, withModifiers as ge, renderList as T, withDirectives as z, vModelCheckbox as xe, resolveDynamicComponent as ye, Transition as P, renderSlot as _e, vShow as ne, normalizeClass as S, normalizeStyle as re } from "vue";
|
3
|
+
const ke = {
|
5
4
|
data() {
|
6
5
|
return {
|
7
6
|
currentSort: ""
|
@@ -47,10 +46,10 @@ const Ce = {
|
|
47
46
|
},
|
48
47
|
handleClickSortBtn(t) {
|
49
48
|
this.$emit("change-active", this.data.name), this.currentSort = this.changeCurrentSort(t);
|
50
|
-
const e = this.$route.query, { sort: r, ...
|
49
|
+
const e = this.$route.query, { sort: r, ...a } = e, n = this.currentSort ? `${this.data.name}-${this.currentSort}` : "";
|
51
50
|
this.$router.replace({
|
52
51
|
query: {
|
53
|
-
...
|
52
|
+
...a,
|
54
53
|
...n && { sort: n }
|
55
54
|
}
|
56
55
|
});
|
@@ -59,10 +58,10 @@ const Ce = {
|
|
59
58
|
return `${this.data.name}-${t}` === this.selectedSortParam;
|
60
59
|
}
|
61
60
|
}
|
62
|
-
},
|
61
|
+
}, we = {
|
63
62
|
scope: "col",
|
64
63
|
class: "text-start px-2 py-1"
|
65
|
-
},
|
64
|
+
}, ve = {
|
66
65
|
class: "flex-shrink-0 size-3.5",
|
67
66
|
xmlns: "http://www.w3.org/2000/svg",
|
68
67
|
width: "24",
|
@@ -73,33 +72,33 @@ const Ce = {
|
|
73
72
|
"stroke-width": "2",
|
74
73
|
"stroke-linecap": "round",
|
75
74
|
"stroke-linejoin": "round"
|
76
|
-
},
|
75
|
+
}, Ce = {
|
77
76
|
key: 0,
|
78
77
|
d: "m7 15 5 5 5-5"
|
79
|
-
},
|
78
|
+
}, $e = {
|
80
79
|
key: 1,
|
81
80
|
d: "m7 9 5-5 5 5"
|
82
|
-
},
|
81
|
+
}, Ie = {
|
83
82
|
key: 1,
|
84
83
|
class: "text-sm text-stone-500 px-[4px] py-2.5 text-start font-normal text-gray-500"
|
85
84
|
};
|
86
|
-
function
|
87
|
-
return s(),
|
88
|
-
o.getVisibleIcon ? (s(),
|
85
|
+
function Te(t, e, r, a, n, o) {
|
86
|
+
return s(), i("th", we, [
|
87
|
+
o.getVisibleIcon ? (s(), i("button", {
|
89
88
|
key: 0,
|
90
89
|
type: "button",
|
91
90
|
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] = (
|
91
|
+
onClick: e[0] || (e[0] = (d) => o.handleClickSortBtn(n.currentSort))
|
93
92
|
}, [
|
94
|
-
|
95
|
-
(s(),
|
96
|
-
n.currentSort === "asc" || n.currentSort === "" ? (s(),
|
97
|
-
n.currentSort === "desc" || n.currentSort === "" ? (s(),
|
93
|
+
F(I(o.label) + " ", 1),
|
94
|
+
(s(), i("svg", ve, [
|
95
|
+
n.currentSort === "asc" || n.currentSort === "" ? (s(), i("path", Ce)) : v("", !0),
|
96
|
+
n.currentSort === "desc" || n.currentSort === "" ? (s(), i("path", $e)) : v("", !0)
|
98
97
|
]))
|
99
|
-
])) : (s(),
|
98
|
+
])) : (s(), i("p", Ie, I(o.label), 1))
|
100
99
|
]);
|
101
100
|
}
|
102
|
-
const
|
101
|
+
const Se = /* @__PURE__ */ m(ke, [["render", Te]]), Ve = {}, Ae = {
|
103
102
|
class: "flex-shrink-0 size-3.5",
|
104
103
|
xmlns: "http://www.w3.org/2000/svg",
|
105
104
|
viewBox: "0 0 24 24",
|
@@ -109,21 +108,21 @@ const De = /* @__PURE__ */ g(Ce, [["render", Ve]]), Fe = {}, Me = {
|
|
109
108
|
"stroke-linecap": "round",
|
110
109
|
"stroke-linejoin": "round"
|
111
110
|
};
|
112
|
-
function
|
113
|
-
return s(),
|
111
|
+
function Fe(t, e, r, a, n, o) {
|
112
|
+
return s(), i("svg", Ae, e[0] || (e[0] = [
|
114
113
|
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
114
|
]));
|
116
115
|
}
|
117
|
-
const
|
116
|
+
const De = /* @__PURE__ */ m(Ve, [["render", Fe]]), Me = {
|
118
117
|
props: {
|
119
118
|
height: { type: String, default: "16" },
|
120
119
|
width: { type: String, default: "12" },
|
121
120
|
color: { type: String, default: "black" }
|
122
121
|
}
|
123
|
-
},
|
124
|
-
function
|
125
|
-
return s(),
|
126
|
-
(s(),
|
122
|
+
}, je = { style: { display: "none" } }, ze = ["height", "width", "fill"];
|
123
|
+
function Pe(t, e, r, a, n, o) {
|
124
|
+
return s(), i(C, null, [
|
125
|
+
(s(), i("svg", je, e[0] || (e[0] = [
|
127
126
|
l("symbol", {
|
128
127
|
id: "icon-pencil",
|
129
128
|
viewBox: "0 0 32 32"
|
@@ -131,20 +130,20 @@ function Le(t, e, r, i, n, o) {
|
|
131
130
|
l("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
131
|
], -1)
|
133
132
|
]))),
|
134
|
-
(s(),
|
133
|
+
(s(), i("svg", {
|
135
134
|
height: r.height,
|
136
135
|
width: r.width,
|
137
136
|
fill: r.color
|
138
137
|
}, e[1] || (e[1] = [
|
139
138
|
l("use", { "xlink:href": "#icon-pencil" }, null, -1)
|
140
|
-
]), 8,
|
139
|
+
]), 8, ze))
|
141
140
|
], 64);
|
142
141
|
}
|
143
|
-
const
|
142
|
+
const qe = /* @__PURE__ */ m(Me, [["render", Pe]]), Be = {
|
144
143
|
components: {
|
145
|
-
IconMore:
|
146
|
-
IconDelete:
|
147
|
-
IconEdit:
|
144
|
+
IconMore: ue,
|
145
|
+
IconDelete: De,
|
146
|
+
IconEdit: qe
|
148
147
|
},
|
149
148
|
emits: ["updateTable"],
|
150
149
|
props: {
|
@@ -170,7 +169,7 @@ const Ue = /* @__PURE__ */ g(ze, [["render", Le]]), Oe = {
|
|
170
169
|
async getData() {
|
171
170
|
var t;
|
172
171
|
try {
|
173
|
-
const { data: e } = await
|
172
|
+
const { data: e } = await A.get(
|
174
173
|
`/api/table/${this.table}/${(t = this.item) == null ? void 0 : t.id}`
|
175
174
|
);
|
176
175
|
this.formValue = e;
|
@@ -184,7 +183,7 @@ const Ue = /* @__PURE__ */ g(ze, [["render", Le]]), Oe = {
|
|
184
183
|
async deleteElement() {
|
185
184
|
var t;
|
186
185
|
try {
|
187
|
-
|
186
|
+
A.delete(`/api/table/${this.table}/${(t = this.item) == null ? void 0 : t.id}`), this.$notify({
|
188
187
|
title: "Успішно!",
|
189
188
|
message: "Об`єкт успішно видалeно",
|
190
189
|
type: "success"
|
@@ -198,74 +197,74 @@ const Ue = /* @__PURE__ */ g(ze, [["render", Le]]), Oe = {
|
|
198
197
|
}
|
199
198
|
}
|
200
199
|
}
|
201
|
-
},
|
200
|
+
}, Le = { class: "hs-dropdown [--placement:bottom-right] inline-flex" }, Ue = { 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" }, Oe = { class: "flex flex-col items-start" }, Ee = {
|
202
201
|
key: 1,
|
203
202
|
class: "h-[1px] w-[80%] bg-gray-200 ml-auto mr-auto"
|
204
|
-
},
|
205
|
-
function
|
206
|
-
const
|
207
|
-
return s(),
|
208
|
-
l("div",
|
209
|
-
|
203
|
+
}, Ne = { class: "p-4" }, He = { class: "flex justify-end mt-4 gap-x-3" };
|
204
|
+
function We(t, e, r, a, n, o) {
|
205
|
+
const d = c("IconMore"), p = c("IconEdit"), h = c("router-link"), u = c("IconDelete"), _ = c("VsPopover"), w = c("VsDialog");
|
206
|
+
return s(), i(C, null, [
|
207
|
+
l("div", Le, [
|
208
|
+
b(_, {
|
210
209
|
trigger: "click",
|
211
210
|
placement: "bottom-left"
|
212
211
|
}, {
|
213
|
-
reference:
|
214
|
-
l("button",
|
215
|
-
|
212
|
+
reference: y(() => [
|
213
|
+
l("button", Ue, [
|
214
|
+
b(d, {
|
216
215
|
height: "16",
|
217
216
|
width: "16"
|
218
217
|
})
|
219
218
|
])
|
220
219
|
]),
|
221
|
-
default:
|
222
|
-
var
|
220
|
+
default: y(() => {
|
221
|
+
var k, $, g, V, D;
|
223
222
|
return [
|
224
|
-
l("div",
|
225
|
-
(
|
223
|
+
l("div", Oe, [
|
224
|
+
(k = r.actions) != null && k.includes("edit") && r.isForm ? (s(), x(h, {
|
226
225
|
key: 0,
|
227
|
-
to: `/edit?table=${(
|
226
|
+
to: `/edit?table=${(g = ($ = t.$route) == null ? void 0 : $.params) == null ? void 0 : g.catchAll}&id=${(V = r.item) == null ? void 0 : V.id}`,
|
228
227
|
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"
|
229
228
|
}, {
|
230
|
-
default:
|
231
|
-
|
232
|
-
e[4] || (e[4] =
|
229
|
+
default: y(() => [
|
230
|
+
b(p, { color: "#000" }),
|
231
|
+
e[4] || (e[4] = F(" Редагувати "))
|
233
232
|
]),
|
234
233
|
_: 1
|
235
|
-
}, 8, ["to"])) :
|
236
|
-
r.isForm ? (s(),
|
237
|
-
(
|
234
|
+
}, 8, ["to"])) : v("", !0),
|
235
|
+
r.isForm ? (s(), i("div", Ee)) : v("", !0),
|
236
|
+
(D = r.actions) != null && D.includes("del") ? (s(), i("button", {
|
238
237
|
key: 2,
|
239
|
-
onClick: e[0] || (e[0] =
|
238
|
+
onClick: e[0] || (e[0] = ge((...M) => o.openConfirm && o.openConfirm(...M), ["stop"])),
|
240
239
|
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"
|
241
240
|
}, [
|
242
|
-
|
241
|
+
b(u),
|
243
242
|
e[5] || (e[5] = l("span", { class: "text-gray-800" }, "Видалити", -1))
|
244
|
-
])) :
|
243
|
+
])) : v("", !0)
|
245
244
|
])
|
246
245
|
];
|
247
246
|
}),
|
248
247
|
_: 1
|
249
248
|
})
|
250
249
|
]),
|
251
|
-
|
250
|
+
b(w, {
|
252
251
|
visible: n.isDeleteConfirm,
|
253
|
-
"onUpdate:visible": e[3] || (e[3] = (
|
252
|
+
"onUpdate:visible": e[3] || (e[3] = (k) => n.isDeleteConfirm = k),
|
254
253
|
title: "Ви впевнені?"
|
255
254
|
}, {
|
256
|
-
default:
|
257
|
-
l("div",
|
255
|
+
default: y(() => [
|
256
|
+
l("div", Ne, [
|
258
257
|
e[6] || (e[6] = l("p", { class: "mt-1 text-gray-500 dark:text-neutral-500" }, " Ви впевнені, що хочете видалити цей об'єкт? ", -1)),
|
259
|
-
l("div",
|
258
|
+
l("div", He, [
|
260
259
|
l("button", {
|
261
260
|
type: "button",
|
262
261
|
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",
|
263
|
-
onClick: e[1] || (e[1] = (
|
262
|
+
onClick: e[1] || (e[1] = (k) => n.isDeleteConfirm = !1)
|
264
263
|
}, " Скасувати "),
|
265
264
|
l("button", {
|
266
265
|
type: "button",
|
267
266
|
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",
|
268
|
-
onClick: e[2] || (e[2] = (...
|
267
|
+
onClick: e[2] || (e[2] = (...k) => o.deleteElement && o.deleteElement(...k))
|
269
268
|
}, " Так, я впевнена/ий ")
|
270
269
|
])
|
271
270
|
])
|
@@ -274,7 +273,7 @@ function Ze(t, e, r, i, n, o) {
|
|
274
273
|
}, 8, ["visible"])
|
275
274
|
], 64);
|
276
275
|
}
|
277
|
-
const
|
276
|
+
const Re = /* @__PURE__ */ m(Be, [["render", We]]), Ge = {}, Ze = {
|
278
277
|
class: "flex-shrink-0 mt-0.5 size-3.5",
|
279
278
|
xmlns: "http://www.w3.org/2000/svg",
|
280
279
|
viewBox: "0 0 24 24",
|
@@ -284,115 +283,48 @@ const Je = /* @__PURE__ */ g(Oe, [["render", Ze]]), Ke = {}, Qe = {
|
|
284
283
|
"stroke-linecap": "round",
|
285
284
|
"stroke-linejoin": "round"
|
286
285
|
};
|
287
|
-
function
|
288
|
-
return s(),
|
286
|
+
function Je(t, e, r, a, n, o) {
|
287
|
+
return s(), i("svg", Ze, e[0] || (e[0] = [
|
289
288
|
l("path", { d: "m3 16 4 4 4-4" }, null, -1),
|
290
289
|
l("path", { d: "M7 20V4" }, null, -1),
|
291
290
|
l("path", { d: "m21 8-4-4-4 4" }, null, -1),
|
292
291
|
l("path", { d: "M17 4v16" }, null, -1)
|
293
292
|
]));
|
294
293
|
}
|
295
|
-
const
|
296
|
-
|
297
|
-
|
298
|
-
height: "24",
|
299
|
-
viewBox: "0 0 24 24",
|
300
|
-
fill: "none",
|
301
|
-
stroke: "currentColor",
|
302
|
-
"stroke-width": "2",
|
303
|
-
"stroke-linecap": "round",
|
304
|
-
"stroke-linejoin": "round",
|
305
|
-
class: "icon icon-tabler icons-tabler-outline icon-tabler-rosette-discount-check"
|
306
|
-
};
|
307
|
-
function rt(t, e, r, i, n, o) {
|
308
|
-
return s(), a("svg", tt, e[0] || (e[0] = [
|
309
|
-
l("path", {
|
310
|
-
stroke: "none",
|
311
|
-
d: "M0 0h24v24H0z",
|
312
|
-
fill: "none"
|
313
|
-
}, null, -1),
|
314
|
-
l("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),
|
315
|
-
l("path", { d: "M9 12l2 2l4 -4" }, null, -1)
|
316
|
-
]));
|
317
|
-
}
|
318
|
-
const nt = /* @__PURE__ */ g(et, [["render", rt]]), lt = {
|
319
|
-
components: { IconExport: Ye, IconChevronDown: we, IconSuccess: nt },
|
320
|
-
props: {
|
321
|
-
table: String,
|
322
|
-
columns: Array,
|
323
|
-
page: [String, Number],
|
324
|
-
filterCustom: String,
|
325
|
-
filterState: String,
|
326
|
-
filters: String
|
327
|
-
},
|
294
|
+
const Ke = /* @__PURE__ */ m(Ge, [["render", Je]]), Qe = {
|
295
|
+
components: { IconExport: Ke },
|
296
|
+
props: { table: String, columns: Array },
|
328
297
|
data() {
|
329
298
|
return {
|
330
299
|
isOpen: !1,
|
331
300
|
tableFormats: ["json", "csv", "xlsx"],
|
332
301
|
format: "",
|
333
|
-
cols: []
|
334
|
-
activeAction: "",
|
335
|
-
isSuccessTemplate: !1,
|
336
|
-
actions: [
|
337
|
-
{ name: "choceAll", function: this.choceAll, label: "Вибрати усі" },
|
338
|
-
{
|
339
|
-
name: "choceVisible",
|
340
|
-
function: this.choceVisible,
|
341
|
-
label: "Вибрати поточні"
|
342
|
-
},
|
343
|
-
{ name: "clearAll", function: this.clearAll, label: "Жодного" }
|
344
|
-
]
|
302
|
+
cols: []
|
345
303
|
};
|
346
304
|
},
|
347
|
-
watch: {
|
348
|
-
isOpen(t) {
|
349
|
-
t || (this.format = "", this.cols = [], this.activeAction = "", this.isSuccessTemplate = !1);
|
350
|
-
}
|
351
|
-
},
|
352
305
|
methods: {
|
353
306
|
async exportTable() {
|
354
|
-
var t;
|
355
|
-
if (!((t = this.cols) != null && t.length)) {
|
356
|
-
this.$notify({
|
357
|
-
type: "error",
|
358
|
-
title: "Помилка",
|
359
|
-
message: "Оберіть колонки для експорту!"
|
360
|
-
});
|
361
|
-
return;
|
362
|
-
}
|
363
|
-
if (!this.format) {
|
364
|
-
this.$notify({
|
365
|
-
type: "error",
|
366
|
-
title: "Помилка",
|
367
|
-
message: "Оберіть формат!"
|
368
|
-
});
|
369
|
-
return;
|
370
|
-
}
|
371
307
|
try {
|
372
|
-
const
|
308
|
+
const t = await A.get("/api/export", {
|
373
309
|
params: {
|
374
310
|
table: this.table,
|
375
311
|
format: this.format,
|
376
|
-
cols: this.cols.join(",")
|
377
|
-
page: this.page,
|
378
|
-
filter: this.filters || null,
|
379
|
-
state: this.filterState || null,
|
380
|
-
custom: this.filterCustom || null
|
312
|
+
cols: this.cols.join(",")
|
381
313
|
},
|
382
314
|
responseType: "blob"
|
383
|
-
}),
|
315
|
+
}), e = new Blob([t.data], {
|
384
316
|
type: "application/octet-stream"
|
385
|
-
}),
|
386
|
-
|
317
|
+
}), r = window.URL.createObjectURL(e), a = document.createElement("a");
|
318
|
+
a.href = r, a.setAttribute(
|
387
319
|
"download",
|
388
320
|
`${this.table.split(".")[0]}.${this.format}`
|
389
|
-
), document.body.appendChild(
|
321
|
+
), document.body.appendChild(a), a.click(), document.body.removeChild(a), window.URL.revokeObjectURL(r), this.$notify({
|
390
322
|
type: "success",
|
391
323
|
title: "Експорт",
|
392
324
|
message: "Файл успішно експортовано!"
|
393
|
-
})
|
394
|
-
} catch (
|
395
|
-
console.error("Ошибка при экспорте файла:",
|
325
|
+
});
|
326
|
+
} catch (t) {
|
327
|
+
console.error("Ошибка при экспорте файла:", t), this.$notify({
|
396
328
|
type: "error",
|
397
329
|
title: "Помилка",
|
398
330
|
message: "Не вдалося експортувати файл."
|
@@ -401,155 +333,105 @@ const nt = /* @__PURE__ */ g(et, [["render", rt]]), lt = {
|
|
401
333
|
},
|
402
334
|
selectFormat(t) {
|
403
335
|
this.format = t;
|
404
|
-
},
|
405
|
-
choceAll() {
|
406
|
-
var t;
|
407
|
-
this.cols = (t = this.columns) == null ? void 0 : t.map((e) => e == null ? void 0 : e.name), this.activeAction = "choceAll";
|
408
|
-
},
|
409
|
-
clearAll() {
|
410
|
-
this.cols = [], this.activeAction = "clearAll";
|
411
|
-
},
|
412
|
-
choceVisible() {
|
413
|
-
var t, e;
|
414
|
-
this.cols = (e = (t = this.columns) == null ? void 0 : t.filter((r) => (r == null ? void 0 : r.hidden) !== !0)) == null ? void 0 : e.map((r) => r == null ? void 0 : r.name), this.activeAction = "choceVisible";
|
415
336
|
}
|
416
337
|
}
|
417
|
-
}, st = {
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
key: 1,
|
422
|
-
class: "p-4"
|
423
|
-
}, at = { class: "pb-5 mb-5 border-b border-gray-200 last:pb-0 last:mb-0 last:border-b-0 dark:border-neutral-700" }, it = { class: "flex items-center" }, ct = { class: "flex items-center gap-[10px] ml-auto" }, ut = ["onClick"], dt = {
|
424
|
-
key: 0,
|
425
|
-
class: "block h-[8px] w-[8px] rounded-full bg-blue-500"
|
426
|
-
}, 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 = {
|
427
|
-
key: 0,
|
428
|
-
class: "flex w-full justify-end p-[20px] gap-[6px] border-t"
|
429
|
-
}, xt = {
|
430
|
-
key: 1,
|
431
|
-
class: "flex w-full justify-end p-[20px] gap-[6px] border-t"
|
432
|
-
};
|
433
|
-
function yt(t, e, r, i, n, o) {
|
434
|
-
const u = d("IconExport"), b = d("IconChevronDown"), p = d("IconSuccess"), h = d("VsCheckbox"), _ = d("VsDialog");
|
435
|
-
return s(), a(C, null, [
|
338
|
+
}, Xe = { class: "p-4" }, Ye = { class: "pb-5 mb-5 last:pb-0 last:mb-0 border-b last:border-b-0 border-gray-200 dark:border-neutral-700" }, et = { class: "mt-2 flex row flex-wrap gap-y-[5px] gap-x-[10px]" }, tt = { class: "pb-5 mb-5 last:pb-0 last:mb-0 border-b last:border-b-0 border-gray-200 dark:border-neutral-700" }, rt = { class: "mt-2 space-y-2" }, nt = ["id", "onChange"], lt = ["for"], st = { class: "flex w-full justify-end p-[20px] gap-[6px] border-t" };
|
339
|
+
function ot(t, e, r, a, n, o) {
|
340
|
+
const d = c("IconExport"), p = c("VsCheckbox"), h = c("VsDialog");
|
341
|
+
return s(), i(C, null, [
|
436
342
|
l("button", {
|
437
|
-
onClick: e[0] || (e[0] = (
|
343
|
+
onClick: e[0] || (e[0] = (u) => n.isOpen = !0),
|
438
344
|
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"
|
439
345
|
}, [
|
440
|
-
|
346
|
+
b(d, {
|
441
347
|
height: "16",
|
442
348
|
width: "16"
|
443
349
|
}),
|
444
|
-
e[
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
350
|
+
e[4] || (e[4] = F(" Експорт ")),
|
351
|
+
e[5] || (e[5] = l("svg", {
|
352
|
+
class: "shrink-0 size-3.5",
|
353
|
+
xmlns: "http://www.w3.org/2000/svg",
|
354
|
+
width: "24",
|
355
|
+
height: "24",
|
356
|
+
viewBox: "0 0 24 24",
|
357
|
+
fill: "none",
|
358
|
+
stroke: "currentColor",
|
359
|
+
"stroke-width": "2",
|
360
|
+
"stroke-linecap": "round",
|
361
|
+
"stroke-linejoin": "round"
|
362
|
+
}, [
|
363
|
+
l("path", { d: "m6 9 6 6 6-6" })
|
364
|
+
], -1))
|
449
365
|
]),
|
450
|
-
|
366
|
+
b(h, {
|
451
367
|
visible: n.isOpen,
|
452
|
-
"onUpdate:visible": e[
|
368
|
+
"onUpdate:visible": e[3] || (e[3] = (u) => n.isOpen = u),
|
453
369
|
title: "Експорт таблиці",
|
454
|
-
size: "small"
|
455
|
-
closeClickBack: !0
|
370
|
+
size: "small"
|
456
371
|
}, {
|
457
|
-
footer:
|
458
|
-
|
459
|
-
l("button", {
|
372
|
+
footer: y(() => [
|
373
|
+
l("div", st, [
|
374
|
+
e[8] || (e[8] = l("button", {
|
460
375
|
type: "button",
|
461
|
-
class: "
|
462
|
-
|
463
|
-
}, "
|
376
|
+
class: "py-2 px-3 text-nowrap inline-flex justify-center items-center text-start bg-white border border-gray-200 text-gray-800 text-sm font-medium rounded-lg shadow-sm align-middle 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",
|
377
|
+
"data-hs-overlay": "#hs-pro-decm"
|
378
|
+
}, " Скасувати ", -1)),
|
464
379
|
l("button", {
|
465
380
|
type: "button",
|
466
|
-
class: "inline-flex
|
467
|
-
onClick: e[
|
468
|
-
}, " Вигрузити ще ")
|
469
|
-
])) : (s(), a("div", xt, [
|
470
|
-
l("button", {
|
471
|
-
type: "button",
|
472
|
-
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",
|
473
|
-
onClick: e[4] || (e[4] = (c) => n.isOpen = !1)
|
474
|
-
}, " Скасувати "),
|
475
|
-
l("button", {
|
476
|
-
type: "button",
|
477
|
-
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",
|
478
|
-
onClick: e[5] || (e[5] = (...c) => o.exportTable && o.exportTable(...c))
|
381
|
+
class: "py-2 px-3 text-nowrap inline-flex justify-center items-center gap-x-2 text-start bg-blue-600 border border-blue-600 text-white text-sm font-medium rounded-lg shadow-sm align-middle 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",
|
382
|
+
onClick: e[2] || (e[2] = (...u) => o.exportTable && o.exportTable(...u))
|
479
383
|
}, " Завантажити таблицю ")
|
480
|
-
])
|
384
|
+
])
|
481
385
|
]),
|
482
|
-
default:
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
e[8] || (e[8] = l("h2", null, "Звіт сформовано і збережено", -1))
|
490
|
-
])) : (s(), a("div", ot, [
|
491
|
-
l("div", at, [
|
492
|
-
l("div", it, [
|
493
|
-
e[9] || (e[9] = l("h2", { class: "text-sm text-gray-500" }, " Виберіть стовпці таблиці для експорту: ", -1)),
|
494
|
-
l("div", ct, [
|
495
|
-
(s(!0), a(C, null, I(n.actions, (c) => (s(), a("button", {
|
496
|
-
key: c == null ? void 0 : c.name,
|
497
|
-
onClick: c == null ? void 0 : c.function,
|
498
|
-
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"
|
499
|
-
}, [
|
500
|
-
l("span", {
|
501
|
-
class: A(["h-[14px] w-[14px] border rounded-full flex items-center justify-center", { "border-blue-500": (c == null ? void 0 : c.name) === n.activeAction }])
|
502
|
-
}, [
|
503
|
-
(c == null ? void 0 : c.name) === n.activeAction ? (s(), a("span", dt)) : w("", !0)
|
504
|
-
], 2),
|
505
|
-
D(" " + $(c == null ? void 0 : c.label), 1)
|
506
|
-
], 8, ut))), 128))
|
507
|
-
])
|
508
|
-
]),
|
509
|
-
l("div", ht, [
|
510
|
-
(s(!0), a(C, null, I(r.columns, (c, x) => (s(), a("div", {
|
386
|
+
default: y(() => [
|
387
|
+
e[9] || (e[9] = l("div", { class: "dark:border-neutral-700" }, null, -1)),
|
388
|
+
l("div", Xe, [
|
389
|
+
l("div", Ye, [
|
390
|
+
e[6] || (e[6] = l("h2", { class: "text-sm text-gray-500" }, " Виберіть стовпці таблиці для експорту: ", -1)),
|
391
|
+
l("div", et, [
|
392
|
+
(s(!0), i(C, null, T(r.columns, (u, _) => (s(), i("div", {
|
511
393
|
class: "flex items-center",
|
512
|
-
key:
|
394
|
+
key: _,
|
513
395
|
style: { width: "calc((100% - 10px) / 2)" }
|
514
396
|
}, [
|
515
|
-
|
397
|
+
b(p, {
|
516
398
|
class: "[&>label]:text-sm [&>label]:text-gray-800 [&>label]:ms-3 !gap-x-[1px] !p-0",
|
517
399
|
modelValue: n.cols,
|
518
|
-
"onUpdate:modelValue": e[1] || (e[1] = (
|
519
|
-
value:
|
520
|
-
label:
|
400
|
+
"onUpdate:modelValue": e[1] || (e[1] = (w) => n.cols = w),
|
401
|
+
value: u == null ? void 0 : u.name,
|
402
|
+
label: u == null ? void 0 : u.ua
|
521
403
|
}, null, 8, ["modelValue", "value", "label"])
|
522
404
|
]))), 128))
|
523
405
|
])
|
524
406
|
]),
|
525
|
-
l("div",
|
526
|
-
e[
|
527
|
-
l("div",
|
528
|
-
(s(!0),
|
407
|
+
l("div", tt, [
|
408
|
+
e[7] || (e[7] = l("h2", { class: "text-sm text-gray-500" }, "Виберіть формат таблиці:", -1)),
|
409
|
+
l("div", rt, [
|
410
|
+
(s(!0), i(C, null, T(n.tableFormats, (u, _) => (s(), i("div", {
|
529
411
|
class: "flex items-center",
|
530
|
-
key:
|
412
|
+
key: _
|
531
413
|
}, [
|
532
414
|
l("input", {
|
533
415
|
type: "radio",
|
534
416
|
name: "hs-pro-duecmfm",
|
535
|
-
class: "
|
536
|
-
id:
|
537
|
-
onChange: (
|
538
|
-
}, null, 40,
|
417
|
+
class: "shrink-0 border-gray-300 rounded-full text-blue-600 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",
|
418
|
+
id: u,
|
419
|
+
onChange: (w) => o.selectFormat(u)
|
420
|
+
}, null, 40, nt),
|
539
421
|
l("label", {
|
540
|
-
for:
|
422
|
+
for: u,
|
541
423
|
class: "text-sm text-gray-800 ms-3 dark:text-neutral-400"
|
542
|
-
}, " Формат " +
|
424
|
+
}, " Формат " + I(u), 9, lt)
|
543
425
|
]))), 128))
|
544
426
|
])
|
545
427
|
])
|
546
|
-
])
|
428
|
+
])
|
547
429
|
]),
|
548
430
|
_: 1
|
549
431
|
}, 8, ["visible"])
|
550
432
|
], 64);
|
551
433
|
}
|
552
|
-
const
|
434
|
+
const at = /* @__PURE__ */ m(Qe, [["render", ot]]), it = {}, ct = {
|
553
435
|
xmlns: "http://www.w3.org/2000/svg",
|
554
436
|
viewBox: "0 0 24 24",
|
555
437
|
fill: "none",
|
@@ -559,12 +441,12 @@ const _t = /* @__PURE__ */ g(lt, [["render", yt]]), kt = {}, vt = {
|
|
559
441
|
"stroke-linejoin": "round",
|
560
442
|
class: "icon icon-tabler icons-tabler-outline icon-tabler-columns"
|
561
443
|
};
|
562
|
-
function
|
563
|
-
return s(),
|
444
|
+
function dt(t, e, r, a, n, o) {
|
445
|
+
return s(), i("svg", ct, e[0] || (e[0] = [
|
564
446
|
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)
|
565
447
|
]));
|
566
448
|
}
|
567
|
-
const
|
449
|
+
const ut = /* @__PURE__ */ m(it, [["render", dt]]), ht = {
|
568
450
|
props: { column: Object },
|
569
451
|
emits: ["update-column"],
|
570
452
|
data() {
|
@@ -581,51 +463,51 @@ const Ct = /* @__PURE__ */ g(kt, [["render", wt]]), $t = {
|
|
581
463
|
var t;
|
582
464
|
((t = this.column) == null ? void 0 : t.hidden) !== !0 && (this.value = !0);
|
583
465
|
}
|
584
|
-
},
|
585
|
-
function
|
586
|
-
var
|
587
|
-
return s(),
|
588
|
-
|
589
|
-
"onUpdate:modelValue": e[0] || (e[0] = (
|
466
|
+
}, pt = { class: "flex w-full gap-[8px] items-centr" };
|
467
|
+
function bt(t, e, r, a, n, o) {
|
468
|
+
var d, p;
|
469
|
+
return s(), i("label", pt, [
|
470
|
+
z(l("input", {
|
471
|
+
"onUpdate:modelValue": e[0] || (e[0] = (h) => n.value = h),
|
590
472
|
type: "checkbox"
|
591
473
|
}, null, 512), [
|
592
|
-
[
|
474
|
+
[xe, n.value]
|
593
475
|
]),
|
594
|
-
|
476
|
+
F(" " + I(((d = r.column) == null ? void 0 : d.ua) || ((p = r.column) == null ? void 0 : p.title)), 1)
|
595
477
|
]);
|
596
478
|
}
|
597
|
-
const
|
598
|
-
components: { IconColumns:
|
479
|
+
const ft = /* @__PURE__ */ m(ht, [["render", bt]]), mt = {
|
480
|
+
components: { IconColumns: ut, AdminTableColumnsHiddenItem: ft },
|
599
481
|
emits: ["update-columns"],
|
600
482
|
props: { columns: Array },
|
601
483
|
methods: {
|
602
484
|
updateColumn(t) {
|
603
|
-
const e = this.columns.findIndex((
|
485
|
+
const e = this.columns.findIndex((a) => (a == null ? void 0 : a.name) === (t == null ? void 0 : t.name)), r = this.columns;
|
604
486
|
r[e] = t, this.$emit("update-columns", [...r]);
|
605
487
|
}
|
606
488
|
}
|
607
|
-
},
|
608
|
-
function
|
609
|
-
const
|
610
|
-
return s(),
|
489
|
+
}, gt = { 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" }, xt = { class: "py-[10px] px-[10px] w-[260px]" }, yt = { 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" };
|
490
|
+
function _t(t, e, r, a, n, o) {
|
491
|
+
const d = c("IconColumns"), p = c("AdminTableColumnsHiddenItem"), h = c("VsPopover");
|
492
|
+
return s(), x(h, {
|
611
493
|
trigger: "click",
|
612
494
|
placement: "bottom"
|
613
495
|
}, {
|
614
|
-
reference:
|
615
|
-
l("button",
|
616
|
-
|
496
|
+
reference: y(() => [
|
497
|
+
l("button", gt, [
|
498
|
+
b(d, {
|
617
499
|
height: "20",
|
618
500
|
width: "16"
|
619
501
|
})
|
620
502
|
])
|
621
503
|
]),
|
622
|
-
default:
|
623
|
-
l("div",
|
504
|
+
default: y(() => [
|
505
|
+
l("div", xt, [
|
624
506
|
e[0] || (e[0] = l("h2", { class: "text-sm mb-[8px]" }, "Оберіть колонки, щоб приховати", -1)),
|
625
|
-
l("ul",
|
626
|
-
(s(!0),
|
627
|
-
|
628
|
-
column:
|
507
|
+
l("ul", yt, [
|
508
|
+
(s(!0), i(C, null, T(r.columns, (u, _) => (s(), i("li", { key: _ }, [
|
509
|
+
b(p, {
|
510
|
+
column: u,
|
629
511
|
onUpdateColumn: o.updateColumn
|
630
512
|
}, null, 8, ["column", "onUpdateColumn"])
|
631
513
|
]))), 128))
|
@@ -635,14 +517,14 @@ function Mt(t, e, r, i, n, o) {
|
|
635
517
|
_: 1
|
636
518
|
});
|
637
519
|
}
|
638
|
-
const
|
520
|
+
const kt = /* @__PURE__ */ m(mt, [["render", _t]]), wt = {}, vt = {
|
639
521
|
class: "hidden sm:block shrink-0 size-3",
|
640
522
|
xmlns: "http://www.w3.org/2000/svg",
|
641
523
|
fill: "currentColor",
|
642
524
|
viewBox: "0 0 16 16"
|
643
525
|
};
|
644
|
-
function
|
645
|
-
return s(),
|
526
|
+
function Ct(t, e, r, a, n, o) {
|
527
|
+
return s(), i("svg", vt, e[0] || (e[0] = [
|
646
528
|
l("path", {
|
647
529
|
"fill-rule": "evenodd",
|
648
530
|
"clip-rule": "evenodd",
|
@@ -650,30 +532,30 @@ function Bt(t, e, r, i, n, o) {
|
|
650
532
|
}, null, -1)
|
651
533
|
]));
|
652
534
|
}
|
653
|
-
const
|
654
|
-
function
|
655
|
-
return s(),
|
535
|
+
const le = /* @__PURE__ */ m(wt, [["render", Ct]]), $t = {}, It = { class: "vs-table-interface__table-wrp w-full rounded h-fit overflow-hidden" };
|
536
|
+
function Tt(t, e, r, a, n, o) {
|
537
|
+
return s(), i("div", It, e[0] || (e[0] = [
|
656
538
|
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)
|
657
539
|
]));
|
658
540
|
}
|
659
|
-
const
|
541
|
+
const St = /* @__PURE__ */ m($t, [["render", Tt]]), Vt = {
|
660
542
|
props: { row: Object, column: Object, table: String }
|
661
543
|
};
|
662
|
-
function
|
663
|
-
var
|
664
|
-
return s(),
|
665
|
-
((
|
544
|
+
function At(t, e, r, a, n, o) {
|
545
|
+
var d, p, h, u, _, w, k, $;
|
546
|
+
return s(), x(ye(
|
547
|
+
((d = r.column) == null ? void 0 : d.format) === "custom" ? (p = r.column) == null ? void 0 : p.component : t.$componentsConfig[`table-format-${((u = (h = r.column) == null ? void 0 : h.format) == null ? void 0 : u.toLowerCase()) || "text"}`]
|
666
548
|
), {
|
667
|
-
onUpdateTable: e[0] || (e[0] = (
|
549
|
+
onUpdateTable: e[0] || (e[0] = (g) => t.$emit("update-table")),
|
668
550
|
name: (_ = r.column) == null ? void 0 : _.name,
|
669
551
|
data: r.row,
|
670
|
-
value: (
|
552
|
+
value: (k = r.row) == null ? void 0 : k[(w = r.column) == null ? void 0 : w.name],
|
671
553
|
table: r.table,
|
672
554
|
column: r.column,
|
673
|
-
edit: (
|
555
|
+
edit: ($ = r.column) == null ? void 0 : $.edit
|
674
556
|
}, null, 40, ["name", "data", "value", "table", "column", "edit"]);
|
675
557
|
}
|
676
|
-
const
|
558
|
+
const se = /* @__PURE__ */ m(Vt, [["render", At]]), Ft = {}, Dt = {
|
677
559
|
xmlns: "http://www.w3.org/2000/svg",
|
678
560
|
viewBox: "0 0 24 24",
|
679
561
|
fill: "none",
|
@@ -683,8 +565,8 @@ const ae = /* @__PURE__ */ g(Et, [["render", Nt]]), Ht = {}, Wt = {
|
|
683
565
|
"stroke-linejoin": "round",
|
684
566
|
class: "icon icon-tabler icons-tabler-outline icon-tabler-minus"
|
685
567
|
};
|
686
|
-
function
|
687
|
-
return s(),
|
568
|
+
function Mt(t, e, r, a, n, o) {
|
569
|
+
return s(), i("svg", Dt, e[0] || (e[0] = [
|
688
570
|
l("path", {
|
689
571
|
stroke: "none",
|
690
572
|
d: "M0 0h24v24H0z",
|
@@ -693,41 +575,41 @@ function Rt(t, e, r, i, n, o) {
|
|
693
575
|
l("path", { d: "M5 12l14 0" }, null, -1)
|
694
576
|
]));
|
695
577
|
}
|
696
|
-
const
|
697
|
-
components: { IconPlus:
|
578
|
+
const jt = /* @__PURE__ */ m(Ft, [["render", Mt]]), zt = {
|
579
|
+
components: { IconPlus: le, IconMinus: jt },
|
698
580
|
props: { title: String },
|
699
581
|
data() {
|
700
582
|
return { expanded: !1 };
|
701
583
|
}
|
702
|
-
},
|
703
|
-
function
|
704
|
-
const
|
705
|
-
return s(),
|
584
|
+
}, Pt = { class: "hs-accordion" }, qt = { class: "py-0.5 flex items-center gap-x-0.5 w-full" }, Bt = { class: "text-sm font-medium" }, Lt = { class: "w-full duration-150 before:block before:absolute relative inline-block b cursor-pointer" };
|
585
|
+
function Ut(t, e, r, a, n, o) {
|
586
|
+
const d = c("IconPlus"), p = c("IconMinus");
|
587
|
+
return s(), i("div", null, [
|
706
588
|
l("div", null, [
|
707
|
-
l("div",
|
708
|
-
l("div",
|
589
|
+
l("div", Pt, [
|
590
|
+
l("div", qt, [
|
709
591
|
l("div", {
|
710
|
-
onClick: e[0] || (e[0] = (
|
592
|
+
onClick: e[0] || (e[0] = (h) => n.expanded = !n.expanded),
|
711
593
|
class: "grow rounded-md cursor-pointer"
|
712
594
|
}, [
|
713
|
-
l("span",
|
595
|
+
l("span", Bt, I(r.title), 1)
|
714
596
|
]),
|
715
597
|
l("button", {
|
716
598
|
class: "size-6 flex justify-center items-center hover:bg-gray-100 rounded-md",
|
717
|
-
onClick: e[1] || (e[1] = (
|
599
|
+
onClick: e[1] || (e[1] = (h) => n.expanded = !n.expanded)
|
718
600
|
}, [
|
719
|
-
n.expanded ? (s(),
|
601
|
+
n.expanded ? (s(), x(p, {
|
720
602
|
key: 1,
|
721
603
|
width: "14"
|
722
|
-
})) : (s(),
|
604
|
+
})) : (s(), x(d, { key: 0 }))
|
723
605
|
])
|
724
606
|
]),
|
725
|
-
|
726
|
-
default:
|
727
|
-
|
728
|
-
|
607
|
+
b(P, { name: "fade" }, {
|
608
|
+
default: y(() => [
|
609
|
+
z(l("div", Lt, [
|
610
|
+
_e(t.$slots, "default", {}, void 0, !0)
|
729
611
|
], 512), [
|
730
|
-
[
|
612
|
+
[ne, n.expanded]
|
731
613
|
])
|
732
614
|
]),
|
733
615
|
_: 3
|
@@ -736,47 +618,47 @@ function Yt(t, e, r, i, n, o) {
|
|
736
618
|
])
|
737
619
|
]);
|
738
620
|
}
|
739
|
-
const
|
621
|
+
const Ot = /* @__PURE__ */ m(zt, [["render", Ut], ["__scopeId", "data-v-4139bc00"]]), Et = {
|
740
622
|
components: {
|
741
|
-
AdminComponentIs:
|
742
|
-
AdminTree:
|
743
|
-
VsNoData:
|
744
|
-
VsWidgetComments:
|
745
|
-
VsWidgetMap:
|
746
|
-
VsWidgetFileList:
|
623
|
+
AdminComponentIs: se,
|
624
|
+
AdminTree: Ot,
|
625
|
+
VsNoData: he,
|
626
|
+
VsWidgetComments: pe,
|
627
|
+
VsWidgetMap: be,
|
628
|
+
VsWidgetFileList: fe
|
747
629
|
},
|
748
630
|
props: { table: String, columns: Array, row: Object }
|
749
|
-
},
|
631
|
+
}, Nt = {
|
750
632
|
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",
|
751
633
|
style: { height: "calc(100vh - 310px)" }
|
752
|
-
},
|
634
|
+
}, Ht = {
|
753
635
|
class: "border-l",
|
754
636
|
style: { height: "calc(100vh - 360px)" }
|
755
|
-
},
|
756
|
-
function
|
757
|
-
var
|
758
|
-
const
|
759
|
-
return s(),
|
637
|
+
}, Wt = { class: "flex items-center justify-between py-1 gap-x-4" }, Rt = { class: "col-span-1" }, Gt = { class: "inline-flex items-center gap-x-2 text-[13px] text-gray-500 dark:text-neutral-500" }, Zt = { class: "col-span-2" }, Jt = { class: "font-medium text-[13px] text-gray-800 dark:text-neutral-200" }, Kt = { class: "table-info-card" }, Qt = { class: "table-info-card" };
|
638
|
+
function Xt(t, e, r, a, n, o) {
|
639
|
+
var k, $;
|
640
|
+
const d = c("AdminComponentIs"), p = c("AdminTree"), h = c("VsWidgetMap"), u = c("VsNoData"), _ = c("VsWidgetComments"), w = c("VsWidgetFileList");
|
641
|
+
return s(), i("div", Nt, [
|
760
642
|
e[0] || (e[0] = l("div", { class: "p-[10px] pl-[18px] pb-[18px] border-b" }, [
|
761
643
|
l("h2", { class: "text-sm font-medium" }, "Інформація про об'єкт")
|
762
644
|
], -1)),
|
763
|
-
l("div",
|
764
|
-
(
|
765
|
-
r.row ? (s(),
|
645
|
+
l("div", Ht, [
|
646
|
+
($ = (k = t.$route) == null ? void 0 : k.query) != null && $.card ? (s(), i(C, { key: 0 }, [
|
647
|
+
r.row ? (s(), x(p, {
|
766
648
|
key: 0,
|
767
649
|
title: "Основна інформація",
|
768
650
|
class: "border-b p-[10px] py-[16px]"
|
769
651
|
}, {
|
770
|
-
default:
|
771
|
-
(s(!0),
|
772
|
-
l("dt",
|
773
|
-
l("p",
|
652
|
+
default: y(() => [
|
653
|
+
(s(!0), i(C, null, T(r.columns, (g) => (s(), i("dl", Wt, [
|
654
|
+
l("dt", Rt, [
|
655
|
+
l("p", Gt, I((g == null ? void 0 : g.ua) || (g == null ? void 0 : g.title)) + ": ", 1)
|
774
656
|
]),
|
775
|
-
l("dd",
|
776
|
-
l("p",
|
777
|
-
|
657
|
+
l("dd", Zt, [
|
658
|
+
l("p", Jt, [
|
659
|
+
b(d, {
|
778
660
|
row: r.row,
|
779
|
-
column:
|
661
|
+
column: g,
|
780
662
|
table: r.table
|
781
663
|
}, null, 8, ["row", "column", "table"])
|
782
664
|
])
|
@@ -784,19 +666,19 @@ function dr(t, e, r, i, n, o) {
|
|
784
666
|
]))), 256))
|
785
667
|
]),
|
786
668
|
_: 1
|
787
|
-
})) :
|
788
|
-
|
669
|
+
})) : v("", !0),
|
670
|
+
b(p, {
|
789
671
|
title: "Карта",
|
790
672
|
class: "border-b p-[10px] py-[16px]"
|
791
673
|
}, {
|
792
|
-
default:
|
793
|
-
var
|
674
|
+
default: y(() => {
|
675
|
+
var g, V;
|
794
676
|
return [
|
795
|
-
(
|
677
|
+
(g = r.row) != null && g.geom ? (s(), x(h, {
|
796
678
|
key: 0,
|
797
|
-
geometry: (
|
679
|
+
geometry: (V = r.row) == null ? void 0 : V.geom,
|
798
680
|
zoom: 14
|
799
|
-
}, null, 8, ["geometry"])) : (s(),
|
681
|
+
}, null, 8, ["geometry"])) : (s(), x(u, {
|
800
682
|
key: 1,
|
801
683
|
title: "У об'єкта відсутня геометрія",
|
802
684
|
text: "",
|
@@ -806,46 +688,46 @@ function dr(t, e, r, i, n, o) {
|
|
806
688
|
}),
|
807
689
|
_: 1
|
808
690
|
}),
|
809
|
-
|
691
|
+
b(p, {
|
810
692
|
title: "Коментарі",
|
811
693
|
class: "border-b p-[10px] py-[16px]"
|
812
694
|
}, {
|
813
|
-
default:
|
814
|
-
var
|
695
|
+
default: y(() => {
|
696
|
+
var g;
|
815
697
|
return [
|
816
|
-
l("div",
|
817
|
-
|
818
|
-
id: (
|
698
|
+
l("div", Kt, [
|
699
|
+
b(_, {
|
700
|
+
id: (g = r.row) == null ? void 0 : g.id
|
819
701
|
}, null, 8, ["id"])
|
820
702
|
])
|
821
703
|
];
|
822
704
|
}),
|
823
705
|
_: 1
|
824
706
|
}),
|
825
|
-
|
707
|
+
b(p, {
|
826
708
|
title: "Файли",
|
827
709
|
class: "border-b p-[10px] py-[16px]"
|
828
710
|
}, {
|
829
|
-
default:
|
830
|
-
var
|
711
|
+
default: y(() => {
|
712
|
+
var g;
|
831
713
|
return [
|
832
|
-
l("div",
|
833
|
-
|
834
|
-
id: (
|
714
|
+
l("div", Qt, [
|
715
|
+
b(w, {
|
716
|
+
id: (g = r.row) == null ? void 0 : g.id
|
835
717
|
}, null, 8, ["id"])
|
836
718
|
])
|
837
719
|
];
|
838
720
|
}),
|
839
721
|
_: 1
|
840
722
|
})
|
841
|
-
], 64)) : (s(),
|
723
|
+
], 64)) : (s(), x(u, {
|
842
724
|
key: 1,
|
843
725
|
text: "Оберіть один з об'єктів в таблиці для відображення інформаціі про нього"
|
844
726
|
}))
|
845
727
|
])
|
846
728
|
]);
|
847
729
|
}
|
848
|
-
const
|
730
|
+
const Yt = /* @__PURE__ */ m(Et, [["render", Xt]]), er = {}, tr = {
|
849
731
|
class: "hidden xl:block shrink-0 size-4",
|
850
732
|
xmlns: "http://www.w3.org/2000/svg",
|
851
733
|
viewBox: "0 0 24 24",
|
@@ -855,8 +737,8 @@ const hr = /* @__PURE__ */ g(tr, [["render", dr]]), pr = {}, br = {
|
|
855
737
|
"stroke-linecap": "round",
|
856
738
|
"stroke-linejoin": "round"
|
857
739
|
};
|
858
|
-
function
|
859
|
-
return s(),
|
740
|
+
function rr(t, e, r, a, n, o) {
|
741
|
+
return s(), i("svg", tr, e[0] || (e[0] = [
|
860
742
|
l("rect", {
|
861
743
|
width: "18",
|
862
744
|
height: "18",
|
@@ -868,7 +750,7 @@ function fr(t, e, r, i, n, o) {
|
|
868
750
|
l("path", { d: "m8 9 3 3-3 3" }, null, -1)
|
869
751
|
]));
|
870
752
|
}
|
871
|
-
const
|
753
|
+
const nr = /* @__PURE__ */ m(er, [["render", rr]]), lr = {}, sr = {
|
872
754
|
class: "h21yx vs0hq",
|
873
755
|
xmlns: "http://www.w3.org/2000/svg",
|
874
756
|
width: "24",
|
@@ -880,15 +762,14 @@ const mr = /* @__PURE__ */ g(pr, [["render", fr]]), gr = {}, xr = {
|
|
880
762
|
"stroke-linecap": "round",
|
881
763
|
"stroke-linejoin": "round"
|
882
764
|
};
|
883
|
-
function
|
884
|
-
return s(),
|
765
|
+
function or(t, e, r, a, n, o) {
|
766
|
+
return s(), i("svg", sr, e[0] || (e[0] = [
|
885
767
|
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)
|
886
768
|
]));
|
887
769
|
}
|
888
|
-
const
|
889
|
-
emits: ["filterChange"],
|
770
|
+
const ar = /* @__PURE__ */ m(lr, [["render", or]]), ir = {
|
890
771
|
props: { scheme: { type: Object }, onFilters: { type: Number } },
|
891
|
-
components: { IconFilter:
|
772
|
+
components: { IconFilter: ar },
|
892
773
|
data() {
|
893
774
|
return {
|
894
775
|
isFilters: !1
|
@@ -899,35 +780,35 @@ const _r = /* @__PURE__ */ g(gr, [["render", yr]]), kr = {
|
|
899
780
|
this.isFilters && t.classList.contains("filter-container") && (this.isFilters = !1);
|
900
781
|
}
|
901
782
|
}
|
902
|
-
},
|
783
|
+
}, cr = {
|
903
784
|
key: 0,
|
904
785
|
class: "font-medium text-[10px] py-0.5 px-[5px] bg-gray-800 text-white leading-3 rounded-full dark:bg-neutral-500"
|
905
|
-
},
|
906
|
-
function
|
907
|
-
const
|
908
|
-
return s(),
|
786
|
+
}, dr = { 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" };
|
787
|
+
function ur(t, e, r, a, n, o) {
|
788
|
+
const d = c("IconFilter"), p = c("VsFilter");
|
789
|
+
return s(), i(C, null, [
|
909
790
|
l("button", {
|
910
|
-
onClick: e[0] || (e[0] = (
|
791
|
+
onClick: e[0] || (e[0] = (h) => n.isFilters = !n.isFilters),
|
911
792
|
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"
|
912
793
|
}, [
|
913
|
-
|
794
|
+
b(d, {
|
914
795
|
height: "16",
|
915
796
|
width: "16"
|
916
797
|
}),
|
917
|
-
e[4] || (e[4] =
|
918
|
-
r.onFilters ? (s(),
|
798
|
+
e[4] || (e[4] = F(" Фільтри ")),
|
799
|
+
r.onFilters ? (s(), i("span", cr, I(r.onFilters), 1)) : v("", !0)
|
919
800
|
]),
|
920
|
-
|
921
|
-
default:
|
922
|
-
var
|
801
|
+
b(P, { name: "fade" }, {
|
802
|
+
default: y(() => {
|
803
|
+
var h;
|
923
804
|
return [
|
924
|
-
|
925
|
-
onClick: e[3] || (e[3] = (...
|
805
|
+
z(l("div", {
|
806
|
+
onClick: e[3] || (e[3] = (...u) => o.closeFilter && o.closeFilter(...u)),
|
926
807
|
style: { height: "100vh" },
|
927
808
|
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)]"
|
928
809
|
}, [
|
929
|
-
l("div",
|
930
|
-
(
|
810
|
+
l("div", dr, [
|
811
|
+
(h = r.scheme) != null && h.length ? (s(), x(p, {
|
931
812
|
key: 0,
|
932
813
|
ref: "filter",
|
933
814
|
scheme: r.scheme,
|
@@ -935,13 +816,13 @@ function Cr(t, e, r, i, n, o) {
|
|
935
816
|
"apply-vue-router": "",
|
936
817
|
history: "",
|
937
818
|
name: "filter",
|
938
|
-
onFilterChange: e[1] || (e[1] = (
|
819
|
+
onFilterChange: e[1] || (e[1] = (u) => t.$emit("filterChange", u)),
|
939
820
|
closeFilterBtn: !0,
|
940
|
-
onFilterClose: e[2] || (e[2] = (
|
941
|
-
}, null, 8, ["scheme"])) :
|
821
|
+
onFilterClose: e[2] || (e[2] = (u) => n.isFilters = !1)
|
822
|
+
}, null, 8, ["scheme"])) : v("", !0)
|
942
823
|
])
|
943
824
|
], 512), [
|
944
|
-
[
|
825
|
+
[ne, n.isFilters]
|
945
826
|
])
|
946
827
|
];
|
947
828
|
}),
|
@@ -949,25 +830,25 @@ function Cr(t, e, r, i, n, o) {
|
|
949
830
|
})
|
950
831
|
], 64);
|
951
832
|
}
|
952
|
-
const
|
833
|
+
const hr = /* @__PURE__ */ m(ir, [["render", ur]]), pr = {
|
953
834
|
props: { tabsList: { type: Array, default: () => [] }, filterState: String }
|
954
|
-
},
|
835
|
+
}, br = {
|
955
836
|
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",
|
956
837
|
"aria-label": "Tabs",
|
957
838
|
role: "tablist",
|
958
839
|
"aria-orientation": "horizontal"
|
959
|
-
},
|
960
|
-
function
|
961
|
-
return s(),
|
962
|
-
(s(!0),
|
963
|
-
onClick: (
|
964
|
-
class:
|
965
|
-
" 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": (
|
840
|
+
}, fr = ["onClick"];
|
841
|
+
function mr(t, e, r, a, n, o) {
|
842
|
+
return s(), i("nav", br, [
|
843
|
+
(s(!0), i(C, null, T(r.tabsList, (d) => (s(), i("button", {
|
844
|
+
onClick: (p) => t.$emit("update:filterState", d == null ? void 0 : d.name),
|
845
|
+
class: S(["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", {
|
846
|
+
" 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": (d == null ? void 0 : d.name) === r.filterState
|
966
847
|
}])
|
967
|
-
},
|
848
|
+
}, I(d == null ? void 0 : d.label), 11, fr))), 256))
|
968
849
|
]);
|
969
850
|
}
|
970
|
-
const
|
851
|
+
const gr = /* @__PURE__ */ m(pr, [["render", mr]]), xr = {}, yr = {
|
971
852
|
xmlns: "http://www.w3.org/2000/svg",
|
972
853
|
viewBox: "0 0 24 24",
|
973
854
|
fill: "none",
|
@@ -977,8 +858,8 @@ const Vr = /* @__PURE__ */ g(Sr, [["render", Tr]]), Dr = {}, Fr = {
|
|
977
858
|
"stroke-linejoin": "round",
|
978
859
|
class: "icon icon-tabler icons-tabler-outline icon-tabler-filter"
|
979
860
|
};
|
980
|
-
function
|
981
|
-
return s(),
|
861
|
+
function _r(t, e, r, a, n, o) {
|
862
|
+
return s(), i("svg", yr, e[0] || (e[0] = [
|
982
863
|
l("path", {
|
983
864
|
stroke: "none",
|
984
865
|
d: "M0 0h24v24H0z",
|
@@ -987,39 +868,39 @@ function Mr(t, e, r, i, n, o) {
|
|
987
868
|
l("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)
|
988
869
|
]));
|
989
870
|
}
|
990
|
-
const
|
991
|
-
components: { IconFilter2:
|
871
|
+
const kr = /* @__PURE__ */ m(xr, [["render", _r]]), wr = {
|
872
|
+
components: { IconFilter2: kr },
|
992
873
|
props: { filterCustom: String, customList: Array }
|
993
|
-
},
|
994
|
-
function
|
995
|
-
const
|
996
|
-
return s(),
|
874
|
+
}, vr = { 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" }, Cr = { class: "flex flex-col gap-[4px]" }, $r = ["onClick"];
|
875
|
+
function Ir(t, e, r, a, n, o) {
|
876
|
+
const d = c("IconFilter2"), p = c("VsPopover");
|
877
|
+
return s(), x(p, {
|
997
878
|
ref: "popover",
|
998
879
|
placement: "bottom"
|
999
880
|
}, {
|
1000
|
-
reference:
|
1001
|
-
l("button",
|
1002
|
-
|
881
|
+
reference: y(() => [
|
882
|
+
l("button", vr, [
|
883
|
+
b(d, {
|
1003
884
|
height: "20",
|
1004
885
|
width: "20"
|
1005
886
|
})
|
1006
887
|
])
|
1007
888
|
]),
|
1008
|
-
default:
|
1009
|
-
l("div",
|
1010
|
-
(s(!0),
|
889
|
+
default: y(() => [
|
890
|
+
l("div", Cr, [
|
891
|
+
(s(!0), i(C, null, T(r.customList, (h, u) => (s(), i("button", {
|
1011
892
|
onClick: (_) => {
|
1012
|
-
var
|
1013
|
-
t.$emit("update:filterCustom",
|
893
|
+
var w;
|
894
|
+
t.$emit("update:filterCustom", h == null ? void 0 : h.name), (w = t.$refs) == null || w.popover.togglePopover();
|
1014
895
|
},
|
1015
|
-
key:
|
1016
|
-
class:
|
1017
|
-
},
|
896
|
+
key: u,
|
897
|
+
class: S(["p-[8px] block rounded-lg w-[140px] text-start hover:bg-gray-100 !duration-300", { "bg-gray-100": r.filterCustom === (h == null ? void 0 : h.name) }])
|
898
|
+
}, I(h == null ? void 0 : h.label), 11, $r))), 128)),
|
1018
899
|
l("button", {
|
1019
900
|
class: "p-[8px] block rounded-lg w-[140px] text-start hover:bg-gray-100 !duration-300",
|
1020
|
-
onClick: e[0] || (e[0] = (
|
1021
|
-
var
|
1022
|
-
t.$emit("update:filterCustom", void 0), (
|
901
|
+
onClick: e[0] || (e[0] = (h) => {
|
902
|
+
var u;
|
903
|
+
t.$emit("update:filterCustom", void 0), (u = t.$refs) == null || u.popover.togglePopover();
|
1023
904
|
})
|
1024
905
|
}, " Скинути фільтри ")
|
1025
906
|
])
|
@@ -1027,22 +908,22 @@ function Lr(t, e, r, i, n, o) {
|
|
1027
908
|
_: 1
|
1028
909
|
}, 512);
|
1029
910
|
}
|
1030
|
-
const
|
911
|
+
const Tr = /* @__PURE__ */ m(wr, [["render", Ir]]), Sr = {
|
1031
912
|
props: { table: String, title: String },
|
1032
913
|
components: {
|
1033
|
-
AdminTableControl:
|
1034
|
-
AdminTableExport:
|
1035
|
-
AdminTableColumnsHidden:
|
1036
|
-
AdminTableColumn:
|
1037
|
-
AdminNodata:
|
1038
|
-
IconPlus:
|
1039
|
-
IconSearch:
|
1040
|
-
AdminTableCardInfo:
|
1041
|
-
IconOpenCard:
|
1042
|
-
AdminComponentIs:
|
1043
|
-
AdminTableFilters:
|
1044
|
-
AdminTableTabs:
|
1045
|
-
AdminTableCustomFilters:
|
914
|
+
AdminTableControl: Re,
|
915
|
+
AdminTableExport: at,
|
916
|
+
AdminTableColumnsHidden: kt,
|
917
|
+
AdminTableColumn: Se,
|
918
|
+
AdminNodata: St,
|
919
|
+
IconPlus: le,
|
920
|
+
IconSearch: me,
|
921
|
+
AdminTableCardInfo: Yt,
|
922
|
+
IconOpenCard: nr,
|
923
|
+
AdminComponentIs: se,
|
924
|
+
AdminTableFilters: hr,
|
925
|
+
AdminTableTabs: gr,
|
926
|
+
AdminTableCustomFilters: Tr
|
1046
927
|
},
|
1047
928
|
data() {
|
1048
929
|
return {
|
@@ -1056,8 +937,7 @@ const Ur = /* @__PURE__ */ g(qr, [["render", Lr]]), Or = {
|
|
1056
937
|
isVisibleCardInfo: !1,
|
1057
938
|
onFilters: 0,
|
1058
939
|
filterState: null,
|
1059
|
-
filterCustom: null
|
1060
|
-
visibleColumns: []
|
940
|
+
filterCustom: null
|
1061
941
|
};
|
1062
942
|
},
|
1063
943
|
async mounted() {
|
@@ -1083,8 +963,8 @@ const Ur = /* @__PURE__ */ g(qr, [["render", Lr]]), Or = {
|
|
1083
963
|
activeCardRow() {
|
1084
964
|
var t, e;
|
1085
965
|
return ((e = (t = this.tableData) == null ? void 0 : t.rows) == null ? void 0 : e.find((r) => {
|
1086
|
-
var
|
1087
|
-
return (r == null ? void 0 : r.id) === ((n = (
|
966
|
+
var a, n;
|
967
|
+
return (r == null ? void 0 : r.id) === ((n = (a = this.$route) == null ? void 0 : a.query) == null ? void 0 : n.card);
|
1088
968
|
})) || {};
|
1089
969
|
},
|
1090
970
|
getActions() {
|
@@ -1096,17 +976,13 @@ const Ur = /* @__PURE__ */ g(qr, [["render", Lr]]), Or = {
|
|
1096
976
|
async table() {
|
1097
977
|
this.tableData = null, await this.getTableData();
|
1098
978
|
},
|
1099
|
-
searchValue(
|
1100
|
-
|
1101
|
-
this.getTableData(), this.$router.push({
|
1102
|
-
...this.$route,
|
1103
|
-
query: { ...(e = this.$route) == null ? void 0 : e.query, search: t || void 0 }
|
1104
|
-
});
|
979
|
+
searchValue() {
|
980
|
+
this.getTableData();
|
1105
981
|
},
|
1106
982
|
$route: {
|
1107
983
|
handler(t, e) {
|
1108
|
-
var r,
|
1109
|
-
((r = t == null ? void 0 : t.params) == null ? void 0 : r.catchAll) !== ((
|
984
|
+
var r, a;
|
985
|
+
((r = t == null ? void 0 : t.params) == null ? void 0 : r.catchAll) !== ((a = e == null ? void 0 : e.params) == null ? void 0 : a.catchAll) && (this.unmountedData(), this.getFilters());
|
1110
986
|
},
|
1111
987
|
deep: !0
|
1112
988
|
},
|
@@ -1123,42 +999,32 @@ const Ur = /* @__PURE__ */ g(qr, [["render", Lr]]), Or = {
|
|
1123
999
|
},
|
1124
1000
|
filterCustom(t) {
|
1125
1001
|
var e;
|
1126
|
-
this.$router.
|
1002
|
+
this.$router.push({
|
1127
1003
|
...this.$route,
|
1128
1004
|
query: { ...(e = this.$route) == null ? void 0 : e.query, filterCustom: t }
|
1129
1005
|
}), this.getTableData();
|
1130
|
-
},
|
1131
|
-
columns(t) {
|
1132
|
-
var e, r;
|
1133
|
-
this.visibleColumns = t == null ? void 0 : t.map((i) => i == null ? void 0 : i.name), this.$router.replace({
|
1134
|
-
...this.$route,
|
1135
|
-
query: {
|
1136
|
-
...(e = this.$route) == null ? void 0 : e.query,
|
1137
|
-
columns: (r = this.visibleColumns) != null && r.length ? this.visibleColumns : void 0
|
1138
|
-
}
|
1139
|
-
});
|
1140
1006
|
}
|
1141
1007
|
},
|
1142
1008
|
methods: {
|
1143
1009
|
async checkUrlMounted() {
|
1144
|
-
var t, e, r,
|
1145
|
-
this.page = ((e = (t = this.$route) == null ? void 0 : t.query) == null ? void 0 : e.page) || 1, this.limit = ((
|
1010
|
+
var t, e, r, a, n, o, d, p, h;
|
1011
|
+
this.page = ((e = (t = this.$route) == null ? void 0 : t.query) == null ? void 0 : e.page) || 1, this.limit = ((a = (r = this.$route) == null ? void 0 : r.query) == null ? void 0 : a.limit) || 20, this.filterState = ((o = (n = this.$route) == null ? void 0 : n.query) == null ? void 0 : o.filterState) || null, this.filterCustom = ((p = (d = this.$route) == null ? void 0 : d.query) == null ? void 0 : p.filterCustom) || null, (h = this.$route) != null && h.query.card && (this.isVisibleCardInfo = !0);
|
1146
1012
|
},
|
1147
1013
|
rowWidth(t) {
|
1148
|
-
var r,
|
1149
|
-
const e = (
|
1014
|
+
var r, a;
|
1015
|
+
const e = (a = (r = this.tableData) == null ? void 0 : r.columns) == null ? void 0 : a.find((n) => n.name === t);
|
1150
1016
|
if (e) {
|
1151
1017
|
const n = e == null ? void 0 : e.width;
|
1152
1018
|
return n != null && n.includes("px") ? n : `${n}px`;
|
1153
1019
|
}
|
1154
1020
|
},
|
1155
1021
|
unmountedData() {
|
1156
|
-
this.page = 1, this.
|
1022
|
+
this.page = 1, this.filterCustom = null, this.filterState = null, this.isVisibleCardInfo = !1, this.filterScheme = null, this.filters = null, this.onFilters = 0;
|
1157
1023
|
},
|
1158
1024
|
async getTableData() {
|
1159
|
-
var t, e
|
1025
|
+
var t, e;
|
1160
1026
|
try {
|
1161
|
-
const { data:
|
1027
|
+
const { data: r } = await A.get(`/api/template/table/${this.table}`), a = await A.get(`/api/table-data/${this.table}`, {
|
1162
1028
|
params: {
|
1163
1029
|
page: this.page,
|
1164
1030
|
search: this.searchValue || null,
|
@@ -1170,19 +1036,16 @@ const Ur = /* @__PURE__ */ g(qr, [["render", Lr]]), Or = {
|
|
1170
1036
|
}
|
1171
1037
|
});
|
1172
1038
|
this.tableData = {
|
1173
|
-
...
|
1174
|
-
...(
|
1175
|
-
}
|
1176
|
-
var _;
|
1177
|
-
(_ = this.visibleColumns) != null && _.includes(h == null ? void 0 : h.name) ? h.hidden = !1 : h.hidden = !0;
|
1178
|
-
}) : this.visibleColumns = (u = (o = (n = this.tableData) == null ? void 0 : n.columns) == null ? void 0 : o.filter((h) => (h == null ? void 0 : h.hidden) !== !0)) == null ? void 0 : u.map((h) => h == null ? void 0 : h.name);
|
1039
|
+
...r,
|
1040
|
+
...(a == null ? void 0 : a.data) || {}
|
1041
|
+
};
|
1179
1042
|
} catch {
|
1180
1043
|
}
|
1181
1044
|
},
|
1182
1045
|
async getFilters() {
|
1183
1046
|
var t;
|
1184
1047
|
try {
|
1185
|
-
const { data: e } = await
|
1048
|
+
const { data: e } = await A.get(`/api/table-filter/${this.table}`);
|
1186
1049
|
this.filterScheme = (t = e == null ? void 0 : e.list) == null ? void 0 : t.map((r) => ({
|
1187
1050
|
...r,
|
1188
1051
|
label: (r == null ? void 0 : r.label) || (r == null ? void 0 : r.ua)
|
@@ -1223,165 +1086,159 @@ const Ur = /* @__PURE__ */ g(qr, [["render", Lr]]), Or = {
|
|
1223
1086
|
});
|
1224
1087
|
}
|
1225
1088
|
}
|
1226
|
-
},
|
1227
|
-
style: { height: "calc(100vh -
|
1089
|
+
}, Vr = { class: "w-[calc(100vw - 320px)]" }, Ar = { class: "h-[76px] bg-gray-50 flex items-center justify-between px-[30px]" }, Fr = { class: "text-xl font-medium h-[20px]" }, Dr = {
|
1090
|
+
style: { height: "calc(100vh - 140px)", width: "calc(100vw - 260px)" },
|
1228
1091
|
class: "bg-gray-50 p-[20px] flex pt-[10px]"
|
1229
|
-
},
|
1092
|
+
}, Mr = { class: "bg-white w-full rounded-xl border p-[20px] pr-0" }, jr = { class: "flex" }, zr = { class: "flex gap-[6px] ml-auto" }, Pr = { class: "inline-block w-full align-middle" }, qr = {
|
1230
1093
|
key: 0,
|
1231
1094
|
class: "relative min-w-full divide-y divide-gray-200 table-fixed dark:divide-neutral-700"
|
1232
|
-
},
|
1095
|
+
}, Br = { class: "sticky top-0 bg-white w-full after:absolute after:content-[''] z-[1] after:block after:w-full after:h-px after:bg-stone-200" }, Lr = { class: "right-0 border-t border-stone-200" }, Ur = { class: "divide-y divide-gray-200" }, Or = { class: "text-sm text-gray-600 px-4 py-3" }, Er = ["onClick"], Nr = ["onClick"], Hr = {
|
1233
1096
|
key: 0,
|
1234
1097
|
class: "text-center sticky right-0 bg-white w-[80px] px-[10px]"
|
1235
|
-
},
|
1236
|
-
function
|
1237
|
-
var
|
1238
|
-
const
|
1239
|
-
return s(),
|
1240
|
-
l("div",
|
1241
|
-
l("h2",
|
1242
|
-
o.isForm ? (s(),
|
1098
|
+
}, Wr = { class: "p-[20px] flex justify-end w-full" };
|
1099
|
+
function Rr(t, e, r, a, n, o) {
|
1100
|
+
var q, B, L, U, O, E, N, H, W, R, G, Z, J, K;
|
1101
|
+
const d = c("IconPlus"), p = c("router-link"), h = c("AdminTableTabs"), u = c("IconSearch"), _ = c("VsText"), w = c("AdminTableCustomFilters"), k = c("AdminTableColumnsHidden"), $ = c("AdminTableExport"), g = c("AdminTableFilters"), V = c("IconOpenCard"), D = c("AdminTableColumn"), M = c("AdminComponentIs"), oe = c("AdminTableControl"), ae = c("AdminNodata"), ie = c("VsPagination"), ce = c("AdminTableCardInfo");
|
1102
|
+
return s(), i("div", Vr, [
|
1103
|
+
l("div", Ar, [
|
1104
|
+
l("h2", Fr, I(r.title), 1),
|
1105
|
+
o.isForm ? (s(), x(p, {
|
1243
1106
|
key: 0,
|
1244
|
-
to: `/add?table=${(
|
1107
|
+
to: `/add?table=${(B = (q = t.$route) == null ? void 0 : q.params) == null ? void 0 : B.catchAll}`,
|
1245
1108
|
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"
|
1246
1109
|
}, {
|
1247
|
-
default:
|
1248
|
-
|
1110
|
+
default: y(() => [
|
1111
|
+
b(d, {
|
1249
1112
|
height: "16",
|
1250
1113
|
width: "16"
|
1251
1114
|
}),
|
1252
|
-
e[5] || (e[5] =
|
1115
|
+
e[5] || (e[5] = F(" Додати "))
|
1253
1116
|
]),
|
1254
1117
|
_: 1
|
1255
|
-
}, 8, ["to"])) :
|
1118
|
+
}, 8, ["to"])) : v("", !0)
|
1256
1119
|
]),
|
1257
|
-
l("div",
|
1258
|
-
l("div",
|
1259
|
-
(U = (L = n.tableData) == null ? void 0 : L.filterState) != null && U.length ? (s(),
|
1120
|
+
l("div", Dr, [
|
1121
|
+
l("div", Mr, [
|
1122
|
+
(U = (L = n.tableData) == null ? void 0 : L.filterState) != null && U.length ? (s(), x(h, {
|
1260
1123
|
key: 0,
|
1261
1124
|
tabsList: (O = n.tableData) == null ? void 0 : O.filterState,
|
1262
1125
|
filterState: n.filterState,
|
1263
|
-
"onUpdate:filterState": e[0] || (e[0] = (
|
1264
|
-
}, null, 8, ["tabsList", "filterState"])) :
|
1265
|
-
l("div",
|
1126
|
+
"onUpdate:filterState": e[0] || (e[0] = (f) => n.filterState = f)
|
1127
|
+
}, null, 8, ["tabsList", "filterState"])) : v("", !0),
|
1128
|
+
l("div", jr, [
|
1266
1129
|
l("div", {
|
1267
|
-
class:
|
1130
|
+
class: S([n.isVisibleCardInfo ? "w-[calc(100%-360px)]" : "w-full"])
|
1268
1131
|
}, [
|
1269
1132
|
l("div", {
|
1270
|
-
class:
|
1133
|
+
class: S(["flex sm:grid sm:grid-cols-2 gap-x-2 sm:gap-x-5 mb-[10px] relative", { "pr-[20px]": !n.isVisibleCardInfo }])
|
1271
1134
|
}, [
|
1272
|
-
|
1135
|
+
b(u, {
|
1273
1136
|
height: "14",
|
1274
1137
|
width: "14",
|
1275
1138
|
class: "absolute top-[10px] left-[14px] text-gray-500 z-[1]"
|
1276
1139
|
}),
|
1277
|
-
|
1140
|
+
b(_, {
|
1278
1141
|
modelValue: n.searchValue,
|
1279
|
-
"onUpdate:modelValue": e[1] || (e[1] = (
|
1142
|
+
"onUpdate:modelValue": e[1] || (e[1] = (f) => n.searchValue = f),
|
1280
1143
|
placeholder: "Пошук...",
|
1281
1144
|
clearable: !0,
|
1282
1145
|
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"
|
1283
1146
|
}, null, 8, ["modelValue"]),
|
1284
|
-
l("div",
|
1285
|
-
(N = (E = n.tableData) == null ? void 0 : E.filterCustom) != null && N.length ? (s(),
|
1147
|
+
l("div", zr, [
|
1148
|
+
(N = (E = n.tableData) == null ? void 0 : E.filterCustom) != null && N.length ? (s(), x(w, {
|
1286
1149
|
key: 0,
|
1287
1150
|
customList: (H = n.tableData) == null ? void 0 : H.filterCustom,
|
1288
1151
|
filterCustom: n.filterCustom,
|
1289
|
-
"onUpdate:filterCustom": e[2] || (e[2] = (
|
1290
|
-
}, null, 8, ["customList", "filterCustom"])) :
|
1291
|
-
|
1152
|
+
"onUpdate:filterCustom": e[2] || (e[2] = (f) => n.filterCustom = f)
|
1153
|
+
}, null, 8, ["customList", "filterCustom"])) : v("", !0),
|
1154
|
+
b(k, {
|
1292
1155
|
columns: (W = n.tableData) == null ? void 0 : W.columns,
|
1293
|
-
onUpdateColumns: e[3] || (e[3] = (
|
1156
|
+
onUpdateColumns: e[3] || (e[3] = (f) => n.tableData.columns = f)
|
1294
1157
|
}, null, 8, ["columns"]),
|
1295
|
-
|
1158
|
+
b($, {
|
1296
1159
|
table: r.table,
|
1297
|
-
columns: (R = n.tableData) == null ? void 0 : R.columns
|
1298
|
-
|
1299
|
-
|
1300
|
-
"filter-custom": n.filterCustom,
|
1301
|
-
filters: n.filters
|
1302
|
-
}, null, 8, ["table", "columns", "page", "filter-state", "filter-custom", "filters"]),
|
1303
|
-
f(y, {
|
1160
|
+
columns: (R = n.tableData) == null ? void 0 : R.columns
|
1161
|
+
}, null, 8, ["table", "columns"]),
|
1162
|
+
b(g, {
|
1304
1163
|
scheme: n.filterScheme,
|
1305
1164
|
onFilters: n.onFilters,
|
1306
1165
|
onFilterChange: o.filterChange
|
1307
1166
|
}, null, 8, ["scheme", "onFilters", "onFilterChange"]),
|
1308
1167
|
l("button", {
|
1309
|
-
onClick: e[4] || (e[4] = (...
|
1168
|
+
onClick: e[4] || (e[4] = (...f) => o.toggleCardInfo && o.toggleCardInfo(...f)),
|
1310
1169
|
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"
|
1311
1170
|
}, [
|
1312
|
-
|
1313
|
-
class:
|
1171
|
+
b(V, {
|
1172
|
+
class: S({ "rotate-180 duration-300": !n.isVisibleCardInfo })
|
1314
1173
|
}, null, 8, ["class"])
|
1315
1174
|
])
|
1316
1175
|
])
|
1317
1176
|
], 2),
|
1318
1177
|
l("div", {
|
1319
|
-
class:
|
1178
|
+
class: S(["flex items-start justify-start w-full space-y-5", { "pr-[20px]": !n.isVisibleCardInfo }])
|
1320
1179
|
}, [
|
1321
1180
|
l("div", {
|
1322
|
-
style:
|
1323
|
-
height: (Z = (G = n.tableData) == null ? void 0 : G.filterState) != null && Z.length ? "calc(100vh - 370px)" : "calc(100vh -
|
1181
|
+
style: re({
|
1182
|
+
height: (Z = (G = n.tableData) == null ? void 0 : G.filterState) != null && Z.length ? "calc(100vh - 370px)" : "calc(100vh - 315px)"
|
1324
1183
|
}),
|
1325
1184
|
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"
|
1326
1185
|
}, [
|
1327
|
-
l("div",
|
1328
|
-
o.isNoData ? (s(),
|
1329
|
-
l("thead",
|
1330
|
-
l("tr",
|
1331
|
-
(s(!0),
|
1332
|
-
key:
|
1333
|
-
style:
|
1334
|
-
width: o.rowWidth(
|
1335
|
-
textAlign: m == null ? void 0 : m.align,
|
1336
|
-
wordBreak: m.wrap
|
1186
|
+
l("div", Pr, [
|
1187
|
+
o.isNoData ? (s(), x(ae, { key: 1 })) : (s(), i("table", qr, [
|
1188
|
+
l("thead", Br, [
|
1189
|
+
l("tr", Lr, [
|
1190
|
+
(s(!0), i(C, null, T(o.columns, (f) => (s(), x(D, {
|
1191
|
+
key: f.name,
|
1192
|
+
style: re({
|
1193
|
+
width: o.rowWidth(f == null ? void 0 : f.name)
|
1337
1194
|
}),
|
1338
|
-
data:
|
1195
|
+
data: f,
|
1339
1196
|
activeColumn: n.activeColumn,
|
1340
1197
|
onChangeActive: o.changeActiveColumn
|
1341
1198
|
}, null, 8, ["style", "data", "activeColumn", "onChangeActive"]))), 128)),
|
1342
|
-
e[6] || (e[6] = l("th", { class: "w-[70px] sticky right-0 top-0" }, null, -1))
|
1199
|
+
e[6] || (e[6] = l("th", { class: "w-[70px] sticky right-0 top-0 bg-white" }, null, -1))
|
1343
1200
|
])
|
1344
1201
|
]),
|
1345
|
-
l("tbody",
|
1346
|
-
(s(!0),
|
1347
|
-
var
|
1348
|
-
return s(),
|
1349
|
-
l("td",
|
1202
|
+
l("tbody", Ur, [
|
1203
|
+
(s(!0), i(C, null, T((J = n.tableData) == null ? void 0 : J.rows, (f, de) => {
|
1204
|
+
var Q, X, Y;
|
1205
|
+
return s(), i("tr", { key: de }, [
|
1206
|
+
l("td", Or, [
|
1350
1207
|
l("button", {
|
1351
|
-
onClick: () => o.pushToCard(
|
1352
|
-
class:
|
1353
|
-
((
|
1208
|
+
onClick: () => o.pushToCard(f == null ? void 0 : f.id),
|
1209
|
+
class: S(["text-sm font-medium", [
|
1210
|
+
((Q = n.tableData) == null ? void 0 : Q.card) === !1 ? "" : "text-blue-600 decoration-2 focus:outline-none focus:underline hover:text-blue-600 hover:underline"
|
1354
1211
|
]])
|
1355
1212
|
}, [
|
1356
|
-
|
1357
|
-
row:
|
1213
|
+
b(M, {
|
1214
|
+
row: f,
|
1358
1215
|
column: o.columns[0],
|
1359
1216
|
table: r.table,
|
1360
1217
|
onUpdateTable: o.getTableData
|
1361
1218
|
}, null, 8, ["row", "column", "table", "onUpdateTable"])
|
1362
|
-
], 10,
|
1219
|
+
], 10, Er)
|
1363
1220
|
]),
|
1364
|
-
(s(!0),
|
1365
|
-
onClick: (
|
1366
|
-
class:
|
1367
|
-
key:
|
1221
|
+
(s(!0), i(C, null, T((X = o.columns) == null ? void 0 : X.slice(1), (ee) => (s(), i("td", {
|
1222
|
+
onClick: (Qr) => o.changeActiveCardInfo(f == null ? void 0 : f.id),
|
1223
|
+
class: S(["text-start px-3 py-3 text-sm text-gray-600 whitespace-nowrap", { "cursor-pointer": n.isVisibleCardInfo }]),
|
1224
|
+
key: ee.name
|
1368
1225
|
}, [
|
1369
|
-
|
1370
|
-
row:
|
1371
|
-
column:
|
1226
|
+
b(M, {
|
1227
|
+
row: f,
|
1228
|
+
column: ee,
|
1372
1229
|
table: r.table,
|
1373
1230
|
onUpdateTable: o.getTableData
|
1374
1231
|
}, null, 8, ["row", "column", "table", "onUpdateTable"])
|
1375
|
-
], 10,
|
1376
|
-
(
|
1377
|
-
|
1232
|
+
], 10, Nr))), 128)),
|
1233
|
+
(Y = o.getActions) != null && Y.length ? (s(), i("td", Hr, [
|
1234
|
+
b(oe, {
|
1378
1235
|
actions: o.getActions,
|
1379
1236
|
isForm: o.isForm,
|
1380
|
-
item:
|
1237
|
+
item: f,
|
1381
1238
|
table: r.table,
|
1382
1239
|
onUpdateTable: o.getTableData
|
1383
1240
|
}, null, 8, ["actions", "isForm", "item", "table", "onUpdateTable"])
|
1384
|
-
])) :
|
1241
|
+
])) : v("", !0)
|
1385
1242
|
]);
|
1386
1243
|
}), 128))
|
1387
1244
|
])
|
@@ -1389,34 +1246,28 @@ function un(t, e, r, i, n, o) {
|
|
1389
1246
|
])
|
1390
1247
|
], 4)
|
1391
1248
|
], 2),
|
1392
|
-
l("div",
|
1393
|
-
|
1394
|
-
l("p", on, [
|
1395
|
-
l("span", an, $(n.filters || n.searchValue ? "Знайдено" : "Об'єктів") + " " + $(((K = n.tableData) == null ? void 0 : K.count) || 0) + " з ", 1),
|
1396
|
-
l("span", cn, $(((Q = n.tableData) == null ? void 0 : Q.total) || 0), 1)
|
1397
|
-
])
|
1398
|
-
]),
|
1399
|
-
n.limit ? (s(), k(ue, {
|
1249
|
+
l("div", Wr, [
|
1250
|
+
n.limit ? (s(), x(ie, {
|
1400
1251
|
key: 0,
|
1401
1252
|
goTo: !1,
|
1402
1253
|
class: "justify-end",
|
1403
|
-
"default-page":
|
1404
|
-
total: ((
|
1254
|
+
"default-page": o.defaultPage,
|
1255
|
+
total: ((K = n.tableData) == null ? void 0 : K.total) || 0,
|
1405
1256
|
pageSize: parseInt(n.limit),
|
1406
1257
|
onPageChange: o.handlePageChange,
|
1407
1258
|
pageSizes: [10, 16, 20],
|
1408
1259
|
onPageSizeChange: o.changeLimit
|
1409
|
-
}, null, 8, ["default-page", "total", "pageSize", "onPageChange", "onPageSizeChange"])) :
|
1260
|
+
}, null, 8, ["default-page", "total", "pageSize", "onPageChange", "onPageSizeChange"])) : v("", !0)
|
1410
1261
|
])
|
1411
1262
|
], 2),
|
1412
|
-
|
1413
|
-
default:
|
1414
|
-
n.isVisibleCardInfo ? (s(),
|
1263
|
+
b(P, { name: "slide-fade" }, {
|
1264
|
+
default: y(() => [
|
1265
|
+
n.isVisibleCardInfo ? (s(), x(ce, {
|
1415
1266
|
key: 0,
|
1416
1267
|
table: r.table,
|
1417
1268
|
columns: o.columns,
|
1418
1269
|
row: o.activeCardRow
|
1419
|
-
}, null, 8, ["table", "columns", "row"])) :
|
1270
|
+
}, null, 8, ["table", "columns", "row"])) : v("", !0)
|
1420
1271
|
]),
|
1421
1272
|
_: 1
|
1422
1273
|
})
|
@@ -1425,8 +1276,8 @@ function un(t, e, r, i, n, o) {
|
|
1425
1276
|
])
|
1426
1277
|
]);
|
1427
1278
|
}
|
1428
|
-
const
|
1429
|
-
components: { AdminTable:
|
1279
|
+
const Gr = /* @__PURE__ */ m(Sr, [["render", Rr], ["__scopeId", "data-v-9b255a47"]]), Zr = {
|
1280
|
+
components: { AdminTable: Gr },
|
1430
1281
|
data() {
|
1431
1282
|
return {
|
1432
1283
|
table: !1,
|
@@ -1438,7 +1289,7 @@ const dn = /* @__PURE__ */ g(Or, [["render", un], ["__scopeId", "data-v-58248090
|
|
1438
1289
|
$route: {
|
1439
1290
|
async handler() {
|
1440
1291
|
var t;
|
1441
|
-
(t =
|
1292
|
+
(t = te) != null && t.value || await this.getMenu(), await this.checkPageType();
|
1442
1293
|
},
|
1443
1294
|
deep: !0
|
1444
1295
|
},
|
@@ -1457,21 +1308,21 @@ const dn = /* @__PURE__ */ g(Or, [["render", un], ["__scopeId", "data-v-58248090
|
|
1457
1308
|
}), e;
|
1458
1309
|
},
|
1459
1310
|
async checkPageType() {
|
1460
|
-
var
|
1461
|
-
const t = this.flattenMenu(
|
1311
|
+
var a, n;
|
1312
|
+
const t = this.flattenMenu(te.value);
|
1462
1313
|
t != null && t.length || this.$router.replace("/404");
|
1463
1314
|
const e = t == null ? void 0 : t.find((o) => {
|
1464
|
-
var
|
1465
|
-
return (o == null ? void 0 : o.path) == ((
|
1315
|
+
var d, p;
|
1316
|
+
return (o == null ? void 0 : o.path) == ((p = (d = this.$route) == null ? void 0 : d.params) == null ? void 0 : p.catchAll);
|
1466
1317
|
});
|
1467
|
-
this.title = e == null ? void 0 : e.ua, e || this.$router.replace("/404"), e != null && e.component && this.$router.replace((n = (
|
1318
|
+
this.title = e == null ? void 0 : e.ua, e || this.$router.replace("/404"), e != null && e.component && this.$router.replace((n = (a = this.$route) == null ? void 0 : a.params) == null ? void 0 : n.catchAll);
|
1468
1319
|
const r = e == null ? void 0 : e.table;
|
1469
1320
|
this.table = r || !1, !r && this.getInterface();
|
1470
1321
|
},
|
1471
1322
|
async getInterface() {
|
1472
1323
|
var t, e;
|
1473
1324
|
try {
|
1474
|
-
const { data: r } = await
|
1325
|
+
const { data: r } = await A.get(
|
1475
1326
|
`/api/template/interface/${((e = (t = this.$route) == null ? void 0 : t.params) == null ? void 0 : e.catchAll) || ""}`
|
1476
1327
|
);
|
1477
1328
|
this.interface = r || "";
|
@@ -1480,21 +1331,21 @@ const dn = /* @__PURE__ */ g(Or, [["render", un], ["__scopeId", "data-v-58248090
|
|
1480
1331
|
}
|
1481
1332
|
}
|
1482
1333
|
}
|
1483
|
-
},
|
1484
|
-
function
|
1485
|
-
const
|
1486
|
-
return n.table ? (s(),
|
1334
|
+
}, Jr = ["innerHTML"];
|
1335
|
+
function Kr(t, e, r, a, n, o) {
|
1336
|
+
const d = c("AdminTable");
|
1337
|
+
return n.table ? (s(), x(d, {
|
1487
1338
|
key: 0,
|
1488
1339
|
table: n.table,
|
1489
1340
|
title: n.title
|
1490
|
-
}, null, 8, ["table", "title"])) : (s(),
|
1341
|
+
}, null, 8, ["table", "title"])) : (s(), i("div", {
|
1491
1342
|
key: 1,
|
1492
1343
|
class: "w-full bg-gray-50",
|
1493
1344
|
style: { height: "calc(100vh - 120px)" },
|
1494
1345
|
innerHTML: n.interface
|
1495
|
-
}, null, 8,
|
1346
|
+
}, null, 8, Jr));
|
1496
1347
|
}
|
1497
|
-
const
|
1348
|
+
const en = /* @__PURE__ */ m(Zr, [["render", Kr]]);
|
1498
1349
|
export {
|
1499
|
-
|
1350
|
+
en as default
|
1500
1351
|
};
|