@opengis/gis 0.2.118 → 0.2.120
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/README.md +148 -148
- package/dist/{CardIcon-FxpK90rl.js → CardIcon-Dx_myDwM.js} +1 -1
- package/dist/{EntityCreatePage-Da8XgBKU.js → EntityCreatePage-Ch8NU_Yw.js} +14 -14
- package/dist/{EntityEditPage-QktKEAxz.js → EntityEditPage-CRRcW7FL.js} +27 -27
- package/dist/EntityTablePage-DY9v1aWL.js +282 -0
- package/dist/{ExtentOutlineLayer.vue_vue_type_script_setup_true_lang-Bl5ZwNQX.js → ExtentOutlineLayer.vue_vue_type_script_setup_true_lang-DgQHLSak.js} +1 -1
- package/dist/{HeaderActions.vue_vue_type_script_setup_true_lang-CKEep8BL.js → HeaderActions.vue_vue_type_script_setup_true_lang-BQ32ioLC.js} +30 -30
- package/dist/{MapSettings-CjJ7WWkn.js → MapSettings-CaGPr5uG.js} +34 -34
- package/dist/{MonacoEditor.vue_vue_type_script_setup_true_lang-Bs7gz6Lt.js → MonacoEditor.vue_vue_type_script_setup_true_lang-D3ZPeXMw.js} +92 -73
- package/dist/RastersTablePage-CJyO2DoI.js +247 -0
- package/dist/{cartocss-C_O8qG3h.js → cartocss-Bhat1m61.js} +297 -295
- package/dist/{import-utils-BbZ1gVp-.js → import-utils-BxeYqcn7.js} +33 -33
- package/dist/index-Ba6SE4TN.js +10203 -0
- package/dist/index.css +1 -1
- package/dist/index.js +1 -1
- package/dist/index.umd.cjs +41 -41
- package/dist/{raster-Du8ZMtjf.js → raster-Cbs1xR5Y.js} +120 -121
- package/dist/{register-B2gF-GzA.js → register-D0AsH83v.js} +8 -8
- package/dist/{service-BnPCDVwm.js → service-C4nt_DBO.js} +11 -11
- package/dist/{vs-datatable-QKks38xL.js → vs-datatable-QG5b0CCL.js} +28 -28
- package/module/cls.json +6 -6
- package/module/gis/card/gis.metadata.table/index.yml +22 -22
- package/module/gis/card/gis.metadata.table/main_info.hbs +20 -20
- package/module/gis/card/gis.metadata.table/metadata_info.hbs +27 -27
- package/module/gis/card/gis.metadata.table/other.hbs +25 -25
- package/module/gis/card/gis.rasters.table/index.yml +11 -11
- package/module/gis/card/gis.rasters.table/main_info.hbs +27 -27
- package/module/gis/card/gis.registers.table/cls.hbs +36 -36
- package/module/gis/card/gis.registers.table/columns.hbs +89 -89
- package/module/gis/card/gis.registers.table/filters.hbs +80 -80
- package/module/gis/card/gis.registers.table/index.yml +23 -23
- package/module/gis/card/gis.registers.table/main_info.hbs +35 -35
- package/module/gis/card/gis.registers.table/source.hbs +45 -45
- package/module/gis/card/gis.services.table/attributes.hbs +91 -91
- package/module/gis/card/gis.services.table/filters.hbs +83 -83
- package/module/gis/card/gis.services.table/index.yml +25 -25
- package/module/gis/card/gis.services.table/main_info.hbs +27 -27
- package/module/gis/card/gis.services.table/source.hbs +25 -25
- package/module/gis/cls/bool.yes_no.json +12 -12
- package/module/gis/cls/encoding.json +14 -14
- package/module/gis/cls/geom_type.json +14 -14
- package/module/gis/cls/gis.column_type.json +34 -34
- package/module/gis/cls/gis.column_view_type.json +26 -26
- package/module/gis/cls/gis.filter_type.json +22 -22
- package/module/gis/cls/language.json +10 -10
- package/module/gis/cls/meta.service_type.json +42 -42
- package/module/gis/cls/ogc.service.json +21 -21
- package/module/gis/cls/service_type.json +42 -42
- package/module/gis/cls/source_type.json +10 -10
- package/module/gis/cls/standarts.json +6 -6
- package/module/gis/cls/topic_category.json +106 -106
- package/module/gis/cls/update_frequency.json +29 -29
- package/module/gis/cls/view.json +21 -21
- package/module/gis/form/feedback.answer.form.json +10 -10
- package/module/gis/form/gis.cartocss.form.json +54 -54
- package/module/gis/form/gis.group_list.form.json +17 -17
- package/module/gis/form/gis.maps.form.json +61 -61
- package/module/gis/form/gis.metadata.form.json +240 -240
- package/module/gis/form/gis.metadata_new.form.json +195 -195
- package/module/gis/form/gis.ogc_service.form.json +51 -51
- package/module/gis/form/gis.rasters.form.json +76 -76
- package/module/gis/form/gis.registers.form.json +124 -124
- package/module/gis/form/gis.registers_column.form.json +84 -84
- package/module/gis/form/gis.registers_filter.form.json +65 -65
- package/module/gis/form/gis.services.form.json +111 -111
- package/module/gis/form/gis.services_attributes.form.json +75 -75
- package/module/gis/form/gis.services_filter.form.json +65 -65
- package/module/gis/menu.json +43 -43
- package/module/gis/select/admin.cls.name.sql +2 -2
- package/module/gis/select/layer_list.sql +7 -7
- package/module/gis/select/layer_list_text.sql +7 -7
- package/module/gis/select/pg.column_name.geometry.sql +12 -12
- package/module/gis/select/pg.columns.parent.sql +6 -6
- package/module/gis/select/pg.table_name.sql +17 -17
- package/module/gis/select/service_id.sql +1 -1
- package/module/gis/table/gis.cartocss.table.json +74 -74
- package/module/gis/table/gis.group_list.table.json +58 -58
- package/module/gis/table/gis.maps.table.json +110 -110
- package/module/gis/table/gis.metadata.table.json +70 -70
- package/module/gis/table/gis.metadata_new.table.json +137 -137
- package/module/gis/table/gis.ogc_service.table.json +100 -100
- package/module/gis/table/gis.rasters.table.json +101 -101
- package/module/gis/table/gis.registers.table.json +143 -143
- package/module/gis/table/gis.services.table.json +120 -120
- package/module/gis/table/site.gis.registers.table.json +88 -88
- package/module/gis/table/site.gis.services.table.json +106 -106
- package/module/gis/templates/ISO19136_2017_gml_template.xml +330 -330
- package/module/gis/tokens.yml +5 -5
- package/module/permissions/form/permissions.users.form.json +151 -151
- package/module/permissions/table/gis.permissions.table.json +97 -97
- package/module/test/cls/bp_build_type.json +37 -37
- package/module/test/cls/ts.temp_status.json +18 -18
- package/module/test/cls/ts.temp_structure.ts_class.json +49 -49
- package/module/test/cls/ts.temp_type.json +9 -9
- package/module/test/layer/bp.json +59 -59
- package/module/test/layer/bp1.yml +33 -33
- package/module/test/layer/individual.yml +53 -53
- package/module/test/layer/ts.linking_passport.yml +55 -55
- package/module/test/layer/ts.temp_structure.yml +50 -50
- package/module/test/map/addr.yml +21 -21
- package/module/test/map/bp_myo.json +43 -43
- package/module/test/map/bpf.json +43 -43
- package/module/test/map/main.json +37 -37
- package/module/test/map/mbd.json +92 -92
- package/module/test/map/ts.json +53 -53
- package/module/test/select/address_id.json +2 -2
- package/module/test/select/address_id.sql +7 -7
- package/module/test/table/data_address.street.table.json +69 -69
- package/module/test/table/data_bp_myo.bp.table.json +122 -122
- package/package.json +75 -75
- package/plugin.js +55 -55
- package/server/migrations/array_intersect.sql +13 -13
- package/server/migrations/cartocss.sql +27 -27
- package/server/migrations/group_list.sql +74 -74
- package/server/migrations/maps.sql +30 -30
- package/server/migrations/metadata.sql +415 -415
- package/server/migrations/ogc.sql +106 -106
- package/server/migrations/rasters.sql +265 -265
- package/server/migrations/services.sql +247 -247
- package/server/migrations/services_users_rel.sql +22 -22
- package/server/migrations/widgets.sql +20 -20
- package/server/plugins/crons.js +21 -21
- package/server/plugins/mapnik/funcs/checkRasterFile.js +109 -108
- package/server/plugins/mapnik/funcs/mapnik.js +146 -146
- package/server/plugins/mapnik/funcs/rootFolder.mjs +8 -8
- package/server/plugins/mapnik/map.proto +234 -234
- package/server/plugins/vite.js +74 -74
- package/server/routes/gis/cartocss/add.cartocss.js +42 -42
- package/server/routes/gis/cartocss/get.cartocss.js +50 -50
- package/server/routes/gis/checkXML.js +118 -118
- package/server/routes/gis/dashboard.js +29 -29
- package/server/routes/gis/index.mjs +87 -87
- package/server/routes/gis/metadata/editMetadata.js +34 -34
- package/server/routes/gis/metadata/metadataXML.js +13 -13
- package/server/routes/gis/ogc/map.info.point.js +124 -124
- package/server/routes/gis/registers/add.registry.js +35 -35
- package/server/routes/gis/registers/del.registry.js +14 -14
- package/server/routes/gis/registers/funcs/classifiers.js +100 -100
- package/server/routes/gis/registers/funcs/columns.js +4 -4
- package/server/routes/gis/registers/funcs/content.type.js +9 -9
- package/server/routes/gis/registers/funcs/get.info.js +89 -89
- package/server/routes/gis/registers/funcs/handleRegistryRequest.js +146 -146
- package/server/routes/gis/registers/gis.export.js +153 -153
- package/server/routes/gis/registers/gis.registry.js +64 -64
- package/server/routes/gis/registers/gis.registry.list.js +59 -59
- package/server/routes/gis/registers/insert.columns.js +107 -107
- package/server/routes/gis/registers/insert.filters.js +110 -110
- package/server/routes/gis/registers/map.registry.js +79 -79
- package/server/routes/gis/services/add.service.js +64 -64
- package/server/routes/gis/services/del.service.js +12 -12
- package/server/routes/gis/services/get.layer.geom.js +27 -27
- package/server/routes/gis/services/get.services.col.js +33 -33
- package/server/routes/gis/services/get.services.js +84 -84
- package/server/routes/gis/services/legend.auto.js +77 -77
- package/server/routes/map/controllers/clearTiles.js +34 -34
- package/server/routes/map/controllers/geojson.js +187 -187
- package/server/routes/map/controllers/jsonData.js +205 -205
- package/server/routes/map/controllers/layerList.js +102 -102
- package/server/routes/map/controllers/map.js +123 -123
- package/server/routes/map/controllers/mapCatalog.js +72 -72
- package/server/routes/map/controllers/mapCatalogAttribute.js +55 -55
- package/server/routes/map/controllers/mapFeatures.js +128 -128
- package/server/routes/map/controllers/mapFormat.js +222 -222
- package/server/routes/map/controllers/mapTiles.js +152 -152
- package/server/routes/map/controllers/maps.js +15 -15
- package/server/routes/map/controllers/marker_icon.js +43 -43
- package/server/routes/map/controllers/vtile.js +172 -172
- package/server/routes/map/index.mjs +169 -169
- package/server/routes/map/maps/add.map.js +43 -43
- package/server/routes/map/maps/del.map.js +18 -18
- package/server/routes/map/maps/get.map.js +112 -112
- package/server/routes/map/vtile1.js +179 -179
- package/server/routes/map/widgets/add.widget.js +38 -38
- package/server/routes/map/widgets/del.widget.js +22 -22
- package/server/routes/map/widgets/get.widget.js +40 -40
- package/server/routes/mapnik/controllers/clearTiles.js +106 -98
- package/server/routes/mapnik/controllers/createXml.js +67 -66
- package/server/routes/mapnik/controllers/createXmlMulti.js +76 -75
- package/server/routes/mapnik/controllers/fileSearch.js +38 -38
- package/server/routes/mapnik/controllers/fileStat.js +28 -28
- package/server/routes/mapnik/controllers/mapnikLogger.js +29 -29
- package/server/routes/mapnik/controllers/mapnikStat.js +20 -20
- package/server/routes/mapnik/controllers/rasterInfo.js +54 -53
- package/server/routes/mapnik/controllers/readDir.js +22 -22
- package/server/routes/mapnik/controllers/rtile.js +150 -150
- package/server/routes/mapnik/controllers/uploadRaster.js +157 -157
- package/server/routes/mapnik/functions/cartoBounds.js +28 -28
- package/server/routes/mapnik/functions/uploadXML.js +110 -110
- package/server/routes/mapnik/index.js +27 -27
- package/server/routes/permissions/controllers/catalog.permissions.edit.js +22 -22
- package/server/routes/permissions/controllers/catalog.permissions.js +7 -7
- package/server/routes/permissions/controllers/gis.catalog.js +80 -80
- package/server/routes/permissions/controllers/utils/get.permissions.js +59 -59
- package/server/routes/permissions/index.mjs +18 -18
- package/server/routes/root.mjs +3 -3
- package/utils.js +13 -13
- package/dist/EntityTablePage-ii-Wz0YZ.js +0 -286
- package/dist/FileEdit-C7tteUeG.js +0 -37
- package/dist/RastersTablePage-DpKkFOyo.js +0 -359
- package/dist/index-4aSsUBB8.js +0 -10020
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
import { defineComponent as F, resolveDirective as Ce, openBlock as o, createElementBlock as d, createElementVNode as s, Fragment as q, renderList as B, toDisplayString as c, withDirectives as ie, createTextVNode as Re, normalizeClass as W, ref as h, watch as S, computed as g, vModelText as Ee, onMounted as Se, onBeforeUnmount as Ie, unref as je, createCommentVNode as U, createVNode as M, withCtx as ze, createBlock as L, resolveDynamicComponent as Me } from "vue";
|
|
2
2
|
import { useRouter as Le, useRoute as Ne } from "vue-router";
|
|
3
3
|
import { TooltipDirective as Ue, notify as D } from "@opengis/core";
|
|
4
|
-
import { _ as qe, u as Be, f as Te,
|
|
5
|
-
import {
|
|
6
|
-
import { _ as
|
|
7
|
-
import { _ as Oe } from "./ExtentOutlineLayer.vue_vue_type_script_setup_true_lang-Bl5ZwNQX.js";
|
|
4
|
+
import { _ as qe, u as Be, f as Te, F as De, M as Pe, i as Fe, j as re } from "./index-Ba6SE4TN.js";
|
|
5
|
+
import { _ as Ve, a as Qe, b as Ge, c as Ae } from "./HeaderActions.vue_vue_type_script_setup_true_lang-BQ32ioLC.js";
|
|
6
|
+
import { _ as Oe } from "./ExtentOutlineLayer.vue_vue_type_script_setup_true_lang-DgQHLSak.js";
|
|
8
7
|
const We = { class: "flex-1 overflow-y-auto p-4 sm:p-6" }, Xe = { class: "space-y-3" }, Ye = { class: "bg-white p-3 rounded-xl border border-gray-200 shadow-sm" }, Ke = { class: "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-2" }, Ze = { class: "text-xs text-gray-500 mb-1" }, He = {
|
|
9
8
|
key: 0,
|
|
10
9
|
class: "text-base text-md font-semibold text-gray-900"
|
|
11
10
|
}, Je = {
|
|
12
11
|
key: 1,
|
|
13
12
|
class: "text-base text-md font-semibold text-gray-900"
|
|
14
|
-
}, et = { class: "bg-white p-3 rounded-xl border border-gray-200 shadow-sm" }, tt = { class: "space-y-2" }, st = { class: "bg-gradient-to-br from-blue-50 to-blue-100/30 p-4 rounded-lg border border-blue-200" },
|
|
13
|
+
}, et = { class: "bg-white p-3 rounded-xl border border-gray-200 shadow-sm" }, tt = { class: "space-y-2" }, st = { class: "bg-gradient-to-br from-blue-50 to-blue-100/30 p-4 rounded-lg border border-blue-200" }, lt = { class: "text-sm font-semibold text-gray-900" }, nt = { class: "text-xs text-gray-600 mt-1" }, rt = { class: "grid grid-cols-2 gap-3" }, ot = { class: "text-xs text-gray-500 mb-1" }, it = { class: "text-sm font-semibold text-gray-900" }, at = { class: "bg-gray-50 p-4 rounded-lg" }, ut = { class: "grid grid-cols-2 gap-4" }, ct = { class: "text-xs text-gray-500 mb-1" }, dt = { class: "text-sm font-semibold text-gray-900" }, ft = /* @__PURE__ */ F({
|
|
15
14
|
directives: {
|
|
16
15
|
tooltip: Ue
|
|
17
16
|
},
|
|
@@ -21,7 +20,7 @@ const We = { class: "flex-1 overflow-y-auto p-4 sm:p-6" }, Xe = { class: "space-
|
|
|
21
20
|
},
|
|
22
21
|
setup(b) {
|
|
23
22
|
return (p, m) => {
|
|
24
|
-
const
|
|
23
|
+
const r = Ce("tooltip");
|
|
25
24
|
return o(), d("div", We, [
|
|
26
25
|
s("div", Xe, [
|
|
27
26
|
s("div", Ye, [
|
|
@@ -37,7 +36,7 @@ const We = { class: "flex-1 overflow-y-auto p-4 sm:p-6" }, Xe = { class: "space-
|
|
|
37
36
|
a.tooltip ? ie((o(), d("p", He, [
|
|
38
37
|
Re(c(a.value), 1)
|
|
39
38
|
])), [
|
|
40
|
-
[
|
|
39
|
+
[r, a.tooltip]
|
|
41
40
|
]) : (o(), d("p", Je, c(a.value), 1))
|
|
42
41
|
]))), 128))
|
|
43
42
|
])
|
|
@@ -50,13 +49,13 @@ const We = { class: "flex-1 overflow-y-auto p-4 sm:p-6" }, Xe = { class: "space-
|
|
|
50
49
|
s("div", null, [
|
|
51
50
|
m[1] || (m[1] = s("p", { class: "text-xs text-gray-500 mb-2" }, "Система координат", -1)),
|
|
52
51
|
s("div", st, [
|
|
53
|
-
s("p",
|
|
54
|
-
s("p",
|
|
52
|
+
s("p", lt, c(b.details.spatial.crs.code), 1),
|
|
53
|
+
s("p", nt, c(b.details.spatial.crs.description), 1)
|
|
55
54
|
])
|
|
56
55
|
]),
|
|
57
56
|
s("div", null, [
|
|
58
57
|
m[2] || (m[2] = s("p", { class: "text-xs text-gray-500 mb-2" }, "Межі покриття", -1)),
|
|
59
|
-
s("div",
|
|
58
|
+
s("div", rt, [
|
|
60
59
|
(o(!0), d(q, null, B(b.details.spatial.bounds, (a) => (o(), d("div", {
|
|
61
60
|
key: a.label,
|
|
62
61
|
class: "bg-gray-50 p-2 rounded-lg border border-gray-200"
|
|
@@ -82,24 +81,24 @@ const We = { class: "flex-1 overflow-y-auto p-4 sm:p-6" }, Xe = { class: "space-
|
|
|
82
81
|
]);
|
|
83
82
|
};
|
|
84
83
|
}
|
|
85
|
-
}), pt = { class: "flex-1 overflow-y-auto space-y-3 pr-1" }, mt = { class: "font-medium text-sm text-gray-800" },
|
|
84
|
+
}), pt = { class: "flex-1 overflow-y-auto space-y-3 pr-1" }, mt = { class: "font-medium text-sm text-gray-800" }, vt = { class: "text-xs text-gray-500" }, xt = /* @__PURE__ */ F({
|
|
86
85
|
__name: "raster-files-tab",
|
|
87
86
|
props: {
|
|
88
87
|
files: {}
|
|
89
88
|
},
|
|
90
89
|
setup(b) {
|
|
91
90
|
return (p, m) => (o(), d("div", pt, [
|
|
92
|
-
(o(!0), d(q, null, B(b.files, (
|
|
93
|
-
key:
|
|
91
|
+
(o(!0), d(q, null, B(b.files, (r) => (o(), d("div", {
|
|
92
|
+
key: r.name,
|
|
94
93
|
class: "border border-gray-100 rounded-xl p-4 shadow-sm bg-white flex items-start justify-between"
|
|
95
94
|
}, [
|
|
96
95
|
s("div", null, [
|
|
97
|
-
s("p", mt, c(
|
|
98
|
-
s("p",
|
|
96
|
+
s("p", mt, c(r.name), 1),
|
|
97
|
+
s("p", vt, c(r.resolution) + " • " + c(r.size) + "MB", 1)
|
|
99
98
|
]),
|
|
100
99
|
s("span", {
|
|
101
|
-
class: W(["text-[11px] font-semibold px-2 py-0.5 rounded-full",
|
|
102
|
-
}, c(
|
|
100
|
+
class: W(["text-[11px] font-semibold px-2 py-0.5 rounded-full", r.statusClass])
|
|
101
|
+
}, c(r.status), 3)
|
|
103
102
|
]))), 128))
|
|
104
103
|
]));
|
|
105
104
|
}
|
|
@@ -141,8 +140,8 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
141
140
|
},
|
|
142
141
|
emits: ["toggle-extent"],
|
|
143
142
|
setup(b) {
|
|
144
|
-
const p = b, m = p.layerId || "raster-preview-layer",
|
|
145
|
-
sourceId:
|
|
143
|
+
const p = b, m = p.layerId || "raster-preview-layer", r = `${m}-source`, a = p.extent && p.extent.length === 4 ? [...p.extent] : void 0, x = Be(m, {
|
|
144
|
+
sourceId: r,
|
|
146
145
|
source: {
|
|
147
146
|
type: "raster",
|
|
148
147
|
tiles: p.tileUrl ? [p.tileUrl + "?nottl=1"] : [],
|
|
@@ -155,21 +154,21 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
155
154
|
paint: { "raster-opacity": 1 }
|
|
156
155
|
},
|
|
157
156
|
beforeId: p.beforeId ?? null
|
|
158
|
-
}), { fitBounds:
|
|
157
|
+
}), { fitBounds: v } = Te(), $ = h(1);
|
|
159
158
|
S(
|
|
160
159
|
() => p.tileUrl,
|
|
161
160
|
(u) => {
|
|
162
161
|
if (!u) {
|
|
163
|
-
|
|
162
|
+
x.setVisible(!1);
|
|
164
163
|
return;
|
|
165
164
|
}
|
|
166
|
-
|
|
165
|
+
x.setVisible(!0), x.setTiles([u]);
|
|
167
166
|
},
|
|
168
167
|
{ immediate: !0 }
|
|
169
168
|
), S(
|
|
170
169
|
() => $.value,
|
|
171
170
|
(u) => {
|
|
172
|
-
|
|
171
|
+
x.setOpacity(u);
|
|
173
172
|
},
|
|
174
173
|
{ immediate: !0 }
|
|
175
174
|
);
|
|
@@ -184,7 +183,7 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
184
183
|
k = !0;
|
|
185
184
|
return;
|
|
186
185
|
}
|
|
187
|
-
|
|
186
|
+
v == null || v([[u[0], u[1]], [u[2], u[3]]], {
|
|
188
187
|
padding: 40,
|
|
189
188
|
maxZoom: 17
|
|
190
189
|
});
|
|
@@ -235,7 +234,7 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
235
234
|
}, ts = {
|
|
236
235
|
key: 1,
|
|
237
236
|
class: "mb-3 text-xs text-rose-600"
|
|
238
|
-
}, ss = "OpenGIS", oe = 2, P = 5,
|
|
237
|
+
}, ss = "OpenGIS", oe = 2, P = 5, us = /* @__PURE__ */ F({
|
|
239
238
|
__name: "raster",
|
|
240
239
|
setup(b) {
|
|
241
240
|
const p = [
|
|
@@ -243,11 +242,11 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
243
242
|
{ cardClass: "bg-gradient-to-br from-blue-50 to-blue-100/30 border-blue-200", titleClass: "text-blue-900" },
|
|
244
243
|
{ cardClass: "bg-gradient-to-br from-purple-50 to-purple-100/30 border-purple-200", titleClass: "text-purple-900" },
|
|
245
244
|
{ cardClass: "bg-gradient-to-br from-gray-50 to-gray-100/30 border-gray-200", titleClass: "text-gray-900" }
|
|
246
|
-
], m = Le(),
|
|
245
|
+
], m = Le(), r = Ne(), a = h(null), x = g(() => {
|
|
247
246
|
var t;
|
|
248
|
-
const e = (t =
|
|
247
|
+
const e = (t = r.params) == null ? void 0 : t.id;
|
|
249
248
|
return typeof e == "string" ? e : void 0;
|
|
250
|
-
}),
|
|
249
|
+
}), v = h(null), $ = h(!1), I = h(!1), k = h(null), N = h(!0);
|
|
251
250
|
let u = null;
|
|
252
251
|
const y = h(!1);
|
|
253
252
|
function C(e) {
|
|
@@ -259,37 +258,37 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
259
258
|
function V(e, t) {
|
|
260
259
|
return e.toFixed(t);
|
|
261
260
|
}
|
|
262
|
-
function Q(e, t,
|
|
263
|
-
const
|
|
264
|
-
return Math.abs(e - t) >
|
|
261
|
+
function Q(e, t, l) {
|
|
262
|
+
const n = 0.5 * 10 ** -l;
|
|
263
|
+
return Math.abs(e - t) > n;
|
|
265
264
|
}
|
|
266
265
|
function G() {
|
|
267
266
|
var e;
|
|
268
267
|
return (e = a.value) == null ? void 0 : e.ctx;
|
|
269
268
|
}
|
|
270
269
|
function X() {
|
|
271
|
-
var w, se,
|
|
270
|
+
var w, se, le, ne;
|
|
272
271
|
const e = (se = (w = G()) == null ? void 0 : w.map) == null ? void 0 : se.value;
|
|
273
272
|
if (!e) return;
|
|
274
|
-
const t = C(
|
|
275
|
-
if (t == null ||
|
|
276
|
-
const i = (
|
|
277
|
-
(!i || Q(i.lng,
|
|
273
|
+
const t = C(r.query.z), l = C(r.query.x), n = C(r.query.y);
|
|
274
|
+
if (t == null || l == null || n == null) return;
|
|
275
|
+
const i = (le = e.getCenter) == null ? void 0 : le.call(e), f = (ne = e.getZoom) == null ? void 0 : ne.call(e);
|
|
276
|
+
(!i || Q(i.lng, l, P) || Q(i.lat, n, P) || Q(f ?? 0, t, oe)) && (y.value = !0, e.jumpTo({ center: [l, n], zoom: t }), y.value = !1);
|
|
278
277
|
}
|
|
279
278
|
function ae() {
|
|
280
279
|
var i, f, _, w;
|
|
281
280
|
if (y.value) return;
|
|
282
281
|
const e = (f = (i = G()) == null ? void 0 : i.map) == null ? void 0 : f.value;
|
|
283
282
|
if (!e) return;
|
|
284
|
-
const t = (_ = e.getCenter) == null ? void 0 : _.call(e),
|
|
285
|
-
if (!t ||
|
|
286
|
-
const
|
|
287
|
-
...
|
|
288
|
-
z: V(
|
|
283
|
+
const t = (_ = e.getCenter) == null ? void 0 : _.call(e), l = (w = e.getZoom) == null ? void 0 : w.call(e);
|
|
284
|
+
if (!t || l == null) return;
|
|
285
|
+
const n = {
|
|
286
|
+
...r.query,
|
|
287
|
+
z: V(l, oe),
|
|
289
288
|
x: V(t.lng, P),
|
|
290
289
|
y: V(t.lat, P)
|
|
291
290
|
};
|
|
292
|
-
|
|
291
|
+
r.query.z === n.z && r.query.x === n.x && r.query.y === n.y || m.replace({ query: n });
|
|
293
292
|
}
|
|
294
293
|
function ue() {
|
|
295
294
|
var t;
|
|
@@ -299,29 +298,29 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
299
298
|
}
|
|
300
299
|
const Y = g(() => {
|
|
301
300
|
var t;
|
|
302
|
-
const e = (t =
|
|
301
|
+
const e = (t = v.value) == null ? void 0 : t.url;
|
|
303
302
|
return e ? /^https?:\/\//i.test(e) || typeof window > "u" || typeof location > "u" ? e : `${location.origin}${e}` : "";
|
|
304
303
|
}), j = g(() => {
|
|
305
304
|
var e;
|
|
306
|
-
return ((e =
|
|
307
|
-
}), K = g(() =>
|
|
305
|
+
return ((e = v.value) == null ? void 0 : e.extent) ?? null;
|
|
306
|
+
}), K = g(() => x.value ? `raster-${x.value}` : void 0), ce = g(() => x.value ? `raster-extent-${x.value}` : "raster-extent"), de = g(() => {
|
|
308
307
|
const e = K.value ?? "raster", t = j.value && j.value.length === 4 ? j.value.join(",") : "no-extent";
|
|
309
308
|
return `${e}-${t}`;
|
|
310
309
|
}), fe = g(() => !!Y.value), Z = g(() => {
|
|
311
310
|
const e = j.value;
|
|
312
311
|
if (!e || e.length !== 4) return null;
|
|
313
|
-
const [t,
|
|
314
|
-
return [t,
|
|
312
|
+
const [t, l, n, i] = e;
|
|
313
|
+
return [t, l, n, i].some(
|
|
315
314
|
(f) => typeof f != "number" || Number.isNaN(f)
|
|
316
|
-
) ? null : [(t +
|
|
315
|
+
) ? null : [(t + n) / 2, (l + i) / 2];
|
|
317
316
|
}), z = g(() => {
|
|
318
317
|
var f, _;
|
|
319
|
-
const e =
|
|
318
|
+
const e = v.value, t = e == null ? void 0 : e.extent, n = x.value ?? "—", i = [
|
|
320
319
|
e != null && e.extension ? `Формат ${String(e.extension).toUpperCase()}` : null,
|
|
321
320
|
(e == null ? void 0 : e.resolution) || null
|
|
322
321
|
].filter(Boolean).join(", ");
|
|
323
322
|
return {
|
|
324
|
-
id:
|
|
323
|
+
id: n,
|
|
325
324
|
name: (e == null ? void 0 : e.name) || ((_ = (f = e == null ? void 0 : e.files) == null ? void 0 : f[0]) == null ? void 0 : _.name),
|
|
326
325
|
description: (e == null ? void 0 : e.description) || i || "Попередній перегляд растрового шару.",
|
|
327
326
|
coverage: t && t.length === 4 ? `${E(t[0])}, ${E(t[1])} → ${E(t[2])}, ${E(t[3])}` : "Покриття уточнюється",
|
|
@@ -330,7 +329,7 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
330
329
|
updatedAt: e != null && e.cache ? "Дані кешовано" : "Нові дані"
|
|
331
330
|
};
|
|
332
331
|
}), A = g(() => {
|
|
333
|
-
const e =
|
|
332
|
+
const e = v.value;
|
|
334
333
|
return e ? [
|
|
335
334
|
e.source_path,
|
|
336
335
|
e.srid ? `SRID: ${e.srid}` : null,
|
|
@@ -340,36 +339,36 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
340
339
|
].filter((t) => t).join(", ") : "";
|
|
341
340
|
}), H = [
|
|
342
341
|
{ key: "info", label: "Інформація", icon: ht },
|
|
343
|
-
{ key: "files", label: "Файли", icon:
|
|
344
|
-
{ key: "metadata", label: "Метадані", icon:
|
|
345
|
-
], J = H.map((e) => e.key), R = h(J.includes(
|
|
346
|
-
S(() =>
|
|
342
|
+
{ key: "files", label: "Файли", icon: De },
|
|
343
|
+
{ key: "metadata", label: "Метадані", icon: Ve }
|
|
344
|
+
], J = H.map((e) => e.key), R = h(J.includes(r.query.tab) ? r.query.tab : "info"), T = h(!0);
|
|
345
|
+
S(() => r.query.tab, (e) => {
|
|
347
346
|
e && J.includes(e) && R.value !== e && (R.value = e);
|
|
348
347
|
}), S(R, (e) => {
|
|
349
|
-
|
|
348
|
+
r.query.tab !== e && m.replace({ query: { ...r.query, tab: e } });
|
|
350
349
|
});
|
|
351
|
-
const pe = g(() =>
|
|
350
|
+
const pe = g(() => xe(v.value)), ee = g(() => ge(v.value));
|
|
352
351
|
S(
|
|
353
|
-
() =>
|
|
352
|
+
() => v.value,
|
|
354
353
|
() => {
|
|
355
354
|
ue();
|
|
356
355
|
},
|
|
357
356
|
{ immediate: !0 }
|
|
358
357
|
);
|
|
359
358
|
async function me() {
|
|
360
|
-
var
|
|
359
|
+
var n;
|
|
361
360
|
const e = G();
|
|
362
361
|
if (!(e != null && e.ready)) return;
|
|
363
362
|
await e.ready(), X();
|
|
364
|
-
const t = (
|
|
363
|
+
const t = (n = e.map) == null ? void 0 : n.value;
|
|
365
364
|
if (!t) return;
|
|
366
|
-
const
|
|
367
|
-
t.on("moveend",
|
|
368
|
-
t.off("moveend",
|
|
365
|
+
const l = () => ae();
|
|
366
|
+
t.on("moveend", l), t.on("zoomend", l), u = () => {
|
|
367
|
+
t.off("moveend", l), t.off("zoomend", l);
|
|
369
368
|
};
|
|
370
369
|
}
|
|
371
370
|
S(
|
|
372
|
-
() => [
|
|
371
|
+
() => [r.query.z, r.query.x, r.query.y],
|
|
373
372
|
() => {
|
|
374
373
|
X();
|
|
375
374
|
}
|
|
@@ -377,17 +376,17 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
377
376
|
me();
|
|
378
377
|
}), Ie(() => {
|
|
379
378
|
u == null || u(), u = null;
|
|
380
|
-
}), S(
|
|
379
|
+
}), S(x, () => {
|
|
381
380
|
O();
|
|
382
381
|
}, { immediate: !0 });
|
|
383
|
-
async function
|
|
382
|
+
async function ve(e) {
|
|
384
383
|
var t;
|
|
385
|
-
O(), ((t =
|
|
384
|
+
O(), ((t = v.value) == null ? void 0 : t.srid) !== e.srid && (D({ title: "XML start", type: "info", message: "зміна системи координат, оновлюємо карту ..." }), await te(`/api/gis-xml/${encodeURIComponent(x.value)}`), D({ title: "XML created", type: "info", message: "карта створена" }), location.reload());
|
|
386
385
|
}
|
|
387
386
|
async function O() {
|
|
388
|
-
const e =
|
|
387
|
+
const e = x.value;
|
|
389
388
|
if (!e) {
|
|
390
|
-
|
|
389
|
+
v.value = null, k.value = null;
|
|
391
390
|
return;
|
|
392
391
|
}
|
|
393
392
|
$.value = !0, k.value = null;
|
|
@@ -395,39 +394,39 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
395
394
|
const t = await fetch(`/api/gis-raster/${encodeURIComponent(e)}`);
|
|
396
395
|
if (!t.ok)
|
|
397
396
|
throw new Error(`HTTP ${t.status}`);
|
|
398
|
-
const
|
|
399
|
-
|
|
397
|
+
const l = await t.json();
|
|
398
|
+
l.xml && (I.value = !0), v.value = l, l.xml || (D({ title: "XML not found", type: "info", message: "йде створення xml ... зачекайте" }), await te(`/api/gis-xml/${encodeURIComponent(e)}`), D({ title: "XML created", type: "info", message: "карта створена" }), fetch(`/api/gis-raster/${encodeURIComponent(e)}?nocache=1`), I.value = !0);
|
|
400
399
|
} catch (t) {
|
|
401
|
-
console.error("Failed to load raster info", t),
|
|
400
|
+
console.error("Failed to load raster info", t), v.value = null, k.value = t instanceof Error ? t.message : String(t);
|
|
402
401
|
} finally {
|
|
403
402
|
$.value = !1;
|
|
404
403
|
}
|
|
405
404
|
}
|
|
406
405
|
function te(e) {
|
|
407
|
-
return new Promise((t,
|
|
408
|
-
const
|
|
409
|
-
|
|
406
|
+
return new Promise((t, l) => {
|
|
407
|
+
const n = new EventSource(e), i = [];
|
|
408
|
+
n.onmessage = (f) => {
|
|
410
409
|
i.push(f.data), console.log("Received:", f.data);
|
|
411
|
-
},
|
|
412
|
-
|
|
413
|
-
}),
|
|
414
|
-
|
|
410
|
+
}, n.addEventListener("end", () => {
|
|
411
|
+
n.close(), t(i);
|
|
412
|
+
}), n.onerror = (f) => {
|
|
413
|
+
n.close(), t(f);
|
|
415
414
|
};
|
|
416
415
|
});
|
|
417
416
|
}
|
|
418
|
-
function
|
|
417
|
+
function xe(e) {
|
|
419
418
|
var t;
|
|
420
|
-
return (t = e == null ? void 0 : e.files) != null && t.length ? e.files.map((
|
|
421
|
-
name:
|
|
422
|
-
resolution: ye(
|
|
423
|
-
size:
|
|
419
|
+
return (t = e == null ? void 0 : e.files) != null && t.length ? e.files.map((l) => ({
|
|
420
|
+
name: l.name,
|
|
421
|
+
resolution: ye(l.name, e),
|
|
422
|
+
size: l.size || "—",
|
|
424
423
|
status: "Готово",
|
|
425
424
|
statusClass: "bg-emerald-50 text-emerald-600 border border-emerald-100"
|
|
426
425
|
})) : [];
|
|
427
426
|
}
|
|
428
427
|
function ye(e, t) {
|
|
429
|
-
const
|
|
430
|
-
return
|
|
428
|
+
const l = e.toLowerCase();
|
|
429
|
+
return l.endsWith(".tfw") ? "Georeference" : l.endsWith(".xml") ? "Опис" : l.endsWith(".tif") || l.endsWith(".tiff") ? t != null && t.resolution ? t.resolution : "Растер" : (t == null ? void 0 : t.resolution) ?? "Файл";
|
|
431
430
|
}
|
|
432
431
|
function ge(e) {
|
|
433
432
|
return e ? {
|
|
@@ -445,16 +444,16 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
445
444
|
} : null;
|
|
446
445
|
}
|
|
447
446
|
function be(e) {
|
|
448
|
-
return e != null && e.length ? e.map((
|
|
447
|
+
return e != null && e.length ? e.map((l) => {
|
|
449
448
|
var i;
|
|
450
|
-
if (!
|
|
451
|
-
const
|
|
452
|
-
return ((i =
|
|
449
|
+
if (!l) return "";
|
|
450
|
+
const n = l.trim().split(/\s+/)[0];
|
|
451
|
+
return ((i = n == null ? void 0 : n[0]) == null ? void 0 : i.toUpperCase()) || "";
|
|
453
452
|
}).filter(Boolean).join("") : "";
|
|
454
453
|
}
|
|
455
454
|
function he(e) {
|
|
456
455
|
var f, _;
|
|
457
|
-
const t = e.bands_count ?? ((f = e.bands) == null ? void 0 : f.length) ?? "—",
|
|
456
|
+
const t = e.bands_count ?? ((f = e.bands) == null ? void 0 : f.length) ?? "—", l = be(e.bands), n = (e.bands ?? []).map((w) => w.trim()).filter((w) => w.length > 0), i = n.length ? n.join(", ") : void 0;
|
|
458
457
|
return [
|
|
459
458
|
{
|
|
460
459
|
label: "Розмір растру, px",
|
|
@@ -464,7 +463,7 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
464
463
|
{ label: "Розмір файлу, mb", value: e.total_size ? `${e.total_size}` : "—" },
|
|
465
464
|
{
|
|
466
465
|
label: "Кількість каналів",
|
|
467
|
-
value: typeof t == "number" ? `${t}${
|
|
466
|
+
value: typeof t == "number" ? `${t}${l ? ` (${l})` : ""}` : `${t}${l ? ` (${l})` : ""}`,
|
|
468
467
|
tooltip: i
|
|
469
468
|
},
|
|
470
469
|
{ label: "Глибина кольору", value: e.color_depth ? `${e.color_depth} біт/канал` : "—" },
|
|
@@ -487,14 +486,14 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
487
486
|
}
|
|
488
487
|
function $e(e) {
|
|
489
488
|
var t;
|
|
490
|
-
return (t = e.bands) != null && t.length ? e.bands.map((
|
|
491
|
-
const i = p[
|
|
489
|
+
return (t = e.bands) != null && t.length ? e.bands.map((l, n) => {
|
|
490
|
+
const i = p[n % p.length];
|
|
492
491
|
return {
|
|
493
|
-
label: `Канал ${
|
|
492
|
+
label: `Канал ${n + 1}${l ? ` (${l})` : ""}`,
|
|
494
493
|
cardClass: i.cardClass,
|
|
495
494
|
titleClass: i.titleClass,
|
|
496
495
|
metrics: [
|
|
497
|
-
{ label: "Назва", value:
|
|
496
|
+
{ label: "Назва", value: l || `Канал ${n + 1}` },
|
|
498
497
|
{ label: "Глибина", value: e.color_depth ? `${e.color_depth} біт` : "—" },
|
|
499
498
|
{ label: "Статус", value: e.cache ? "Кешовано" : "Готово" }
|
|
500
499
|
]
|
|
@@ -514,8 +513,8 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
514
513
|
}
|
|
515
514
|
function E(e, t) {
|
|
516
515
|
if (e == null || Number.isNaN(e)) return "—";
|
|
517
|
-
const
|
|
518
|
-
return t ? `${
|
|
516
|
+
const l = `${e.toFixed(5)}°`;
|
|
517
|
+
return t ? `${l} ${t}` : l;
|
|
519
518
|
}
|
|
520
519
|
return (e, t) => (o(), d("div", St, [
|
|
521
520
|
s("div", It, [
|
|
@@ -527,7 +526,7 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
527
526
|
s("button", {
|
|
528
527
|
type: "button",
|
|
529
528
|
class: "hover:text-gray-700 cursor-pointer transition-colors",
|
|
530
|
-
onClick: t[0] || (t[0] = (
|
|
529
|
+
onClick: t[0] || (t[0] = (l) => je(m).push("/gis.rasters"))
|
|
531
530
|
}, " Растри "),
|
|
532
531
|
t[3] || (t[3] = s("svg", {
|
|
533
532
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -565,14 +564,14 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
565
564
|
title: z.value.description
|
|
566
565
|
}, c(z.value.description), 9, Qt)
|
|
567
566
|
]),
|
|
568
|
-
M(
|
|
569
|
-
"entity-id":
|
|
567
|
+
M(Qe, {
|
|
568
|
+
"entity-id": x.value || "",
|
|
570
569
|
"entity-info": { name: z.value.name },
|
|
571
570
|
table: "gis.rasters.table",
|
|
572
571
|
"entity-label": "Растер",
|
|
573
572
|
"save-method": "put",
|
|
574
573
|
"edit-button-text": "Редагувати",
|
|
575
|
-
onSaved:
|
|
574
|
+
onSaved: ve
|
|
576
575
|
}, null, 8, ["entity-id", "entity-info"])
|
|
577
576
|
])
|
|
578
577
|
])
|
|
@@ -580,7 +579,7 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
580
579
|
]),
|
|
581
580
|
s("div", Gt, [
|
|
582
581
|
s("div", At, [
|
|
583
|
-
M(
|
|
582
|
+
M(Pe, {
|
|
584
583
|
ref_key: "mapViewRef",
|
|
585
584
|
ref: a
|
|
586
585
|
}, {
|
|
@@ -591,18 +590,18 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
591
590
|
extent: j.value,
|
|
592
591
|
"layer-id": K.value,
|
|
593
592
|
"show-raster-extent": N.value,
|
|
594
|
-
onToggleExtent: t[1] || (t[1] = (
|
|
593
|
+
onToggleExtent: t[1] || (t[1] = (l) => N.value = l)
|
|
595
594
|
}, null, 8, ["tile-url", "extent", "layer-id", "show-raster-extent"])) : U("", !0),
|
|
596
595
|
M(Oe, {
|
|
597
596
|
extent: N.value ? j.value : null,
|
|
598
597
|
"layer-id": ce.value
|
|
599
598
|
}, null, 8, ["extent", "layer-id"]),
|
|
600
599
|
s("div", Ot, [
|
|
601
|
-
M(
|
|
600
|
+
M(Fe)
|
|
602
601
|
]),
|
|
603
602
|
s("div", Wt, [
|
|
604
|
-
M(
|
|
605
|
-
Z.value ? (o(), L(
|
|
603
|
+
M(re),
|
|
604
|
+
Z.value ? (o(), L(re, {
|
|
606
605
|
key: 0,
|
|
607
606
|
targetCenter: Z.value,
|
|
608
607
|
targetLabel: "Центр даних",
|
|
@@ -614,9 +613,9 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
614
613
|
}, 512)
|
|
615
614
|
])
|
|
616
615
|
]),
|
|
617
|
-
M(
|
|
616
|
+
M(Ge, {
|
|
618
617
|
open: T.value,
|
|
619
|
-
onToggle: t[2] || (t[2] = (
|
|
618
|
+
onToggle: t[2] || (t[2] = (l) => T.value = !T.value)
|
|
620
619
|
}, null, 8, ["open"])
|
|
621
620
|
]),
|
|
622
621
|
s("div", {
|
|
@@ -625,28 +624,28 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
625
624
|
s("div", Xt, [
|
|
626
625
|
s("div", Yt, [
|
|
627
626
|
s("div", Kt, [
|
|
628
|
-
(o(), d(q, null, B(H, (
|
|
629
|
-
key:
|
|
627
|
+
(o(), d(q, null, B(H, (l) => s("button", {
|
|
628
|
+
key: l.key,
|
|
630
629
|
type: "button",
|
|
631
630
|
role: "tab",
|
|
632
|
-
"aria-selected": R.value ===
|
|
633
|
-
class: W(["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", R.value ===
|
|
634
|
-
onClick: (
|
|
631
|
+
"aria-selected": R.value === l.key,
|
|
632
|
+
class: W(["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", R.value === l.key ? "bg-white shadow-sm text-gray-700" : ""]),
|
|
633
|
+
onClick: (n) => R.value = l.key
|
|
635
634
|
}, [
|
|
636
|
-
(o(), L(Me(
|
|
637
|
-
s("span", Ht, c(
|
|
635
|
+
(o(), L(Me(l.icon), { class: "h-3.5 w-3.5 mb-0.5" })),
|
|
636
|
+
s("span", Ht, c(l.label), 1)
|
|
638
637
|
], 10, Zt)), 64))
|
|
639
638
|
])
|
|
640
639
|
]),
|
|
641
640
|
s("div", Jt, [
|
|
642
641
|
$.value ? (o(), d("div", es, " Завантаження метаданих растру… ")) : k.value ? (o(), d("div", ts, " Не вдалося отримати дані: " + c(k.value), 1)) : U("", !0),
|
|
643
|
-
R.value === "files" ? (o(), L(
|
|
642
|
+
R.value === "files" ? (o(), L(xt, {
|
|
644
643
|
key: 2,
|
|
645
644
|
files: pe.value
|
|
646
|
-
}, null, 8, ["files"])) : R.value === "metadata" ? (o(), L(
|
|
645
|
+
}, null, 8, ["files"])) : R.value === "metadata" ? (o(), L(Ae, {
|
|
647
646
|
key: 3,
|
|
648
|
-
data:
|
|
649
|
-
"entity-id":
|
|
647
|
+
data: v.value,
|
|
648
|
+
"entity-id": x.value,
|
|
650
649
|
"entity-type": "raster",
|
|
651
650
|
onSaved: O
|
|
652
651
|
}, null, 8, ["data", "entity-id"])) : ee.value ? (o(), L(ft, {
|
|
@@ -660,5 +659,5 @@ const ht = /* @__PURE__ */ qe(yt, [["render", bt]]), _t = { class: "absolute top
|
|
|
660
659
|
}
|
|
661
660
|
});
|
|
662
661
|
export {
|
|
663
|
-
|
|
662
|
+
us as default
|
|
664
663
|
};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { defineComponent as B,
|
|
1
|
+
import { defineComponent as B, useModel as S, computed as h, defineAsyncComponent as O, ref as $, watch as D, onBeforeUnmount as K, openBlock as k, createElementBlock as C, createElementVNode as l, createBlock as T, unref as U, createTextVNode as q, createVNode as V, mergeModels as j, toDisplayString as M, resolveDynamicComponent as J, onMounted as G, resolveComponent as W, withCtx as I, Fragment as X, createCommentVNode as Y } from "vue";
|
|
2
2
|
import { useRoute as Z, useRouter as ee } from "vue-router";
|
|
3
3
|
import { notify as F } from "@opengis/core";
|
|
4
4
|
import { _ as te } from "./TableFormHeader.vue_vue_type_script_setup_true_lang-Mci_tseM.js";
|
|
5
|
-
import { V as N } from "./vs-datatable-
|
|
6
|
-
import { _ as z, n as R, m as E, r as H } from "./import-utils-
|
|
7
|
-
import { a as ae, b as le, c as se, d as oe, e as ie } from "./index-
|
|
5
|
+
import { V as N } from "./vs-datatable-QG5b0CCL.js";
|
|
6
|
+
import { _ as z, n as R, m as E, r as H } from "./import-utils-BxeYqcn7.js";
|
|
7
|
+
import { a as ae, b as le, c as se, d as oe, e as ie } from "./index-Ba6SE4TN.js";
|
|
8
8
|
import { LucideChevronRight as re } from "lucide-vue-next";
|
|
9
9
|
import { _ as ne } from "./MapSettingsTabs.vue_vue_type_script_setup_true_lang-CKCK3NqY.js";
|
|
10
10
|
const ue = { class: "vs-form" }, de = { class: "vs-form__body auto-rows-max container" }, ce = { class: "flex flex-wrap" }, me = { class: "h-fit w-full mb-6 bg-white border border-gray-200 rounded-lg p-6" }, ve = { class: "h-fit w-full flex flex-wrap" }, pe = { class: "w-full" }, fe = /* @__PURE__ */ B({
|
|
@@ -520,11 +520,11 @@ const ue = { class: "vs-form" }, de = { class: "vs-form__body auto-rows-max cont
|
|
|
520
520
|
]));
|
|
521
521
|
}
|
|
522
522
|
}), P = {
|
|
523
|
-
template1:
|
|
524
|
-
template2:
|
|
523
|
+
template1: ie,
|
|
524
|
+
template2: oe,
|
|
525
525
|
template3: se,
|
|
526
|
-
template4:
|
|
527
|
-
template5:
|
|
526
|
+
template4: le,
|
|
527
|
+
template5: ae
|
|
528
528
|
}, De = { class: "space-y-4" }, Se = { class: "flex items-center gap-4 bg-white border border-gray-200 rounded-lg px-6 py-4" }, qe = { class: "text-lg font-semibold mb-4" }, Be = { class: "bg-white" }, Ie = {
|
|
529
529
|
key: 1,
|
|
530
530
|
class: "text-gray-400 text-center py-12"
|