vue-openlayers-plugin 1.0.26 → 1.0.28
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/lib/{index-27180af2.mjs → index-bff620ad.mjs} +962 -1079
- package/lib/{index.es-961ed35a.mjs → index.es-64fea0cf.mjs} +1 -1
- package/lib/index.esm.js +3 -3
- package/lib/index.umd.js +1157 -1273
- package/lib/style.css +26 -1
- package/package.json +1 -1
- package/types/src/components/CustomOpenlayer/components/MapContainer.vue.d.ts +8 -92
- package/types/src/components/CustomOpenlayer/components/MapContainer.vue.d.ts.map +1 -1
- package/types/src/components/CustomOpenlayer/components/MapTooltip/index.vue.d.ts +6 -6
- package/types/src/components/CustomOpenlayer/index.vue.d.ts +56 -18
- package/types/src/components/CustomOpenlayer/index.vue.d.ts.map +1 -1
- package/types/src/components/CustomOpenlayer/utils/layers/ClusterLayerHandler.d.ts.map +1 -1
|
@@ -4,7 +4,7 @@ var __publicField = (obj, key, value) => {
|
|
|
4
4
|
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
5
|
return value;
|
|
6
6
|
};
|
|
7
|
-
import { getCurrentInstance, inject, ref, computed, unref, getCurrentScope, onScopeDispose, shallowRef, watchEffect, readonly, onMounted, nextTick, watch, isRef, warn as warn$3, provide, defineComponent, openBlock, createElementBlock, mergeProps, renderSlot, createElementVNode, toRef, onUnmounted, useAttrs as useAttrs$1, useSlots, normalizeClass, normalizeStyle as normalizeStyle$1, createCommentVNode, Fragment, createBlock, withCtx, resolveDynamicComponent, withModifiers, toDisplayString, onBeforeUnmount, createVNode as createVNode$1, Transition, withDirectives, createTextVNode, vShow, Text as Text$6, reactive, h as h$4, shallowReactive, isVNode, render as render$3, markRaw, toRefs, resolveComponent, withKeys,
|
|
7
|
+
import { getCurrentInstance, inject, ref, computed, unref, getCurrentScope, onScopeDispose, shallowRef, watchEffect, readonly, onMounted, nextTick, watch, isRef, warn as warn$3, provide, defineComponent, openBlock, createElementBlock, mergeProps, renderSlot, createElementVNode, toRef, onUnmounted, useAttrs as useAttrs$1, useSlots, normalizeClass, normalizeStyle as normalizeStyle$1, createCommentVNode, Fragment, createBlock, withCtx, resolveDynamicComponent, withModifiers, toDisplayString, onBeforeUnmount, createVNode as createVNode$1, Transition, withDirectives, createTextVNode, vShow, Text as Text$6, reactive, h as h$4, shallowReactive, isVNode, render as render$3, markRaw, toRefs, resolveComponent, withKeys, resolveDirective, Teleport, renderList, createApp } from "vue";
|
|
8
8
|
import { Feature as Feature$6, Map as Map$8 } from "ol";
|
|
9
9
|
function _mergeNamespaces(n2, m2) {
|
|
10
10
|
for (var i = 0; i < m2.length; i++) {
|
|
@@ -24141,255 +24141,6 @@ function v4(options, buf, offset) {
|
|
|
24141
24141
|
}
|
|
24142
24142
|
return unsafeStringify(rnds);
|
|
24143
24143
|
}
|
|
24144
|
-
const _hoisted_1$o = {
|
|
24145
|
-
key: 2,
|
|
24146
|
-
class: "tooltip-content"
|
|
24147
|
-
};
|
|
24148
|
-
const _hoisted_2$m = ["innerHTML"];
|
|
24149
|
-
const _hoisted_3$m = { key: 1 };
|
|
24150
|
-
const _hoisted_4$l = { class: "layer-title" };
|
|
24151
|
-
const _hoisted_5$l = ["onClick"];
|
|
24152
|
-
const _hoisted_6$j = { class: "property-key" };
|
|
24153
|
-
const _hoisted_7$e = { class: "property-value" };
|
|
24154
|
-
const _hoisted_8$b = ["innerHTML"];
|
|
24155
|
-
const _hoisted_9$a = { key: 3 };
|
|
24156
|
-
const _hoisted_10$a = { class: "mb-3 pb-2 border-b border-gray-200 text-xs text-gray-600" };
|
|
24157
|
-
const _hoisted_11$9 = { class: "m-0 mb-2 text-sm font-semibold text-gray-800 border-b border-gray-200 pb-1" };
|
|
24158
|
-
const _hoisted_12$9 = ["onClick"];
|
|
24159
|
-
const _hoisted_13$9 = { class: "font-medium text-gray-700 min-w-20 mr-2" };
|
|
24160
|
-
const _hoisted_14$8 = { class: "text-gray-800 break-all flex-1" };
|
|
24161
|
-
const _sfc_main$q = /* @__PURE__ */ defineComponent({
|
|
24162
|
-
__name: "index",
|
|
24163
|
-
props: {
|
|
24164
|
-
config: {},
|
|
24165
|
-
template: { type: [String, Object, Array, Function], default: void 0 },
|
|
24166
|
-
visible: { type: Boolean },
|
|
24167
|
-
tooltipData: {},
|
|
24168
|
-
coordinate: {},
|
|
24169
|
-
pixel: {}
|
|
24170
|
-
},
|
|
24171
|
-
emits: ["data-loaded", "show", "hide", "feature-click"],
|
|
24172
|
-
setup(__props, { emit: __emit }) {
|
|
24173
|
-
const props = __props;
|
|
24174
|
-
const emit = __emit;
|
|
24175
|
-
const tooltipRef = ref();
|
|
24176
|
-
const formattedData = computed(() => {
|
|
24177
|
-
if (!props.tooltipData)
|
|
24178
|
-
return null;
|
|
24179
|
-
return props.tooltipData.map((layerData) => ({
|
|
24180
|
-
...layerData,
|
|
24181
|
-
features: layerData.features.map((feature2) => ({
|
|
24182
|
-
...feature2,
|
|
24183
|
-
properties: feature2.properties || feature2
|
|
24184
|
-
}))
|
|
24185
|
-
}));
|
|
24186
|
-
});
|
|
24187
|
-
const templateData = computed(() => ({
|
|
24188
|
-
data: props.tooltipData || [],
|
|
24189
|
-
formattedData: formattedData.value,
|
|
24190
|
-
coordinate: props.coordinate,
|
|
24191
|
-
pixel: props.pixel
|
|
24192
|
-
}));
|
|
24193
|
-
const renderedTemplate = computed(() => {
|
|
24194
|
-
if (!props.template || !props.tooltipData)
|
|
24195
|
-
return "";
|
|
24196
|
-
if (typeof props.template === "string") {
|
|
24197
|
-
let html = props.template;
|
|
24198
|
-
html = html.replace(/\{\{coordinate\}\}/g, `${props.coordinate[0].toFixed(6)}, ${props.coordinate[1].toFixed(6)}`);
|
|
24199
|
-
html = html.replace(/\{\{layerCount\}\}/g, props.tooltipData.length.toString());
|
|
24200
|
-
return html;
|
|
24201
|
-
}
|
|
24202
|
-
if (typeof props.template === "function") {
|
|
24203
|
-
return props.template(templateData.value);
|
|
24204
|
-
}
|
|
24205
|
-
return "";
|
|
24206
|
-
});
|
|
24207
|
-
const tooltipStyle = computed(() => {
|
|
24208
|
-
var _a3, _b3;
|
|
24209
|
-
const style = {
|
|
24210
|
-
position: "absolute",
|
|
24211
|
-
left: `${props.pixel[0] + (((_a3 = props.config.offset) == null ? void 0 : _a3[0]) || 10)}px`,
|
|
24212
|
-
top: `${props.pixel[1] + (((_b3 = props.config.offset) == null ? void 0 : _b3[1]) || 10)}px`,
|
|
24213
|
-
zIndex: 9999
|
|
24214
|
-
};
|
|
24215
|
-
if (props.config.maxWidth) {
|
|
24216
|
-
style.maxWidth = `${props.config.maxWidth}px`;
|
|
24217
|
-
}
|
|
24218
|
-
if (props.config.maxHeight) {
|
|
24219
|
-
style.maxHeight = `${props.config.maxHeight}px`;
|
|
24220
|
-
}
|
|
24221
|
-
return style;
|
|
24222
|
-
});
|
|
24223
|
-
const formatValue = (value) => {
|
|
24224
|
-
if (value === null || value === void 0)
|
|
24225
|
-
return "-";
|
|
24226
|
-
if (typeof value === "object")
|
|
24227
|
-
return JSON.stringify(value);
|
|
24228
|
-
return String(value);
|
|
24229
|
-
};
|
|
24230
|
-
const hide = () => {
|
|
24231
|
-
emit("hide");
|
|
24232
|
-
};
|
|
24233
|
-
const handleFeatureClick = (feature2, layerData) => {
|
|
24234
|
-
emit("feature-click", feature2, {
|
|
24235
|
-
layerId: layerData.layerId,
|
|
24236
|
-
layerName: layerData.layerName
|
|
24237
|
-
}, props.coordinate);
|
|
24238
|
-
};
|
|
24239
|
-
watch(
|
|
24240
|
-
() => props.visible,
|
|
24241
|
-
(newVisible) => {
|
|
24242
|
-
if (newVisible && props.tooltipData) {
|
|
24243
|
-
emit("show", templateData.value);
|
|
24244
|
-
nextTick(() => {
|
|
24245
|
-
adjustPosition();
|
|
24246
|
-
});
|
|
24247
|
-
} else if (!newVisible) {
|
|
24248
|
-
emit("hide");
|
|
24249
|
-
}
|
|
24250
|
-
}
|
|
24251
|
-
);
|
|
24252
|
-
watch(
|
|
24253
|
-
() => props.tooltipData,
|
|
24254
|
-
(newData) => {
|
|
24255
|
-
if (newData) {
|
|
24256
|
-
emit("data-loaded", newData);
|
|
24257
|
-
}
|
|
24258
|
-
}
|
|
24259
|
-
);
|
|
24260
|
-
const adjustPosition = () => {
|
|
24261
|
-
var _a3, _b3;
|
|
24262
|
-
if (!tooltipRef.value)
|
|
24263
|
-
return;
|
|
24264
|
-
const tooltip = tooltipRef.value;
|
|
24265
|
-
const rect3 = tooltip.getBoundingClientRect();
|
|
24266
|
-
const viewportWidth = window.innerWidth;
|
|
24267
|
-
const viewportHeight = window.innerHeight;
|
|
24268
|
-
let left = props.pixel[0] + (((_a3 = props.config.offset) == null ? void 0 : _a3[0]) || 10);
|
|
24269
|
-
let top = props.pixel[1] + (((_b3 = props.config.offset) == null ? void 0 : _b3[1]) || 10);
|
|
24270
|
-
if (left + rect3.width > viewportWidth) {
|
|
24271
|
-
left = props.pixel[0] - rect3.width - 10;
|
|
24272
|
-
}
|
|
24273
|
-
if (top + rect3.height > viewportHeight) {
|
|
24274
|
-
top = props.pixel[1] - rect3.height - 10;
|
|
24275
|
-
}
|
|
24276
|
-
if (left < 0) {
|
|
24277
|
-
left = 10;
|
|
24278
|
-
}
|
|
24279
|
-
if (top < 0) {
|
|
24280
|
-
top = 10;
|
|
24281
|
-
}
|
|
24282
|
-
tooltip.style.left = `${left}px`;
|
|
24283
|
-
tooltip.style.top = `${top}px`;
|
|
24284
|
-
};
|
|
24285
|
-
const handleClickOutside = (event) => {
|
|
24286
|
-
if (tooltipRef.value && !tooltipRef.value.contains(event.target)) {
|
|
24287
|
-
hide();
|
|
24288
|
-
}
|
|
24289
|
-
};
|
|
24290
|
-
onMounted(() => {
|
|
24291
|
-
document.addEventListener("click", handleClickOutside);
|
|
24292
|
-
});
|
|
24293
|
-
onUnmounted(() => {
|
|
24294
|
-
document.removeEventListener("click", handleClickOutside);
|
|
24295
|
-
});
|
|
24296
|
-
return (_ctx, _cache) => {
|
|
24297
|
-
const _component_el_button = resolveComponent("el-button");
|
|
24298
|
-
return _ctx.visible && _ctx.tooltipData ? (openBlock(), createElementBlock("div", {
|
|
24299
|
-
key: 0,
|
|
24300
|
-
ref_key: "tooltipRef",
|
|
24301
|
-
ref: tooltipRef,
|
|
24302
|
-
class: normalizeClass(["bg-white/95 border border-gray-300 rounded-md shadow-lg p-3 text-sm leading-relaxed max-w-75 max-h-100 overflow-y-auto backdrop-blur-10px relative", _ctx.config.className]),
|
|
24303
|
-
style: normalizeStyle$1(tooltipStyle.value)
|
|
24304
|
-
}, [
|
|
24305
|
-
_ctx.config.showCloseButton ? (openBlock(), createBlock(_component_el_button, {
|
|
24306
|
-
key: 0,
|
|
24307
|
-
class: "absolute top-2 right-2",
|
|
24308
|
-
size: "small",
|
|
24309
|
-
text: "",
|
|
24310
|
-
circle: "",
|
|
24311
|
-
onClick: hide
|
|
24312
|
-
}, {
|
|
24313
|
-
icon: withCtx(() => [..._cache[0] || (_cache[0] = [
|
|
24314
|
-
createElementVNode("span", { class: "text-gray-400 hover:text-gray-600" }, "×", -1)
|
|
24315
|
-
])]),
|
|
24316
|
-
_: 1
|
|
24317
|
-
})) : createCommentVNode("", true),
|
|
24318
|
-
_ctx.$slots.default ? renderSlot(_ctx.$slots, "default", {
|
|
24319
|
-
key: 1,
|
|
24320
|
-
data: _ctx.tooltipData,
|
|
24321
|
-
formattedData: formattedData.value,
|
|
24322
|
-
coordinate: _ctx.coordinate,
|
|
24323
|
-
pixel: _ctx.pixel
|
|
24324
|
-
}) : (openBlock(), createElementBlock("div", _hoisted_1$o, [
|
|
24325
|
-
typeof _ctx.template === "string" ? (openBlock(), createElementBlock("div", {
|
|
24326
|
-
key: 0,
|
|
24327
|
-
innerHTML: renderedTemplate.value
|
|
24328
|
-
}, null, 8, _hoisted_2$m)) : typeof _ctx.template === "object" ? (openBlock(), createElementBlock("div", _hoisted_3$m, [
|
|
24329
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.tooltipData, (layerData, index2) => {
|
|
24330
|
-
return openBlock(), createElementBlock("div", {
|
|
24331
|
-
key: layerData.layerId,
|
|
24332
|
-
class: "layer-info"
|
|
24333
|
-
}, [
|
|
24334
|
-
createElementVNode("h4", _hoisted_4$l, toDisplayString(layerData.layerName), 1),
|
|
24335
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(layerData.features, (feature2, fIndex) => {
|
|
24336
|
-
return openBlock(), createElementBlock("div", {
|
|
24337
|
-
key: fIndex,
|
|
24338
|
-
class: "feature-info",
|
|
24339
|
-
onClick: ($event) => handleFeatureClick(feature2, layerData)
|
|
24340
|
-
}, [
|
|
24341
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(feature2.properties || feature2, (value, key) => {
|
|
24342
|
-
return openBlock(), createElementBlock("div", {
|
|
24343
|
-
key,
|
|
24344
|
-
class: "property-item"
|
|
24345
|
-
}, [
|
|
24346
|
-
createElementVNode("span", _hoisted_6$j, toDisplayString(key) + ":", 1),
|
|
24347
|
-
createElementVNode("span", _hoisted_7$e, toDisplayString(formatValue(value)), 1)
|
|
24348
|
-
]);
|
|
24349
|
-
}), 128))
|
|
24350
|
-
], 8, _hoisted_5$l);
|
|
24351
|
-
}), 128))
|
|
24352
|
-
]);
|
|
24353
|
-
}), 128))
|
|
24354
|
-
])) : typeof _ctx.template === "function" ? (openBlock(), createElementBlock("div", {
|
|
24355
|
-
key: 2,
|
|
24356
|
-
innerHTML: renderedTemplate.value
|
|
24357
|
-
}, null, 8, _hoisted_8$b)) : (openBlock(), createElementBlock("div", _hoisted_9$a, [
|
|
24358
|
-
createElementVNode("div", _hoisted_10$a, [
|
|
24359
|
-
_cache[1] || (_cache[1] = createElementVNode("strong", null, "坐标:", -1)),
|
|
24360
|
-
createTextVNode(" " + toDisplayString(_ctx.coordinate[0].toFixed(6)) + ", " + toDisplayString(_ctx.coordinate[1].toFixed(6)), 1)
|
|
24361
|
-
]),
|
|
24362
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.tooltipData, (layerData, index2) => {
|
|
24363
|
-
return openBlock(), createElementBlock("div", {
|
|
24364
|
-
key: layerData.layerId,
|
|
24365
|
-
class: "mb-4 last-mb-0"
|
|
24366
|
-
}, [
|
|
24367
|
-
createElementVNode("h4", _hoisted_11$9, toDisplayString(layerData.layerName), 1),
|
|
24368
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(layerData.features, (feature2, fIndex) => {
|
|
24369
|
-
return openBlock(), createElementBlock("div", {
|
|
24370
|
-
key: fIndex,
|
|
24371
|
-
class: "mb-3 p-2 bg-gray-50 rounded cursor-pointer transition-colors hover-bg-gray-100 last-mb-0",
|
|
24372
|
-
onClick: ($event) => handleFeatureClick(feature2, layerData)
|
|
24373
|
-
}, [
|
|
24374
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(feature2.properties || feature2, (value, key) => {
|
|
24375
|
-
return openBlock(), createElementBlock("div", {
|
|
24376
|
-
key,
|
|
24377
|
-
class: "flex mb-1 last-mb-0"
|
|
24378
|
-
}, [
|
|
24379
|
-
createElementVNode("span", _hoisted_13$9, toDisplayString(key) + ":", 1),
|
|
24380
|
-
createElementVNode("span", _hoisted_14$8, toDisplayString(formatValue(value)), 1)
|
|
24381
|
-
]);
|
|
24382
|
-
}), 128))
|
|
24383
|
-
], 8, _hoisted_12$9);
|
|
24384
|
-
}), 128))
|
|
24385
|
-
]);
|
|
24386
|
-
}), 128))
|
|
24387
|
-
]))
|
|
24388
|
-
]))
|
|
24389
|
-
], 6)) : createCommentVNode("", true);
|
|
24390
|
-
};
|
|
24391
|
-
}
|
|
24392
|
-
});
|
|
24393
24144
|
const Property$6 = {
|
|
24394
24145
|
ELEMENT: "element",
|
|
24395
24146
|
MAP: "map",
|
|
@@ -83372,8 +83123,7 @@ class ClusterLayerHandler extends BaseLayer$2 {
|
|
|
83372
83123
|
const clusterSource = new Cluster$1({
|
|
83373
83124
|
source: vectorSource,
|
|
83374
83125
|
distance: this.config.clusterDistance || 50,
|
|
83375
|
-
minDistance: this.config.minDistance || 0
|
|
83376
|
-
source: vectorSource
|
|
83126
|
+
minDistance: this.config.minDistance || 0
|
|
83377
83127
|
});
|
|
83378
83128
|
const vectorLayer = new VectorLayer$3({
|
|
83379
83129
|
source: clusterSource,
|
|
@@ -465125,104 +464875,34 @@ class MapManager {
|
|
|
465125
464875
|
this.map = null;
|
|
465126
464876
|
}
|
|
465127
464877
|
}
|
|
465128
|
-
const _hoisted_1$
|
|
465129
|
-
const _hoisted_2$
|
|
465130
|
-
const _hoisted_3$l = { class: "font-medium font-mono text-white" };
|
|
465131
|
-
const _hoisted_4$k = { class: "font-medium font-mono text-white" };
|
|
465132
|
-
const _hoisted_5$k = { class: "font-medium font-mono text-white" };
|
|
465133
|
-
const _hoisted_6$i = {
|
|
464878
|
+
const _hoisted_1$o = ["id"];
|
|
464879
|
+
const _hoisted_2$m = {
|
|
465134
464880
|
class: "absolute top-0 left-0 w-full h-full z-2000",
|
|
465135
464881
|
"element-loading-text": "地图加载中...",
|
|
465136
464882
|
"element-loading-background": "rgba(0, 0, 0, 0.3)"
|
|
465137
464883
|
};
|
|
465138
|
-
const _sfc_main$
|
|
464884
|
+
const _sfc_main$q = /* @__PURE__ */ defineComponent({
|
|
465139
464885
|
__name: "MapContainer",
|
|
465140
464886
|
props: {
|
|
465141
464887
|
config: {},
|
|
465142
464888
|
width: { default: "100%" },
|
|
465143
464889
|
height: { default: "100%" },
|
|
465144
|
-
showToolbar: { type: Boolean, default: void 0 },
|
|
465145
|
-
showMapInfo: { type: Boolean, default: void 0 },
|
|
465146
464890
|
loading: { type: Boolean, default: false },
|
|
465147
|
-
userMarkers: {}
|
|
465148
|
-
tooltipTemplate: {}
|
|
464891
|
+
userMarkers: {}
|
|
465149
464892
|
},
|
|
465150
|
-
emits: ["map-ready", "map-click", "map-dblclick", "map-contextmenu", "map-move", "zoom-change"
|
|
464893
|
+
emits: ["map-ready", "map-click", "map-dblclick", "map-contextmenu", "map-move", "zoom-change"],
|
|
465151
464894
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
465152
464895
|
const props = __props;
|
|
465153
464896
|
const emit = __emit;
|
|
465154
464897
|
const eventBus = inject("eventBus");
|
|
465155
464898
|
const storage2 = inject("storage");
|
|
465156
464899
|
const mapContainerRef = ref();
|
|
465157
|
-
const contextMenuRef = ref();
|
|
465158
464900
|
const map2 = ref();
|
|
465159
464901
|
const mapId = ref(`map-${Date.now()}`);
|
|
465160
|
-
const measurementType = ref(null);
|
|
465161
|
-
ref(false);
|
|
465162
|
-
const currentCoordinate = ref("0, 0");
|
|
465163
|
-
const currentZoom = ref(0);
|
|
465164
|
-
const currentScale = ref("");
|
|
465165
|
-
const contextMenuCoordinate = ref([0, 0]);
|
|
465166
|
-
ref();
|
|
465167
464902
|
const isCoordinatePicking = ref(false);
|
|
465168
464903
|
const coordinatePickCallback = ref(null);
|
|
465169
|
-
const startCoordinatePick = (callback) => {
|
|
465170
|
-
if (!mapManager.value)
|
|
465171
|
-
return;
|
|
465172
|
-
isCoordinatePicking.value = true;
|
|
465173
|
-
coordinatePickCallback.value = callback;
|
|
465174
|
-
mapManager.value.startCoordinatePick();
|
|
465175
|
-
};
|
|
465176
|
-
const stopCoordinatePick = () => {
|
|
465177
|
-
if (!mapManager.value)
|
|
465178
|
-
return;
|
|
465179
|
-
isCoordinatePicking.value = false;
|
|
465180
|
-
coordinatePickCallback.value = null;
|
|
465181
|
-
mapManager.value.stopCoordinatePick();
|
|
465182
|
-
};
|
|
465183
|
-
const tooltipVisible = ref(false);
|
|
465184
|
-
const tooltipData = ref(null);
|
|
465185
|
-
const tooltipCoordinate = ref([0, 0]);
|
|
465186
|
-
const tooltipPixel = ref([0, 0]);
|
|
465187
464904
|
const mapManager = ref(null);
|
|
465188
464905
|
provide("map", map2);
|
|
465189
|
-
computed(() => ({
|
|
465190
|
-
width: typeof props.width === "number" ? `${props.width}px` : props.width,
|
|
465191
|
-
height: typeof props.height === "number" ? `${props.height}px` : props.height
|
|
465192
|
-
}));
|
|
465193
|
-
computed(() => {
|
|
465194
|
-
var _a3;
|
|
465195
|
-
return props.showToolbar !== void 0 ? props.showToolbar : ((_a3 = props.config.ui) == null ? void 0 : _a3.showToolbar) ?? true;
|
|
465196
|
-
});
|
|
465197
|
-
const finalShowMapInfo = computed(() => {
|
|
465198
|
-
var _a3;
|
|
465199
|
-
return props.showMapInfo !== void 0 ? props.showMapInfo : ((_a3 = props.config.ui) == null ? void 0 : _a3.showMapInfo) ?? true;
|
|
465200
|
-
});
|
|
465201
|
-
const tooltipConfig = computed(() => ({
|
|
465202
|
-
enabled: true,
|
|
465203
|
-
showCloseButton: true,
|
|
465204
|
-
offset: [10, 10],
|
|
465205
|
-
maxWidth: 400,
|
|
465206
|
-
maxHeight: 300,
|
|
465207
|
-
className: "custom-map-tooltip",
|
|
465208
|
-
...props.config.tooltip
|
|
465209
|
-
}));
|
|
465210
|
-
computed(() => ({
|
|
465211
|
-
enabled: true,
|
|
465212
|
-
useMitt: true,
|
|
465213
|
-
enabledEvents: [
|
|
465214
|
-
"map:click",
|
|
465215
|
-
"map:dblclick",
|
|
465216
|
-
"map:contextmenu",
|
|
465217
|
-
"map:pointermove",
|
|
465218
|
-
"map:moveend",
|
|
465219
|
-
"map:zoomchange",
|
|
465220
|
-
"map:featureinfo"
|
|
465221
|
-
],
|
|
465222
|
-
debounceDelay: 100,
|
|
465223
|
-
enableFeatureInfo: tooltipConfig.value.enabled,
|
|
465224
|
-
...props.config.eventManager
|
|
465225
|
-
}));
|
|
465226
464906
|
watch(
|
|
465227
464907
|
() => props.config,
|
|
465228
464908
|
(newConfig) => {
|
|
@@ -465235,63 +464915,12 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465235
464915
|
watch(
|
|
465236
464916
|
() => props.userMarkers,
|
|
465237
464917
|
(newMarkers) => {
|
|
465238
|
-
if (mapManager && newMarkers) {
|
|
465239
|
-
mapManager.setUserMarkers(newMarkers);
|
|
464918
|
+
if (mapManager.value && newMarkers) {
|
|
464919
|
+
mapManager.value.setUserMarkers(newMarkers);
|
|
465240
464920
|
}
|
|
465241
464921
|
},
|
|
465242
464922
|
{ deep: true }
|
|
465243
464923
|
);
|
|
465244
|
-
watch(
|
|
465245
|
-
() => props.config.layers,
|
|
465246
|
-
(newLayers, oldLayers) => {
|
|
465247
|
-
var _a3, _b3;
|
|
465248
|
-
if (!mapManager || !newLayers)
|
|
465249
|
-
return;
|
|
465250
|
-
const layerManager = mapManager.getLayerManager();
|
|
465251
|
-
if (!layerManager)
|
|
465252
|
-
return;
|
|
465253
|
-
if (!oldLayers || newLayers.length !== oldLayers.length) {
|
|
465254
|
-
(_a3 = mapManager.value) == null ? void 0 : _a3.clearLayers();
|
|
465255
|
-
(_b3 = mapManager.value) == null ? void 0 : _b3.addLayers(newLayers);
|
|
465256
|
-
return;
|
|
465257
|
-
}
|
|
465258
|
-
newLayers.forEach((newLayer, index2) => {
|
|
465259
|
-
var _a4, _b4;
|
|
465260
|
-
const oldLayer = oldLayers[index2];
|
|
465261
|
-
if (oldLayer && newLayer.id === oldLayer.id) {
|
|
465262
|
-
const hasChanges = JSON.stringify(newLayer) !== JSON.stringify(oldLayer);
|
|
465263
|
-
if (hasChanges) {
|
|
465264
|
-
console.log(`更新图层 ${newLayer.id} 的配置:`, newLayer);
|
|
465265
|
-
const changedConfig = {};
|
|
465266
|
-
if (JSON.stringify(newLayer.style) !== JSON.stringify(oldLayer.style)) {
|
|
465267
|
-
changedConfig.style = newLayer.style;
|
|
465268
|
-
}
|
|
465269
|
-
if (JSON.stringify(newLayer.filter) !== JSON.stringify(oldLayer.filter)) {
|
|
465270
|
-
changedConfig.filter = newLayer.filter;
|
|
465271
|
-
}
|
|
465272
|
-
if (newLayer.visible !== oldLayer.visible) {
|
|
465273
|
-
changedConfig.visible = newLayer.visible;
|
|
465274
|
-
}
|
|
465275
|
-
if (newLayer.opacity !== oldLayer.opacity) {
|
|
465276
|
-
changedConfig.opacity = newLayer.opacity;
|
|
465277
|
-
}
|
|
465278
|
-
if (newLayer.cssClass !== oldLayer.cssClass) {
|
|
465279
|
-
changedConfig.cssClass = newLayer.cssClass;
|
|
465280
|
-
}
|
|
465281
|
-
if (Object.keys(changedConfig).length > 0) {
|
|
465282
|
-
console.log(`图层 ${newLayer.id} 发生变化的配置:`, changedConfig);
|
|
465283
|
-
layerManager.updateLayerConfig(newLayer.id, changedConfig);
|
|
465284
|
-
}
|
|
465285
|
-
}
|
|
465286
|
-
} else {
|
|
465287
|
-
(_a4 = mapManager.value) == null ? void 0 : _a4.clearLayers();
|
|
465288
|
-
(_b4 = mapManager.value) == null ? void 0 : _b4.addLayers(newLayers);
|
|
465289
|
-
return;
|
|
465290
|
-
}
|
|
465291
|
-
});
|
|
465292
|
-
},
|
|
465293
|
-
{ deep: true }
|
|
465294
|
-
);
|
|
465295
464924
|
onMounted(async () => {
|
|
465296
464925
|
await nextTick();
|
|
465297
464926
|
initMap2();
|
|
@@ -465307,7 +464936,6 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465307
464936
|
}
|
|
465308
464937
|
});
|
|
465309
464938
|
const initMap2 = () => {
|
|
465310
|
-
var _a3;
|
|
465311
464939
|
if (!mapContainerRef.value)
|
|
465312
464940
|
return;
|
|
465313
464941
|
if (!eventBus || !storage2) {
|
|
@@ -465318,12 +464946,6 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465318
464946
|
mapManager.value = new MapManager(props.config, eventBus, storageInstance);
|
|
465319
464947
|
map2.value = mapManager.value.initMap(mapId.value);
|
|
465320
464948
|
bindMapEvents();
|
|
465321
|
-
if (props.config.layers && props.config.layers.length > 0) {
|
|
465322
|
-
(_a3 = mapManager.value.getLayerManager()) == null ? void 0 : _a3.addLayers(props.config.layers);
|
|
465323
|
-
}
|
|
465324
|
-
if (props.userMarkers && props.userMarkers.length > 0) {
|
|
465325
|
-
mapManager.value.setUserMarkers(props.userMarkers);
|
|
465326
|
-
}
|
|
465327
464949
|
emit("map-ready", map2.value);
|
|
465328
464950
|
};
|
|
465329
464951
|
const bindMapEvents = () => {
|
|
@@ -465348,24 +464970,11 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465348
464970
|
onMapMove: (center2, zoom) => {
|
|
465349
464971
|
emit("map-move", center2, zoom);
|
|
465350
464972
|
},
|
|
465351
|
-
onPointerMove: (coordinate) => {
|
|
465352
|
-
currentCoordinate.value = `经度: ${coordinate[0].toFixed(6)}, 纬度: ${coordinate[1].toFixed(6)}`;
|
|
465353
|
-
},
|
|
465354
464973
|
onZoomChange: (zoom, resolution) => {
|
|
465355
|
-
|
|
465356
|
-
currentZoom.value = Math.round(zoom * 100) / 100;
|
|
465357
|
-
const view = (_a3 = map2.value) == null ? void 0 : _a3.getView();
|
|
465358
|
-
if (view) {
|
|
465359
|
-
const units2 = view.getProjection().getUnits();
|
|
465360
|
-
const dpi = 25.4 / 0.28;
|
|
465361
|
-
const mpu = METERS_PER_UNIT$3[units2] || 1;
|
|
465362
|
-
const scale3 = resolution * mpu * 39.37 * dpi;
|
|
465363
|
-
currentScale.value = `1:${Math.round(scale3).toLocaleString()}`;
|
|
465364
|
-
}
|
|
464974
|
+
emit("zoom-change", zoom, resolution);
|
|
465365
464975
|
},
|
|
465366
464976
|
onContextMenu: (coordinate, pixel) => {
|
|
465367
|
-
|
|
465368
|
-
emit("context-menu", coordinate, pixel);
|
|
464977
|
+
emit("map-contextmenu", { coordinate, pixel });
|
|
465369
464978
|
}
|
|
465370
464979
|
});
|
|
465371
464980
|
};
|
|
@@ -465388,157 +464997,17 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465388
464997
|
view.setMaxZoom(config.maxZoom);
|
|
465389
464998
|
}
|
|
465390
464999
|
};
|
|
465391
|
-
|
|
465392
|
-
|
|
465393
|
-
|
|
465394
|
-
|
|
465395
|
-
mapOperationTool.zoomIn();
|
|
465396
|
-
}
|
|
465397
|
-
};
|
|
465398
|
-
const zoomOut = () => {
|
|
465399
|
-
var _a3;
|
|
465400
|
-
const mapOperationTool = (_a3 = mapManager.value) == null ? void 0 : _a3.getMapOperationTool();
|
|
465401
|
-
if (mapOperationTool) {
|
|
465402
|
-
mapOperationTool.zoomOut();
|
|
465403
|
-
}
|
|
465404
|
-
};
|
|
465405
|
-
const fitToExtent = () => {
|
|
465406
|
-
var _a3;
|
|
465407
|
-
const mapOperationTool = (_a3 = mapManager.value) == null ? void 0 : _a3.getMapOperationTool();
|
|
465408
|
-
if (mapOperationTool) {
|
|
465409
|
-
mapOperationTool.fitToInitialExtent();
|
|
465410
|
-
}
|
|
465411
|
-
};
|
|
465412
|
-
const toggleMeasurement = (type) => {
|
|
465413
|
-
var _a3;
|
|
465414
|
-
const measurementTool = (_a3 = mapManager.value) == null ? void 0 : _a3.getMeasurementTool();
|
|
465415
|
-
if (!measurementTool)
|
|
465416
|
-
return;
|
|
465417
|
-
if (measurementType.value === type) {
|
|
465418
|
-
measurementType.value = null;
|
|
465419
|
-
measurementTool.stopMeasurement();
|
|
465420
|
-
} else {
|
|
465421
|
-
measurementType.value = type;
|
|
465422
|
-
emit("measurement-start", type);
|
|
465423
|
-
const onResult = (result) => {
|
|
465424
|
-
emit("measurement-result", result);
|
|
465425
|
-
emit("measurement-end", result);
|
|
465426
|
-
};
|
|
465427
|
-
if (type === "length") {
|
|
465428
|
-
measurementTool.startDistanceMeasurement(onResult);
|
|
465429
|
-
} else if (type === "area") {
|
|
465430
|
-
measurementTool.startAreaMeasurement(onResult);
|
|
465431
|
-
} else if (type === "angle") {
|
|
465432
|
-
measurementTool.startAngleMeasurement(onResult);
|
|
465433
|
-
}
|
|
465434
|
-
}
|
|
465435
|
-
};
|
|
465436
|
-
const clearMeasurements = () => {
|
|
465437
|
-
var _a3;
|
|
465438
|
-
const measurementTool = (_a3 = mapManager.value) == null ? void 0 : _a3.getMeasurementTool();
|
|
465439
|
-
if (measurementTool) {
|
|
465440
|
-
measurementTool.clearMeasurements();
|
|
465441
|
-
}
|
|
465442
|
-
measurementType.value = null;
|
|
465443
|
-
ElMessage.success("测量结果已清除");
|
|
465444
|
-
};
|
|
465445
|
-
const getCoordinateInfo = (coordinate) => {
|
|
465446
|
-
var _a3;
|
|
465447
|
-
const measurementTool = (_a3 = mapManager.value) == null ? void 0 : _a3.getMeasurementTool();
|
|
465448
|
-
if (!measurementTool)
|
|
465449
|
-
return;
|
|
465450
|
-
const onResult = (result) => {
|
|
465451
|
-
emit("measurement-result", result);
|
|
465452
|
-
};
|
|
465453
|
-
measurementTool.startCoordinateMeasurement(onResult);
|
|
465454
|
-
};
|
|
465455
|
-
const onContextMenuVisibleChange = (visible) => {
|
|
465456
|
-
};
|
|
465457
|
-
const copyCoordinate = () => {
|
|
465458
|
-
const coord = contextMenuCoordinate.value;
|
|
465459
|
-
const text2 = `${coord[0].toFixed(6)}, ${coord[1].toFixed(6)}`;
|
|
465460
|
-
navigator.clipboard.writeText(text2).then(() => {
|
|
465461
|
-
ElMessage.success("坐标已复制到剪贴板");
|
|
465462
|
-
}).catch(() => {
|
|
465463
|
-
ElMessage.error("复制失败");
|
|
465464
|
-
});
|
|
465465
|
-
};
|
|
465466
|
-
const addMarker = () => {
|
|
465467
|
-
ElMessage.info("添加标记功能待实现");
|
|
465468
|
-
};
|
|
465469
|
-
const measureFromHere = () => {
|
|
465470
|
-
ElMessage.info("测量功能待实现");
|
|
465471
|
-
};
|
|
465472
|
-
const clearAll = () => {
|
|
465473
|
-
var _a3, _b3, _c2, _d;
|
|
465474
|
-
const measurementTool = (_a3 = mapManager.value) == null ? void 0 : _a3.getMeasurementTool();
|
|
465475
|
-
if (measurementTool) {
|
|
465476
|
-
measurementTool.clearMeasurements();
|
|
465477
|
-
}
|
|
465478
|
-
const mapOperationTool = (_b3 = mapManager.value) == null ? void 0 : _b3.getMapOperationTool();
|
|
465479
|
-
if (mapOperationTool) {
|
|
465480
|
-
mapOperationTool.clearAllGraphics();
|
|
465481
|
-
}
|
|
465482
|
-
const drawingManager = (_c2 = mapManager.value) == null ? void 0 : _c2.getDrawingManager();
|
|
465483
|
-
if (drawingManager) {
|
|
465484
|
-
drawingManager.clearAll();
|
|
465485
|
-
}
|
|
465486
|
-
const markerAdapter = (_d = mapManager.value) == null ? void 0 : _d.getMarkerAdapter();
|
|
465487
|
-
if (markerAdapter) {
|
|
465488
|
-
markerAdapter.clearAllMarkers();
|
|
465489
|
-
}
|
|
465490
|
-
ElMessage.success("已清除所有内容");
|
|
465491
|
-
};
|
|
465492
|
-
const onTooltipShow = (data) => {
|
|
465493
|
-
emit("tooltip-show", data);
|
|
465494
|
-
};
|
|
465495
|
-
const onTooltipHide = () => {
|
|
465496
|
-
tooltipVisible.value = false;
|
|
465497
|
-
tooltipData.value = null;
|
|
465498
|
-
emit("tooltip-hide");
|
|
465499
|
-
};
|
|
465500
|
-
const onFeatureClick = (feature2, layerInfo, coordinate, mapCoordinate) => {
|
|
465501
|
-
emit("feature-click", feature2, layerInfo, coordinate, mapCoordinate);
|
|
465502
|
-
};
|
|
465503
|
-
const onTooltipDataLoaded = (data) => {
|
|
465504
|
-
};
|
|
465505
|
-
const searchLocation = async (query) => {
|
|
465506
|
-
if (!mapManager.value)
|
|
465507
|
-
return [];
|
|
465508
|
-
try {
|
|
465509
|
-
const results = await mapManager.value.searchLocation(query);
|
|
465510
|
-
return results;
|
|
465511
|
-
} catch (error2) {
|
|
465512
|
-
console.error("搜索失败:", error2);
|
|
465513
|
-
ElMessage.error("搜索失败,请重试");
|
|
465514
|
-
return [];
|
|
465515
|
-
}
|
|
465516
|
-
};
|
|
465517
|
-
const clearSearchMarkers = () => {
|
|
465518
|
-
if (mapManager.value) {
|
|
465519
|
-
mapManager.value.clearSearchMarkers();
|
|
465520
|
-
}
|
|
465521
|
-
};
|
|
465000
|
+
computed(() => ({
|
|
465001
|
+
width: typeof props.width === "number" ? `${props.width}px` : props.width,
|
|
465002
|
+
height: typeof props.height === "number" ? `${props.height}px` : props.height
|
|
465003
|
+
}));
|
|
465522
465004
|
__expose({
|
|
465523
465005
|
getMap: () => map2.value,
|
|
465524
465006
|
getMapManager: () => mapManager.value,
|
|
465525
|
-
getPluginManager: () => pluginManager,
|
|
465526
|
-
getEventManager: () => {
|
|
465527
|
-
var _a3;
|
|
465528
|
-
return (_a3 = mapManager.value) == null ? void 0 : _a3.getEventManager();
|
|
465529
|
-
},
|
|
465530
|
-
getSearchMarkerManager: () => {
|
|
465531
|
-
var _a3;
|
|
465532
|
-
return (_a3 = mapManager.value) == null ? void 0 : _a3.getSearchMarkerManager();
|
|
465533
|
-
},
|
|
465534
465007
|
getMeasurementTool: () => {
|
|
465535
465008
|
var _a3;
|
|
465536
465009
|
return (_a3 = mapManager.value) == null ? void 0 : _a3.getMeasurementTool();
|
|
465537
465010
|
},
|
|
465538
|
-
getMapOperationTool: () => {
|
|
465539
|
-
var _a3;
|
|
465540
|
-
return (_a3 = mapManager.value) == null ? void 0 : _a3.getMapOperationTool();
|
|
465541
|
-
},
|
|
465542
465011
|
getDrawingManager: () => {
|
|
465543
465012
|
var _a3;
|
|
465544
465013
|
return (_a3 = mapManager.value) == null ? void 0 : _a3.getDrawingManager();
|
|
@@ -465547,33 +465016,13 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465547
465016
|
var _a3;
|
|
465548
465017
|
return (_a3 = mapManager.value) == null ? void 0 : _a3.getLayerManager();
|
|
465549
465018
|
},
|
|
465550
|
-
|
|
465551
|
-
|
|
465552
|
-
|
|
465553
|
-
toggleMeasurement,
|
|
465554
|
-
clearMeasurements,
|
|
465555
|
-
clearAll,
|
|
465556
|
-
getCoordinateInfo,
|
|
465557
|
-
searchLocation,
|
|
465558
|
-
clearSearchMarkers,
|
|
465559
|
-
startCoordinatePick,
|
|
465560
|
-
stopCoordinatePick,
|
|
465561
|
-
updateMapConfig,
|
|
465562
|
-
showTooltip: (coordinate, pixel, data) => {
|
|
465563
|
-
tooltipCoordinate.value = coordinate;
|
|
465564
|
-
tooltipPixel.value = pixel;
|
|
465565
|
-
tooltipData.value = data;
|
|
465566
|
-
tooltipVisible.value = true;
|
|
465019
|
+
getEventManager: () => {
|
|
465020
|
+
var _a3;
|
|
465021
|
+
return (_a3 = mapManager.value) == null ? void 0 : _a3.getEventManager();
|
|
465567
465022
|
},
|
|
465568
|
-
|
|
465569
|
-
tooltipVisible.value = false;
|
|
465570
|
-
tooltipData.value = null;
|
|
465571
|
-
}
|
|
465023
|
+
updateMapConfig
|
|
465572
465024
|
});
|
|
465573
465025
|
return (_ctx, _cache) => {
|
|
465574
|
-
const _component_el_dropdown_item = resolveComponent("el-dropdown-item");
|
|
465575
|
-
const _component_el_dropdown_menu = resolveComponent("el-dropdown-menu");
|
|
465576
|
-
const _component_el_dropdown = resolveComponent("el-dropdown");
|
|
465577
465026
|
const _directive_loading = resolveDirective("loading");
|
|
465578
465027
|
return openBlock(), createElementBlock("div", {
|
|
465579
465028
|
class: "relative w-full h-full overflow-hidden bg-gray-100",
|
|
@@ -465583,101 +465032,11 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465583
465032
|
createElementVNode("div", {
|
|
465584
465033
|
id: mapId.value,
|
|
465585
465034
|
class: "w-full h-full bg-gray-100"
|
|
465586
|
-
}, null, 8, _hoisted_1$
|
|
465587
|
-
withDirectives(createElementVNode("div", _hoisted_2$
|
|
465588
|
-
_cache[0] || (_cache[0] = createElementVNode("div", { class: "font-semibold text-white" }, "坐标:", -1)),
|
|
465589
|
-
createElementVNode("div", _hoisted_3$l, toDisplayString(currentCoordinate.value), 1),
|
|
465590
|
-
_cache[1] || (_cache[1] = createElementVNode("div", { class: "font-semibold text-white" }, "缩放:", -1)),
|
|
465591
|
-
createElementVNode("div", _hoisted_4$k, toDisplayString(currentZoom.value), 1),
|
|
465592
|
-
_cache[2] || (_cache[2] = createElementVNode("div", { class: "font-semibold text-white" }, "比例尺:", -1)),
|
|
465593
|
-
createElementVNode("div", _hoisted_5$k, toDisplayString(currentScale.value), 1)
|
|
465594
|
-
], 512), [
|
|
465595
|
-
[vShow, finalShowMapInfo.value]
|
|
465596
|
-
]),
|
|
465597
|
-
withDirectives(createVNode$1(_sfc_main$q, {
|
|
465598
|
-
config: tooltipConfig.value,
|
|
465599
|
-
template: _ctx.tooltipTemplate,
|
|
465600
|
-
visible: tooltipVisible.value,
|
|
465601
|
-
"tooltip-data": tooltipData.value,
|
|
465602
|
-
coordinate: tooltipCoordinate.value,
|
|
465603
|
-
pixel: tooltipPixel.value,
|
|
465604
|
-
onShow: onTooltipShow,
|
|
465605
|
-
onHide: onTooltipHide,
|
|
465606
|
-
onFeatureClick,
|
|
465607
|
-
onDataLoaded: onTooltipDataLoaded
|
|
465608
|
-
}, {
|
|
465609
|
-
default: withCtx(({ data = [], formattedData = [], coordinate = [0, 0], pixel = [0, 0] }) => [
|
|
465610
|
-
renderSlot(_ctx.$slots, "tooltip", {
|
|
465611
|
-
data,
|
|
465612
|
-
formattedData,
|
|
465613
|
-
coordinate,
|
|
465614
|
-
pixel
|
|
465615
|
-
}, void 0, true)
|
|
465616
|
-
]),
|
|
465617
|
-
_: 3
|
|
465618
|
-
}, 8, ["config", "template", "visible", "tooltip-data", "coordinate", "pixel"]), [
|
|
465619
|
-
[vShow, tooltipConfig.value.enabled]
|
|
465620
|
-
]),
|
|
465621
|
-
withDirectives(createElementVNode("div", _hoisted_6$i, null, 512), [
|
|
465035
|
+
}, null, 8, _hoisted_1$o),
|
|
465036
|
+
withDirectives(createElementVNode("div", _hoisted_2$m, null, 512), [
|
|
465622
465037
|
[vShow, _ctx.loading],
|
|
465623
465038
|
[_directive_loading, _ctx.loading]
|
|
465624
|
-
])
|
|
465625
|
-
createVNode$1(_component_el_dropdown, {
|
|
465626
|
-
ref_key: "contextMenuRef",
|
|
465627
|
-
ref: contextMenuRef,
|
|
465628
|
-
teleported: false,
|
|
465629
|
-
trigger: "contextmenu",
|
|
465630
|
-
onVisibleChange: onContextMenuVisibleChange
|
|
465631
|
-
}, {
|
|
465632
|
-
dropdown: withCtx(() => [
|
|
465633
|
-
createVNode$1(_component_el_dropdown_menu, null, {
|
|
465634
|
-
default: withCtx(() => [
|
|
465635
|
-
createVNode$1(_component_el_dropdown_item, {
|
|
465636
|
-
onClick: copyCoordinate,
|
|
465637
|
-
icon: unref(document_copy_default)
|
|
465638
|
-
}, {
|
|
465639
|
-
default: withCtx(() => [..._cache[3] || (_cache[3] = [
|
|
465640
|
-
createTextVNode(" 复制坐标 ", -1)
|
|
465641
|
-
])]),
|
|
465642
|
-
_: 1
|
|
465643
|
-
}, 8, ["icon"]),
|
|
465644
|
-
createVNode$1(_component_el_dropdown_item, {
|
|
465645
|
-
onClick: addMarker,
|
|
465646
|
-
icon: unref(location_default)
|
|
465647
|
-
}, {
|
|
465648
|
-
default: withCtx(() => [..._cache[4] || (_cache[4] = [
|
|
465649
|
-
createTextVNode(" 添加标记 ", -1)
|
|
465650
|
-
])]),
|
|
465651
|
-
_: 1
|
|
465652
|
-
}, 8, ["icon"]),
|
|
465653
|
-
createVNode$1(_component_el_dropdown_item, {
|
|
465654
|
-
onClick: measureFromHere,
|
|
465655
|
-
icon: unref(tools_default)
|
|
465656
|
-
}, {
|
|
465657
|
-
default: withCtx(() => [..._cache[5] || (_cache[5] = [
|
|
465658
|
-
createTextVNode(" 从此处测量 ", -1)
|
|
465659
|
-
])]),
|
|
465660
|
-
_: 1
|
|
465661
|
-
}, 8, ["icon"]),
|
|
465662
|
-
createVNode$1(_component_el_dropdown_item, {
|
|
465663
|
-
divided: "",
|
|
465664
|
-
onClick: clearAll,
|
|
465665
|
-
icon: unref(delete_default)
|
|
465666
|
-
}, {
|
|
465667
|
-
default: withCtx(() => [..._cache[6] || (_cache[6] = [
|
|
465668
|
-
createTextVNode(" 清除所有 ", -1)
|
|
465669
|
-
])]),
|
|
465670
|
-
_: 1
|
|
465671
|
-
}, 8, ["icon"])
|
|
465672
|
-
]),
|
|
465673
|
-
_: 1
|
|
465674
|
-
})
|
|
465675
|
-
]),
|
|
465676
|
-
default: withCtx(() => [
|
|
465677
|
-
_cache[7] || (_cache[7] = createElementVNode("div", null, null, -1))
|
|
465678
|
-
]),
|
|
465679
|
-
_: 1
|
|
465680
|
-
}, 512)
|
|
465039
|
+
])
|
|
465681
465040
|
], 512);
|
|
465682
465041
|
};
|
|
465683
465042
|
}
|
|
@@ -465689,9 +465048,9 @@ const _export_sfc = (sfc, props) => {
|
|
|
465689
465048
|
}
|
|
465690
465049
|
return target;
|
|
465691
465050
|
};
|
|
465692
|
-
const MapContainer = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
465693
|
-
const _hoisted_1$
|
|
465694
|
-
const _sfc_main$
|
|
465051
|
+
const MapContainer = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["__scopeId", "data-v-53c8deda"]]);
|
|
465052
|
+
const _hoisted_1$n = ["href"];
|
|
465053
|
+
const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
465695
465054
|
__name: "index",
|
|
465696
465055
|
props: {
|
|
465697
465056
|
prefix: { default: "icon" },
|
|
@@ -465709,7 +465068,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
465709
465068
|
class: computedClass.value,
|
|
465710
465069
|
"aria-hidden": "true"
|
|
465711
465070
|
}, _ctx.$attrs), [
|
|
465712
|
-
createElementVNode("use", { href: symbolId.value }, null, 8, _hoisted_1$
|
|
465071
|
+
createElementVNode("use", { href: symbolId.value }, null, 8, _hoisted_1$n)
|
|
465713
465072
|
], 16);
|
|
465714
465073
|
};
|
|
465715
465074
|
}
|
|
@@ -465910,26 +465269,26 @@ class DialogCacheManager {
|
|
|
465910
465269
|
}
|
|
465911
465270
|
const dialogCacheManager = new DialogCacheManager();
|
|
465912
465271
|
const dialogCacheManager$1 = dialogCacheManager;
|
|
465913
|
-
const _hoisted_1$
|
|
465914
|
-
const _hoisted_2$
|
|
465915
|
-
const _hoisted_3$
|
|
465916
|
-
const _hoisted_4$
|
|
465272
|
+
const _hoisted_1$m = { class: "text-base font-semibold text-gray-800 flex-1 overflow-hidden text-ellipsis whitespace-nowrap" };
|
|
465273
|
+
const _hoisted_2$l = { class: "flex items-center gap-2" };
|
|
465274
|
+
const _hoisted_3$l = { class: "flex-1 overflow-auto min-h-0 h-0" };
|
|
465275
|
+
const _hoisted_4$k = {
|
|
465917
465276
|
key: 0,
|
|
465918
465277
|
class: "px-5 py-4 border-t border-gray-200 bg-gray-50 flex justify-end gap-3"
|
|
465919
465278
|
};
|
|
465920
|
-
const _hoisted_5$
|
|
465921
|
-
const _hoisted_6$
|
|
465922
|
-
const _hoisted_7$
|
|
465923
|
-
const _hoisted_8$
|
|
465924
|
-
const _hoisted_9$
|
|
465279
|
+
const _hoisted_5$k = ["onMousedown"];
|
|
465280
|
+
const _hoisted_6$i = { class: "text-base font-semibold text-gray-800 flex-1 overflow-hidden text-ellipsis whitespace-nowrap" };
|
|
465281
|
+
const _hoisted_7$e = { class: "flex items-center gap-2" };
|
|
465282
|
+
const _hoisted_8$b = { class: "flex-1 overflow-auto min-h-0 h-0" };
|
|
465283
|
+
const _hoisted_9$a = {
|
|
465925
465284
|
key: 0,
|
|
465926
465285
|
class: "px-5 py-4 border-t border-gray-200 bg-gray-50 flex justify-end gap-3"
|
|
465927
465286
|
};
|
|
465928
|
-
const _hoisted_10$
|
|
465287
|
+
const _hoisted_10$a = {
|
|
465929
465288
|
key: 1,
|
|
465930
465289
|
class: "absolute top-0 left-0 w-full h-full pointer-events-none"
|
|
465931
465290
|
};
|
|
465932
|
-
const _sfc_main$
|
|
465291
|
+
const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
465933
465292
|
...{
|
|
465934
465293
|
inheritAttrs: false
|
|
465935
465294
|
},
|
|
@@ -466351,12 +465710,12 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466351
465710
|
class: normalizeClass(["flex items-center justify-between px-5 py-4 border-b border-gray-200 bg-gray-50", { "cursor-move": _ctx.draggable && !isFullscreen.value }]),
|
|
466352
465711
|
onMousedown: startDrag
|
|
466353
465712
|
}, [
|
|
466354
|
-
createElementVNode("div", _hoisted_1$
|
|
465713
|
+
createElementVNode("div", _hoisted_1$m, [
|
|
466355
465714
|
renderSlot(_ctx.$slots, "title", {}, () => [
|
|
466356
465715
|
createTextVNode(toDisplayString(_ctx.title), 1)
|
|
466357
465716
|
], true)
|
|
466358
465717
|
]),
|
|
466359
|
-
createElementVNode("div", _hoisted_2$
|
|
465718
|
+
createElementVNode("div", _hoisted_2$l, [
|
|
466360
465719
|
_ctx.showFullscreen ? (openBlock(), createBlock(unref(ElButton), {
|
|
466361
465720
|
key: 0,
|
|
466362
465721
|
class: "w-6 h-6 border-none bg-transparent cursor-pointer flex items-center justify-center rounded text-gray-500 transition-all duration-200 hover:bg-gray-200 hover:text-gray-600",
|
|
@@ -466364,7 +465723,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466364
465723
|
title: isFullscreen.value ? "退出全屏" : "全屏"
|
|
466365
465724
|
}, {
|
|
466366
465725
|
default: withCtx(() => [
|
|
466367
|
-
createVNode$1(_sfc_main$
|
|
465726
|
+
createVNode$1(_sfc_main$p, {
|
|
466368
465727
|
name: isFullscreen.value ? "exit-fullscreen" : "fullscreen"
|
|
466369
465728
|
}, null, 8, ["name"])
|
|
466370
465729
|
]),
|
|
@@ -466377,16 +465736,16 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466377
465736
|
title: "关闭"
|
|
466378
465737
|
}, {
|
|
466379
465738
|
default: withCtx(() => [
|
|
466380
|
-
createVNode$1(_sfc_main$
|
|
465739
|
+
createVNode$1(_sfc_main$p, { name: "close" })
|
|
466381
465740
|
]),
|
|
466382
465741
|
_: 1
|
|
466383
465742
|
})) : createCommentVNode("", true)
|
|
466384
465743
|
])
|
|
466385
465744
|
], 34),
|
|
466386
|
-
createElementVNode("div", _hoisted_3$
|
|
465745
|
+
createElementVNode("div", _hoisted_3$l, [
|
|
466387
465746
|
renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
466388
465747
|
]),
|
|
466389
|
-
_ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_4$
|
|
465748
|
+
_ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_4$k, [
|
|
466390
465749
|
renderSlot(_ctx.$slots, "footer", {}, void 0, true)
|
|
466391
465750
|
])) : createCommentVNode("", true),
|
|
466392
465751
|
_ctx.resizable && !isFullscreen.value ? (openBlock(), createElementBlock(Fragment, { key: 1 }, renderList(resizeDirections, (direction2) => {
|
|
@@ -466394,7 +465753,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466394
465753
|
key: direction2,
|
|
466395
465754
|
class: normalizeClass(`absolute bg-transparent z-10 pointer-events-auto resize-${direction2}`),
|
|
466396
465755
|
onMousedown: ($event) => startResize($event, direction2)
|
|
466397
|
-
}, null, 42, _hoisted_5$
|
|
465756
|
+
}, null, 42, _hoisted_5$k);
|
|
466398
465757
|
}), 64)) : createCommentVNode("", true)
|
|
466399
465758
|
], 16)
|
|
466400
465759
|
], 6)) : createCommentVNode("", true)
|
|
@@ -466434,12 +465793,12 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466434
465793
|
class: normalizeClass(["flex items-center justify-between px-5 py-4 border-b border-gray-200 bg-gray-50", { "cursor-move": _ctx.draggable && !isFullscreen.value }]),
|
|
466435
465794
|
onMousedown: startDrag
|
|
466436
465795
|
}, [
|
|
466437
|
-
createElementVNode("div", _hoisted_6$
|
|
465796
|
+
createElementVNode("div", _hoisted_6$i, [
|
|
466438
465797
|
renderSlot(_ctx.$slots, "title", {}, () => [
|
|
466439
465798
|
createTextVNode(toDisplayString(_ctx.title), 1)
|
|
466440
465799
|
], true)
|
|
466441
465800
|
]),
|
|
466442
|
-
createElementVNode("div", _hoisted_7$
|
|
465801
|
+
createElementVNode("div", _hoisted_7$e, [
|
|
466443
465802
|
_ctx.showFullscreen ? (openBlock(), createBlock(unref(ElButton), {
|
|
466444
465803
|
key: 0,
|
|
466445
465804
|
class: "w-6 h-6 border-none bg-transparent cursor-pointer flex items-center justify-center rounded text-gray-500 transition-all duration-200 hover:bg-gray-200 hover:text-gray-600",
|
|
@@ -466447,7 +465806,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466447
465806
|
title: isFullscreen.value ? "退出全屏" : "全屏"
|
|
466448
465807
|
}, {
|
|
466449
465808
|
default: withCtx(() => [
|
|
466450
|
-
createVNode$1(_sfc_main$
|
|
465809
|
+
createVNode$1(_sfc_main$p, {
|
|
466451
465810
|
name: isFullscreen.value ? "exit-fullscreen" : "fullscreen"
|
|
466452
465811
|
}, null, 8, ["name"])
|
|
466453
465812
|
]),
|
|
@@ -466460,19 +465819,19 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466460
465819
|
title: "关闭"
|
|
466461
465820
|
}, {
|
|
466462
465821
|
default: withCtx(() => [
|
|
466463
|
-
createVNode$1(_sfc_main$
|
|
465822
|
+
createVNode$1(_sfc_main$p, { name: "close" })
|
|
466464
465823
|
]),
|
|
466465
465824
|
_: 1
|
|
466466
465825
|
})) : createCommentVNode("", true)
|
|
466467
465826
|
])
|
|
466468
465827
|
], 34),
|
|
466469
|
-
createElementVNode("div", _hoisted_8$
|
|
465828
|
+
createElementVNode("div", _hoisted_8$b, [
|
|
466470
465829
|
renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
466471
465830
|
]),
|
|
466472
|
-
_ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_9$
|
|
465831
|
+
_ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_9$a, [
|
|
466473
465832
|
renderSlot(_ctx.$slots, "footer", {}, void 0, true)
|
|
466474
465833
|
])) : createCommentVNode("", true),
|
|
466475
|
-
_ctx.resizable && !isFullscreen.value ? (openBlock(), createElementBlock("div", _hoisted_10$
|
|
465834
|
+
_ctx.resizable && !isFullscreen.value ? (openBlock(), createElementBlock("div", _hoisted_10$a, [
|
|
466476
465835
|
createElementVNode("div", {
|
|
466477
465836
|
class: "absolute top-0 left-2 right-2 h-1 cursor-n-resize pointer-events-auto",
|
|
466478
465837
|
onMousedown: _cache[1] || (_cache[1] = ($event) => startResize($event, "n"))
|
|
@@ -466511,7 +465870,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466511
465870
|
};
|
|
466512
465871
|
}
|
|
466513
465872
|
});
|
|
466514
|
-
const CustomDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
465873
|
+
const CustomDialog = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-77d2a6ed"]]);
|
|
466515
465874
|
const tdtImgUrl = "data:image/png;base64,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";
|
|
466516
465875
|
const tdtVecUrl = "data:image/png;base64,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";
|
|
466517
465876
|
const gaodeImgUrl = "data:image/png;base64,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";
|
|
@@ -466522,13 +465881,13 @@ const tencentImgUrl = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD8AAABACAY
|
|
|
466522
465881
|
const tencentVecUrl = "data:image/png;base64,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";
|
|
466523
465882
|
const osmUrl = "data:image/png;base64,PHN2ZyB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cmVjdCB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgZmlsbD0iI2YyZjJmMiIvPgogIDxyZWN0IHg9IjEwIiB5PSIxMCIgd2lkdGg9IjgwIiBoZWlnaHQ9IjgwIiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiNjY2NjY2MiIHN0cm9rZS13aWR0aD0iMSIvPgogIDxwYXRoIGQ9Ik0yMCAzMCBMNDAgMjAgTDYwIDM1IEw4MCAyNSBMODAgNzAgTDYwIDc1IEw0MCA2MCBMMjAgNzAgWiIgZmlsbD0iIzdkZDNjMCIgc3Ryb2tlPSIjNWNiM2EwIiBzdHJva2Utd2lkdGg9IjEiLz4KICA8Y2lyY2xlIGN4PSIzNSIgY3k9IjQ1IiByPSIzIiBmaWxsPSIjZmY2YjZiIi8+CiAgPGNpcmNsZSBjeD0iNTUiIGN5PSIzNSIgcj0iMiIgZmlsbD0iIzRlY2RjNCIvPgogIDxjaXJjbGUgY3g9IjY1IiBjeT0iNTUiIHI9IjIiIGZpbGw9IiM0NWI3ZDEiLz4KICA8dGV4dCB4PSI1MCIgeT0iOTAiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGZvbnQtZmFtaWx5PSJBcmlhbCwgc2Fucy1zZXJpZiIgZm9udC1zaXplPSIxMCIgZmlsbD0iIzY2NiI+T1NNPC90ZXh0Pgo8L3N2Zz4=";
|
|
466524
465883
|
const customBlueUrl = "data:image/png;base64,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";
|
|
466525
|
-
const _hoisted_1$
|
|
466526
|
-
const _hoisted_2$
|
|
466527
|
-
const _hoisted_3$
|
|
466528
|
-
const _hoisted_4$
|
|
466529
|
-
const _hoisted_5$
|
|
466530
|
-
const _hoisted_6$
|
|
466531
|
-
const _sfc_main$
|
|
465884
|
+
const _hoisted_1$l = { class: "basemap-content" };
|
|
465885
|
+
const _hoisted_2$k = { class: "basemap-grid" };
|
|
465886
|
+
const _hoisted_3$k = ["onClick"];
|
|
465887
|
+
const _hoisted_4$j = { class: "basemap-preview" };
|
|
465888
|
+
const _hoisted_5$j = ["src", "alt"];
|
|
465889
|
+
const _hoisted_6$h = { class: "basemap-name" };
|
|
465890
|
+
const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
466532
465891
|
__name: "BasemapPanel",
|
|
466533
465892
|
props: {
|
|
466534
465893
|
modelValue: { type: Boolean }
|
|
@@ -466759,23 +466118,23 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
466759
466118
|
onClose: handleClose
|
|
466760
466119
|
}, {
|
|
466761
466120
|
default: withCtx(() => [
|
|
466762
|
-
createElementVNode("div", _hoisted_1$
|
|
466763
|
-
createElementVNode("div", _hoisted_2$
|
|
466121
|
+
createElementVNode("div", _hoisted_1$l, [
|
|
466122
|
+
createElementVNode("div", _hoisted_2$k, [
|
|
466764
466123
|
(openBlock(true), createElementBlock(Fragment, null, renderList(displayBasemaps.value, (basemap) => {
|
|
466765
466124
|
return openBlock(), createElementBlock("div", {
|
|
466766
466125
|
key: basemap.id,
|
|
466767
466126
|
class: normalizeClass(["basemap-item", { active: selectedBasemap.value === basemap.id }]),
|
|
466768
466127
|
onClick: ($event) => selectBasemap(basemap)
|
|
466769
466128
|
}, [
|
|
466770
|
-
createElementVNode("div", _hoisted_4$
|
|
466129
|
+
createElementVNode("div", _hoisted_4$j, [
|
|
466771
466130
|
createElementVNode("img", {
|
|
466772
466131
|
src: basemap.thumbnail,
|
|
466773
466132
|
alt: basemap.name,
|
|
466774
466133
|
loading: "lazy"
|
|
466775
|
-
}, null, 8, _hoisted_5$
|
|
466134
|
+
}, null, 8, _hoisted_5$j)
|
|
466776
466135
|
]),
|
|
466777
|
-
createElementVNode("div", _hoisted_6$
|
|
466778
|
-
], 10, _hoisted_3$
|
|
466136
|
+
createElementVNode("div", _hoisted_6$h, toDisplayString(basemap.name), 1)
|
|
466137
|
+
], 10, _hoisted_3$k);
|
|
466779
466138
|
}), 128))
|
|
466780
466139
|
])
|
|
466781
466140
|
])
|
|
@@ -466785,7 +466144,7 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
466785
466144
|
};
|
|
466786
466145
|
}
|
|
466787
466146
|
});
|
|
466788
|
-
const BasemapPanel = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
466147
|
+
const BasemapPanel = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-156831b6"]]);
|
|
466789
466148
|
const icons = {
|
|
466790
466149
|
pointMarker: new URL("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPg0KICA8cGF0aCBkPSJNMjEgMTBjMCA3LTkgMTMtOSAxM3MtOS02LTktMTNhOSA5IDAgMCAxIDE4IDB6Ii8+DQogIDxjaXJjbGUgY3g9IjEyIiBjeT0iMTAiIHI9IjMiLz4NCjwvc3ZnPg==", self.location).href,
|
|
466791
466150
|
textMarker: new URL("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPg0KICA8cG9seWxpbmUgcG9pbnRzPSI0IDcgNCA0IDIwIDQgMjAgNyIvPg0KICA8bGluZSB4MT0iOSIgeTE9IjIwIiB4Mj0iMTUiIHkyPSIyMCIvPg0KICA8bGluZSB4MT0iMTIiIHkxPSI0IiB4Mj0iMTIiIHkyPSIyMCIvPg0KPC9zdmc+", self.location).href,
|
|
@@ -467117,15 +466476,15 @@ class OverviewMapUtil {
|
|
|
467117
466476
|
function createOverviewMapUtil() {
|
|
467118
466477
|
return new OverviewMapUtil();
|
|
467119
466478
|
}
|
|
467120
|
-
const _hoisted_1$
|
|
467121
|
-
const _hoisted_2$
|
|
467122
|
-
const _hoisted_3$
|
|
467123
|
-
const _hoisted_4$
|
|
467124
|
-
const _hoisted_5$
|
|
467125
|
-
const _hoisted_6$
|
|
467126
|
-
const _hoisted_7$
|
|
467127
|
-
const _hoisted_8$
|
|
467128
|
-
const _sfc_main$
|
|
466479
|
+
const _hoisted_1$k = { class: "measurement-content h-full flex flex-col" };
|
|
466480
|
+
const _hoisted_2$j = { class: "measurement-header flex justify-between items-center px-6 py-4" };
|
|
466481
|
+
const _hoisted_3$j = { class: "measurement-result py-8 text-center" };
|
|
466482
|
+
const _hoisted_4$i = { class: "result-value" };
|
|
466483
|
+
const _hoisted_5$i = { class: "tool-grid flex-1 py-5" };
|
|
466484
|
+
const _hoisted_6$g = ["onClick"];
|
|
466485
|
+
const _hoisted_7$d = ["src", "alt"];
|
|
466486
|
+
const _hoisted_8$a = { class: "tool-label" };
|
|
466487
|
+
const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
467129
466488
|
__name: "MeasurementDialog",
|
|
467130
466489
|
props: {
|
|
467131
466490
|
modelValue: { type: Boolean }
|
|
@@ -467367,8 +466726,8 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
467367
466726
|
cacheId: "measurement-dialog"
|
|
467368
466727
|
}, {
|
|
467369
466728
|
default: withCtx(() => [
|
|
467370
|
-
createElementVNode("div", _hoisted_1$
|
|
467371
|
-
createElementVNode("div", _hoisted_2$
|
|
466729
|
+
createElementVNode("div", _hoisted_1$k, [
|
|
466730
|
+
createElementVNode("div", _hoisted_2$j, [
|
|
467372
466731
|
createVNode$1(_component_el_select, {
|
|
467373
466732
|
modelValue: selectedUnit.value,
|
|
467374
466733
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => selectedUnit.value = $event),
|
|
@@ -467436,10 +466795,10 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
467436
466795
|
_: 1
|
|
467437
466796
|
})
|
|
467438
466797
|
]),
|
|
467439
|
-
createElementVNode("div", _hoisted_3$
|
|
467440
|
-
createElementVNode("div", _hoisted_4$
|
|
466798
|
+
createElementVNode("div", _hoisted_3$j, [
|
|
466799
|
+
createElementVNode("div", _hoisted_4$i, toDisplayString(getDisplayValue()), 1)
|
|
467441
466800
|
]),
|
|
467442
|
-
createElementVNode("div", _hoisted_5$
|
|
466801
|
+
createElementVNode("div", _hoisted_5$i, [
|
|
467443
466802
|
(openBlock(), createElementBlock(Fragment, null, renderList(measurementTools, (tool) => {
|
|
467444
466803
|
return createElementVNode("div", {
|
|
467445
466804
|
key: tool.type,
|
|
@@ -467450,9 +466809,9 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
467450
466809
|
src: tool.icon,
|
|
467451
466810
|
alt: tool.label,
|
|
467452
466811
|
class: "tool-icon"
|
|
467453
|
-
}, null, 8, _hoisted_7$
|
|
467454
|
-
createElementVNode("span", _hoisted_8$
|
|
467455
|
-
], 10, _hoisted_6$
|
|
466812
|
+
}, null, 8, _hoisted_7$d),
|
|
466813
|
+
createElementVNode("span", _hoisted_8$a, toDisplayString(tool.label), 1)
|
|
466814
|
+
], 10, _hoisted_6$g);
|
|
467456
466815
|
}), 64))
|
|
467457
466816
|
])
|
|
467458
466817
|
])
|
|
@@ -467462,13 +466821,13 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
467462
466821
|
};
|
|
467463
466822
|
}
|
|
467464
466823
|
});
|
|
467465
|
-
const MeasurementDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
467466
|
-
const _hoisted_1$
|
|
467467
|
-
const _hoisted_2$
|
|
467468
|
-
const _hoisted_3$
|
|
467469
|
-
const _hoisted_4$
|
|
467470
|
-
const _hoisted_5$
|
|
467471
|
-
const _sfc_main$
|
|
466824
|
+
const MeasurementDialog = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-d868b567"]]);
|
|
466825
|
+
const _hoisted_1$j = { class: "coordinate-content" };
|
|
466826
|
+
const _hoisted_2$i = { class: "format-selection" };
|
|
466827
|
+
const _hoisted_3$i = { class: "format-options" };
|
|
466828
|
+
const _hoisted_4$h = { class: "coordinate-input" };
|
|
466829
|
+
const _hoisted_5$h = { class: "dialog-footer" };
|
|
466830
|
+
const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
467472
466831
|
__name: "CoordinateLocationDialog",
|
|
467473
466832
|
props: {
|
|
467474
466833
|
modelValue: { type: Boolean }
|
|
@@ -467629,7 +466988,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
|
467629
466988
|
class: "coordinate-dialog"
|
|
467630
466989
|
}, {
|
|
467631
466990
|
footer: withCtx(() => [
|
|
467632
|
-
createElementVNode("div", _hoisted_5$
|
|
466991
|
+
createElementVNode("div", _hoisted_5$h, [
|
|
467633
466992
|
createVNode$1(_component_el_button, {
|
|
467634
466993
|
type: "primary",
|
|
467635
466994
|
onClick: getCurrentLocation
|
|
@@ -467651,10 +467010,10 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
|
467651
467010
|
])
|
|
467652
467011
|
]),
|
|
467653
467012
|
default: withCtx(() => [
|
|
467654
|
-
createElementVNode("div", _hoisted_1$
|
|
467655
|
-
createElementVNode("div", _hoisted_2$
|
|
467013
|
+
createElementVNode("div", _hoisted_1$j, [
|
|
467014
|
+
createElementVNode("div", _hoisted_2$i, [
|
|
467656
467015
|
_cache[6] || (_cache[6] = createElementVNode("div", { class: "format-title" }, "坐标格式", -1)),
|
|
467657
|
-
createElementVNode("div", _hoisted_3$
|
|
467016
|
+
createElementVNode("div", _hoisted_3$i, [
|
|
467658
467017
|
createVNode$1(_component_el_radio_group, {
|
|
467659
467018
|
modelValue: selectedFormat.value,
|
|
467660
467019
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => selectedFormat.value = $event),
|
|
@@ -467678,7 +467037,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
|
467678
467037
|
}, 8, ["modelValue"])
|
|
467679
467038
|
])
|
|
467680
467039
|
]),
|
|
467681
|
-
createElementVNode("div", _hoisted_4$
|
|
467040
|
+
createElementVNode("div", _hoisted_4$h, [
|
|
467682
467041
|
createVNode$1(_component_el_form, {
|
|
467683
467042
|
model: coordinateForm,
|
|
467684
467043
|
"label-width": "60px"
|
|
@@ -467719,24 +467078,24 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
|
467719
467078
|
};
|
|
467720
467079
|
}
|
|
467721
467080
|
});
|
|
467722
|
-
const CoordinateLocationDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
467723
|
-
const _hoisted_1$
|
|
467724
|
-
const _hoisted_2$
|
|
467081
|
+
const CoordinateLocationDialog = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__scopeId", "data-v-26c1acac"]]);
|
|
467082
|
+
const _hoisted_1$i = { class: "region-content" };
|
|
467083
|
+
const _hoisted_2$h = {
|
|
467725
467084
|
key: 0,
|
|
467726
467085
|
class: "region-categories"
|
|
467727
467086
|
};
|
|
467728
|
-
const _hoisted_3$
|
|
467729
|
-
const _hoisted_4$
|
|
467730
|
-
const _hoisted_5$
|
|
467731
|
-
const _hoisted_6$
|
|
467732
|
-
const _hoisted_7$
|
|
467733
|
-
const _hoisted_8$
|
|
467734
|
-
const _hoisted_9$
|
|
467735
|
-
const _hoisted_10$
|
|
467736
|
-
const _hoisted_11$
|
|
467737
|
-
const _hoisted_12$
|
|
467738
|
-
const _hoisted_13$
|
|
467739
|
-
const _hoisted_14$
|
|
467087
|
+
const _hoisted_3$h = { class: "region-group" };
|
|
467088
|
+
const _hoisted_4$g = { class: "region-items" };
|
|
467089
|
+
const _hoisted_5$g = { class: "region-group" };
|
|
467090
|
+
const _hoisted_6$f = { class: "region-items" };
|
|
467091
|
+
const _hoisted_7$c = { class: "region-group" };
|
|
467092
|
+
const _hoisted_8$9 = { class: "region-items" };
|
|
467093
|
+
const _hoisted_9$9 = { class: "region-group" };
|
|
467094
|
+
const _hoisted_10$9 = { class: "region-items" };
|
|
467095
|
+
const _hoisted_11$9 = { class: "region-group" };
|
|
467096
|
+
const _hoisted_12$9 = { class: "region-items" };
|
|
467097
|
+
const _hoisted_13$9 = { class: "region-group" };
|
|
467098
|
+
const _hoisted_14$8 = { class: "region-items" };
|
|
467740
467099
|
const _hoisted_15$7 = { class: "region-group" };
|
|
467741
467100
|
const _hoisted_16$7 = { class: "region-items" };
|
|
467742
467101
|
const _hoisted_17$6 = { class: "region-group" };
|
|
@@ -467746,7 +467105,7 @@ const _hoisted_19$5 = {
|
|
|
467746
467105
|
class: "sub-regions"
|
|
467747
467106
|
};
|
|
467748
467107
|
const _hoisted_20$4 = { class: "district-grid" };
|
|
467749
|
-
const _sfc_main$
|
|
467108
|
+
const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
467750
467109
|
__name: "RegionNavigationDialog",
|
|
467751
467110
|
props: {
|
|
467752
467111
|
modelValue: { type: Boolean }
|
|
@@ -468842,7 +468201,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468842
468201
|
class: "region-dialog"
|
|
468843
468202
|
}, {
|
|
468844
468203
|
default: withCtx(() => [
|
|
468845
|
-
createElementVNode("div", _hoisted_1$
|
|
468204
|
+
createElementVNode("div", _hoisted_1$i, [
|
|
468846
468205
|
createVNode$1(_component_el_tabs, {
|
|
468847
468206
|
modelValue: activeTab.value,
|
|
468848
468207
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => activeTab.value = $event),
|
|
@@ -468860,10 +468219,10 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468860
468219
|
closable: index2 > 0
|
|
468861
468220
|
}, {
|
|
468862
468221
|
default: withCtx(() => [
|
|
468863
|
-
tab.name === "china" ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
468864
|
-
createElementVNode("div", _hoisted_3$
|
|
468222
|
+
tab.name === "china" ? (openBlock(), createElementBlock("div", _hoisted_2$h, [
|
|
468223
|
+
createElementVNode("div", _hoisted_3$h, [
|
|
468865
468224
|
_cache[2] || (_cache[2] = createElementVNode("div", { class: "group-title" }, "华北", -1)),
|
|
468866
|
-
createElementVNode("div", _hoisted_4$
|
|
468225
|
+
createElementVNode("div", _hoisted_4$g, [
|
|
468867
468226
|
(openBlock(true), createElementBlock(Fragment, null, renderList(regions.north, (region) => {
|
|
468868
468227
|
return openBlock(), createBlock(_component_el_button, {
|
|
468869
468228
|
key: region.code,
|
|
@@ -468879,9 +468238,9 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468879
468238
|
}), 128))
|
|
468880
468239
|
])
|
|
468881
468240
|
]),
|
|
468882
|
-
createElementVNode("div", _hoisted_5$
|
|
468241
|
+
createElementVNode("div", _hoisted_5$g, [
|
|
468883
468242
|
_cache[3] || (_cache[3] = createElementVNode("div", { class: "group-title" }, "东北", -1)),
|
|
468884
|
-
createElementVNode("div", _hoisted_6$
|
|
468243
|
+
createElementVNode("div", _hoisted_6$f, [
|
|
468885
468244
|
(openBlock(true), createElementBlock(Fragment, null, renderList(regions.northeast, (region) => {
|
|
468886
468245
|
return openBlock(), createBlock(_component_el_button, {
|
|
468887
468246
|
key: region.code,
|
|
@@ -468897,9 +468256,9 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468897
468256
|
}), 128))
|
|
468898
468257
|
])
|
|
468899
468258
|
]),
|
|
468900
|
-
createElementVNode("div", _hoisted_7$
|
|
468259
|
+
createElementVNode("div", _hoisted_7$c, [
|
|
468901
468260
|
_cache[4] || (_cache[4] = createElementVNode("div", { class: "group-title" }, "华东", -1)),
|
|
468902
|
-
createElementVNode("div", _hoisted_8$
|
|
468261
|
+
createElementVNode("div", _hoisted_8$9, [
|
|
468903
468262
|
(openBlock(true), createElementBlock(Fragment, null, renderList(regions.east, (region) => {
|
|
468904
468263
|
return openBlock(), createBlock(_component_el_button, {
|
|
468905
468264
|
key: region.code,
|
|
@@ -468915,9 +468274,9 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468915
468274
|
}), 128))
|
|
468916
468275
|
])
|
|
468917
468276
|
]),
|
|
468918
|
-
createElementVNode("div", _hoisted_9$
|
|
468277
|
+
createElementVNode("div", _hoisted_9$9, [
|
|
468919
468278
|
_cache[5] || (_cache[5] = createElementVNode("div", { class: "group-title" }, "华中", -1)),
|
|
468920
|
-
createElementVNode("div", _hoisted_10$
|
|
468279
|
+
createElementVNode("div", _hoisted_10$9, [
|
|
468921
468280
|
(openBlock(true), createElementBlock(Fragment, null, renderList(regions.central, (region) => {
|
|
468922
468281
|
return openBlock(), createBlock(_component_el_button, {
|
|
468923
468282
|
key: region.code,
|
|
@@ -468933,9 +468292,9 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468933
468292
|
}), 128))
|
|
468934
468293
|
])
|
|
468935
468294
|
]),
|
|
468936
|
-
createElementVNode("div", _hoisted_11$
|
|
468295
|
+
createElementVNode("div", _hoisted_11$9, [
|
|
468937
468296
|
_cache[6] || (_cache[6] = createElementVNode("div", { class: "group-title" }, "华南", -1)),
|
|
468938
|
-
createElementVNode("div", _hoisted_12$
|
|
468297
|
+
createElementVNode("div", _hoisted_12$9, [
|
|
468939
468298
|
(openBlock(true), createElementBlock(Fragment, null, renderList(regions.south, (region) => {
|
|
468940
468299
|
return openBlock(), createBlock(_component_el_button, {
|
|
468941
468300
|
key: region.code,
|
|
@@ -468951,9 +468310,9 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468951
468310
|
}), 128))
|
|
468952
468311
|
])
|
|
468953
468312
|
]),
|
|
468954
|
-
createElementVNode("div", _hoisted_13$
|
|
468313
|
+
createElementVNode("div", _hoisted_13$9, [
|
|
468955
468314
|
_cache[7] || (_cache[7] = createElementVNode("div", { class: "group-title" }, "西南", -1)),
|
|
468956
|
-
createElementVNode("div", _hoisted_14$
|
|
468315
|
+
createElementVNode("div", _hoisted_14$8, [
|
|
468957
468316
|
(openBlock(true), createElementBlock(Fragment, null, renderList(regions.southwest, (region) => {
|
|
468958
468317
|
return openBlock(), createBlock(_component_el_button, {
|
|
468959
468318
|
key: region.code,
|
|
@@ -469035,13 +468394,13 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
469035
468394
|
};
|
|
469036
468395
|
}
|
|
469037
468396
|
});
|
|
469038
|
-
const RegionNavigationDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
469039
|
-
const _hoisted_1$
|
|
469040
|
-
const _hoisted_2$
|
|
469041
|
-
const _hoisted_3$
|
|
469042
|
-
const _hoisted_4$
|
|
469043
|
-
const _hoisted_5$
|
|
469044
|
-
const _sfc_main$
|
|
468397
|
+
const RegionNavigationDialog = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__scopeId", "data-v-2cbe0bd1"]]);
|
|
468398
|
+
const _hoisted_1$h = { class: "markers-content" };
|
|
468399
|
+
const _hoisted_2$g = { class: "toolbar" };
|
|
468400
|
+
const _hoisted_3$g = { class: "search-filter" };
|
|
468401
|
+
const _hoisted_4$f = { class: "markers-list" };
|
|
468402
|
+
const _hoisted_5$f = { class: "marker-name" };
|
|
468403
|
+
const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
469045
468404
|
__name: "MyMarkersDialog",
|
|
469046
468405
|
props: {
|
|
469047
468406
|
modelValue: { type: Boolean }
|
|
@@ -469378,8 +468737,8 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
469378
468737
|
class: "markers-dialog"
|
|
469379
468738
|
}, {
|
|
469380
468739
|
default: withCtx(() => [
|
|
469381
|
-
createElementVNode("div", _hoisted_1$
|
|
469382
|
-
createElementVNode("div", _hoisted_2$
|
|
468740
|
+
createElementVNode("div", _hoisted_1$h, [
|
|
468741
|
+
createElementVNode("div", _hoisted_2$g, [
|
|
469383
468742
|
createVNode$1(_component_el_button, {
|
|
469384
468743
|
type: "primary",
|
|
469385
468744
|
icon: unref(plus_default),
|
|
@@ -469420,7 +468779,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
469420
468779
|
_: 1
|
|
469421
468780
|
}, 8, ["icon", "disabled"])
|
|
469422
468781
|
]),
|
|
469423
|
-
createElementVNode("div", _hoisted_3$
|
|
468782
|
+
createElementVNode("div", _hoisted_3$g, [
|
|
469424
468783
|
createVNode$1(_component_el_input, {
|
|
469425
468784
|
modelValue: searchKeyword.value,
|
|
469426
468785
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchKeyword.value = $event),
|
|
@@ -469453,7 +468812,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
469453
468812
|
_: 1
|
|
469454
468813
|
}, 8, ["modelValue"])
|
|
469455
468814
|
]),
|
|
469456
|
-
createElementVNode("div", _hoisted_4$
|
|
468815
|
+
createElementVNode("div", _hoisted_4$f, [
|
|
469457
468816
|
createVNode$1(_component_el_table, {
|
|
469458
468817
|
data: filteredMarkers.value,
|
|
469459
468818
|
height: "300",
|
|
@@ -469467,7 +468826,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
469467
468826
|
width: "120"
|
|
469468
468827
|
}, {
|
|
469469
468828
|
default: withCtx(({ row }) => [
|
|
469470
|
-
createElementVNode("div", _hoisted_5$
|
|
468829
|
+
createElementVNode("div", _hoisted_5$f, [
|
|
469471
468830
|
createVNode$1(_component_el_icon, {
|
|
469472
468831
|
color: row.color,
|
|
469473
468832
|
size: "16"
|
|
@@ -469612,21 +468971,21 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
469612
468971
|
};
|
|
469613
468972
|
}
|
|
469614
468973
|
});
|
|
469615
|
-
const MyMarkersDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
469616
|
-
const _hoisted_1$
|
|
469617
|
-
const _hoisted_2$
|
|
469618
|
-
const _hoisted_3$
|
|
469619
|
-
const _hoisted_4$
|
|
469620
|
-
const _hoisted_5$
|
|
469621
|
-
const _hoisted_6$
|
|
469622
|
-
const _hoisted_7$
|
|
469623
|
-
const _hoisted_8$
|
|
469624
|
-
const _hoisted_9$
|
|
469625
|
-
const _hoisted_10$
|
|
469626
|
-
const _hoisted_11$
|
|
469627
|
-
const _hoisted_12$
|
|
469628
|
-
const _hoisted_13$
|
|
469629
|
-
const _hoisted_14$
|
|
468974
|
+
const MyMarkersDialog = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-940a2ace"]]);
|
|
468975
|
+
const _hoisted_1$g = { class: "bookmarks-content" };
|
|
468976
|
+
const _hoisted_2$f = { class: "toolbar" };
|
|
468977
|
+
const _hoisted_3$f = { class: "search-filter" };
|
|
468978
|
+
const _hoisted_4$e = { class: "bookmarks-grid" };
|
|
468979
|
+
const _hoisted_5$e = ["onClick"];
|
|
468980
|
+
const _hoisted_6$e = { class: "bookmark-thumbnail" };
|
|
468981
|
+
const _hoisted_7$b = { class: "thumbnail-placeholder" };
|
|
468982
|
+
const _hoisted_8$8 = { class: "bookmark-overlay" };
|
|
468983
|
+
const _hoisted_9$8 = { class: "bookmark-info" };
|
|
468984
|
+
const _hoisted_10$8 = { class: "bookmark-title" };
|
|
468985
|
+
const _hoisted_11$8 = { class: "bookmark-meta" };
|
|
468986
|
+
const _hoisted_12$8 = { class: "use-count" };
|
|
468987
|
+
const _hoisted_13$8 = { class: "bookmark-description" };
|
|
468988
|
+
const _hoisted_14$7 = { class: "bookmark-details" };
|
|
469630
468989
|
const _hoisted_15$6 = { class: "detail-item" };
|
|
469631
468990
|
const _hoisted_16$6 = { class: "detail-item" };
|
|
469632
468991
|
const _hoisted_17$5 = { class: "bookmark-time" };
|
|
@@ -469639,7 +468998,7 @@ const _hoisted_19$4 = {
|
|
|
469639
468998
|
class: "statistics"
|
|
469640
468999
|
};
|
|
469641
469000
|
const _hoisted_20$3 = { class: "dialog-footer" };
|
|
469642
|
-
const _sfc_main$
|
|
469001
|
+
const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
469643
469002
|
__name: "ViewBookmarksDialog",
|
|
469644
469003
|
props: {
|
|
469645
469004
|
modelValue: { type: Boolean }
|
|
@@ -469919,8 +469278,8 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
469919
469278
|
])
|
|
469920
469279
|
]),
|
|
469921
469280
|
default: withCtx(() => [
|
|
469922
|
-
createElementVNode("div", _hoisted_1$
|
|
469923
|
-
createElementVNode("div", _hoisted_2$
|
|
469281
|
+
createElementVNode("div", _hoisted_1$g, [
|
|
469282
|
+
createElementVNode("div", _hoisted_2$f, [
|
|
469924
469283
|
createVNode$1(_component_el_button, {
|
|
469925
469284
|
type: "primary",
|
|
469926
469285
|
icon: unref(plus_default),
|
|
@@ -469960,7 +469319,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
469960
469319
|
_: 1
|
|
469961
469320
|
}, 8, ["icon", "disabled"])
|
|
469962
469321
|
]),
|
|
469963
|
-
createElementVNode("div", _hoisted_3$
|
|
469322
|
+
createElementVNode("div", _hoisted_3$f, [
|
|
469964
469323
|
createVNode$1(_component_el_input, {
|
|
469965
469324
|
modelValue: searchKeyword.value,
|
|
469966
469325
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchKeyword.value = $event),
|
|
@@ -470015,15 +469374,15 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
470015
469374
|
_: 1
|
|
470016
469375
|
}, 8, ["modelValue"])
|
|
470017
469376
|
]),
|
|
470018
|
-
createElementVNode("div", _hoisted_4$
|
|
469377
|
+
createElementVNode("div", _hoisted_4$e, [
|
|
470019
469378
|
(openBlock(true), createElementBlock(Fragment, null, renderList(filteredBookmarks.value, (bookmark, index2) => {
|
|
470020
469379
|
return openBlock(), createElementBlock("div", {
|
|
470021
469380
|
key: bookmark.id,
|
|
470022
469381
|
class: "bookmark-card",
|
|
470023
469382
|
onClick: ($event) => applyBookmark(bookmark)
|
|
470024
469383
|
}, [
|
|
470025
|
-
createElementVNode("div", _hoisted_6$
|
|
470026
|
-
createElementVNode("div", _hoisted_7$
|
|
469384
|
+
createElementVNode("div", _hoisted_6$e, [
|
|
469385
|
+
createElementVNode("div", _hoisted_7$b, [
|
|
470027
469386
|
createVNode$1(_component_el_icon, {
|
|
470028
469387
|
size: "40",
|
|
470029
469388
|
color: "#409eff"
|
|
@@ -470034,7 +469393,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
470034
469393
|
_: 1
|
|
470035
469394
|
})
|
|
470036
469395
|
]),
|
|
470037
|
-
createElementVNode("div", _hoisted_8$
|
|
469396
|
+
createElementVNode("div", _hoisted_8$8, [
|
|
470038
469397
|
createVNode$1(_component_el_button_group, null, {
|
|
470039
469398
|
default: withCtx(() => [
|
|
470040
469399
|
createVNode$1(_component_el_button, {
|
|
@@ -470074,9 +469433,9 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
470074
469433
|
}, 1024)
|
|
470075
469434
|
])
|
|
470076
469435
|
]),
|
|
470077
|
-
createElementVNode("div", _hoisted_9$
|
|
470078
|
-
createElementVNode("div", _hoisted_10$
|
|
470079
|
-
createElementVNode("div", _hoisted_11$
|
|
469436
|
+
createElementVNode("div", _hoisted_9$8, [
|
|
469437
|
+
createElementVNode("div", _hoisted_10$8, toDisplayString(bookmark.name), 1),
|
|
469438
|
+
createElementVNode("div", _hoisted_11$8, [
|
|
470080
469439
|
createVNode$1(_component_el_tag, {
|
|
470081
469440
|
size: "small",
|
|
470082
469441
|
type: "info"
|
|
@@ -470086,10 +469445,10 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
470086
469445
|
]),
|
|
470087
469446
|
_: 2
|
|
470088
469447
|
}, 1024),
|
|
470089
|
-
createElementVNode("span", _hoisted_12$
|
|
469448
|
+
createElementVNode("span", _hoisted_12$8, "使用 " + toDisplayString(bookmark.useCount) + " 次", 1)
|
|
470090
469449
|
]),
|
|
470091
|
-
createElementVNode("div", _hoisted_13$
|
|
470092
|
-
createElementVNode("div", _hoisted_14$
|
|
469450
|
+
createElementVNode("div", _hoisted_13$8, toDisplayString(bookmark.description), 1),
|
|
469451
|
+
createElementVNode("div", _hoisted_14$7, [
|
|
470093
469452
|
createElementVNode("span", _hoisted_15$6, [
|
|
470094
469453
|
createVNode$1(_component_el_icon, null, {
|
|
470095
469454
|
default: withCtx(() => [
|
|
@@ -470111,7 +469470,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
470111
469470
|
]),
|
|
470112
469471
|
createElementVNode("div", _hoisted_17$5, toDisplayString(formatTime(bookmark.createTime)), 1)
|
|
470113
469472
|
])
|
|
470114
|
-
], 8, _hoisted_5$
|
|
469473
|
+
], 8, _hoisted_5$e);
|
|
470115
469474
|
}), 128))
|
|
470116
469475
|
]),
|
|
470117
469476
|
filteredBookmarks.value.length === 0 ? (openBlock(), createElementBlock("div", _hoisted_18$5, [
|
|
@@ -470328,24 +469687,24 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
470328
469687
|
};
|
|
470329
469688
|
}
|
|
470330
469689
|
});
|
|
470331
|
-
const ViewBookmarksDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
470332
|
-
const _hoisted_1$
|
|
470333
|
-
const _hoisted_2$
|
|
470334
|
-
const _hoisted_3$
|
|
470335
|
-
const _hoisted_4$
|
|
470336
|
-
const _hoisted_5$
|
|
470337
|
-
const _hoisted_6$
|
|
469690
|
+
const ViewBookmarksDialog = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-f533ea83"]]);
|
|
469691
|
+
const _hoisted_1$f = { class: "py-2.5" };
|
|
469692
|
+
const _hoisted_2$e = { class: "h-150 overflow-y-auto" };
|
|
469693
|
+
const _hoisted_3$e = { class: "flex items-center justify-between" };
|
|
469694
|
+
const _hoisted_4$d = { class: "mb-5" };
|
|
469695
|
+
const _hoisted_5$d = { class: "mb-3" };
|
|
469696
|
+
const _hoisted_6$d = {
|
|
470338
469697
|
key: 0,
|
|
470339
469698
|
class: "mb-3"
|
|
470340
469699
|
};
|
|
470341
|
-
const _hoisted_7$
|
|
470342
|
-
const _hoisted_8$
|
|
470343
|
-
const _hoisted_9$
|
|
470344
|
-
const _hoisted_10$
|
|
470345
|
-
const _hoisted_11$
|
|
470346
|
-
const _hoisted_12$
|
|
470347
|
-
const _hoisted_13$
|
|
470348
|
-
const _hoisted_14$
|
|
469700
|
+
const _hoisted_7$a = { class: "flex gap-2" };
|
|
469701
|
+
const _hoisted_8$7 = { class: "mb-5" };
|
|
469702
|
+
const _hoisted_9$7 = { class: "mb-3" };
|
|
469703
|
+
const _hoisted_10$7 = { class: "mb-3" };
|
|
469704
|
+
const _hoisted_11$7 = { key: 0 };
|
|
469705
|
+
const _hoisted_12$7 = { class: "mb-5" };
|
|
469706
|
+
const _hoisted_13$7 = { class: "mb-3" };
|
|
469707
|
+
const _hoisted_14$6 = { class: "mb-3" };
|
|
470349
469708
|
const _hoisted_15$5 = { class: "mb-3" };
|
|
470350
469709
|
const _hoisted_16$5 = { class: "flex gap-2 mb-2" };
|
|
470351
469710
|
const _hoisted_17$4 = { class: "flex gap-2" };
|
|
@@ -470418,7 +469777,7 @@ const _hoisted_44$1 = {
|
|
|
470418
469777
|
const _hoisted_45 = { key: 0 };
|
|
470419
469778
|
const _hoisted_46 = { key: 0 };
|
|
470420
469779
|
const _hoisted_47 = { class: "text-right" };
|
|
470421
|
-
const _sfc_main$
|
|
469780
|
+
const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
470422
469781
|
__name: "MapPrintDialog",
|
|
470423
469782
|
props: {
|
|
470424
469783
|
modelValue: { type: Boolean },
|
|
@@ -470835,15 +470194,15 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
470835
470194
|
])
|
|
470836
470195
|
]),
|
|
470837
470196
|
default: withCtx(() => [
|
|
470838
|
-
createElementVNode("div", _hoisted_1$
|
|
470197
|
+
createElementVNode("div", _hoisted_1$f, [
|
|
470839
470198
|
createVNode$1(_component_el_row, { gutter: 20 }, {
|
|
470840
470199
|
default: withCtx(() => [
|
|
470841
470200
|
createVNode$1(_component_el_col, { span: 8 }, {
|
|
470842
470201
|
default: withCtx(() => [
|
|
470843
|
-
createElementVNode("div", _hoisted_2$
|
|
470202
|
+
createElementVNode("div", _hoisted_2$e, [
|
|
470844
470203
|
createVNode$1(_component_el_card, { shadow: "hover" }, {
|
|
470845
470204
|
header: withCtx(() => [
|
|
470846
|
-
createElementVNode("div", _hoisted_3$
|
|
470205
|
+
createElementVNode("div", _hoisted_3$e, [
|
|
470847
470206
|
_cache[18] || (_cache[18] = createElementVNode("span", null, "打印设置", -1)),
|
|
470848
470207
|
createVNode$1(_component_el_button, {
|
|
470849
470208
|
type: "text",
|
|
@@ -470863,9 +470222,9 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
470863
470222
|
])
|
|
470864
470223
|
]),
|
|
470865
470224
|
default: withCtx(() => [
|
|
470866
|
-
createElementVNode("div", _hoisted_4$
|
|
470225
|
+
createElementVNode("div", _hoisted_4$d, [
|
|
470867
470226
|
_cache[21] || (_cache[21] = createElementVNode("label", { class: "block text-sm font-medium text-gray-700 mb-2" }, "纸张设置", -1)),
|
|
470868
|
-
createElementVNode("div", _hoisted_5$
|
|
470227
|
+
createElementVNode("div", _hoisted_5$d, [
|
|
470869
470228
|
createVNode$1(_component_el_select, {
|
|
470870
470229
|
modelValue: printSettings.paperSize,
|
|
470871
470230
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => printSettings.paperSize = $event),
|
|
@@ -470909,8 +470268,8 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
470909
470268
|
_: 1
|
|
470910
470269
|
}, 8, ["modelValue"])
|
|
470911
470270
|
]),
|
|
470912
|
-
printSettings.paperSize === "Custom" ? (openBlock(), createElementBlock("div", _hoisted_6$
|
|
470913
|
-
createElementVNode("div", _hoisted_7$
|
|
470271
|
+
printSettings.paperSize === "Custom" ? (openBlock(), createElementBlock("div", _hoisted_6$d, [
|
|
470272
|
+
createElementVNode("div", _hoisted_7$a, [
|
|
470914
470273
|
createVNode$1(_component_el_input, {
|
|
470915
470274
|
modelValue: printSettings.customWidth,
|
|
470916
470275
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => printSettings.customWidth = $event),
|
|
@@ -470950,9 +470309,9 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
470950
470309
|
}, 8, ["modelValue"])
|
|
470951
470310
|
])
|
|
470952
470311
|
]),
|
|
470953
|
-
createElementVNode("div", _hoisted_8$
|
|
470312
|
+
createElementVNode("div", _hoisted_8$7, [
|
|
470954
470313
|
_cache[23] || (_cache[23] = createElementVNode("label", { class: "block text-sm font-medium text-gray-700 mb-2" }, "地图设置", -1)),
|
|
470955
|
-
createElementVNode("div", _hoisted_9$
|
|
470314
|
+
createElementVNode("div", _hoisted_9$7, [
|
|
470956
470315
|
createVNode$1(_component_el_select, {
|
|
470957
470316
|
modelValue: printSettings.dpi,
|
|
470958
470317
|
"onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => printSettings.dpi = $event),
|
|
@@ -470980,7 +470339,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
470980
470339
|
_: 1
|
|
470981
470340
|
}, 8, ["modelValue"])
|
|
470982
470341
|
]),
|
|
470983
|
-
createElementVNode("div", _hoisted_10$
|
|
470342
|
+
createElementVNode("div", _hoisted_10$7, [
|
|
470984
470343
|
createVNode$1(_component_el_select, {
|
|
470985
470344
|
modelValue: printSettings.scale,
|
|
470986
470345
|
"onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => printSettings.scale = $event),
|
|
@@ -471024,7 +470383,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
471024
470383
|
_: 1
|
|
471025
470384
|
}, 8, ["modelValue"])
|
|
471026
470385
|
]),
|
|
471027
|
-
printSettings.scale === "custom" ? (openBlock(), createElementBlock("div", _hoisted_11$
|
|
470386
|
+
printSettings.scale === "custom" ? (openBlock(), createElementBlock("div", _hoisted_11$7, [
|
|
471028
470387
|
createVNode$1(_component_el_input, {
|
|
471029
470388
|
modelValue: printSettings.customScale,
|
|
471030
470389
|
"onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => printSettings.customScale = $event),
|
|
@@ -471039,9 +470398,9 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
471039
470398
|
}, 8, ["modelValue"])
|
|
471040
470399
|
])) : createCommentVNode("", true)
|
|
471041
470400
|
]),
|
|
471042
|
-
createElementVNode("div", _hoisted_12$
|
|
470401
|
+
createElementVNode("div", _hoisted_12$7, [
|
|
471043
470402
|
_cache[32] || (_cache[32] = createElementVNode("label", { class: "block text-sm font-medium text-gray-700 mb-2" }, "内容设置", -1)),
|
|
471044
|
-
createElementVNode("div", _hoisted_13$
|
|
470403
|
+
createElementVNode("div", _hoisted_13$7, [
|
|
471045
470404
|
createVNode$1(_component_el_input, {
|
|
471046
470405
|
modelValue: printSettings.title,
|
|
471047
470406
|
"onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => printSettings.title = $event),
|
|
@@ -471049,7 +470408,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
471049
470408
|
class: "w-full"
|
|
471050
470409
|
}, null, 8, ["modelValue"])
|
|
471051
470410
|
]),
|
|
471052
|
-
createElementVNode("div", _hoisted_14$
|
|
470411
|
+
createElementVNode("div", _hoisted_14$6, [
|
|
471053
470412
|
createVNode$1(_component_el_input, {
|
|
471054
470413
|
modelValue: printSettings.subtitle,
|
|
471055
470414
|
"onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => printSettings.subtitle = $event),
|
|
@@ -471404,18 +470763,18 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
471404
470763
|
};
|
|
471405
470764
|
}
|
|
471406
470765
|
});
|
|
471407
|
-
const MapPrintDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
471408
|
-
const _hoisted_1$
|
|
471409
|
-
const _hoisted_2$
|
|
471410
|
-
const _hoisted_3$
|
|
471411
|
-
const _hoisted_4$
|
|
471412
|
-
const _hoisted_5$
|
|
471413
|
-
const _hoisted_6$
|
|
471414
|
-
const _hoisted_7$
|
|
470766
|
+
const MapPrintDialog = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__scopeId", "data-v-b6e68ef8"]]);
|
|
470767
|
+
const _hoisted_1$e = { class: "mark-tab-container" };
|
|
470768
|
+
const _hoisted_2$d = { class: "continuous-switch" };
|
|
470769
|
+
const _hoisted_3$d = { class: "tools-grid" };
|
|
470770
|
+
const _hoisted_4$c = ["onClick"];
|
|
470771
|
+
const _hoisted_5$c = ["src"];
|
|
470772
|
+
const _hoisted_6$c = { class: "tool-label" };
|
|
470773
|
+
const _hoisted_7$9 = {
|
|
471415
470774
|
key: 0,
|
|
471416
470775
|
class: "stop-drawing-section"
|
|
471417
470776
|
};
|
|
471418
|
-
const _sfc_main$
|
|
470777
|
+
const _sfc_main$g = {
|
|
471419
470778
|
__name: "MarkTab",
|
|
471420
470779
|
setup(__props) {
|
|
471421
470780
|
const mapRef = inject("map");
|
|
@@ -471905,7 +471264,7 @@ const _sfc_main$f = {
|
|
|
471905
471264
|
const _component_el_select = resolveComponent("el-select");
|
|
471906
471265
|
const _component_el_switch = resolveComponent("el-switch");
|
|
471907
471266
|
const _component_el_button = resolveComponent("el-button");
|
|
471908
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
471267
|
+
return openBlock(), createElementBlock("div", _hoisted_1$e, [
|
|
471909
471268
|
createVNode$1(_component_el_select, {
|
|
471910
471269
|
modelValue: selectedType.value,
|
|
471911
471270
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => selectedType.value = $event),
|
|
@@ -471923,7 +471282,7 @@ const _sfc_main$f = {
|
|
|
471923
471282
|
]),
|
|
471924
471283
|
_: 1
|
|
471925
471284
|
}, 8, ["modelValue"]),
|
|
471926
|
-
createElementVNode("div", _hoisted_2$
|
|
471285
|
+
createElementVNode("div", _hoisted_2$d, [
|
|
471927
471286
|
_cache[2] || (_cache[2] = createElementVNode("span", { class: "switch-label" }, "连续标绘模式", -1)),
|
|
471928
471287
|
createVNode$1(_component_el_switch, {
|
|
471929
471288
|
modelValue: continuousDrawing.value,
|
|
@@ -471931,7 +471290,7 @@ const _sfc_main$f = {
|
|
|
471931
471290
|
size: "small"
|
|
471932
471291
|
}, null, 8, ["modelValue"])
|
|
471933
471292
|
]),
|
|
471934
|
-
createElementVNode("div", _hoisted_3$
|
|
471293
|
+
createElementVNode("div", _hoisted_3$d, [
|
|
471935
471294
|
(openBlock(true), createElementBlock(Fragment, null, renderList(currentTools.value, (tool, idx) => {
|
|
471936
471295
|
return openBlock(), createElementBlock("div", {
|
|
471937
471296
|
key: idx,
|
|
@@ -471943,15 +471302,15 @@ const _sfc_main$f = {
|
|
|
471943
471302
|
src: tool.icon,
|
|
471944
471303
|
class: "tool-image",
|
|
471945
471304
|
alt: "tool icon"
|
|
471946
|
-
}, null, 8, _hoisted_5$
|
|
471305
|
+
}, null, 8, _hoisted_5$c)) : (openBlock(), createElementBlock("i", {
|
|
471947
471306
|
key: 1,
|
|
471948
471307
|
class: normalizeClass([tool.icon, "tool-icon-large"])
|
|
471949
471308
|
}, null, 2)),
|
|
471950
|
-
createElementVNode("span", _hoisted_6$
|
|
471951
|
-
], 8, _hoisted_4$
|
|
471309
|
+
createElementVNode("span", _hoisted_6$c, toDisplayString(tool.label), 1)
|
|
471310
|
+
], 8, _hoisted_4$c);
|
|
471952
471311
|
}), 128))
|
|
471953
471312
|
]),
|
|
471954
|
-
activeDrawingTool.value && continuousDrawing.value ? (openBlock(), createElementBlock("div", _hoisted_7$
|
|
471313
|
+
activeDrawingTool.value && continuousDrawing.value ? (openBlock(), createElementBlock("div", _hoisted_7$9, [
|
|
471955
471314
|
createVNode$1(_component_el_button, {
|
|
471956
471315
|
type: "danger",
|
|
471957
471316
|
size: "small",
|
|
@@ -471968,18 +471327,18 @@ const _sfc_main$f = {
|
|
|
471968
471327
|
};
|
|
471969
471328
|
}
|
|
471970
471329
|
};
|
|
471971
|
-
const MarkTab = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
471972
|
-
const _hoisted_1$
|
|
471973
|
-
const _hoisted_2$
|
|
471974
|
-
const _hoisted_3$
|
|
471975
|
-
const _hoisted_4$
|
|
471976
|
-
const _hoisted_5$
|
|
471977
|
-
const _hoisted_6$
|
|
471978
|
-
const _hoisted_7$
|
|
471330
|
+
const MarkTab = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__scopeId", "data-v-019ab9dd"]]);
|
|
471331
|
+
const _hoisted_1$d = { class: "list-tab-container" };
|
|
471332
|
+
const _hoisted_2$c = { class: "toolbar" };
|
|
471333
|
+
const _hoisted_3$c = { class: "toolbar-left" };
|
|
471334
|
+
const _hoisted_4$b = { class: "data-count" };
|
|
471335
|
+
const _hoisted_5$b = { class: "list-content" };
|
|
471336
|
+
const _hoisted_6$b = { class: "tree-node" };
|
|
471337
|
+
const _hoisted_7$8 = {
|
|
471979
471338
|
key: 1,
|
|
471980
471339
|
class: "empty-state"
|
|
471981
471340
|
};
|
|
471982
|
-
const _sfc_main$
|
|
471341
|
+
const _sfc_main$f = {
|
|
471983
471342
|
__name: "ListTab",
|
|
471984
471343
|
setup(__props) {
|
|
471985
471344
|
const groups = ref([
|
|
@@ -472000,9 +471359,9 @@ const _sfc_main$e = {
|
|
|
472000
471359
|
return (_ctx, _cache) => {
|
|
472001
471360
|
const _component_el_button = resolveComponent("el-button");
|
|
472002
471361
|
const _component_el_tree = resolveComponent("el-tree");
|
|
472003
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
472004
|
-
createElementVNode("div", _hoisted_2$
|
|
472005
|
-
createElementVNode("div", _hoisted_3$
|
|
471362
|
+
return openBlock(), createElementBlock("div", _hoisted_1$d, [
|
|
471363
|
+
createElementVNode("div", _hoisted_2$c, [
|
|
471364
|
+
createElementVNode("div", _hoisted_3$c, [
|
|
472006
471365
|
_cache[2] || (_cache[2] = createElementVNode("span", { class: "toolbar-title" }, "分组管理:", -1)),
|
|
472007
471366
|
createVNode$1(_component_el_button, {
|
|
472008
471367
|
type: "primary",
|
|
@@ -472025,9 +471384,9 @@ const _sfc_main$e = {
|
|
|
472025
471384
|
_: 1
|
|
472026
471385
|
})
|
|
472027
471386
|
]),
|
|
472028
|
-
createElementVNode("div", _hoisted_4$
|
|
471387
|
+
createElementVNode("div", _hoisted_4$b, "共" + toDisplayString(groups.value.length) + "条数据", 1)
|
|
472029
471388
|
]),
|
|
472030
|
-
createElementVNode("div", _hoisted_5$
|
|
471389
|
+
createElementVNode("div", _hoisted_5$b, [
|
|
472031
471390
|
groups.value.length ? (openBlock(), createBlock(_component_el_tree, {
|
|
472032
471391
|
key: 0,
|
|
472033
471392
|
data: groups.value,
|
|
@@ -472038,27 +471397,27 @@ const _sfc_main$e = {
|
|
|
472038
471397
|
class: "tree-component"
|
|
472039
471398
|
}, {
|
|
472040
471399
|
default: withCtx(({ data }) => [
|
|
472041
|
-
createElementVNode("div", _hoisted_6$
|
|
471400
|
+
createElementVNode("div", _hoisted_6$b, [
|
|
472042
471401
|
_cache[3] || (_cache[3] = createElementVNode("i", { class: "i-carbon-folder node-icon" }, null, -1)),
|
|
472043
471402
|
createElementVNode("span", null, toDisplayString(data.label), 1)
|
|
472044
471403
|
])
|
|
472045
471404
|
]),
|
|
472046
471405
|
_: 1
|
|
472047
|
-
}, 8, ["data"])) : (openBlock(), createElementBlock("div", _hoisted_7$
|
|
471406
|
+
}, 8, ["data"])) : (openBlock(), createElementBlock("div", _hoisted_7$8, "暂无数据"))
|
|
472048
471407
|
])
|
|
472049
471408
|
]);
|
|
472050
471409
|
};
|
|
472051
471410
|
}
|
|
472052
471411
|
};
|
|
472053
|
-
const ListTab = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
472054
|
-
const _hoisted_1$
|
|
472055
|
-
const _hoisted_2$
|
|
472056
|
-
const _hoisted_3$
|
|
472057
|
-
const _hoisted_4$
|
|
472058
|
-
const _hoisted_5$
|
|
472059
|
-
const _hoisted_6$
|
|
472060
|
-
const _hoisted_7$
|
|
472061
|
-
const _sfc_main$
|
|
471412
|
+
const ListTab = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-1cc008ea"]]);
|
|
471413
|
+
const _hoisted_1$c = { class: "dialog-content" };
|
|
471414
|
+
const _hoisted_2$b = { class: "toolbar" };
|
|
471415
|
+
const _hoisted_3$b = { class: "toolbar-left" };
|
|
471416
|
+
const _hoisted_4$a = ["onClick"];
|
|
471417
|
+
const _hoisted_5$a = { class: "toolbar-right" };
|
|
471418
|
+
const _hoisted_6$a = ["onClick"];
|
|
471419
|
+
const _hoisted_7$7 = { class: "content-area" };
|
|
471420
|
+
const _sfc_main$e = {
|
|
472062
471421
|
__name: "index",
|
|
472063
471422
|
setup(__props) {
|
|
472064
471423
|
const visible = ref(true);
|
|
@@ -472120,9 +471479,9 @@ const _sfc_main$d = {
|
|
|
472120
471479
|
onClose: handleClose
|
|
472121
471480
|
}, {
|
|
472122
471481
|
default: withCtx(() => [
|
|
472123
|
-
createElementVNode("div", _hoisted_1$
|
|
472124
|
-
createElementVNode("div", _hoisted_2$
|
|
472125
|
-
createElementVNode("div", _hoisted_3$
|
|
471482
|
+
createElementVNode("div", _hoisted_1$c, [
|
|
471483
|
+
createElementVNode("div", _hoisted_2$b, [
|
|
471484
|
+
createElementVNode("div", _hoisted_3$b, [
|
|
472126
471485
|
(openBlock(), createElementBlock(Fragment, null, renderList(leftTools, (tool, idx) => {
|
|
472127
471486
|
return createVNode$1(_component_el_tooltip, {
|
|
472128
471487
|
key: idx,
|
|
@@ -472134,13 +471493,13 @@ const _sfc_main$d = {
|
|
|
472134
471493
|
createElementVNode("i", {
|
|
472135
471494
|
class: normalizeClass([tool.icon, "tool-icon"]),
|
|
472136
471495
|
onClick: ($event) => handleToolClick(tool, "left", idx)
|
|
472137
|
-
}, null, 10, _hoisted_4$
|
|
471496
|
+
}, null, 10, _hoisted_4$a)
|
|
472138
471497
|
]),
|
|
472139
471498
|
_: 2
|
|
472140
471499
|
}, 1032, ["content"]);
|
|
472141
471500
|
}), 64))
|
|
472142
471501
|
]),
|
|
472143
|
-
createElementVNode("div", _hoisted_5$
|
|
471502
|
+
createElementVNode("div", _hoisted_5$a, [
|
|
472144
471503
|
(openBlock(), createElementBlock(Fragment, null, renderList(rightTools, (tool, idx) => {
|
|
472145
471504
|
return createVNode$1(_component_el_tooltip, {
|
|
472146
471505
|
key: idx,
|
|
@@ -472152,14 +471511,14 @@ const _sfc_main$d = {
|
|
|
472152
471511
|
createElementVNode("i", {
|
|
472153
471512
|
class: normalizeClass([tool.icon, "tool-icon"]),
|
|
472154
471513
|
onClick: ($event) => handleToolClick(tool, "right", idx)
|
|
472155
|
-
}, null, 10, _hoisted_6$
|
|
471514
|
+
}, null, 10, _hoisted_6$a)
|
|
472156
471515
|
]),
|
|
472157
471516
|
_: 2
|
|
472158
471517
|
}, 1032, ["content"]);
|
|
472159
471518
|
}), 64))
|
|
472160
471519
|
])
|
|
472161
471520
|
]),
|
|
472162
|
-
createElementVNode("div", _hoisted_7$
|
|
471521
|
+
createElementVNode("div", _hoisted_7$7, [
|
|
472163
471522
|
createVNode$1(_component_el_tabs, {
|
|
472164
471523
|
modelValue: activeTab.value,
|
|
472165
471524
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => activeTab.value = $event),
|
|
@@ -472196,9 +471555,9 @@ const _sfc_main$d = {
|
|
|
472196
471555
|
};
|
|
472197
471556
|
}
|
|
472198
471557
|
};
|
|
472199
|
-
const MapDrawingDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
472200
|
-
const _hoisted_1$
|
|
472201
|
-
const _sfc_main$
|
|
471558
|
+
const MapDrawingDialog = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-16fc7a81"]]);
|
|
471559
|
+
const _hoisted_1$b = { class: "flex" };
|
|
471560
|
+
const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
472202
471561
|
__name: "MapToolbar",
|
|
472203
471562
|
props: {
|
|
472204
471563
|
config: { default: void 0 },
|
|
@@ -472389,7 +471748,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
|
|
|
472389
471748
|
class: "main-menu-item"
|
|
472390
471749
|
}, {
|
|
472391
471750
|
title: withCtx(() => [
|
|
472392
|
-
createElementVNode("div", _hoisted_1$
|
|
471751
|
+
createElementVNode("div", _hoisted_1$b, [
|
|
472393
471752
|
createElementVNode("div", null, [
|
|
472394
471753
|
createVNode$1(_component_el_icon, null, {
|
|
472395
471754
|
default: withCtx(() => [
|
|
@@ -472612,30 +471971,30 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
|
|
|
472612
471971
|
};
|
|
472613
471972
|
}
|
|
472614
471973
|
});
|
|
472615
|
-
const MapToolbar = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
472616
|
-
const _hoisted_1$
|
|
472617
|
-
const _hoisted_2$
|
|
472618
|
-
const _hoisted_3$
|
|
471974
|
+
const MapToolbar = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__scopeId", "data-v-f8ee8458"]]);
|
|
471975
|
+
const _hoisted_1$a = { class: "search-input-wrapper" };
|
|
471976
|
+
const _hoisted_2$a = { class: "search-results" };
|
|
471977
|
+
const _hoisted_3$a = {
|
|
472619
471978
|
key: 0,
|
|
472620
471979
|
class: "search-section"
|
|
472621
471980
|
};
|
|
472622
|
-
const _hoisted_4$
|
|
472623
|
-
const _hoisted_5$
|
|
472624
|
-
const _hoisted_6$
|
|
472625
|
-
const _hoisted_7$
|
|
472626
|
-
const _hoisted_8$
|
|
472627
|
-
const _hoisted_9$
|
|
471981
|
+
const _hoisted_4$9 = { class: "section-title" };
|
|
471982
|
+
const _hoisted_5$9 = ["onClick"];
|
|
471983
|
+
const _hoisted_6$9 = { class: "item-content" };
|
|
471984
|
+
const _hoisted_7$6 = { class: "item-name" };
|
|
471985
|
+
const _hoisted_8$6 = { class: "item-address" };
|
|
471986
|
+
const _hoisted_9$6 = {
|
|
472628
471987
|
key: 1,
|
|
472629
471988
|
class: "search-section"
|
|
472630
471989
|
};
|
|
472631
|
-
const _hoisted_10$
|
|
471990
|
+
const _hoisted_10$6 = {
|
|
472632
471991
|
key: 0,
|
|
472633
471992
|
class: "section-title"
|
|
472634
471993
|
};
|
|
472635
|
-
const _hoisted_11$
|
|
472636
|
-
const _hoisted_12$
|
|
472637
|
-
const _hoisted_13$
|
|
472638
|
-
const _hoisted_14$
|
|
471994
|
+
const _hoisted_11$6 = { class: "result-count" };
|
|
471995
|
+
const _hoisted_12$6 = ["onClick"];
|
|
471996
|
+
const _hoisted_13$6 = { class: "item-content" };
|
|
471997
|
+
const _hoisted_14$5 = ["innerHTML"];
|
|
472639
471998
|
const _hoisted_15$4 = ["innerHTML"];
|
|
472640
471999
|
const _hoisted_16$4 = {
|
|
472641
472000
|
key: 0,
|
|
@@ -472649,7 +472008,7 @@ const _hoisted_18$3 = {
|
|
|
472649
472008
|
key: 0,
|
|
472650
472009
|
class: "no-results"
|
|
472651
472010
|
};
|
|
472652
|
-
const _sfc_main$
|
|
472011
|
+
const _sfc_main$c = /* @__PURE__ */ defineComponent({
|
|
472653
472012
|
__name: "MapSearch",
|
|
472654
472013
|
props: {
|
|
472655
472014
|
config: { default: () => ({
|
|
@@ -472870,7 +472229,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
472870
472229
|
class: normalizeClass(["map-search-container", [`position-${position2.value}`, { "search-active": isSearchActive.value }]])
|
|
472871
472230
|
}, [
|
|
472872
472231
|
renderSlot(_ctx.$slots, "prepend", {}, void 0, true),
|
|
472873
|
-
createElementVNode("div", _hoisted_1$
|
|
472232
|
+
createElementVNode("div", _hoisted_1$a, [
|
|
472874
472233
|
renderSlot(_ctx.$slots, "search-input", {
|
|
472875
472234
|
searchQuery: searchQuery.value,
|
|
472876
472235
|
placeholder: placeholder.value,
|
|
@@ -472926,7 +472285,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
472926
472285
|
}, 8, ["modelValue", "placeholder"])
|
|
472927
472286
|
], true)
|
|
472928
472287
|
]),
|
|
472929
|
-
withDirectives(createElementVNode("div", _hoisted_2$
|
|
472288
|
+
withDirectives(createElementVNode("div", _hoisted_2$a, [
|
|
472930
472289
|
renderSlot(_ctx.$slots, "search-results", {
|
|
472931
472290
|
searchResults: searchResults.value,
|
|
472932
472291
|
searchHistory: searchHistory.value,
|
|
@@ -472938,9 +472297,9 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
472938
472297
|
clearHistory,
|
|
472939
472298
|
highlightText
|
|
472940
472299
|
}, () => [
|
|
472941
|
-
showHistory.value && searchHistory.value.length > 0 && !searchQuery.value ? (openBlock(), createElementBlock("div", _hoisted_3$
|
|
472300
|
+
showHistory.value && searchHistory.value.length > 0 && !searchQuery.value ? (openBlock(), createElementBlock("div", _hoisted_3$a, [
|
|
472942
472301
|
renderSlot(_ctx.$slots, "history-title", { clearHistory }, () => [
|
|
472943
|
-
createElementVNode("div", _hoisted_4$
|
|
472302
|
+
createElementVNode("div", _hoisted_4$9, [
|
|
472944
472303
|
_cache[2] || (_cache[2] = createElementVNode("span", null, "搜索历史", -1)),
|
|
472945
472304
|
createVNode$1(unref(ElButton), {
|
|
472946
472305
|
type: "text",
|
|
@@ -472972,22 +472331,22 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
472972
472331
|
]),
|
|
472973
472332
|
_: 1
|
|
472974
472333
|
}),
|
|
472975
|
-
createElementVNode("div", _hoisted_6$
|
|
472976
|
-
createElementVNode("div", _hoisted_7$
|
|
472977
|
-
createElementVNode("div", _hoisted_8$
|
|
472334
|
+
createElementVNode("div", _hoisted_6$9, [
|
|
472335
|
+
createElementVNode("div", _hoisted_7$6, toDisplayString(item.name), 1),
|
|
472336
|
+
createElementVNode("div", _hoisted_8$6, toDisplayString(item.address), 1)
|
|
472978
472337
|
])
|
|
472979
|
-
], 10, _hoisted_5$
|
|
472338
|
+
], 10, _hoisted_5$9)
|
|
472980
472339
|
], true);
|
|
472981
472340
|
}), 128))
|
|
472982
472341
|
])) : createCommentVNode("", true),
|
|
472983
|
-
searchResults.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_9$
|
|
472342
|
+
searchResults.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_9$6, [
|
|
472984
472343
|
renderSlot(_ctx.$slots, "results-title", {
|
|
472985
472344
|
searchQuery: searchQuery.value,
|
|
472986
472345
|
resultsCount: searchResults.value.length
|
|
472987
472346
|
}, () => [
|
|
472988
|
-
searchQuery.value ? (openBlock(), createElementBlock("div", _hoisted_10$
|
|
472347
|
+
searchQuery.value ? (openBlock(), createElementBlock("div", _hoisted_10$6, [
|
|
472989
472348
|
_cache[3] || (_cache[3] = createElementVNode("span", null, "搜索结果", -1)),
|
|
472990
|
-
createElementVNode("span", _hoisted_11$
|
|
472349
|
+
createElementVNode("span", _hoisted_11$6, "(" + toDisplayString(searchResults.value.length) + ")", 1)
|
|
472991
472350
|
])) : createCommentVNode("", true)
|
|
472992
472351
|
], true),
|
|
472993
472352
|
(openBlock(true), createElementBlock(Fragment, null, renderList(displayResults.value, (result, index2) => {
|
|
@@ -473010,11 +472369,11 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
473010
472369
|
]),
|
|
473011
472370
|
_: 1
|
|
473012
472371
|
}),
|
|
473013
|
-
createElementVNode("div", _hoisted_13$
|
|
472372
|
+
createElementVNode("div", _hoisted_13$6, [
|
|
473014
472373
|
createElementVNode("div", {
|
|
473015
472374
|
class: "item-name",
|
|
473016
472375
|
innerHTML: highlightText(result.name, searchQuery.value)
|
|
473017
|
-
}, null, 8, _hoisted_14$
|
|
472376
|
+
}, null, 8, _hoisted_14$5),
|
|
473018
472377
|
createElementVNode("div", {
|
|
473019
472378
|
class: "item-address",
|
|
473020
472379
|
innerHTML: highlightText(result.address, searchQuery.value)
|
|
@@ -473022,7 +472381,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
473022
472381
|
result.type ? (openBlock(), createElementBlock("div", _hoisted_16$4, toDisplayString(result.type), 1)) : createCommentVNode("", true)
|
|
473023
472382
|
]),
|
|
473024
472383
|
result.confidence ? (openBlock(), createElementBlock("div", _hoisted_17$3, toDisplayString(Math.round(result.confidence * 100)) + "%", 1)) : createCommentVNode("", true)
|
|
473025
|
-
], 10, _hoisted_12$
|
|
472384
|
+
], 10, _hoisted_12$6)
|
|
473026
472385
|
], true);
|
|
473027
472386
|
}), 128))
|
|
473028
472387
|
])) : createCommentVNode("", true),
|
|
@@ -473050,8 +472409,8 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
473050
472409
|
};
|
|
473051
472410
|
}
|
|
473052
472411
|
});
|
|
473053
|
-
const MapSearch = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
473054
|
-
const _sfc_main$
|
|
472412
|
+
const MapSearch = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-3547f7a5"]]);
|
|
472413
|
+
const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
473055
472414
|
__name: "index",
|
|
473056
472415
|
props: {
|
|
473057
472416
|
config: {},
|
|
@@ -473597,21 +472956,21 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
|
473597
472956
|
};
|
|
473598
472957
|
}
|
|
473599
472958
|
});
|
|
473600
|
-
const MapControls = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
473601
|
-
const _hoisted_1$
|
|
473602
|
-
const _hoisted_2$
|
|
473603
|
-
const _hoisted_3$
|
|
473604
|
-
const _hoisted_4$
|
|
473605
|
-
const _hoisted_5$
|
|
473606
|
-
const _hoisted_6$
|
|
473607
|
-
const _hoisted_7$
|
|
473608
|
-
const _hoisted_8$
|
|
473609
|
-
const _hoisted_9$
|
|
473610
|
-
const _hoisted_10$
|
|
473611
|
-
const _hoisted_11$
|
|
473612
|
-
const _hoisted_12$
|
|
473613
|
-
const _hoisted_13$
|
|
473614
|
-
const _hoisted_14$
|
|
472959
|
+
const MapControls = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-45410a30"]]);
|
|
472960
|
+
const _hoisted_1$9 = { class: "flex items-center justify-between px-4 py-3 border-b border-gray-200 bg-gray-50 rounded-t-lg" };
|
|
472961
|
+
const _hoisted_2$9 = { class: "panel-actions" };
|
|
472962
|
+
const _hoisted_3$9 = { class: "panel-content max-h-125 overflow-y-auto" };
|
|
472963
|
+
const _hoisted_4$8 = { class: "p-2" };
|
|
472964
|
+
const _hoisted_5$8 = { class: "legend-content p-2" };
|
|
472965
|
+
const _hoisted_6$8 = { key: 0 };
|
|
472966
|
+
const _hoisted_7$5 = { class: "text-xs text-gray-600" };
|
|
472967
|
+
const _hoisted_8$5 = { key: 1 };
|
|
472968
|
+
const _hoisted_9$5 = { class: "text-xs text-gray-600" };
|
|
472969
|
+
const _hoisted_10$5 = { key: 2 };
|
|
472970
|
+
const _hoisted_11$5 = { class: "relative mb-2" };
|
|
472971
|
+
const _hoisted_12$5 = { class: "flex justify-between mt-1 text-xs text-gray-500" };
|
|
472972
|
+
const _hoisted_13$5 = { class: "text-center text-xs text-gray-500" };
|
|
472973
|
+
const _hoisted_14$4 = { key: 3 };
|
|
473615
472974
|
const _hoisted_15$3 = { class: "flex-1 text-xs text-gray-600" };
|
|
473616
472975
|
const _hoisted_16$3 = {
|
|
473617
472976
|
key: 4,
|
|
@@ -473626,7 +472985,7 @@ const _hoisted_19$2 = {
|
|
|
473626
472985
|
key: 1,
|
|
473627
472986
|
class: "py-10 px-5 text-center"
|
|
473628
472987
|
};
|
|
473629
|
-
const _sfc_main$
|
|
472988
|
+
const _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
473630
472989
|
__name: "LegendPanel",
|
|
473631
472990
|
props: {
|
|
473632
472991
|
position: { default: "right" },
|
|
@@ -473822,9 +473181,9 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
473822
473181
|
class: normalizeClass(["custom-legend-box absolute bg-white rounded-lg bottom-40px shadow-lg transition-all duration-300 max-h-[calc(100vh-40px)] overflow-hidden z-1000", { "legend-collapsed": isCollapsed.value }]),
|
|
473823
473182
|
style: normalizeStyle$1(panelStyle.value)
|
|
473824
473183
|
}, [
|
|
473825
|
-
createElementVNode("div", _hoisted_1$
|
|
473184
|
+
createElementVNode("div", _hoisted_1$9, [
|
|
473826
473185
|
_cache[1] || (_cache[1] = createElementVNode("h3", { class: "m-0 text-sm font-semibold text-gray-800" }, "图例", -1)),
|
|
473827
|
-
createElementVNode("div", _hoisted_2$
|
|
473186
|
+
createElementVNode("div", _hoisted_2$9, [
|
|
473828
473187
|
createVNode$1(_component_el_button, {
|
|
473829
473188
|
link: "",
|
|
473830
473189
|
size: "small",
|
|
@@ -473833,8 +473192,8 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
473833
473192
|
}, null, 8, ["icon"])
|
|
473834
473193
|
])
|
|
473835
473194
|
]),
|
|
473836
|
-
createElementVNode("div", _hoisted_3$
|
|
473837
|
-
createElementVNode("div", _hoisted_4$
|
|
473195
|
+
createElementVNode("div", _hoisted_3$9, [
|
|
473196
|
+
createElementVNode("div", _hoisted_4$8, [
|
|
473838
473197
|
visibleLegends.value.length > 0 ? (openBlock(), createBlock(_component_el_collapse, {
|
|
473839
473198
|
key: 0,
|
|
473840
473199
|
modelValue: activeNames.value,
|
|
@@ -473850,8 +473209,8 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
473850
473209
|
class: "legend-item"
|
|
473851
473210
|
}, {
|
|
473852
473211
|
default: withCtx(() => [
|
|
473853
|
-
createElementVNode("div", _hoisted_5$
|
|
473854
|
-
legend.type === "symbol" ? (openBlock(), createElementBlock("div", _hoisted_6$
|
|
473212
|
+
createElementVNode("div", _hoisted_5$8, [
|
|
473213
|
+
legend.type === "symbol" ? (openBlock(), createElementBlock("div", _hoisted_6$8, [
|
|
473855
473214
|
(openBlock(true), createElementBlock(Fragment, null, renderList(legend.items, (item) => {
|
|
473856
473215
|
return openBlock(), createElementBlock("div", {
|
|
473857
473216
|
key: item.value,
|
|
@@ -473861,10 +473220,10 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
473861
473220
|
class: "w-4 h-4 mr-2 border border-gray-300",
|
|
473862
473221
|
style: normalizeStyle$1(getSymbolStyle(item))
|
|
473863
473222
|
}, null, 4),
|
|
473864
|
-
createElementVNode("span", _hoisted_7$
|
|
473223
|
+
createElementVNode("span", _hoisted_7$5, toDisplayString(item.label), 1)
|
|
473865
473224
|
]);
|
|
473866
473225
|
}), 128))
|
|
473867
|
-
])) : legend.type === "color" ? (openBlock(), createElementBlock("div", _hoisted_8$
|
|
473226
|
+
])) : legend.type === "color" ? (openBlock(), createElementBlock("div", _hoisted_8$5, [
|
|
473868
473227
|
(openBlock(true), createElementBlock(Fragment, null, renderList(legend.items, (item) => {
|
|
473869
473228
|
return openBlock(), createElementBlock("div", {
|
|
473870
473229
|
key: item.value,
|
|
@@ -473874,22 +473233,22 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
473874
473233
|
class: "w-4 h-4 mr-2 border border-gray-300 rounded-sm",
|
|
473875
473234
|
style: normalizeStyle$1({ backgroundColor: item.color })
|
|
473876
473235
|
}, null, 4),
|
|
473877
|
-
createElementVNode("span", _hoisted_9$
|
|
473236
|
+
createElementVNode("span", _hoisted_9$5, toDisplayString(item.label), 1)
|
|
473878
473237
|
]);
|
|
473879
473238
|
}), 128))
|
|
473880
|
-
])) : legend.type === "gradient" ? (openBlock(), createElementBlock("div", _hoisted_10$
|
|
473881
|
-
createElementVNode("div", _hoisted_11$
|
|
473239
|
+
])) : legend.type === "gradient" ? (openBlock(), createElementBlock("div", _hoisted_10$5, [
|
|
473240
|
+
createElementVNode("div", _hoisted_11$5, [
|
|
473882
473241
|
createElementVNode("div", {
|
|
473883
473242
|
class: "w-full h-5 border border-gray-300 rounded-sm",
|
|
473884
473243
|
style: normalizeStyle$1(getGradientStyle(legend))
|
|
473885
473244
|
}, null, 4),
|
|
473886
|
-
createElementVNode("div", _hoisted_12$
|
|
473245
|
+
createElementVNode("div", _hoisted_12$5, [
|
|
473887
473246
|
createElementVNode("span", null, toDisplayString(legend.min), 1),
|
|
473888
473247
|
createElementVNode("span", null, toDisplayString(legend.max), 1)
|
|
473889
473248
|
])
|
|
473890
473249
|
]),
|
|
473891
|
-
createElementVNode("div", _hoisted_13$
|
|
473892
|
-
])) : legend.type === "category" ? (openBlock(), createElementBlock("div", _hoisted_14$
|
|
473250
|
+
createElementVNode("div", _hoisted_13$5, toDisplayString(legend.unit || ""), 1)
|
|
473251
|
+
])) : legend.type === "category" ? (openBlock(), createElementBlock("div", _hoisted_14$4, [
|
|
473893
473252
|
(openBlock(true), createElementBlock(Fragment, null, renderList(legend.items, (item) => {
|
|
473894
473253
|
return openBlock(), createElementBlock("div", {
|
|
473895
473254
|
key: item.value,
|
|
@@ -473926,7 +473285,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
473926
473285
|
};
|
|
473927
473286
|
}
|
|
473928
473287
|
});
|
|
473929
|
-
const LegendPanel = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
473288
|
+
const LegendPanel = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__scopeId", "data-v-e505d907"]]);
|
|
473930
473289
|
class ConfigLoader {
|
|
473931
473290
|
/**
|
|
473932
473291
|
* 从URL加载配置文件
|
|
@@ -474828,20 +474187,20 @@ class LayerConfigManager {
|
|
|
474828
474187
|
console.log("批量更新结果:", results);
|
|
474829
474188
|
}
|
|
474830
474189
|
}
|
|
474831
|
-
const _hoisted_1$
|
|
474832
|
-
const _hoisted_2$
|
|
474833
|
-
const _hoisted_3$
|
|
474834
|
-
const _hoisted_4$
|
|
474835
|
-
const _hoisted_5$
|
|
474836
|
-
const _hoisted_6$
|
|
474837
|
-
const _hoisted_7$
|
|
474838
|
-
const _hoisted_8$
|
|
474839
|
-
const _hoisted_9$
|
|
474840
|
-
const _hoisted_10$
|
|
474841
|
-
const _hoisted_11$
|
|
474842
|
-
const _hoisted_12$
|
|
474843
|
-
const _hoisted_13$
|
|
474844
|
-
const _hoisted_14$
|
|
474190
|
+
const _hoisted_1$8 = { class: "filter-panel" };
|
|
474191
|
+
const _hoisted_2$8 = { class: "config-section" };
|
|
474192
|
+
const _hoisted_3$8 = { class: "config-item" };
|
|
474193
|
+
const _hoisted_4$7 = { class: "value-text" };
|
|
474194
|
+
const _hoisted_5$7 = { class: "config-item" };
|
|
474195
|
+
const _hoisted_6$7 = { class: "value-text" };
|
|
474196
|
+
const _hoisted_7$4 = { class: "config-item" };
|
|
474197
|
+
const _hoisted_8$4 = { class: "value-text" };
|
|
474198
|
+
const _hoisted_9$4 = { class: "config-item" };
|
|
474199
|
+
const _hoisted_10$4 = { class: "value-text" };
|
|
474200
|
+
const _hoisted_11$4 = { class: "config-section" };
|
|
474201
|
+
const _hoisted_12$4 = { class: "config-item" };
|
|
474202
|
+
const _hoisted_13$4 = { class: "value-text" };
|
|
474203
|
+
const _hoisted_14$3 = { class: "config-item" };
|
|
474845
474204
|
const _hoisted_15$2 = { class: "value-text" };
|
|
474846
474205
|
const _hoisted_16$2 = { class: "config-item" };
|
|
474847
474206
|
const _hoisted_17$1 = { class: "value-text" };
|
|
@@ -474849,7 +474208,7 @@ const _hoisted_18$1 = { class: "config-item" };
|
|
|
474849
474208
|
const _hoisted_19$1 = { class: "value-text" };
|
|
474850
474209
|
const _hoisted_20$1 = { class: "config-section" };
|
|
474851
474210
|
const _hoisted_21$1 = { class: "preset-buttons" };
|
|
474852
|
-
const _sfc_main$
|
|
474211
|
+
const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
474853
474212
|
__name: "FilterPanel",
|
|
474854
474213
|
props: {
|
|
474855
474214
|
filters: {}
|
|
@@ -474869,10 +474228,10 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
474869
474228
|
return (_ctx, _cache) => {
|
|
474870
474229
|
const _component_el_slider = resolveComponent("el-slider");
|
|
474871
474230
|
const _component_el_button = resolveComponent("el-button");
|
|
474872
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
474873
|
-
createElementVNode("div", _hoisted_2$
|
|
474231
|
+
return openBlock(), createElementBlock("div", _hoisted_1$8, [
|
|
474232
|
+
createElementVNode("div", _hoisted_2$8, [
|
|
474874
474233
|
_cache[15] || (_cache[15] = createElementVNode("h5", null, "色彩调整", -1)),
|
|
474875
|
-
createElementVNode("div", _hoisted_3$
|
|
474234
|
+
createElementVNode("div", _hoisted_3$8, [
|
|
474876
474235
|
_cache[11] || (_cache[11] = createElementVNode("label", null, "色相:", -1)),
|
|
474877
474236
|
createVNode$1(_component_el_slider, {
|
|
474878
474237
|
modelValue: _ctx.filters.hue,
|
|
@@ -474882,9 +474241,9 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
474882
474241
|
step: 1,
|
|
474883
474242
|
onInput: handleFilterChange
|
|
474884
474243
|
}, null, 8, ["modelValue"]),
|
|
474885
|
-
createElementVNode("span", _hoisted_4$
|
|
474244
|
+
createElementVNode("span", _hoisted_4$7, toDisplayString(_ctx.filters.hue) + "°", 1)
|
|
474886
474245
|
]),
|
|
474887
|
-
createElementVNode("div", _hoisted_5$
|
|
474246
|
+
createElementVNode("div", _hoisted_5$7, [
|
|
474888
474247
|
_cache[12] || (_cache[12] = createElementVNode("label", null, "饱和度:", -1)),
|
|
474889
474248
|
createVNode$1(_component_el_slider, {
|
|
474890
474249
|
modelValue: _ctx.filters.saturate,
|
|
@@ -474894,9 +474253,9 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
474894
474253
|
step: 1,
|
|
474895
474254
|
onInput: handleFilterChange
|
|
474896
474255
|
}, null, 8, ["modelValue"]),
|
|
474897
|
-
createElementVNode("span", _hoisted_6$
|
|
474256
|
+
createElementVNode("span", _hoisted_6$7, toDisplayString(_ctx.filters.saturate) + "%", 1)
|
|
474898
474257
|
]),
|
|
474899
|
-
createElementVNode("div", _hoisted_7$
|
|
474258
|
+
createElementVNode("div", _hoisted_7$4, [
|
|
474900
474259
|
_cache[13] || (_cache[13] = createElementVNode("label", null, "亮度:", -1)),
|
|
474901
474260
|
createVNode$1(_component_el_slider, {
|
|
474902
474261
|
modelValue: _ctx.filters.brightness,
|
|
@@ -474906,9 +474265,9 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
474906
474265
|
step: 1,
|
|
474907
474266
|
onInput: handleFilterChange
|
|
474908
474267
|
}, null, 8, ["modelValue"]),
|
|
474909
|
-
createElementVNode("span", _hoisted_8$
|
|
474268
|
+
createElementVNode("span", _hoisted_8$4, toDisplayString(_ctx.filters.brightness) + "%", 1)
|
|
474910
474269
|
]),
|
|
474911
|
-
createElementVNode("div", _hoisted_9$
|
|
474270
|
+
createElementVNode("div", _hoisted_9$4, [
|
|
474912
474271
|
_cache[14] || (_cache[14] = createElementVNode("label", null, "对比度:", -1)),
|
|
474913
474272
|
createVNode$1(_component_el_slider, {
|
|
474914
474273
|
modelValue: _ctx.filters.contrast,
|
|
@@ -474918,12 +474277,12 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
474918
474277
|
step: 1,
|
|
474919
474278
|
onInput: handleFilterChange
|
|
474920
474279
|
}, null, 8, ["modelValue"]),
|
|
474921
|
-
createElementVNode("span", _hoisted_10$
|
|
474280
|
+
createElementVNode("span", _hoisted_10$4, toDisplayString(_ctx.filters.contrast) + "%", 1)
|
|
474922
474281
|
])
|
|
474923
474282
|
]),
|
|
474924
|
-
createElementVNode("div", _hoisted_11$
|
|
474283
|
+
createElementVNode("div", _hoisted_11$4, [
|
|
474925
474284
|
_cache[20] || (_cache[20] = createElementVNode("h5", null, "特殊效果", -1)),
|
|
474926
|
-
createElementVNode("div", _hoisted_12$
|
|
474285
|
+
createElementVNode("div", _hoisted_12$4, [
|
|
474927
474286
|
_cache[16] || (_cache[16] = createElementVNode("label", null, "模糊:", -1)),
|
|
474928
474287
|
createVNode$1(_component_el_slider, {
|
|
474929
474288
|
modelValue: _ctx.filters.blur,
|
|
@@ -474933,9 +474292,9 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
474933
474292
|
step: 0.1,
|
|
474934
474293
|
onInput: handleFilterChange
|
|
474935
474294
|
}, null, 8, ["modelValue"]),
|
|
474936
|
-
createElementVNode("span", _hoisted_13$
|
|
474295
|
+
createElementVNode("span", _hoisted_13$4, toDisplayString(_ctx.filters.blur) + "px", 1)
|
|
474937
474296
|
]),
|
|
474938
|
-
createElementVNode("div", _hoisted_14$
|
|
474297
|
+
createElementVNode("div", _hoisted_14$3, [
|
|
474939
474298
|
_cache[17] || (_cache[17] = createElementVNode("label", null, "棕褐色:", -1)),
|
|
474940
474299
|
createVNode$1(_component_el_slider, {
|
|
474941
474300
|
modelValue: _ctx.filters.sepia,
|
|
@@ -475019,27 +474378,27 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
475019
474378
|
};
|
|
475020
474379
|
}
|
|
475021
474380
|
});
|
|
475022
|
-
const FilterPanel = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
475023
|
-
const _hoisted_1$
|
|
475024
|
-
const _hoisted_2$
|
|
475025
|
-
const _hoisted_3$
|
|
474381
|
+
const FilterPanel = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__scopeId", "data-v-c78acf80"]]);
|
|
474382
|
+
const _hoisted_1$7 = { class: "style-config-panel" };
|
|
474383
|
+
const _hoisted_2$7 = { class: "panel-title" };
|
|
474384
|
+
const _hoisted_3$7 = {
|
|
475026
474385
|
key: 0,
|
|
475027
474386
|
class: "config-section"
|
|
475028
474387
|
};
|
|
475029
|
-
const _hoisted_4$
|
|
475030
|
-
const _hoisted_5$
|
|
475031
|
-
const _hoisted_6$
|
|
475032
|
-
const _hoisted_7$
|
|
475033
|
-
const _hoisted_8$
|
|
474388
|
+
const _hoisted_4$6 = { class: "config-item" };
|
|
474389
|
+
const _hoisted_5$6 = { class: "value-text" };
|
|
474390
|
+
const _hoisted_6$6 = { class: "config-item" };
|
|
474391
|
+
const _hoisted_7$3 = { class: "value-text" };
|
|
474392
|
+
const _hoisted_8$3 = {
|
|
475034
474393
|
key: 1,
|
|
475035
474394
|
class: "config-section"
|
|
475036
474395
|
};
|
|
475037
|
-
const _hoisted_9$
|
|
475038
|
-
const _hoisted_10$
|
|
475039
|
-
const _hoisted_11$
|
|
475040
|
-
const _hoisted_12$
|
|
475041
|
-
const _hoisted_13$
|
|
475042
|
-
const _sfc_main$
|
|
474396
|
+
const _hoisted_9$3 = { class: "config-item" };
|
|
474397
|
+
const _hoisted_10$3 = { class: "config-item" };
|
|
474398
|
+
const _hoisted_11$3 = { class: "config-item" };
|
|
474399
|
+
const _hoisted_12$3 = { class: "config-item" };
|
|
474400
|
+
const _hoisted_13$3 = { class: "panel-actions" };
|
|
474401
|
+
const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
475043
474402
|
__name: "LayerStyleConfig",
|
|
475044
474403
|
props: {
|
|
475045
474404
|
layerData: {}
|
|
@@ -475070,11 +474429,11 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475070
474429
|
const _component_el_select = resolveComponent("el-select");
|
|
475071
474430
|
const _component_el_switch = resolveComponent("el-switch");
|
|
475072
474431
|
const _component_el_button = resolveComponent("el-button");
|
|
475073
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
475074
|
-
createElementVNode("h4", _hoisted_2$
|
|
475075
|
-
isClusterLayer.value ? (openBlock(), createElementBlock("div", _hoisted_3$
|
|
474432
|
+
return openBlock(), createElementBlock("div", _hoisted_1$7, [
|
|
474433
|
+
createElementVNode("h4", _hoisted_2$7, toDisplayString(_ctx.layerData.label) + " - 样式配置", 1),
|
|
474434
|
+
isClusterLayer.value ? (openBlock(), createElementBlock("div", _hoisted_3$7, [
|
|
475076
474435
|
_cache[8] || (_cache[8] = createElementVNode("h5", null, "聚合配置", -1)),
|
|
475077
|
-
createElementVNode("div", _hoisted_4$
|
|
474436
|
+
createElementVNode("div", _hoisted_4$6, [
|
|
475078
474437
|
_cache[6] || (_cache[6] = createElementVNode("label", null, "聚合距离:", -1)),
|
|
475079
474438
|
createVNode$1(_component_el_slider, {
|
|
475080
474439
|
modelValue: _ctx.layerData.clusterDistance,
|
|
@@ -475084,9 +474443,9 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475084
474443
|
size: "small",
|
|
475085
474444
|
onInput: handleClusterDistanceChange
|
|
475086
474445
|
}, null, 8, ["modelValue"]),
|
|
475087
|
-
createElementVNode("span", _hoisted_5$
|
|
474446
|
+
createElementVNode("span", _hoisted_5$6, toDisplayString(_ctx.layerData.clusterDistance) + "px", 1)
|
|
475088
474447
|
]),
|
|
475089
|
-
createElementVNode("div", _hoisted_6$
|
|
474448
|
+
createElementVNode("div", _hoisted_6$6, [
|
|
475090
474449
|
_cache[7] || (_cache[7] = createElementVNode("label", null, "最小距离:", -1)),
|
|
475091
474450
|
createVNode$1(_component_el_slider, {
|
|
475092
474451
|
modelValue: _ctx.layerData.minDistance,
|
|
@@ -475096,12 +474455,12 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475096
474455
|
size: "small",
|
|
475097
474456
|
onInput: handleClusterDistanceChange
|
|
475098
474457
|
}, null, 8, ["modelValue"]),
|
|
475099
|
-
createElementVNode("span", _hoisted_7$
|
|
474458
|
+
createElementVNode("span", _hoisted_7$3, toDisplayString(_ctx.layerData.minDistance) + "px", 1)
|
|
475100
474459
|
])
|
|
475101
474460
|
])) : createCommentVNode("", true),
|
|
475102
|
-
isSuperMapLayer.value ? (openBlock(), createElementBlock("div", _hoisted_8$
|
|
474461
|
+
isSuperMapLayer.value ? (openBlock(), createElementBlock("div", _hoisted_8$3, [
|
|
475103
474462
|
_cache[13] || (_cache[13] = createElementVNode("h5", null, "SuperMap配置", -1)),
|
|
475104
|
-
createElementVNode("div", _hoisted_9$
|
|
474463
|
+
createElementVNode("div", _hoisted_9$3, [
|
|
475105
474464
|
_cache[9] || (_cache[9] = createElementVNode("label", null, "图片格式:", -1)),
|
|
475106
474465
|
createVNode$1(_component_el_select, {
|
|
475107
474466
|
modelValue: _ctx.layerData.format,
|
|
@@ -475126,7 +474485,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475126
474485
|
_: 1
|
|
475127
474486
|
}, 8, ["modelValue"])
|
|
475128
474487
|
]),
|
|
475129
|
-
createElementVNode("div", _hoisted_10$
|
|
474488
|
+
createElementVNode("div", _hoisted_10$3, [
|
|
475130
474489
|
_cache[10] || (_cache[10] = createElementVNode("label", null, "透明度支持:", -1)),
|
|
475131
474490
|
createVNode$1(_component_el_switch, {
|
|
475132
474491
|
modelValue: _ctx.layerData.transparent,
|
|
@@ -475135,7 +474494,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475135
474494
|
onChange: handleSuperMapConfigChange
|
|
475136
474495
|
}, null, 8, ["modelValue"])
|
|
475137
474496
|
]),
|
|
475138
|
-
createElementVNode("div", _hoisted_11$
|
|
474497
|
+
createElementVNode("div", _hoisted_11$3, [
|
|
475139
474498
|
_cache[11] || (_cache[11] = createElementVNode("label", null, "缓存启用:", -1)),
|
|
475140
474499
|
createVNode$1(_component_el_switch, {
|
|
475141
474500
|
modelValue: _ctx.layerData.cacheEnabled,
|
|
@@ -475144,7 +474503,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475144
474503
|
onChange: handleSuperMapConfigChange
|
|
475145
474504
|
}, null, 8, ["modelValue"])
|
|
475146
474505
|
]),
|
|
475147
|
-
createElementVNode("div", _hoisted_12$
|
|
474506
|
+
createElementVNode("div", _hoisted_12$3, [
|
|
475148
474507
|
_cache[12] || (_cache[12] = createElementVNode("label", null, "自动获取元数据:", -1)),
|
|
475149
474508
|
createVNode$1(_component_el_switch, {
|
|
475150
474509
|
modelValue: _ctx.layerData.autoFetchMetadata,
|
|
@@ -475154,7 +474513,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475154
474513
|
}, null, 8, ["modelValue"])
|
|
475155
474514
|
])
|
|
475156
474515
|
])) : createCommentVNode("", true),
|
|
475157
|
-
createElementVNode("div", _hoisted_13$
|
|
474516
|
+
createElementVNode("div", _hoisted_13$3, [
|
|
475158
474517
|
createVNode$1(_component_el_button, {
|
|
475159
474518
|
size: "small",
|
|
475160
474519
|
onClick: handleReset
|
|
@@ -475169,17 +474528,17 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475169
474528
|
};
|
|
475170
474529
|
}
|
|
475171
474530
|
});
|
|
475172
|
-
const LayerStyleConfig = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
475173
|
-
const _hoisted_1$
|
|
474531
|
+
const LayerStyleConfig = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__scopeId", "data-v-21ab8d8c"]]);
|
|
474532
|
+
const _hoisted_1$6 = {
|
|
475174
474533
|
key: 0,
|
|
475175
474534
|
class: "group-node"
|
|
475176
474535
|
};
|
|
475177
|
-
const _hoisted_2$
|
|
475178
|
-
const _hoisted_3$
|
|
475179
|
-
const _hoisted_4$
|
|
475180
|
-
const _hoisted_5$
|
|
475181
|
-
const _hoisted_6$
|
|
475182
|
-
const _sfc_main$
|
|
474536
|
+
const _hoisted_2$6 = { class: "font-medium" };
|
|
474537
|
+
const _hoisted_3$6 = { class: "layer-info" };
|
|
474538
|
+
const _hoisted_4$5 = { class: "layer-name" };
|
|
474539
|
+
const _hoisted_5$5 = { class: "opacity-control" };
|
|
474540
|
+
const _hoisted_6$5 = { class: "opacity-value" };
|
|
474541
|
+
const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
475183
474542
|
__name: "LayerTreeNode",
|
|
475184
474543
|
props: {
|
|
475185
474544
|
data: {},
|
|
@@ -475217,14 +474576,14 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
475217
474576
|
onDblclick: _cache[6] || (_cache[6] = withModifiers(() => {
|
|
475218
474577
|
}, ["stop"]))
|
|
475219
474578
|
}, [
|
|
475220
|
-
_ctx.data.type === "group" ? (openBlock(), createElementBlock("div", _hoisted_1$
|
|
474579
|
+
_ctx.data.type === "group" ? (openBlock(), createElementBlock("div", _hoisted_1$6, [
|
|
475221
474580
|
createVNode$1(_component_el_icon, { class: "mr-2" }, {
|
|
475222
474581
|
default: withCtx(() => [
|
|
475223
474582
|
createVNode$1(unref(folder_opened_default))
|
|
475224
474583
|
]),
|
|
475225
474584
|
_: 1
|
|
475226
474585
|
}),
|
|
475227
|
-
createElementVNode("span", _hoisted_2$
|
|
474586
|
+
createElementVNode("span", _hoisted_2$6, toDisplayString(_ctx.data.label), 1)
|
|
475228
474587
|
])) : (openBlock(), createElementBlock("div", {
|
|
475229
474588
|
key: 1,
|
|
475230
474589
|
class: "layer-item",
|
|
@@ -475232,7 +474591,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
475232
474591
|
onClick: _cache[5] || (_cache[5] = withModifiers(() => {
|
|
475233
474592
|
}, ["stop"]))
|
|
475234
474593
|
}, [
|
|
475235
|
-
createElementVNode("div", _hoisted_3$
|
|
474594
|
+
createElementVNode("div", _hoisted_3$6, [
|
|
475236
474595
|
createVNode$1(_component_el_icon, {
|
|
475237
474596
|
class: normalizeClass(["layer-icon", layerIconClass.value])
|
|
475238
474597
|
}, {
|
|
@@ -475241,7 +474600,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
475241
474600
|
]),
|
|
475242
474601
|
_: 1
|
|
475243
474602
|
}, 8, ["class"]),
|
|
475244
|
-
createElementVNode("span", _hoisted_4$
|
|
474603
|
+
createElementVNode("span", _hoisted_4$5, toDisplayString(_ctx.data.label), 1)
|
|
475245
474604
|
]),
|
|
475246
474605
|
createElementVNode("div", {
|
|
475247
474606
|
class: "layer-controls",
|
|
@@ -475252,7 +474611,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
475252
474611
|
onDblclick: _cache[4] || (_cache[4] = withModifiers(() => {
|
|
475253
474612
|
}, ["stop"]))
|
|
475254
474613
|
}, [
|
|
475255
|
-
createElementVNode("div", _hoisted_5$
|
|
474614
|
+
createElementVNode("div", _hoisted_5$5, [
|
|
475256
474615
|
createVNode$1(_component_el_slider, {
|
|
475257
474616
|
modelValue: _ctx.data.layerData.opacity,
|
|
475258
474617
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.data.layerData.opacity = $event),
|
|
@@ -475262,7 +474621,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
475262
474621
|
class: "opacity-slider",
|
|
475263
474622
|
onInput: handleOpacityChange
|
|
475264
474623
|
}, null, 8, ["modelValue"]),
|
|
475265
|
-
createElementVNode("span", _hoisted_6$
|
|
474624
|
+
createElementVNode("span", _hoisted_6$5, toDisplayString(_ctx.data.layerData.opacity) + "%", 1)
|
|
475266
474625
|
]),
|
|
475267
474626
|
createVNode$1(_component_el_popover, {
|
|
475268
474627
|
placement: "left",
|
|
@@ -475306,14 +474665,14 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
475306
474665
|
};
|
|
475307
474666
|
}
|
|
475308
474667
|
});
|
|
475309
|
-
const LayerTreeNode = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
475310
|
-
const _hoisted_1$
|
|
475311
|
-
const _hoisted_2$
|
|
475312
|
-
const _hoisted_3$
|
|
475313
|
-
const _hoisted_4$
|
|
475314
|
-
const _hoisted_5$
|
|
475315
|
-
const _hoisted_6$
|
|
475316
|
-
const _sfc_main$
|
|
474668
|
+
const LayerTreeNode = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__scopeId", "data-v-7bff1f66"]]);
|
|
474669
|
+
const _hoisted_1$5 = { class: "flex-1 overflow-y-auto p-4" };
|
|
474670
|
+
const _hoisted_2$5 = { class: "global-style-panel" };
|
|
474671
|
+
const _hoisted_3$5 = { class: "config-section" };
|
|
474672
|
+
const _hoisted_4$4 = { class: "config-item" };
|
|
474673
|
+
const _hoisted_5$4 = { class: "current-style-display" };
|
|
474674
|
+
const _hoisted_6$4 = { class: "style-preview" };
|
|
474675
|
+
const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
475317
474676
|
__name: "LayerPanel",
|
|
475318
474677
|
props: {
|
|
475319
474678
|
modelValue: { type: Boolean }
|
|
@@ -475918,7 +475277,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
475918
475277
|
name: "layers"
|
|
475919
475278
|
}, {
|
|
475920
475279
|
default: withCtx(() => [
|
|
475921
|
-
createElementVNode("div", _hoisted_1$
|
|
475280
|
+
createElementVNode("div", _hoisted_1$5, [
|
|
475922
475281
|
createVNode$1(_component_el_tree, {
|
|
475923
475282
|
ref_key: "treeRef",
|
|
475924
475283
|
ref: treeRef,
|
|
@@ -475958,7 +475317,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
475958
475317
|
name: "style"
|
|
475959
475318
|
}, {
|
|
475960
475319
|
default: withCtx(() => [
|
|
475961
|
-
createElementVNode("div", _hoisted_2$
|
|
475320
|
+
createElementVNode("div", _hoisted_2$5, [
|
|
475962
475321
|
createVNode$1(_component_el_tabs, {
|
|
475963
475322
|
modelValue: activeStyleTab.value,
|
|
475964
475323
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => activeStyleTab.value = $event),
|
|
@@ -475984,8 +475343,8 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
475984
475343
|
name: "custom"
|
|
475985
475344
|
}, {
|
|
475986
475345
|
default: withCtx(() => [
|
|
475987
|
-
createElementVNode("div", _hoisted_3$
|
|
475988
|
-
createElementVNode("div", _hoisted_4$
|
|
475346
|
+
createElementVNode("div", _hoisted_3$5, [
|
|
475347
|
+
createElementVNode("div", _hoisted_4$4, [
|
|
475989
475348
|
createVNode$1(unref(ElInput), {
|
|
475990
475349
|
modelValue: unref(globalCustomCss),
|
|
475991
475350
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(globalCustomCss) ? globalCustomCss.value = $event : null),
|
|
@@ -475996,9 +475355,9 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
475996
475355
|
onInput: updateGlobalStyle
|
|
475997
475356
|
}, null, 8, ["modelValue"])
|
|
475998
475357
|
]),
|
|
475999
|
-
createElementVNode("div", _hoisted_5$
|
|
475358
|
+
createElementVNode("div", _hoisted_5$4, [
|
|
476000
475359
|
_cache[4] || (_cache[4] = createElementVNode("h6", null, "当前应用的样式:", -1)),
|
|
476001
|
-
createElementVNode("div", _hoisted_6$
|
|
475360
|
+
createElementVNode("div", _hoisted_6$4, toDisplayString(currentAppliedStyle.value), 1)
|
|
476002
475361
|
])
|
|
476003
475362
|
])
|
|
476004
475363
|
]),
|
|
@@ -476020,7 +475379,256 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
476020
475379
|
};
|
|
476021
475380
|
}
|
|
476022
475381
|
});
|
|
476023
|
-
const LayerPanel = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
475382
|
+
const LayerPanel = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-2456ec00"]]);
|
|
475383
|
+
const _hoisted_1$4 = {
|
|
475384
|
+
key: 2,
|
|
475385
|
+
class: "tooltip-content"
|
|
475386
|
+
};
|
|
475387
|
+
const _hoisted_2$4 = ["innerHTML"];
|
|
475388
|
+
const _hoisted_3$4 = { key: 1 };
|
|
475389
|
+
const _hoisted_4$3 = { class: "layer-title" };
|
|
475390
|
+
const _hoisted_5$3 = ["onClick"];
|
|
475391
|
+
const _hoisted_6$3 = { class: "property-key" };
|
|
475392
|
+
const _hoisted_7$2 = { class: "property-value" };
|
|
475393
|
+
const _hoisted_8$2 = ["innerHTML"];
|
|
475394
|
+
const _hoisted_9$2 = { key: 3 };
|
|
475395
|
+
const _hoisted_10$2 = { class: "mb-3 pb-2 border-b border-gray-200 text-xs text-gray-600" };
|
|
475396
|
+
const _hoisted_11$2 = { class: "m-0 mb-2 text-sm font-semibold text-gray-800 border-b border-gray-200 pb-1" };
|
|
475397
|
+
const _hoisted_12$2 = ["onClick"];
|
|
475398
|
+
const _hoisted_13$2 = { class: "font-medium text-gray-700 min-w-20 mr-2" };
|
|
475399
|
+
const _hoisted_14$2 = { class: "text-gray-800 break-all flex-1" };
|
|
475400
|
+
const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
475401
|
+
__name: "index",
|
|
475402
|
+
props: {
|
|
475403
|
+
config: {},
|
|
475404
|
+
template: { type: [String, Object, Array, Function], default: void 0 },
|
|
475405
|
+
visible: { type: Boolean },
|
|
475406
|
+
tooltipData: {},
|
|
475407
|
+
coordinate: {},
|
|
475408
|
+
pixel: {}
|
|
475409
|
+
},
|
|
475410
|
+
emits: ["data-loaded", "show", "hide", "feature-click"],
|
|
475411
|
+
setup(__props, { emit: __emit }) {
|
|
475412
|
+
const props = __props;
|
|
475413
|
+
const emit = __emit;
|
|
475414
|
+
const tooltipRef = ref();
|
|
475415
|
+
const formattedData = computed(() => {
|
|
475416
|
+
if (!props.tooltipData)
|
|
475417
|
+
return null;
|
|
475418
|
+
return props.tooltipData.map((layerData) => ({
|
|
475419
|
+
...layerData,
|
|
475420
|
+
features: layerData.features.map((feature2) => ({
|
|
475421
|
+
...feature2,
|
|
475422
|
+
properties: feature2.properties || feature2
|
|
475423
|
+
}))
|
|
475424
|
+
}));
|
|
475425
|
+
});
|
|
475426
|
+
const templateData = computed(() => ({
|
|
475427
|
+
data: props.tooltipData || [],
|
|
475428
|
+
formattedData: formattedData.value,
|
|
475429
|
+
coordinate: props.coordinate,
|
|
475430
|
+
pixel: props.pixel
|
|
475431
|
+
}));
|
|
475432
|
+
const renderedTemplate = computed(() => {
|
|
475433
|
+
if (!props.template || !props.tooltipData)
|
|
475434
|
+
return "";
|
|
475435
|
+
if (typeof props.template === "string") {
|
|
475436
|
+
let html = props.template;
|
|
475437
|
+
html = html.replace(/\{\{coordinate\}\}/g, `${props.coordinate[0].toFixed(6)}, ${props.coordinate[1].toFixed(6)}`);
|
|
475438
|
+
html = html.replace(/\{\{layerCount\}\}/g, props.tooltipData.length.toString());
|
|
475439
|
+
return html;
|
|
475440
|
+
}
|
|
475441
|
+
if (typeof props.template === "function") {
|
|
475442
|
+
return props.template(templateData.value);
|
|
475443
|
+
}
|
|
475444
|
+
return "";
|
|
475445
|
+
});
|
|
475446
|
+
const tooltipStyle = computed(() => {
|
|
475447
|
+
var _a3, _b3;
|
|
475448
|
+
const style = {
|
|
475449
|
+
position: "absolute",
|
|
475450
|
+
left: `${props.pixel[0] + (((_a3 = props.config.offset) == null ? void 0 : _a3[0]) || 10)}px`,
|
|
475451
|
+
top: `${props.pixel[1] + (((_b3 = props.config.offset) == null ? void 0 : _b3[1]) || 10)}px`,
|
|
475452
|
+
zIndex: 9999
|
|
475453
|
+
};
|
|
475454
|
+
if (props.config.maxWidth) {
|
|
475455
|
+
style.maxWidth = `${props.config.maxWidth}px`;
|
|
475456
|
+
}
|
|
475457
|
+
if (props.config.maxHeight) {
|
|
475458
|
+
style.maxHeight = `${props.config.maxHeight}px`;
|
|
475459
|
+
}
|
|
475460
|
+
return style;
|
|
475461
|
+
});
|
|
475462
|
+
const formatValue = (value) => {
|
|
475463
|
+
if (value === null || value === void 0)
|
|
475464
|
+
return "-";
|
|
475465
|
+
if (typeof value === "object")
|
|
475466
|
+
return JSON.stringify(value);
|
|
475467
|
+
return String(value);
|
|
475468
|
+
};
|
|
475469
|
+
const hide = () => {
|
|
475470
|
+
emit("hide");
|
|
475471
|
+
};
|
|
475472
|
+
const handleFeatureClick = (feature2, layerData) => {
|
|
475473
|
+
emit("feature-click", feature2, {
|
|
475474
|
+
layerId: layerData.layerId,
|
|
475475
|
+
layerName: layerData.layerName
|
|
475476
|
+
}, props.coordinate);
|
|
475477
|
+
};
|
|
475478
|
+
watch(
|
|
475479
|
+
() => props.visible,
|
|
475480
|
+
(newVisible) => {
|
|
475481
|
+
if (newVisible && props.tooltipData) {
|
|
475482
|
+
emit("show", templateData.value);
|
|
475483
|
+
nextTick(() => {
|
|
475484
|
+
adjustPosition();
|
|
475485
|
+
});
|
|
475486
|
+
} else if (!newVisible) {
|
|
475487
|
+
emit("hide");
|
|
475488
|
+
}
|
|
475489
|
+
}
|
|
475490
|
+
);
|
|
475491
|
+
watch(
|
|
475492
|
+
() => props.tooltipData,
|
|
475493
|
+
(newData) => {
|
|
475494
|
+
if (newData) {
|
|
475495
|
+
emit("data-loaded", newData);
|
|
475496
|
+
}
|
|
475497
|
+
}
|
|
475498
|
+
);
|
|
475499
|
+
const adjustPosition = () => {
|
|
475500
|
+
var _a3, _b3;
|
|
475501
|
+
if (!tooltipRef.value)
|
|
475502
|
+
return;
|
|
475503
|
+
const tooltip = tooltipRef.value;
|
|
475504
|
+
const rect3 = tooltip.getBoundingClientRect();
|
|
475505
|
+
const viewportWidth = window.innerWidth;
|
|
475506
|
+
const viewportHeight = window.innerHeight;
|
|
475507
|
+
let left = props.pixel[0] + (((_a3 = props.config.offset) == null ? void 0 : _a3[0]) || 10);
|
|
475508
|
+
let top = props.pixel[1] + (((_b3 = props.config.offset) == null ? void 0 : _b3[1]) || 10);
|
|
475509
|
+
if (left + rect3.width > viewportWidth) {
|
|
475510
|
+
left = props.pixel[0] - rect3.width - 10;
|
|
475511
|
+
}
|
|
475512
|
+
if (top + rect3.height > viewportHeight) {
|
|
475513
|
+
top = props.pixel[1] - rect3.height - 10;
|
|
475514
|
+
}
|
|
475515
|
+
if (left < 0) {
|
|
475516
|
+
left = 10;
|
|
475517
|
+
}
|
|
475518
|
+
if (top < 0) {
|
|
475519
|
+
top = 10;
|
|
475520
|
+
}
|
|
475521
|
+
tooltip.style.left = `${left}px`;
|
|
475522
|
+
tooltip.style.top = `${top}px`;
|
|
475523
|
+
};
|
|
475524
|
+
const handleClickOutside = (event) => {
|
|
475525
|
+
if (tooltipRef.value && !tooltipRef.value.contains(event.target)) {
|
|
475526
|
+
hide();
|
|
475527
|
+
}
|
|
475528
|
+
};
|
|
475529
|
+
onMounted(() => {
|
|
475530
|
+
document.addEventListener("click", handleClickOutside);
|
|
475531
|
+
});
|
|
475532
|
+
onUnmounted(() => {
|
|
475533
|
+
document.removeEventListener("click", handleClickOutside);
|
|
475534
|
+
});
|
|
475535
|
+
return (_ctx, _cache) => {
|
|
475536
|
+
const _component_el_button = resolveComponent("el-button");
|
|
475537
|
+
return _ctx.visible && _ctx.tooltipData ? (openBlock(), createElementBlock("div", {
|
|
475538
|
+
key: 0,
|
|
475539
|
+
ref_key: "tooltipRef",
|
|
475540
|
+
ref: tooltipRef,
|
|
475541
|
+
class: normalizeClass(["bg-white/95 border border-gray-300 rounded-md shadow-lg p-3 text-sm leading-relaxed max-w-75 max-h-100 overflow-y-auto backdrop-blur-10px relative", _ctx.config.className]),
|
|
475542
|
+
style: normalizeStyle$1(tooltipStyle.value)
|
|
475543
|
+
}, [
|
|
475544
|
+
_ctx.config.showCloseButton ? (openBlock(), createBlock(_component_el_button, {
|
|
475545
|
+
key: 0,
|
|
475546
|
+
class: "absolute top-2 right-2",
|
|
475547
|
+
size: "small",
|
|
475548
|
+
text: "",
|
|
475549
|
+
circle: "",
|
|
475550
|
+
onClick: hide
|
|
475551
|
+
}, {
|
|
475552
|
+
icon: withCtx(() => [..._cache[0] || (_cache[0] = [
|
|
475553
|
+
createElementVNode("span", { class: "text-gray-400 hover:text-gray-600" }, "×", -1)
|
|
475554
|
+
])]),
|
|
475555
|
+
_: 1
|
|
475556
|
+
})) : createCommentVNode("", true),
|
|
475557
|
+
_ctx.$slots.default ? renderSlot(_ctx.$slots, "default", {
|
|
475558
|
+
key: 1,
|
|
475559
|
+
data: _ctx.tooltipData,
|
|
475560
|
+
formattedData: formattedData.value,
|
|
475561
|
+
coordinate: _ctx.coordinate,
|
|
475562
|
+
pixel: _ctx.pixel
|
|
475563
|
+
}) : (openBlock(), createElementBlock("div", _hoisted_1$4, [
|
|
475564
|
+
typeof _ctx.template === "string" ? (openBlock(), createElementBlock("div", {
|
|
475565
|
+
key: 0,
|
|
475566
|
+
innerHTML: renderedTemplate.value
|
|
475567
|
+
}, null, 8, _hoisted_2$4)) : typeof _ctx.template === "object" ? (openBlock(), createElementBlock("div", _hoisted_3$4, [
|
|
475568
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.tooltipData, (layerData, index2) => {
|
|
475569
|
+
return openBlock(), createElementBlock("div", {
|
|
475570
|
+
key: layerData.layerId,
|
|
475571
|
+
class: "layer-info"
|
|
475572
|
+
}, [
|
|
475573
|
+
createElementVNode("h4", _hoisted_4$3, toDisplayString(layerData.layerName), 1),
|
|
475574
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(layerData.features, (feature2, fIndex) => {
|
|
475575
|
+
return openBlock(), createElementBlock("div", {
|
|
475576
|
+
key: fIndex,
|
|
475577
|
+
class: "feature-info",
|
|
475578
|
+
onClick: ($event) => handleFeatureClick(feature2, layerData)
|
|
475579
|
+
}, [
|
|
475580
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(feature2.properties || feature2, (value, key) => {
|
|
475581
|
+
return openBlock(), createElementBlock("div", {
|
|
475582
|
+
key,
|
|
475583
|
+
class: "property-item"
|
|
475584
|
+
}, [
|
|
475585
|
+
createElementVNode("span", _hoisted_6$3, toDisplayString(key) + ":", 1),
|
|
475586
|
+
createElementVNode("span", _hoisted_7$2, toDisplayString(formatValue(value)), 1)
|
|
475587
|
+
]);
|
|
475588
|
+
}), 128))
|
|
475589
|
+
], 8, _hoisted_5$3);
|
|
475590
|
+
}), 128))
|
|
475591
|
+
]);
|
|
475592
|
+
}), 128))
|
|
475593
|
+
])) : typeof _ctx.template === "function" ? (openBlock(), createElementBlock("div", {
|
|
475594
|
+
key: 2,
|
|
475595
|
+
innerHTML: renderedTemplate.value
|
|
475596
|
+
}, null, 8, _hoisted_8$2)) : (openBlock(), createElementBlock("div", _hoisted_9$2, [
|
|
475597
|
+
createElementVNode("div", _hoisted_10$2, [
|
|
475598
|
+
_cache[1] || (_cache[1] = createElementVNode("strong", null, "坐标:", -1)),
|
|
475599
|
+
createTextVNode(" " + toDisplayString(_ctx.coordinate[0].toFixed(6)) + ", " + toDisplayString(_ctx.coordinate[1].toFixed(6)), 1)
|
|
475600
|
+
]),
|
|
475601
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.tooltipData, (layerData, index2) => {
|
|
475602
|
+
return openBlock(), createElementBlock("div", {
|
|
475603
|
+
key: layerData.layerId,
|
|
475604
|
+
class: "mb-4 last-mb-0"
|
|
475605
|
+
}, [
|
|
475606
|
+
createElementVNode("h4", _hoisted_11$2, toDisplayString(layerData.layerName), 1),
|
|
475607
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(layerData.features, (feature2, fIndex) => {
|
|
475608
|
+
return openBlock(), createElementBlock("div", {
|
|
475609
|
+
key: fIndex,
|
|
475610
|
+
class: "mb-3 p-2 bg-gray-50 rounded cursor-pointer transition-colors hover-bg-gray-100 last-mb-0",
|
|
475611
|
+
onClick: ($event) => handleFeatureClick(feature2, layerData)
|
|
475612
|
+
}, [
|
|
475613
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(feature2.properties || feature2, (value, key) => {
|
|
475614
|
+
return openBlock(), createElementBlock("div", {
|
|
475615
|
+
key,
|
|
475616
|
+
class: "flex mb-1 last-mb-0"
|
|
475617
|
+
}, [
|
|
475618
|
+
createElementVNode("span", _hoisted_13$2, toDisplayString(key) + ":", 1),
|
|
475619
|
+
createElementVNode("span", _hoisted_14$2, toDisplayString(formatValue(value)), 1)
|
|
475620
|
+
]);
|
|
475621
|
+
}), 128))
|
|
475622
|
+
], 8, _hoisted_12$2);
|
|
475623
|
+
}), 128))
|
|
475624
|
+
]);
|
|
475625
|
+
}), 128))
|
|
475626
|
+
]))
|
|
475627
|
+
]))
|
|
475628
|
+
], 6)) : createCommentVNode("", true);
|
|
475629
|
+
};
|
|
475630
|
+
}
|
|
475631
|
+
});
|
|
476024
475632
|
const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
476025
475633
|
__name: "BasePopup",
|
|
476026
475634
|
props: {
|
|
@@ -477252,7 +476860,7 @@ function createPopupManager(map2, config) {
|
|
|
477252
476860
|
return new PopupManager(map2, config);
|
|
477253
476861
|
}
|
|
477254
476862
|
const _hoisted_1 = {
|
|
477255
|
-
key:
|
|
476863
|
+
key: 10,
|
|
477256
476864
|
class: "absolute top-15 right-2.5 w-62.5 max-h-75 bg-white rounded-md shadow-lg z-1000 overflow-hidden md:w-50 md:top-20 md:right-1.25"
|
|
477257
476865
|
};
|
|
477258
476866
|
const _hoisted_2 = { class: "flex items-center justify-between px-4 py-3 border-b border-gray-200 bg-gray-50" };
|
|
@@ -477269,6 +476877,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477269
476877
|
config: {},
|
|
477270
476878
|
width: { default: "100%" },
|
|
477271
476879
|
height: { default: "100%" },
|
|
476880
|
+
loading: { type: Boolean },
|
|
477272
476881
|
showToolbar: { type: Boolean, default: void 0 },
|
|
477273
476882
|
showMapInfo: { type: Boolean, default: void 0 },
|
|
477274
476883
|
showLayerPanel: { type: Boolean, default: void 0 },
|
|
@@ -477306,7 +476915,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477306
476915
|
enablePopup: { type: Boolean, default: true },
|
|
477307
476916
|
popupConfig: {}
|
|
477308
476917
|
},
|
|
477309
|
-
emits: ["map-ready", "map-click", "map-dblclick", "map-contextmenu", "map-move", "zoom-change", "feature-info", "tooltip-show", "tooltip-hide", "feature-click", "layer-change", "measurement-change", "tool-action", "search", "search-select", "search-clear", "popup-show", "popup-hide", "popup-close"],
|
|
476918
|
+
emits: ["map-ready", "map-click", "map-dblclick", "map-contextmenu", "map-move", "zoom-change", "feature-info", "tooltip-show", "tooltip-hide", "feature-click", "layer-change", "measurement-change", "measurement-start", "measurement-end", "measurement-result", "context-menu", "tool-action", "search", "search-select", "search-clear", "popup-show", "popup-hide", "popup-close"],
|
|
477310
476919
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
477311
476920
|
const props = __props;
|
|
477312
476921
|
const emit = __emit;
|
|
@@ -477314,6 +476923,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477314
476923
|
const eventBus = ref(createLayerEventBus());
|
|
477315
476924
|
const storage2 = ref(createMapStorage(instanceId.value));
|
|
477316
476925
|
const mapManager = ref(null);
|
|
476926
|
+
const isPickingCoordinate = ref(false);
|
|
476927
|
+
const tooltipData = ref([]);
|
|
476928
|
+
const tooltipVisible = ref(false);
|
|
476929
|
+
const tooltipPosition = ref({ x: 0, y: 0 });
|
|
476930
|
+
const contextMenuVisible = ref(false);
|
|
476931
|
+
const contextMenuPosition = ref({ x: 0, y: 0 });
|
|
476932
|
+
const contextMenuCoordinate = ref([0, 0]);
|
|
477317
476933
|
const mapContainerRef = ref();
|
|
477318
476934
|
const mapToolbarRef = ref();
|
|
477319
476935
|
const mapSearchRef = ref();
|
|
@@ -477520,6 +477136,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477520
477136
|
if (props.enableStorage) {
|
|
477521
477137
|
loadStoredData();
|
|
477522
477138
|
}
|
|
477139
|
+
document.addEventListener("click", handleDocumentClick);
|
|
477523
477140
|
});
|
|
477524
477141
|
onUnmounted(() => {
|
|
477525
477142
|
if (measurementTool.value) {
|
|
@@ -477528,7 +477145,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477528
477145
|
if (popupManager.value) {
|
|
477529
477146
|
popupManager.value.destroy();
|
|
477530
477147
|
}
|
|
477148
|
+
document.removeEventListener("click", handleDocumentClick);
|
|
477531
477149
|
});
|
|
477150
|
+
const handleDocumentClick = (event) => {
|
|
477151
|
+
const target = event.target;
|
|
477152
|
+
if (!target.closest(".context-menu")) {
|
|
477153
|
+
contextMenuVisible.value = false;
|
|
477154
|
+
}
|
|
477155
|
+
};
|
|
477532
477156
|
const loadStoredData = () => {
|
|
477533
477157
|
const storedMeasurements = storage2.value.getMeasurements();
|
|
477534
477158
|
measurementResults.value = storedMeasurements;
|
|
@@ -477596,12 +477220,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477596
477220
|
const onFeatureInfo = (data) => {
|
|
477597
477221
|
emit("feature-info", data);
|
|
477598
477222
|
};
|
|
477599
|
-
const onTooltipShow = (data) => {
|
|
477600
|
-
emit("tooltip-show", data);
|
|
477601
|
-
};
|
|
477602
|
-
const onTooltipHide = () => {
|
|
477603
|
-
emit("tooltip-hide");
|
|
477604
|
-
};
|
|
477605
477223
|
const onFeatureClick = (feature2, layer2, clickCoordinate, mapCoordinate) => {
|
|
477606
477224
|
if (feature2 && layer2 && popupManager.value && clickCoordinate) {
|
|
477607
477225
|
const coordinate = mapCoordinate || clickCoordinate;
|
|
@@ -477680,9 +477298,83 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477680
477298
|
};
|
|
477681
477299
|
const onContextMenu = (coordinate, pixel) => {
|
|
477682
477300
|
var _a3;
|
|
477301
|
+
contextMenuCoordinate.value = coordinate;
|
|
477302
|
+
contextMenuPosition.value = { x: pixel[0], y: pixel[1] };
|
|
477303
|
+
contextMenuVisible.value = true;
|
|
477683
477304
|
if ((_a3 = props.eventCallbacks) == null ? void 0 : _a3.onContextMenu) {
|
|
477684
477305
|
props.eventCallbacks.onContextMenu(coordinate, pixel);
|
|
477685
477306
|
}
|
|
477307
|
+
emit("context-menu", coordinate, pixel);
|
|
477308
|
+
};
|
|
477309
|
+
const onTooltipShow = (coordinate, pixel, data) => {
|
|
477310
|
+
tooltipData.value = data;
|
|
477311
|
+
tooltipPosition.value = { x: pixel[0], y: pixel[1] };
|
|
477312
|
+
tooltipVisible.value = true;
|
|
477313
|
+
emit("tooltip-show", coordinate, pixel, data);
|
|
477314
|
+
};
|
|
477315
|
+
const onTooltipHide = () => {
|
|
477316
|
+
tooltipVisible.value = false;
|
|
477317
|
+
tooltipData.value = [];
|
|
477318
|
+
emit("tooltip-hide");
|
|
477319
|
+
};
|
|
477320
|
+
const onContextMenuVisibleChange = (visible) => {
|
|
477321
|
+
if (!visible) {
|
|
477322
|
+
contextMenuVisible.value = false;
|
|
477323
|
+
}
|
|
477324
|
+
};
|
|
477325
|
+
const copyCoordinate = async () => {
|
|
477326
|
+
try {
|
|
477327
|
+
const [x2, y2] = contextMenuCoordinate.value;
|
|
477328
|
+
const coordText = `${x2.toFixed(6)}, ${y2.toFixed(6)}`;
|
|
477329
|
+
await navigator.clipboard.writeText(coordText);
|
|
477330
|
+
ElMessage.success("坐标已复制到剪贴板");
|
|
477331
|
+
} catch (error2) {
|
|
477332
|
+
ElMessage.error("复制失败");
|
|
477333
|
+
}
|
|
477334
|
+
contextMenuVisible.value = false;
|
|
477335
|
+
};
|
|
477336
|
+
const addMarker = () => {
|
|
477337
|
+
if (mapManager.value) {
|
|
477338
|
+
const markerTool = mapManager.value.getMarkerTool();
|
|
477339
|
+
if (markerTool) {
|
|
477340
|
+
markerTool.addMarker(contextMenuCoordinate.value);
|
|
477341
|
+
ElMessage.success("标记已添加");
|
|
477342
|
+
}
|
|
477343
|
+
}
|
|
477344
|
+
contextMenuVisible.value = false;
|
|
477345
|
+
};
|
|
477346
|
+
const measureFromHere = () => {
|
|
477347
|
+
if (measurementTool.value) {
|
|
477348
|
+
measurementTool.value.startMeasurementFromPoint(contextMenuCoordinate.value);
|
|
477349
|
+
ElMessage.info("请点击地图完成测量");
|
|
477350
|
+
}
|
|
477351
|
+
contextMenuVisible.value = false;
|
|
477352
|
+
};
|
|
477353
|
+
const startCoordinatePicking = () => {
|
|
477354
|
+
isPickingCoordinate.value = true;
|
|
477355
|
+
if (mapManager.value) {
|
|
477356
|
+
const coordinateTool = mapManager.value.getCoordinateTool();
|
|
477357
|
+
if (coordinateTool) {
|
|
477358
|
+
coordinateTool.startPicking();
|
|
477359
|
+
}
|
|
477360
|
+
}
|
|
477361
|
+
};
|
|
477362
|
+
const stopCoordinatePicking = () => {
|
|
477363
|
+
isPickingCoordinate.value = false;
|
|
477364
|
+
if (mapManager.value) {
|
|
477365
|
+
const coordinateTool = mapManager.value.getCoordinateTool();
|
|
477366
|
+
if (coordinateTool) {
|
|
477367
|
+
coordinateTool.stopPicking();
|
|
477368
|
+
}
|
|
477369
|
+
}
|
|
477370
|
+
};
|
|
477371
|
+
const locateToCoordinate = (coordinate) => {
|
|
477372
|
+
if (mapManager.value) {
|
|
477373
|
+
const mapOperationTool = mapManager.value.getMapOperationTool();
|
|
477374
|
+
if (mapOperationTool) {
|
|
477375
|
+
mapOperationTool.locateToCoordinate(coordinate);
|
|
477376
|
+
}
|
|
477377
|
+
}
|
|
477686
477378
|
};
|
|
477687
477379
|
const onToolAction = (data) => {
|
|
477688
477380
|
emit("tool-action", data);
|
|
@@ -477791,6 +477483,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477791
477483
|
var _a3;
|
|
477792
477484
|
return (_a3 = mapManager.value) == null ? void 0 : _a3.getDrawingManager();
|
|
477793
477485
|
}));
|
|
477486
|
+
provide("layerManager", computed(() => {
|
|
477487
|
+
var _a3;
|
|
477488
|
+
return (_a3 = mapManager.value) == null ? void 0 : _a3.getLayerManager();
|
|
477489
|
+
}));
|
|
477490
|
+
provide("markerTool", computed(() => {
|
|
477491
|
+
var _a3;
|
|
477492
|
+
return (_a3 = mapManager.value) == null ? void 0 : _a3.getMarkerTool();
|
|
477493
|
+
}));
|
|
477494
|
+
provide("coordinateTool", computed(() => {
|
|
477495
|
+
var _a3;
|
|
477496
|
+
return (_a3 = mapManager.value) == null ? void 0 : _a3.getCoordinateTool();
|
|
477497
|
+
}));
|
|
477498
|
+
provide("popupManager", popupManager);
|
|
477499
|
+
provide("tooltipData", tooltipData);
|
|
477500
|
+
provide("tooltipVisible", tooltipVisible);
|
|
477794
477501
|
const toggleLayerPanel = () => {
|
|
477795
477502
|
showLayerPanel.value = !showLayerPanel.value;
|
|
477796
477503
|
};
|
|
@@ -477838,40 +477545,161 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477838
477545
|
return popupManager.value.updatePopupPosition(popupId, coordinate);
|
|
477839
477546
|
};
|
|
477840
477547
|
__expose({
|
|
477548
|
+
// 基础地图方法
|
|
477841
477549
|
getMap,
|
|
477550
|
+
getMapManager: () => mapManager.value,
|
|
477551
|
+
updateMapConfig: (config) => {
|
|
477552
|
+
var _a3;
|
|
477553
|
+
return (_a3 = mapContainerRef.value) == null ? void 0 : _a3.updateMapConfig(config);
|
|
477554
|
+
},
|
|
477555
|
+
// 测量相关方法
|
|
477842
477556
|
getMeasurementResults,
|
|
477557
|
+
getMeasurementTool: () => {
|
|
477558
|
+
var _a3;
|
|
477559
|
+
return (_a3 = mapManager.value) == null ? void 0 : _a3.getMeasurementTool();
|
|
477560
|
+
},
|
|
477561
|
+
startMeasurement: (type) => onMeasurementStart(type),
|
|
477843
477562
|
clearAllMeasurements,
|
|
477563
|
+
removeMeasurement,
|
|
477564
|
+
// 清理方法
|
|
477844
477565
|
clearAll,
|
|
477566
|
+
// 面板控制方法
|
|
477845
477567
|
toggleLayerPanel,
|
|
477846
|
-
|
|
477568
|
+
showLayerPanel: () => {
|
|
477569
|
+
showLayerPanel.value = true;
|
|
477570
|
+
},
|
|
477571
|
+
hideLayerPanel: () => {
|
|
477572
|
+
showLayerPanel.value = false;
|
|
477573
|
+
},
|
|
477574
|
+
// 工具提示相关方法
|
|
477575
|
+
showTooltip: onTooltipShow,
|
|
477576
|
+
hideTooltip: onTooltipHide,
|
|
477577
|
+
// 坐标拾取相关方法
|
|
477578
|
+
startCoordinatePicking,
|
|
477579
|
+
stopCoordinatePicking,
|
|
477580
|
+
locateToCoordinate,
|
|
477581
|
+
getCoordinateTool: () => {
|
|
477847
477582
|
var _a3;
|
|
477848
|
-
return (_a3 =
|
|
477583
|
+
return (_a3 = mapManager.value) == null ? void 0 : _a3.getCoordinateTool();
|
|
477849
477584
|
},
|
|
477850
|
-
|
|
477585
|
+
// 右键菜单相关方法
|
|
477586
|
+
onContextMenuVisibleChange,
|
|
477587
|
+
copyCoordinate,
|
|
477588
|
+
addMarker,
|
|
477589
|
+
measureFromHere,
|
|
477590
|
+
// 搜索相关方法
|
|
477591
|
+
searchLocation: (query) => onSearch(query),
|
|
477592
|
+
clearSearchResults: () => onSearchClear(),
|
|
477593
|
+
// 标记工具方法
|
|
477594
|
+
getMarkerTool: () => {
|
|
477851
477595
|
var _a3;
|
|
477852
|
-
return (_a3 =
|
|
477596
|
+
return (_a3 = mapManager.value) == null ? void 0 : _a3.getMarkerTool();
|
|
477597
|
+
},
|
|
477598
|
+
addMarkerAt: (coordinate) => {
|
|
477599
|
+
if (mapManager.value) {
|
|
477600
|
+
const markerTool = mapManager.value.getMarkerTool();
|
|
477601
|
+
if (markerTool) {
|
|
477602
|
+
markerTool.addMarker(coordinate);
|
|
477603
|
+
}
|
|
477604
|
+
}
|
|
477605
|
+
},
|
|
477606
|
+
clearAllMarkers: () => {
|
|
477607
|
+
if (mapManager.value) {
|
|
477608
|
+
const markerTool = mapManager.value.getMarkerTool();
|
|
477609
|
+
if (markerTool) {
|
|
477610
|
+
markerTool.clearMarkers();
|
|
477611
|
+
}
|
|
477612
|
+
}
|
|
477853
477613
|
},
|
|
477854
|
-
|
|
477614
|
+
// 地图操作工具方法
|
|
477615
|
+
getMapOperationTool: () => {
|
|
477855
477616
|
var _a3;
|
|
477856
|
-
return (_a3 =
|
|
477617
|
+
return (_a3 = mapManager.value) == null ? void 0 : _a3.getMapOperationTool();
|
|
477618
|
+
},
|
|
477619
|
+
zoomIn: () => {
|
|
477620
|
+
if (mapManager.value) {
|
|
477621
|
+
const mapOperationTool = mapManager.value.getMapOperationTool();
|
|
477622
|
+
if (mapOperationTool) {
|
|
477623
|
+
mapOperationTool.zoomIn();
|
|
477624
|
+
}
|
|
477625
|
+
}
|
|
477857
477626
|
},
|
|
477858
|
-
|
|
477627
|
+
zoomOut: () => {
|
|
477628
|
+
if (mapManager.value) {
|
|
477629
|
+
const mapOperationTool = mapManager.value.getMapOperationTool();
|
|
477630
|
+
if (mapOperationTool) {
|
|
477631
|
+
mapOperationTool.zoomOut();
|
|
477632
|
+
}
|
|
477633
|
+
}
|
|
477634
|
+
},
|
|
477635
|
+
fitToExtent: (extent3) => {
|
|
477636
|
+
if (mapManager.value) {
|
|
477637
|
+
const mapOperationTool = mapManager.value.getMapOperationTool();
|
|
477638
|
+
if (mapOperationTool) {
|
|
477639
|
+
mapOperationTool.fitToExtent(extent3);
|
|
477640
|
+
}
|
|
477641
|
+
}
|
|
477642
|
+
},
|
|
477643
|
+
// 绘制管理器方法
|
|
477644
|
+
getDrawingManager: () => {
|
|
477859
477645
|
var _a3;
|
|
477860
|
-
return (_a3 = mapContainerRef.value) == null ? void 0 : _a3.
|
|
477646
|
+
return (_a3 = mapContainerRef.value) == null ? void 0 : _a3.getDrawingManager();
|
|
477861
477647
|
},
|
|
477862
|
-
|
|
477863
|
-
updateMapConfig: (config) => {
|
|
477648
|
+
startDrawing: (type) => {
|
|
477864
477649
|
var _a3;
|
|
477865
|
-
|
|
477650
|
+
const drawingManager = (_a3 = mapContainerRef.value) == null ? void 0 : _a3.getDrawingManager();
|
|
477651
|
+
if (drawingManager) {
|
|
477652
|
+
drawingManager.startDrawing(type);
|
|
477653
|
+
}
|
|
477654
|
+
},
|
|
477655
|
+
stopDrawing: () => {
|
|
477656
|
+
var _a3;
|
|
477657
|
+
const drawingManager = (_a3 = mapContainerRef.value) == null ? void 0 : _a3.getDrawingManager();
|
|
477658
|
+
if (drawingManager) {
|
|
477659
|
+
drawingManager.stopDrawing();
|
|
477660
|
+
}
|
|
477661
|
+
},
|
|
477662
|
+
clearDrawings: () => {
|
|
477663
|
+
var _a3;
|
|
477664
|
+
const drawingManager = (_a3 = mapContainerRef.value) == null ? void 0 : _a3.getDrawingManager();
|
|
477665
|
+
if (drawingManager) {
|
|
477666
|
+
drawingManager.clearDrawings();
|
|
477667
|
+
}
|
|
477668
|
+
},
|
|
477669
|
+
// 图层管理器方法
|
|
477670
|
+
getLayerManager: () => {
|
|
477671
|
+
var _a3;
|
|
477672
|
+
return (_a3 = mapContainerRef.value) == null ? void 0 : _a3.getLayerManager();
|
|
477673
|
+
},
|
|
477674
|
+
getEventManager: () => {
|
|
477675
|
+
var _a3;
|
|
477676
|
+
return (_a3 = mapContainerRef.value) == null ? void 0 : _a3.getEventManager();
|
|
477866
477677
|
},
|
|
477867
477678
|
// Popup 相关方法
|
|
477868
477679
|
getPopupManager,
|
|
477869
477680
|
showPopup,
|
|
477870
477681
|
hidePopup,
|
|
477871
477682
|
hideAllPopups,
|
|
477872
|
-
updatePopupPosition
|
|
477683
|
+
updatePopupPosition,
|
|
477684
|
+
// 全屏控制
|
|
477685
|
+
toggleFullscreen: () => {
|
|
477686
|
+
isFullscreen.value = !isFullscreen.value;
|
|
477687
|
+
},
|
|
477688
|
+
enterFullscreen: () => {
|
|
477689
|
+
isFullscreen.value = true;
|
|
477690
|
+
},
|
|
477691
|
+
exitFullscreen: () => {
|
|
477692
|
+
isFullscreen.value = false;
|
|
477693
|
+
},
|
|
477694
|
+
// 状态获取方法
|
|
477695
|
+
isCoordinatePicking: () => isPickingCoordinate.value,
|
|
477696
|
+
isTooltipVisible: () => tooltipVisible.value,
|
|
477697
|
+
isContextMenuVisible: () => contextMenuVisible.value,
|
|
477698
|
+
isLayerPanelVisible: () => showLayerPanel.value,
|
|
477699
|
+
isInFullscreen: () => isFullscreen.value
|
|
477873
477700
|
});
|
|
477874
477701
|
return (_ctx, _cache) => {
|
|
477702
|
+
const _component_el_icon = resolveComponent("el-icon");
|
|
477875
477703
|
const _component_el_button = resolveComponent("el-button");
|
|
477876
477704
|
return openBlock(), createElementBlock("div", {
|
|
477877
477705
|
class: normalizeClass(["relative w-full h-full overflow-hidden", { "fixed top-0 left-0 w-screen h-screen z-9999": isFullscreen.value }])
|
|
@@ -477910,10 +477738,64 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477910
477738
|
formattedData,
|
|
477911
477739
|
coordinate,
|
|
477912
477740
|
pixel
|
|
477913
|
-
})
|
|
477741
|
+
}, void 0, true)
|
|
477914
477742
|
]),
|
|
477915
477743
|
_: 3
|
|
477916
477744
|
}, 8, ["config", "width", "height", "show-map-info", "loading", "tooltip-template"]),
|
|
477745
|
+
tooltipVisible.value ? (openBlock(), createBlock(_sfc_main$5, {
|
|
477746
|
+
key: 0,
|
|
477747
|
+
data: tooltipData.value,
|
|
477748
|
+
position: tooltipPosition.value,
|
|
477749
|
+
template: props.tooltipTemplate,
|
|
477750
|
+
onHide: onTooltipHide
|
|
477751
|
+
}, null, 8, ["data", "position", "template"])) : createCommentVNode("", true),
|
|
477752
|
+
contextMenuVisible.value ? (openBlock(), createElementBlock("div", {
|
|
477753
|
+
key: 1,
|
|
477754
|
+
class: "context-menu",
|
|
477755
|
+
style: normalizeStyle$1({
|
|
477756
|
+
position: "fixed",
|
|
477757
|
+
left: contextMenuPosition.value.x + "px",
|
|
477758
|
+
top: contextMenuPosition.value.y + "px",
|
|
477759
|
+
zIndex: 9999
|
|
477760
|
+
})
|
|
477761
|
+
}, [
|
|
477762
|
+
createElementVNode("div", {
|
|
477763
|
+
class: "context-menu-item",
|
|
477764
|
+
onClick: copyCoordinate
|
|
477765
|
+
}, [
|
|
477766
|
+
createVNode$1(_component_el_icon, null, {
|
|
477767
|
+
default: withCtx(() => [
|
|
477768
|
+
createVNode$1(unref(document_copy_default))
|
|
477769
|
+
]),
|
|
477770
|
+
_: 1
|
|
477771
|
+
}),
|
|
477772
|
+
_cache[2] || (_cache[2] = createTextVNode(" 复制坐标 ", -1))
|
|
477773
|
+
]),
|
|
477774
|
+
createElementVNode("div", {
|
|
477775
|
+
class: "context-menu-item",
|
|
477776
|
+
onClick: addMarker
|
|
477777
|
+
}, [
|
|
477778
|
+
createVNode$1(_component_el_icon, null, {
|
|
477779
|
+
default: withCtx(() => [
|
|
477780
|
+
createVNode$1(unref(location_default))
|
|
477781
|
+
]),
|
|
477782
|
+
_: 1
|
|
477783
|
+
}),
|
|
477784
|
+
_cache[3] || (_cache[3] = createTextVNode(" 添加标记 ", -1))
|
|
477785
|
+
]),
|
|
477786
|
+
createElementVNode("div", {
|
|
477787
|
+
class: "context-menu-item",
|
|
477788
|
+
onClick: measureFromHere
|
|
477789
|
+
}, [
|
|
477790
|
+
createVNode$1(_component_el_icon, null, {
|
|
477791
|
+
default: withCtx(() => [
|
|
477792
|
+
createVNode$1(unref(tools_default))
|
|
477793
|
+
]),
|
|
477794
|
+
_: 1
|
|
477795
|
+
}),
|
|
477796
|
+
_cache[4] || (_cache[4] = createTextVNode(" 从此处测量 ", -1))
|
|
477797
|
+
])
|
|
477798
|
+
], 4)) : createCommentVNode("", true),
|
|
477917
477799
|
withDirectives(createVNode$1(MapToolbar, {
|
|
477918
477800
|
ref_key: "mapToolbarRef",
|
|
477919
477801
|
ref: mapToolbarRef,
|
|
@@ -477953,25 +477835,25 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477953
477835
|
renderSlot(_ctx.$slots, "controls", {
|
|
477954
477836
|
controls,
|
|
477955
477837
|
map: map2.value
|
|
477956
|
-
})
|
|
477838
|
+
}, void 0, true)
|
|
477957
477839
|
]),
|
|
477958
477840
|
_: 3
|
|
477959
477841
|
}, 8, ["config", "position", "direction", "left-offset", "right-offset", "top-offset", "bottom-offset"]), [
|
|
477960
477842
|
[vShow, finalShowControls.value]
|
|
477961
477843
|
]),
|
|
477962
|
-
hasToolbarSlot.value ? renderSlot(_ctx.$slots, "toolbar", { key: 0
|
|
477963
|
-
hasMapInfoSlot.value ? renderSlot(_ctx.$slots, "mapInfo", { key:
|
|
477964
|
-
hasMapInfoSlot.value ? renderSlot(_ctx.$slots, "map-info", { key:
|
|
477844
|
+
hasToolbarSlot.value ? renderSlot(_ctx.$slots, "toolbar", { key: 2 }, void 0, true) : createCommentVNode("", true),
|
|
477845
|
+
hasMapInfoSlot.value ? renderSlot(_ctx.$slots, "mapInfo", { key: 3 }, void 0, true) : createCommentVNode("", true),
|
|
477846
|
+
hasMapInfoSlot.value ? renderSlot(_ctx.$slots, "map-info", { key: 4 }, void 0, true) : createCommentVNode("", true),
|
|
477965
477847
|
finalShowLayerPanel.value ? (openBlock(), createBlock(LayerPanel, {
|
|
477966
|
-
key:
|
|
477848
|
+
key: 5,
|
|
477967
477849
|
modelValue: showLayerPanel.value,
|
|
477968
477850
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => showLayerPanel.value = $event),
|
|
477969
477851
|
onLayerChange
|
|
477970
477852
|
}, null, 8, ["modelValue"])) : createCommentVNode("", true),
|
|
477971
|
-
hasLayerPanelSlot.value ? renderSlot(_ctx.$slots, "layerPanel", { key:
|
|
477972
|
-
hasLayerPanelSlot.value ? renderSlot(_ctx.$slots, "layer-panel", { key:
|
|
477853
|
+
hasLayerPanelSlot.value ? renderSlot(_ctx.$slots, "layerPanel", { key: 6 }, void 0, true) : createCommentVNode("", true),
|
|
477854
|
+
hasLayerPanelSlot.value ? renderSlot(_ctx.$slots, "layer-panel", { key: 7 }, void 0, true) : createCommentVNode("", true),
|
|
477973
477855
|
showLegend.value ? (openBlock(), createBlock(LegendPanel, {
|
|
477974
|
-
key:
|
|
477856
|
+
key: 8,
|
|
477975
477857
|
position: finalLegendPosition.value,
|
|
477976
477858
|
width: finalLegendWidth.value,
|
|
477977
477859
|
collapsible: finalLegendCollapsible.value,
|
|
@@ -477982,17 +477864,17 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477982
477864
|
"top-offset": props.legendTopOffset,
|
|
477983
477865
|
"bottom-offset": props.legendBottomOffset
|
|
477984
477866
|
}, null, 8, ["position", "width", "collapsible", "default-collapsed", "show-only-visible", "left-offset", "right-offset", "top-offset", "bottom-offset"])) : createCommentVNode("", true),
|
|
477985
|
-
hasLegendSlot.value ? renderSlot(_ctx.$slots, "legend", { key:
|
|
477867
|
+
hasLegendSlot.value ? renderSlot(_ctx.$slots, "legend", { key: 9 }, void 0, true) : createCommentVNode("", true),
|
|
477986
477868
|
measurementResults.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_1, [
|
|
477987
477869
|
createElementVNode("div", _hoisted_2, [
|
|
477988
|
-
_cache[
|
|
477870
|
+
_cache[6] || (_cache[6] = createElementVNode("h4", { class: "m-0 text-sm font-semibold text-gray-800" }, "测量结果", -1)),
|
|
477989
477871
|
createVNode$1(_component_el_button, {
|
|
477990
477872
|
link: "",
|
|
477991
477873
|
size: "small",
|
|
477992
477874
|
onClick: clearAllMeasurements,
|
|
477993
477875
|
icon: unref(delete_default)
|
|
477994
477876
|
}, {
|
|
477995
|
-
default: withCtx(() => [..._cache[
|
|
477877
|
+
default: withCtx(() => [..._cache[5] || (_cache[5] = [
|
|
477996
477878
|
createTextVNode(" 清除 ", -1)
|
|
477997
477879
|
])]),
|
|
477998
477880
|
_: 1
|
|
@@ -478029,6 +477911,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
478029
477911
|
};
|
|
478030
477912
|
}
|
|
478031
477913
|
});
|
|
477914
|
+
const CustomOpenlayer = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-4636b3e2"]]);
|
|
478032
477915
|
var u8 = Uint8Array;
|
|
478033
477916
|
var u16 = Uint16Array;
|
|
478034
477917
|
var i32 = Int32Array;
|
|
@@ -486300,7 +486183,7 @@ function(t3) {
|
|
|
486300
486183
|
*/
|
|
486301
486184
|
function(t3) {
|
|
486302
486185
|
function e8() {
|
|
486303
|
-
return (n.canvg ? Promise.resolve(n.canvg) : import("./index.es-
|
|
486186
|
+
return (n.canvg ? Promise.resolve(n.canvg) : import("./index.es-64fea0cf.mjs")).catch(function(t4) {
|
|
486304
486187
|
return Promise.reject(new Error("Could not load canvg: " + t4));
|
|
486305
486188
|
}).then(function(t4) {
|
|
486306
486189
|
return t4.default ? t4.default : t4;
|
|
@@ -495174,22 +495057,22 @@ const getAssetUrl = (path2) => {
|
|
|
495174
495057
|
}
|
|
495175
495058
|
};
|
|
495176
495059
|
const install = (app) => {
|
|
495177
|
-
app.component("CustomOpenlayer",
|
|
495060
|
+
app.component("CustomOpenlayer", CustomOpenlayer);
|
|
495178
495061
|
app.component("CustomDialog", CustomDialog);
|
|
495179
|
-
app.component("SvgIcon", _sfc_main$
|
|
495062
|
+
app.component("SvgIcon", _sfc_main$p);
|
|
495180
495063
|
};
|
|
495181
495064
|
const index = {
|
|
495182
495065
|
install,
|
|
495183
|
-
CustomOpenlayer
|
|
495066
|
+
CustomOpenlayer,
|
|
495184
495067
|
CustomDialog,
|
|
495185
|
-
SvgIcon: _sfc_main$
|
|
495068
|
+
SvgIcon: _sfc_main$p
|
|
495186
495069
|
};
|
|
495187
495070
|
const version = "1.0.0";
|
|
495188
495071
|
export {
|
|
495189
495072
|
ImageDrawingFactory as $,
|
|
495190
495073
|
PointDrawingFactory as A,
|
|
495191
495074
|
BasemapManager as B,
|
|
495192
|
-
|
|
495075
|
+
CustomOpenlayer as C,
|
|
495193
495076
|
DrawingFactoryRegistry as D,
|
|
495194
495077
|
TextDrawingFactory as E,
|
|
495195
495078
|
PointWithTextDrawing as F,
|
|
@@ -495223,8 +495106,8 @@ export {
|
|
|
495223
495106
|
htmlToPDF as a5,
|
|
495224
495107
|
_defineProperty as b,
|
|
495225
495108
|
commonjsGlobal as c,
|
|
495226
|
-
|
|
495227
|
-
_sfc_main$
|
|
495109
|
+
CustomDialog as d,
|
|
495110
|
+
_sfc_main$p as e,
|
|
495228
495111
|
index as f,
|
|
495229
495112
|
getAssetUrl as g,
|
|
495230
495113
|
MapStorage as h,
|