@opengis/gis 0.2.76 → 0.2.77
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +777 -724
- package/dist/index.umd.cjs +16 -16
- package/module/gis/form/gis.cartocss.form.json +6 -12
- package/package.json +2 -2
- package/server/migrations/cartocss.sql +1 -0
- package/server/plugins/mapnik/map.proto +1 -0
- package/server/routes/gis/cartocss/add.cartocss.js +23 -14
- package/server/routes/mapnik/controllers/rtile.js +21 -7
- package/server/routes/mapnik/functions/cartoBounds.js +1 -0
- package/server/routes/mapnik/functions/uploadXML.js +10 -6
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h as Dn, defineComponent as ie, mergeModels as bt, defineAsyncComponent as st, useModel as ut, ref as j, watch as te, openBlock as c, createElementBlock as x, createElementVNode as o, createVNode as ne, unref as oe, withCtx as Oe, createStaticVNode as zt, useSlots as bl, computed as
|
|
1
|
+
import { h as Dn, defineComponent as ie, mergeModels as bt, defineAsyncComponent as st, useModel as ut, ref as j, watch as te, openBlock as c, createElementBlock as x, createElementVNode as o, createVNode as ne, unref as oe, withCtx as Oe, createStaticVNode as zt, useSlots as bl, computed as R, Fragment as X, createTextVNode as we, createCommentVNode as W, renderList as se, normalizeStyle as We, toDisplayString as V, normalizeClass as be, withModifiers as Ue, createBlock as le, resolveDynamicComponent as Et, withDirectives as De, renderSlot as ln, onBeforeUnmount as Te, onMounted as Me, shallowRef as Qo, onUnmounted as Zn, provide as wl, inject as _l, vModelText as xt, getCurrentInstance as Tt, nextTick as qe, reactive as lt, Teleport as mt, Transition as Gn, createSlots as kl, resolveDirective as er, vShow as Ct, vModelRadio as $l, vModelSelect as ho, withKeys as xo } from "vue";
|
|
2
2
|
import { useRoute as ct, useRouter as dt } from "vue-router";
|
|
3
3
|
import { notify as Ee, TooltipDirective as tr, confirm as bo, VsPagination as Cl } from "@opengis/core";
|
|
4
4
|
import { VsInputArraySelect as Al, VsInputMask as Ll } from "@opengis/form";
|
|
@@ -177,7 +177,7 @@ const Dl = Ye("eye-off", [
|
|
|
177
177
|
* This source code is licensed under the ISC license.
|
|
178
178
|
* See the LICENSE file in the root directory of this source tree.
|
|
179
179
|
*/
|
|
180
|
-
const
|
|
180
|
+
const Rl = Ye("house", [
|
|
181
181
|
["path", { d: "M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8", key: "5wwlr5" }],
|
|
182
182
|
[
|
|
183
183
|
"path",
|
|
@@ -202,7 +202,7 @@ const nr = Ye("loader-circle", [
|
|
|
202
202
|
* This source code is licensed under the ISC license.
|
|
203
203
|
* See the LICENSE file in the root directory of this source tree.
|
|
204
204
|
*/
|
|
205
|
-
const
|
|
205
|
+
const Pl = Ye("map-pin", [
|
|
206
206
|
[
|
|
207
207
|
"path",
|
|
208
208
|
{
|
|
@@ -721,7 +721,7 @@ function Os(e, t) {
|
|
|
721
721
|
}, null, -1)
|
|
722
722
|
])]);
|
|
723
723
|
}
|
|
724
|
-
const Ds = /* @__PURE__ */ ge(zs, [["render", Os]]),
|
|
724
|
+
const Ds = /* @__PURE__ */ ge(zs, [["render", Os]]), Rs = {}, Ps = {
|
|
725
725
|
xmlns: "http://www.w3.org/2000/svg",
|
|
726
726
|
width: "24",
|
|
727
727
|
height: "24",
|
|
@@ -735,11 +735,11 @@ const Ds = /* @__PURE__ */ ge(zs, [["render", Os]]), Ps = {}, Rs = {
|
|
|
735
735
|
__v0_r: "0,5361,5384"
|
|
736
736
|
};
|
|
737
737
|
function Bs(e, t) {
|
|
738
|
-
return c(), x("svg",
|
|
738
|
+
return c(), x("svg", Ps, [...t[0] || (t[0] = [
|
|
739
739
|
zt('<line x1="8" x2="21" y1="6" y2="6"></line><line x1="8" x2="21" y1="12" y2="12"></line><line x1="8" x2="21" y1="18" y2="18"></line><line x1="3" x2="3.01" y1="6" y2="6"></line><line x1="3" x2="3.01" y1="12" y2="12"></line><line x1="3" x2="3.01" y1="18" y2="18"></line>', 6)
|
|
740
740
|
])]);
|
|
741
741
|
}
|
|
742
|
-
const Vs = /* @__PURE__ */ ge(
|
|
742
|
+
const Vs = /* @__PURE__ */ ge(Rs, [["render", Bs]]), Us = {}, qs = {
|
|
743
743
|
xmlns: "http://www.w3.org/2000/svg",
|
|
744
744
|
width: "24",
|
|
745
745
|
height: "24",
|
|
@@ -883,14 +883,14 @@ const ri = /* @__PURE__ */ ge(ti, [["render", oi]]), $o = {
|
|
|
883
883
|
m.value = !0;
|
|
884
884
|
}
|
|
885
885
|
});
|
|
886
|
-
const d =
|
|
886
|
+
const d = R({
|
|
887
887
|
get() {
|
|
888
888
|
return Array.isArray(s.value) ? s.value : s.value && Array.isArray(s.value.columns) ? s.value.columns : [];
|
|
889
889
|
},
|
|
890
890
|
set(T) {
|
|
891
891
|
Array.isArray(s.value) ? s.value = T : s.value && Array.isArray(s.value.columns) && (s.value.columns = T);
|
|
892
892
|
}
|
|
893
|
-
}), y =
|
|
893
|
+
}), y = R(() => {
|
|
894
894
|
const T = i.columnsScheme.map((k) => k.key);
|
|
895
895
|
return T.includes("name") && T.includes("label") || T.includes("id") && T.includes("label") ? [
|
|
896
896
|
{
|
|
@@ -926,17 +926,17 @@ const ri = /* @__PURE__ */ ge(ti, [["render", oi]]), $o = {
|
|
|
926
926
|
}
|
|
927
927
|
v();
|
|
928
928
|
}
|
|
929
|
-
const p = j(null),
|
|
929
|
+
const p = j(null), C = j(null), I = (T) => {
|
|
930
930
|
p.value = T;
|
|
931
931
|
}, O = (T) => {
|
|
932
|
-
|
|
933
|
-
},
|
|
932
|
+
C.value = T;
|
|
933
|
+
}, P = (T) => {
|
|
934
934
|
if (p.value === null || p.value === T) {
|
|
935
|
-
p.value = null,
|
|
935
|
+
p.value = null, C.value = null;
|
|
936
936
|
return;
|
|
937
937
|
}
|
|
938
938
|
const k = [...d.value], [E] = k.splice(p.value, 1);
|
|
939
|
-
k.splice(T, 0, E), d.value = k, p.value = null,
|
|
939
|
+
k.splice(T, 0, E), d.value = k, p.value = null, C.value = null;
|
|
940
940
|
};
|
|
941
941
|
return (T, k) => (c(), x(X, null, [
|
|
942
942
|
e.addButton ? (c(), x("div", li, [
|
|
@@ -985,16 +985,16 @@ const ri = /* @__PURE__ */ ge(ti, [["render", oi]]), $o = {
|
|
|
985
985
|
])
|
|
986
986
|
]),
|
|
987
987
|
d.value.length ? (c(), x("tbody", di, [
|
|
988
|
-
(c(!0), x(X, null, se(d.value, (E,
|
|
989
|
-
key: E.id || E.name ||
|
|
988
|
+
(c(!0), x(X, null, se(d.value, (E, $) => (c(), x("tr", {
|
|
989
|
+
key: E.id || E.name || $,
|
|
990
990
|
class: be(["transition-colors hover:bg-gray-50/50 cursor-move", {
|
|
991
|
-
"opacity-50": p.value ===
|
|
992
|
-
"border-t-2 border-b-2 border-blue-500 bg-blue-50":
|
|
991
|
+
"opacity-50": p.value === $,
|
|
992
|
+
"border-t-2 border-b-2 border-blue-500 bg-blue-50": C.value === $
|
|
993
993
|
}]),
|
|
994
994
|
draggable: "true",
|
|
995
|
-
onDragstart: (B) => I(
|
|
996
|
-
onDragover: Ue((B) => O(
|
|
997
|
-
onDrop: (B) =>
|
|
995
|
+
onDragstart: (B) => I($),
|
|
996
|
+
onDragover: Ue((B) => O($), ["prevent"]),
|
|
997
|
+
onDrop: (B) => P($)
|
|
998
998
|
}, [
|
|
999
999
|
(c(!0), x(X, null, se(y.value, (B) => (c(), x("td", {
|
|
1000
1000
|
key: B.key,
|
|
@@ -1028,7 +1028,7 @@ const ri = /* @__PURE__ */ ge(ti, [["render", oi]]), $o = {
|
|
|
1028
1028
|
row: E,
|
|
1029
1029
|
column: B,
|
|
1030
1030
|
value: E[B.key],
|
|
1031
|
-
rowIndex:
|
|
1031
|
+
rowIndex: $
|
|
1032
1032
|
}, void 0, !0) : B.type === "color" ? (c(), x("div", yi, [
|
|
1033
1033
|
o("div", {
|
|
1034
1034
|
class: be(["w-4 h-4 rounded-full align-middle", `bg-[${E[B.key]}]`])
|
|
@@ -1043,7 +1043,7 @@ const ri = /* @__PURE__ */ ge(ti, [["render", oi]]), $o = {
|
|
|
1043
1043
|
columns: d.value,
|
|
1044
1044
|
"onUpdate:columns": k[1] || (k[1] = (B) => d.value = B),
|
|
1045
1045
|
data: E,
|
|
1046
|
-
index:
|
|
1046
|
+
index: $,
|
|
1047
1047
|
scheme: e.formScheme
|
|
1048
1048
|
}, null, 8, ["columns", "data", "index", "scheme"])
|
|
1049
1049
|
])
|
|
@@ -1112,23 +1112,23 @@ const ri = /* @__PURE__ */ ge(ti, [["render", oi]]), $o = {
|
|
|
1112
1112
|
setup(e, { emit: t }) {
|
|
1113
1113
|
const n = ut(e, "visible"), l = ut(e, "selection"), r = e, s = t, i = st(
|
|
1114
1114
|
() => import("@opengis/core").then((I) => I.VsModal)
|
|
1115
|
-
), a =
|
|
1115
|
+
), a = R(
|
|
1116
1116
|
() => Array.isArray(r.fields) ? r.fields.filter(Boolean) : []
|
|
1117
|
-
), m = (I) => (I == null ? void 0 : I.name) ?? (I == null ? void 0 : I.id) ?? (I == null ? void 0 : I.key) ?? (I == null ? void 0 : I.code) ?? (I == null ? void 0 : I.field) ?? (I == null ? void 0 : I.value) ?? "", f = (I) => String(m(I) ?? "").trim(), b = (I) => (I == null ? void 0 : I.title) ?? (I == null ? void 0 : I.label) ?? f(I), u = (I) => String((I == null ? void 0 : I.type) ?? "").trim(), g =
|
|
1117
|
+
), m = (I) => (I == null ? void 0 : I.name) ?? (I == null ? void 0 : I.id) ?? (I == null ? void 0 : I.key) ?? (I == null ? void 0 : I.code) ?? (I == null ? void 0 : I.field) ?? (I == null ? void 0 : I.value) ?? "", f = (I) => String(m(I) ?? "").trim(), b = (I) => (I == null ? void 0 : I.title) ?? (I == null ? void 0 : I.label) ?? f(I), u = (I) => String((I == null ? void 0 : I.type) ?? "").trim(), g = R(
|
|
1118
1118
|
() => new Set(l.value.map((I) => String(I ?? "").trim()))
|
|
1119
1119
|
), d = (I) => g.value.has(f(I)), y = (I) => {
|
|
1120
1120
|
const O = f(I);
|
|
1121
1121
|
if (!O) return;
|
|
1122
|
-
const
|
|
1123
|
-
|
|
1124
|
-
}, v =
|
|
1122
|
+
const P = new Set(g.value);
|
|
1123
|
+
P.has(O) ? P.delete(O) : P.add(O), l.value = Array.from(P);
|
|
1124
|
+
}, v = R(() => r.confirmText || "Імпортувати"), h = R(() => r.cancelText || "Скасувати"), p = () => {
|
|
1125
1125
|
n.value = !1, s("cancel");
|
|
1126
|
-
},
|
|
1126
|
+
}, C = () => {
|
|
1127
1127
|
s("confirm"), n.value = !1;
|
|
1128
1128
|
};
|
|
1129
1129
|
return (I, O) => (c(), le(oe(i), {
|
|
1130
1130
|
visible: n.value,
|
|
1131
|
-
"onUpdate:visible": O[0] || (O[0] = (
|
|
1131
|
+
"onUpdate:visible": O[0] || (O[0] = (P) => n.value = P),
|
|
1132
1132
|
teleport: "#modal",
|
|
1133
1133
|
title: e.title,
|
|
1134
1134
|
size: "lg"
|
|
@@ -1140,7 +1140,7 @@ const ri = /* @__PURE__ */ ge(ti, [["render", oi]]), $o = {
|
|
|
1140
1140
|
class: "px-4 py-2 rounded bg-gray-100 text-gray-700"
|
|
1141
1141
|
}, V(h.value), 1),
|
|
1142
1142
|
o("button", {
|
|
1143
|
-
onClick:
|
|
1143
|
+
onClick: C,
|
|
1144
1144
|
class: "px-4 py-2 rounded bg-blue-600 text-white"
|
|
1145
1145
|
}, V(v.value), 1)
|
|
1146
1146
|
])
|
|
@@ -1148,27 +1148,27 @@ const ri = /* @__PURE__ */ ge(ti, [["render", oi]]), $o = {
|
|
|
1148
1148
|
default: Oe(() => [
|
|
1149
1149
|
o("div", Ci, [
|
|
1150
1150
|
o("div", Ai, [
|
|
1151
|
-
(c(!0), x(X, null, se(a.value, (
|
|
1152
|
-
key: f(
|
|
1151
|
+
(c(!0), x(X, null, se(a.value, (P) => (c(), x("label", {
|
|
1152
|
+
key: f(P),
|
|
1153
1153
|
class: "flex items-center hover:bg-gray-100 rounded p-2 cursor-pointer"
|
|
1154
1154
|
}, [
|
|
1155
1155
|
o("input", {
|
|
1156
1156
|
type: "checkbox",
|
|
1157
|
-
id: `${e.idPrefix}-${f(
|
|
1158
|
-
checked: d(
|
|
1159
|
-
onChange: (T) => y(
|
|
1157
|
+
id: `${e.idPrefix}-${f(P)}`,
|
|
1158
|
+
checked: d(P),
|
|
1159
|
+
onChange: (T) => y(P)
|
|
1160
1160
|
}, null, 40, Li),
|
|
1161
1161
|
o("div", Si, [
|
|
1162
|
-
oe(ir)(
|
|
1162
|
+
oe(ir)(P.type) ? (c(), x("div", {
|
|
1163
1163
|
key: 0,
|
|
1164
|
-
class: be(`bg-${oe(sr)(
|
|
1164
|
+
class: be(`bg-${oe(sr)(P.type)}-100 p-1 rounded`)
|
|
1165
1165
|
}, [
|
|
1166
|
-
(c(), le(Et(`icon-${
|
|
1166
|
+
(c(), le(Et(`icon-${P.type}`), { class: "w-4 h-4" }))
|
|
1167
1167
|
], 2)) : W("", !0),
|
|
1168
1168
|
o("div", null, [
|
|
1169
|
-
o("p", Ei, V(f(
|
|
1170
|
-
o("p", Ti, V(b(
|
|
1171
|
-
u(
|
|
1169
|
+
o("p", Ei, V(f(P)), 1),
|
|
1170
|
+
o("p", Ti, V(b(P)), 1),
|
|
1171
|
+
u(P) ? (c(), x("p", Mi, V(u(P)), 1)) : W("", !0)
|
|
1172
1172
|
])
|
|
1173
1173
|
])
|
|
1174
1174
|
]))), 128))
|
|
@@ -1206,7 +1206,7 @@ function Yt(e, t, n) {
|
|
|
1206
1206
|
}
|
|
1207
1207
|
return f;
|
|
1208
1208
|
}
|
|
1209
|
-
const Ii = { class: "vs-form" }, ji = { class: "vs-form__body auto-rows-max container" }, zi = { class: "flex flex-wrap" }, Ni = { class: "h-fit w-full mb-6 px-2" }, Oi = { class: "h-fit w-full flex flex-wrap" }, Di = { class: "w-full" },
|
|
1209
|
+
const Ii = { class: "vs-form" }, ji = { class: "vs-form__body auto-rows-max container" }, zi = { class: "flex flex-wrap" }, Ni = { class: "h-fit w-full mb-6 px-2" }, Oi = { class: "h-fit w-full flex flex-wrap" }, Di = { class: "w-full" }, Ri = /* @__PURE__ */ ie({
|
|
1210
1210
|
__name: "list-tab",
|
|
1211
1211
|
props: /* @__PURE__ */ bt({
|
|
1212
1212
|
fields: {}
|
|
@@ -1218,51 +1218,51 @@ const Ii = { class: "vs-form" }, ji = { class: "vs-form__body auto-rows-max cont
|
|
|
1218
1218
|
}),
|
|
1219
1219
|
emits: ["update:data", "update:form"],
|
|
1220
1220
|
setup(e) {
|
|
1221
|
-
const t = ut(e, "data"), n = ut(e, "form"), l = e, r =
|
|
1222
|
-
const
|
|
1223
|
-
f.value = [
|
|
1224
|
-
}, u =
|
|
1221
|
+
const t = ut(e, "data"), n = ut(e, "form"), l = e, r = R(() => Array.isArray(l.fields) ? l.fields : []), s = (C) => Lt(C || {}), i = st(() => import("@opengis/form")), a = j(), m = j(!1), f = j([]), b = () => {
|
|
1222
|
+
const C = g.value.map((I) => s(I)).filter((I) => I.length > 0);
|
|
1223
|
+
f.value = [...C], m.value = !0;
|
|
1224
|
+
}, u = R(
|
|
1225
1225
|
() => {
|
|
1226
|
-
var
|
|
1227
|
-
return ((
|
|
1226
|
+
var C, I;
|
|
1227
|
+
return ((C = t.value) == null ? void 0 : C.token) || ((I = t.value) == null ? void 0 : I.id) || "register-form";
|
|
1228
1228
|
}
|
|
1229
|
-
), g =
|
|
1229
|
+
), g = R({
|
|
1230
1230
|
get: () => (t.value || (t.value = {}), Array.isArray(t.value.columns) || (t.value.columns = []), t.value.columns),
|
|
1231
|
-
set: (
|
|
1232
|
-
t.value || (t.value = {}), t.value.columns = Array.isArray(
|
|
1231
|
+
set: (C) => {
|
|
1232
|
+
t.value || (t.value = {}), t.value.columns = Array.isArray(C) ? C : [];
|
|
1233
1233
|
}
|
|
1234
|
-
}), d =
|
|
1234
|
+
}), d = R({
|
|
1235
1235
|
get: () => t.value || {},
|
|
1236
|
-
set: (
|
|
1236
|
+
set: (C) => {
|
|
1237
1237
|
var O;
|
|
1238
1238
|
const I = Array.isArray((O = t.value) == null ? void 0 : O.columns) ? t.value.columns : [];
|
|
1239
1239
|
t.value = {
|
|
1240
1240
|
...t.value,
|
|
1241
|
-
|
|
1241
|
+
...C,
|
|
1242
1242
|
columns: I
|
|
1243
1243
|
};
|
|
1244
1244
|
}
|
|
1245
1245
|
});
|
|
1246
1246
|
te(
|
|
1247
1247
|
() => a.value,
|
|
1248
|
-
(
|
|
1249
|
-
n.value =
|
|
1248
|
+
(C) => {
|
|
1249
|
+
n.value = C || null;
|
|
1250
1250
|
},
|
|
1251
1251
|
{ immediate: !0 }
|
|
1252
|
-
), te(m, (
|
|
1253
|
-
|
|
1252
|
+
), te(m, (C) => {
|
|
1253
|
+
C || (f.value = []);
|
|
1254
1254
|
});
|
|
1255
1255
|
const y = () => {
|
|
1256
|
-
const
|
|
1257
|
-
f.value.map((
|
|
1258
|
-
), I = Array.isArray(g.value) ? [...g.value] : [], O = r.value.filter((
|
|
1259
|
-
const T = s(
|
|
1256
|
+
const C = new Set(
|
|
1257
|
+
f.value.map((P) => Ut(P)).filter((P) => P.length > 0)
|
|
1258
|
+
), I = Array.isArray(g.value) ? [...g.value] : [], O = r.value.filter((P) => C.has(s(P))).map((P) => {
|
|
1259
|
+
const T = s(P), k = P.title ?? P.label ?? T;
|
|
1260
1260
|
return {
|
|
1261
|
-
...
|
|
1261
|
+
...P,
|
|
1262
1262
|
name: T,
|
|
1263
1263
|
label: k,
|
|
1264
|
-
type:
|
|
1265
|
-
meta:
|
|
1264
|
+
type: P.type || "text",
|
|
1265
|
+
meta: P.meta ?? "features"
|
|
1266
1266
|
};
|
|
1267
1267
|
});
|
|
1268
1268
|
g.value = Yt(I, O, {
|
|
@@ -1366,7 +1366,7 @@ const Ii = { class: "vs-form" }, ji = { class: "vs-form__body auto-rows-max cont
|
|
|
1366
1366
|
};
|
|
1367
1367
|
return Te(() => {
|
|
1368
1368
|
n.value = null;
|
|
1369
|
-
}), (
|
|
1369
|
+
}), (C, I) => (c(), x("div", Ii, [
|
|
1370
1370
|
o("div", ji, [
|
|
1371
1371
|
o("div", zi, [
|
|
1372
1372
|
o("div", Ni, [
|
|
@@ -1429,7 +1429,7 @@ const Ii = { class: "vs-form" }, ji = { class: "vs-form__body auto-rows-max cont
|
|
|
1429
1429
|
}, null, 8, ["visible", "selection", "fields"])
|
|
1430
1430
|
]));
|
|
1431
1431
|
}
|
|
1432
|
-
}),
|
|
1432
|
+
}), Pi = { class: "vs-form" }, Bi = { class: "vs-form__body auto-rows-max container" }, Vi = { class: "flex flex-wrap" }, Ui = { class: "h-fit w-full flex flex-wrap" }, qi = { class: "w-full" }, Hi = /* @__PURE__ */ ie({
|
|
1433
1433
|
__name: "filter-tab",
|
|
1434
1434
|
props: /* @__PURE__ */ bt({
|
|
1435
1435
|
fields: {}
|
|
@@ -1441,12 +1441,12 @@ const Ii = { class: "vs-form" }, ji = { class: "vs-form__body auto-rows-max cont
|
|
|
1441
1441
|
}),
|
|
1442
1442
|
emits: ["update:data", "update:form"],
|
|
1443
1443
|
setup(e) {
|
|
1444
|
-
const t = ut(e, "data"), n = ut(e, "form"), l = e, r =
|
|
1444
|
+
const t = ut(e, "data"), n = ut(e, "form"), l = e, r = R(
|
|
1445
1445
|
() => Array.isArray(l.fields) ? l.fields : []
|
|
1446
1446
|
), s = (d) => Lt(d || {}), i = j(!1), a = j([]), m = () => {
|
|
1447
1447
|
const d = f.value.map((y) => s(y)).filter((y) => y.length > 0);
|
|
1448
1448
|
a.value = [...d], i.value = !0;
|
|
1449
|
-
}, f =
|
|
1449
|
+
}, f = R({
|
|
1450
1450
|
get: () => (t.value || (t.value = {}), Array.isArray(t.value.filters) || (t.value.filters = []), t.value.filters),
|
|
1451
1451
|
set: (d) => {
|
|
1452
1452
|
t.value || (t.value = {}), t.value.filters = Array.isArray(d) ? d : [];
|
|
@@ -1499,7 +1499,7 @@ const Ii = { class: "vs-form" }, ji = { class: "vs-form__body auto-rows-max cont
|
|
|
1499
1499
|
};
|
|
1500
1500
|
return Te(() => {
|
|
1501
1501
|
n.value = null;
|
|
1502
|
-
}), (d, y) => (c(), x("div",
|
|
1502
|
+
}), (d, y) => (c(), x("div", Pi, [
|
|
1503
1503
|
o("div", Bi, [
|
|
1504
1504
|
o("div", Vi, [
|
|
1505
1505
|
y[4] || (y[4] = o("div", { class: "h-fit w-full flex flex-wrap mb-6 px-2" }, [
|
|
@@ -1567,10 +1567,10 @@ const Ii = { class: "vs-form" }, ji = { class: "vs-form__body auto-rows-max cont
|
|
|
1567
1567
|
}),
|
|
1568
1568
|
emits: ["update:data", "update:form"],
|
|
1569
1569
|
setup(e) {
|
|
1570
|
-
const t = ut(e, "data"), n = ut(e, "form"), l = e, r =
|
|
1570
|
+
const t = ut(e, "data"), n = ut(e, "form"), l = e, r = R(() => Array.isArray(l.fields) ? l.fields : []), s = (d) => Lt(d || {}), i = j(!1), a = j([]), m = () => {
|
|
1571
1571
|
const d = f.value.map((y) => s(y)).filter((y) => y.length > 0);
|
|
1572
1572
|
a.value = [...d], i.value = !0;
|
|
1573
|
-
}, f =
|
|
1573
|
+
}, f = R({
|
|
1574
1574
|
get: () => t.value.card,
|
|
1575
1575
|
set: (d) => {
|
|
1576
1576
|
t.value || (t.value = {}), t.value.card = Array.isArray(d) ? d : [];
|
|
@@ -1587,11 +1587,11 @@ const Ii = { class: "vs-form" }, ji = { class: "vs-form__body auto-rows-max cont
|
|
|
1587
1587
|
const d = new Set(
|
|
1588
1588
|
a.value.map((h) => Ut(h)).filter((h) => h.length > 0)
|
|
1589
1589
|
), y = Array.isArray(f.value) ? [...f.value] : [], v = r.value.filter((h) => d.has(s(h))).map((h) => {
|
|
1590
|
-
const p = s(h),
|
|
1590
|
+
const p = s(h), C = h.title ?? h.label ?? p;
|
|
1591
1591
|
return {
|
|
1592
1592
|
...h,
|
|
1593
1593
|
name: p,
|
|
1594
|
-
label:
|
|
1594
|
+
label: C,
|
|
1595
1595
|
format: h.format || h.type || "text",
|
|
1596
1596
|
meta: h.meta || "title"
|
|
1597
1597
|
};
|
|
@@ -1764,7 +1764,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
1764
1764
|
hideDetailsButton: { type: Boolean, default: !1 }
|
|
1765
1765
|
},
|
|
1766
1766
|
setup(e) {
|
|
1767
|
-
const t = e, n =
|
|
1767
|
+
const t = e, n = R(() => t.items && t.items.length || t.items ? t.items : t.item != null ? [t.item] : []), l = (u) => (u == null ? void 0 : u.service_id) && (u == null ? void 0 : u.is_map) && u[t.id_key] && (u == null ? void 0 : u.geom), r = R(() => t.columns.find((u) => u.meta === "title")), s = R(() => t.columns.filter((u) => u.meta === "category")), i = R(() => t.columns.filter((u) => u.meta === "tags")), a = R(() => t.columns.filter((u) => u.meta !== "title")), m = (u, g) => {
|
|
1768
1768
|
if (g)
|
|
1769
1769
|
return u[g];
|
|
1770
1770
|
}, f = (u) => {
|
|
@@ -1805,7 +1805,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
1805
1805
|
o("div", ia, [
|
|
1806
1806
|
o("div", aa, [
|
|
1807
1807
|
(c(!0), x(X, null, se(a.value, (p) => {
|
|
1808
|
-
var
|
|
1808
|
+
var C;
|
|
1809
1809
|
return c(), x("div", {
|
|
1810
1810
|
key: p.name,
|
|
1811
1811
|
class: "flex flex-col md:flex-row md:items-center lg:flex-row lg:items-center gap-1 md:gap-1.5 lg:gap-1.5"
|
|
@@ -1819,7 +1819,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
1819
1819
|
p.type === "date" ? (c(), x(X, { key: 0 }, [
|
|
1820
1820
|
we(V(oe(an)(d[p == null ? void 0 : p.name]) || "Немає даних"), 1)
|
|
1821
1821
|
], 64)) : (c(), x(X, { key: 1 }, [
|
|
1822
|
-
we(V(((
|
|
1822
|
+
we(V(((C = d[(p == null ? void 0 : p.name) + "_data"]) == null ? void 0 : C.text) || d[(p == null ? void 0 : p.name) + "_text"] || d[p == null ? void 0 : p.name] || "Немає даних"), 1)
|
|
1823
1823
|
], 64))
|
|
1824
1824
|
], 64))
|
|
1825
1825
|
])
|
|
@@ -1898,7 +1898,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
1898
1898
|
hideDetailsButton: { type: Boolean, default: !1 }
|
|
1899
1899
|
},
|
|
1900
1900
|
setup(e) {
|
|
1901
|
-
const t = e, n =
|
|
1901
|
+
const t = e, n = R(() => t.items && t.items.length || t.items ? t.items : t.item != null ? [t.item] : []), l = (u) => (u == null ? void 0 : u.service_id) && (u == null ? void 0 : u.is_map) && u[t.id_key] && (u == null ? void 0 : u.geom), r = R(() => t.columns.find((u) => u.meta === "title")), s = R(() => t.columns.filter((u) => u.meta === "category")), i = R(() => t.columns.filter((u) => u.meta === "tags")), a = R(() => t.columns.filter((u) => u.meta !== "title")), m = (u, g) => {
|
|
1902
1902
|
if (g)
|
|
1903
1903
|
return u[g];
|
|
1904
1904
|
}, f = (u) => {
|
|
@@ -1936,7 +1936,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
1936
1936
|
]),
|
|
1937
1937
|
o("div", ka, [
|
|
1938
1938
|
(c(!0), x(X, null, se(a.value, (p) => {
|
|
1939
|
-
var
|
|
1939
|
+
var C;
|
|
1940
1940
|
return c(), x("div", {
|
|
1941
1941
|
key: p.name
|
|
1942
1942
|
}, [
|
|
@@ -1949,7 +1949,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
1949
1949
|
p.type === "date" ? (c(), x(X, { key: 0 }, [
|
|
1950
1950
|
we(V(oe(an)(d[p == null ? void 0 : p.name]) || "Немає даних"), 1)
|
|
1951
1951
|
], 64)) : (c(), x(X, { key: 1 }, [
|
|
1952
|
-
we(V(((
|
|
1952
|
+
we(V(((C = d[(p == null ? void 0 : p.name) + "_data"]) == null ? void 0 : C.text) || d[(p == null ? void 0 : p.name) + "_text"] || d[p == null ? void 0 : p.name] || "Немає даних"), 1)
|
|
1953
1953
|
], 64))
|
|
1954
1954
|
], 64))
|
|
1955
1955
|
])
|
|
@@ -2012,10 +2012,10 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2012
2012
|
}), Ta = { class: "space-y-4" }, Ma = { class: "flex flex-col lg:flex-row lg:items-center py-2 px-2 lg:px-3" }, Fa = { class: "flex-1" }, Ia = { class: "grid grid-cols-1 lg:grid-cols-12 gap-2 w-full text-xs" }, ja = { class: "col-span-1 lg:col-span-4" }, za = { class: "flex items-start" }, Na = { class: "flex flex-col" }, Oa = { class: "font-bold text-xs lg:text-sm" }, Da = {
|
|
2013
2013
|
key: 0,
|
|
2014
2014
|
class: "flex flex-wrap gap-1 mt-1"
|
|
2015
|
-
},
|
|
2015
|
+
}, Ra = {
|
|
2016
2016
|
key: 0,
|
|
2017
2017
|
class: "inline-flex items-center rounded-full bg-secondary text-secondary-foreground text-[9px] lg:text-[10px] px-1.5 py-0"
|
|
2018
|
-
},
|
|
2018
|
+
}, Pa = {
|
|
2019
2019
|
key: 1,
|
|
2020
2020
|
class: "flex flex-wrap gap-1 mt-1"
|
|
2021
2021
|
}, Ba = {
|
|
@@ -2033,7 +2033,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2033
2033
|
hideDetailsButton: { type: Boolean, default: !1 }
|
|
2034
2034
|
},
|
|
2035
2035
|
setup(e) {
|
|
2036
|
-
const t = e, n =
|
|
2036
|
+
const t = e, n = R(() => t.items && t.items.length || t.items ? t.items : t.item != null ? [t.item] : []), l = (g) => (g == null ? void 0 : g.service_id) && (g == null ? void 0 : g.is_map) && g[t.id_key] && (g == null ? void 0 : g.geom), r = R(() => t.columns.find((g) => g.meta === "title")), s = R(() => t.columns.filter((g) => g.meta === "category")), i = R(() => t.columns.filter((g) => g.meta === "tags")), a = R(() => t.columns.filter((g) => g.meta !== "title")), m = R(() => "bg-blue-500"), f = (g, d) => {
|
|
2037
2037
|
if (d)
|
|
2038
2038
|
return g[d];
|
|
2039
2039
|
}, b = (g) => {
|
|
@@ -2061,17 +2061,17 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2061
2061
|
o("div", Na, [
|
|
2062
2062
|
o("p", Oa, V(y[`${(v = r.value) == null ? void 0 : v.name}_text`] || y[(h = r.value) == null ? void 0 : h.name] || y[(p = r.value) == null ? void 0 : p.label] || "Не вказано"), 1),
|
|
2063
2063
|
Array.isArray(s.value) && s.value.length ? (c(), x("div", Da, [
|
|
2064
|
-
(c(!0), x(X, null, se(s.value, (
|
|
2065
|
-
key:
|
|
2064
|
+
(c(!0), x(X, null, se(s.value, (C) => (c(), x(X, {
|
|
2065
|
+
key: C.name
|
|
2066
2066
|
}, [
|
|
2067
|
-
y[
|
|
2067
|
+
y[C.name] ? (c(), x("span", Ra, V(y[`${C.name}_text`] || y[C.name]), 1)) : W("", !0)
|
|
2068
2068
|
], 64))), 128))
|
|
2069
2069
|
])) : W("", !0),
|
|
2070
|
-
Array.isArray(i.value) && i.value.length ? (c(), x("div",
|
|
2071
|
-
(c(!0), x(X, null, se(i.value, (
|
|
2072
|
-
key:
|
|
2070
|
+
Array.isArray(i.value) && i.value.length ? (c(), x("div", Pa, [
|
|
2071
|
+
(c(!0), x(X, null, se(i.value, (C) => (c(), x(X, {
|
|
2072
|
+
key: C.name
|
|
2073
2073
|
}, [
|
|
2074
|
-
y[
|
|
2074
|
+
y[C.name] ? (c(), x("span", Ba, V(y[`${C.name}_text`] || y[C.name]), 1)) : W("", !0)
|
|
2075
2075
|
], 64))), 128))
|
|
2076
2076
|
])) : W("", !0)
|
|
2077
2077
|
])
|
|
@@ -2079,21 +2079,21 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2079
2079
|
]),
|
|
2080
2080
|
o("div", Va, [
|
|
2081
2081
|
o("div", Ua, [
|
|
2082
|
-
(c(!0), x(X, null, se(a.value, (
|
|
2082
|
+
(c(!0), x(X, null, se(a.value, (C) => {
|
|
2083
2083
|
var I;
|
|
2084
2084
|
return c(), x("div", {
|
|
2085
|
-
key:
|
|
2085
|
+
key: C.name
|
|
2086
2086
|
}, [
|
|
2087
|
-
o("p", qa, V(
|
|
2087
|
+
o("p", qa, V(C.ua), 1),
|
|
2088
2088
|
o("p", Ha, [
|
|
2089
|
-
Array.isArray(y[
|
|
2090
|
-
key:
|
|
2089
|
+
Array.isArray(y[C.name]) ? (c(!0), x(X, { key: 0 }, se(y[C.name], (O, P) => (c(), x("span", {
|
|
2090
|
+
key: P,
|
|
2091
2091
|
class: "bg-gray-200 px-1 py-0.5 rounded-lg mr-1 text-[10px] lg:text-xs"
|
|
2092
2092
|
}, V(O), 1))), 128)) : (c(), x(X, { key: 1 }, [
|
|
2093
|
-
|
|
2094
|
-
we(V(oe(an)(y[
|
|
2093
|
+
C.type === "date" ? (c(), x(X, { key: 0 }, [
|
|
2094
|
+
we(V(oe(an)(y[C.name]) || "Немає даних"), 1)
|
|
2095
2095
|
], 64)) : (c(), x(X, { key: 1 }, [
|
|
2096
|
-
we(V(((I = y[
|
|
2096
|
+
we(V(((I = y[C.name + "_data"]) == null ? void 0 : I.text) || y[C.name + "_text"] || y[C.name] || "Немає даних"), 1)
|
|
2097
2097
|
], 64))
|
|
2098
2098
|
], 64))
|
|
2099
2099
|
])
|
|
@@ -2169,7 +2169,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2169
2169
|
hideDetailsButton: { type: Boolean, default: !1 }
|
|
2170
2170
|
},
|
|
2171
2171
|
setup(e) {
|
|
2172
|
-
const t = e, n =
|
|
2172
|
+
const t = e, n = R(() => t.items && t.items.length || t.items ? t.items : t.item != null ? [t.item] : []), l = (u) => (u == null ? void 0 : u.service_id) && (u == null ? void 0 : u.is_map) && u[t.id_key] && (u == null ? void 0 : u.geom), r = R(() => t.columns.find((u) => u.meta === "title")), s = R(() => t.columns.filter((u) => u.meta === "category")), i = R(() => t.columns.filter((u) => u.meta === "tags")), a = R(() => t.columns.filter((u) => u.meta !== "title")), m = (u, g) => {
|
|
2173
2173
|
if (g)
|
|
2174
2174
|
return u[g];
|
|
2175
2175
|
}, f = (u) => {
|
|
@@ -2207,7 +2207,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2207
2207
|
o("div", nu, [
|
|
2208
2208
|
o("div", ou, [
|
|
2209
2209
|
(c(!0), x(X, null, se(a.value, (p) => {
|
|
2210
|
-
var
|
|
2210
|
+
var C;
|
|
2211
2211
|
return c(), x("div", {
|
|
2212
2212
|
key: p.name
|
|
2213
2213
|
}, [
|
|
@@ -2220,7 +2220,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2220
2220
|
p.type === "date" ? (c(), x(X, { key: 0 }, [
|
|
2221
2221
|
we(V(oe(an)(d[p == null ? void 0 : p.name]) || "Немає даних"), 1)
|
|
2222
2222
|
], 64)) : (c(), x(X, { key: 1 }, [
|
|
2223
|
-
we(V(((
|
|
2223
|
+
we(V(((C = d[(p == null ? void 0 : p.name) + "_data"]) == null ? void 0 : C.text) || d[(p == null ? void 0 : p.name) + "_text"] || d[p == null ? void 0 : p.name] || "Немає даних"), 1)
|
|
2224
2224
|
], 64))
|
|
2225
2225
|
], 64))
|
|
2226
2226
|
])
|
|
@@ -2270,7 +2270,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2270
2270
|
hideDetailsButton: { type: Boolean, default: !1 }
|
|
2271
2271
|
},
|
|
2272
2272
|
setup(e) {
|
|
2273
|
-
const t = e, n =
|
|
2273
|
+
const t = e, n = R(() => t.items && t.items.length || t.items ? t.items : t.item != null ? [t.item] : []), l = (d) => (d == null ? void 0 : d.service_id) && (d == null ? void 0 : d.is_map) && d[t.id_key] && (d == null ? void 0 : d.geom), r = R(() => t.columns.find((d) => d.meta === "title")), s = R(() => t.columns.filter((d) => d.meta === "category")), i = R(() => t.columns.filter((d) => d.meta === "tags")), a = R(() => t.columns.filter((d) => d.meta !== "title")), m = R(() => t.columns.find((d) => d.meta === "image")), f = R(
|
|
2274
2274
|
() => t.columns.find((d) => d.meta === "desc") || t.columns.find((d) => d.name === "description")
|
|
2275
2275
|
), b = (d, y) => {
|
|
2276
2276
|
if (y)
|
|
@@ -2283,7 +2283,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2283
2283
|
return `/map?layers=${y}&info=${y},${v}`;
|
|
2284
2284
|
};
|
|
2285
2285
|
return (d, y) => (c(!0), x(X, null, se(n.value, (v) => {
|
|
2286
|
-
var h, p,
|
|
2286
|
+
var h, p, C, I, O, P, T, k, E;
|
|
2287
2287
|
return c(), x("div", {
|
|
2288
2288
|
key: v.id,
|
|
2289
2289
|
class: "bg-white border border-gray-200 rounded-lg overflow-hidden transition-all duration-200 hover:shadow-md"
|
|
@@ -2305,40 +2305,40 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2305
2305
|
])])),
|
|
2306
2306
|
o("div", vu, [
|
|
2307
2307
|
o("div", mu, [
|
|
2308
|
-
o("h3", gu, V(v[`${(
|
|
2308
|
+
o("h3", gu, V(v[`${(C = r.value) == null ? void 0 : C.name}_text`] || v[(I = r.value) == null ? void 0 : I.name] || v[(O = r.value) == null ? void 0 : O.label] || "Не вказано"), 1),
|
|
2309
2309
|
o("div", yu, [
|
|
2310
|
-
Array.isArray(s.value) && s.value.length ? (c(!0), x(X, { key: 0 }, se(s.value, (
|
|
2311
|
-
key:
|
|
2310
|
+
Array.isArray(s.value) && s.value.length ? (c(!0), x(X, { key: 0 }, se(s.value, ($) => (c(), x(X, {
|
|
2311
|
+
key: $.name
|
|
2312
2312
|
}, [
|
|
2313
|
-
v[
|
|
2313
|
+
v[$.name] ? (c(), x("div", hu, V(v[`${$.name}_text`] || v[$.name]), 1)) : W("", !0)
|
|
2314
2314
|
], 64))), 128)) : W("", !0)
|
|
2315
2315
|
])
|
|
2316
2316
|
]),
|
|
2317
|
-
o("p", xu, V(((T = v[((
|
|
2317
|
+
o("p", xu, V(((T = v[((P = f.value) == null ? void 0 : P.name) + "_data"]) == null ? void 0 : T.text) || v[((k = f.value) == null ? void 0 : k.name) + "_text"] || v[(E = f.value) == null ? void 0 : E.name]), 1),
|
|
2318
2318
|
o("div", bu, [
|
|
2319
|
-
(c(!0), x(X, null, se(a.value, (
|
|
2319
|
+
(c(!0), x(X, null, se(a.value, ($) => {
|
|
2320
2320
|
var B;
|
|
2321
2321
|
return c(), x("div", {
|
|
2322
|
-
key:
|
|
2322
|
+
key: $.name,
|
|
2323
2323
|
class: "flex flex-col md:flex-row md:items-center"
|
|
2324
2324
|
}, [
|
|
2325
2325
|
o("div", wu, [
|
|
2326
|
-
|
|
2326
|
+
$.icon ? (c(), x("span", {
|
|
2327
2327
|
key: 0,
|
|
2328
2328
|
class: "mr-1 flex-shrink-0",
|
|
2329
|
-
innerHTML:
|
|
2329
|
+
innerHTML: $.icon
|
|
2330
2330
|
}, null, 8, _u)) : W("", !0),
|
|
2331
|
-
o("span", ku, V((
|
|
2331
|
+
o("span", ku, V(($ == null ? void 0 : $.ua) || $.label || $.name) + ":", 1)
|
|
2332
2332
|
]),
|
|
2333
2333
|
o("span", $u, [
|
|
2334
|
-
Array.isArray(v[
|
|
2334
|
+
Array.isArray(v[$ == null ? void 0 : $.name]) ? (c(!0), x(X, { key: 0 }, se(v[$ == null ? void 0 : $.name], (K, Z) => (c(), x("span", {
|
|
2335
2335
|
key: Z,
|
|
2336
2336
|
class: "bg-gray-200 px-1 py-0.5 rounded-lg mr-1 inline-block"
|
|
2337
2337
|
}, V(K), 1))), 128)) : (c(), x(X, { key: 1 }, [
|
|
2338
|
-
|
|
2339
|
-
we(V(oe(an)(v[
|
|
2338
|
+
$.type === "date" ? (c(), x(X, { key: 0 }, [
|
|
2339
|
+
we(V(oe(an)(v[$ == null ? void 0 : $.name]) || "Немає даних"), 1)
|
|
2340
2340
|
], 64)) : (c(), x(X, { key: 1 }, [
|
|
2341
|
-
we(V(((B = v[(
|
|
2341
|
+
we(V(((B = v[($ == null ? void 0 : $.name) + "_data"]) == null ? void 0 : B.text) || v[($ == null ? void 0 : $.name) + "_text"] || v[$ == null ? void 0 : $.name] || "Немає даних"), 1)
|
|
2342
2342
|
], 64))
|
|
2343
2343
|
], 64))
|
|
2344
2344
|
])
|
|
@@ -2349,11 +2349,11 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2349
2349
|
o("div", Cu, [
|
|
2350
2350
|
o("p", Au, " Теги: " + V(i.value.length && v[i.value[0].name] ? "" : "відсутні"), 1),
|
|
2351
2351
|
Array.isArray(i.value) && i.value.length ? (c(), x("div", Lu, [
|
|
2352
|
-
(c(!0), x(X, null, se(i.value, (
|
|
2353
|
-
key:
|
|
2352
|
+
(c(!0), x(X, null, se(i.value, ($) => (c(), x("div", {
|
|
2353
|
+
key: $.name,
|
|
2354
2354
|
class: "flex flex-wrap gap-1"
|
|
2355
2355
|
}, [
|
|
2356
|
-
v[
|
|
2356
|
+
v[$.name] ? (c(), x("span", Su, V(v[`${$.name}_text`] || v[$.name]), 1)) : W("", !0)
|
|
2357
2357
|
]))), 128))
|
|
2358
2358
|
])) : W("", !0)
|
|
2359
2359
|
]),
|
|
@@ -2387,7 +2387,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2387
2387
|
}, Du = {
|
|
2388
2388
|
key: 2,
|
|
2389
2389
|
class: "text-gray-400 text-center py-12"
|
|
2390
|
-
},
|
|
2390
|
+
}, Ru = /* @__PURE__ */ ie({
|
|
2391
2391
|
__name: "preview-tab",
|
|
2392
2392
|
props: /* @__PURE__ */ bt({
|
|
2393
2393
|
hideDetailsButton: { type: Boolean, default: !1 }
|
|
@@ -2412,19 +2412,19 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2412
2412
|
options: l,
|
|
2413
2413
|
col: 12
|
|
2414
2414
|
}
|
|
2415
|
-
}, s =
|
|
2415
|
+
}, s = R(() => {
|
|
2416
2416
|
var b;
|
|
2417
2417
|
return Array.isArray((b = n.value) == null ? void 0 : b.columns) ? n.value.columns : [];
|
|
2418
|
-
}), i =
|
|
2418
|
+
}), i = R(() => {
|
|
2419
2419
|
var b;
|
|
2420
2420
|
return ((b = n.value) == null ? void 0 : b.view) || "template1";
|
|
2421
|
-
}), a =
|
|
2421
|
+
}), a = R(() => Co[i.value] || Co.template1), m = R(() => {
|
|
2422
2422
|
var g;
|
|
2423
2423
|
const b = (g = n.value) == null ? void 0 : g.view;
|
|
2424
2424
|
if (!b) return "template1";
|
|
2425
2425
|
const u = l.find((d) => d.id === b);
|
|
2426
2426
|
return (u == null ? void 0 : u.text) || b;
|
|
2427
|
-
}), f =
|
|
2427
|
+
}), f = R(() => (Array.isArray(n.value.tableData) ? n.value.tableData : []).slice(0, 5).map((u) => {
|
|
2428
2428
|
var g, d;
|
|
2429
2429
|
return {
|
|
2430
2430
|
...u,
|
|
@@ -2452,7 +2452,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2452
2452
|
}, null, 8, ["items", "columns", "hide-details-button"])) : f.value.length ? (c(), x("div", Du, " Додайте колонки та виберіть вигляд для перегляду ")) : (c(), x("div", Ou, " Немає даних для превʼю "))
|
|
2453
2453
|
]));
|
|
2454
2454
|
}
|
|
2455
|
-
}),
|
|
2455
|
+
}), Pu = { class: "relative h-screen flex flex-col bg-white p-8" }, Bu = { class: "flex-1 flex flex-col min-h-0 overflow-hidden" }, Vu = { class: "max-w-6xl mx-auto flex-1 flex flex-col min-h-0 w-full" }, Uu = { class: "flex items-center justify-between mb-6 flex-shrink-0" }, qu = { class: "flex items-center gap-2" }, Hu = { class: "w-full flex-shrink-0 mb-6" }, Wu = { class: "flex items-center w-full h-10 max-w-md grid-cols-3 p-1 bg-white border border-gray-200 rounded-md text-muted-foreground" }, Yu = ["onClick"], Zu = { class: "flex-1 min-h-0 overflow-y-auto" }, gx = /* @__PURE__ */ ie({
|
|
2456
2456
|
__name: "register",
|
|
2457
2457
|
props: {
|
|
2458
2458
|
hideDetailsButton: { type: Boolean, default: !1 }
|
|
@@ -2464,10 +2464,10 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2464
2464
|
{ name: "Картка", id: "card" },
|
|
2465
2465
|
{ name: "Перегляд", id: "preview" }
|
|
2466
2466
|
], i = {
|
|
2467
|
-
list:
|
|
2467
|
+
list: Ri,
|
|
2468
2468
|
filters: Hi,
|
|
2469
2469
|
card: Xi,
|
|
2470
|
-
preview:
|
|
2470
|
+
preview: Ru
|
|
2471
2471
|
}, a = s.map((d) => d.id), m = j({ columns: [], filters: [], card: [], tableData: [] }), f = j([]), b = async () => {
|
|
2472
2472
|
var y;
|
|
2473
2473
|
if (!((y = m.value) == null ? void 0 : y.token)) {
|
|
@@ -2534,7 +2534,7 @@ const Qi = { class: "flex flex-col md:flex-row md:justify-between lg:flex-row lg
|
|
|
2534
2534
|
(d) => {
|
|
2535
2535
|
typeof d == "string" && a.includes(d) && l.value !== d && (l.value = d);
|
|
2536
2536
|
}
|
|
2537
|
-
), (d, y) => (c(), x("main",
|
|
2537
|
+
), (d, y) => (c(), x("main", Pu, [
|
|
2538
2538
|
o("div", Bu, [
|
|
2539
2539
|
o("div", Vu, [
|
|
2540
2540
|
o("div", Uu, [
|
|
@@ -2730,10 +2730,10 @@ function fc() {
|
|
|
2730
2730
|
arguments[t].forEach(l);
|
|
2731
2731
|
return e;
|
|
2732
2732
|
}
|
|
2733
|
-
function
|
|
2733
|
+
function Rn(e) {
|
|
2734
2734
|
return this.extend(e);
|
|
2735
2735
|
}
|
|
2736
|
-
|
|
2736
|
+
Rn.prototype.extend = function(t) {
|
|
2737
2737
|
var n = [], l = [];
|
|
2738
2738
|
if (t instanceof Ge)
|
|
2739
2739
|
l.push(t);
|
|
@@ -2754,10 +2754,10 @@ Pn.prototype.extend = function(t) {
|
|
|
2754
2754
|
if (!(s instanceof Ge))
|
|
2755
2755
|
throw new tt("Specified list of YAML types (or a single Type object) contains a non-Type object.");
|
|
2756
2756
|
});
|
|
2757
|
-
var r = Object.create(
|
|
2757
|
+
var r = Object.create(Rn.prototype);
|
|
2758
2758
|
return r.implicit = (this.implicit || []).concat(n), r.explicit = (this.explicit || []).concat(l), r.compiledImplicit = Ao(r, "implicit"), r.compiledExplicit = Ao(r, "explicit"), r.compiledTypeMap = fc(r.compiledImplicit, r.compiledExplicit), r;
|
|
2759
2759
|
};
|
|
2760
|
-
var cr =
|
|
2760
|
+
var cr = Rn, dr = new Ge("tag:yaml.org,2002:str", {
|
|
2761
2761
|
kind: "scalar",
|
|
2762
2762
|
construct: function(e) {
|
|
2763
2763
|
return e !== null ? e : "";
|
|
@@ -3065,14 +3065,14 @@ var Cr = new Ge("tag:yaml.org,2002:binary", {
|
|
|
3065
3065
|
construct: Nc,
|
|
3066
3066
|
predicate: Dc,
|
|
3067
3067
|
represent: Oc
|
|
3068
|
-
}),
|
|
3068
|
+
}), Rc = Object.prototype.hasOwnProperty, Pc = Object.prototype.toString;
|
|
3069
3069
|
function Bc(e) {
|
|
3070
3070
|
if (e === null) return !0;
|
|
3071
3071
|
var t = [], n, l, r, s, i, a = e;
|
|
3072
3072
|
for (n = 0, l = a.length; n < l; n += 1) {
|
|
3073
|
-
if (r = a[n], i = !1,
|
|
3073
|
+
if (r = a[n], i = !1, Pc.call(r) !== "[object Object]") return !1;
|
|
3074
3074
|
for (s in r)
|
|
3075
|
-
if (
|
|
3075
|
+
if (Rc.call(r, s))
|
|
3076
3076
|
if (!i) i = !0;
|
|
3077
3077
|
else return !1;
|
|
3078
3078
|
if (!i) return !1;
|
|
@@ -3149,7 +3149,7 @@ function jt(e) {
|
|
|
3149
3149
|
function rt(e) {
|
|
3150
3150
|
return e === 9 || e === 32 || e === 10 || e === 13;
|
|
3151
3151
|
}
|
|
3152
|
-
function
|
|
3152
|
+
function Pt(e) {
|
|
3153
3153
|
return e === 44 || e === 91 || e === 93 || e === 123 || e === 125;
|
|
3154
3154
|
}
|
|
3155
3155
|
function Qc(e) {
|
|
@@ -3276,17 +3276,17 @@ function eo(e, t) {
|
|
|
3276
3276
|
}
|
|
3277
3277
|
function rd(e, t, n) {
|
|
3278
3278
|
var l, r, s, i, a, m, f, b, u = e.kind, g = e.result, d;
|
|
3279
|
-
if (d = e.input.charCodeAt(e.position), rt(d) ||
|
|
3279
|
+
if (d = e.input.charCodeAt(e.position), rt(d) || Pt(d) || d === 35 || d === 38 || d === 42 || d === 33 || d === 124 || d === 62 || d === 39 || d === 34 || d === 37 || d === 64 || d === 96 || (d === 63 || d === 45) && (r = e.input.charCodeAt(e.position + 1), rt(r) || n && Pt(r)))
|
|
3280
3280
|
return !1;
|
|
3281
3281
|
for (e.kind = "scalar", e.result = "", s = i = e.position, a = !1; d !== 0; ) {
|
|
3282
3282
|
if (d === 58) {
|
|
3283
|
-
if (r = e.input.charCodeAt(e.position + 1), rt(r) || n &&
|
|
3283
|
+
if (r = e.input.charCodeAt(e.position + 1), rt(r) || n && Pt(r))
|
|
3284
3284
|
break;
|
|
3285
3285
|
} else if (d === 35) {
|
|
3286
3286
|
if (l = e.input.charCodeAt(e.position - 1), rt(l))
|
|
3287
3287
|
break;
|
|
3288
3288
|
} else {
|
|
3289
|
-
if (e.position === e.lineStart && xn(e) || n &&
|
|
3289
|
+
if (e.position === e.lineStart && xn(e) || n && Pt(d))
|
|
3290
3290
|
break;
|
|
3291
3291
|
if (vt(d))
|
|
3292
3292
|
if (m = e.line, f = e.lineStart, b = e.lineIndent, Ve(e, !1, -1), e.lineIndent >= t) {
|
|
@@ -3338,17 +3338,17 @@ function sd(e, t) {
|
|
|
3338
3338
|
de(e, "unexpected end of the stream within a double quoted scalar");
|
|
3339
3339
|
}
|
|
3340
3340
|
function id(e, t) {
|
|
3341
|
-
var n = !0, l, r, s, i = e.tag, a, m = e.anchor, f, b, u, g, d, y = /* @__PURE__ */ Object.create(null), v, h, p,
|
|
3342
|
-
if (
|
|
3341
|
+
var n = !0, l, r, s, i = e.tag, a, m = e.anchor, f, b, u, g, d, y = /* @__PURE__ */ Object.create(null), v, h, p, C;
|
|
3342
|
+
if (C = e.input.charCodeAt(e.position), C === 91)
|
|
3343
3343
|
b = 93, d = !1, a = [];
|
|
3344
|
-
else if (
|
|
3344
|
+
else if (C === 123)
|
|
3345
3345
|
b = 125, d = !0, a = {};
|
|
3346
3346
|
else
|
|
3347
3347
|
return !1;
|
|
3348
|
-
for (e.anchor !== null && (e.anchorMap[e.anchor] = a),
|
|
3349
|
-
if (Ve(e, !0, t),
|
|
3348
|
+
for (e.anchor !== null && (e.anchorMap[e.anchor] = a), C = e.input.charCodeAt(++e.position); C !== 0; ) {
|
|
3349
|
+
if (Ve(e, !0, t), C = e.input.charCodeAt(e.position), C === b)
|
|
3350
3350
|
return e.position++, e.tag = i, e.anchor = m, e.kind = d ? "mapping" : "sequence", e.result = a, !0;
|
|
3351
|
-
n ?
|
|
3351
|
+
n ? C === 44 && de(e, "expected the node content, but found ','") : de(e, "missed comma between flow collection entries"), h = v = p = null, u = g = !1, C === 63 && (f = e.input.charCodeAt(e.position + 1), rt(f) && (u = g = !0, e.position++, Ve(e, !0, t))), l = e.line, r = e.lineStart, s = e.position, qt(e, t, vn, !1, !0), h = e.tag, v = e.result, Ve(e, !0, t), C = e.input.charCodeAt(e.position), (g || e.line === l) && C === 58 && (u = !0, C = e.input.charCodeAt(++e.position), Ve(e, !0, t), qt(e, t, vn, !1, !0), p = e.result), d ? Bt(e, a, y, h, v, p, l, r, s) : u ? a.push(Bt(e, null, y, h, v, p, l, r, s)) : a.push(v), Ve(e, !0, t), C = e.input.charCodeAt(e.position), C === 44 ? (n = !0, C = e.input.charCodeAt(++e.position)) : n = !1;
|
|
3352
3352
|
}
|
|
3353
3353
|
de(e, "unexpected end of the stream within a flow collection");
|
|
3354
3354
|
}
|
|
@@ -3415,19 +3415,19 @@ function Fo(e, t) {
|
|
|
3415
3415
|
return a ? (e.tag = l, e.anchor = r, e.kind = "sequence", e.result = s, !0) : !1;
|
|
3416
3416
|
}
|
|
3417
3417
|
function ud(e, t, n) {
|
|
3418
|
-
var l, r, s, i, a, m, f = e.tag, b = e.anchor, u = {}, g = /* @__PURE__ */ Object.create(null), d = null, y = null, v = null, h = !1, p = !1,
|
|
3418
|
+
var l, r, s, i, a, m, f = e.tag, b = e.anchor, u = {}, g = /* @__PURE__ */ Object.create(null), d = null, y = null, v = null, h = !1, p = !1, C;
|
|
3419
3419
|
if (e.firstTabInLine !== -1) return !1;
|
|
3420
|
-
for (e.anchor !== null && (e.anchorMap[e.anchor] = u),
|
|
3421
|
-
if (!h && e.firstTabInLine !== -1 && (e.position = e.firstTabInLine, de(e, "tab characters must not be used in indentation")), l = e.input.charCodeAt(e.position + 1), s = e.line, (
|
|
3422
|
-
|
|
3420
|
+
for (e.anchor !== null && (e.anchorMap[e.anchor] = u), C = e.input.charCodeAt(e.position); C !== 0; ) {
|
|
3421
|
+
if (!h && e.firstTabInLine !== -1 && (e.position = e.firstTabInLine, de(e, "tab characters must not be used in indentation")), l = e.input.charCodeAt(e.position + 1), s = e.line, (C === 63 || C === 58) && rt(l))
|
|
3422
|
+
C === 63 ? (h && (Bt(e, u, g, d, y, null, i, a, m), d = y = v = null), p = !0, h = !0, r = !0) : h ? (h = !1, r = !0) : de(e, "incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"), e.position += 1, C = l;
|
|
3423
3423
|
else {
|
|
3424
3424
|
if (i = e.line, a = e.lineStart, m = e.position, !qt(e, n, Er, !1, !0))
|
|
3425
3425
|
break;
|
|
3426
3426
|
if (e.line === s) {
|
|
3427
|
-
for (
|
|
3428
|
-
|
|
3429
|
-
if (
|
|
3430
|
-
|
|
3427
|
+
for (C = e.input.charCodeAt(e.position); jt(C); )
|
|
3428
|
+
C = e.input.charCodeAt(++e.position);
|
|
3429
|
+
if (C === 58)
|
|
3430
|
+
C = e.input.charCodeAt(++e.position), rt(C) || de(e, "a whitespace character is expected after the key-value separator within a block mapping"), h && (Bt(e, u, g, d, y, null, i, a, m), d = y = v = null), p = !0, h = !1, r = !1, d = e.tag, y = e.result;
|
|
3431
3431
|
else if (p)
|
|
3432
3432
|
de(e, "can not read an implicit mapping pair; a colon is missed");
|
|
3433
3433
|
else
|
|
@@ -3437,7 +3437,7 @@ function ud(e, t, n) {
|
|
|
3437
3437
|
else
|
|
3438
3438
|
return e.tag = f, e.anchor = b, !0;
|
|
3439
3439
|
}
|
|
3440
|
-
if ((e.line === s || e.lineIndent > t) && (h && (i = e.line, a = e.lineStart, m = e.position), qt(e, t, mn, !0, r) && (h ? y = e.result : v = e.result), h || (Bt(e, u, g, d, y, v, i, a, m), d = y = v = null), Ve(e, !0, -1),
|
|
3440
|
+
if ((e.line === s || e.lineIndent > t) && (h && (i = e.line, a = e.lineStart, m = e.position), qt(e, t, mn, !0, r) && (h ? y = e.result : v = e.result), h || (Bt(e, u, g, d, y, v, i, a, m), d = y = v = null), Ve(e, !0, -1), C = e.input.charCodeAt(e.position)), (e.line === s || e.lineIndent > t) && C !== 0)
|
|
3441
3441
|
de(e, "bad indentation of a mapping entry");
|
|
3442
3442
|
else if (e.lineIndent < t)
|
|
3443
3443
|
break;
|
|
@@ -3468,14 +3468,14 @@ function cd(e) {
|
|
|
3468
3468
|
function dd(e) {
|
|
3469
3469
|
var t, n;
|
|
3470
3470
|
if (n = e.input.charCodeAt(e.position), n !== 38) return !1;
|
|
3471
|
-
for (e.anchor !== null && de(e, "duplication of an anchor property"), n = e.input.charCodeAt(++e.position), t = e.position; n !== 0 && !rt(n) && !
|
|
3471
|
+
for (e.anchor !== null && de(e, "duplication of an anchor property"), n = e.input.charCodeAt(++e.position), t = e.position; n !== 0 && !rt(n) && !Pt(n); )
|
|
3472
3472
|
n = e.input.charCodeAt(++e.position);
|
|
3473
3473
|
return e.position === t && de(e, "name of an anchor node must contain at least one character"), e.anchor = e.input.slice(t, e.position), !0;
|
|
3474
3474
|
}
|
|
3475
3475
|
function fd(e) {
|
|
3476
3476
|
var t, n, l;
|
|
3477
3477
|
if (l = e.input.charCodeAt(e.position), l !== 42) return !1;
|
|
3478
|
-
for (l = e.input.charCodeAt(++e.position), t = e.position; l !== 0 && !rt(l) && !
|
|
3478
|
+
for (l = e.input.charCodeAt(++e.position), t = e.position; l !== 0 && !rt(l) && !Pt(l); )
|
|
3479
3479
|
l = e.input.charCodeAt(++e.position);
|
|
3480
3480
|
return e.position === t && de(e, "name of an alias node must contain at least one character"), n = e.input.slice(t, e.position), St.call(e.anchorMap, n) || de(e, 'unidentified alias "' + n + '"'), e.result = e.anchorMap[n], Ve(e, !0, -1), !0;
|
|
3481
3481
|
}
|
|
@@ -3564,7 +3564,7 @@ function md(e, t) {
|
|
|
3564
3564
|
var gd = vd, yd = md, Or = {
|
|
3565
3565
|
loadAll: gd,
|
|
3566
3566
|
load: yd
|
|
3567
|
-
}, Dr = Object.prototype.toString,
|
|
3567
|
+
}, Dr = Object.prototype.toString, Rr = Object.prototype.hasOwnProperty, to = 65279, hd = 9, tn = 10, xd = 13, bd = 32, wd = 33, _d = 34, Pn = 35, kd = 37, $d = 38, Cd = 39, Ad = 42, Pr = 44, Ld = 45, yn = 58, Sd = 61, Ed = 62, Td = 63, Md = 64, Br = 91, Vr = 93, Fd = 96, Ur = 123, Id = 124, qr = 125, et = {};
|
|
3568
3568
|
et[0] = "\\0";
|
|
3569
3569
|
et[7] = "\\a";
|
|
3570
3570
|
et[8] = "\\b";
|
|
@@ -3602,7 +3602,7 @@ function Nd(e, t) {
|
|
|
3602
3602
|
var n, l, r, s, i, a, m;
|
|
3603
3603
|
if (t === null) return {};
|
|
3604
3604
|
for (n = {}, l = Object.keys(t), r = 0, s = l.length; r < s; r += 1)
|
|
3605
|
-
i = l[r], a = String(t[i]), i.slice(0, 2) === "!!" && (i = "tag:yaml.org,2002:" + i.slice(2)), m = e.compiledTypeMap.fallback[i], m &&
|
|
3605
|
+
i = l[r], a = String(t[i]), i.slice(0, 2) === "!!" && (i = "tag:yaml.org,2002:" + i.slice(2)), m = e.compiledTypeMap.fallback[i], m && Rr.call(m.styleAliases, a) && (a = m.styleAliases[a]), n[i] = a;
|
|
3606
3606
|
return n;
|
|
3607
3607
|
}
|
|
3608
3608
|
function Od(e) {
|
|
@@ -3618,7 +3618,7 @@ function Od(e) {
|
|
|
3618
3618
|
return "\\" + n + He.repeat("0", l - t.length) + t;
|
|
3619
3619
|
}
|
|
3620
3620
|
var Dd = 1, nn = 2;
|
|
3621
|
-
function
|
|
3621
|
+
function Rd(e) {
|
|
3622
3622
|
this.schema = e.schema || Jn, this.indent = Math.max(1, e.indent || 2), this.noArrayIndent = e.noArrayIndent || !1, this.skipInvalid = e.skipInvalid || !1, this.flowLevel = He.isNothing(e.flowLevel) ? -1 : e.flowLevel, this.styleMap = Nd(this.schema, e.styles || null), this.sortKeys = e.sortKeys || !1, this.lineWidth = e.lineWidth || 80, this.noRefs = e.noRefs || !1, this.noCompatMode = e.noCompatMode || !1, this.condenseFlow = e.condenseFlow || !1, this.quotingType = e.quotingType === '"' ? nn : Dd, this.forceQuotes = e.forceQuotes || !1, this.replacer = typeof e.replacer == "function" ? e.replacer : null, this.implicitTypes = this.schema.compiledImplicit, this.explicitTypes = this.schema.compiledExplicit, this.tag = null, this.result = "", this.duplicates = [], this.usedDuplicates = null;
|
|
3623
3623
|
}
|
|
3624
3624
|
function Io(e, t) {
|
|
@@ -3632,7 +3632,7 @@ function Bn(e, t) {
|
|
|
3632
3632
|
return `
|
|
3633
3633
|
` + He.repeat(" ", e.indent * t);
|
|
3634
3634
|
}
|
|
3635
|
-
function
|
|
3635
|
+
function Pd(e, t) {
|
|
3636
3636
|
var n, l, r;
|
|
3637
3637
|
for (n = 0, l = e.implicitTypes.length; n < l; n += 1)
|
|
3638
3638
|
if (r = e.implicitTypes[n], r.resolve(t))
|
|
@@ -3655,11 +3655,11 @@ function zo(e, t, n) {
|
|
|
3655
3655
|
(n ? (
|
|
3656
3656
|
// c = flow-in
|
|
3657
3657
|
l
|
|
3658
|
-
) : l && e !==
|
|
3658
|
+
) : l && e !== Pr && e !== Br && e !== Vr && e !== Ur && e !== qr) && e !== Pn && !(t === yn && !r) || jo(t) && !hn(t) && e === Pn || t === yn && r
|
|
3659
3659
|
);
|
|
3660
3660
|
}
|
|
3661
3661
|
function Bd(e) {
|
|
3662
|
-
return on(e) && e !== to && !hn(e) && e !== Ld && e !== Td && e !== yn && e !==
|
|
3662
|
+
return on(e) && e !== to && !hn(e) && e !== Ld && e !== Td && e !== yn && e !== Pr && e !== Br && e !== Vr && e !== Ur && e !== qr && e !== Pn && e !== $d && e !== Ad && e !== wd && e !== Id && e !== Sd && e !== Ed && e !== Cd && e !== _d && e !== kd && e !== Md && e !== Fd;
|
|
3663
3663
|
}
|
|
3664
3664
|
function Vd(e) {
|
|
3665
3665
|
return !hn(e) && e !== yn;
|
|
@@ -3672,13 +3672,13 @@ function Hr(e) {
|
|
|
3672
3672
|
var t = /^\n* /;
|
|
3673
3673
|
return t.test(e);
|
|
3674
3674
|
}
|
|
3675
|
-
var Wr = 1, Vn = 2, Yr = 3, Zr = 4,
|
|
3675
|
+
var Wr = 1, Vn = 2, Yr = 3, Zr = 4, Rt = 5;
|
|
3676
3676
|
function Ud(e, t, n, l, r, s, i, a) {
|
|
3677
3677
|
var m, f = 0, b = null, u = !1, g = !1, d = l !== -1, y = -1, v = Bd(Jt(e, 0)) && Vd(Jt(e, e.length - 1));
|
|
3678
3678
|
if (t || i)
|
|
3679
3679
|
for (m = 0; m < e.length; f >= 65536 ? m += 2 : m++) {
|
|
3680
3680
|
if (f = Jt(e, m), !on(f))
|
|
3681
|
-
return
|
|
3681
|
+
return Rt;
|
|
3682
3682
|
v = v && zo(f, b, a), b = f;
|
|
3683
3683
|
}
|
|
3684
3684
|
else {
|
|
@@ -3687,22 +3687,22 @@ function Ud(e, t, n, l, r, s, i, a) {
|
|
|
3687
3687
|
u = !0, d && (g = g || // Foldable line = too long, and not more-indented.
|
|
3688
3688
|
m - y - 1 > l && e[y + 1] !== " ", y = m);
|
|
3689
3689
|
else if (!on(f))
|
|
3690
|
-
return
|
|
3690
|
+
return Rt;
|
|
3691
3691
|
v = v && zo(f, b, a), b = f;
|
|
3692
3692
|
}
|
|
3693
3693
|
g = g || d && m - y - 1 > l && e[y + 1] !== " ";
|
|
3694
3694
|
}
|
|
3695
|
-
return !u && !g ? v && !i && !r(e) ? Wr : s === nn ?
|
|
3695
|
+
return !u && !g ? v && !i && !r(e) ? Wr : s === nn ? Rt : Vn : n > 9 && Hr(e) ? Rt : i ? s === nn ? Rt : Vn : g ? Zr : Yr;
|
|
3696
3696
|
}
|
|
3697
3697
|
function qd(e, t, n, l, r) {
|
|
3698
|
-
e.dump =
|
|
3698
|
+
e.dump = function() {
|
|
3699
3699
|
if (t.length === 0)
|
|
3700
3700
|
return e.quotingType === nn ? '""' : "''";
|
|
3701
3701
|
if (!e.noCompatMode && (jd.indexOf(t) !== -1 || zd.test(t)))
|
|
3702
3702
|
return e.quotingType === nn ? '"' + t + '"' : "'" + t + "'";
|
|
3703
3703
|
var s = e.indent * Math.max(1, n), i = e.lineWidth === -1 ? -1 : Math.max(Math.min(e.lineWidth, 40), e.lineWidth - s), a = l || e.flowLevel > -1 && n >= e.flowLevel;
|
|
3704
3704
|
function m(f) {
|
|
3705
|
-
return
|
|
3705
|
+
return Pd(e, f);
|
|
3706
3706
|
}
|
|
3707
3707
|
switch (Ud(
|
|
3708
3708
|
t,
|
|
@@ -3722,12 +3722,12 @@ function qd(e, t, n, l, r) {
|
|
|
3722
3722
|
return "|" + No(t, e.indent) + Oo(Io(t, s));
|
|
3723
3723
|
case Zr:
|
|
3724
3724
|
return ">" + No(t, e.indent) + Oo(Io(Hd(t, i), s));
|
|
3725
|
-
case
|
|
3725
|
+
case Rt:
|
|
3726
3726
|
return '"' + Wd(t) + '"';
|
|
3727
3727
|
default:
|
|
3728
3728
|
throw new tt("impossible error: invalid scalar style");
|
|
3729
3729
|
}
|
|
3730
|
-
}
|
|
3730
|
+
}();
|
|
3731
3731
|
}
|
|
3732
3732
|
function No(e, t) {
|
|
3733
3733
|
var n = Hr(e) ? String(t) : "", l = e[e.length - 1] === `
|
|
@@ -3742,11 +3742,11 @@ function Oo(e) {
|
|
|
3742
3742
|
` ? e.slice(0, -1) : e;
|
|
3743
3743
|
}
|
|
3744
3744
|
function Hd(e, t) {
|
|
3745
|
-
for (var n = /(\n+)([^\n]*)/g, l =
|
|
3745
|
+
for (var n = /(\n+)([^\n]*)/g, l = function() {
|
|
3746
3746
|
var f = e.indexOf(`
|
|
3747
3747
|
`);
|
|
3748
3748
|
return f = f !== -1 ? f : e.length, n.lastIndex = f, Do(e.slice(0, f), t);
|
|
3749
|
-
}
|
|
3749
|
+
}(), r = e[0] === `
|
|
3750
3750
|
` || e[0] === " ", s, i; i = n.exec(e); ) {
|
|
3751
3751
|
var a = i[1], m = i[2];
|
|
3752
3752
|
s = m[0] === " ", l += a + (!r && !s && m !== "" ? `
|
|
@@ -3774,7 +3774,7 @@ function Yd(e, t, n) {
|
|
|
3774
3774
|
a = n[s], e.replacer && (a = e.replacer.call(n, String(s), a)), (wt(e, t, a, !1, !1) || typeof a > "u" && wt(e, t, null, !1, !1)) && (l !== "" && (l += "," + (e.condenseFlow ? "" : " ")), l += e.dump);
|
|
3775
3775
|
e.tag = r, e.dump = "[" + l + "]";
|
|
3776
3776
|
}
|
|
3777
|
-
function
|
|
3777
|
+
function Ro(e, t, n, l) {
|
|
3778
3778
|
var r = "", s = e.tag, i, a, m;
|
|
3779
3779
|
for (i = 0, a = n.length; i < a; i += 1)
|
|
3780
3780
|
m = n[i], e.replacer && (m = e.replacer.call(n, String(i), m)), (wt(e, t + 1, m, !0, !0, !1, !0) || typeof m > "u" && wt(e, t + 1, null, !0, !0, !1, !0)) && ((!l || r !== "") && (r += Bn(e, t)), e.dump && tn === e.dump.charCodeAt(0) ? r += "-" : r += "- ", r += e.dump);
|
|
@@ -3798,14 +3798,14 @@ function Gd(e, t, n, l) {
|
|
|
3798
3798
|
g = "", (!l || r !== "") && (g += Bn(e, t)), f = i[a], b = n[f], e.replacer && (b = e.replacer.call(n, f, b)), wt(e, t + 1, f, !0, !0, !0) && (u = e.tag !== null && e.tag !== "?" || e.dump && e.dump.length > 1024, u && (e.dump && tn === e.dump.charCodeAt(0) ? g += "?" : g += "? "), g += e.dump, u && (g += Bn(e, t)), wt(e, t + 1, b, !0, u) && (e.dump && tn === e.dump.charCodeAt(0) ? g += ":" : g += ": ", g += e.dump, r += g));
|
|
3799
3799
|
e.tag = s, e.dump = r || "{}";
|
|
3800
3800
|
}
|
|
3801
|
-
function
|
|
3801
|
+
function Po(e, t, n) {
|
|
3802
3802
|
var l, r, s, i, a, m;
|
|
3803
3803
|
for (r = n ? e.explicitTypes : e.implicitTypes, s = 0, i = r.length; s < i; s += 1)
|
|
3804
3804
|
if (a = r[s], (a.instanceOf || a.predicate) && (!a.instanceOf || typeof t == "object" && t instanceof a.instanceOf) && (!a.predicate || a.predicate(t))) {
|
|
3805
3805
|
if (n ? a.multi && a.representName ? e.tag = a.representName(t) : e.tag = a.tag : e.tag = "?", a.represent) {
|
|
3806
3806
|
if (m = e.styleMap[a.tag] || a.defaultStyle, Dr.call(a.represent) === "[object Function]")
|
|
3807
3807
|
l = a.represent(t, m);
|
|
3808
|
-
else if (
|
|
3808
|
+
else if (Rr.call(a.represent, m))
|
|
3809
3809
|
l = a.represent[m](t, m);
|
|
3810
3810
|
else
|
|
3811
3811
|
throw new tt("!<" + a.tag + '> tag resolver accepts not "' + m + '" style');
|
|
@@ -3816,7 +3816,7 @@ function Ro(e, t, n) {
|
|
|
3816
3816
|
return !1;
|
|
3817
3817
|
}
|
|
3818
3818
|
function wt(e, t, n, l, r, s, i) {
|
|
3819
|
-
e.tag = null, e.dump = n,
|
|
3819
|
+
e.tag = null, e.dump = n, Po(e, n, !1) || Po(e, n, !0);
|
|
3820
3820
|
var a = Dr.call(e.dump), m = l, f;
|
|
3821
3821
|
l && (l = e.flowLevel < 0 || e.flowLevel > t);
|
|
3822
3822
|
var b = a === "[object Object]" || a === "[object Array]", u, g;
|
|
@@ -3826,7 +3826,7 @@ function wt(e, t, n, l, r, s, i) {
|
|
|
3826
3826
|
if (b && g && !e.usedDuplicates[u] && (e.usedDuplicates[u] = !0), a === "[object Object]")
|
|
3827
3827
|
l && Object.keys(e.dump).length !== 0 ? (Gd(e, t, e.dump, r), g && (e.dump = "&ref_" + u + e.dump)) : (Zd(e, t, e.dump), g && (e.dump = "&ref_" + u + " " + e.dump));
|
|
3828
3828
|
else if (a === "[object Array]")
|
|
3829
|
-
l && e.dump.length !== 0 ? (e.noArrayIndent && !i && t > 0 ?
|
|
3829
|
+
l && e.dump.length !== 0 ? (e.noArrayIndent && !i && t > 0 ? Ro(e, t - 1, e.dump, r) : Ro(e, t, e.dump, r), g && (e.dump = "&ref_" + u + e.dump)) : (Yd(e, t, e.dump), g && (e.dump = "&ref_" + u + " " + e.dump));
|
|
3830
3830
|
else if (a === "[object String]")
|
|
3831
3831
|
e.tag !== "?" && qd(e, e.dump, t, s, m);
|
|
3832
3832
|
else {
|
|
@@ -3861,7 +3861,7 @@ function Un(e, t, n) {
|
|
|
3861
3861
|
}
|
|
3862
3862
|
function Xd(e, t) {
|
|
3863
3863
|
t = t || {};
|
|
3864
|
-
var n = new
|
|
3864
|
+
var n = new Rd(t);
|
|
3865
3865
|
n.noRefs || Kd(e, n);
|
|
3866
3866
|
var l = e;
|
|
3867
3867
|
return n.replacer && (l = n.replacer.call({ "": l }, "", l)), wt(n, 0, l, !0, !0) ? n.dump + `
|
|
@@ -4220,7 +4220,7 @@ function Vt(e) {
|
|
|
4220
4220
|
return null;
|
|
4221
4221
|
}
|
|
4222
4222
|
const Jr = Symbol("MapContext");
|
|
4223
|
-
function
|
|
4223
|
+
function Rf(e) {
|
|
4224
4224
|
const t = Qo(null), n = j(!1);
|
|
4225
4225
|
let l = !1;
|
|
4226
4226
|
const r = [], s = () => {
|
|
@@ -4233,11 +4233,11 @@ function Pf(e) {
|
|
|
4233
4233
|
const y = Number(typeof g == "string" ? g.trim() : g);
|
|
4234
4234
|
return Number.isFinite(y) ? y : d;
|
|
4235
4235
|
}, f = async () => {
|
|
4236
|
-
var I, O,
|
|
4236
|
+
var I, O, P, T, k, E, $;
|
|
4237
4237
|
if (typeof window > "u" || t.value) return;
|
|
4238
4238
|
const g = i();
|
|
4239
4239
|
if (!g) throw new Error("Map container not found");
|
|
4240
|
-
const d = e.settings || null, y = Vt((I = d == null ? void 0 : d.map) == null ? void 0 : I.center) || [30, 50], v = m((O = d == null ? void 0 : d.map) == null ? void 0 : O.zoom, 7), h = m((
|
|
4240
|
+
const d = e.settings || null, y = Vt((I = d == null ? void 0 : d.map) == null ? void 0 : I.center) || [30, 50], v = m((O = d == null ? void 0 : d.map) == null ? void 0 : O.zoom, 7), h = m((P = d == null ? void 0 : d.map) == null ? void 0 : P.maxZoom, 20), C = {
|
|
4241
4241
|
...{
|
|
4242
4242
|
attributionControl: !1,
|
|
4243
4243
|
center: y,
|
|
@@ -4248,11 +4248,11 @@ function Pf(e) {
|
|
|
4248
4248
|
...e.mapOptions || {},
|
|
4249
4249
|
container: g
|
|
4250
4250
|
};
|
|
4251
|
-
|
|
4251
|
+
C.maxZoom == null && (C.maxZoom = h), t.value = new maplibregl.Map(C), (T = e.controls) != null && T.navigation && t.value.addControl(new maplibregl.NavigationControl(
|
|
4252
4252
|
typeof e.controls.navigation == "object" ? e.controls.navigation : {}
|
|
4253
4253
|
), "top-right"), (k = e.controls) != null && k.scale && t.value.addControl(new maplibregl.ScaleControl(
|
|
4254
4254
|
typeof e.controls.scale == "object" ? e.controls.scale : {}
|
|
4255
|
-
), "bottom-left"), (E = e.controls) != null && E.fullscreen && t.value.addControl(new maplibregl.FullscreenControl(), "top-right"), (
|
|
4255
|
+
), "bottom-left"), (E = e.controls) != null && E.fullscreen && t.value.addControl(new maplibregl.FullscreenControl(), "top-right"), ($ = e.controls) != null && $.geolocate && t.value.addControl(new maplibregl.GeolocateControl(
|
|
4256
4256
|
typeof e.controls.geolocate == "object" ? e.controls.geolocate : {}
|
|
4257
4257
|
), "top-right"), t.value.once("load", () => {
|
|
4258
4258
|
n.value = !0, s();
|
|
@@ -4323,7 +4323,7 @@ function Ke(e) {
|
|
|
4323
4323
|
if (!t) throw new Error("useMap() called outside of a Map provider");
|
|
4324
4324
|
return t;
|
|
4325
4325
|
}
|
|
4326
|
-
const
|
|
4326
|
+
const Pf = ["Noto Sans Regular"], Bf = 12, Vf = "#0f172a", Uf = "#fff", qf = 14;
|
|
4327
4327
|
function Be(e, t) {
|
|
4328
4328
|
if (!e) return;
|
|
4329
4329
|
for (const l of t)
|
|
@@ -4337,7 +4337,7 @@ function Be(e, t) {
|
|
|
4337
4337
|
}
|
|
4338
4338
|
}
|
|
4339
4339
|
function Hf(e) {
|
|
4340
|
-
return e ? Array.isArray(e) ? e : [e] :
|
|
4340
|
+
return e ? Array.isArray(e) ? e : [e] : Pf;
|
|
4341
4341
|
}
|
|
4342
4342
|
function Mn(e, t) {
|
|
4343
4343
|
if (typeof e == "number")
|
|
@@ -4375,16 +4375,16 @@ function Zf(e, t = {}) {
|
|
|
4375
4375
|
"textMinZoom",
|
|
4376
4376
|
"textZoom",
|
|
4377
4377
|
"text-zoom"
|
|
4378
|
-
]), b = Be(e, ["text-maxzoom", "textMaxZoom", "maxzoom"]), u = Be(e, ["text-color", "textColor"]) || Vf, g = Be(e, ["text-halo-color", "textHaloColor"]) || Uf, d = Be(e, ["text-halo-width", "textHaloWidth"]), y = Be(e, ["text-halo-blur", "textHaloBlur"]), v = Be(e, ["text-offset", "textOffset"]), h = Be(e, ["text-anchor", "textAnchor"]), p = Be(e, ["text-justify", "textJustify"]),
|
|
4378
|
+
]), b = Be(e, ["text-maxzoom", "textMaxZoom", "maxzoom"]), u = Be(e, ["text-color", "textColor"]) || Vf, g = Be(e, ["text-halo-color", "textHaloColor"]) || Uf, d = Be(e, ["text-halo-width", "textHaloWidth"]), y = Be(e, ["text-halo-blur", "textHaloBlur"]), v = Be(e, ["text-offset", "textOffset"]), h = Be(e, ["text-anchor", "textAnchor"]), p = Be(e, ["text-justify", "textJustify"]), C = Be(e, ["text-letter-spacing", "textLetterSpacing"]), I = Be(e, ["text-transform", "textTransform"]), O = Be(e, ["symbol-placement", "symbolPlacement"]), P = Be(e, ["symbol-spacing", "symbolSpacing"]), T = Be(e, [
|
|
4379
4379
|
"text-rotation-alignment",
|
|
4380
4380
|
"textRotationAlignment"
|
|
4381
|
-
]), k = Be(e, ["text-pitch-alignment", "textPitchAlignment"]), E = Be(e, ["text-opacity", "textOpacity"]),
|
|
4381
|
+
]), k = Be(e, ["text-pitch-alignment", "textPitchAlignment"]), E = Be(e, ["text-opacity", "textOpacity"]), $ = {
|
|
4382
4382
|
"text-field": r,
|
|
4383
4383
|
"text-font": Hf(i),
|
|
4384
4384
|
"text-size": a,
|
|
4385
4385
|
"text-allow-overlap": m ?? !1
|
|
4386
4386
|
};
|
|
4387
|
-
v && (
|
|
4387
|
+
v && ($["text-offset"] = v), s !== "line" && ($["text-anchor"] = h ?? "center"), p && ($["text-justify"] = p), C !== void 0 && ($["text-letter-spacing"] = C), I && ($["text-transform"] = I), P !== void 0 && ($["symbol-spacing"] = P), s === "line" ? ($["symbol-placement"] = O || "line", $["text-rotation-alignment"] = T || "map", $["text-pitch-alignment"] = k || "map") : (T && ($["text-rotation-alignment"] = T), k && ($["text-pitch-alignment"] = k), O && ($["symbol-placement"] = O)), h && s === "line" && ($["text-anchor"] = h);
|
|
4388
4388
|
const B = {
|
|
4389
4389
|
"text-color": u,
|
|
4390
4390
|
"text-opacity": E ?? 1
|
|
@@ -4392,7 +4392,7 @@ function Zf(e, t = {}) {
|
|
|
4392
4392
|
B["text-halo-color"] = g, d !== void 0 && (B["text-halo-width"] = d), y !== void 0 && (B["text-halo-blur"] = y);
|
|
4393
4393
|
const K = {
|
|
4394
4394
|
type: "symbol",
|
|
4395
|
-
layout:
|
|
4395
|
+
layout: $,
|
|
4396
4396
|
paint: B
|
|
4397
4397
|
}, Z = Mn(f, qf);
|
|
4398
4398
|
if (K.minzoom = Z, b !== void 0) {
|
|
@@ -4707,7 +4707,7 @@ function Le(e, t, n) {
|
|
|
4707
4707
|
A.setPaintProperty(M, "icon-opacity", _), A.setPaintProperty(M, "text-opacity", _);
|
|
4708
4708
|
break;
|
|
4709
4709
|
}
|
|
4710
|
-
},
|
|
4710
|
+
}, $ = {
|
|
4711
4711
|
ids: { layerId: s, sourceId: i },
|
|
4712
4712
|
isMounted: () => {
|
|
4713
4713
|
var M;
|
|
@@ -4774,13 +4774,13 @@ function Le(e, t, n) {
|
|
|
4774
4774
|
},
|
|
4775
4775
|
on: u
|
|
4776
4776
|
};
|
|
4777
|
-
Fn.set(s,
|
|
4777
|
+
Fn.set(s, $);
|
|
4778
4778
|
const B = () => {
|
|
4779
|
-
Fn.get(s) ===
|
|
4780
|
-
}, K =
|
|
4781
|
-
return
|
|
4779
|
+
Fn.get(s) === $ && Fn.delete(s);
|
|
4780
|
+
}, K = $.remove;
|
|
4781
|
+
return $.remove = () => {
|
|
4782
4782
|
B(), K();
|
|
4783
|
-
}, Te(
|
|
4783
|
+
}, Te($.remove), In[e] = $, $;
|
|
4784
4784
|
}
|
|
4785
4785
|
const np = { class: "flex flex-col flex-1 min-h-0" }, op = { class: "flex flex-col flex-1 min-h-0" }, rp = /* @__PURE__ */ ie({
|
|
4786
4786
|
__name: "vs-tab-popup",
|
|
@@ -4826,9 +4826,9 @@ const np = { class: "flex flex-col flex-1 min-h-0" }, op = { class: "flex flex-c
|
|
|
4826
4826
|
}
|
|
4827
4827
|
function u() {
|
|
4828
4828
|
var p;
|
|
4829
|
-
const y = [...r.value], v = ((p = n.fields) == null ? void 0 : p.filter((
|
|
4829
|
+
const y = [...r.value], v = ((p = n.fields) == null ? void 0 : p.filter((C) => a.value.includes(C.name))) || [], h = Yt(y, v, {
|
|
4830
4830
|
selectedKeys: a.value,
|
|
4831
|
-
resolveKey: (
|
|
4831
|
+
resolveKey: (C) => Lt(C)
|
|
4832
4832
|
});
|
|
4833
4833
|
r.value = h, i.value = !1, a.value = [];
|
|
4834
4834
|
}
|
|
@@ -4911,7 +4911,7 @@ const np = { class: "flex flex-col flex-1 min-h-0" }, op = { class: "flex flex-c
|
|
|
4911
4911
|
i.value = { name: "", color: "#2E86DE" };
|
|
4912
4912
|
}
|
|
4913
4913
|
function g() {
|
|
4914
|
-
var p,
|
|
4914
|
+
var p, C;
|
|
4915
4915
|
const y = (p = i.value.name) == null ? void 0 : p.trim();
|
|
4916
4916
|
if (!y) {
|
|
4917
4917
|
Ee({
|
|
@@ -4921,7 +4921,7 @@ const np = { class: "flex flex-col flex-1 min-h-0" }, op = { class: "flex flex-c
|
|
|
4921
4921
|
});
|
|
4922
4922
|
return;
|
|
4923
4923
|
}
|
|
4924
|
-
const v = ((
|
|
4924
|
+
const v = ((C = i.value.color) == null ? void 0 : C.trim()) || "#2E86DE";
|
|
4925
4925
|
if (r.value.some(
|
|
4926
4926
|
(I) => Lt(I) === Lt({ name: y })
|
|
4927
4927
|
)) {
|
|
@@ -5156,20 +5156,20 @@ const np = { class: "flex flex-col flex-1 min-h-0" }, op = { class: "flex flex-c
|
|
|
5156
5156
|
function g() {
|
|
5157
5157
|
var I;
|
|
5158
5158
|
const h = [...r.value], p = ((I = n.fields) == null ? void 0 : I.filter((O) => m.value.includes(O.name)).map((O) => {
|
|
5159
|
-
const { type:
|
|
5159
|
+
const { type: P, format: T, ...k } = O;
|
|
5160
5160
|
return {
|
|
5161
5161
|
...k,
|
|
5162
|
-
format: T ??
|
|
5162
|
+
format: T ?? P ?? "text"
|
|
5163
5163
|
};
|
|
5164
|
-
})) || [],
|
|
5164
|
+
})) || [], C = Yt(h, p, {
|
|
5165
5165
|
selectedKeys: m.value,
|
|
5166
5166
|
resolveKey: (O) => Lt(O)
|
|
5167
5167
|
});
|
|
5168
|
-
if (r.value =
|
|
5168
|
+
if (r.value = C, s.value === "html" && p.length) {
|
|
5169
5169
|
const O = p.map((k) => {
|
|
5170
|
-
const E = k.label ?? "",
|
|
5170
|
+
const E = k.label ?? "", $ = k.name ?? k.id ?? "";
|
|
5171
5171
|
return `<dd>${E}</dd>
|
|
5172
|
-
<dt>{{ ${
|
|
5172
|
+
<dt>{{ ${$} }}</dt>`;
|
|
5173
5173
|
}).join(`
|
|
5174
5174
|
`), T = (i.value ?? "").trimEnd();
|
|
5175
5175
|
i.value = T ? `${T}
|
|
@@ -5205,14 +5205,14 @@ ${O}` : O;
|
|
|
5205
5205
|
]),
|
|
5206
5206
|
ne(yp, {
|
|
5207
5207
|
modelValue: s.value,
|
|
5208
|
-
"onUpdate:modelValue": p[0] || (p[0] = (
|
|
5208
|
+
"onUpdate:modelValue": p[0] || (p[0] = (C) => s.value = C),
|
|
5209
5209
|
options: v
|
|
5210
5210
|
}, null, 8, ["modelValue"]),
|
|
5211
5211
|
o("div", xp, [
|
|
5212
5212
|
s.value === "list" ? (c(), le(Mt, {
|
|
5213
5213
|
key: 0,
|
|
5214
5214
|
modelValue: r.value,
|
|
5215
|
-
"onUpdate:modelValue": p[1] || (p[1] = (
|
|
5215
|
+
"onUpdate:modelValue": p[1] || (p[1] = (C) => r.value = C),
|
|
5216
5216
|
"columns-scheme": f,
|
|
5217
5217
|
"form-scheme": b,
|
|
5218
5218
|
"main-col-width": "250px",
|
|
@@ -5220,7 +5220,7 @@ ${O}` : O;
|
|
|
5220
5220
|
}, null, 8, ["modelValue"])) : s.value === "html" ? (c(), le(bn, {
|
|
5221
5221
|
key: 1,
|
|
5222
5222
|
modelValue: i.value,
|
|
5223
|
-
"onUpdate:modelValue": p[2] || (p[2] = (
|
|
5223
|
+
"onUpdate:modelValue": p[2] || (p[2] = (C) => i.value = C),
|
|
5224
5224
|
language: "html",
|
|
5225
5225
|
theme: "vs-light",
|
|
5226
5226
|
class: "flex-1 min-h-0"
|
|
@@ -5228,9 +5228,9 @@ ${O}` : O;
|
|
|
5228
5228
|
]),
|
|
5229
5229
|
ne(Wt, {
|
|
5230
5230
|
visible: a.value,
|
|
5231
|
-
"onUpdate:visible": p[3] || (p[3] = (
|
|
5231
|
+
"onUpdate:visible": p[3] || (p[3] = (C) => a.value = C),
|
|
5232
5232
|
selection: m.value,
|
|
5233
|
-
"onUpdate:selection": p[4] || (p[4] = (
|
|
5233
|
+
"onUpdate:selection": p[4] || (p[4] = (C) => m.value = C),
|
|
5234
5234
|
fields: e.fields,
|
|
5235
5235
|
title: "Імпорт полів для картки",
|
|
5236
5236
|
"id-prefix": "import-card",
|
|
@@ -5291,9 +5291,9 @@ ${O}` : O;
|
|
|
5291
5291
|
}
|
|
5292
5292
|
function u() {
|
|
5293
5293
|
var p;
|
|
5294
|
-
const y = [...r.value], v = ((p = n.fields) == null ? void 0 : p.filter((
|
|
5294
|
+
const y = [...r.value], v = ((p = n.fields) == null ? void 0 : p.filter((C) => a.value.includes(C.name))) || [], h = Yt(y, v, {
|
|
5295
5295
|
selectedKeys: a.value,
|
|
5296
|
-
resolveKey: (
|
|
5296
|
+
resolveKey: (C) => Lt(C)
|
|
5297
5297
|
});
|
|
5298
5298
|
r.value = h, i.value = !1, a.value = [];
|
|
5299
5299
|
}
|
|
@@ -5341,7 +5341,7 @@ ${O}` : O;
|
|
|
5341
5341
|
__name: "MapView",
|
|
5342
5342
|
setup(e, { expose: t }) {
|
|
5343
5343
|
var f, b;
|
|
5344
|
-
const n = j(null), l = j(null), r = ((b = (f = Tt()) == null ? void 0 : f.appContext.config.globalProperties) == null ? void 0 : b.$settings) || null, s =
|
|
5344
|
+
const n = j(null), l = j(null), r = ((b = (f = Tt()) == null ? void 0 : f.appContext.config.globalProperties) == null ? void 0 : b.$settings) || null, s = Rf({
|
|
5345
5345
|
container: n,
|
|
5346
5346
|
mapOptions: {
|
|
5347
5347
|
style: {
|
|
@@ -5415,12 +5415,12 @@ ${O}` : O;
|
|
|
5415
5415
|
let b = null;
|
|
5416
5416
|
function u() {
|
|
5417
5417
|
if (!(f != null && f.setTiles)) return;
|
|
5418
|
-
const
|
|
5418
|
+
const C = m.includes("?") ? "&" : "?", I = `${m}${C}_=${Date.now()}`;
|
|
5419
5419
|
f.setTiles([I]);
|
|
5420
5420
|
}
|
|
5421
5421
|
function g() {
|
|
5422
5422
|
b && clearTimeout(b), b = setTimeout(() => {
|
|
5423
|
-
b = null, d().catch((
|
|
5423
|
+
b = null, d().catch((C) => console.error("Failed to update map layer", C));
|
|
5424
5424
|
}, 300);
|
|
5425
5425
|
}
|
|
5426
5426
|
async function d() {
|
|
@@ -5428,7 +5428,7 @@ ${O}` : O;
|
|
|
5428
5428
|
}
|
|
5429
5429
|
return te(() => i.styleSpec, g, { deep: !0 }), Te(() => {
|
|
5430
5430
|
f.remove();
|
|
5431
|
-
}), (
|
|
5431
|
+
}), (C, I) => null;
|
|
5432
5432
|
}
|
|
5433
5433
|
}), Qt = j(null);
|
|
5434
5434
|
function $p() {
|
|
@@ -5464,10 +5464,10 @@ const Ap = { class: "map-filter" }, Lp = { class: "map-filter__header" }, Sp = {
|
|
|
5464
5464
|
disabled: { type: Boolean }
|
|
5465
5465
|
},
|
|
5466
5466
|
setup(e) {
|
|
5467
|
-
const t = st(() => import("@opengis/filter")), n = e, l =
|
|
5467
|
+
const t = st(() => import("@opengis/filter")), n = e, l = R(() => {
|
|
5468
5468
|
var z;
|
|
5469
5469
|
return ((z = n.layer) == null ? void 0 : z.id) ?? "";
|
|
5470
|
-
}), r =
|
|
5470
|
+
}), r = R(() => `filter-popover-${l.value}`), {
|
|
5471
5471
|
isOpen: s,
|
|
5472
5472
|
close: i,
|
|
5473
5473
|
toggle: a
|
|
@@ -5478,14 +5478,14 @@ const Ap = { class: "map-filter" }, Lp = { class: "map-filter__header" }, Sp = {
|
|
|
5478
5478
|
text: "Спочатку активуйте шар, щоб застосувати фільтр",
|
|
5479
5479
|
top: 0,
|
|
5480
5480
|
left: 0
|
|
5481
|
-
}), y =
|
|
5481
|
+
}), y = R(() => s.value), v = R(() => {
|
|
5482
5482
|
var z;
|
|
5483
5483
|
return Array.isArray((z = n.layer) == null ? void 0 : z.filters) ? n.layer.filters : [];
|
|
5484
|
-
}), h =
|
|
5484
|
+
}), h = R(() => v.value.length > 0), p = R(() => {
|
|
5485
5485
|
var z;
|
|
5486
5486
|
return ((z = n.layer) == null ? void 0 : z.name) ?? "";
|
|
5487
|
-
}),
|
|
5488
|
-
if (!y.value || !
|
|
5487
|
+
}), C = R(() => v.value), I = j(null), O = R(() => v.value.length), P = R(() => O.value <= 2), T = R(() => P.value ? "body" : typeof window > "u" || I.value ? jn : "body"), k = R(() => {
|
|
5488
|
+
if (!y.value || !P.value)
|
|
5489
5489
|
return {};
|
|
5490
5490
|
const z = typeof window < "u" ? window.innerWidth : 280, G = Math.max(280, z - 16 * 2);
|
|
5491
5491
|
return {
|
|
@@ -5501,31 +5501,31 @@ const Ap = { class: "map-filter" }, Lp = { class: "map-filter__header" }, Sp = {
|
|
|
5501
5501
|
function E() {
|
|
5502
5502
|
i();
|
|
5503
5503
|
}
|
|
5504
|
-
function
|
|
5504
|
+
function $(z, U, G = 8) {
|
|
5505
5505
|
const ee = window.scrollY + G, he = window.scrollY + window.innerHeight - G;
|
|
5506
5506
|
let ce = z;
|
|
5507
5507
|
return ce + U > he && (ce = he - U), ce < ee && (ce = ee), ce;
|
|
5508
5508
|
}
|
|
5509
5509
|
function B() {
|
|
5510
5510
|
var Se, Ce, Ae;
|
|
5511
|
-
if (!f.value || !
|
|
5511
|
+
if (!f.value || !P.value) return;
|
|
5512
5512
|
const z = f.value.getBoundingClientRect(), U = window.scrollX + 8, G = window.scrollX + window.innerWidth - 8, ee = ((Se = b.value) == null ? void 0 : Se.offsetWidth) || 280, he = ((Ce = b.value) == null ? void 0 : Ce.offsetHeight) || 0;
|
|
5513
5513
|
let ce = 0, pe = 0;
|
|
5514
5514
|
if ((Ae = n.catalogAnchor) != null && Ae.value) {
|
|
5515
5515
|
const Y = n.catalogAnchor.value.getBoundingClientRect(), J = Y.top + window.scrollY;
|
|
5516
|
-
ce =
|
|
5516
|
+
ce = $(J, he, 8);
|
|
5517
5517
|
const Q = Y.right + window.scrollX + 12, ve = G - ee, ye = U;
|
|
5518
5518
|
pe = Math.min(Math.max(Q, ye), Math.max(ye, ve));
|
|
5519
5519
|
} else {
|
|
5520
5520
|
const Y = z.bottom + window.scrollY + 8;
|
|
5521
|
-
ce =
|
|
5521
|
+
ce = $(Y, he, 8);
|
|
5522
5522
|
let J = z.left + window.scrollX;
|
|
5523
5523
|
J < U && (J = U), J + ee > G && (J = Math.max(U, G - ee)), pe = J;
|
|
5524
5524
|
}
|
|
5525
5525
|
m.left = pe, m.top = ce, m.transform = "none";
|
|
5526
5526
|
}
|
|
5527
5527
|
function K() {
|
|
5528
|
-
|
|
5528
|
+
P.value || N(), a(), s.value && P.value && qe(() => {
|
|
5529
5529
|
B(), A(), requestAnimationFrame(() => B());
|
|
5530
5530
|
});
|
|
5531
5531
|
}
|
|
@@ -5533,12 +5533,12 @@ const Ap = { class: "map-filter" }, Lp = { class: "map-filter__header" }, Sp = {
|
|
|
5533
5533
|
n.disabled || K();
|
|
5534
5534
|
}
|
|
5535
5535
|
te(y, (z) => {
|
|
5536
|
-
z &&
|
|
5536
|
+
z && P.value ? qe(() => {
|
|
5537
5537
|
B(), A(), requestAnimationFrame(() => B());
|
|
5538
|
-
}) : (L(),
|
|
5539
|
-
}), te(
|
|
5540
|
-
!y.value || !
|
|
5541
|
-
}, { deep: !0 }), te(
|
|
5538
|
+
}) : (L(), P.value || N());
|
|
5539
|
+
}), te(C, () => {
|
|
5540
|
+
!y.value || !P.value || qe(() => B());
|
|
5541
|
+
}, { deep: !0 }), te(P, (z) => {
|
|
5542
5542
|
y.value && (z ? qe(() => {
|
|
5543
5543
|
B(), A();
|
|
5544
5544
|
}) : (L(), N()));
|
|
@@ -5549,7 +5549,7 @@ const Ap = { class: "map-filter" }, Lp = { class: "map-filter__header" }, Sp = {
|
|
|
5549
5549
|
}
|
|
5550
5550
|
);
|
|
5551
5551
|
function D() {
|
|
5552
|
-
!y.value || !
|
|
5552
|
+
!y.value || !P.value || B();
|
|
5553
5553
|
}
|
|
5554
5554
|
function M(z) {
|
|
5555
5555
|
const U = l.value;
|
|
@@ -5576,8 +5576,8 @@ const Ap = { class: "map-filter" }, Lp = { class: "map-filter__header" }, Sp = {
|
|
|
5576
5576
|
window.removeEventListener("resize", D), window.removeEventListener("scroll", D, !0), L();
|
|
5577
5577
|
});
|
|
5578
5578
|
function A() {
|
|
5579
|
-
L(), !(!b.value || !
|
|
5580
|
-
!y.value || !
|
|
5579
|
+
L(), !(!b.value || !P.value) && (u = new ResizeObserver(() => {
|
|
5580
|
+
!y.value || !P.value || B();
|
|
5581
5581
|
}), u.observe(b.value));
|
|
5582
5582
|
}
|
|
5583
5583
|
function L() {
|
|
@@ -5622,7 +5622,7 @@ const Ap = { class: "map-filter" }, Lp = { class: "map-filter__header" }, Sp = {
|
|
|
5622
5622
|
to: T.value
|
|
5623
5623
|
}, [
|
|
5624
5624
|
o("div", {
|
|
5625
|
-
class: be(["vst-popover__content inline-block z-50 rounded-[16px] bg-white text-sm text-gray-500 rounded-md shadow-lg bottom mapLayer-filter__popover", { "mapLayer-filter__popover--static": !
|
|
5625
|
+
class: be(["vst-popover__content inline-block z-50 rounded-[16px] bg-white text-sm text-gray-500 rounded-md shadow-lg bottom mapLayer-filter__popover", { "mapLayer-filter__popover--static": !P.value }]),
|
|
5626
5626
|
style: We(k.value),
|
|
5627
5627
|
ref_key: "panel",
|
|
5628
5628
|
ref: b,
|
|
@@ -5645,7 +5645,7 @@ const Ap = { class: "map-filter" }, Lp = { class: "map-filter__header" }, Sp = {
|
|
|
5645
5645
|
]),
|
|
5646
5646
|
ne(oe(t), {
|
|
5647
5647
|
view: "inline",
|
|
5648
|
-
schema:
|
|
5648
|
+
schema: C.value,
|
|
5649
5649
|
value: g.value,
|
|
5650
5650
|
limit: 10,
|
|
5651
5651
|
onChange: U[0] || (U[0] = (G) => M(G.data)),
|
|
@@ -5711,24 +5711,24 @@ const Ap = { class: "map-filter" }, Lp = { class: "map-filter__header" }, Sp = {
|
|
|
5711
5711
|
return h.replace(/{z}/gi, String(n.z)).replace(/{x}/gi, String(n.x)).replace(/{y}/gi, String(n.y));
|
|
5712
5712
|
}
|
|
5713
5713
|
function r(h, p) {
|
|
5714
|
-
let
|
|
5715
|
-
for (; p[
|
|
5716
|
-
|
|
5717
|
-
return
|
|
5714
|
+
let C = h || `layers-${Object.keys(p).length}`, I = 1;
|
|
5715
|
+
for (; p[C]; )
|
|
5716
|
+
C = `${h}-${I}`, I += 1;
|
|
5717
|
+
return C;
|
|
5718
5718
|
}
|
|
5719
|
-
const s = Tt(), i = (d = s == null ? void 0 : s.appContext.config.globalProperties) == null ? void 0 : d.$settings, a = i == null ? void 0 : i.map, m =
|
|
5719
|
+
const s = Tt(), i = (d = s == null ? void 0 : s.appContext.config.globalProperties) == null ? void 0 : d.$settings, a = i == null ? void 0 : i.map, m = R(() => {
|
|
5720
5720
|
const h = Array.isArray(a == null ? void 0 : a.basemaps) ? a == null ? void 0 : a.basemaps : [];
|
|
5721
5721
|
if (!h.length) return {};
|
|
5722
5722
|
const p = {};
|
|
5723
|
-
return h.forEach((
|
|
5724
|
-
const O =
|
|
5723
|
+
return h.forEach((C, I) => {
|
|
5724
|
+
const O = C.name ?? C.title ?? `basemap-${I}`, P = (C.id ?? O ?? `basemap-${I}`).toString().toLowerCase().replace(/\s+/g, "-").replace(/[^a-z0-9-]/g, ""), T = r(P || `basemap-${I}`, p), k = C.preview || (C.url ? l(C.url) : void 0);
|
|
5725
5725
|
p[T] = {
|
|
5726
|
-
url:
|
|
5726
|
+
url: C.url,
|
|
5727
5727
|
preview: k,
|
|
5728
5728
|
title: O
|
|
5729
5729
|
};
|
|
5730
5730
|
}), p;
|
|
5731
|
-
}), f =
|
|
5731
|
+
}), f = R(() => {
|
|
5732
5732
|
const h = m.value;
|
|
5733
5733
|
return Object.keys(h).length ? h : t;
|
|
5734
5734
|
}), b = j(Object.keys(f.value)[0] ?? "gki"), u = Le("base", {
|
|
@@ -5757,18 +5757,18 @@ const Ap = { class: "map-filter" }, Lp = { class: "map-filter__header" }, Sp = {
|
|
|
5757
5757
|
},
|
|
5758
5758
|
{ immediate: !0 }
|
|
5759
5759
|
), (h, p) => (c(), x("div", Ip, [
|
|
5760
|
-
(c(!0), x(X, null, se(f.value, (
|
|
5760
|
+
(c(!0), x(X, null, se(f.value, (C, I) => (c(), x("div", {
|
|
5761
5761
|
key: I,
|
|
5762
5762
|
onClick: (O) => g(I)
|
|
5763
5763
|
}, [
|
|
5764
|
-
I !== "none" &&
|
|
5764
|
+
I !== "none" && C.url ? (c(), x("div", {
|
|
5765
5765
|
key: 0,
|
|
5766
5766
|
class: be(["lg:w-14 lg:h-14 w-10 h-10 flex items-center justify-center bg-gray-200 rounded-xl shadow-2xs cursor-pointer transition-all border-4", b.value === I ? "border-blue-500" : "border-gray-200"])
|
|
5767
5767
|
}, [
|
|
5768
|
-
|
|
5768
|
+
C.preview ? (c(), x("img", {
|
|
5769
5769
|
key: 0,
|
|
5770
|
-
src:
|
|
5771
|
-
alt:
|
|
5770
|
+
src: C.preview,
|
|
5771
|
+
alt: C.title,
|
|
5772
5772
|
class: "object-cover rounded-lg lg:w-12 lg:h-12 w-8 h-8"
|
|
5773
5773
|
}, null, 8, zp)) : W("", !0)
|
|
5774
5774
|
], 2)) : (c(), x("div", {
|
|
@@ -5856,7 +5856,7 @@ const Ap = { class: "map-filter" }, Lp = { class: "map-filter__header" }, Sp = {
|
|
|
5856
5856
|
])) : W("", !0);
|
|
5857
5857
|
}
|
|
5858
5858
|
});
|
|
5859
|
-
function
|
|
5859
|
+
function Rp() {
|
|
5860
5860
|
const { map: e, ready: t } = Ke(), n = j(null), l = j(null), r = j(null), s = j(null);
|
|
5861
5861
|
let i = [];
|
|
5862
5862
|
function a() {
|
|
@@ -5866,7 +5866,7 @@ function Pp() {
|
|
|
5866
5866
|
const y = (d == null ? void 0 : d.properties) || {};
|
|
5867
5867
|
return !!(y.cluster || y.point_count || y.point_count_abbreviated);
|
|
5868
5868
|
}, f = (d) => {
|
|
5869
|
-
var p,
|
|
5869
|
+
var p, C;
|
|
5870
5870
|
n.value = [d.point.x, d.point.y];
|
|
5871
5871
|
const y = e.value.queryRenderedFeatures(d.point);
|
|
5872
5872
|
if (!(y != null && y.length)) {
|
|
@@ -5879,7 +5879,7 @@ function Pp() {
|
|
|
5879
5879
|
return;
|
|
5880
5880
|
}
|
|
5881
5881
|
const h = Le(v.source) || Le((p = v.layer) == null ? void 0 : p.id);
|
|
5882
|
-
h != null && h.popup && (l.value = ((
|
|
5882
|
+
h != null && h.popup && (l.value = ((C = h.popup) == null ? void 0 : C.fields) || h.popup, s.value = v.properties);
|
|
5883
5883
|
}, b = () => {
|
|
5884
5884
|
l.value = null, s.value = null, n.value = null;
|
|
5885
5885
|
};
|
|
@@ -5897,7 +5897,7 @@ function Pp() {
|
|
|
5897
5897
|
title: r
|
|
5898
5898
|
};
|
|
5899
5899
|
}
|
|
5900
|
-
const
|
|
5900
|
+
const Pp = { class: "min-w-[200px] max-w-[280px] rounded-lg border border-slate-200 bg-white/90 p-3 text-xs shadow-lg backdrop-blur" }, Bp = { class: "space-y-1.5" }, Vp = { class: "font-bold text-slate-700" }, Up = { class: "text-slate-700" }, Qr = /* @__PURE__ */ ie({
|
|
5901
5901
|
__name: "MapPopup",
|
|
5902
5902
|
setup(e) {
|
|
5903
5903
|
const {
|
|
@@ -5905,7 +5905,7 @@ const Rp = { class: "min-w-[200px] max-w-[280px] rounded-lg border border-slate-
|
|
|
5905
5905
|
popupFields: n,
|
|
5906
5906
|
popupValues: l,
|
|
5907
5907
|
disable: r
|
|
5908
|
-
} =
|
|
5908
|
+
} = Rp(), { map: s } = Ke(), i = j(null), a = j({ left: "-9999px", top: "-9999px" }), m = new Intl.NumberFormat("uk-UA", {
|
|
5909
5909
|
maximumFractionDigits: 2
|
|
5910
5910
|
});
|
|
5911
5911
|
function f(v, h) {
|
|
@@ -5918,20 +5918,20 @@ const Rp = { class: "min-w-[200px] max-w-[280px] rounded-lg border border-slate-
|
|
|
5918
5918
|
return h;
|
|
5919
5919
|
}
|
|
5920
5920
|
function b(v, h, p) {
|
|
5921
|
-
const
|
|
5921
|
+
const C = v.name || v.label || v.title || `field-${p}`, I = v.label || v.title || v.name || C, O = v.name ? h[v.name] : void 0, T = (v.name ? h[`${v.name}_text`] : void 0) ?? O ?? v.value ?? null;
|
|
5922
5922
|
return {
|
|
5923
|
-
key:
|
|
5923
|
+
key: C,
|
|
5924
5924
|
label: I,
|
|
5925
5925
|
value: f(v, T)
|
|
5926
5926
|
};
|
|
5927
5927
|
}
|
|
5928
|
-
const u =
|
|
5928
|
+
const u = R(() => {
|
|
5929
5929
|
const v = n.value || [], h = l.value || {};
|
|
5930
|
-
return v.filter((p) => (p == null ? void 0 : p.meta) !== "title").map((p,
|
|
5931
|
-
}), g =
|
|
5932
|
-
const v = n.value || [], h = l.value || {}, p = v.find((
|
|
5930
|
+
return v.filter((p) => (p == null ? void 0 : p.meta) !== "title").map((p, C) => b(p, h, C)).filter((p) => p.label);
|
|
5931
|
+
}), g = R(() => {
|
|
5932
|
+
const v = n.value || [], h = l.value || {}, p = v.find((C) => (C == null ? void 0 : C.meta) === "title");
|
|
5933
5933
|
return p ? b(p, h, 0) : null;
|
|
5934
|
-
}), d =
|
|
5934
|
+
}), d = R(() => {
|
|
5935
5935
|
var h;
|
|
5936
5936
|
const v = u.value;
|
|
5937
5937
|
return (h = g.value) != null && h.value ? [
|
|
@@ -5950,10 +5950,10 @@ const Rp = { class: "min-w-[200px] max-w-[280px] rounded-lg border border-slate-
|
|
|
5950
5950
|
top: 0,
|
|
5951
5951
|
width: window.innerWidth,
|
|
5952
5952
|
height: window.innerHeight
|
|
5953
|
-
},
|
|
5954
|
-
let Z = O + B + E, D =
|
|
5955
|
-
Z + T +
|
|
5956
|
-
const M =
|
|
5953
|
+
}, C = ((N = (L = s.value) == null ? void 0 : L.getContainer) == null ? void 0 : N.call(L)) || void 0, I = (C == null ? void 0 : C.getBoundingClientRect()) ?? p, O = I.left - p.left, P = I.top - p.top, T = v.offsetWidth || 0, k = v.offsetHeight || 0, E = 12, $ = 8, [B, K] = t.value;
|
|
5954
|
+
let Z = O + B + E, D = P + K + E;
|
|
5955
|
+
Z + T + $ > p.width && (Z = O + B - T - E), D + k + $ > p.height && (D = P + K - k - E);
|
|
5956
|
+
const M = $, w = $, _ = Math.max($, p.width - T - $), A = Math.max($, p.height - k - $);
|
|
5957
5957
|
Z = Math.min(Math.max(Z, M), _), D = Math.min(Math.max(D, w), A), a.value = { left: `${Z}px`, top: `${D}px` };
|
|
5958
5958
|
}
|
|
5959
5959
|
return te([t, d], () => {
|
|
@@ -5969,7 +5969,7 @@ const Rp = { class: "min-w-[200px] max-w-[280px] rounded-lg border border-slate-
|
|
|
5969
5969
|
class: "absolute pointer-events-none z-20",
|
|
5970
5970
|
style: We(a.value)
|
|
5971
5971
|
}, [
|
|
5972
|
-
o("div",
|
|
5972
|
+
o("div", Pp, [
|
|
5973
5973
|
o("div", Bp, [
|
|
5974
5974
|
(c(!0), x(X, null, se(d.value, (p) => (c(), x("div", {
|
|
5975
5975
|
key: p.key,
|
|
@@ -5984,7 +5984,7 @@ const Rp = { class: "min-w-[200px] max-w-[280px] rounded-lg border border-slate-
|
|
|
5984
5984
|
}
|
|
5985
5985
|
});
|
|
5986
5986
|
function qp() {
|
|
5987
|
-
const { map: e, ready: t } = Ke(), n = ct(), l = dt(), r = j(null), s = j(null), i = j(null), a = j(!1), m = j([]), f = j(0), b =
|
|
5987
|
+
const { map: e, ready: t } = Ke(), n = ct(), l = dt(), r = j(null), s = j(null), i = j(null), a = j(!1), m = j([]), f = j(0), b = R(() => m.value.length), u = R(() => a.value || !!r.value || !!i.value);
|
|
5988
5988
|
let g = null, d = !1;
|
|
5989
5989
|
function y() {
|
|
5990
5990
|
r.value = null, s.value = null, i.value = null, a.value = !1, m.value = [], f.value = 0;
|
|
@@ -6014,22 +6014,22 @@ function qp() {
|
|
|
6014
6014
|
y(), B(null);
|
|
6015
6015
|
return;
|
|
6016
6016
|
}
|
|
6017
|
-
m.value = M, f.value = 0,
|
|
6017
|
+
m.value = M, f.value = 0, C(f.value);
|
|
6018
6018
|
}
|
|
6019
|
-
function
|
|
6019
|
+
function C(Z) {
|
|
6020
6020
|
const D = m.value[Z];
|
|
6021
6021
|
if (!D) return;
|
|
6022
6022
|
f.value = Z;
|
|
6023
6023
|
const M = Le(D.source);
|
|
6024
|
-
|
|
6024
|
+
P(D, M == null ? void 0 : M.card);
|
|
6025
6025
|
}
|
|
6026
6026
|
function I() {
|
|
6027
|
-
f.value >= m.value.length - 1 ||
|
|
6027
|
+
f.value >= m.value.length - 1 || C(f.value + 1);
|
|
6028
6028
|
}
|
|
6029
6029
|
function O() {
|
|
6030
|
-
f.value <= 0 ||
|
|
6030
|
+
f.value <= 0 || C(f.value - 1);
|
|
6031
6031
|
}
|
|
6032
|
-
async function
|
|
6032
|
+
async function P(Z, D) {
|
|
6033
6033
|
var _, A, L, N;
|
|
6034
6034
|
if (!((_ = Z == null ? void 0 : Z.properties) != null && _.id)) return;
|
|
6035
6035
|
const M = new URLSearchParams();
|
|
@@ -6080,13 +6080,13 @@ function qp() {
|
|
|
6080
6080
|
const Z = Array.isArray(n.query.info) ? n.query.info[0] : n.query.info;
|
|
6081
6081
|
return typeof Z != "string" ? null : Z.trim() || null;
|
|
6082
6082
|
}
|
|
6083
|
-
function
|
|
6083
|
+
function $(Z) {
|
|
6084
6084
|
var _, A;
|
|
6085
6085
|
const D = (Z == null ? void 0 : Z.source) ?? ((_ = Z == null ? void 0 : Z.layer) == null ? void 0 : _.id), M = (A = Z == null ? void 0 : Z.properties) == null ? void 0 : A.id;
|
|
6086
6086
|
return !D || M === void 0 || M === null ? null : `${D},${M}`.trim() || null;
|
|
6087
6087
|
}
|
|
6088
6088
|
function B(Z) {
|
|
6089
|
-
const D =
|
|
6089
|
+
const D = $(Z), M = E();
|
|
6090
6090
|
if (D === M) return;
|
|
6091
6091
|
const w = { ...n.query };
|
|
6092
6092
|
D ? w.info = D : delete w.info, l.push({ query: w }).catch(() => {
|
|
@@ -6097,7 +6097,7 @@ function qp() {
|
|
|
6097
6097
|
y();
|
|
6098
6098
|
return;
|
|
6099
6099
|
}
|
|
6100
|
-
if (Z ===
|
|
6100
|
+
if (Z === $(s.value))
|
|
6101
6101
|
return;
|
|
6102
6102
|
const [D, M] = Z.split(","), w = D == null ? void 0 : D.trim(), _ = M == null ? void 0 : M.trim();
|
|
6103
6103
|
if (!w || !_) {
|
|
@@ -6112,7 +6112,7 @@ function qp() {
|
|
|
6112
6112
|
};
|
|
6113
6113
|
m.value = [A], f.value = 0;
|
|
6114
6114
|
const L = Le(w);
|
|
6115
|
-
await
|
|
6115
|
+
await P(A, L == null ? void 0 : L.card);
|
|
6116
6116
|
} finally {
|
|
6117
6117
|
d = !1;
|
|
6118
6118
|
}
|
|
@@ -6120,7 +6120,7 @@ function qp() {
|
|
|
6120
6120
|
return te(
|
|
6121
6121
|
() => E(),
|
|
6122
6122
|
(Z) => {
|
|
6123
|
-
Z !==
|
|
6123
|
+
Z !== $(s.value) && (d = !0, K(Z).finally(() => {
|
|
6124
6124
|
d = !1;
|
|
6125
6125
|
}));
|
|
6126
6126
|
}
|
|
@@ -6138,7 +6138,7 @@ function qp() {
|
|
|
6138
6138
|
};
|
|
6139
6139
|
}
|
|
6140
6140
|
function Hp() {
|
|
6141
|
-
const { map: e, ready: t } = Ke(), n = j([]), l = j(0), r = j(0), s = j(!1), i = j(null), a = j({}), m = j(null), f = j([]), b =
|
|
6141
|
+
const { map: e, ready: t } = Ke(), n = j([]), l = j(0), r = j(0), s = j(!1), i = j(null), a = j({}), m = j(null), f = j([]), b = R(() => n.value[r.value] || null), u = R(() => n.value.length > 0);
|
|
6142
6142
|
let g = null;
|
|
6143
6143
|
const d = () => {
|
|
6144
6144
|
g == null || g.remove(), g = null;
|
|
@@ -6152,18 +6152,18 @@ function Hp() {
|
|
|
6152
6152
|
opacity: 0.95
|
|
6153
6153
|
}), h = (E) => Number(E.toFixed(5)), p = async (E) => {
|
|
6154
6154
|
if (await t(), !e.value) return;
|
|
6155
|
-
const
|
|
6156
|
-
|
|
6155
|
+
const $ = y(E);
|
|
6156
|
+
$ && (d(), g = Le(
|
|
6157
6157
|
"feature-highlight",
|
|
6158
6158
|
{
|
|
6159
|
-
source: { type: "geojson", data:
|
|
6159
|
+
source: { type: "geojson", data: $ },
|
|
6160
6160
|
style: v()
|
|
6161
6161
|
},
|
|
6162
6162
|
e
|
|
6163
6163
|
));
|
|
6164
|
-
},
|
|
6164
|
+
}, C = async (E, $, B) => {
|
|
6165
6165
|
var D, M;
|
|
6166
|
-
const [K, Z] = [h(E), h(
|
|
6166
|
+
const [K, Z] = [h(E), h($)];
|
|
6167
6167
|
m.value = { x: K, y: Z }, f.value = B, s.value = !0, i.value = null, n.value = [], a.value = {}, r.value = 0;
|
|
6168
6168
|
try {
|
|
6169
6169
|
const w = B.map(async (z) => {
|
|
@@ -6194,7 +6194,7 @@ function Hp() {
|
|
|
6194
6194
|
n.value[E] = a.value[E];
|
|
6195
6195
|
return;
|
|
6196
6196
|
}
|
|
6197
|
-
const { x:
|
|
6197
|
+
const { x: $, y: B } = m.value, K = f.value.join(","), Z = `/api/map-info-point?x=${$}&y=${B}&index=${E}&layers=${K}`;
|
|
6198
6198
|
try {
|
|
6199
6199
|
s.value = !0;
|
|
6200
6200
|
const D = await fetch(Z);
|
|
@@ -6208,23 +6208,23 @@ function Hp() {
|
|
|
6208
6208
|
}
|
|
6209
6209
|
}, O = async () => {
|
|
6210
6210
|
r.value < l.value - 1 && (r.value += 1, a.value[r.value] || await I(r.value));
|
|
6211
|
-
},
|
|
6211
|
+
}, P = async () => {
|
|
6212
6212
|
r.value > 0 && (r.value -= 1, a.value[r.value] || await I(r.value));
|
|
6213
6213
|
}, T = () => {
|
|
6214
6214
|
n.value = [], l.value = 0, r.value = 0, a.value = {}, m.value = null, f.value = [], d();
|
|
6215
6215
|
};
|
|
6216
6216
|
te(r, async () => {
|
|
6217
|
-
var
|
|
6217
|
+
var $, B;
|
|
6218
6218
|
const E = b.value;
|
|
6219
6219
|
if (E) {
|
|
6220
|
-
const K = ((
|
|
6220
|
+
const K = (($ = E == null ? void 0 : E.data) == null ? void 0 : $.geom_4326) ?? ((B = E == null ? void 0 : E.data) == null ? void 0 : B.geom);
|
|
6221
6221
|
await p(K);
|
|
6222
6222
|
}
|
|
6223
6223
|
});
|
|
6224
6224
|
let k = null;
|
|
6225
6225
|
return Me(async () => {
|
|
6226
6226
|
await t(), e.value && (k = async (E) => {
|
|
6227
|
-
const { lng:
|
|
6227
|
+
const { lng: $, lat: B } = E.lngLat, K = Le(), D = Object.entries(K).map(([M, w]) => {
|
|
6228
6228
|
var _, A, L, N;
|
|
6229
6229
|
return {
|
|
6230
6230
|
id: M,
|
|
@@ -6240,7 +6240,7 @@ function Hp() {
|
|
|
6240
6240
|
})()
|
|
6241
6241
|
};
|
|
6242
6242
|
}).filter((M) => M.service === "ogc" && M.visible).map((M) => M.id);
|
|
6243
|
-
D.length > 0 && await
|
|
6243
|
+
D.length > 0 && await C($, B, D);
|
|
6244
6244
|
}, e.value.on("dblclick", k));
|
|
6245
6245
|
}), Te(() => {
|
|
6246
6246
|
e.value && k && e.value.off("dblclick", k), d();
|
|
@@ -6253,7 +6253,7 @@ function Hp() {
|
|
|
6253
6253
|
error: i,
|
|
6254
6254
|
active: u,
|
|
6255
6255
|
next: O,
|
|
6256
|
-
prev:
|
|
6256
|
+
prev: P,
|
|
6257
6257
|
close: T
|
|
6258
6258
|
};
|
|
6259
6259
|
}
|
|
@@ -6274,10 +6274,10 @@ const Wo = /* @__PURE__ */ ie({
|
|
|
6274
6274
|
const u = Array.from(f).map((g) => g.charCodeAt(0).toString(16)).join("").slice(0, 8);
|
|
6275
6275
|
return u ? `layer-${u}` : "layer-temp";
|
|
6276
6276
|
}
|
|
6277
|
-
const s =
|
|
6277
|
+
const s = R(() => {
|
|
6278
6278
|
var f;
|
|
6279
6279
|
return ((f = n.id) == null ? void 0 : f.trim()) || r(n.title);
|
|
6280
|
-
}), i =
|
|
6280
|
+
}), i = R(() => n.buttonText || "Показати шар");
|
|
6281
6281
|
function a() {
|
|
6282
6282
|
return {
|
|
6283
6283
|
id: s.value,
|
|
@@ -6329,8 +6329,8 @@ function Zp(e) {
|
|
|
6329
6329
|
}
|
|
6330
6330
|
function ro(e) {
|
|
6331
6331
|
function t(s, i = {}, a, m) {
|
|
6332
|
-
var
|
|
6333
|
-
const f = zn(s == null ? void 0 : s.id), b = ((
|
|
6332
|
+
var C, I;
|
|
6333
|
+
const f = zn(s == null ? void 0 : s.id), b = ((C = s == null ? void 0 : s.title) == null ? void 0 : C.trim()) || f, u = ((I = s == null ? void 0 : s.url) == null ? void 0 : I.trim()) || "";
|
|
6334
6334
|
if (!f || !u) return;
|
|
6335
6335
|
const g = Wp(u, i);
|
|
6336
6336
|
if (!g) return;
|
|
@@ -6362,8 +6362,8 @@ function ro(e) {
|
|
|
6362
6362
|
beforeId: p
|
|
6363
6363
|
}, d);
|
|
6364
6364
|
} catch (O) {
|
|
6365
|
-
const
|
|
6366
|
-
if (!(typeof
|
|
6365
|
+
const P = (O == null ? void 0 : O.message) ?? "";
|
|
6366
|
+
if (!(typeof P == "string" && P.includes("Map provider"))) throw O;
|
|
6367
6367
|
return;
|
|
6368
6368
|
}
|
|
6369
6369
|
at.value = [
|
|
@@ -6455,7 +6455,7 @@ const Gp = {
|
|
|
6455
6455
|
},
|
|
6456
6456
|
setup(e) {
|
|
6457
6457
|
var cn, vo;
|
|
6458
|
-
const t = e, n = qp(), l = Hp(), r =
|
|
6458
|
+
const t = e, n = qp(), l = Hp(), r = R(() => l.active.value), s = R(() => r.value || n.isOpen.value), i = R(() => r.value ? l.loading.value : n.cardLoading.value), a = R(() => r.value ? l.error.value : n.cardError.value), m = R(() => {
|
|
6459
6459
|
var S, F;
|
|
6460
6460
|
return r.value ? ((S = l.current.value) == null ? void 0 : S.html) || null : ((F = n.card.value) == null ? void 0 : F.html) || null;
|
|
6461
6461
|
}), f = Ke(), b = ct(), {
|
|
@@ -6467,27 +6467,27 @@ const Gp = {
|
|
|
6467
6467
|
function v(S) {
|
|
6468
6468
|
window.dispatchEvent(new CustomEvent(Cv, { detail: S }));
|
|
6469
6469
|
}
|
|
6470
|
-
const h =
|
|
6470
|
+
const h = R(() => {
|
|
6471
6471
|
var S;
|
|
6472
6472
|
return ((S = n.cardFeature.value) == null ? void 0 : S.source) ?? null;
|
|
6473
|
-
}), p =
|
|
6473
|
+
}), p = R(() => h.value ? `map-card:${h.value}` : "map-card"), C = R(() => {
|
|
6474
6474
|
var ae, me;
|
|
6475
6475
|
const S = n.cardFeature.value, F = (S == null ? void 0 : S.source) || ((ae = S == null ? void 0 : S.layer) == null ? void 0 : ae.id), H = ((me = S == null ? void 0 : S.properties) == null ? void 0 : me.id) ?? (S == null ? void 0 : S.id);
|
|
6476
6476
|
return F && H != null ? `${F}:${H}` : null;
|
|
6477
|
-
}), I = j(null), O = j(null),
|
|
6477
|
+
}), I = j(null), O = j(null), P = j(0), T = /* @__PURE__ */ new Map();
|
|
6478
6478
|
function k() {
|
|
6479
6479
|
if (typeof window > "u") return null;
|
|
6480
6480
|
const F = (window.location.pathname || "").match(/\/maps?\/([^/]+)/i);
|
|
6481
6481
|
return F && F[1] ? F[1] : null;
|
|
6482
6482
|
}
|
|
6483
|
-
const E =
|
|
6483
|
+
const E = R(() => {
|
|
6484
6484
|
const S = typeof t.mapId == "string" ? t.mapId.trim() : "";
|
|
6485
6485
|
if (S.length) return S;
|
|
6486
6486
|
const F = typeof b.params.slug == "string" ? b.params.slug.trim() : "";
|
|
6487
6487
|
if (F.length) return F;
|
|
6488
6488
|
const H = typeof b.query.slug == "string" ? b.query.slug.trim() : "";
|
|
6489
6489
|
return H.length ? H : k();
|
|
6490
|
-
}),
|
|
6490
|
+
}), $ = j(null), B = j(null), K = /* @__PURE__ */ new Map();
|
|
6491
6491
|
function Z(S) {
|
|
6492
6492
|
const F = S.normalize("NFKD").replace(/[\u0300-\u036f]/g, "").replace(/[^a-zA-Z0-9]+/g, "-").replace(/^-+|-+$/g, "").toLowerCase();
|
|
6493
6493
|
if (F) return F;
|
|
@@ -6529,20 +6529,20 @@ const Gp = {
|
|
|
6529
6529
|
const F = [], H = /<LayerSwitcher\b([^>]*)>([\s\S]*?)<\/LayerSwitcher>/gi;
|
|
6530
6530
|
let ae = 0, me;
|
|
6531
6531
|
const _e = /* @__PURE__ */ new Set(), ze = (Ne) => {
|
|
6532
|
-
let
|
|
6533
|
-
for (; _e.has(
|
|
6534
|
-
|
|
6535
|
-
return _e.add(
|
|
6532
|
+
let Pe = Ne, Qe = 2;
|
|
6533
|
+
for (; _e.has(Pe); )
|
|
6534
|
+
Pe = `${Ne}-${Qe}`, Qe += 1;
|
|
6535
|
+
return _e.add(Pe), Pe;
|
|
6536
6536
|
};
|
|
6537
6537
|
for (; (me = H.exec(S)) !== null; ) {
|
|
6538
|
-
const [Ne,
|
|
6539
|
-
if (
|
|
6540
|
-
const yo = S.slice(ae,
|
|
6538
|
+
const [Ne, Pe = "", Qe = ""] = me, Re = me.index;
|
|
6539
|
+
if (Re > ae) {
|
|
6540
|
+
const yo = S.slice(ae, Re);
|
|
6541
6541
|
yo.trim().length && F.push({ type: "html", content: yo });
|
|
6542
6542
|
}
|
|
6543
|
-
const it = M(
|
|
6543
|
+
const it = M(Pe), ot = w(it, ["title"]) || "Тимчасовий шар", $t = D(w(it, ["url"]));
|
|
6544
6544
|
if (!$t) {
|
|
6545
|
-
F.push({ type: "html", content: Ne }), ae =
|
|
6545
|
+
F.push({ type: "html", content: Ne }), ae = Re + Ne.length;
|
|
6546
6546
|
continue;
|
|
6547
6547
|
}
|
|
6548
6548
|
const Gt = w(it, ["id"]), Cn = w(it, ["button-text", "buttonText", "show", "show-label", "showLabel"]), pl = _(w(it, ["tile-size", "tileSize"])), vl = _(w(it, ["minzoom", "minZoom"])), ml = _(w(it, ["maxzoom", "maxZoom"])), gl = _(w(it, ["opacity"])), yl = Gt || Z(`${ot}-${$t}`) || Z(ot), mo = ze(yl || `layer-${F.length + 1}`), An = Qe.trim(), go = /<[^>]+>/.test(An), hl = go ? An : null, Ln = go ? null : An, xl = Cn && Cn.trim().length ? Cn.trim() : Ln && Ln.trim().length ? Ln.trim() : void 0;
|
|
@@ -6564,7 +6564,7 @@ const Gp = {
|
|
|
6564
6564
|
buttonText: xl
|
|
6565
6565
|
},
|
|
6566
6566
|
slotText: hl
|
|
6567
|
-
}), ae =
|
|
6567
|
+
}), ae = Re + Ne.length;
|
|
6568
6568
|
}
|
|
6569
6569
|
if (ae < S.length) {
|
|
6570
6570
|
const Ne = S.slice(ae);
|
|
@@ -6585,19 +6585,19 @@ const Gp = {
|
|
|
6585
6585
|
opacity: S.opacity
|
|
6586
6586
|
};
|
|
6587
6587
|
}
|
|
6588
|
-
const N =
|
|
6588
|
+
const N = R(() => {
|
|
6589
6589
|
if (r.value && l.current.value)
|
|
6590
6590
|
return l.current.value.data ?? {};
|
|
6591
6591
|
const S = n.card.value;
|
|
6592
6592
|
return (S == null ? void 0 : S.rows) ?? {};
|
|
6593
|
-
}), z =
|
|
6593
|
+
}), z = R(() => {
|
|
6594
6594
|
if (r.value && l.current.value)
|
|
6595
6595
|
return l.current.value.fields ?? [];
|
|
6596
6596
|
const S = n.card.value;
|
|
6597
6597
|
if (!S) return [];
|
|
6598
6598
|
const F = Array.isArray(S.columns) ? S.columns : [];
|
|
6599
6599
|
return F.length ? F : Array.isArray(S.fields) ? S.fields : [];
|
|
6600
|
-
}), U =
|
|
6600
|
+
}), U = R(() => {
|
|
6601
6601
|
const S = z.value;
|
|
6602
6602
|
if (!S.length) return [];
|
|
6603
6603
|
const F = N.value;
|
|
@@ -6633,9 +6633,9 @@ const Gp = {
|
|
|
6633
6633
|
const S = (vo = (cn = window.localStorage) == null ? void 0 : cn.getItem) == null ? void 0 : vo.call(cn, "cardHideEmpty"), F = typeof S == "string" && S.toLowerCase() === "true";
|
|
6634
6634
|
ce.value = F, pe.value = !F;
|
|
6635
6635
|
}
|
|
6636
|
-
const Se =
|
|
6636
|
+
const Se = R(
|
|
6637
6637
|
() => U.value.filter((S) => ee(S.value)).length
|
|
6638
|
-
), Ce =
|
|
6638
|
+
), Ce = R(() => ce.value && !pe.value ? U.value.filter((S) => !ee(S.value)) : U.value);
|
|
6639
6639
|
function Ae(S) {
|
|
6640
6640
|
const F = typeof S == "string" ? S : "";
|
|
6641
6641
|
if (!F.length) return { sanitized: "", hiddenCount: 0 };
|
|
@@ -6644,46 +6644,46 @@ const Gp = {
|
|
|
6644
6644
|
const ae = new DOMParser().parseFromString(F, "text/html");
|
|
6645
6645
|
let me = 0;
|
|
6646
6646
|
return ae.querySelectorAll("dd").forEach((_e) => {
|
|
6647
|
-
var
|
|
6648
|
-
const ze = ((
|
|
6647
|
+
var Pe;
|
|
6648
|
+
const ze = ((Pe = _e.textContent) == null ? void 0 : Pe.trim()) ?? "", Ne = _e.closest("div");
|
|
6649
6649
|
if (ee(ze)) {
|
|
6650
6650
|
me += 1, Ne ? Ne.remove() : _e.remove();
|
|
6651
6651
|
return;
|
|
6652
6652
|
}
|
|
6653
6653
|
}), { sanitized: ae.body.innerHTML, hiddenCount: me };
|
|
6654
6654
|
}
|
|
6655
|
-
const Y =
|
|
6655
|
+
const Y = R(() => Ae(m.value)), J = R(() => m.value ? Y.value.hiddenCount : 0), Q = R(() => Se.value + J.value), ve = R(
|
|
6656
6656
|
() => {
|
|
6657
6657
|
var S;
|
|
6658
6658
|
return ce.value && !pe.value && !!((S = m.value) != null && S.trim());
|
|
6659
6659
|
}
|
|
6660
|
-
), ye =
|
|
6660
|
+
), ye = R(
|
|
6661
6661
|
() => ce.value && Q.value > 0
|
|
6662
|
-
), $e =
|
|
6662
|
+
), $e = R(
|
|
6663
6663
|
() => pe.value ? "Приховати пусті значення" : "Показати пусті значення"
|
|
6664
|
-
), Ie =
|
|
6664
|
+
), Ie = R(() => pe.value ? zl : jl);
|
|
6665
6665
|
function ke() {
|
|
6666
6666
|
pe.value = !pe.value;
|
|
6667
6667
|
}
|
|
6668
|
-
const nt =
|
|
6668
|
+
const nt = R(() => {
|
|
6669
6669
|
const S = ve.value ? Y.value.sanitized : m.value ?? "";
|
|
6670
6670
|
return A(S);
|
|
6671
|
-
}), q =
|
|
6671
|
+
}), q = R(() => nt.value.filter((S) => S.type === "layer"));
|
|
6672
6672
|
function re(S) {
|
|
6673
6673
|
return Array.isArray(S) ? S.map((F, H) => {
|
|
6674
|
-
const ae = D(typeof (F == null ? void 0 : F.url) == "string" ? F.url : ""), me = typeof (F == null ? void 0 : F.geohub) == "string" && F.geohub.trim().length ? `/api-hub/tms/${F.geohub.trim()}/ua/{z}/{x}/{y}.png` : "", _e = ((F == null ? void 0 : F.name) || (F == null ? void 0 : F.title) || (F == null ? void 0 : F.label) || `Шар ${H + 1}`).toString(), ze = (F == null ? void 0 : F.id) != null ? String(F.id) : Z(`${_e}-${H + 1}`), Ne = (F == null ? void 0 : F.buttonText) || (F == null ? void 0 : F.button_text) || null,
|
|
6674
|
+
const ae = D(typeof (F == null ? void 0 : F.url) == "string" ? F.url : ""), me = typeof (F == null ? void 0 : F.geohub) == "string" && F.geohub.trim().length ? `/api-hub/tms/${F.geohub.trim()}/ua/{z}/{x}/{y}.png` : "", _e = ((F == null ? void 0 : F.name) || (F == null ? void 0 : F.title) || (F == null ? void 0 : F.label) || `Шар ${H + 1}`).toString(), ze = (F == null ? void 0 : F.id) != null ? String(F.id) : Z(`${_e}-${H + 1}`), Ne = (F == null ? void 0 : F.buttonText) || (F == null ? void 0 : F.button_text) || null, Pe = (F == null ? void 0 : F.description) || (F == null ? void 0 : F.subtitle) || null, Qe = ae || D(me) || "";
|
|
6675
6675
|
if (!Qe) return null;
|
|
6676
|
-
const
|
|
6676
|
+
const Re = {
|
|
6677
6677
|
id: ze,
|
|
6678
6678
|
title: _e,
|
|
6679
6679
|
url: Qe,
|
|
6680
|
-
subtitle:
|
|
6680
|
+
subtitle: Pe,
|
|
6681
6681
|
buttonText: Ne || void 0
|
|
6682
6682
|
};
|
|
6683
|
-
return typeof (F == null ? void 0 : F.tileSize) == "number" && (
|
|
6683
|
+
return typeof (F == null ? void 0 : F.tileSize) == "number" && (Re.tileSize = F.tileSize), typeof (F == null ? void 0 : F.tile_size) == "number" && (Re.tileSize = F.tile_size), typeof (F == null ? void 0 : F.minzoom) == "number" && (Re.minzoom = F.minzoom), typeof (F == null ? void 0 : F.maxzoom) == "number" && (Re.maxzoom = F.maxzoom), typeof (F == null ? void 0 : F.opacity) == "number" && (Re.opacity = F.opacity), Re;
|
|
6684
6684
|
}).filter(Boolean) : [];
|
|
6685
6685
|
}
|
|
6686
|
-
const xe =
|
|
6686
|
+
const xe = R(() => {
|
|
6687
6687
|
var ae, me;
|
|
6688
6688
|
const S = n.card.value, F = l.current.value, H = [
|
|
6689
6689
|
(ae = S == null ? void 0 : S.rows) == null ? void 0 : ae.layers,
|
|
@@ -6697,11 +6697,11 @@ const Gp = {
|
|
|
6697
6697
|
return ze;
|
|
6698
6698
|
}
|
|
6699
6699
|
return [];
|
|
6700
|
-
}), je =
|
|
6700
|
+
}), je = R(
|
|
6701
6701
|
() => nt.value.length > 0 || U.value.length > 0 || xe.value.length > 0
|
|
6702
|
-
), fe =
|
|
6702
|
+
), fe = R(() => !n.cardLoading.value && !!n.card.value);
|
|
6703
6703
|
function Fe() {
|
|
6704
|
-
const S = {}, F =
|
|
6704
|
+
const S = {}, F = $.value;
|
|
6705
6705
|
if (F && typeof F == "object" && Object.entries(F).forEach(([H, ae]) => {
|
|
6706
6706
|
typeof ae == "string" && (S[H] = ae);
|
|
6707
6707
|
}), h.value && (S.layer = h.value), !S.geohub) {
|
|
@@ -6713,19 +6713,19 @@ const Gp = {
|
|
|
6713
6713
|
async function Xe() {
|
|
6714
6714
|
const S = h.value;
|
|
6715
6715
|
if (!S)
|
|
6716
|
-
return
|
|
6717
|
-
if (B.value === S &&
|
|
6718
|
-
return
|
|
6716
|
+
return $.value = null, B.value = null, null;
|
|
6717
|
+
if (B.value === S && $.value)
|
|
6718
|
+
return $.value;
|
|
6719
6719
|
if (K.has(S)) {
|
|
6720
6720
|
const F = K.get(S);
|
|
6721
|
-
return
|
|
6721
|
+
return $.value = F, B.value = S, F;
|
|
6722
6722
|
}
|
|
6723
6723
|
try {
|
|
6724
6724
|
const F = await fetch(`/api/gis-service/${encodeURIComponent(S)}`);
|
|
6725
6725
|
if (!F.ok)
|
|
6726
6726
|
return null;
|
|
6727
6727
|
const H = await F.json();
|
|
6728
|
-
return K.set(S, H),
|
|
6728
|
+
return K.set(S, H), $.value = H, B.value = S, H;
|
|
6729
6729
|
} catch {
|
|
6730
6730
|
return null;
|
|
6731
6731
|
}
|
|
@@ -6766,7 +6766,7 @@ const Gp = {
|
|
|
6766
6766
|
te(
|
|
6767
6767
|
h,
|
|
6768
6768
|
(S, F) => {
|
|
6769
|
-
S !== F && (
|
|
6769
|
+
S !== F && ($.value = null, B.value = null);
|
|
6770
6770
|
}
|
|
6771
6771
|
);
|
|
6772
6772
|
const {
|
|
@@ -6774,7 +6774,7 @@ const Gp = {
|
|
|
6774
6774
|
prev: kt,
|
|
6775
6775
|
count: yt,
|
|
6776
6776
|
index: pt
|
|
6777
|
-
} = l, Ft =
|
|
6777
|
+
} = l, Ft = R(() => n.count.value), kn = R(() => n.index.value), so = R(() => Ft.value > 1), io = R(() => r.value ? yt.value : Ft.value), ao = R(() => r.value ? pt.value : kn.value), uo = n.next, co = n.prev;
|
|
6778
6778
|
function It() {
|
|
6779
6779
|
const S = gt();
|
|
6780
6780
|
S && (d(S), v({ action: "clear", owner: S }), I.value = null);
|
|
@@ -6799,7 +6799,7 @@ const Gp = {
|
|
|
6799
6799
|
S && F && S !== F && It();
|
|
6800
6800
|
}), te(pt, (S, F) => {
|
|
6801
6801
|
S !== F && It();
|
|
6802
|
-
}), te(
|
|
6802
|
+
}), te(C, (S, F) => {
|
|
6803
6803
|
S && F && S !== F && It();
|
|
6804
6804
|
});
|
|
6805
6805
|
function ll(S) {
|
|
@@ -6865,13 +6865,13 @@ const Gp = {
|
|
|
6865
6865
|
}
|
|
6866
6866
|
}
|
|
6867
6867
|
function al(S) {
|
|
6868
|
-
var Ne,
|
|
6868
|
+
var Ne, Pe;
|
|
6869
6869
|
if (!S) return null;
|
|
6870
|
-
const F = S.type === "FeatureCollection" ? (
|
|
6870
|
+
const F = S.type === "FeatureCollection" ? (Pe = (Ne = S.features) == null ? void 0 : Ne[0]) == null ? void 0 : Pe.geometry : S.type === "Feature" ? S.geometry : S, H = [];
|
|
6871
6871
|
if (un(F, H), !H.length) return null;
|
|
6872
6872
|
let ae = H[0][0], me = H[0][0], _e = H[0][1], ze = H[0][1];
|
|
6873
|
-
return H.forEach(([Qe,
|
|
6874
|
-
Qe < ae && (ae = Qe), Qe > me && (me = Qe),
|
|
6873
|
+
return H.forEach(([Qe, Re]) => {
|
|
6874
|
+
Qe < ae && (ae = Qe), Qe > me && (me = Qe), Re < _e && (_e = Re), Re > ze && (ze = Re);
|
|
6875
6875
|
}), [
|
|
6876
6876
|
(ae + me) / 2,
|
|
6877
6877
|
(_e + ze) / 2
|
|
@@ -6920,10 +6920,10 @@ const Gp = {
|
|
|
6920
6920
|
ze();
|
|
6921
6921
|
const Ne = () => ze();
|
|
6922
6922
|
F.once("styledata", Ne);
|
|
6923
|
-
const
|
|
6924
|
-
ze(), F.off("styledata", Ne), F.off("idle",
|
|
6923
|
+
const Pe = () => {
|
|
6924
|
+
ze(), F.off("styledata", Ne), F.off("idle", Pe);
|
|
6925
6925
|
};
|
|
6926
|
-
F.on("idle",
|
|
6926
|
+
F.on("idle", Pe);
|
|
6927
6927
|
}
|
|
6928
6928
|
}
|
|
6929
6929
|
function dl(S) {
|
|
@@ -6932,7 +6932,7 @@ const Gp = {
|
|
|
6932
6932
|
return `${F}:${H}`;
|
|
6933
6933
|
}
|
|
6934
6934
|
async function fl(S) {
|
|
6935
|
-
var _e, ze, Ne,
|
|
6935
|
+
var _e, ze, Ne, Pe, Qe;
|
|
6936
6936
|
if (!S) return null;
|
|
6937
6937
|
const F = ll(S);
|
|
6938
6938
|
if (F) return F;
|
|
@@ -6941,13 +6941,13 @@ const Gp = {
|
|
|
6941
6941
|
const ae = dl(S);
|
|
6942
6942
|
if (T.has(ae))
|
|
6943
6943
|
return T.get(ae);
|
|
6944
|
-
const me = [E.value, S == null ? void 0 : S.source, (ze = S == null ? void 0 : S.layer) == null ? void 0 : ze.id].map((
|
|
6945
|
-
for (const
|
|
6944
|
+
const me = [E.value, S == null ? void 0 : S.source, (ze = S == null ? void 0 : S.layer) == null ? void 0 : ze.id].map((Re) => typeof Re == "string" ? Re.trim() : "").filter(Boolean);
|
|
6945
|
+
for (const Re of me)
|
|
6946
6946
|
try {
|
|
6947
|
-
const it = await fetch(`/api/map-features/${encodeURIComponent(
|
|
6947
|
+
const it = await fetch(`/api/map-features/${encodeURIComponent(Re)}/${encodeURIComponent(String(H))}`);
|
|
6948
6948
|
if (!it.ok)
|
|
6949
6949
|
continue;
|
|
6950
|
-
const ot = await it.json(), $t = ((Ne = ot == null ? void 0 : ot.data) == null ? void 0 : Ne.geom) || ((
|
|
6950
|
+
const ot = await it.json(), $t = ((Ne = ot == null ? void 0 : ot.data) == null ? void 0 : Ne.geom) || ((Pe = ot == null ? void 0 : ot.data) == null ? void 0 : Pe.geometry) || ((Qe = ot == null ? void 0 : ot.data) == null ? void 0 : Qe.geom_4326) || null, Gt = typeof $t == "string" ? JSON.parse($t) : $t;
|
|
6951
6951
|
if (Gt)
|
|
6952
6952
|
return T.set(ae, Gt), Gt;
|
|
6953
6953
|
} catch {
|
|
@@ -6956,8 +6956,8 @@ const Gp = {
|
|
|
6956
6956
|
return null;
|
|
6957
6957
|
}
|
|
6958
6958
|
async function Zt(S) {
|
|
6959
|
-
|
|
6960
|
-
const F =
|
|
6959
|
+
P.value += 1;
|
|
6960
|
+
const F = P.value;
|
|
6961
6961
|
if (!S || r.value) {
|
|
6962
6962
|
ht();
|
|
6963
6963
|
return;
|
|
@@ -6967,7 +6967,7 @@ const Gp = {
|
|
|
6967
6967
|
return;
|
|
6968
6968
|
}
|
|
6969
6969
|
const H = await fl(S);
|
|
6970
|
-
if (F ===
|
|
6970
|
+
if (F === P.value) {
|
|
6971
6971
|
if (!H) {
|
|
6972
6972
|
ht();
|
|
6973
6973
|
return;
|
|
@@ -7199,12 +7199,12 @@ const Gp = {
|
|
|
7199
7199
|
} : Array.isArray(y.features) ? { type: "FeatureCollection", features: y.features } : y.geometry ? a(y.geometry) : null;
|
|
7200
7200
|
}
|
|
7201
7201
|
function m(y) {
|
|
7202
|
-
var p,
|
|
7202
|
+
var p, C, I;
|
|
7203
7203
|
return {
|
|
7204
7204
|
type: "line",
|
|
7205
7205
|
color: "#8e4484",
|
|
7206
7206
|
width: 2,
|
|
7207
|
-
opacity: ((((I = (
|
|
7207
|
+
opacity: ((((I = (C = (p = y == null ? void 0 : y.features) == null ? void 0 : p[0]) == null ? void 0 : C.geometry) == null ? void 0 : I.type) || "").includes("Polygon"), 0.95)
|
|
7208
7208
|
};
|
|
7209
7209
|
}
|
|
7210
7210
|
async function f(y) {
|
|
@@ -7214,8 +7214,8 @@ const Gp = {
|
|
|
7214
7214
|
}
|
|
7215
7215
|
async function b(y, v) {
|
|
7216
7216
|
if (y) {
|
|
7217
|
-
const h = /^https?:\/\//.test(y) ? y : new URL(y, location.origin).toString(), p = await f(h).catch(() => null),
|
|
7218
|
-
if (
|
|
7217
|
+
const h = /^https?:\/\//.test(y) ? y : new URL(y, location.origin).toString(), p = await f(h).catch(() => null), C = a(p);
|
|
7218
|
+
if (C) return C;
|
|
7219
7219
|
}
|
|
7220
7220
|
if (v) {
|
|
7221
7221
|
const h = await f(`https://data.gki.com.ua/api-user/atu/${encodeURIComponent(v)}`).catch(() => null), p = a(h);
|
|
@@ -7224,14 +7224,14 @@ const Gp = {
|
|
|
7224
7224
|
return null;
|
|
7225
7225
|
}
|
|
7226
7226
|
async function u() {
|
|
7227
|
-
var p,
|
|
7227
|
+
var p, C, I, O;
|
|
7228
7228
|
if (!t.layerId || !l.value) {
|
|
7229
7229
|
i();
|
|
7230
7230
|
return;
|
|
7231
7231
|
}
|
|
7232
7232
|
typeof r == "function" && await r().catch(() => {
|
|
7233
7233
|
});
|
|
7234
|
-
const y = t.boundary ?? ((p = t.settingsMap) == null ? void 0 : p.boundary) ?? ((
|
|
7234
|
+
const y = t.boundary ?? ((p = t.settingsMap) == null ? void 0 : p.boundary) ?? ((C = n == null ? void 0 : n.map) == null ? void 0 : C.boundary) ?? null, v = t.katottg ?? ((I = t.settingsMap) == null ? void 0 : I.katottg) ?? ((O = n == null ? void 0 : n.map) == null ? void 0 : O.katottg) ?? null;
|
|
7235
7235
|
if (!y && !v) {
|
|
7236
7236
|
i();
|
|
7237
7237
|
return;
|
|
@@ -7281,9 +7281,9 @@ const Gp = {
|
|
|
7281
7281
|
if (y && typeof y == "object") {
|
|
7282
7282
|
const v = y, h = v.lng ?? v.lon ?? v.long ?? v.x, p = v.lat ?? v.y;
|
|
7283
7283
|
if (h != null && p != null) {
|
|
7284
|
-
const
|
|
7285
|
-
if (!Number.isNaN(
|
|
7286
|
-
return [
|
|
7284
|
+
const C = Number(h), I = Number(p);
|
|
7285
|
+
if (!Number.isNaN(C) && !Number.isNaN(I))
|
|
7286
|
+
return [C, I];
|
|
7287
7287
|
}
|
|
7288
7288
|
}
|
|
7289
7289
|
if (typeof y == "string") {
|
|
@@ -7321,10 +7321,10 @@ const Gp = {
|
|
|
7321
7321
|
},
|
|
7322
7322
|
{ immediate: !0 }
|
|
7323
7323
|
);
|
|
7324
|
-
const f =
|
|
7324
|
+
const f = R(() => {
|
|
7325
7325
|
var y;
|
|
7326
7326
|
return ((y = t.targetLabel) == null ? void 0 : y.trim()) || "Точка";
|
|
7327
|
-
}), b =
|
|
7327
|
+
}), b = R(() => t.targetAriaLabel || "Перейти до точки"), u = R(() => !!i.value);
|
|
7328
7328
|
Me(async () => {
|
|
7329
7329
|
await (l == null ? void 0 : l());
|
|
7330
7330
|
const y = n.value;
|
|
@@ -7364,7 +7364,7 @@ const Gp = {
|
|
|
7364
7364
|
class: "absolute right-full mr-3 px-1.5 py-0.5 bg-gray-700 text-white text-[0.75rem] font-medium rounded-md opacity-0 group-hover:opacity-100 group-focus-visible:opacity-100 pointer-events-none transition-opacity duration-200 whitespace-nowrap",
|
|
7365
7365
|
"aria-hidden": "true"
|
|
7366
7366
|
}, "Центр мапи", -1)),
|
|
7367
|
-
ne(oe(
|
|
7367
|
+
ne(oe(Rl), { class: "w-4 h-4" })
|
|
7368
7368
|
])),
|
|
7369
7369
|
u.value ? (c(), x("button", {
|
|
7370
7370
|
key: 1,
|
|
@@ -7375,33 +7375,33 @@ const Gp = {
|
|
|
7375
7375
|
onClick: Ue(d, ["stop"])
|
|
7376
7376
|
}, [
|
|
7377
7377
|
o("span", Tv, V(f.value), 1),
|
|
7378
|
-
ne(oe(
|
|
7378
|
+
ne(oe(Pl), { class: "w-4 h-4" })
|
|
7379
7379
|
], 8, Ev)) : W("", !0)
|
|
7380
7380
|
]));
|
|
7381
7381
|
}
|
|
7382
7382
|
}), Yn = /* @__PURE__ */ ge(Mv, [["__scopeId", "data-v-80ea583c"]]), Fv = { class: "flex h-screen bg-gradient-to-br from-slate-50 to-white" }, Iv = { class: "flex-1 relative overflow-hidden" }, jv = { class: "absolute top-0 left-0 w-full z-20" }, zv = { class: "flex items-center justify-between bg-white/80 backdrop-blur border-b border-gray-200 px-6 py-3 shadow-sm gap-4" }, Nv = { class: "flex items-center gap-3 h-[2.75rem]" }, Ov = { class: "font-semibold text-lg text-gray-800 line-clamp-1" }, Dv = {
|
|
7383
7383
|
key: 0,
|
|
7384
7384
|
class: "text-xs text-gray-500 truncate"
|
|
7385
|
-
},
|
|
7385
|
+
}, Rv = ["title"], Pv = { class: "w-full h-full bg-gradient-to-br from-sky-50 via-white to-blue-50 flex items-center justify-center relative pt-[64px]" }, Bv = { class: "relative w-full h-full" }, Vv = { style: { top: "17px", left: "230px", position: "absolute", "z-index": "1" } }, Uv = { class: "absolute top-4 left-4 z-20" }, qv = { class: "absolute top-[6.5rem] right-2 space-y-1 z-20" }, Hv = { class: "absolute bottom-4 left-4 z-20" }, Wv = { class: "w-[650px] bg-white border-l border-gray-100 flex flex-col overflow-hidden shadow-lg" }, Yv = { class: "flex-1 flex flex-col h-full" }, Zv = { class: "px-3 pt-3 pb-2 border-b border-gray-100" }, Gv = { class: "items-center justify-center text-muted-foreground grid w-full grid-cols-6 h-12 p-1 bg-gray-50 rounded-xl shadow-sm" }, Kv = ["aria-selected", "onClick"], Xv = { class: "leading-none" }, Jv = { class: "flex flex-col flex-1 overflow-y-hidden p-3" }, Qv = /* @__PURE__ */ ie({
|
|
7386
7386
|
__name: "service",
|
|
7387
7387
|
props: {
|
|
7388
7388
|
hideServiceKey: { type: Boolean, default: !1 }
|
|
7389
7389
|
},
|
|
7390
7390
|
setup(e) {
|
|
7391
7391
|
var Z, D;
|
|
7392
|
-
const t = ct(), n = dt(), { id: l } = t.params, r = j(null), s = j({}), i = j(null), a = ((D = (Z = Tt()) == null ? void 0 : Z.appContext.config.globalProperties) == null ? void 0 : D.$settings) || null, m = j(null), f = j(""), b = j([]), u = j([]), g = j([]), d = j("list"), y = j(""), v = j([]), h =
|
|
7392
|
+
const t = ct(), n = dt(), { id: l } = t.params, r = j(null), s = j({}), i = j(null), a = ((D = (Z = Tt()) == null ? void 0 : Z.appContext.config.globalProperties) == null ? void 0 : D.$settings) || null, m = j(null), f = j(""), b = j([]), u = j([]), g = j([]), d = j("list"), y = j(""), v = j([]), h = R(() => {
|
|
7393
7393
|
var M, w;
|
|
7394
7394
|
return ((M = i.value) == null ? void 0 : M.id) ?? ((w = i.value) == null ? void 0 : w.service_id) ?? null;
|
|
7395
|
-
}), p =
|
|
7395
|
+
}), p = R(() => {
|
|
7396
7396
|
const M = (a == null ? void 0 : a.map) || null, w = (M == null ? void 0 : M.boundary) ?? null, _ = (M == null ? void 0 : M.katottg) ?? null;
|
|
7397
7397
|
return !w && !_ ? null : { boundary: w, katottg: _ };
|
|
7398
|
-
}),
|
|
7398
|
+
}), C = [
|
|
7399
7399
|
{ key: "style", label: "Стиль", icon: Xr },
|
|
7400
7400
|
{ key: "popup", label: "Попап", icon: Lf },
|
|
7401
7401
|
{ key: "filter", label: "Фільтр", icon: Mf },
|
|
7402
7402
|
{ key: "legend", label: "Легенда", icon: xf },
|
|
7403
7403
|
{ key: "card", label: "Картка", icon: kf }
|
|
7404
|
-
], I =
|
|
7404
|
+
], I = C.map((M) => M.key), O = j("style");
|
|
7405
7405
|
Me(async () => {
|
|
7406
7406
|
const M = t.query.tab;
|
|
7407
7407
|
M && I.includes(M) && (O.value = M), await k();
|
|
@@ -7413,7 +7413,7 @@ const Gp = {
|
|
|
7413
7413
|
M && I.includes(M) && O.value !== M && (O.value = M);
|
|
7414
7414
|
}
|
|
7415
7415
|
);
|
|
7416
|
-
function
|
|
7416
|
+
function P(M) {
|
|
7417
7417
|
if (!M) return null;
|
|
7418
7418
|
try {
|
|
7419
7419
|
return JSON.parse(JSON.stringify(M));
|
|
@@ -7429,7 +7429,7 @@ const Gp = {
|
|
|
7429
7429
|
} catch (w) {
|
|
7430
7430
|
return console.warn("Failed to parse style yaml", w), null;
|
|
7431
7431
|
}
|
|
7432
|
-
return qn(
|
|
7432
|
+
return qn(P(M));
|
|
7433
7433
|
}
|
|
7434
7434
|
const k = async () => {
|
|
7435
7435
|
try {
|
|
@@ -7438,7 +7438,7 @@ const Gp = {
|
|
|
7438
7438
|
const w = await M.json();
|
|
7439
7439
|
s.value = w || {}, r.value = l;
|
|
7440
7440
|
const _ = T(w.style);
|
|
7441
|
-
i.value = w ? { ...w, style:
|
|
7441
|
+
i.value = w ? { ...w, style: P(_) } : null, m.value = _, f.value = typeof (w == null ? void 0 : w.style) == "string" ? w.style : _ ? Bo.dump(_) : "", u.value = (w == null ? void 0 : w.popup) || [], d.value = w.card_mode === "html" ? "html" : "list", g.value = w.card, y.value = w.html, b.value = (w == null ? void 0 : w.legend) || [], v.value = (w == null ? void 0 : w.filters) || [];
|
|
7442
7442
|
} catch (M) {
|
|
7443
7443
|
console.error("Failed to fetch map info", M);
|
|
7444
7444
|
}
|
|
@@ -7456,8 +7456,8 @@ const Gp = {
|
|
|
7456
7456
|
async function E(M, w) {
|
|
7457
7457
|
await B({ [M]: w }, M);
|
|
7458
7458
|
}
|
|
7459
|
-
function
|
|
7460
|
-
const M =
|
|
7459
|
+
function $() {
|
|
7460
|
+
const M = P(m.value);
|
|
7461
7461
|
i.value = i.value ? { ...i.value, style: M } : i.value;
|
|
7462
7462
|
}
|
|
7463
7463
|
async function B(M, w) {
|
|
@@ -7526,10 +7526,10 @@ const Gp = {
|
|
|
7526
7526
|
o("div", {
|
|
7527
7527
|
class: "max-w-xl text-xs text-gray-600 truncate",
|
|
7528
7528
|
title: (L = i.value) == null ? void 0 : L.description
|
|
7529
|
-
}, V((N = i.value) == null ? void 0 : N.description), 9,
|
|
7529
|
+
}, V((N = i.value) == null ? void 0 : N.description), 9, Rv)
|
|
7530
7530
|
])
|
|
7531
7531
|
]),
|
|
7532
|
-
o("div",
|
|
7532
|
+
o("div", Pv, [
|
|
7533
7533
|
o("div", Bv, [
|
|
7534
7534
|
ne(wn, null, {
|
|
7535
7535
|
default: Oe(() => {
|
|
@@ -7589,7 +7589,7 @@ const Gp = {
|
|
|
7589
7589
|
o("div", Yv, [
|
|
7590
7590
|
o("div", Zv, [
|
|
7591
7591
|
o("div", Gv, [
|
|
7592
|
-
(c(), x(X, null, se(
|
|
7592
|
+
(c(), x(X, null, se(C, (z) => o("button", {
|
|
7593
7593
|
key: z.key,
|
|
7594
7594
|
type: "button",
|
|
7595
7595
|
role: "tab",
|
|
@@ -7610,7 +7610,7 @@ const Gp = {
|
|
|
7610
7610
|
"style-yaml": m.value,
|
|
7611
7611
|
"onUpdate:styleYaml": w[1] || (w[1] = (z) => m.value = z),
|
|
7612
7612
|
"onUpdate:styleText": w[2] || (w[2] = (z) => f.value = z),
|
|
7613
|
-
onUpdate:
|
|
7613
|
+
onUpdate: $
|
|
7614
7614
|
}, null, 8, ["token", "style-text", "style-yaml"])) : O.value === "legend" ? (c(), le(fp, {
|
|
7615
7615
|
key: 1,
|
|
7616
7616
|
token: h.value,
|
|
@@ -7857,7 +7857,7 @@ const Mm = /* @__PURE__ */ ge(Sm, [["render", Tm]]), Fm = { class: "absolute top
|
|
|
7857
7857
|
},
|
|
7858
7858
|
{ immediate: !0 }
|
|
7859
7859
|
);
|
|
7860
|
-
const f =
|
|
7860
|
+
const f = R(() => `${Math.round(a.value * 100)}%`);
|
|
7861
7861
|
return (b, u) => (c(), x("div", Fm, [
|
|
7862
7862
|
u[1] || (u[1] = o("span", null, "Прозорість:", -1)),
|
|
7863
7863
|
De(o("input", {
|
|
@@ -7879,7 +7879,7 @@ const Mm = /* @__PURE__ */ ge(Sm, [["render", Tm]]), Fm = { class: "absolute top
|
|
|
7879
7879
|
o("span", null, V(f.value), 1)
|
|
7880
7880
|
]));
|
|
7881
7881
|
}
|
|
7882
|
-
}), jm = { class: "flex h-screen bg-gradient-to-br from-slate-50 to-white" }, zm = { class: "flex-1 relative overflow-hidden" }, Nm = { class: "absolute top-0 left-0 w-full z-20" }, Om = { class: "flex items-center justify-between bg-white/80 backdrop-blur border-b border-gray-200 px-6 py-3 shadow-sm gap-4" }, Dm = { class: "flex items-center gap-3" },
|
|
7882
|
+
}), jm = { class: "flex h-screen bg-gradient-to-br from-slate-50 to-white" }, zm = { class: "flex-1 relative overflow-hidden" }, Nm = { class: "absolute top-0 left-0 w-full z-20" }, Om = { class: "flex items-center justify-between bg-white/80 backdrop-blur border-b border-gray-200 px-6 py-3 shadow-sm gap-4" }, Dm = { class: "flex items-center gap-3" }, Rm = { class: "font-semibold text-lg text-gray-800 line-clamp-1" }, Pm = {
|
|
7883
7883
|
key: 0,
|
|
7884
7884
|
class: "text-xs text-gray-500 truncate"
|
|
7885
7885
|
}, Bm = ["title"], Vm = { class: "w-full h-full bg-gradient-to-br from-sky-50 via-white to-blue-50 flex items-center justify-center relative pt-[64px]" }, Um = { class: "relative w-full h-full" }, qm = { class: "absolute top-4 left-4 z-20" }, Hm = { class: "w-[520px] bg-white border-l border-gray-100 flex flex-col overflow-hidden shadow-lg" }, Wm = { class: "flex-1 flex flex-col h-full" }, Ym = { class: "px-3 pt-3 pb-2 border-b border-gray-100" }, Zm = { class: "items-center justify-center text-muted-foreground grid w-full grid-cols-2 h-12 p-1 bg-gray-50 rounded-xl shadow-sm" }, Gm = ["aria-selected", "onClick"], Km = { class: "leading-none" }, Xm = { class: "flex flex-col flex-1 overflow-y-hidden p-4" }, Jm = {
|
|
@@ -7896,21 +7896,21 @@ const Mm = /* @__PURE__ */ ge(Sm, [["render", Tm]]), Fm = { class: "absolute top
|
|
|
7896
7896
|
{ cardClass: "bg-gradient-to-br from-blue-50 to-blue-100/30 border-blue-200", titleClass: "text-blue-900" },
|
|
7897
7897
|
{ cardClass: "bg-gradient-to-br from-purple-50 to-purple-100/30 border-purple-200", titleClass: "text-purple-900" },
|
|
7898
7898
|
{ cardClass: "bg-gradient-to-br from-gray-50 to-gray-100/30 border-gray-200", titleClass: "text-gray-900" }
|
|
7899
|
-
], n = dt(), l = ct(), r =
|
|
7899
|
+
], n = dt(), l = ct(), r = R(() => {
|
|
7900
7900
|
var _;
|
|
7901
7901
|
const w = (_ = l.params) == null ? void 0 : _.id;
|
|
7902
7902
|
return typeof w == "string" ? w : void 0;
|
|
7903
|
-
}), s = j(null), i = j(!1), a = j(null), m =
|
|
7903
|
+
}), s = j(null), i = j(!1), a = j(null), m = R(() => {
|
|
7904
7904
|
var _;
|
|
7905
7905
|
const w = (_ = s.value) == null ? void 0 : _.url;
|
|
7906
7906
|
return w ? /^https?:\/\//i.test(w) || typeof window > "u" || typeof location > "u" ? w : `${location.origin}${w}` : "";
|
|
7907
|
-
}), f =
|
|
7907
|
+
}), f = R(() => {
|
|
7908
7908
|
var w;
|
|
7909
7909
|
return ((w = s.value) == null ? void 0 : w.extent) ?? null;
|
|
7910
|
-
}), b =
|
|
7910
|
+
}), b = R(() => r.value ? `raster-${r.value}` : void 0), u = R(() => {
|
|
7911
7911
|
const w = b.value ?? "raster", _ = f.value && f.value.length === 4 ? f.value.join(",") : "no-extent";
|
|
7912
7912
|
return `${w}-${_}`;
|
|
7913
|
-
}), g =
|
|
7913
|
+
}), g = R(() => !!m.value), d = R(() => {
|
|
7914
7914
|
var z, U;
|
|
7915
7915
|
const w = s.value, _ = w == null ? void 0 : w.extent, A = r.value, L = A ?? "—", N = A ? `Растер ${A}` : "Растер";
|
|
7916
7916
|
return {
|
|
@@ -7922,7 +7922,7 @@ const Mm = /* @__PURE__ */ ge(Sm, [["render", Tm]]), Fm = { class: "absolute top
|
|
|
7922
7922
|
source: w != null && w.proj4 ? w.proj4 : "Джерело: Mapnik",
|
|
7923
7923
|
updatedAt: w != null && w.cache ? "Дані кешовано" : "Нові дані"
|
|
7924
7924
|
};
|
|
7925
|
-
}), y =
|
|
7925
|
+
}), y = R(() => {
|
|
7926
7926
|
const w = s.value;
|
|
7927
7927
|
return w ? [
|
|
7928
7928
|
w.source_path,
|
|
@@ -7939,7 +7939,7 @@ const Mm = /* @__PURE__ */ ge(Sm, [["render", Tm]]), Fm = { class: "absolute top
|
|
|
7939
7939
|
}), te(p, (w) => {
|
|
7940
7940
|
l.query.tab !== w && n.replace({ query: { ...l.query, tab: w } });
|
|
7941
7941
|
});
|
|
7942
|
-
const
|
|
7942
|
+
const C = R(() => P(s.value)), I = R(() => k(s.value));
|
|
7943
7943
|
te(r, () => {
|
|
7944
7944
|
O();
|
|
7945
7945
|
}, { immediate: !0 });
|
|
@@ -7962,7 +7962,7 @@ const Mm = /* @__PURE__ */ ge(Sm, [["render", Tm]]), Fm = { class: "absolute top
|
|
|
7962
7962
|
i.value = !1;
|
|
7963
7963
|
}
|
|
7964
7964
|
}
|
|
7965
|
-
function
|
|
7965
|
+
function P(w) {
|
|
7966
7966
|
var _;
|
|
7967
7967
|
return (_ = w == null ? void 0 : w.files) != null && _.length ? w.files.map((A) => ({
|
|
7968
7968
|
name: A.name,
|
|
@@ -7978,7 +7978,7 @@ const Mm = /* @__PURE__ */ ge(Sm, [["render", Tm]]), Fm = { class: "absolute top
|
|
|
7978
7978
|
}
|
|
7979
7979
|
function k(w) {
|
|
7980
7980
|
return w ? {
|
|
7981
|
-
baseParams:
|
|
7981
|
+
baseParams: $(w),
|
|
7982
7982
|
spatial: {
|
|
7983
7983
|
crs: {
|
|
7984
7984
|
code: w.srid ? `EPSG:${w.srid}` : "EPSG:4326",
|
|
@@ -7999,7 +7999,7 @@ const Mm = /* @__PURE__ */ ge(Sm, [["render", Tm]]), Fm = { class: "absolute top
|
|
|
7999
7999
|
return ((N = L == null ? void 0 : L[0]) == null ? void 0 : N.toUpperCase()) || "";
|
|
8000
8000
|
}).filter(Boolean).join("") : "";
|
|
8001
8001
|
}
|
|
8002
|
-
function
|
|
8002
|
+
function $(w) {
|
|
8003
8003
|
var z, U;
|
|
8004
8004
|
const _ = w.bands_count ?? ((z = w.bands) == null ? void 0 : z.length) ?? "—", A = E(w.bands), L = (w.bands ?? []).map((G) => G.trim()).filter((G) => G.length > 0), N = L.length ? L.join(", ") : void 0;
|
|
8005
8005
|
return [
|
|
@@ -8091,8 +8091,8 @@ const Mm = /* @__PURE__ */ ge(Sm, [["render", Tm]]), Fm = { class: "absolute top
|
|
|
8091
8091
|
we(" Назад ", -1)
|
|
8092
8092
|
])]),
|
|
8093
8093
|
o("div", null, [
|
|
8094
|
-
o("div",
|
|
8095
|
-
y.value ? (c(), x("div",
|
|
8094
|
+
o("div", Rm, V(d.value.name), 1),
|
|
8095
|
+
y.value ? (c(), x("div", Pm, V(y.value), 1)) : W("", !0)
|
|
8096
8096
|
])
|
|
8097
8097
|
]),
|
|
8098
8098
|
o("div", {
|
|
@@ -8141,7 +8141,7 @@ const Mm = /* @__PURE__ */ ge(Sm, [["render", Tm]]), Fm = { class: "absolute top
|
|
|
8141
8141
|
i.value ? (c(), x("div", Jm, " Завантаження метаданих растру… ")) : a.value ? (c(), x("div", Qm, " Не вдалося отримати дані: " + V(a.value), 1)) : W("", !0),
|
|
8142
8142
|
p.value === "files" ? (c(), le(km, {
|
|
8143
8143
|
key: 2,
|
|
8144
|
-
files:
|
|
8144
|
+
files: C.value
|
|
8145
8145
|
}, null, 8, ["files"])) : I.value ? (c(), le(xm, {
|
|
8146
8146
|
key: 3,
|
|
8147
8147
|
details: I.value
|
|
@@ -8184,7 +8184,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8184
8184
|
},
|
|
8185
8185
|
emits: ["update:modelValue", "save"],
|
|
8186
8186
|
setup(e, { emit: t }) {
|
|
8187
|
-
const n = e, l = t, r =
|
|
8187
|
+
const n = e, l = t, r = R({
|
|
8188
8188
|
get: () => n.modelValue,
|
|
8189
8189
|
set: (s) => l("update:modelValue", s)
|
|
8190
8190
|
});
|
|
@@ -8232,40 +8232,86 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8232
8232
|
setup(e, { emit: t }) {
|
|
8233
8233
|
const n = [
|
|
8234
8234
|
{ key: "table", label: "Таблиця", slot: "datasetCell" },
|
|
8235
|
-
{
|
|
8236
|
-
|
|
8235
|
+
{
|
|
8236
|
+
key: "active",
|
|
8237
|
+
label: "Активний",
|
|
8238
|
+
slot: "activeCell",
|
|
8239
|
+
width: "140px"
|
|
8240
|
+
},
|
|
8241
|
+
{
|
|
8242
|
+
key: "zoom",
|
|
8243
|
+
label: "Min Зум",
|
|
8244
|
+
slot: "zoomCell",
|
|
8245
|
+
width: "140px"
|
|
8246
|
+
}
|
|
8237
8247
|
], l = {
|
|
8238
8248
|
table: { type: "text", label: "Таблиця", validators: ["required"] },
|
|
8239
|
-
|
|
8249
|
+
query: { type: "text", label: "Query" },
|
|
8250
|
+
srid: { type: "number", label: "SRID" },
|
|
8251
|
+
key: { type: "text", label: "Ключ", validators: ["required"] },
|
|
8252
|
+
columns: { type: "text", label: "Колонки" },
|
|
8240
8253
|
active: { type: "switcher", label: "Активний" },
|
|
8241
|
-
|
|
8242
|
-
|
|
8254
|
+
minzoom: { type: "number", label: "Min Зум" },
|
|
8255
|
+
maxzoom: { type: "number", label: "Max Зум" },
|
|
8256
|
+
proj4text: { type: "text", label: "PROJ4" }
|
|
8257
|
+
}, r = st(
|
|
8258
|
+
() => import("@opengis/core").then((v) => v.VsModal)
|
|
8259
|
+
), s = st(() => import("@opengis/form")), i = ut(e, "modelValue"), a = t, m = j(!1), f = j({
|
|
8260
|
+
table: "",
|
|
8261
|
+
query: "",
|
|
8262
|
+
srid: "",
|
|
8263
|
+
key: "",
|
|
8264
|
+
columns: "",
|
|
8265
|
+
minzoom: "0-12",
|
|
8266
|
+
maxzoom: "12-20",
|
|
8267
|
+
proj4text: "",
|
|
8268
|
+
active: !0
|
|
8269
|
+
}), b = {
|
|
8243
8270
|
table: { type: "text", label: "Таблиця", validators: ["required"] },
|
|
8244
|
-
|
|
8271
|
+
key: { type: "text", label: "Ключ", validators: ["required"] },
|
|
8272
|
+
columns: { type: "text", label: "Колонки" },
|
|
8273
|
+
query: { type: "text", label: "Query" },
|
|
8274
|
+
srid: { type: "number", label: "SRID" },
|
|
8245
8275
|
active: { type: "switcher", label: "Активна" },
|
|
8246
|
-
|
|
8276
|
+
minzoom: { type: "number", label: "Min Зум" },
|
|
8277
|
+
maxzoom: { type: "number", label: "Max Зум" },
|
|
8278
|
+
proj4text: { type: "text", label: "PROJ4" }
|
|
8247
8279
|
};
|
|
8248
8280
|
function u() {
|
|
8249
|
-
f.value = {
|
|
8281
|
+
f.value = {
|
|
8282
|
+
table: "",
|
|
8283
|
+
query: "",
|
|
8284
|
+
srid: "",
|
|
8285
|
+
key: "",
|
|
8286
|
+
columns: "",
|
|
8287
|
+
minzoom: "",
|
|
8288
|
+
maxzoom: "",
|
|
8289
|
+
proj4text: "",
|
|
8290
|
+
active: !0
|
|
8291
|
+
}, m.value = !0;
|
|
8250
8292
|
}
|
|
8251
8293
|
function g() {
|
|
8252
8294
|
m.value = !1;
|
|
8253
8295
|
}
|
|
8254
8296
|
function d() {
|
|
8255
|
-
var p,
|
|
8256
|
-
const v = (p = f.value.table) == null ? void 0 : p.trim(), h = (
|
|
8297
|
+
var p, C;
|
|
8298
|
+
const v = (p = f.value.table) == null ? void 0 : p.trim(), h = (C = f.value.key) == null ? void 0 : C.trim();
|
|
8257
8299
|
if (!v || !h) {
|
|
8258
|
-
Ee({
|
|
8300
|
+
Ee({
|
|
8301
|
+
type: "warning",
|
|
8302
|
+
title: "Перевірка",
|
|
8303
|
+
message: "Вкажіть таблицю та підпис"
|
|
8304
|
+
});
|
|
8259
8305
|
return;
|
|
8260
8306
|
}
|
|
8261
8307
|
i.value = [
|
|
8262
8308
|
...Array.isArray(i.value) ? i.value : [],
|
|
8263
|
-
{ ...f.value, table: v,
|
|
8309
|
+
{ ...f.value, table: v, key: h }
|
|
8264
8310
|
], m.value = !1;
|
|
8265
8311
|
}
|
|
8266
8312
|
function y(v, h) {
|
|
8267
|
-
var
|
|
8268
|
-
const p = ((
|
|
8313
|
+
var C;
|
|
8314
|
+
const p = ((C = h == null ? void 0 : h.target) == null ? void 0 : C.checked) ?? !1;
|
|
8269
8315
|
v.active = p, i.value = Array.isArray(i.value) ? [...i.value] : [];
|
|
8270
8316
|
}
|
|
8271
8317
|
return (v, h) => (c(), x("div", i0, [
|
|
@@ -8292,7 +8338,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8292
8338
|
datasetCell: Oe(({ row: p }) => [
|
|
8293
8339
|
o("div", u0, [
|
|
8294
8340
|
o("div", c0, V(p.table), 1),
|
|
8295
|
-
o("div", d0, V(p.
|
|
8341
|
+
o("div", d0, V(p.key), 1)
|
|
8296
8342
|
])
|
|
8297
8343
|
]),
|
|
8298
8344
|
activeCell: Oe(({ row: p }) => [
|
|
@@ -8301,7 +8347,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8301
8347
|
type: "checkbox",
|
|
8302
8348
|
class: "h-4 w-4 text-sky-500 border-gray-300 rounded focus:ring-sky-300",
|
|
8303
8349
|
checked: p.active,
|
|
8304
|
-
onChange: (
|
|
8350
|
+
onChange: (C) => y(p, C)
|
|
8305
8351
|
}, null, 40, p0)
|
|
8306
8352
|
])
|
|
8307
8353
|
]),
|
|
@@ -8322,12 +8368,12 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8322
8368
|
type: "button",
|
|
8323
8369
|
class: "px-4 py-2 rounded bg-gray-100 text-gray-700",
|
|
8324
8370
|
onClick: g
|
|
8325
|
-
}, "Скасувати"),
|
|
8371
|
+
}, " Скасувати "),
|
|
8326
8372
|
o("button", {
|
|
8327
8373
|
type: "button",
|
|
8328
8374
|
class: "px-4 py-2 rounded bg-blue-600 text-white",
|
|
8329
8375
|
onClick: d
|
|
8330
|
-
}, "Додати")
|
|
8376
|
+
}, " Додати ")
|
|
8331
8377
|
])
|
|
8332
8378
|
]),
|
|
8333
8379
|
default: Oe(() => [
|
|
@@ -8352,7 +8398,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8352
8398
|
opacity: { type: Number, default: 0.85 }
|
|
8353
8399
|
},
|
|
8354
8400
|
setup(e) {
|
|
8355
|
-
const t = e, n = Ke(), { activateTemporaryLayer: l, deactivateTemporaryLayer: r } = ro(n.map), s =
|
|
8401
|
+
const t = e, n = Ke(), { activateTemporaryLayer: l, deactivateTemporaryLayer: r } = ro(n.map), s = R(() => {
|
|
8356
8402
|
var b;
|
|
8357
8403
|
const f = `${(b = t == null ? void 0 : t.tileUrl) == null ? void 0 : b.trim()}`;
|
|
8358
8404
|
return f ? typeof window > "u" || typeof location > "u" || /^https?:\/\//i.test(f) ? f : f.startsWith("//") ? `${window.location.protocol}${f}` : f.startsWith("/") ? `${location.origin}${f}` : `${location.origin}/${f}` : "";
|
|
@@ -8394,21 +8440,23 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8394
8440
|
{ key: "data", label: "Дані", icon: o0 }
|
|
8395
8441
|
], r = l.map((k) => k.key), s = j(
|
|
8396
8442
|
r.includes(n.query.tab) ? n.query.tab : "css"
|
|
8397
|
-
), i =
|
|
8443
|
+
), i = R(
|
|
8398
8444
|
() => n.params.id || z0
|
|
8399
8445
|
), a = j({
|
|
8400
8446
|
id: i.value,
|
|
8401
8447
|
name: "",
|
|
8402
8448
|
description: ""
|
|
8403
|
-
}), m = j("")
|
|
8449
|
+
}), m = j("");
|
|
8450
|
+
j("");
|
|
8451
|
+
const f = j([]), b = j(!1), u = j(!1), g = j(""), d = j(0), y = j(!1), v = R(() => `cartocss-layer-${i.value}`), h = j(null), p = R(() => {
|
|
8404
8452
|
var K;
|
|
8405
8453
|
const k = (K = g.value) == null ? void 0 : K.trim();
|
|
8406
8454
|
if (!k) return "";
|
|
8407
|
-
const E = d.value,
|
|
8408
|
-
return `${k}${
|
|
8409
|
-
}),
|
|
8455
|
+
const E = d.value, $ = k.includes("?") ? "&" : "?", B = E ? `nocache=1&ts=${E}` : "nocache=1";
|
|
8456
|
+
return `${k}${$}${B}`;
|
|
8457
|
+
}), C = R(() => {
|
|
8410
8458
|
const k = h.value;
|
|
8411
|
-
return k ? (f.value.map((
|
|
8459
|
+
return k ? (f.value.map(($) => $ == null ? void 0 : $.table).filter(Boolean), [
|
|
8412
8460
|
k.description,
|
|
8413
8461
|
k.group_id ? `Група: ${k.group_id}` : null,
|
|
8414
8462
|
k.is_public === !0 ? "Публічний" : "Не публічний",
|
|
@@ -8418,7 +8466,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8418
8466
|
te(
|
|
8419
8467
|
i,
|
|
8420
8468
|
(k) => {
|
|
8421
|
-
k &&
|
|
8469
|
+
k && P(k);
|
|
8422
8470
|
},
|
|
8423
8471
|
{ immediate: !0 }
|
|
8424
8472
|
), te(
|
|
@@ -8441,19 +8489,24 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8441
8489
|
}
|
|
8442
8490
|
function O(k) {
|
|
8443
8491
|
const E = Array.isArray(k) ? k : k == null ? void 0 : k.datasets;
|
|
8444
|
-
return Array.isArray(E) ? E.map((
|
|
8445
|
-
table: (
|
|
8446
|
-
|
|
8447
|
-
|
|
8448
|
-
|
|
8492
|
+
return Array.isArray(E) ? E.map(($, B) => ({
|
|
8493
|
+
table: ($ == null ? void 0 : $.table) || ($ == null ? void 0 : $.id) || `dataset_${B + 1}`,
|
|
8494
|
+
query: ($ == null ? void 0 : $.query) || "",
|
|
8495
|
+
srid: ($ == null ? void 0 : $.srid) || "",
|
|
8496
|
+
key: ($ == null ? void 0 : $.key) || ($ == null ? void 0 : $.label) || "Без підпису",
|
|
8497
|
+
active: typeof ($ == null ? void 0 : $.active) == "boolean" ? $.active : !0,
|
|
8498
|
+
minzoom: typeof ($ == null ? void 0 : $.zoom) > "u" ? "" : String($.zoom),
|
|
8499
|
+
maxzoom: typeof ($ == null ? void 0 : $.maxzoom) > "u" ? "" : String($.maxzoom),
|
|
8500
|
+
columns: ($ == null ? void 0 : $.columns) || "",
|
|
8501
|
+
proj4text: ($ == null ? void 0 : $.proj4text) || ""
|
|
8449
8502
|
})) : [];
|
|
8450
8503
|
}
|
|
8451
|
-
async function
|
|
8504
|
+
async function P(k, E) {
|
|
8452
8505
|
b.value = !0;
|
|
8453
8506
|
try {
|
|
8454
|
-
const
|
|
8455
|
-
if (
|
|
8456
|
-
const B = await
|
|
8507
|
+
const $ = await fetch(`/api/gis-css/${k}`);
|
|
8508
|
+
if (!$.ok) throw new Error(`Failed to load cartocss: ${$.status}`);
|
|
8509
|
+
const B = await $.json(), K = (B == null ? void 0 : B.message) || B || {};
|
|
8457
8510
|
h.value = K, a.value = {
|
|
8458
8511
|
id: K.cartocss_key || k,
|
|
8459
8512
|
name: K.name || a.value.name,
|
|
@@ -8463,8 +8516,8 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8463
8516
|
f.value = O(Z);
|
|
8464
8517
|
const D = typeof K.url == "string" ? K.url : "";
|
|
8465
8518
|
g.value = D, y.value = !!(D && K.enabled !== !1), d.value = E != null && E.bustCache ? Date.now() : 0;
|
|
8466
|
-
} catch (
|
|
8467
|
-
console.error("Failed to fetch CartoCSS",
|
|
8519
|
+
} catch ($) {
|
|
8520
|
+
console.error("Failed to fetch CartoCSS", $), y.value = !1, g.value = "", d.value = 0, h.value = null;
|
|
8468
8521
|
} finally {
|
|
8469
8522
|
b.value = !1;
|
|
8470
8523
|
}
|
|
@@ -8486,7 +8539,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8486
8539
|
type: "success",
|
|
8487
8540
|
title: "Збережено",
|
|
8488
8541
|
message: "CartoCSS оновлено"
|
|
8489
|
-
}), await
|
|
8542
|
+
}), await P(i.value, { bustCache: !0 });
|
|
8490
8543
|
} catch (k) {
|
|
8491
8544
|
console.error("Failed to save CartoCSS", k), Ee({
|
|
8492
8545
|
type: "error",
|
|
@@ -8505,7 +8558,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8505
8558
|
o("div", w0, [
|
|
8506
8559
|
o("button", {
|
|
8507
8560
|
type: "button",
|
|
8508
|
-
onClick: E[0] || (E[0] = (
|
|
8561
|
+
onClick: E[0] || (E[0] = ($) => oe(t).back()),
|
|
8509
8562
|
class: "inline-flex items-center px-3 py-1.5 rounded-md bg-sky-100 hover:bg-sky-200 text-sky-700 font-medium text-sm transition"
|
|
8510
8563
|
}, [...E[3] || (E[3] = [
|
|
8511
8564
|
o("svg", {
|
|
@@ -8526,7 +8579,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8526
8579
|
])]),
|
|
8527
8580
|
o("div", null, [
|
|
8528
8581
|
o("div", _0, V(a.value.name), 1),
|
|
8529
|
-
|
|
8582
|
+
C.value ? (c(), x("div", k0, V(C.value), 1)) : W("", !0)
|
|
8530
8583
|
])
|
|
8531
8584
|
])
|
|
8532
8585
|
])
|
|
@@ -8556,19 +8609,19 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8556
8609
|
o("div", S0, [
|
|
8557
8610
|
o("div", E0, [
|
|
8558
8611
|
o("div", T0, [
|
|
8559
|
-
(c(), x(X, null, se(l, (
|
|
8560
|
-
key:
|
|
8612
|
+
(c(), x(X, null, se(l, ($) => o("button", {
|
|
8613
|
+
key: $.key,
|
|
8561
8614
|
type: "button",
|
|
8562
8615
|
role: "tab",
|
|
8563
|
-
"aria-selected": s.value ===
|
|
8616
|
+
"aria-selected": s.value === $.key,
|
|
8564
8617
|
class: be([
|
|
8565
8618
|
"whitespace-nowrap flex flex-col items-center justify-center gap-0.5 py-1 px-1 text-[9px] font-medium transition-all duration-300 hover:bg-white/70 rounded-lg group",
|
|
8566
|
-
s.value ===
|
|
8619
|
+
s.value === $.key ? "bg-white shadow-sm text-gray-700" : ""
|
|
8567
8620
|
]),
|
|
8568
|
-
onClick: (B) => s.value =
|
|
8621
|
+
onClick: (B) => s.value = $.key
|
|
8569
8622
|
}, [
|
|
8570
|
-
(c(), le(Et(
|
|
8571
|
-
o("span", F0, V(
|
|
8623
|
+
(c(), le(Et($.icon), { class: "h-3.5 w-3.5 mb-0.5" })),
|
|
8624
|
+
o("span", F0, V($.label), 1)
|
|
8572
8625
|
], 10, M0)), 64))
|
|
8573
8626
|
])
|
|
8574
8627
|
]),
|
|
@@ -8577,13 +8630,13 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8577
8630
|
s.value === "css" ? (c(), le(s0, {
|
|
8578
8631
|
key: 0,
|
|
8579
8632
|
modelValue: m.value,
|
|
8580
|
-
"onUpdate:modelValue": E[1] || (E[1] = (
|
|
8633
|
+
"onUpdate:modelValue": E[1] || (E[1] = ($) => m.value = $),
|
|
8581
8634
|
class: "flex-1 min-h-0",
|
|
8582
8635
|
onSave: T
|
|
8583
8636
|
}, null, 8, ["modelValue"])) : (c(), le(m0, {
|
|
8584
8637
|
key: 1,
|
|
8585
8638
|
modelValue: f.value,
|
|
8586
|
-
"onUpdate:modelValue": E[2] || (E[2] = (
|
|
8639
|
+
"onUpdate:modelValue": E[2] || (E[2] = ($) => f.value = $),
|
|
8587
8640
|
class: "flex-1 min-h-0 flex flex-col",
|
|
8588
8641
|
onSave: T
|
|
8589
8642
|
}, null, 8, ["modelValue"]))
|
|
@@ -8593,7 +8646,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8593
8646
|
])
|
|
8594
8647
|
]));
|
|
8595
8648
|
}
|
|
8596
|
-
}), N0 = { class: "w-full mb-6" }, O0 = { class: "flex items-center w-full h-10 max-w-md p-1 bg-white border border-gray-200 rounded-md" }, D0 = ["onClick"],
|
|
8649
|
+
}), N0 = { class: "w-full mb-6" }, O0 = { class: "flex items-center w-full h-10 max-w-md p-1 bg-white border border-gray-200 rounded-md" }, D0 = ["onClick"], R0 = /* @__PURE__ */ ie({
|
|
8597
8650
|
__name: "MapSettingsTabs",
|
|
8598
8651
|
props: {
|
|
8599
8652
|
tabs: {},
|
|
@@ -8617,7 +8670,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8617
8670
|
])
|
|
8618
8671
|
]));
|
|
8619
8672
|
}
|
|
8620
|
-
}),
|
|
8673
|
+
}), P0 = { class: "rounded-lg border border-gray-200 bg-gray-50 p-6" }, B0 = /* @__PURE__ */ ie({
|
|
8621
8674
|
__name: "GeneralSettings",
|
|
8622
8675
|
props: {
|
|
8623
8676
|
schema: {},
|
|
@@ -8627,14 +8680,14 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8627
8680
|
},
|
|
8628
8681
|
emits: ["update:modelValue", "update:form"],
|
|
8629
8682
|
setup(e, { emit: t }) {
|
|
8630
|
-
const n = st(() => import("@opengis/form")), l = e, r = t, s =
|
|
8683
|
+
const n = st(() => import("@opengis/form")), l = e, r = t, s = R({
|
|
8631
8684
|
get: () => l.modelValue,
|
|
8632
8685
|
set: (a) => r("update:modelValue", a)
|
|
8633
|
-
}), i =
|
|
8686
|
+
}), i = R({
|
|
8634
8687
|
get: () => l.form,
|
|
8635
8688
|
set: (a) => r("update:form", a)
|
|
8636
8689
|
});
|
|
8637
|
-
return (a, m) => (c(), x("section",
|
|
8690
|
+
return (a, m) => (c(), x("section", P0, [
|
|
8638
8691
|
m[2] || (m[2] = o("h2", { class: "text-lg font-semibold text-gray-800 mb-4" }, " Основна інформація ", -1)),
|
|
8639
8692
|
e.loading ? W("", !0) : (c(), le(oe(n), {
|
|
8640
8693
|
key: 0,
|
|
@@ -8655,11 +8708,11 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8655
8708
|
},
|
|
8656
8709
|
emits: ["update:layerIDs", "update:layerNames"],
|
|
8657
8710
|
setup(e, { emit: t }) {
|
|
8658
|
-
const n = e, l = t, r =
|
|
8711
|
+
const n = e, l = t, r = R({
|
|
8659
8712
|
get: () => n.layerIDs,
|
|
8660
8713
|
set: (s) => l("update:layerIDs", s)
|
|
8661
8714
|
});
|
|
8662
|
-
return
|
|
8715
|
+
return R({
|
|
8663
8716
|
get: () => n.layerNames,
|
|
8664
8717
|
set: (s) => l("update:layerNames", s)
|
|
8665
8718
|
}), (s, i) => (c(), x("section", V0, [
|
|
@@ -8681,7 +8734,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8681
8734
|
setup(e, { expose: t }) {
|
|
8682
8735
|
const n = e, l = lt({ open: !1, top: 0, left: 0, transform: "translateX(-50%)" }), r = j(null), s = j(null);
|
|
8683
8736
|
let i = null;
|
|
8684
|
-
const a =
|
|
8737
|
+
const a = R(() => l.open ? {
|
|
8685
8738
|
position: "absolute",
|
|
8686
8739
|
width: "auto",
|
|
8687
8740
|
maxWidth: `${Math.min(300, window.innerWidth - 24)}px`,
|
|
@@ -8708,17 +8761,17 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8708
8761
|
}
|
|
8709
8762
|
function f() {
|
|
8710
8763
|
if (!l.open || !r.value || !s.value) return;
|
|
8711
|
-
const v = r.value.getBoundingClientRect(), h = 12, p = window.scrollX + h,
|
|
8712
|
-
let k = v.left + window.scrollX + (v.width -
|
|
8713
|
-
k < p && (k = p), k +
|
|
8764
|
+
const v = r.value.getBoundingClientRect(), h = 12, p = window.scrollX + h, C = window.scrollX + window.innerWidth - h, I = window.scrollY + h, O = window.scrollY + window.innerHeight - h, P = s.value.offsetWidth || Math.min(300, window.innerWidth - 24), T = s.value.offsetHeight || 0;
|
|
8765
|
+
let k = v.left + window.scrollX + (v.width - P) / 2;
|
|
8766
|
+
k < p && (k = p), k + P > C && (k = Math.max(p, C - P)), l.left = k;
|
|
8714
8767
|
let E = v.bottom + window.scrollY + h;
|
|
8715
8768
|
E + T > O && (E = v.top + window.scrollY - T - h, E < I && (E = Math.max(I, O - T))), E < I && (E = I), E + T > O && (E = Math.max(I, O - T)), l.top = E, l.transform = "none";
|
|
8716
8769
|
}
|
|
8717
8770
|
function b(v) {
|
|
8718
|
-
var p,
|
|
8771
|
+
var p, C;
|
|
8719
8772
|
if (!l.open) return;
|
|
8720
8773
|
const h = v.target;
|
|
8721
|
-
(p = r.value) != null && p.contains(h) || (
|
|
8774
|
+
(p = r.value) != null && p.contains(h) || (C = s.value) != null && C.contains(h) || g();
|
|
8722
8775
|
}
|
|
8723
8776
|
function u(v) {
|
|
8724
8777
|
v.key === "Escape" && g();
|
|
@@ -8799,38 +8852,38 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8799
8852
|
setup(e) {
|
|
8800
8853
|
const t = e, n = j(null), l = j(!1), r = j(null), s = j(null), i = j({ top: 0, left: 0 });
|
|
8801
8854
|
dt();
|
|
8802
|
-
const a = j(!0), m = j(!1), f =
|
|
8855
|
+
const a = j(!0), m = j(!1), f = R(() => Array.isArray(t.links) ? t.links.filter((O) => (O == null ? void 0 : O.name) && (O == null ? void 0 : O.slug)) : []), b = R(() => ({
|
|
8803
8856
|
top: `${i.value.top}px`,
|
|
8804
8857
|
left: `${i.value.left}px`
|
|
8805
|
-
})), u =
|
|
8858
|
+
})), u = R(() => {
|
|
8806
8859
|
const O = [];
|
|
8807
8860
|
return t.mapName && O.push({ label: "Назва карти", value: t.mapName }), t.mapDescription && O.push({ label: "Опис", value: t.mapDescription, breakLine: !0 }), O;
|
|
8808
8861
|
});
|
|
8809
8862
|
function g(O) {
|
|
8810
8863
|
return O == null ? !1 : O.replace(/<[^>]*>/g, "").trim().length > 0;
|
|
8811
8864
|
}
|
|
8812
|
-
const d =
|
|
8865
|
+
const d = R(() => g(t.content)), y = R(() => d.value);
|
|
8813
8866
|
function v(O) {
|
|
8814
8867
|
O.stopPropagation(), l.value = !l.value;
|
|
8815
8868
|
}
|
|
8816
8869
|
function h() {
|
|
8817
8870
|
const O = r.value;
|
|
8818
8871
|
if (!O || !s.value) return;
|
|
8819
|
-
const
|
|
8820
|
-
let M =
|
|
8821
|
-
w + Z >
|
|
8872
|
+
const P = O.getBoundingClientRect(), T = 12, k = 8, E = window.scrollX + T, $ = window.scrollX + window.innerWidth - T, B = window.scrollY + T, K = window.scrollY + window.innerHeight - T, Z = s.value.offsetWidth || 160, D = s.value.offsetHeight || 0;
|
|
8873
|
+
let M = P.bottom + window.scrollY + k, w = P.left + window.scrollX;
|
|
8874
|
+
w + Z > $ && (w = P.right + window.scrollX - Z, w < E && (w = E)), w < E && (w = E), M + D > K && (M = P.top + window.scrollY - D - k, M < B && (M = Math.max(B, K - D))), M < B && (M = B), M + D > K && (M = Math.max(B, K - D)), i.value = {
|
|
8822
8875
|
top: M,
|
|
8823
8876
|
left: w
|
|
8824
8877
|
};
|
|
8825
8878
|
}
|
|
8826
8879
|
function p(O) {
|
|
8827
8880
|
if (!l.value) return;
|
|
8828
|
-
const
|
|
8829
|
-
if (!
|
|
8881
|
+
const P = n.value;
|
|
8882
|
+
if (!P) {
|
|
8830
8883
|
l.value = !1;
|
|
8831
8884
|
return;
|
|
8832
8885
|
}
|
|
8833
|
-
|
|
8886
|
+
P.contains(O.target) || (l.value = !1);
|
|
8834
8887
|
}
|
|
8835
8888
|
te(l, (O) => {
|
|
8836
8889
|
O ? qe(() => {
|
|
@@ -8839,7 +8892,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8839
8892
|
}), window.addEventListener("scroll", h, !0), window.addEventListener("resize", h);
|
|
8840
8893
|
}) : (window.removeEventListener("scroll", h, !0), window.removeEventListener("resize", h));
|
|
8841
8894
|
});
|
|
8842
|
-
function
|
|
8895
|
+
function C() {
|
|
8843
8896
|
a.value = !a.value;
|
|
8844
8897
|
}
|
|
8845
8898
|
function I() {
|
|
@@ -8849,7 +8902,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8849
8902
|
document.addEventListener("click", p, !0), I(), y.value ? m.value && (a.value = !1) : a.value = !1, window.addEventListener("resize", I);
|
|
8850
8903
|
}), Te(() => {
|
|
8851
8904
|
document.removeEventListener("click", p, !0), window.removeEventListener("scroll", h, !0), window.removeEventListener("resize", h), window.removeEventListener("resize", I);
|
|
8852
|
-
}), (O,
|
|
8905
|
+
}), (O, P) => (c(), x("div", {
|
|
8853
8906
|
class: "map-info legend-widget flex flex-col bg-white border border-stone-200 shadow-2xs rounded-xl z-10 relative widget",
|
|
8854
8907
|
ref_key: "container",
|
|
8855
8908
|
ref: n
|
|
@@ -8869,7 +8922,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8869
8922
|
class: "map-info__menu-button",
|
|
8870
8923
|
onClick: v,
|
|
8871
8924
|
"aria-label": "Показати посилання"
|
|
8872
|
-
}, [...
|
|
8925
|
+
}, [...P[1] || (P[1] = [
|
|
8873
8926
|
o("svg", {
|
|
8874
8927
|
width: "16",
|
|
8875
8928
|
height: "16",
|
|
@@ -8904,7 +8957,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8904
8957
|
ref: s,
|
|
8905
8958
|
class: "vsTailwind vs-popover__content right map-info__popover",
|
|
8906
8959
|
style: We(b.value),
|
|
8907
|
-
onClick:
|
|
8960
|
+
onClick: P[0] || (P[0] = Ue(() => {
|
|
8908
8961
|
}, ["stop"]))
|
|
8909
8962
|
}, [
|
|
8910
8963
|
(c(!0), x(X, null, se(f.value, (T) => (c(), x("a", {
|
|
@@ -8923,7 +8976,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8923
8976
|
key: 2,
|
|
8924
8977
|
type: "button",
|
|
8925
8978
|
class: "map-info__toggle-button",
|
|
8926
|
-
onClick:
|
|
8979
|
+
onClick: C,
|
|
8927
8980
|
"aria-label": "Розгорнути/згорнути"
|
|
8928
8981
|
}, [
|
|
8929
8982
|
(c(), x("svg", {
|
|
@@ -8933,7 +8986,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8933
8986
|
fill: "none",
|
|
8934
8987
|
xmlns: "http://www.w3.org/2000/svg",
|
|
8935
8988
|
class: be({ "map-info__toggle-icon--rotated": a.value })
|
|
8936
|
-
}, [...
|
|
8989
|
+
}, [...P[2] || (P[2] = [
|
|
8937
8990
|
o("path", {
|
|
8938
8991
|
d: "M6 9L12 15L18 9",
|
|
8939
8992
|
stroke: "#000000",
|
|
@@ -8960,12 +9013,12 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
8960
9013
|
setup(e) {
|
|
8961
9014
|
const t = e, n = j(!1), l = j(100), r = j(null), s = j(null), i = lt({ top: 0, left: 0 });
|
|
8962
9015
|
function a() {
|
|
8963
|
-
var
|
|
8964
|
-
const u = (
|
|
9016
|
+
var P;
|
|
9017
|
+
const u = (P = s.value) == null ? void 0 : P.querySelector("button");
|
|
8965
9018
|
if (!u || !r.value) return;
|
|
8966
|
-
const g = u.getBoundingClientRect(), d = 260, y = r.value.offsetHeight || 60, v = 8, h = 12, p = window.innerWidth,
|
|
9019
|
+
const g = u.getBoundingClientRect(), d = 260, y = r.value.offsetHeight || 60, v = 8, h = 12, p = window.innerWidth, C = window.innerHeight;
|
|
8967
9020
|
let I = g.bottom + v + window.scrollY, O = g.left + window.scrollX;
|
|
8968
|
-
O + d > p - h && (O = p - d - h + window.scrollX), O < h + window.scrollX && (O = h + window.scrollX), I + y >
|
|
9021
|
+
O + d > p - h && (O = p - d - h + window.scrollX), O < h + window.scrollX && (O = h + window.scrollX), I + y > C + window.scrollY - h && (I = g.top - y - v + window.scrollY, I < h + window.scrollY && (I = C - y - h + window.scrollY)), i.top = I, i.left = O;
|
|
8969
9022
|
}
|
|
8970
9023
|
function m() {
|
|
8971
9024
|
n.value = !n.value, n.value && qe(a);
|
|
@@ -9071,7 +9124,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9071
9124
|
activateTemporaryLayer: m,
|
|
9072
9125
|
deactivateTemporaryLayer: f,
|
|
9073
9126
|
clearTemporaryLayers: b
|
|
9074
|
-
} = ro(i.map), u =
|
|
9127
|
+
} = ro(i.map), u = R(() => {
|
|
9075
9128
|
const D = n.layers.map((w) => ({
|
|
9076
9129
|
...w,
|
|
9077
9130
|
isTemporary: !1,
|
|
@@ -9094,7 +9147,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9094
9147
|
holder: null
|
|
9095
9148
|
}));
|
|
9096
9149
|
return [...D, ...M];
|
|
9097
|
-
}), g =
|
|
9150
|
+
}), g = R(() => a.value.length > 0), d = t;
|
|
9098
9151
|
function y() {
|
|
9099
9152
|
var D;
|
|
9100
9153
|
for (let M = 0; M < n.layers.length; M++) {
|
|
@@ -9157,7 +9210,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9157
9210
|
const M = l.value[D];
|
|
9158
9211
|
return M ?? !0;
|
|
9159
9212
|
}
|
|
9160
|
-
function
|
|
9213
|
+
function C(D) {
|
|
9161
9214
|
var _, A;
|
|
9162
9215
|
if (!(D != null && D.id)) return null;
|
|
9163
9216
|
const M = (_ = D.title) == null ? void 0 : _.trim(), w = (A = D.url) == null ? void 0 : A.trim();
|
|
@@ -9181,7 +9234,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9181
9234
|
});
|
|
9182
9235
|
return;
|
|
9183
9236
|
}
|
|
9184
|
-
const w =
|
|
9237
|
+
const w = C(D.spec);
|
|
9185
9238
|
if (w) {
|
|
9186
9239
|
if (D.action === "activate") {
|
|
9187
9240
|
m(w, D.context || {}, M), l.value[w.id] = !0;
|
|
@@ -9205,7 +9258,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9205
9258
|
},
|
|
9206
9259
|
{ immediate: !0 }
|
|
9207
9260
|
);
|
|
9208
|
-
function
|
|
9261
|
+
function P(D, M) {
|
|
9209
9262
|
var L, N, z;
|
|
9210
9263
|
const _ = M.target.checked;
|
|
9211
9264
|
if (l.value[D.id] = _, D.isTemporary) {
|
|
@@ -9240,7 +9293,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9240
9293
|
var M, w;
|
|
9241
9294
|
return ((w = (M = D == null ? void 0 : D.legend) == null ? void 0 : M[0]) == null ? void 0 : w.name) || null;
|
|
9242
9295
|
}
|
|
9243
|
-
function
|
|
9296
|
+
function $(D) {
|
|
9244
9297
|
return E(D) || null;
|
|
9245
9298
|
}
|
|
9246
9299
|
function B() {
|
|
@@ -9317,17 +9370,17 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9317
9370
|
type: "checkbox",
|
|
9318
9371
|
class: "layers-panel__checkbox",
|
|
9319
9372
|
checked: p(L.id),
|
|
9320
|
-
onChange: (z) =>
|
|
9373
|
+
onChange: (z) => P(L, z)
|
|
9321
9374
|
}, null, 40, cg),
|
|
9322
9375
|
o("div", dg, [
|
|
9323
|
-
p(L.id) && k(L) &&
|
|
9376
|
+
p(L.id) && k(L) && $(L) ? De((c(), x("span", {
|
|
9324
9377
|
key: 0,
|
|
9325
9378
|
class: "layers-panel__legend-dot layers-panel__legend-dot--inline",
|
|
9326
9379
|
style: We({ background: k(L) }),
|
|
9327
|
-
"aria-label":
|
|
9380
|
+
"aria-label": $(L),
|
|
9328
9381
|
role: "img"
|
|
9329
9382
|
}, null, 12, fg)), [
|
|
9330
|
-
[w,
|
|
9383
|
+
[w, $(L)]
|
|
9331
9384
|
]) : p(L.id) && k(L) ? (c(), x("span", {
|
|
9332
9385
|
key: 1,
|
|
9333
9386
|
class: "layers-panel__legend-dot layers-panel__legend-dot--inline",
|
|
@@ -9406,13 +9459,13 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9406
9459
|
top: 0,
|
|
9407
9460
|
left: 0,
|
|
9408
9461
|
layerId: null
|
|
9409
|
-
}), a =
|
|
9462
|
+
}), a = R(() => {
|
|
9410
9463
|
const v = n.search.trim().toLowerCase();
|
|
9411
9464
|
return n.catalog.groups.map((h) => {
|
|
9412
|
-
const p = v ? h.layers.filter((
|
|
9465
|
+
const p = v ? h.layers.filter((C) => (typeof C.name == "string" ? C.name : "").toLowerCase().includes(v)) : h.layers;
|
|
9413
9466
|
return { ...h, layers: p };
|
|
9414
9467
|
}).filter((h) => h.layers.length > 0);
|
|
9415
|
-
}), m =
|
|
9468
|
+
}), m = R({
|
|
9416
9469
|
get: () => n.search,
|
|
9417
9470
|
set: (v) => l("update:search", v)
|
|
9418
9471
|
});
|
|
@@ -9429,8 +9482,8 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9429
9482
|
}
|
|
9430
9483
|
const p = v.currentTarget;
|
|
9431
9484
|
if (!p) return;
|
|
9432
|
-
const
|
|
9433
|
-
i.left =
|
|
9485
|
+
const C = p.getBoundingClientRect(), I = typeof window < "u" ? window.scrollX : 0, O = typeof window < "u" ? window.scrollY : 0;
|
|
9486
|
+
i.left = C.left + C.width / 2 + I, i.top = C.bottom + 8 + O, i.layerId = h, i.visible = !0;
|
|
9434
9487
|
}
|
|
9435
9488
|
function g() {
|
|
9436
9489
|
i.visible = !1, i.layerId = null;
|
|
@@ -9491,7 +9544,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9491
9544
|
}, [
|
|
9492
9545
|
o("div", {
|
|
9493
9546
|
class: "hover:bg-gray-100 cursor-pointer p-[8px] rounded-lg flex justify-between items-center",
|
|
9494
|
-
onClick: (
|
|
9547
|
+
onClick: (C) => f(p.id)
|
|
9495
9548
|
}, [
|
|
9496
9549
|
o("div", Cg, [
|
|
9497
9550
|
(c(), x("svg", {
|
|
@@ -9516,16 +9569,16 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9516
9569
|
ne(Gn, { name: "out-in" }, {
|
|
9517
9570
|
default: Oe(() => [
|
|
9518
9571
|
De(o("div", null, [
|
|
9519
|
-
(c(!0), x(X, null, se(p.layers, (
|
|
9520
|
-
key:
|
|
9572
|
+
(c(!0), x(X, null, se(p.layers, (C) => (c(), x("div", {
|
|
9573
|
+
key: C.id,
|
|
9521
9574
|
class: "hover:bg-gray-100 rounded-lg flex items-center justify-between ml-[20px] py-[8px] px-[8px] gap-3"
|
|
9522
9575
|
}, [
|
|
9523
9576
|
o("label", Sg, [
|
|
9524
9577
|
o("input", {
|
|
9525
9578
|
type: "checkbox",
|
|
9526
9579
|
class: "peer hidden",
|
|
9527
|
-
checked: e.selected.includes(
|
|
9528
|
-
onChange: (I) => v.$emit("toggle-layer",
|
|
9580
|
+
checked: e.selected.includes(C.id),
|
|
9581
|
+
onChange: (I) => v.$emit("toggle-layer", C.id, I.target.checked, C)
|
|
9529
9582
|
}, null, 40, Eg),
|
|
9530
9583
|
h[3] || (h[3] = o("div", { class: "w-4 h-4 rounded border border-blue-800 flex items-center justify-center peer-checked:bg-blue-600 peer-checked:border-blue-600" }, [
|
|
9531
9584
|
o("svg", {
|
|
@@ -9543,21 +9596,21 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9543
9596
|
})
|
|
9544
9597
|
])
|
|
9545
9598
|
], -1)),
|
|
9546
|
-
o("span", Tg, V(
|
|
9599
|
+
o("span", Tg, V(C.name), 1)
|
|
9547
9600
|
]),
|
|
9548
9601
|
o("div", Mg, [
|
|
9549
|
-
Array.isArray(
|
|
9602
|
+
Array.isArray(C.filters) && C.filters.length ? (c(), le(_n, {
|
|
9550
9603
|
key: 0,
|
|
9551
|
-
count:
|
|
9552
|
-
layer:
|
|
9553
|
-
disabled: !e.selected.includes(
|
|
9554
|
-
onMouseenter: (I) => u(I,
|
|
9604
|
+
count: C.filters.length,
|
|
9605
|
+
layer: C,
|
|
9606
|
+
disabled: !e.selected.includes(C.id),
|
|
9607
|
+
onMouseenter: (I) => u(I, C.id),
|
|
9555
9608
|
onMouseleave: g,
|
|
9556
|
-
onFocus: (I) => u(I,
|
|
9609
|
+
onFocus: (I) => u(I, C.id),
|
|
9557
9610
|
onBlur: g
|
|
9558
9611
|
}, null, 8, ["count", "layer", "disabled", "onMouseenter", "onFocus"])) : W("", !0),
|
|
9559
9612
|
ne(lo, {
|
|
9560
|
-
items: d(
|
|
9613
|
+
items: d(C)
|
|
9561
9614
|
}, null, 8, ["items"])
|
|
9562
9615
|
])
|
|
9563
9616
|
]))), 128))
|
|
@@ -9594,7 +9647,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9594
9647
|
transform: "translateX(-50%)"
|
|
9595
9648
|
}), r = j(null), s = j(null);
|
|
9596
9649
|
let i = null;
|
|
9597
|
-
const a =
|
|
9650
|
+
const a = R(() => {
|
|
9598
9651
|
if (!l.open) return { display: "none" };
|
|
9599
9652
|
const v = Math.min(460, window.innerWidth - 24);
|
|
9600
9653
|
return {
|
|
@@ -9624,17 +9677,17 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9624
9677
|
}
|
|
9625
9678
|
function f() {
|
|
9626
9679
|
if (!l.open || !r.value || !s.value) return;
|
|
9627
|
-
const v = r.value.getBoundingClientRect(), h = 12, p = window.scrollX + h,
|
|
9628
|
-
let k = v.left + window.scrollX + (v.width -
|
|
9629
|
-
k < p && (k = p), k +
|
|
9680
|
+
const v = r.value.getBoundingClientRect(), h = 12, p = window.scrollX + h, C = window.scrollX + window.innerWidth - h, I = window.scrollY + h, O = window.scrollY + window.innerHeight - h, P = s.value.offsetWidth || Math.min(460, window.innerWidth - 24), T = s.value.offsetHeight || 0;
|
|
9681
|
+
let k = v.left + window.scrollX + (v.width - P) / 2;
|
|
9682
|
+
k < p && (k = p), k + P > C && (k = Math.max(p, C - P)), l.left = k;
|
|
9630
9683
|
let E = v.bottom + window.scrollY + h;
|
|
9631
9684
|
E + T > O && (E = v.top + window.scrollY - T - h, E < I && (E = Math.max(I, O - T))), E < I && (E = I), E + T > O && (E = Math.max(I, O - T)), l.top = E, l.transform = "none";
|
|
9632
9685
|
}
|
|
9633
9686
|
function b(v) {
|
|
9634
|
-
var p,
|
|
9687
|
+
var p, C;
|
|
9635
9688
|
if (!l.open) return;
|
|
9636
9689
|
const h = v.target;
|
|
9637
|
-
(p = r.value) != null && p.contains(h) || (
|
|
9690
|
+
(p = r.value) != null && p.contains(h) || (C = s.value) != null && C.contains(h) || g();
|
|
9638
9691
|
}
|
|
9639
9692
|
function u(v) {
|
|
9640
9693
|
v.key === "Escape" && g();
|
|
@@ -9695,10 +9748,10 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9695
9748
|
]))
|
|
9696
9749
|
], 512));
|
|
9697
9750
|
}
|
|
9698
|
-
}), Og = { class: "selected-tab" }, Dg = { class: "selected-tab__actions" },
|
|
9751
|
+
}), Og = { class: "selected-tab" }, Dg = { class: "selected-tab__actions" }, Rg = {
|
|
9699
9752
|
key: 0,
|
|
9700
9753
|
class: "selected-tab__scroll"
|
|
9701
|
-
},
|
|
9754
|
+
}, Pg = ["onDragstart", "onDragover", "onDrop"], Bg = { class: "selected-tab__item-header" }, Vg = { class: "selected-tab__item-info" }, Ug = ["checked", "onChange"], qg = { class: "selected-tab__item-name" }, Hg = { class: "selected-tab__item-controls" }, Wg = ["onClick"], Yg = { class: "selected-tab__menu-inner" }, Zg = /* @__PURE__ */ ie({
|
|
9702
9755
|
__name: "LayersSelectedTab",
|
|
9703
9756
|
props: {
|
|
9704
9757
|
catalog: {},
|
|
@@ -9740,7 +9793,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9740
9793
|
function p(L, N) {
|
|
9741
9794
|
N ? g.set(L, N) : g.delete(L);
|
|
9742
9795
|
}
|
|
9743
|
-
function
|
|
9796
|
+
function C(L) {
|
|
9744
9797
|
f.value = f.value === L ? null : L, f.value && qe(() => {
|
|
9745
9798
|
I(L), requestAnimationFrame(() => {
|
|
9746
9799
|
I(L);
|
|
@@ -9758,7 +9811,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9758
9811
|
const N = Le(L);
|
|
9759
9812
|
N && N.remove(), l("remove", L), f.value = null;
|
|
9760
9813
|
}
|
|
9761
|
-
function
|
|
9814
|
+
function P(L) {
|
|
9762
9815
|
const N = L.target, z = s.value, U = f.value;
|
|
9763
9816
|
if (z) {
|
|
9764
9817
|
const G = i.value, ee = a.get(z);
|
|
@@ -9775,9 +9828,9 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9775
9828
|
s.value && v(), f.value && I(f.value);
|
|
9776
9829
|
}
|
|
9777
9830
|
Me(() => {
|
|
9778
|
-
document.addEventListener("click",
|
|
9831
|
+
document.addEventListener("click", P), window.addEventListener("resize", T), window.addEventListener("scroll", T, !0);
|
|
9779
9832
|
}), Te(() => {
|
|
9780
|
-
document.removeEventListener("click",
|
|
9833
|
+
document.removeEventListener("click", P), window.removeEventListener("resize", T), window.removeEventListener("scroll", T, !0);
|
|
9781
9834
|
});
|
|
9782
9835
|
const { map: k } = Ke();
|
|
9783
9836
|
function E(L) {
|
|
@@ -9798,23 +9851,23 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9798
9851
|
}
|
|
9799
9852
|
(he = N == null ? void 0 : N.getSource) != null && he.call(N) && (f.value = null);
|
|
9800
9853
|
}
|
|
9801
|
-
const
|
|
9854
|
+
const $ = j(null), B = j(null);
|
|
9802
9855
|
function K(L, N) {
|
|
9803
|
-
|
|
9856
|
+
$.value = N, B.value = N, L.dataTransfer && (L.dataTransfer.effectAllowed = "move", L.dataTransfer.setData("text/plain", String(N)));
|
|
9804
9857
|
}
|
|
9805
9858
|
function Z(L) {
|
|
9806
9859
|
B.value = L;
|
|
9807
9860
|
}
|
|
9808
9861
|
function D(L, N) {
|
|
9809
|
-
if (L.preventDefault(),
|
|
9810
|
-
|
|
9862
|
+
if (L.preventDefault(), $.value === null || $.value === N) {
|
|
9863
|
+
$.value = null, B.value = null;
|
|
9811
9864
|
return;
|
|
9812
9865
|
}
|
|
9813
|
-
const z = [...n.selected], [U] = z.splice(
|
|
9814
|
-
z.splice(N, 0, U), l("reorder", z),
|
|
9866
|
+
const z = [...n.selected], [U] = z.splice($.value, 1);
|
|
9867
|
+
z.splice(N, 0, U), l("reorder", z), $.value = null, B.value = null;
|
|
9815
9868
|
}
|
|
9816
9869
|
function M() {
|
|
9817
|
-
|
|
9870
|
+
$.value = null, B.value = null;
|
|
9818
9871
|
}
|
|
9819
9872
|
function w(L) {
|
|
9820
9873
|
return L == null || L === "" ? null : String(L);
|
|
@@ -9861,14 +9914,14 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9861
9914
|
o("span", null, "Вибрати шар", -1)
|
|
9862
9915
|
])])
|
|
9863
9916
|
]),
|
|
9864
|
-
e.selected.length ? (c(), x("div",
|
|
9917
|
+
e.selected.length ? (c(), x("div", Rg, [
|
|
9865
9918
|
o("div", null, [
|
|
9866
9919
|
(c(!0), x(X, null, se(e.selected, (z, U) => {
|
|
9867
9920
|
var G;
|
|
9868
9921
|
return c(), x("div", {
|
|
9869
9922
|
key: z,
|
|
9870
9923
|
class: be(["selected-tab__item", {
|
|
9871
|
-
"selected-tab__item--dragging":
|
|
9924
|
+
"selected-tab__item--dragging": $.value === U,
|
|
9872
9925
|
"selected-tab__item--over": B.value === U
|
|
9873
9926
|
}]),
|
|
9874
9927
|
draggable: "true",
|
|
@@ -9895,7 +9948,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9895
9948
|
class: "selected-tab__item-menu",
|
|
9896
9949
|
ref_for: !0,
|
|
9897
9950
|
ref: (ee) => p(z, ee),
|
|
9898
|
-
onClick: Ue((ee) =>
|
|
9951
|
+
onClick: Ue((ee) => C(z), ["stop"])
|
|
9899
9952
|
}, [...N[5] || (N[5] = [
|
|
9900
9953
|
o("svg", {
|
|
9901
9954
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -9928,7 +9981,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
9928
9981
|
])], 8, Wg)
|
|
9929
9982
|
])
|
|
9930
9983
|
])
|
|
9931
|
-
], 42,
|
|
9984
|
+
], 42, Pg);
|
|
9932
9985
|
}), 128))
|
|
9933
9986
|
])
|
|
9934
9987
|
])) : W("", !0),
|
|
@@ -10070,10 +10123,10 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10070
10123
|
},
|
|
10071
10124
|
emits: ["change"],
|
|
10072
10125
|
setup(e, { emit: t }) {
|
|
10073
|
-
const n = st(() => import("@opengis/filter")), l = e, r = t, s =
|
|
10126
|
+
const n = st(() => import("@opengis/filter")), l = e, r = t, s = R(() => {
|
|
10074
10127
|
var m;
|
|
10075
10128
|
return ((m = l.layer) == null ? void 0 : m.filters) ?? [];
|
|
10076
|
-
}), i =
|
|
10129
|
+
}), i = R(() => s.value.length > 0);
|
|
10077
10130
|
function a(m) {
|
|
10078
10131
|
r("change", m.data);
|
|
10079
10132
|
}
|
|
@@ -10161,7 +10214,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10161
10214
|
popup: _.popup
|
|
10162
10215
|
};
|
|
10163
10216
|
}
|
|
10164
|
-
function
|
|
10217
|
+
function C(_, A, L) {
|
|
10165
10218
|
var G;
|
|
10166
10219
|
const N = L ?? d(_);
|
|
10167
10220
|
if (!N) return;
|
|
@@ -10209,16 +10262,16 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10209
10262
|
}
|
|
10210
10263
|
});
|
|
10211
10264
|
}
|
|
10212
|
-
function
|
|
10265
|
+
function P(_) {
|
|
10213
10266
|
!_ || !Array.isArray(_.filters) || _.filters.length === 0 || i.value.includes(_.id) && (b.value = _.id, f[_.id] || (f[_.id] = {}), r.value = "filter");
|
|
10214
10267
|
}
|
|
10215
10268
|
function T() {
|
|
10216
10269
|
r.value = "catalog";
|
|
10217
10270
|
}
|
|
10218
|
-
const k =
|
|
10271
|
+
const k = R(() => b.value ? d(b.value) : null), E = R(() => {
|
|
10219
10272
|
const _ = b.value;
|
|
10220
10273
|
return _ ? f[_] ?? {} : {};
|
|
10221
|
-
}),
|
|
10274
|
+
}), $ = R(() => s.value.groups.reduce((_, A) => _ + A.layers.length, 0)), B = R(() => r.value === "selected" ? "Вибрані шари" : r.value === "filter" ? "Фільтр шарів" : "Каталог"), K = R(() => r.value === "selected" ? i.value.length : r.value === "catalog" ? $.value : null), Z = R(() => {
|
|
10222
10275
|
var _;
|
|
10223
10276
|
return r.value === "filter" ? ((_ = k.value) == null ? void 0 : _.name) ?? "" : "";
|
|
10224
10277
|
});
|
|
@@ -10239,7 +10292,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10239
10292
|
const G = U.trim();
|
|
10240
10293
|
if (!G) return;
|
|
10241
10294
|
const ee = d(G);
|
|
10242
|
-
ee &&
|
|
10295
|
+
ee && C(G, !0, ee);
|
|
10243
10296
|
});
|
|
10244
10297
|
}
|
|
10245
10298
|
te(b, (_) => {
|
|
@@ -10352,13 +10405,13 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10352
10405
|
selected: i.value,
|
|
10353
10406
|
search: a.value,
|
|
10354
10407
|
"onUpdate:search": A[2] || (A[2] = (L) => a.value = L),
|
|
10355
|
-
onToggleLayer:
|
|
10356
|
-
onOpenFilter:
|
|
10408
|
+
onToggleLayer: C,
|
|
10409
|
+
onOpenFilter: P
|
|
10357
10410
|
}, null, 8, ["catalog", "selected", "search"])) : r.value === "selected" ? (c(), le(Gg, {
|
|
10358
10411
|
key: 1,
|
|
10359
10412
|
catalog: s.value,
|
|
10360
10413
|
selected: i.value,
|
|
10361
|
-
onToggleLayer:
|
|
10414
|
+
onToggleLayer: C,
|
|
10362
10415
|
onSelectLayer: A[3] || (A[3] = (L) => r.value = "catalog"),
|
|
10363
10416
|
onReorder: O,
|
|
10364
10417
|
onRemove: A[4] || (A[4] = (L) => i.value = i.value.filter((N) => N !== L))
|
|
@@ -10398,13 +10451,13 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10398
10451
|
function d(_) {
|
|
10399
10452
|
return _ && JSON.parse(JSON.stringify(_));
|
|
10400
10453
|
}
|
|
10401
|
-
const y =
|
|
10454
|
+
const y = R(() => {
|
|
10402
10455
|
const _ = n.config.layer;
|
|
10403
10456
|
if (typeof _ != "string") throw new Error("MapAttributeWidget: `layer` must be a string");
|
|
10404
10457
|
const A = _.trim();
|
|
10405
10458
|
if (!A) throw new Error("MapAttributeWidget: `layer` must be non-empty");
|
|
10406
10459
|
return A;
|
|
10407
|
-
}), v =
|
|
10460
|
+
}), v = R(() => {
|
|
10408
10461
|
const { list: _, attribute: A } = n.config;
|
|
10409
10462
|
if (Array.isArray(_) && _.length)
|
|
10410
10463
|
return _.map((L) => ({
|
|
@@ -10419,7 +10472,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10419
10472
|
return [{ id: L, text: null }];
|
|
10420
10473
|
}
|
|
10421
10474
|
throw new Error("MapAttributeWidget: `attribute` or `list` must be provided");
|
|
10422
|
-
}), h =
|
|
10475
|
+
}), h = R(() => v.value.map((_) => ({
|
|
10423
10476
|
id: _.id,
|
|
10424
10477
|
label: _.text || u.value[_.id] || _.id
|
|
10425
10478
|
})));
|
|
@@ -10434,7 +10487,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10434
10487
|
},
|
|
10435
10488
|
{ immediate: !0 }
|
|
10436
10489
|
);
|
|
10437
|
-
const p =
|
|
10490
|
+
const p = R(() => {
|
|
10438
10491
|
var _;
|
|
10439
10492
|
return g.value || ((_ = v.value[0]) == null ? void 0 : _.id) || null;
|
|
10440
10493
|
});
|
|
@@ -10442,16 +10495,16 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10442
10495
|
var _, A;
|
|
10443
10496
|
(A = (_ = a.value) == null ? void 0 : _.remove) == null || A.call(_), a.value = null, m.value = null, f.value = null, b.value = null, u.value = {};
|
|
10444
10497
|
});
|
|
10445
|
-
const
|
|
10498
|
+
const C = R(() => {
|
|
10446
10499
|
var _;
|
|
10447
10500
|
return (_ = f.value) != null && _.length ? {
|
|
10448
10501
|
id: y.value,
|
|
10449
10502
|
name: m.value,
|
|
10450
10503
|
filters: f.value
|
|
10451
10504
|
} : null;
|
|
10452
|
-
}), I =
|
|
10505
|
+
}), I = R(() => {
|
|
10453
10506
|
var _, A;
|
|
10454
|
-
return ((A = (_ =
|
|
10507
|
+
return ((A = (_ = C.value) == null ? void 0 : _.filters) == null ? void 0 : A.length) || 0;
|
|
10455
10508
|
});
|
|
10456
10509
|
async function O(_) {
|
|
10457
10510
|
var N;
|
|
@@ -10471,7 +10524,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10471
10524
|
return G && (z[G] = ee || G), z;
|
|
10472
10525
|
}, {}), L;
|
|
10473
10526
|
}
|
|
10474
|
-
function
|
|
10527
|
+
function P(_, A) {
|
|
10475
10528
|
let L = Le(_);
|
|
10476
10529
|
if (!L) {
|
|
10477
10530
|
const N = `${location.origin}/api/vtile/${_}/ua/{z}/{x}/{y}.vmt`;
|
|
@@ -10522,7 +10575,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10522
10575
|
const ee = k(L == null ? void 0 : L.style).get(_);
|
|
10523
10576
|
return typeof (ee == null ? void 0 : ee.color) == "string" && ee.color.trim() ? ee.color.trim() : t[z % t.length];
|
|
10524
10577
|
}
|
|
10525
|
-
function
|
|
10578
|
+
function $(_, A, L, N) {
|
|
10526
10579
|
var z;
|
|
10527
10580
|
return (A == null ? void 0 : A.text) || (A == null ? void 0 : A.label) || (A == null ? void 0 : A.name) || (A == null ? void 0 : A[`${N}_text`]) || ((z = k(L == null ? void 0 : L.style).get(_)) == null ? void 0 : z.label) || _;
|
|
10528
10581
|
}
|
|
@@ -10550,11 +10603,11 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10550
10603
|
return;
|
|
10551
10604
|
r.value = !0;
|
|
10552
10605
|
const L = await O(_);
|
|
10553
|
-
|
|
10606
|
+
P(_, L);
|
|
10554
10607
|
const N = await T(_, A), z = Array.isArray(N == null ? void 0 : N.rows) ? N.rows.map((ee, he) => {
|
|
10555
10608
|
const ce = (ee == null ? void 0 : ee.id) ?? (ee == null ? void 0 : ee.value), pe = ce != null ? String(ce) : "";
|
|
10556
10609
|
if (!pe) return null;
|
|
10557
|
-
const Se =
|
|
10610
|
+
const Se = $(pe, ee, L, A), Ce = Number((ee == null ? void 0 : ee.count) ?? 0) || 0, Ae = E(pe, ee, L, A, he);
|
|
10558
10611
|
return {
|
|
10559
10612
|
id: pe,
|
|
10560
10613
|
label: Se,
|
|
@@ -10571,7 +10624,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10571
10624
|
},
|
|
10572
10625
|
{ immediate: !0 }
|
|
10573
10626
|
);
|
|
10574
|
-
const Z =
|
|
10627
|
+
const Z = R(() => "Набори даних"), D = R(() => s.value.reduce((_, A) => _ + A.count, 0)), M = R(() => {
|
|
10575
10628
|
var L;
|
|
10576
10629
|
const _ = p.value;
|
|
10577
10630
|
return ((L = h.value.find((N) => N.id === _)) == null ? void 0 : L.label) || null || i.value || _ || null;
|
|
@@ -10589,11 +10642,11 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10589
10642
|
M.value && h.value.length === 1 ? (c(), x("p", gy, V(M.value), 1)) : W("", !0)
|
|
10590
10643
|
]),
|
|
10591
10644
|
o("div", yy, [
|
|
10592
|
-
|
|
10645
|
+
C.value ? (c(), le(_n, {
|
|
10593
10646
|
key: 0,
|
|
10594
10647
|
class: "flex justify-center items-center h-[36px] w-[36px] text-sm border border-gray-200 text-gray-600 hover:bg-gray-100 rounded-full",
|
|
10595
10648
|
count: I.value,
|
|
10596
|
-
layer:
|
|
10649
|
+
layer: C.value
|
|
10597
10650
|
}, null, 8, ["count", "layer"])) : W("", !0),
|
|
10598
10651
|
o("button", {
|
|
10599
10652
|
class: "flex justify-center items-center h-[36px] w-[36px] text-sm border border-gray-200 text-gray-600 hover:bg-gray-100 rounded-full",
|
|
@@ -10665,7 +10718,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10665
10718
|
}), Xo = /* @__PURE__ */ ge(My, [["__scopeId", "data-v-9686ce7b"]]), Fy = { class: "map-search-widget flex flex-col gap-2 bg-white border border-stone-200 shadow-2xs rounded-xl widget p-3 min-w-[200px]" }, Iy = ["title"], jy = {
|
|
10666
10719
|
key: 0,
|
|
10667
10720
|
class: "vs-select__options absolute z-50 mt-1 w-auto min-w-full bg-white border border-gray-300 shadow-lg rounded-lg text-sm text-gray-900"
|
|
10668
|
-
}, zy = ["onClick"], Ny = ["placeholder"], Oy = { class: "absolute inset-y-0 right-2 flex items-center gap-1" }, Dy = { class: "divide-y divide-gray-100" },
|
|
10721
|
+
}, zy = ["onClick"], Ny = ["placeholder"], Oy = { class: "absolute inset-y-0 right-2 flex items-center gap-1" }, Dy = { class: "divide-y divide-gray-100" }, Ry = ["onClick"], Kt = "search-geom-source", Xt = "search-geom-layer-fill", fn = "search-geom-layer-line", Py = 30, By = 8, Vy = "https://data.softpro.ua/api-user/gis-url-proxy", Uy = "https://geo.rv.ua/api-user/dzk.api", qy = "https://nominatim.openstreetmap.org/search", Hy = /* @__PURE__ */ ie({
|
|
10669
10722
|
__name: "MapSearchWidget",
|
|
10670
10723
|
props: {
|
|
10671
10724
|
config: {}
|
|
@@ -10682,26 +10735,26 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10682
10735
|
const Q = r();
|
|
10683
10736
|
return ($e = Q == null ? void 0 : Q.map) == null ? void 0 : $e.searchViewbox;
|
|
10684
10737
|
}
|
|
10685
|
-
const a = !!s() ? ["xy", "parcel", "address"] : ["xy", "parcel"], m =
|
|
10738
|
+
const a = !!s() ? ["xy", "parcel", "address"] : ["xy", "parcel"], m = R(() => {
|
|
10686
10739
|
var J, Q;
|
|
10687
10740
|
const Y = (Q = (J = t.config) == null ? void 0 : J.tools) == null ? void 0 : Q.filter((ve) => a.includes(ve));
|
|
10688
10741
|
return Y && Y.length ? Y : a;
|
|
10689
|
-
}), f =
|
|
10742
|
+
}), f = R(() => {
|
|
10690
10743
|
var Y, J;
|
|
10691
10744
|
return ((J = (Y = t.config) == null ? void 0 : Y.placeholder) == null ? void 0 : J.trim()) || "Пошук…";
|
|
10692
10745
|
}), b = j(m.value[0]);
|
|
10693
10746
|
te(m, (Y) => {
|
|
10694
10747
|
Y.includes(b.value) || (b.value = Y[0]);
|
|
10695
10748
|
});
|
|
10696
|
-
const u = j(""), g = j(!1), d = j(null), y = j(null), v = j([]), h = j(null), p =
|
|
10749
|
+
const u = j(""), g = j(!1), d = j(null), y = j(null), v = j([]), h = j(null), p = R(() => b.value === "address" && v.value.length > 0), C = R(() => {
|
|
10697
10750
|
var Y;
|
|
10698
10751
|
return ((Y = t.config) == null ? void 0 : Y.addressDebounceMs) ?? 1e3;
|
|
10699
10752
|
});
|
|
10700
10753
|
let I = null;
|
|
10701
10754
|
const O = j(!1);
|
|
10702
|
-
let
|
|
10755
|
+
let P = null;
|
|
10703
10756
|
function T() {
|
|
10704
|
-
|
|
10757
|
+
P && (P.remove(), P = null);
|
|
10705
10758
|
}
|
|
10706
10759
|
function k() {
|
|
10707
10760
|
var J;
|
|
@@ -10743,18 +10796,18 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10743
10796
|
}
|
|
10744
10797
|
}), K(J);
|
|
10745
10798
|
}
|
|
10746
|
-
let
|
|
10799
|
+
let $ = null;
|
|
10747
10800
|
function B() {
|
|
10748
|
-
|
|
10801
|
+
$ && (cancelAnimationFrame($), $ = null);
|
|
10749
10802
|
}
|
|
10750
10803
|
function K(Y) {
|
|
10751
10804
|
const Q = performance.now();
|
|
10752
10805
|
function ve(ye) {
|
|
10753
10806
|
if (!Y.getLayer(Xt)) return;
|
|
10754
10807
|
const Ie = (ye - Q) % 1200 / 1200, ke = Math.sin(Ie * Math.PI), nt = 0.2 + ke * 0.3, q = 1 + ke * 1;
|
|
10755
|
-
Y.setPaintProperty(Xt, "fill-opacity", nt), Y.setPaintProperty(fn, "line-width", q),
|
|
10808
|
+
Y.setPaintProperty(Xt, "fill-opacity", nt), Y.setPaintProperty(fn, "line-width", q), $ = requestAnimationFrame(ve);
|
|
10756
10809
|
}
|
|
10757
|
-
|
|
10810
|
+
$ = requestAnimationFrame(ve);
|
|
10758
10811
|
}
|
|
10759
10812
|
function Z(Y, J) {
|
|
10760
10813
|
var ye, $e, Ie;
|
|
@@ -10767,7 +10820,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10767
10820
|
return;
|
|
10768
10821
|
}
|
|
10769
10822
|
const ve = ((Ie = t.config) == null ? void 0 : Ie.markerColor) || "#3B82F6";
|
|
10770
|
-
|
|
10823
|
+
P = new maplibregl.Marker({ color: ve }).setLngLat([Y.lng, Y.lat]).addTo(Q);
|
|
10771
10824
|
}
|
|
10772
10825
|
const D = lt({
|
|
10773
10826
|
position: "absolute",
|
|
@@ -10778,7 +10831,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10778
10831
|
});
|
|
10779
10832
|
function M() {
|
|
10780
10833
|
if (!y.value) return;
|
|
10781
|
-
const Y = y.value.getBoundingClientRect(), J = Y.width +
|
|
10834
|
+
const Y = y.value.getBoundingClientRect(), J = Y.width + Py, Q = Y.left + window.scrollX, ve = Y.bottom + window.scrollY + By;
|
|
10782
10835
|
D.left = `${Q}px`, D.top = `${ve}px`, D.width = `${J}px`, D.display = "block";
|
|
10783
10836
|
}
|
|
10784
10837
|
const w = () => {
|
|
@@ -10807,7 +10860,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
10807
10860
|
const Q = (J == null ? void 0 : J.message) || "Помилка пошуку адреси";
|
|
10808
10861
|
Ee({ type: "error", title: "Пошук адреси", message: Q });
|
|
10809
10862
|
});
|
|
10810
|
-
},
|
|
10863
|
+
}, C.value);
|
|
10811
10864
|
});
|
|
10812
10865
|
function A(Y) {
|
|
10813
10866
|
b.value = Y;
|
|
@@ -11091,7 +11144,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11091
11144
|
key: Q.id,
|
|
11092
11145
|
class: "px-3 py-2 cursor-pointer hover:bg-gray-50",
|
|
11093
11146
|
onClick: (ve) => pe(Q)
|
|
11094
|
-
}, V(Q.title), 9,
|
|
11147
|
+
}, V(Q.title), 9, Ry))), 128))
|
|
11095
11148
|
])
|
|
11096
11149
|
], 4)
|
|
11097
11150
|
])) : W("", !0)
|
|
@@ -11108,19 +11161,19 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11108
11161
|
!window.mapboxgl && window.maplibregl && (window.mapboxgl = window.maplibregl);
|
|
11109
11162
|
}
|
|
11110
11163
|
function u(T) {
|
|
11111
|
-
if (Array.from(document.styleSheets).some((
|
|
11164
|
+
if (Array.from(document.styleSheets).some(($) => {
|
|
11112
11165
|
var B;
|
|
11113
|
-
return (B =
|
|
11166
|
+
return (B = $ == null ? void 0 : $.href) == null ? void 0 : B.includes(T);
|
|
11114
11167
|
})) return;
|
|
11115
11168
|
const E = document.createElement("link");
|
|
11116
11169
|
E.rel = "stylesheet", E.href = T, document.head.appendChild(E);
|
|
11117
11170
|
}
|
|
11118
11171
|
function g(T) {
|
|
11119
11172
|
return new Promise((k, E) => {
|
|
11120
|
-
const
|
|
11121
|
-
if (
|
|
11122
|
-
if (
|
|
11123
|
-
|
|
11173
|
+
const $ = Array.from(document.scripts).find((K) => K.src === T);
|
|
11174
|
+
if ($) {
|
|
11175
|
+
if ($._loaded) return k();
|
|
11176
|
+
$.addEventListener("load", () => k()), $.addEventListener("error", () => E(new Error(`Failed ${T}`)));
|
|
11124
11177
|
return;
|
|
11125
11178
|
}
|
|
11126
11179
|
const B = document.createElement("script");
|
|
@@ -11130,9 +11183,9 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11130
11183
|
});
|
|
11131
11184
|
}
|
|
11132
11185
|
function d() {
|
|
11133
|
-
var k, E,
|
|
11186
|
+
var k, E, $;
|
|
11134
11187
|
const T = window;
|
|
11135
|
-
return T.MapboxExportControl || ((k = T.mapboxgl) == null ? void 0 : k.MapboxExportControl) || ((E = T.mapboxglExport) == null ? void 0 : E.MapboxExportControl) || ((
|
|
11188
|
+
return T.MapboxExportControl || ((k = T.mapboxgl) == null ? void 0 : k.MapboxExportControl) || ((E = T.mapboxglExport) == null ? void 0 : E.MapboxExportControl) || (($ = T.mapboxglExport) == null ? void 0 : $.default) || null;
|
|
11136
11189
|
}
|
|
11137
11190
|
function y() {
|
|
11138
11191
|
const T = document.createElementNS("http://www.w3.org/2000/svg", "svg");
|
|
@@ -11141,7 +11194,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11141
11194
|
{ d: "M17 17h2a2 2 0 0 0 2 -2v-4a2 2 0 0 0 -2 -2h-14a2 2 0 0 0 -2 2v4a2 2 0 0 0 2 2h2" },
|
|
11142
11195
|
{ d: "M17 9v-4a2 2 0 0 0 -2 -2h-6a2 2 0 0 0 -2 2v4" },
|
|
11143
11196
|
{ d: "M7 13m0 2a2 2 0 0 1 2 -2h6a2 2 0 0 1 2 2v4a2 2 0 0 1 -2 2h-6a2 2 0 0 1 -2 -2z" }
|
|
11144
|
-
].forEach((E,
|
|
11197
|
+
].forEach((E, $) => {
|
|
11145
11198
|
const B = document.createElementNS("http://www.w3.org/2000/svg", "path");
|
|
11146
11199
|
Object.entries(E).forEach(([K, Z]) => {
|
|
11147
11200
|
B.setAttribute(K, Z);
|
|
@@ -11162,25 +11215,25 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11162
11215
|
"bg-gray-700 text-white text-[0.75rem] font-medium rounded-md",
|
|
11163
11216
|
"opacity-0 group-hover:opacity-100 group-focus-visible:opacity-100",
|
|
11164
11217
|
"pointer-events-none transition-opacity duration-200 whitespace-nowrap"
|
|
11165
|
-
].join(" "), E.textContent = "Друк карти", E.setAttribute("aria-hidden", "true"), T.appendChild(k), T.appendChild(E), T.addEventListener("click", (
|
|
11166
|
-
|
|
11218
|
+
].join(" "), E.textContent = "Друк карти", E.setAttribute("aria-hidden", "true"), T.appendChild(k), T.appendChild(E), T.addEventListener("click", ($) => {
|
|
11219
|
+
$.stopPropagation(), h();
|
|
11167
11220
|
}), m.value = T, T;
|
|
11168
11221
|
}
|
|
11169
11222
|
function h() {
|
|
11170
11223
|
if (!a.value) return;
|
|
11171
|
-
a.value.style.display === "block" ?
|
|
11224
|
+
a.value.style.display === "block" ? C() : p();
|
|
11172
11225
|
}
|
|
11173
11226
|
function p() {
|
|
11174
11227
|
var T, k, E;
|
|
11175
11228
|
a.value && (a.value.style.display = "block", (T = m.value) == null || T.classList.add("scale-105", "shadow-xl"), (k = i.value) == null || k.toggleCrosshair(!0), (E = i.value) == null || E.togglePrintableArea(!0), document.addEventListener("click", I));
|
|
11176
11229
|
}
|
|
11177
|
-
function
|
|
11230
|
+
function C() {
|
|
11178
11231
|
var T, k, E;
|
|
11179
11232
|
a.value && (a.value.style.display = "none", (T = m.value) == null || T.classList.remove("scale-105", "shadow-xl"), (k = i.value) == null || k.toggleCrosshair(!1), (E = i.value) == null || E.togglePrintableArea(!1), document.removeEventListener("click", I));
|
|
11180
11233
|
}
|
|
11181
11234
|
function I(T) {
|
|
11182
11235
|
const k = s.value;
|
|
11183
|
-
k && (T.target && k.contains(T.target) ||
|
|
11236
|
+
k && (T.target && k.contains(T.target) || C());
|
|
11184
11237
|
}
|
|
11185
11238
|
function O(T) {
|
|
11186
11239
|
const k = {
|
|
@@ -11197,15 +11250,15 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11197
11250
|
"Page Size": "Розмір",
|
|
11198
11251
|
"Page Orientation": "Орієнтація"
|
|
11199
11252
|
};
|
|
11200
|
-
T.querySelectorAll("label, option").forEach((
|
|
11253
|
+
T.querySelectorAll("label, option").forEach(($) => {
|
|
11201
11254
|
var K;
|
|
11202
|
-
const B = (K =
|
|
11203
|
-
B && k[B] && (
|
|
11255
|
+
const B = (K = $.textContent) == null ? void 0 : K.trim();
|
|
11256
|
+
B && k[B] && ($.textContent = k[B]);
|
|
11204
11257
|
});
|
|
11205
11258
|
const E = T.querySelector("button");
|
|
11206
11259
|
E && (E.textContent = "Друкувати");
|
|
11207
11260
|
}
|
|
11208
|
-
function
|
|
11261
|
+
function P(T) {
|
|
11209
11262
|
const k = T.querySelector(".mapboxgl-export-list");
|
|
11210
11263
|
if (!k || !s.value) return;
|
|
11211
11264
|
a.value = k;
|
|
@@ -11215,10 +11268,10 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11215
11268
|
s.value.appendChild(B);
|
|
11216
11269
|
}
|
|
11217
11270
|
k.style.display = "none";
|
|
11218
|
-
const
|
|
11219
|
-
if (!k[
|
|
11271
|
+
const $ = "_printControlBound";
|
|
11272
|
+
if (!k[$]) {
|
|
11220
11273
|
const B = (K) => K.stopPropagation();
|
|
11221
|
-
k.addEventListener("click", B), k.addEventListener("mousedown", B), k[
|
|
11274
|
+
k.addEventListener("click", B), k.addEventListener("mousedown", B), k[$] = !0;
|
|
11222
11275
|
}
|
|
11223
11276
|
s.value.appendChild(k), O(k);
|
|
11224
11277
|
}
|
|
@@ -11229,8 +11282,8 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11229
11282
|
u(Wy), b();
|
|
11230
11283
|
try {
|
|
11231
11284
|
await g(Yy);
|
|
11232
|
-
} catch (
|
|
11233
|
-
console.warn("[MapPrintControl] load error",
|
|
11285
|
+
} catch ($) {
|
|
11286
|
+
console.warn("[MapPrintControl] load error", $);
|
|
11234
11287
|
return;
|
|
11235
11288
|
}
|
|
11236
11289
|
const k = d();
|
|
@@ -11244,17 +11297,17 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11244
11297
|
PrintableArea: !0
|
|
11245
11298
|
});
|
|
11246
11299
|
if (i.value = E, typeof E.onAdd == "function") {
|
|
11247
|
-
const
|
|
11300
|
+
const $ = E.onAdd.bind(E);
|
|
11248
11301
|
E.onAdd = (B) => {
|
|
11249
|
-
const K =
|
|
11250
|
-
return setTimeout(() => K &&
|
|
11302
|
+
const K = $(B);
|
|
11303
|
+
return setTimeout(() => K && P(K), 50), K;
|
|
11251
11304
|
};
|
|
11252
11305
|
}
|
|
11253
|
-
l ? l(E, "top-right") : T.addControl(E, "top-right"), f = (
|
|
11254
|
-
|
|
11306
|
+
l ? l(E, "top-right") : T.addControl(E, "top-right"), f = ($) => {
|
|
11307
|
+
$.key === "Escape" && C();
|
|
11255
11308
|
}, document.addEventListener("keyup", f);
|
|
11256
11309
|
}), Te(() => {
|
|
11257
|
-
|
|
11310
|
+
C(), f && (document.removeEventListener("keyup", f), f = null);
|
|
11258
11311
|
const T = t.value;
|
|
11259
11312
|
if (i.value)
|
|
11260
11313
|
try {
|
|
@@ -11287,22 +11340,22 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11287
11340
|
options: {}
|
|
11288
11341
|
},
|
|
11289
11342
|
setup(e) {
|
|
11290
|
-
var I, O,
|
|
11291
|
-
const t = e, n = ((O = (I = Tt()) == null ? void 0 : I.appContext.config.globalProperties) == null ? void 0 : O.$settings) || null, l = Vt((
|
|
11343
|
+
var I, O, P, T;
|
|
11344
|
+
const t = e, n = ((O = (I = Tt()) == null ? void 0 : I.appContext.config.globalProperties) == null ? void 0 : O.$settings) || null, l = Vt((P = n == null ? void 0 : n.map) == null ? void 0 : P.center) || [30, 50], r = j(null), s = Qo(null), i = (T = t.options) == null ? void 0 : T.active, a = j(i === void 0 ? !1 : !!i);
|
|
11292
11345
|
function m(k, E) {
|
|
11293
11346
|
return typeof k == "number" && Number.isFinite(k) ? k : E;
|
|
11294
11347
|
}
|
|
11295
|
-
const f =
|
|
11348
|
+
const f = R(() => {
|
|
11296
11349
|
var K, Z;
|
|
11297
|
-
const k = (K = t.options) == null ? void 0 : K.width, E = (Z = t.options) == null ? void 0 : Z.height,
|
|
11350
|
+
const k = (K = t.options) == null ? void 0 : K.width, E = (Z = t.options) == null ? void 0 : Z.height, $ = m(t.width ?? k, 210), B = m(t.height ?? E, 150);
|
|
11298
11351
|
return {
|
|
11299
|
-
width: `${
|
|
11352
|
+
width: `${$}px`,
|
|
11300
11353
|
height: `${B}px`
|
|
11301
11354
|
};
|
|
11302
11355
|
});
|
|
11303
11356
|
function b() {
|
|
11304
|
-
var E,
|
|
11305
|
-
const k = (
|
|
11357
|
+
var E, $;
|
|
11358
|
+
const k = ($ = (E = t.mapContext) == null ? void 0 : E.map) == null ? void 0 : $.value;
|
|
11306
11359
|
if (!k || typeof k.getStyle != "function") return null;
|
|
11307
11360
|
try {
|
|
11308
11361
|
const B = k.getStyle();
|
|
@@ -11315,7 +11368,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11315
11368
|
function g() {
|
|
11316
11369
|
var K;
|
|
11317
11370
|
if (typeof window > "u" || s.value || !r.value) return;
|
|
11318
|
-
const k = b(), E = l,
|
|
11371
|
+
const k = b(), E = l, $ = {
|
|
11319
11372
|
container: r.value,
|
|
11320
11373
|
style: k ?? {
|
|
11321
11374
|
version: 8,
|
|
@@ -11339,10 +11392,10 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11339
11392
|
interactive: !1,
|
|
11340
11393
|
attributionControl: !1
|
|
11341
11394
|
}, B = {
|
|
11342
|
-
|
|
11395
|
+
...$,
|
|
11343
11396
|
...t.options ?? {}
|
|
11344
11397
|
};
|
|
11345
|
-
B.container =
|
|
11398
|
+
B.container = $.container, s.value = new maplibregl.Map(B), s.value.on("load", () => {
|
|
11346
11399
|
y(), h();
|
|
11347
11400
|
});
|
|
11348
11401
|
}
|
|
@@ -11409,14 +11462,14 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11409
11462
|
}
|
|
11410
11463
|
const E = k.getBounds();
|
|
11411
11464
|
if (!E) return;
|
|
11412
|
-
const
|
|
11413
|
-
if (
|
|
11465
|
+
const $ = E.getNorthEast(), B = E.getSouthWest();
|
|
11466
|
+
if (!$ || !B) return;
|
|
11414
11467
|
const K = [
|
|
11415
|
-
[B.lng,
|
|
11416
|
-
[
|
|
11417
|
-
[
|
|
11468
|
+
[B.lng, $.lat],
|
|
11469
|
+
[$.lng, $.lat],
|
|
11470
|
+
[$.lng, B.lat],
|
|
11418
11471
|
[B.lng, B.lat],
|
|
11419
|
-
[B.lng,
|
|
11472
|
+
[B.lng, $.lat]
|
|
11420
11473
|
], Z = s.value.getSource(pn);
|
|
11421
11474
|
if (!Z) {
|
|
11422
11475
|
y();
|
|
@@ -11432,11 +11485,11 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11432
11485
|
});
|
|
11433
11486
|
}
|
|
11434
11487
|
function p() {
|
|
11435
|
-
var
|
|
11436
|
-
const k = t.mapContext, E = (
|
|
11488
|
+
var $;
|
|
11489
|
+
const k = t.mapContext, E = ($ = k == null ? void 0 : k.map) == null ? void 0 : $.value;
|
|
11437
11490
|
!(k != null && k.on) || !E || (u == null || u(), u = k.on("move", h), h());
|
|
11438
11491
|
}
|
|
11439
|
-
async function
|
|
11492
|
+
async function C() {
|
|
11440
11493
|
const k = t.mapContext;
|
|
11441
11494
|
if (k) {
|
|
11442
11495
|
if (typeof k.ready == "function")
|
|
@@ -11449,11 +11502,11 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11449
11502
|
}
|
|
11450
11503
|
}
|
|
11451
11504
|
return Me(() => {
|
|
11452
|
-
g(),
|
|
11505
|
+
g(), C();
|
|
11453
11506
|
}), te(
|
|
11454
11507
|
() => t.mapContext,
|
|
11455
11508
|
() => {
|
|
11456
|
-
|
|
11509
|
+
C(), h();
|
|
11457
11510
|
}
|
|
11458
11511
|
), te(
|
|
11459
11512
|
() => {
|
|
@@ -11461,7 +11514,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11461
11514
|
return (E = (k = t.mapContext) == null ? void 0 : k.map) == null ? void 0 : E.value;
|
|
11462
11515
|
},
|
|
11463
11516
|
() => {
|
|
11464
|
-
s.value && (d(),
|
|
11517
|
+
s.value && (d(), C());
|
|
11465
11518
|
}
|
|
11466
11519
|
), te(
|
|
11467
11520
|
f,
|
|
@@ -11478,7 +11531,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11478
11531
|
u == null || u(), u = null, s.value && (s.value.remove(), s.value = null);
|
|
11479
11532
|
const k = (E = t.options) == null ? void 0 : E.active;
|
|
11480
11533
|
typeof k == "boolean" && (a.value = k), qe(() => {
|
|
11481
|
-
g(),
|
|
11534
|
+
g(), C();
|
|
11482
11535
|
});
|
|
11483
11536
|
},
|
|
11484
11537
|
{ deep: !0 }
|
|
@@ -11542,36 +11595,36 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11542
11595
|
},
|
|
11543
11596
|
setup(e) {
|
|
11544
11597
|
var $e, Ie, ke, nt;
|
|
11545
|
-
const t = e, n = ct(), l = dt(), r = j(null), s = j({}), i = j(null), a = j(!1), m = j(null), f = j(!1), b = j([]), u =
|
|
11598
|
+
const t = e, n = ct(), l = dt(), r = j(null), s = j({}), i = j(null), a = j(!1), m = j(null), f = j(!1), b = j([]), u = R(() => t.id || "main"), g = R(() => {
|
|
11546
11599
|
var q, re;
|
|
11547
11600
|
return {
|
|
11548
11601
|
height: ((q = t.height) == null ? void 0 : q.trim()) || ((re = s.value) == null ? void 0 : re.height) || "calc(100vh - 65px)"
|
|
11549
11602
|
};
|
|
11550
|
-
}), d =
|
|
11603
|
+
}), d = R(() => {
|
|
11551
11604
|
var q;
|
|
11552
11605
|
return ((q = s.value) == null ? void 0 : q.name) ?? null;
|
|
11553
|
-
}), y =
|
|
11606
|
+
}), y = R(() => {
|
|
11554
11607
|
var q;
|
|
11555
11608
|
return ((q = s.value) == null ? void 0 : q.description) ?? null;
|
|
11556
|
-
}), v =
|
|
11609
|
+
}), v = R(() => {
|
|
11557
11610
|
var q;
|
|
11558
11611
|
return D((q = s.value) == null ? void 0 : q.maps);
|
|
11559
|
-
}), h =
|
|
11612
|
+
}), h = R(() => {
|
|
11560
11613
|
var re, xe;
|
|
11561
11614
|
const q = ((re = s.value) == null ? void 0 : re.minZoom) ?? ((xe = s.value) == null ? void 0 : xe.minzoom) ?? null;
|
|
11562
11615
|
return typeof q == "number" ? q : null;
|
|
11563
|
-
}), p =
|
|
11616
|
+
}), p = R(() => {
|
|
11564
11617
|
var re, xe;
|
|
11565
11618
|
const q = ((re = s.value) == null ? void 0 : re.maxZoom) ?? ((xe = s.value) == null ? void 0 : xe.maxzoom) ?? null;
|
|
11566
11619
|
return typeof q == "number" ? q : typeof t.maxZoom == "number" ? t.maxZoom : 20;
|
|
11567
|
-
}),
|
|
11568
|
-
if (
|
|
11569
|
-
const { lng: q, lat: re } =
|
|
11620
|
+
}), C = j(null), I = R(() => {
|
|
11621
|
+
if (!C.value) return null;
|
|
11622
|
+
const { lng: q, lat: re } = C.value;
|
|
11570
11623
|
return `${re.toFixed(6)}, ${q.toFixed(6)}`;
|
|
11571
|
-
}), O =
|
|
11624
|
+
}), O = R(() => {
|
|
11572
11625
|
var q;
|
|
11573
11626
|
return ((q = r.value) == null ? void 0 : q.ctx) ?? null;
|
|
11574
|
-
}),
|
|
11627
|
+
}), P = R(() => {
|
|
11575
11628
|
var q;
|
|
11576
11629
|
return ((q = s.value) == null ? void 0 : q.minimap) ?? null;
|
|
11577
11630
|
});
|
|
@@ -11586,7 +11639,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11586
11639
|
const re = Number(typeof q == "string" ? q.trim() : q);
|
|
11587
11640
|
return Number.isFinite(re) ? re : null;
|
|
11588
11641
|
}
|
|
11589
|
-
const
|
|
11642
|
+
const $ = Vt((ke = k == null ? void 0 : k.map) == null ? void 0 : ke.center), B = E((nt = k == null ? void 0 : k.map) == null ? void 0 : nt.zoom), K = R(() => {
|
|
11590
11643
|
const q = (k == null ? void 0 : k.map) || null, re = (q == null ? void 0 : q.boundary) ?? null, xe = (q == null ? void 0 : q.katottg) ?? null;
|
|
11591
11644
|
return !re && !xe ? null : { boundary: re, katottg: xe };
|
|
11592
11645
|
});
|
|
@@ -11596,10 +11649,10 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11596
11649
|
function D(q) {
|
|
11597
11650
|
return Array.isArray(q) ? q : q && typeof q == "object" ? Object.values(q).filter(Boolean) : [];
|
|
11598
11651
|
}
|
|
11599
|
-
const M =
|
|
11652
|
+
const M = R(() => {
|
|
11600
11653
|
var q;
|
|
11601
11654
|
return D((q = s.value) == null ? void 0 : q.widgets);
|
|
11602
|
-
}), w = ["left", "right"], _ =
|
|
11655
|
+
}), w = ["left", "right"], _ = R(() => {
|
|
11603
11656
|
const q = {
|
|
11604
11657
|
left: { top: [], bottom: [] },
|
|
11605
11658
|
right: { top: [], bottom: [] }
|
|
@@ -11675,7 +11728,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11675
11728
|
let pe = null, Se = null;
|
|
11676
11729
|
function Ce(q) {
|
|
11677
11730
|
const re = q == null ? void 0 : q.lngLat;
|
|
11678
|
-
re && (
|
|
11731
|
+
re && (C.value = { lng: re.lng, lat: re.lat });
|
|
11679
11732
|
}
|
|
11680
11733
|
async function Ae() {
|
|
11681
11734
|
const q = await L();
|
|
@@ -11686,7 +11739,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11686
11739
|
});
|
|
11687
11740
|
async function Y(q = !1) {
|
|
11688
11741
|
var xe, je;
|
|
11689
|
-
f.value = !1, m.value = null,
|
|
11742
|
+
f.value = !1, m.value = null, C.value = null;
|
|
11690
11743
|
const re = q || !t.data;
|
|
11691
11744
|
a.value = re;
|
|
11692
11745
|
try {
|
|
@@ -11697,7 +11750,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11697
11750
|
return Je.json();
|
|
11698
11751
|
})() : t.data;
|
|
11699
11752
|
re || (f.value = !0);
|
|
11700
|
-
const Fe = Vt(fe.center) ??
|
|
11753
|
+
const Fe = Vt(fe.center) ?? $, Xe = D(fe.layers).map((Je) => T(Je)), ue = E(fe.zoom) ?? B;
|
|
11701
11754
|
s.value = {
|
|
11702
11755
|
...fe,
|
|
11703
11756
|
center: Fe ?? null,
|
|
@@ -11713,7 +11766,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11713
11766
|
re && (a.value = !1);
|
|
11714
11767
|
}
|
|
11715
11768
|
}
|
|
11716
|
-
const J =
|
|
11769
|
+
const J = R(() => {
|
|
11717
11770
|
var je;
|
|
11718
11771
|
const q = /* @__PURE__ */ new Map();
|
|
11719
11772
|
return D((je = s.value) == null ? void 0 : je.layers).forEach((fe) => {
|
|
@@ -11741,7 +11794,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11741
11794
|
function ve(q) {
|
|
11742
11795
|
Q.value.includes(q) ? Q.value = Q.value.filter((re) => re !== q) : Q.value.push(q);
|
|
11743
11796
|
}
|
|
11744
|
-
const ye =
|
|
11797
|
+
const ye = R(() => (q) => Q.value.includes(q.id));
|
|
11745
11798
|
return te([h, p], () => {
|
|
11746
11799
|
U();
|
|
11747
11800
|
}, { immediate: !0 }), te(u, () => {
|
|
@@ -11787,7 +11840,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
11787
11840
|
}, null, 8, ["coordinates"])) : W("", !0),
|
|
11788
11841
|
ne(oh, {
|
|
11789
11842
|
"map-context": O.value,
|
|
11790
|
-
options:
|
|
11843
|
+
options: P.value
|
|
11791
11844
|
}, null, 8, ["map-context", "options"])
|
|
11792
11845
|
])) : W("", !0),
|
|
11793
11846
|
o("div", lh, [
|
|
@@ -12036,7 +12089,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12036
12089
|
}, Lh = { class: "w-full text-sm" }, Sh = { class: "divide-y divide-gray-200" }, Eh = { class: "px-4 py-3" }, Th = ["onUpdate:modelValue", "onChange"], Mh = ["value"], Fh = { class: "px-4 py-3" }, Ih = ["onUpdate:modelValue", "onChange"], jh = ["value"], zh = { class: "px-4 py-3 text-center" }, Nh = ["checked", "onChange"], Oh = { class: "px-4 py-3" }, Dh = {
|
|
12037
12090
|
key: 0,
|
|
12038
12091
|
class: "flex items-center gap-2"
|
|
12039
|
-
},
|
|
12092
|
+
}, Rh = ["onClick"], Ph = ["onClick"], Bh = { key: 1 }, Vh = ["onClick"], Uh = { class: "px-4 py-3 text-right" }, qh = ["onClick"], Hh = /* @__PURE__ */ ie({
|
|
12040
12093
|
__name: "WidgetSettings",
|
|
12041
12094
|
props: {
|
|
12042
12095
|
modelValue: {}
|
|
@@ -12057,7 +12110,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12057
12110
|
"top-right",
|
|
12058
12111
|
"bottom-left",
|
|
12059
12112
|
"bottom-right"
|
|
12060
|
-
], i = j(null), a = j(-1), m =
|
|
12113
|
+
], i = j(null), a = j(-1), m = R(() => n.modelValue || []);
|
|
12061
12114
|
function f() {
|
|
12062
12115
|
const p = [
|
|
12063
12116
|
...m.value,
|
|
@@ -12076,20 +12129,20 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12076
12129
|
message: "Ви впевнені, що хочете видалити цей віджет?",
|
|
12077
12130
|
type: "warning",
|
|
12078
12131
|
onConfirm: () => {
|
|
12079
|
-
const
|
|
12080
|
-
l("update:modelValue",
|
|
12132
|
+
const C = m.value.filter((I, O) => O !== p);
|
|
12133
|
+
l("update:modelValue", C);
|
|
12081
12134
|
}
|
|
12082
12135
|
});
|
|
12083
12136
|
}
|
|
12084
|
-
function u(p,
|
|
12137
|
+
function u(p, C, I) {
|
|
12085
12138
|
const O = [...m.value];
|
|
12086
|
-
O[p] = { ...O[p], [
|
|
12139
|
+
O[p] = { ...O[p], [C]: I }, l("update:modelValue", O);
|
|
12087
12140
|
}
|
|
12088
12141
|
function g(p) {
|
|
12089
12142
|
return !!p && Object.keys(p).length > 0;
|
|
12090
12143
|
}
|
|
12091
|
-
function d(p,
|
|
12092
|
-
a.value = p, i.value =
|
|
12144
|
+
function d(p, C) {
|
|
12145
|
+
a.value = p, i.value = C || {};
|
|
12093
12146
|
}
|
|
12094
12147
|
function y(p) {
|
|
12095
12148
|
d(p, {});
|
|
@@ -12107,11 +12160,11 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12107
12160
|
function h(p) {
|
|
12108
12161
|
a.value > -1 && u(a.value, "config", p), i.value = null, a.value = -1;
|
|
12109
12162
|
}
|
|
12110
|
-
return (p,
|
|
12163
|
+
return (p, C) => {
|
|
12111
12164
|
var I;
|
|
12112
12165
|
return c(), x("div", null, [
|
|
12113
12166
|
o("div", { class: "flex items-center justify-between mb-4" }, [
|
|
12114
|
-
|
|
12167
|
+
C[1] || (C[1] = o("h2", { class: "text-lg font-semibold text-gray-800" }, "Віджети", -1)),
|
|
12115
12168
|
o("button", {
|
|
12116
12169
|
onClick: f,
|
|
12117
12170
|
class: "px-3 py-1.5 text-sm bg-blue-600 text-white rounded-md hover:bg-blue-700 transition-colors"
|
|
@@ -12119,7 +12172,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12119
12172
|
]),
|
|
12120
12173
|
(I = m.value) != null && I.length ? (c(), x("div", Ah, [
|
|
12121
12174
|
o("table", Lh, [
|
|
12122
|
-
|
|
12175
|
+
C[2] || (C[2] = o("thead", { class: "bg-gray-50 border-b border-gray-200" }, [
|
|
12123
12176
|
o("tr", null, [
|
|
12124
12177
|
o("th", { class: "px-4 py-3 text-left font-medium text-gray-700 w-1/4" }, "Тип"),
|
|
12125
12178
|
o("th", { class: "px-4 py-3 text-left font-medium text-gray-700 w-1/4" }, "Розташування"),
|
|
@@ -12129,14 +12182,14 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12129
12182
|
])
|
|
12130
12183
|
], -1)),
|
|
12131
12184
|
o("tbody", Sh, [
|
|
12132
|
-
(c(!0), x(X, null, se(m.value, (O,
|
|
12133
|
-
key:
|
|
12185
|
+
(c(!0), x(X, null, se(m.value, (O, P) => (c(), x("tr", {
|
|
12186
|
+
key: P,
|
|
12134
12187
|
class: "hover:bg-gray-50"
|
|
12135
12188
|
}, [
|
|
12136
12189
|
o("td", Eh, [
|
|
12137
12190
|
De(o("select", {
|
|
12138
12191
|
"onUpdate:modelValue": (T) => O.type = T,
|
|
12139
|
-
onChange: (T) => u(
|
|
12192
|
+
onChange: (T) => u(P, "type", O.type),
|
|
12140
12193
|
class: "w-full px-2 py-1.5 bg-white border border-gray-300 rounded focus:outline-none focus:ring-1 focus:ring-blue-500 text-gray-700"
|
|
12141
12194
|
}, [
|
|
12142
12195
|
(c(), x(X, null, se(r, (T) => o("option", {
|
|
@@ -12150,7 +12203,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12150
12203
|
o("td", Fh, [
|
|
12151
12204
|
De(o("select", {
|
|
12152
12205
|
"onUpdate:modelValue": (T) => O.position = T,
|
|
12153
|
-
onChange: (T) => u(
|
|
12206
|
+
onChange: (T) => u(P, "position", O.position),
|
|
12154
12207
|
class: "w-full px-2 py-1.5 bg-white border border-gray-300 rounded focus:outline-none focus:ring-1 focus:ring-blue-500 text-gray-700"
|
|
12155
12208
|
}, [
|
|
12156
12209
|
(c(), x(X, null, se(s, (T) => o("option", {
|
|
@@ -12165,29 +12218,29 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12165
12218
|
o("input", {
|
|
12166
12219
|
type: "checkbox",
|
|
12167
12220
|
checked: O.visible !== !1,
|
|
12168
|
-
onChange: (T) => u(
|
|
12221
|
+
onChange: (T) => u(P, "visible", T.target.checked),
|
|
12169
12222
|
class: "w-4 h-4 text-blue-600 border-gray-300 rounded focus:ring-blue-500"
|
|
12170
12223
|
}, null, 40, Nh)
|
|
12171
12224
|
]),
|
|
12172
12225
|
o("td", Oh, [
|
|
12173
12226
|
g(O.config) ? (c(), x("div", Dh, [
|
|
12174
12227
|
o("button", {
|
|
12175
|
-
onClick: (T) => d(
|
|
12228
|
+
onClick: (T) => d(P, O.config),
|
|
12176
12229
|
class: "p-1 text-blue-600 hover:text-blue-800 hover:bg-blue-50 rounded transition-colors",
|
|
12177
12230
|
title: "Редагувати конфігурацію"
|
|
12178
12231
|
}, [
|
|
12179
12232
|
ne(oe(Bl), { size: 16 })
|
|
12180
|
-
], 8,
|
|
12233
|
+
], 8, Rh),
|
|
12181
12234
|
o("button", {
|
|
12182
|
-
onClick: (T) => v(
|
|
12235
|
+
onClick: (T) => v(P),
|
|
12183
12236
|
class: "p-1 text-red-500 hover:text-red-700 hover:bg-red-50 rounded transition-colors",
|
|
12184
12237
|
title: "Видалити конфігурацію"
|
|
12185
12238
|
}, [
|
|
12186
12239
|
ne(oe(sn), { size: 16 })
|
|
12187
|
-
], 8,
|
|
12240
|
+
], 8, Ph)
|
|
12188
12241
|
])) : (c(), x("div", Bh, [
|
|
12189
12242
|
o("button", {
|
|
12190
|
-
onClick: (T) => y(
|
|
12243
|
+
onClick: (T) => y(P),
|
|
12191
12244
|
class: "p-1 text-green-600 hover:text-green-800 hover:bg-green-50 rounded transition-colors",
|
|
12192
12245
|
title: "Додати конфігурацію"
|
|
12193
12246
|
}, [
|
|
@@ -12197,7 +12250,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12197
12250
|
]),
|
|
12198
12251
|
o("td", Uh, [
|
|
12199
12252
|
o("button", {
|
|
12200
|
-
onClick: (T) => b(
|
|
12253
|
+
onClick: (T) => b(P),
|
|
12201
12254
|
class: "p-1 text-gray-400 hover:text-red-500 transition-colors",
|
|
12202
12255
|
title: "Видалити віджет"
|
|
12203
12256
|
}, [
|
|
@@ -12211,7 +12264,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12211
12264
|
ne($h, {
|
|
12212
12265
|
teleport: "#modal",
|
|
12213
12266
|
modelValue: i.value,
|
|
12214
|
-
"onUpdate:modelValue":
|
|
12267
|
+
"onUpdate:modelValue": C[0] || (C[0] = (O) => i.value = O),
|
|
12215
12268
|
onSave: h
|
|
12216
12269
|
}, null, 8, ["modelValue"])
|
|
12217
12270
|
]);
|
|
@@ -12252,38 +12305,38 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12252
12305
|
zoom: 11,
|
|
12253
12306
|
widgets: [],
|
|
12254
12307
|
layers: []
|
|
12255
|
-
}), d =
|
|
12308
|
+
}), d = R({
|
|
12256
12309
|
get: () => (g.value.layers || []).map((T) => T.id || T),
|
|
12257
12310
|
set: (T) => {
|
|
12258
12311
|
g.value.layers = T;
|
|
12259
12312
|
}
|
|
12260
|
-
}), y =
|
|
12313
|
+
}), y = R(() => s.value.map((T) => ({
|
|
12261
12314
|
id: T.id,
|
|
12262
12315
|
text: T.name || T.id
|
|
12263
|
-
}))), v =
|
|
12316
|
+
}))), v = R({
|
|
12264
12317
|
get: () => d.value.map((T) => {
|
|
12265
12318
|
const k = y.value.find((E) => E.id === T);
|
|
12266
12319
|
return k ? k.text : T;
|
|
12267
12320
|
}),
|
|
12268
12321
|
set: (T) => {
|
|
12269
12322
|
const k = T.map((E) => {
|
|
12270
|
-
const
|
|
12271
|
-
return
|
|
12323
|
+
const $ = y.value.find((B) => B.text === E);
|
|
12324
|
+
return $ ? $.id : null;
|
|
12272
12325
|
}).filter((E) => E !== null);
|
|
12273
12326
|
d.value = k;
|
|
12274
12327
|
}
|
|
12275
|
-
}), h =
|
|
12328
|
+
}), h = R(() => {
|
|
12276
12329
|
const T = g.value.center;
|
|
12277
12330
|
if (!Array.isArray(T) || T.length < 2) return "Не задано";
|
|
12278
12331
|
const [k, E] = T;
|
|
12279
12332
|
return k === void 0 || E === void 0 || k === null || E === null || Number.isNaN(Number(k)) || Number.isNaN(Number(E)) ? "Не задано" : `Lng ${Number(k).toFixed(6)}, Lat ${Number(E).toFixed(6)}`;
|
|
12280
|
-
}), p =
|
|
12333
|
+
}), p = R(() => {
|
|
12281
12334
|
const T = g.value.zoom;
|
|
12282
12335
|
if (T == null || T === "")
|
|
12283
12336
|
return "Не задано";
|
|
12284
12337
|
const k = Number(T);
|
|
12285
12338
|
return Number.isNaN(k) ? "Не задано" : k.toFixed(2);
|
|
12286
|
-
}),
|
|
12339
|
+
}), C = [
|
|
12287
12340
|
{
|
|
12288
12341
|
name: "name",
|
|
12289
12342
|
type: "text",
|
|
@@ -12382,31 +12435,31 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12382
12435
|
l.value = !1;
|
|
12383
12436
|
}
|
|
12384
12437
|
}
|
|
12385
|
-
async function
|
|
12438
|
+
async function P() {
|
|
12386
12439
|
var k, E;
|
|
12387
12440
|
const T = (E = (k = i.value) == null ? void 0 : k.validate) == null ? void 0 : E.call(k);
|
|
12388
12441
|
if (T) {
|
|
12389
12442
|
Ee({
|
|
12390
12443
|
type: "warning",
|
|
12391
12444
|
title: "Валідація",
|
|
12392
|
-
message: Object.entries(T).map(([
|
|
12445
|
+
message: Object.entries(T).map(([$, B]) => `${$}: ${B}`).join(`
|
|
12393
12446
|
`)
|
|
12394
12447
|
});
|
|
12395
12448
|
return;
|
|
12396
12449
|
}
|
|
12397
12450
|
r.value = !0;
|
|
12398
12451
|
try {
|
|
12399
|
-
const
|
|
12400
|
-
if (
|
|
12452
|
+
const $ = JSON.parse(JSON.stringify(g.value));
|
|
12453
|
+
if ($.zoom = Number($.zoom), Array.isArray($.center) && ($.center.every(
|
|
12401
12454
|
(Z) => Z == null || Z === "" || Z === 0
|
|
12402
|
-
) ||
|
|
12455
|
+
) || $.center.length === 0) && ($.center = null), delete $.created_at, delete $.updated_at, delete $.created_by, delete $.updated_by, delete $.history, delete $.maps, !(await fetch(`/api/gis-map/${n.params.id}`, {
|
|
12403
12456
|
method: "PUT",
|
|
12404
12457
|
headers: { "Content-Type": "application/json" },
|
|
12405
|
-
body: JSON.stringify(
|
|
12458
|
+
body: JSON.stringify($)
|
|
12406
12459
|
})).ok) throw new Error("Save failed");
|
|
12407
12460
|
Ee({ type: "success", title: "Успіх", message: "Збережено!" });
|
|
12408
|
-
} catch (
|
|
12409
|
-
console.error("Save error:",
|
|
12461
|
+
} catch ($) {
|
|
12462
|
+
console.error("Save error:", $), Ee({ type: "error", title: "Помилка", message: "Не вдалося зберегти" });
|
|
12410
12463
|
} finally {
|
|
12411
12464
|
r.value = !1;
|
|
12412
12465
|
}
|
|
@@ -12426,7 +12479,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12426
12479
|
class: "inline-flex items-center justify-center px-4 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50"
|
|
12427
12480
|
}, " Повернутися "),
|
|
12428
12481
|
o("button", {
|
|
12429
|
-
onClick:
|
|
12482
|
+
onClick: P,
|
|
12430
12483
|
disabled: r.value,
|
|
12431
12484
|
class: "inline-flex items-center justify-center px-4 py-2 text-sm font-medium text-white bg-blue-600 rounded-md hover:bg-blue-700 disabled:opacity-50"
|
|
12432
12485
|
}, V(r.value ? "Збереження..." : "Зберегти"), 9, Xh)
|
|
@@ -12435,14 +12488,14 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12435
12488
|
l.value ? (c(), x("div", Jh, [...k[8] || (k[8] = [
|
|
12436
12489
|
o("p", { class: "text-gray-500" }, "Завантаження...", -1)
|
|
12437
12490
|
])])) : (c(), x(X, { key: 1 }, [
|
|
12438
|
-
ne(
|
|
12491
|
+
ne(R0, {
|
|
12439
12492
|
tabs: a,
|
|
12440
12493
|
activeTab: u.value,
|
|
12441
12494
|
"onUpdate:activeTab": k[1] || (k[1] = (E) => u.value = E)
|
|
12442
12495
|
}, null, 8, ["activeTab"]),
|
|
12443
12496
|
De(o("div", Qh, [
|
|
12444
12497
|
ne(B0, {
|
|
12445
|
-
schema:
|
|
12498
|
+
schema: C,
|
|
12446
12499
|
loading: l.value,
|
|
12447
12500
|
modelValue: g.value,
|
|
12448
12501
|
"onUpdate:modelValue": k[2] || (k[2] = (E) => g.value = E),
|
|
@@ -12506,29 +12559,29 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12506
12559
|
},
|
|
12507
12560
|
emits: ["update:counts"],
|
|
12508
12561
|
setup(e, { expose: t, emit: n }) {
|
|
12509
|
-
const l = e, r = n, s = dt(), i = ct(), a = j(Number(i.query.page) || 1), m = j(!1), f = j(0), b = j([]), u =
|
|
12510
|
-
const
|
|
12511
|
-
return b.value.slice(
|
|
12562
|
+
const l = e, r = n, s = dt(), i = ct(), a = j(Number(i.query.page) || 1), m = j(!1), f = j(0), b = j([]), u = R(() => {
|
|
12563
|
+
const $ = (a.value - 1) * On, B = $ + On;
|
|
12564
|
+
return b.value.slice($, B);
|
|
12512
12565
|
}), g = j(!0), d = j(null), y = j(null), v = j(null);
|
|
12513
12566
|
let h = null, p = null;
|
|
12514
|
-
const
|
|
12515
|
-
const K = new URLSearchParams(), Z =
|
|
12567
|
+
const C = ($ = "", B = "") => {
|
|
12568
|
+
const K = new URLSearchParams(), Z = $.trim();
|
|
12516
12569
|
Z && K.set("search", Z);
|
|
12517
12570
|
const D = (B || "").trim();
|
|
12518
12571
|
D && K.set("type", D);
|
|
12519
12572
|
const M = K.toString();
|
|
12520
12573
|
return M ? `/api/user-cls?${M}` : "/api/user-cls";
|
|
12521
|
-
}, I = async (
|
|
12574
|
+
}, I = async ($ = "", B = "") => {
|
|
12522
12575
|
try {
|
|
12523
12576
|
g.value = !0, d.value = null;
|
|
12524
|
-
const K =
|
|
12577
|
+
const K = C($, B), Z = await fetch(K);
|
|
12525
12578
|
if (!Z.ok)
|
|
12526
12579
|
throw new Error(`HTTP error: ${Z.status}`);
|
|
12527
12580
|
const D = await Z.json();
|
|
12528
|
-
if (b.value = D.data,
|
|
12581
|
+
if (b.value = D.data, !$.trim())
|
|
12529
12582
|
f.value = D.data.length;
|
|
12530
12583
|
else if (f.value === 0) {
|
|
12531
|
-
const M = await fetch(
|
|
12584
|
+
const M = await fetch(C("", B));
|
|
12532
12585
|
if (M.ok) {
|
|
12533
12586
|
const w = await M.json();
|
|
12534
12587
|
f.value = w.data.length;
|
|
@@ -12548,28 +12601,28 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12548
12601
|
m.value = !0, I(l.search, l.type ?? "");
|
|
12549
12602
|
}), te(
|
|
12550
12603
|
() => [l.search, l.type],
|
|
12551
|
-
([
|
|
12604
|
+
([$, B]) => {
|
|
12552
12605
|
h && clearTimeout(h), h = setTimeout(() => {
|
|
12553
|
-
I(
|
|
12606
|
+
I($, B ?? ""), a.value = 1;
|
|
12554
12607
|
}, 300);
|
|
12555
12608
|
}
|
|
12556
12609
|
);
|
|
12557
|
-
const O = (
|
|
12610
|
+
const O = ($) => {
|
|
12558
12611
|
s.push({
|
|
12559
12612
|
name: "classifier-detail",
|
|
12560
|
-
params: { name:
|
|
12613
|
+
params: { name: $.name }
|
|
12561
12614
|
});
|
|
12562
|
-
},
|
|
12615
|
+
}, P = ($) => {
|
|
12563
12616
|
y.value = {
|
|
12564
|
-
name:
|
|
12565
|
-
description:
|
|
12566
|
-
alias:
|
|
12617
|
+
name: $.name,
|
|
12618
|
+
description: $.description,
|
|
12619
|
+
alias: $.alias
|
|
12567
12620
|
};
|
|
12568
12621
|
}, T = () => {
|
|
12569
12622
|
I(l.search, l.type ?? "");
|
|
12570
|
-
}, k = async (
|
|
12623
|
+
}, k = async ($) => {
|
|
12571
12624
|
try {
|
|
12572
|
-
await navigator.clipboard.writeText(
|
|
12625
|
+
await navigator.clipboard.writeText($), v.value = $, p && clearTimeout(p), p = setTimeout(() => {
|
|
12573
12626
|
v.value = null;
|
|
12574
12627
|
}, 500);
|
|
12575
12628
|
} catch (B) {
|
|
@@ -12579,12 +12632,12 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12579
12632
|
t({
|
|
12580
12633
|
refetch: T
|
|
12581
12634
|
});
|
|
12582
|
-
const E = (
|
|
12583
|
-
a.value =
|
|
12584
|
-
query: { ...i.query, page: String(
|
|
12635
|
+
const E = ($) => {
|
|
12636
|
+
a.value = $, s.replace({
|
|
12637
|
+
query: { ...i.query, page: String($) }
|
|
12585
12638
|
});
|
|
12586
12639
|
};
|
|
12587
|
-
return (
|
|
12640
|
+
return ($, B) => (c(), x("main", o1, [
|
|
12588
12641
|
o("div", r1, [
|
|
12589
12642
|
g.value ? (c(), x("div", l1, [
|
|
12590
12643
|
ne(oe(nr), {
|
|
@@ -12628,7 +12681,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12628
12681
|
]),
|
|
12629
12682
|
o("button", {
|
|
12630
12683
|
class: "px-3 py-1.5 text-xs font-medium text-sky-600 hover:bg-sky-50 rounded-lg transition-colors",
|
|
12631
|
-
onClick: Ue((D) =>
|
|
12684
|
+
onClick: Ue((D) => P(K), ["stop"])
|
|
12632
12685
|
}, " Редагувати ", 8, b1)
|
|
12633
12686
|
]),
|
|
12634
12687
|
o("button", {
|
|
@@ -12761,10 +12814,10 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12761
12814
|
}, D1 = {
|
|
12762
12815
|
key: 1,
|
|
12763
12816
|
class: "bg-red-50 border border-red-200 text-red-700 rounded-lg p-4 text-sm m-4"
|
|
12764
|
-
},
|
|
12817
|
+
}, R1 = {
|
|
12765
12818
|
key: 2,
|
|
12766
12819
|
class: "text-center py-12 text-gray-500"
|
|
12767
|
-
},
|
|
12820
|
+
}, P1 = {
|
|
12768
12821
|
key: 3,
|
|
12769
12822
|
class: "w-full min-w-[640px] divide-y divide-gray-200"
|
|
12770
12823
|
}, B1 = { class: "bg-gray-50 border-b border-gray-200" }, V1 = { class: "divide-y divide-gray-200" }, U1 = { class: "px-4 py-3 w-1/12" }, q1 = { class: "px-4 py-3 text-sm font-medium text-gray-900 w-2/12" }, H1 = { class: "px-4 py-3 text-sm text-gray-600 font-mono" }, W1 = /* @__PURE__ */ ie({
|
|
@@ -12793,7 +12846,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12793
12846
|
width: "w-4/12",
|
|
12794
12847
|
align: "text-left"
|
|
12795
12848
|
}
|
|
12796
|
-
], r = j([]), s = j(!0), i = j(null), a =
|
|
12849
|
+
], r = j([]), s = j(!0), i = j(null), a = R(() => {
|
|
12797
12850
|
var u;
|
|
12798
12851
|
if (!((u = n.search) != null && u.trim()))
|
|
12799
12852
|
return r.value;
|
|
@@ -12839,7 +12892,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12839
12892
|
"stroke-width": 2,
|
|
12840
12893
|
class: "text-sky-600 animate-spin"
|
|
12841
12894
|
})
|
|
12842
|
-
])) : i.value ? (c(), x("div", D1, V(i.value), 1)) : r.value.length === 0 ? (c(), x("div",
|
|
12895
|
+
])) : i.value ? (c(), x("div", D1, V(i.value), 1)) : r.value.length === 0 ? (c(), x("div", R1, " Записи відсутні ")) : (c(), x("table", P1, [
|
|
12843
12896
|
o("thead", B1, [
|
|
12844
12897
|
o("tr", null, [
|
|
12845
12898
|
(c(), x(X, null, se(l, (g) => o("th", {
|
|
@@ -12875,7 +12928,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12875
12928
|
}, tx = ["disabled"], nx = ["disabled"], ox = { class: "text-sm text-gray-500 mt-1" }, rx = { class: "flex items-center gap-3" }, lx = { class: "bg-white rounded-lg shadow-sm border border-gray-200 p-4 mb-4" }, sx = { class: "relative max-w-md" }, ix = { class: "vs-form-text relative w-full border-transparent text-sm focus:bg-white focus:border-blue-500 focus:ring-blue-500 rounded-sm" }, ax = { class: "absolute bottom-2/4 translate-y-2/4 cursor-pointer left-3" }, ux = /* @__PURE__ */ ie({
|
|
12876
12929
|
__name: "DictionaryDetails",
|
|
12877
12930
|
setup(e) {
|
|
12878
|
-
const t = dt(), n = ct(), l =
|
|
12931
|
+
const t = dt(), n = ct(), l = R(() => n.params.name), r = j(!1), s = j(null), i = j(null), a = j(""), m = j(""), f = j(""), b = j(!1), u = j(!1), g = j(null), d = async () => {
|
|
12879
12932
|
var I;
|
|
12880
12933
|
try {
|
|
12881
12934
|
const O = await fetch(
|
|
@@ -12897,12 +12950,12 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12897
12950
|
}, h = async () => {
|
|
12898
12951
|
try {
|
|
12899
12952
|
u.value = !0;
|
|
12900
|
-
const
|
|
12953
|
+
const P = (await (await fetch(
|
|
12901
12954
|
`/api/suggest/${encodeURIComponent(l.value)}`
|
|
12902
12955
|
)).json()).data || [], T = {
|
|
12903
12956
|
name: l.value,
|
|
12904
12957
|
description: f.value.trim() || null,
|
|
12905
|
-
data:
|
|
12958
|
+
data: P
|
|
12906
12959
|
}, k = await fetch(
|
|
12907
12960
|
`/api/user-cls/${encodeURIComponent(l.value)}`,
|
|
12908
12961
|
{
|
|
@@ -12929,14 +12982,14 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12929
12982
|
});
|
|
12930
12983
|
const p = () => {
|
|
12931
12984
|
s.value = null, r.value = !0;
|
|
12932
|
-
},
|
|
12985
|
+
}, C = (I) => {
|
|
12933
12986
|
s.value = I, r.value = !0;
|
|
12934
12987
|
};
|
|
12935
12988
|
return (I, O) => (c(), x("div", Y1, [
|
|
12936
12989
|
o("div", null, [
|
|
12937
12990
|
o("div", Z1, [
|
|
12938
12991
|
o("button", {
|
|
12939
|
-
onClick: O[0] || (O[0] = (
|
|
12992
|
+
onClick: O[0] || (O[0] = (P) => oe(t).back()),
|
|
12940
12993
|
class: "text-sky-600 hover:text-sky-500 transition-colors"
|
|
12941
12994
|
}, " Довідники "),
|
|
12942
12995
|
O[4] || (O[4] = o("span", { class: "text-gray-400" }, "/", -1)),
|
|
@@ -12948,7 +13001,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
12948
13001
|
De(o("input", {
|
|
12949
13002
|
ref_key: "editInputRef",
|
|
12950
13003
|
ref: g,
|
|
12951
|
-
"onUpdate:modelValue": O[1] || (O[1] = (
|
|
13004
|
+
"onUpdate:modelValue": O[1] || (O[1] = (P) => f.value = P),
|
|
12952
13005
|
type: "text",
|
|
12953
13006
|
class: "text-2xl font-bold text-gray-900 border-b-2 border-sky-500 focus:outline-none bg-transparent w-full",
|
|
12954
13007
|
onKeydown: [
|
|
@@ -13011,7 +13064,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
13011
13064
|
O[5] || (O[5] = we(" Додати запис ", -1))
|
|
13012
13065
|
]),
|
|
13013
13066
|
o("button", {
|
|
13014
|
-
onClick: O[2] || (O[2] = (
|
|
13067
|
+
onClick: O[2] || (O[2] = (P) => oe(t).back()),
|
|
13015
13068
|
class: "px-4 py-2 border border-gray-300 rounded-lg hover:bg-gray-50 transition-colors text-gray-700 text-sm font-medium"
|
|
13016
13069
|
}, " Назад ")
|
|
13017
13070
|
])
|
|
@@ -13029,7 +13082,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
13029
13082
|
})
|
|
13030
13083
|
]),
|
|
13031
13084
|
De(o("input", {
|
|
13032
|
-
"onUpdate:modelValue": O[3] || (O[3] = (
|
|
13085
|
+
"onUpdate:modelValue": O[3] || (O[3] = (P) => a.value = P),
|
|
13033
13086
|
type: "text",
|
|
13034
13087
|
placeholder: "Пошук за назвою або описом...",
|
|
13035
13088
|
class: "pl-9 bg-white h-[38px] min-w-[100px] py-2 px-3 block w-full border border-solid placeholder:text-nowrap border-stone-200 text-sm text-stone-800 placeholder:text-stone-400 focus:border-2 focus:z-10 focus:border-blue-500 focus:ring-blue-500 focus:outline-blue-500 rounded-lg"
|
|
@@ -13044,7 +13097,7 @@ const o0 = /* @__PURE__ */ ge(e0, [["render", n0]]), r0 = { class: "flex flex-co
|
|
|
13044
13097
|
ref: i,
|
|
13045
13098
|
"classifier-name": l.value,
|
|
13046
13099
|
search: a.value,
|
|
13047
|
-
onEdit:
|
|
13100
|
+
onEdit: C
|
|
13048
13101
|
}, null, 8, ["classifier-name", "search"])
|
|
13049
13102
|
]));
|
|
13050
13103
|
}
|