vue-openlayers-plugin 1.0.27 → 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-17db5e28.mjs → index-bff620ad.mjs} +961 -1077
- package/lib/{index.es-04b16fc0.mjs → index.es-64fea0cf.mjs} +1 -1
- package/lib/index.esm.js +3 -3
- package/lib/index.umd.js +1156 -1271
- 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
|
@@ -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",
|
|
@@ -465124,104 +464875,34 @@ class MapManager {
|
|
|
465124
464875
|
this.map = null;
|
|
465125
464876
|
}
|
|
465126
464877
|
}
|
|
465127
|
-
const _hoisted_1$
|
|
465128
|
-
const _hoisted_2$
|
|
465129
|
-
const _hoisted_3$l = { class: "font-medium font-mono text-white" };
|
|
465130
|
-
const _hoisted_4$k = { class: "font-medium font-mono text-white" };
|
|
465131
|
-
const _hoisted_5$k = { class: "font-medium font-mono text-white" };
|
|
465132
|
-
const _hoisted_6$i = {
|
|
464878
|
+
const _hoisted_1$o = ["id"];
|
|
464879
|
+
const _hoisted_2$m = {
|
|
465133
464880
|
class: "absolute top-0 left-0 w-full h-full z-2000",
|
|
465134
464881
|
"element-loading-text": "地图加载中...",
|
|
465135
464882
|
"element-loading-background": "rgba(0, 0, 0, 0.3)"
|
|
465136
464883
|
};
|
|
465137
|
-
const _sfc_main$
|
|
464884
|
+
const _sfc_main$q = /* @__PURE__ */ defineComponent({
|
|
465138
464885
|
__name: "MapContainer",
|
|
465139
464886
|
props: {
|
|
465140
464887
|
config: {},
|
|
465141
464888
|
width: { default: "100%" },
|
|
465142
464889
|
height: { default: "100%" },
|
|
465143
|
-
showToolbar: { type: Boolean, default: void 0 },
|
|
465144
|
-
showMapInfo: { type: Boolean, default: void 0 },
|
|
465145
464890
|
loading: { type: Boolean, default: false },
|
|
465146
|
-
userMarkers: {}
|
|
465147
|
-
tooltipTemplate: {}
|
|
464891
|
+
userMarkers: {}
|
|
465148
464892
|
},
|
|
465149
|
-
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"],
|
|
465150
464894
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
465151
464895
|
const props = __props;
|
|
465152
464896
|
const emit = __emit;
|
|
465153
464897
|
const eventBus = inject("eventBus");
|
|
465154
464898
|
const storage2 = inject("storage");
|
|
465155
464899
|
const mapContainerRef = ref();
|
|
465156
|
-
const contextMenuRef = ref();
|
|
465157
464900
|
const map2 = ref();
|
|
465158
464901
|
const mapId = ref(`map-${Date.now()}`);
|
|
465159
|
-
const measurementType = ref(null);
|
|
465160
|
-
ref(false);
|
|
465161
|
-
const currentCoordinate = ref("0, 0");
|
|
465162
|
-
const currentZoom = ref(0);
|
|
465163
|
-
const currentScale = ref("");
|
|
465164
|
-
const contextMenuCoordinate = ref([0, 0]);
|
|
465165
|
-
ref();
|
|
465166
464902
|
const isCoordinatePicking = ref(false);
|
|
465167
464903
|
const coordinatePickCallback = ref(null);
|
|
465168
|
-
const startCoordinatePick = (callback) => {
|
|
465169
|
-
if (!mapManager.value)
|
|
465170
|
-
return;
|
|
465171
|
-
isCoordinatePicking.value = true;
|
|
465172
|
-
coordinatePickCallback.value = callback;
|
|
465173
|
-
mapManager.value.startCoordinatePick();
|
|
465174
|
-
};
|
|
465175
|
-
const stopCoordinatePick = () => {
|
|
465176
|
-
if (!mapManager.value)
|
|
465177
|
-
return;
|
|
465178
|
-
isCoordinatePicking.value = false;
|
|
465179
|
-
coordinatePickCallback.value = null;
|
|
465180
|
-
mapManager.value.stopCoordinatePick();
|
|
465181
|
-
};
|
|
465182
|
-
const tooltipVisible = ref(false);
|
|
465183
|
-
const tooltipData = ref(null);
|
|
465184
|
-
const tooltipCoordinate = ref([0, 0]);
|
|
465185
|
-
const tooltipPixel = ref([0, 0]);
|
|
465186
464904
|
const mapManager = ref(null);
|
|
465187
464905
|
provide("map", map2);
|
|
465188
|
-
computed(() => ({
|
|
465189
|
-
width: typeof props.width === "number" ? `${props.width}px` : props.width,
|
|
465190
|
-
height: typeof props.height === "number" ? `${props.height}px` : props.height
|
|
465191
|
-
}));
|
|
465192
|
-
computed(() => {
|
|
465193
|
-
var _a3;
|
|
465194
|
-
return props.showToolbar !== void 0 ? props.showToolbar : ((_a3 = props.config.ui) == null ? void 0 : _a3.showToolbar) ?? true;
|
|
465195
|
-
});
|
|
465196
|
-
const finalShowMapInfo = computed(() => {
|
|
465197
|
-
var _a3;
|
|
465198
|
-
return props.showMapInfo !== void 0 ? props.showMapInfo : ((_a3 = props.config.ui) == null ? void 0 : _a3.showMapInfo) ?? true;
|
|
465199
|
-
});
|
|
465200
|
-
const tooltipConfig = computed(() => ({
|
|
465201
|
-
enabled: true,
|
|
465202
|
-
showCloseButton: true,
|
|
465203
|
-
offset: [10, 10],
|
|
465204
|
-
maxWidth: 400,
|
|
465205
|
-
maxHeight: 300,
|
|
465206
|
-
className: "custom-map-tooltip",
|
|
465207
|
-
...props.config.tooltip
|
|
465208
|
-
}));
|
|
465209
|
-
computed(() => ({
|
|
465210
|
-
enabled: true,
|
|
465211
|
-
useMitt: true,
|
|
465212
|
-
enabledEvents: [
|
|
465213
|
-
"map:click",
|
|
465214
|
-
"map:dblclick",
|
|
465215
|
-
"map:contextmenu",
|
|
465216
|
-
"map:pointermove",
|
|
465217
|
-
"map:moveend",
|
|
465218
|
-
"map:zoomchange",
|
|
465219
|
-
"map:featureinfo"
|
|
465220
|
-
],
|
|
465221
|
-
debounceDelay: 100,
|
|
465222
|
-
enableFeatureInfo: tooltipConfig.value.enabled,
|
|
465223
|
-
...props.config.eventManager
|
|
465224
|
-
}));
|
|
465225
464906
|
watch(
|
|
465226
464907
|
() => props.config,
|
|
465227
464908
|
(newConfig) => {
|
|
@@ -465234,63 +464915,12 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465234
464915
|
watch(
|
|
465235
464916
|
() => props.userMarkers,
|
|
465236
464917
|
(newMarkers) => {
|
|
465237
|
-
if (mapManager && newMarkers) {
|
|
465238
|
-
mapManager.setUserMarkers(newMarkers);
|
|
464918
|
+
if (mapManager.value && newMarkers) {
|
|
464919
|
+
mapManager.value.setUserMarkers(newMarkers);
|
|
465239
464920
|
}
|
|
465240
464921
|
},
|
|
465241
464922
|
{ deep: true }
|
|
465242
464923
|
);
|
|
465243
|
-
watch(
|
|
465244
|
-
() => props.config.layers,
|
|
465245
|
-
(newLayers, oldLayers) => {
|
|
465246
|
-
var _a3, _b3;
|
|
465247
|
-
if (!mapManager || !newLayers)
|
|
465248
|
-
return;
|
|
465249
|
-
const layerManager = mapManager.getLayerManager();
|
|
465250
|
-
if (!layerManager)
|
|
465251
|
-
return;
|
|
465252
|
-
if (!oldLayers || newLayers.length !== oldLayers.length) {
|
|
465253
|
-
(_a3 = mapManager.value) == null ? void 0 : _a3.clearLayers();
|
|
465254
|
-
(_b3 = mapManager.value) == null ? void 0 : _b3.addLayers(newLayers);
|
|
465255
|
-
return;
|
|
465256
|
-
}
|
|
465257
|
-
newLayers.forEach((newLayer, index2) => {
|
|
465258
|
-
var _a4, _b4;
|
|
465259
|
-
const oldLayer = oldLayers[index2];
|
|
465260
|
-
if (oldLayer && newLayer.id === oldLayer.id) {
|
|
465261
|
-
const hasChanges = JSON.stringify(newLayer) !== JSON.stringify(oldLayer);
|
|
465262
|
-
if (hasChanges) {
|
|
465263
|
-
console.log(`更新图层 ${newLayer.id} 的配置:`, newLayer);
|
|
465264
|
-
const changedConfig = {};
|
|
465265
|
-
if (JSON.stringify(newLayer.style) !== JSON.stringify(oldLayer.style)) {
|
|
465266
|
-
changedConfig.style = newLayer.style;
|
|
465267
|
-
}
|
|
465268
|
-
if (JSON.stringify(newLayer.filter) !== JSON.stringify(oldLayer.filter)) {
|
|
465269
|
-
changedConfig.filter = newLayer.filter;
|
|
465270
|
-
}
|
|
465271
|
-
if (newLayer.visible !== oldLayer.visible) {
|
|
465272
|
-
changedConfig.visible = newLayer.visible;
|
|
465273
|
-
}
|
|
465274
|
-
if (newLayer.opacity !== oldLayer.opacity) {
|
|
465275
|
-
changedConfig.opacity = newLayer.opacity;
|
|
465276
|
-
}
|
|
465277
|
-
if (newLayer.cssClass !== oldLayer.cssClass) {
|
|
465278
|
-
changedConfig.cssClass = newLayer.cssClass;
|
|
465279
|
-
}
|
|
465280
|
-
if (Object.keys(changedConfig).length > 0) {
|
|
465281
|
-
console.log(`图层 ${newLayer.id} 发生变化的配置:`, changedConfig);
|
|
465282
|
-
layerManager.updateLayerConfig(newLayer.id, changedConfig);
|
|
465283
|
-
}
|
|
465284
|
-
}
|
|
465285
|
-
} else {
|
|
465286
|
-
(_a4 = mapManager.value) == null ? void 0 : _a4.clearLayers();
|
|
465287
|
-
(_b4 = mapManager.value) == null ? void 0 : _b4.addLayers(newLayers);
|
|
465288
|
-
return;
|
|
465289
|
-
}
|
|
465290
|
-
});
|
|
465291
|
-
},
|
|
465292
|
-
{ deep: true }
|
|
465293
|
-
);
|
|
465294
464924
|
onMounted(async () => {
|
|
465295
464925
|
await nextTick();
|
|
465296
464926
|
initMap2();
|
|
@@ -465306,7 +464936,6 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465306
464936
|
}
|
|
465307
464937
|
});
|
|
465308
464938
|
const initMap2 = () => {
|
|
465309
|
-
var _a3;
|
|
465310
464939
|
if (!mapContainerRef.value)
|
|
465311
464940
|
return;
|
|
465312
464941
|
if (!eventBus || !storage2) {
|
|
@@ -465317,12 +464946,6 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465317
464946
|
mapManager.value = new MapManager(props.config, eventBus, storageInstance);
|
|
465318
464947
|
map2.value = mapManager.value.initMap(mapId.value);
|
|
465319
464948
|
bindMapEvents();
|
|
465320
|
-
if (props.config.layers && props.config.layers.length > 0) {
|
|
465321
|
-
(_a3 = mapManager.value.getLayerManager()) == null ? void 0 : _a3.addLayers(props.config.layers);
|
|
465322
|
-
}
|
|
465323
|
-
if (props.userMarkers && props.userMarkers.length > 0) {
|
|
465324
|
-
mapManager.value.setUserMarkers(props.userMarkers);
|
|
465325
|
-
}
|
|
465326
464949
|
emit("map-ready", map2.value);
|
|
465327
464950
|
};
|
|
465328
464951
|
const bindMapEvents = () => {
|
|
@@ -465347,24 +464970,11 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465347
464970
|
onMapMove: (center2, zoom) => {
|
|
465348
464971
|
emit("map-move", center2, zoom);
|
|
465349
464972
|
},
|
|
465350
|
-
onPointerMove: (coordinate) => {
|
|
465351
|
-
currentCoordinate.value = `经度: ${coordinate[0].toFixed(6)}, 纬度: ${coordinate[1].toFixed(6)}`;
|
|
465352
|
-
},
|
|
465353
464973
|
onZoomChange: (zoom, resolution) => {
|
|
465354
|
-
|
|
465355
|
-
currentZoom.value = Math.round(zoom * 100) / 100;
|
|
465356
|
-
const view = (_a3 = map2.value) == null ? void 0 : _a3.getView();
|
|
465357
|
-
if (view) {
|
|
465358
|
-
const units2 = view.getProjection().getUnits();
|
|
465359
|
-
const dpi = 25.4 / 0.28;
|
|
465360
|
-
const mpu = METERS_PER_UNIT$3[units2] || 1;
|
|
465361
|
-
const scale3 = resolution * mpu * 39.37 * dpi;
|
|
465362
|
-
currentScale.value = `1:${Math.round(scale3).toLocaleString()}`;
|
|
465363
|
-
}
|
|
464974
|
+
emit("zoom-change", zoom, resolution);
|
|
465364
464975
|
},
|
|
465365
464976
|
onContextMenu: (coordinate, pixel) => {
|
|
465366
|
-
|
|
465367
|
-
emit("context-menu", coordinate, pixel);
|
|
464977
|
+
emit("map-contextmenu", { coordinate, pixel });
|
|
465368
464978
|
}
|
|
465369
464979
|
});
|
|
465370
464980
|
};
|
|
@@ -465387,157 +464997,17 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465387
464997
|
view.setMaxZoom(config.maxZoom);
|
|
465388
464998
|
}
|
|
465389
464999
|
};
|
|
465390
|
-
|
|
465391
|
-
|
|
465392
|
-
|
|
465393
|
-
|
|
465394
|
-
mapOperationTool.zoomIn();
|
|
465395
|
-
}
|
|
465396
|
-
};
|
|
465397
|
-
const zoomOut = () => {
|
|
465398
|
-
var _a3;
|
|
465399
|
-
const mapOperationTool = (_a3 = mapManager.value) == null ? void 0 : _a3.getMapOperationTool();
|
|
465400
|
-
if (mapOperationTool) {
|
|
465401
|
-
mapOperationTool.zoomOut();
|
|
465402
|
-
}
|
|
465403
|
-
};
|
|
465404
|
-
const fitToExtent = () => {
|
|
465405
|
-
var _a3;
|
|
465406
|
-
const mapOperationTool = (_a3 = mapManager.value) == null ? void 0 : _a3.getMapOperationTool();
|
|
465407
|
-
if (mapOperationTool) {
|
|
465408
|
-
mapOperationTool.fitToInitialExtent();
|
|
465409
|
-
}
|
|
465410
|
-
};
|
|
465411
|
-
const toggleMeasurement = (type) => {
|
|
465412
|
-
var _a3;
|
|
465413
|
-
const measurementTool = (_a3 = mapManager.value) == null ? void 0 : _a3.getMeasurementTool();
|
|
465414
|
-
if (!measurementTool)
|
|
465415
|
-
return;
|
|
465416
|
-
if (measurementType.value === type) {
|
|
465417
|
-
measurementType.value = null;
|
|
465418
|
-
measurementTool.stopMeasurement();
|
|
465419
|
-
} else {
|
|
465420
|
-
measurementType.value = type;
|
|
465421
|
-
emit("measurement-start", type);
|
|
465422
|
-
const onResult = (result) => {
|
|
465423
|
-
emit("measurement-result", result);
|
|
465424
|
-
emit("measurement-end", result);
|
|
465425
|
-
};
|
|
465426
|
-
if (type === "length") {
|
|
465427
|
-
measurementTool.startDistanceMeasurement(onResult);
|
|
465428
|
-
} else if (type === "area") {
|
|
465429
|
-
measurementTool.startAreaMeasurement(onResult);
|
|
465430
|
-
} else if (type === "angle") {
|
|
465431
|
-
measurementTool.startAngleMeasurement(onResult);
|
|
465432
|
-
}
|
|
465433
|
-
}
|
|
465434
|
-
};
|
|
465435
|
-
const clearMeasurements = () => {
|
|
465436
|
-
var _a3;
|
|
465437
|
-
const measurementTool = (_a3 = mapManager.value) == null ? void 0 : _a3.getMeasurementTool();
|
|
465438
|
-
if (measurementTool) {
|
|
465439
|
-
measurementTool.clearMeasurements();
|
|
465440
|
-
}
|
|
465441
|
-
measurementType.value = null;
|
|
465442
|
-
ElMessage.success("测量结果已清除");
|
|
465443
|
-
};
|
|
465444
|
-
const getCoordinateInfo = (coordinate) => {
|
|
465445
|
-
var _a3;
|
|
465446
|
-
const measurementTool = (_a3 = mapManager.value) == null ? void 0 : _a3.getMeasurementTool();
|
|
465447
|
-
if (!measurementTool)
|
|
465448
|
-
return;
|
|
465449
|
-
const onResult = (result) => {
|
|
465450
|
-
emit("measurement-result", result);
|
|
465451
|
-
};
|
|
465452
|
-
measurementTool.startCoordinateMeasurement(onResult);
|
|
465453
|
-
};
|
|
465454
|
-
const onContextMenuVisibleChange = (visible) => {
|
|
465455
|
-
};
|
|
465456
|
-
const copyCoordinate = () => {
|
|
465457
|
-
const coord = contextMenuCoordinate.value;
|
|
465458
|
-
const text2 = `${coord[0].toFixed(6)}, ${coord[1].toFixed(6)}`;
|
|
465459
|
-
navigator.clipboard.writeText(text2).then(() => {
|
|
465460
|
-
ElMessage.success("坐标已复制到剪贴板");
|
|
465461
|
-
}).catch(() => {
|
|
465462
|
-
ElMessage.error("复制失败");
|
|
465463
|
-
});
|
|
465464
|
-
};
|
|
465465
|
-
const addMarker = () => {
|
|
465466
|
-
ElMessage.info("添加标记功能待实现");
|
|
465467
|
-
};
|
|
465468
|
-
const measureFromHere = () => {
|
|
465469
|
-
ElMessage.info("测量功能待实现");
|
|
465470
|
-
};
|
|
465471
|
-
const clearAll = () => {
|
|
465472
|
-
var _a3, _b3, _c2, _d;
|
|
465473
|
-
const measurementTool = (_a3 = mapManager.value) == null ? void 0 : _a3.getMeasurementTool();
|
|
465474
|
-
if (measurementTool) {
|
|
465475
|
-
measurementTool.clearMeasurements();
|
|
465476
|
-
}
|
|
465477
|
-
const mapOperationTool = (_b3 = mapManager.value) == null ? void 0 : _b3.getMapOperationTool();
|
|
465478
|
-
if (mapOperationTool) {
|
|
465479
|
-
mapOperationTool.clearAllGraphics();
|
|
465480
|
-
}
|
|
465481
|
-
const drawingManager = (_c2 = mapManager.value) == null ? void 0 : _c2.getDrawingManager();
|
|
465482
|
-
if (drawingManager) {
|
|
465483
|
-
drawingManager.clearAll();
|
|
465484
|
-
}
|
|
465485
|
-
const markerAdapter = (_d = mapManager.value) == null ? void 0 : _d.getMarkerAdapter();
|
|
465486
|
-
if (markerAdapter) {
|
|
465487
|
-
markerAdapter.clearAllMarkers();
|
|
465488
|
-
}
|
|
465489
|
-
ElMessage.success("已清除所有内容");
|
|
465490
|
-
};
|
|
465491
|
-
const onTooltipShow = (data) => {
|
|
465492
|
-
emit("tooltip-show", data);
|
|
465493
|
-
};
|
|
465494
|
-
const onTooltipHide = () => {
|
|
465495
|
-
tooltipVisible.value = false;
|
|
465496
|
-
tooltipData.value = null;
|
|
465497
|
-
emit("tooltip-hide");
|
|
465498
|
-
};
|
|
465499
|
-
const onFeatureClick = (feature2, layerInfo, coordinate, mapCoordinate) => {
|
|
465500
|
-
emit("feature-click", feature2, layerInfo, coordinate, mapCoordinate);
|
|
465501
|
-
};
|
|
465502
|
-
const onTooltipDataLoaded = (data) => {
|
|
465503
|
-
};
|
|
465504
|
-
const searchLocation = async (query) => {
|
|
465505
|
-
if (!mapManager.value)
|
|
465506
|
-
return [];
|
|
465507
|
-
try {
|
|
465508
|
-
const results = await mapManager.value.searchLocation(query);
|
|
465509
|
-
return results;
|
|
465510
|
-
} catch (error2) {
|
|
465511
|
-
console.error("搜索失败:", error2);
|
|
465512
|
-
ElMessage.error("搜索失败,请重试");
|
|
465513
|
-
return [];
|
|
465514
|
-
}
|
|
465515
|
-
};
|
|
465516
|
-
const clearSearchMarkers = () => {
|
|
465517
|
-
if (mapManager.value) {
|
|
465518
|
-
mapManager.value.clearSearchMarkers();
|
|
465519
|
-
}
|
|
465520
|
-
};
|
|
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
|
+
}));
|
|
465521
465004
|
__expose({
|
|
465522
465005
|
getMap: () => map2.value,
|
|
465523
465006
|
getMapManager: () => mapManager.value,
|
|
465524
|
-
getPluginManager: () => pluginManager,
|
|
465525
|
-
getEventManager: () => {
|
|
465526
|
-
var _a3;
|
|
465527
|
-
return (_a3 = mapManager.value) == null ? void 0 : _a3.getEventManager();
|
|
465528
|
-
},
|
|
465529
|
-
getSearchMarkerManager: () => {
|
|
465530
|
-
var _a3;
|
|
465531
|
-
return (_a3 = mapManager.value) == null ? void 0 : _a3.getSearchMarkerManager();
|
|
465532
|
-
},
|
|
465533
465007
|
getMeasurementTool: () => {
|
|
465534
465008
|
var _a3;
|
|
465535
465009
|
return (_a3 = mapManager.value) == null ? void 0 : _a3.getMeasurementTool();
|
|
465536
465010
|
},
|
|
465537
|
-
getMapOperationTool: () => {
|
|
465538
|
-
var _a3;
|
|
465539
|
-
return (_a3 = mapManager.value) == null ? void 0 : _a3.getMapOperationTool();
|
|
465540
|
-
},
|
|
465541
465011
|
getDrawingManager: () => {
|
|
465542
465012
|
var _a3;
|
|
465543
465013
|
return (_a3 = mapManager.value) == null ? void 0 : _a3.getDrawingManager();
|
|
@@ -465546,33 +465016,13 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465546
465016
|
var _a3;
|
|
465547
465017
|
return (_a3 = mapManager.value) == null ? void 0 : _a3.getLayerManager();
|
|
465548
465018
|
},
|
|
465549
|
-
|
|
465550
|
-
|
|
465551
|
-
|
|
465552
|
-
toggleMeasurement,
|
|
465553
|
-
clearMeasurements,
|
|
465554
|
-
clearAll,
|
|
465555
|
-
getCoordinateInfo,
|
|
465556
|
-
searchLocation,
|
|
465557
|
-
clearSearchMarkers,
|
|
465558
|
-
startCoordinatePick,
|
|
465559
|
-
stopCoordinatePick,
|
|
465560
|
-
updateMapConfig,
|
|
465561
|
-
showTooltip: (coordinate, pixel, data) => {
|
|
465562
|
-
tooltipCoordinate.value = coordinate;
|
|
465563
|
-
tooltipPixel.value = pixel;
|
|
465564
|
-
tooltipData.value = data;
|
|
465565
|
-
tooltipVisible.value = true;
|
|
465019
|
+
getEventManager: () => {
|
|
465020
|
+
var _a3;
|
|
465021
|
+
return (_a3 = mapManager.value) == null ? void 0 : _a3.getEventManager();
|
|
465566
465022
|
},
|
|
465567
|
-
|
|
465568
|
-
tooltipVisible.value = false;
|
|
465569
|
-
tooltipData.value = null;
|
|
465570
|
-
}
|
|
465023
|
+
updateMapConfig
|
|
465571
465024
|
});
|
|
465572
465025
|
return (_ctx, _cache) => {
|
|
465573
|
-
const _component_el_dropdown_item = resolveComponent("el-dropdown-item");
|
|
465574
|
-
const _component_el_dropdown_menu = resolveComponent("el-dropdown-menu");
|
|
465575
|
-
const _component_el_dropdown = resolveComponent("el-dropdown");
|
|
465576
465026
|
const _directive_loading = resolveDirective("loading");
|
|
465577
465027
|
return openBlock(), createElementBlock("div", {
|
|
465578
465028
|
class: "relative w-full h-full overflow-hidden bg-gray-100",
|
|
@@ -465582,101 +465032,11 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
465582
465032
|
createElementVNode("div", {
|
|
465583
465033
|
id: mapId.value,
|
|
465584
465034
|
class: "w-full h-full bg-gray-100"
|
|
465585
|
-
}, null, 8, _hoisted_1$
|
|
465586
|
-
withDirectives(createElementVNode("div", _hoisted_2$
|
|
465587
|
-
_cache[0] || (_cache[0] = createElementVNode("div", { class: "font-semibold text-white" }, "坐标:", -1)),
|
|
465588
|
-
createElementVNode("div", _hoisted_3$l, toDisplayString(currentCoordinate.value), 1),
|
|
465589
|
-
_cache[1] || (_cache[1] = createElementVNode("div", { class: "font-semibold text-white" }, "缩放:", -1)),
|
|
465590
|
-
createElementVNode("div", _hoisted_4$k, toDisplayString(currentZoom.value), 1),
|
|
465591
|
-
_cache[2] || (_cache[2] = createElementVNode("div", { class: "font-semibold text-white" }, "比例尺:", -1)),
|
|
465592
|
-
createElementVNode("div", _hoisted_5$k, toDisplayString(currentScale.value), 1)
|
|
465593
|
-
], 512), [
|
|
465594
|
-
[vShow, finalShowMapInfo.value]
|
|
465595
|
-
]),
|
|
465596
|
-
withDirectives(createVNode$1(_sfc_main$q, {
|
|
465597
|
-
config: tooltipConfig.value,
|
|
465598
|
-
template: _ctx.tooltipTemplate,
|
|
465599
|
-
visible: tooltipVisible.value,
|
|
465600
|
-
"tooltip-data": tooltipData.value,
|
|
465601
|
-
coordinate: tooltipCoordinate.value,
|
|
465602
|
-
pixel: tooltipPixel.value,
|
|
465603
|
-
onShow: onTooltipShow,
|
|
465604
|
-
onHide: onTooltipHide,
|
|
465605
|
-
onFeatureClick,
|
|
465606
|
-
onDataLoaded: onTooltipDataLoaded
|
|
465607
|
-
}, {
|
|
465608
|
-
default: withCtx(({ data = [], formattedData = [], coordinate = [0, 0], pixel = [0, 0] }) => [
|
|
465609
|
-
renderSlot(_ctx.$slots, "tooltip", {
|
|
465610
|
-
data,
|
|
465611
|
-
formattedData,
|
|
465612
|
-
coordinate,
|
|
465613
|
-
pixel
|
|
465614
|
-
}, void 0, true)
|
|
465615
|
-
]),
|
|
465616
|
-
_: 3
|
|
465617
|
-
}, 8, ["config", "template", "visible", "tooltip-data", "coordinate", "pixel"]), [
|
|
465618
|
-
[vShow, tooltipConfig.value.enabled]
|
|
465619
|
-
]),
|
|
465620
|
-
withDirectives(createElementVNode("div", _hoisted_6$i, null, 512), [
|
|
465035
|
+
}, null, 8, _hoisted_1$o),
|
|
465036
|
+
withDirectives(createElementVNode("div", _hoisted_2$m, null, 512), [
|
|
465621
465037
|
[vShow, _ctx.loading],
|
|
465622
465038
|
[_directive_loading, _ctx.loading]
|
|
465623
|
-
])
|
|
465624
|
-
createVNode$1(_component_el_dropdown, {
|
|
465625
|
-
ref_key: "contextMenuRef",
|
|
465626
|
-
ref: contextMenuRef,
|
|
465627
|
-
teleported: false,
|
|
465628
|
-
trigger: "contextmenu",
|
|
465629
|
-
onVisibleChange: onContextMenuVisibleChange
|
|
465630
|
-
}, {
|
|
465631
|
-
dropdown: withCtx(() => [
|
|
465632
|
-
createVNode$1(_component_el_dropdown_menu, null, {
|
|
465633
|
-
default: withCtx(() => [
|
|
465634
|
-
createVNode$1(_component_el_dropdown_item, {
|
|
465635
|
-
onClick: copyCoordinate,
|
|
465636
|
-
icon: unref(document_copy_default)
|
|
465637
|
-
}, {
|
|
465638
|
-
default: withCtx(() => [..._cache[3] || (_cache[3] = [
|
|
465639
|
-
createTextVNode(" 复制坐标 ", -1)
|
|
465640
|
-
])]),
|
|
465641
|
-
_: 1
|
|
465642
|
-
}, 8, ["icon"]),
|
|
465643
|
-
createVNode$1(_component_el_dropdown_item, {
|
|
465644
|
-
onClick: addMarker,
|
|
465645
|
-
icon: unref(location_default)
|
|
465646
|
-
}, {
|
|
465647
|
-
default: withCtx(() => [..._cache[4] || (_cache[4] = [
|
|
465648
|
-
createTextVNode(" 添加标记 ", -1)
|
|
465649
|
-
])]),
|
|
465650
|
-
_: 1
|
|
465651
|
-
}, 8, ["icon"]),
|
|
465652
|
-
createVNode$1(_component_el_dropdown_item, {
|
|
465653
|
-
onClick: measureFromHere,
|
|
465654
|
-
icon: unref(tools_default)
|
|
465655
|
-
}, {
|
|
465656
|
-
default: withCtx(() => [..._cache[5] || (_cache[5] = [
|
|
465657
|
-
createTextVNode(" 从此处测量 ", -1)
|
|
465658
|
-
])]),
|
|
465659
|
-
_: 1
|
|
465660
|
-
}, 8, ["icon"]),
|
|
465661
|
-
createVNode$1(_component_el_dropdown_item, {
|
|
465662
|
-
divided: "",
|
|
465663
|
-
onClick: clearAll,
|
|
465664
|
-
icon: unref(delete_default)
|
|
465665
|
-
}, {
|
|
465666
|
-
default: withCtx(() => [..._cache[6] || (_cache[6] = [
|
|
465667
|
-
createTextVNode(" 清除所有 ", -1)
|
|
465668
|
-
])]),
|
|
465669
|
-
_: 1
|
|
465670
|
-
}, 8, ["icon"])
|
|
465671
|
-
]),
|
|
465672
|
-
_: 1
|
|
465673
|
-
})
|
|
465674
|
-
]),
|
|
465675
|
-
default: withCtx(() => [
|
|
465676
|
-
_cache[7] || (_cache[7] = createElementVNode("div", null, null, -1))
|
|
465677
|
-
]),
|
|
465678
|
-
_: 1
|
|
465679
|
-
}, 512)
|
|
465039
|
+
])
|
|
465680
465040
|
], 512);
|
|
465681
465041
|
};
|
|
465682
465042
|
}
|
|
@@ -465688,9 +465048,9 @@ const _export_sfc = (sfc, props) => {
|
|
|
465688
465048
|
}
|
|
465689
465049
|
return target;
|
|
465690
465050
|
};
|
|
465691
|
-
const MapContainer = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
465692
|
-
const _hoisted_1$
|
|
465693
|
-
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({
|
|
465694
465054
|
__name: "index",
|
|
465695
465055
|
props: {
|
|
465696
465056
|
prefix: { default: "icon" },
|
|
@@ -465708,7 +465068,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
465708
465068
|
class: computedClass.value,
|
|
465709
465069
|
"aria-hidden": "true"
|
|
465710
465070
|
}, _ctx.$attrs), [
|
|
465711
|
-
createElementVNode("use", { href: symbolId.value }, null, 8, _hoisted_1$
|
|
465071
|
+
createElementVNode("use", { href: symbolId.value }, null, 8, _hoisted_1$n)
|
|
465712
465072
|
], 16);
|
|
465713
465073
|
};
|
|
465714
465074
|
}
|
|
@@ -465909,26 +465269,26 @@ class DialogCacheManager {
|
|
|
465909
465269
|
}
|
|
465910
465270
|
const dialogCacheManager = new DialogCacheManager();
|
|
465911
465271
|
const dialogCacheManager$1 = dialogCacheManager;
|
|
465912
|
-
const _hoisted_1$
|
|
465913
|
-
const _hoisted_2$
|
|
465914
|
-
const _hoisted_3$
|
|
465915
|
-
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 = {
|
|
465916
465276
|
key: 0,
|
|
465917
465277
|
class: "px-5 py-4 border-t border-gray-200 bg-gray-50 flex justify-end gap-3"
|
|
465918
465278
|
};
|
|
465919
|
-
const _hoisted_5$
|
|
465920
|
-
const _hoisted_6$
|
|
465921
|
-
const _hoisted_7$
|
|
465922
|
-
const _hoisted_8$
|
|
465923
|
-
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 = {
|
|
465924
465284
|
key: 0,
|
|
465925
465285
|
class: "px-5 py-4 border-t border-gray-200 bg-gray-50 flex justify-end gap-3"
|
|
465926
465286
|
};
|
|
465927
|
-
const _hoisted_10$
|
|
465287
|
+
const _hoisted_10$a = {
|
|
465928
465288
|
key: 1,
|
|
465929
465289
|
class: "absolute top-0 left-0 w-full h-full pointer-events-none"
|
|
465930
465290
|
};
|
|
465931
|
-
const _sfc_main$
|
|
465291
|
+
const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
465932
465292
|
...{
|
|
465933
465293
|
inheritAttrs: false
|
|
465934
465294
|
},
|
|
@@ -466350,12 +465710,12 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466350
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 }]),
|
|
466351
465711
|
onMousedown: startDrag
|
|
466352
465712
|
}, [
|
|
466353
|
-
createElementVNode("div", _hoisted_1$
|
|
465713
|
+
createElementVNode("div", _hoisted_1$m, [
|
|
466354
465714
|
renderSlot(_ctx.$slots, "title", {}, () => [
|
|
466355
465715
|
createTextVNode(toDisplayString(_ctx.title), 1)
|
|
466356
465716
|
], true)
|
|
466357
465717
|
]),
|
|
466358
|
-
createElementVNode("div", _hoisted_2$
|
|
465718
|
+
createElementVNode("div", _hoisted_2$l, [
|
|
466359
465719
|
_ctx.showFullscreen ? (openBlock(), createBlock(unref(ElButton), {
|
|
466360
465720
|
key: 0,
|
|
466361
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",
|
|
@@ -466363,7 +465723,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466363
465723
|
title: isFullscreen.value ? "退出全屏" : "全屏"
|
|
466364
465724
|
}, {
|
|
466365
465725
|
default: withCtx(() => [
|
|
466366
|
-
createVNode$1(_sfc_main$
|
|
465726
|
+
createVNode$1(_sfc_main$p, {
|
|
466367
465727
|
name: isFullscreen.value ? "exit-fullscreen" : "fullscreen"
|
|
466368
465728
|
}, null, 8, ["name"])
|
|
466369
465729
|
]),
|
|
@@ -466376,16 +465736,16 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466376
465736
|
title: "关闭"
|
|
466377
465737
|
}, {
|
|
466378
465738
|
default: withCtx(() => [
|
|
466379
|
-
createVNode$1(_sfc_main$
|
|
465739
|
+
createVNode$1(_sfc_main$p, { name: "close" })
|
|
466380
465740
|
]),
|
|
466381
465741
|
_: 1
|
|
466382
465742
|
})) : createCommentVNode("", true)
|
|
466383
465743
|
])
|
|
466384
465744
|
], 34),
|
|
466385
|
-
createElementVNode("div", _hoisted_3$
|
|
465745
|
+
createElementVNode("div", _hoisted_3$l, [
|
|
466386
465746
|
renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
466387
465747
|
]),
|
|
466388
|
-
_ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_4$
|
|
465748
|
+
_ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_4$k, [
|
|
466389
465749
|
renderSlot(_ctx.$slots, "footer", {}, void 0, true)
|
|
466390
465750
|
])) : createCommentVNode("", true),
|
|
466391
465751
|
_ctx.resizable && !isFullscreen.value ? (openBlock(), createElementBlock(Fragment, { key: 1 }, renderList(resizeDirections, (direction2) => {
|
|
@@ -466393,7 +465753,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466393
465753
|
key: direction2,
|
|
466394
465754
|
class: normalizeClass(`absolute bg-transparent z-10 pointer-events-auto resize-${direction2}`),
|
|
466395
465755
|
onMousedown: ($event) => startResize($event, direction2)
|
|
466396
|
-
}, null, 42, _hoisted_5$
|
|
465756
|
+
}, null, 42, _hoisted_5$k);
|
|
466397
465757
|
}), 64)) : createCommentVNode("", true)
|
|
466398
465758
|
], 16)
|
|
466399
465759
|
], 6)) : createCommentVNode("", true)
|
|
@@ -466433,12 +465793,12 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466433
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 }]),
|
|
466434
465794
|
onMousedown: startDrag
|
|
466435
465795
|
}, [
|
|
466436
|
-
createElementVNode("div", _hoisted_6$
|
|
465796
|
+
createElementVNode("div", _hoisted_6$i, [
|
|
466437
465797
|
renderSlot(_ctx.$slots, "title", {}, () => [
|
|
466438
465798
|
createTextVNode(toDisplayString(_ctx.title), 1)
|
|
466439
465799
|
], true)
|
|
466440
465800
|
]),
|
|
466441
|
-
createElementVNode("div", _hoisted_7$
|
|
465801
|
+
createElementVNode("div", _hoisted_7$e, [
|
|
466442
465802
|
_ctx.showFullscreen ? (openBlock(), createBlock(unref(ElButton), {
|
|
466443
465803
|
key: 0,
|
|
466444
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",
|
|
@@ -466446,7 +465806,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466446
465806
|
title: isFullscreen.value ? "退出全屏" : "全屏"
|
|
466447
465807
|
}, {
|
|
466448
465808
|
default: withCtx(() => [
|
|
466449
|
-
createVNode$1(_sfc_main$
|
|
465809
|
+
createVNode$1(_sfc_main$p, {
|
|
466450
465810
|
name: isFullscreen.value ? "exit-fullscreen" : "fullscreen"
|
|
466451
465811
|
}, null, 8, ["name"])
|
|
466452
465812
|
]),
|
|
@@ -466459,19 +465819,19 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466459
465819
|
title: "关闭"
|
|
466460
465820
|
}, {
|
|
466461
465821
|
default: withCtx(() => [
|
|
466462
|
-
createVNode$1(_sfc_main$
|
|
465822
|
+
createVNode$1(_sfc_main$p, { name: "close" })
|
|
466463
465823
|
]),
|
|
466464
465824
|
_: 1
|
|
466465
465825
|
})) : createCommentVNode("", true)
|
|
466466
465826
|
])
|
|
466467
465827
|
], 34),
|
|
466468
|
-
createElementVNode("div", _hoisted_8$
|
|
465828
|
+
createElementVNode("div", _hoisted_8$b, [
|
|
466469
465829
|
renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
466470
465830
|
]),
|
|
466471
|
-
_ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_9$
|
|
465831
|
+
_ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_9$a, [
|
|
466472
465832
|
renderSlot(_ctx.$slots, "footer", {}, void 0, true)
|
|
466473
465833
|
])) : createCommentVNode("", true),
|
|
466474
|
-
_ctx.resizable && !isFullscreen.value ? (openBlock(), createElementBlock("div", _hoisted_10$
|
|
465834
|
+
_ctx.resizable && !isFullscreen.value ? (openBlock(), createElementBlock("div", _hoisted_10$a, [
|
|
466475
465835
|
createElementVNode("div", {
|
|
466476
465836
|
class: "absolute top-0 left-2 right-2 h-1 cursor-n-resize pointer-events-auto",
|
|
466477
465837
|
onMousedown: _cache[1] || (_cache[1] = ($event) => startResize($event, "n"))
|
|
@@ -466510,7 +465870,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
466510
465870
|
};
|
|
466511
465871
|
}
|
|
466512
465872
|
});
|
|
466513
|
-
const CustomDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
465873
|
+
const CustomDialog = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-77d2a6ed"]]);
|
|
466514
465874
|
const tdtImgUrl = "data:image/png;base64,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";
|
|
466515
465875
|
const tdtVecUrl = "data:image/png;base64,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";
|
|
466516
465876
|
const gaodeImgUrl = "data:image/png;base64,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";
|
|
@@ -466521,13 +465881,13 @@ const tencentImgUrl = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD8AAABACAY
|
|
|
466521
465881
|
const tencentVecUrl = "data:image/png;base64,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";
|
|
466522
465882
|
const osmUrl = "data:image/png;base64,PHN2ZyB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cmVjdCB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgZmlsbD0iI2YyZjJmMiIvPgogIDxyZWN0IHg9IjEwIiB5PSIxMCIgd2lkdGg9IjgwIiBoZWlnaHQ9IjgwIiBmaWxsPSIjZmZmZmZmIiBzdHJva2U9IiNjY2NjY2MiIHN0cm9rZS13aWR0aD0iMSIvPgogIDxwYXRoIGQ9Ik0yMCAzMCBMNDAgMjAgTDYwIDM1IEw4MCAyNSBMODAgNzAgTDYwIDc1IEw0MCA2MCBMMjAgNzAgWiIgZmlsbD0iIzdkZDNjMCIgc3Ryb2tlPSIjNWNiM2EwIiBzdHJva2Utd2lkdGg9IjEiLz4KICA8Y2lyY2xlIGN4PSIzNSIgY3k9IjQ1IiByPSIzIiBmaWxsPSIjZmY2YjZiIi8+CiAgPGNpcmNsZSBjeD0iNTUiIGN5PSIzNSIgcj0iMiIgZmlsbD0iIzRlY2RjNCIvPgogIDxjaXJjbGUgY3g9IjY1IiBjeT0iNTUiIHI9IjIiIGZpbGw9IiM0NWI3ZDEiLz4KICA8dGV4dCB4PSI1MCIgeT0iOTAiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGZvbnQtZmFtaWx5PSJBcmlhbCwgc2Fucy1zZXJpZiIgZm9udC1zaXplPSIxMCIgZmlsbD0iIzY2NiI+T1NNPC90ZXh0Pgo8L3N2Zz4=";
|
|
466523
465883
|
const customBlueUrl = "data:image/png;base64,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";
|
|
466524
|
-
const _hoisted_1$
|
|
466525
|
-
const _hoisted_2$
|
|
466526
|
-
const _hoisted_3$
|
|
466527
|
-
const _hoisted_4$
|
|
466528
|
-
const _hoisted_5$
|
|
466529
|
-
const _hoisted_6$
|
|
466530
|
-
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({
|
|
466531
465891
|
__name: "BasemapPanel",
|
|
466532
465892
|
props: {
|
|
466533
465893
|
modelValue: { type: Boolean }
|
|
@@ -466758,23 +466118,23 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
466758
466118
|
onClose: handleClose
|
|
466759
466119
|
}, {
|
|
466760
466120
|
default: withCtx(() => [
|
|
466761
|
-
createElementVNode("div", _hoisted_1$
|
|
466762
|
-
createElementVNode("div", _hoisted_2$
|
|
466121
|
+
createElementVNode("div", _hoisted_1$l, [
|
|
466122
|
+
createElementVNode("div", _hoisted_2$k, [
|
|
466763
466123
|
(openBlock(true), createElementBlock(Fragment, null, renderList(displayBasemaps.value, (basemap) => {
|
|
466764
466124
|
return openBlock(), createElementBlock("div", {
|
|
466765
466125
|
key: basemap.id,
|
|
466766
466126
|
class: normalizeClass(["basemap-item", { active: selectedBasemap.value === basemap.id }]),
|
|
466767
466127
|
onClick: ($event) => selectBasemap(basemap)
|
|
466768
466128
|
}, [
|
|
466769
|
-
createElementVNode("div", _hoisted_4$
|
|
466129
|
+
createElementVNode("div", _hoisted_4$j, [
|
|
466770
466130
|
createElementVNode("img", {
|
|
466771
466131
|
src: basemap.thumbnail,
|
|
466772
466132
|
alt: basemap.name,
|
|
466773
466133
|
loading: "lazy"
|
|
466774
|
-
}, null, 8, _hoisted_5$
|
|
466134
|
+
}, null, 8, _hoisted_5$j)
|
|
466775
466135
|
]),
|
|
466776
|
-
createElementVNode("div", _hoisted_6$
|
|
466777
|
-
], 10, _hoisted_3$
|
|
466136
|
+
createElementVNode("div", _hoisted_6$h, toDisplayString(basemap.name), 1)
|
|
466137
|
+
], 10, _hoisted_3$k);
|
|
466778
466138
|
}), 128))
|
|
466779
466139
|
])
|
|
466780
466140
|
])
|
|
@@ -466784,7 +466144,7 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
466784
466144
|
};
|
|
466785
466145
|
}
|
|
466786
466146
|
});
|
|
466787
|
-
const BasemapPanel = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
466147
|
+
const BasemapPanel = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-156831b6"]]);
|
|
466788
466148
|
const icons = {
|
|
466789
466149
|
pointMarker: new URL("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPg0KICA8cGF0aCBkPSJNMjEgMTBjMCA3LTkgMTMtOSAxM3MtOS02LTktMTNhOSA5IDAgMCAxIDE4IDB6Ii8+DQogIDxjaXJjbGUgY3g9IjEyIiBjeT0iMTAiIHI9IjMiLz4NCjwvc3ZnPg==", self.location).href,
|
|
466790
466150
|
textMarker: new URL("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPg0KICA8cG9seWxpbmUgcG9pbnRzPSI0IDcgNCA0IDIwIDQgMjAgNyIvPg0KICA8bGluZSB4MT0iOSIgeTE9IjIwIiB4Mj0iMTUiIHkyPSIyMCIvPg0KICA8bGluZSB4MT0iMTIiIHkxPSI0IiB4Mj0iMTIiIHkyPSIyMCIvPg0KPC9zdmc+", self.location).href,
|
|
@@ -467116,15 +466476,15 @@ class OverviewMapUtil {
|
|
|
467116
466476
|
function createOverviewMapUtil() {
|
|
467117
466477
|
return new OverviewMapUtil();
|
|
467118
466478
|
}
|
|
467119
|
-
const _hoisted_1$
|
|
467120
|
-
const _hoisted_2$
|
|
467121
|
-
const _hoisted_3$
|
|
467122
|
-
const _hoisted_4$
|
|
467123
|
-
const _hoisted_5$
|
|
467124
|
-
const _hoisted_6$
|
|
467125
|
-
const _hoisted_7$
|
|
467126
|
-
const _hoisted_8$
|
|
467127
|
-
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({
|
|
467128
466488
|
__name: "MeasurementDialog",
|
|
467129
466489
|
props: {
|
|
467130
466490
|
modelValue: { type: Boolean }
|
|
@@ -467366,8 +466726,8 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
467366
466726
|
cacheId: "measurement-dialog"
|
|
467367
466727
|
}, {
|
|
467368
466728
|
default: withCtx(() => [
|
|
467369
|
-
createElementVNode("div", _hoisted_1$
|
|
467370
|
-
createElementVNode("div", _hoisted_2$
|
|
466729
|
+
createElementVNode("div", _hoisted_1$k, [
|
|
466730
|
+
createElementVNode("div", _hoisted_2$j, [
|
|
467371
466731
|
createVNode$1(_component_el_select, {
|
|
467372
466732
|
modelValue: selectedUnit.value,
|
|
467373
466733
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => selectedUnit.value = $event),
|
|
@@ -467435,10 +466795,10 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
467435
466795
|
_: 1
|
|
467436
466796
|
})
|
|
467437
466797
|
]),
|
|
467438
|
-
createElementVNode("div", _hoisted_3$
|
|
467439
|
-
createElementVNode("div", _hoisted_4$
|
|
466798
|
+
createElementVNode("div", _hoisted_3$j, [
|
|
466799
|
+
createElementVNode("div", _hoisted_4$i, toDisplayString(getDisplayValue()), 1)
|
|
467440
466800
|
]),
|
|
467441
|
-
createElementVNode("div", _hoisted_5$
|
|
466801
|
+
createElementVNode("div", _hoisted_5$i, [
|
|
467442
466802
|
(openBlock(), createElementBlock(Fragment, null, renderList(measurementTools, (tool) => {
|
|
467443
466803
|
return createElementVNode("div", {
|
|
467444
466804
|
key: tool.type,
|
|
@@ -467449,9 +466809,9 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
467449
466809
|
src: tool.icon,
|
|
467450
466810
|
alt: tool.label,
|
|
467451
466811
|
class: "tool-icon"
|
|
467452
|
-
}, null, 8, _hoisted_7$
|
|
467453
|
-
createElementVNode("span", _hoisted_8$
|
|
467454
|
-
], 10, _hoisted_6$
|
|
466812
|
+
}, null, 8, _hoisted_7$d),
|
|
466813
|
+
createElementVNode("span", _hoisted_8$a, toDisplayString(tool.label), 1)
|
|
466814
|
+
], 10, _hoisted_6$g);
|
|
467455
466815
|
}), 64))
|
|
467456
466816
|
])
|
|
467457
466817
|
])
|
|
@@ -467461,13 +466821,13 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
467461
466821
|
};
|
|
467462
466822
|
}
|
|
467463
466823
|
});
|
|
467464
|
-
const MeasurementDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
467465
|
-
const _hoisted_1$
|
|
467466
|
-
const _hoisted_2$
|
|
467467
|
-
const _hoisted_3$
|
|
467468
|
-
const _hoisted_4$
|
|
467469
|
-
const _hoisted_5$
|
|
467470
|
-
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({
|
|
467471
466831
|
__name: "CoordinateLocationDialog",
|
|
467472
466832
|
props: {
|
|
467473
466833
|
modelValue: { type: Boolean }
|
|
@@ -467628,7 +466988,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
|
467628
466988
|
class: "coordinate-dialog"
|
|
467629
466989
|
}, {
|
|
467630
466990
|
footer: withCtx(() => [
|
|
467631
|
-
createElementVNode("div", _hoisted_5$
|
|
466991
|
+
createElementVNode("div", _hoisted_5$h, [
|
|
467632
466992
|
createVNode$1(_component_el_button, {
|
|
467633
466993
|
type: "primary",
|
|
467634
466994
|
onClick: getCurrentLocation
|
|
@@ -467650,10 +467010,10 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
|
467650
467010
|
])
|
|
467651
467011
|
]),
|
|
467652
467012
|
default: withCtx(() => [
|
|
467653
|
-
createElementVNode("div", _hoisted_1$
|
|
467654
|
-
createElementVNode("div", _hoisted_2$
|
|
467013
|
+
createElementVNode("div", _hoisted_1$j, [
|
|
467014
|
+
createElementVNode("div", _hoisted_2$i, [
|
|
467655
467015
|
_cache[6] || (_cache[6] = createElementVNode("div", { class: "format-title" }, "坐标格式", -1)),
|
|
467656
|
-
createElementVNode("div", _hoisted_3$
|
|
467016
|
+
createElementVNode("div", _hoisted_3$i, [
|
|
467657
467017
|
createVNode$1(_component_el_radio_group, {
|
|
467658
467018
|
modelValue: selectedFormat.value,
|
|
467659
467019
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => selectedFormat.value = $event),
|
|
@@ -467677,7 +467037,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
|
467677
467037
|
}, 8, ["modelValue"])
|
|
467678
467038
|
])
|
|
467679
467039
|
]),
|
|
467680
|
-
createElementVNode("div", _hoisted_4$
|
|
467040
|
+
createElementVNode("div", _hoisted_4$h, [
|
|
467681
467041
|
createVNode$1(_component_el_form, {
|
|
467682
467042
|
model: coordinateForm,
|
|
467683
467043
|
"label-width": "60px"
|
|
@@ -467718,24 +467078,24 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
|
467718
467078
|
};
|
|
467719
467079
|
}
|
|
467720
467080
|
});
|
|
467721
|
-
const CoordinateLocationDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
467722
|
-
const _hoisted_1$
|
|
467723
|
-
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 = {
|
|
467724
467084
|
key: 0,
|
|
467725
467085
|
class: "region-categories"
|
|
467726
467086
|
};
|
|
467727
|
-
const _hoisted_3$
|
|
467728
|
-
const _hoisted_4$
|
|
467729
|
-
const _hoisted_5$
|
|
467730
|
-
const _hoisted_6$
|
|
467731
|
-
const _hoisted_7$
|
|
467732
|
-
const _hoisted_8$
|
|
467733
|
-
const _hoisted_9$
|
|
467734
|
-
const _hoisted_10$
|
|
467735
|
-
const _hoisted_11$
|
|
467736
|
-
const _hoisted_12$
|
|
467737
|
-
const _hoisted_13$
|
|
467738
|
-
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" };
|
|
467739
467099
|
const _hoisted_15$7 = { class: "region-group" };
|
|
467740
467100
|
const _hoisted_16$7 = { class: "region-items" };
|
|
467741
467101
|
const _hoisted_17$6 = { class: "region-group" };
|
|
@@ -467745,7 +467105,7 @@ const _hoisted_19$5 = {
|
|
|
467745
467105
|
class: "sub-regions"
|
|
467746
467106
|
};
|
|
467747
467107
|
const _hoisted_20$4 = { class: "district-grid" };
|
|
467748
|
-
const _sfc_main$
|
|
467108
|
+
const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
467749
467109
|
__name: "RegionNavigationDialog",
|
|
467750
467110
|
props: {
|
|
467751
467111
|
modelValue: { type: Boolean }
|
|
@@ -468841,7 +468201,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468841
468201
|
class: "region-dialog"
|
|
468842
468202
|
}, {
|
|
468843
468203
|
default: withCtx(() => [
|
|
468844
|
-
createElementVNode("div", _hoisted_1$
|
|
468204
|
+
createElementVNode("div", _hoisted_1$i, [
|
|
468845
468205
|
createVNode$1(_component_el_tabs, {
|
|
468846
468206
|
modelValue: activeTab.value,
|
|
468847
468207
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => activeTab.value = $event),
|
|
@@ -468859,10 +468219,10 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468859
468219
|
closable: index2 > 0
|
|
468860
468220
|
}, {
|
|
468861
468221
|
default: withCtx(() => [
|
|
468862
|
-
tab.name === "china" ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
468863
|
-
createElementVNode("div", _hoisted_3$
|
|
468222
|
+
tab.name === "china" ? (openBlock(), createElementBlock("div", _hoisted_2$h, [
|
|
468223
|
+
createElementVNode("div", _hoisted_3$h, [
|
|
468864
468224
|
_cache[2] || (_cache[2] = createElementVNode("div", { class: "group-title" }, "华北", -1)),
|
|
468865
|
-
createElementVNode("div", _hoisted_4$
|
|
468225
|
+
createElementVNode("div", _hoisted_4$g, [
|
|
468866
468226
|
(openBlock(true), createElementBlock(Fragment, null, renderList(regions.north, (region) => {
|
|
468867
468227
|
return openBlock(), createBlock(_component_el_button, {
|
|
468868
468228
|
key: region.code,
|
|
@@ -468878,9 +468238,9 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468878
468238
|
}), 128))
|
|
468879
468239
|
])
|
|
468880
468240
|
]),
|
|
468881
|
-
createElementVNode("div", _hoisted_5$
|
|
468241
|
+
createElementVNode("div", _hoisted_5$g, [
|
|
468882
468242
|
_cache[3] || (_cache[3] = createElementVNode("div", { class: "group-title" }, "东北", -1)),
|
|
468883
|
-
createElementVNode("div", _hoisted_6$
|
|
468243
|
+
createElementVNode("div", _hoisted_6$f, [
|
|
468884
468244
|
(openBlock(true), createElementBlock(Fragment, null, renderList(regions.northeast, (region) => {
|
|
468885
468245
|
return openBlock(), createBlock(_component_el_button, {
|
|
468886
468246
|
key: region.code,
|
|
@@ -468896,9 +468256,9 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468896
468256
|
}), 128))
|
|
468897
468257
|
])
|
|
468898
468258
|
]),
|
|
468899
|
-
createElementVNode("div", _hoisted_7$
|
|
468259
|
+
createElementVNode("div", _hoisted_7$c, [
|
|
468900
468260
|
_cache[4] || (_cache[4] = createElementVNode("div", { class: "group-title" }, "华东", -1)),
|
|
468901
|
-
createElementVNode("div", _hoisted_8$
|
|
468261
|
+
createElementVNode("div", _hoisted_8$9, [
|
|
468902
468262
|
(openBlock(true), createElementBlock(Fragment, null, renderList(regions.east, (region) => {
|
|
468903
468263
|
return openBlock(), createBlock(_component_el_button, {
|
|
468904
468264
|
key: region.code,
|
|
@@ -468914,9 +468274,9 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468914
468274
|
}), 128))
|
|
468915
468275
|
])
|
|
468916
468276
|
]),
|
|
468917
|
-
createElementVNode("div", _hoisted_9$
|
|
468277
|
+
createElementVNode("div", _hoisted_9$9, [
|
|
468918
468278
|
_cache[5] || (_cache[5] = createElementVNode("div", { class: "group-title" }, "华中", -1)),
|
|
468919
|
-
createElementVNode("div", _hoisted_10$
|
|
468279
|
+
createElementVNode("div", _hoisted_10$9, [
|
|
468920
468280
|
(openBlock(true), createElementBlock(Fragment, null, renderList(regions.central, (region) => {
|
|
468921
468281
|
return openBlock(), createBlock(_component_el_button, {
|
|
468922
468282
|
key: region.code,
|
|
@@ -468932,9 +468292,9 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468932
468292
|
}), 128))
|
|
468933
468293
|
])
|
|
468934
468294
|
]),
|
|
468935
|
-
createElementVNode("div", _hoisted_11$
|
|
468295
|
+
createElementVNode("div", _hoisted_11$9, [
|
|
468936
468296
|
_cache[6] || (_cache[6] = createElementVNode("div", { class: "group-title" }, "华南", -1)),
|
|
468937
|
-
createElementVNode("div", _hoisted_12$
|
|
468297
|
+
createElementVNode("div", _hoisted_12$9, [
|
|
468938
468298
|
(openBlock(true), createElementBlock(Fragment, null, renderList(regions.south, (region) => {
|
|
468939
468299
|
return openBlock(), createBlock(_component_el_button, {
|
|
468940
468300
|
key: region.code,
|
|
@@ -468950,9 +468310,9 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
468950
468310
|
}), 128))
|
|
468951
468311
|
])
|
|
468952
468312
|
]),
|
|
468953
|
-
createElementVNode("div", _hoisted_13$
|
|
468313
|
+
createElementVNode("div", _hoisted_13$9, [
|
|
468954
468314
|
_cache[7] || (_cache[7] = createElementVNode("div", { class: "group-title" }, "西南", -1)),
|
|
468955
|
-
createElementVNode("div", _hoisted_14$
|
|
468315
|
+
createElementVNode("div", _hoisted_14$8, [
|
|
468956
468316
|
(openBlock(true), createElementBlock(Fragment, null, renderList(regions.southwest, (region) => {
|
|
468957
468317
|
return openBlock(), createBlock(_component_el_button, {
|
|
468958
468318
|
key: region.code,
|
|
@@ -469034,13 +468394,13 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
469034
468394
|
};
|
|
469035
468395
|
}
|
|
469036
468396
|
});
|
|
469037
|
-
const RegionNavigationDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
469038
|
-
const _hoisted_1$
|
|
469039
|
-
const _hoisted_2$
|
|
469040
|
-
const _hoisted_3$
|
|
469041
|
-
const _hoisted_4$
|
|
469042
|
-
const _hoisted_5$
|
|
469043
|
-
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({
|
|
469044
468404
|
__name: "MyMarkersDialog",
|
|
469045
468405
|
props: {
|
|
469046
468406
|
modelValue: { type: Boolean }
|
|
@@ -469377,8 +468737,8 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
469377
468737
|
class: "markers-dialog"
|
|
469378
468738
|
}, {
|
|
469379
468739
|
default: withCtx(() => [
|
|
469380
|
-
createElementVNode("div", _hoisted_1$
|
|
469381
|
-
createElementVNode("div", _hoisted_2$
|
|
468740
|
+
createElementVNode("div", _hoisted_1$h, [
|
|
468741
|
+
createElementVNode("div", _hoisted_2$g, [
|
|
469382
468742
|
createVNode$1(_component_el_button, {
|
|
469383
468743
|
type: "primary",
|
|
469384
468744
|
icon: unref(plus_default),
|
|
@@ -469419,7 +468779,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
469419
468779
|
_: 1
|
|
469420
468780
|
}, 8, ["icon", "disabled"])
|
|
469421
468781
|
]),
|
|
469422
|
-
createElementVNode("div", _hoisted_3$
|
|
468782
|
+
createElementVNode("div", _hoisted_3$g, [
|
|
469423
468783
|
createVNode$1(_component_el_input, {
|
|
469424
468784
|
modelValue: searchKeyword.value,
|
|
469425
468785
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchKeyword.value = $event),
|
|
@@ -469452,7 +468812,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
469452
468812
|
_: 1
|
|
469453
468813
|
}, 8, ["modelValue"])
|
|
469454
468814
|
]),
|
|
469455
|
-
createElementVNode("div", _hoisted_4$
|
|
468815
|
+
createElementVNode("div", _hoisted_4$f, [
|
|
469456
468816
|
createVNode$1(_component_el_table, {
|
|
469457
468817
|
data: filteredMarkers.value,
|
|
469458
468818
|
height: "300",
|
|
@@ -469466,7 +468826,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
469466
468826
|
width: "120"
|
|
469467
468827
|
}, {
|
|
469468
468828
|
default: withCtx(({ row }) => [
|
|
469469
|
-
createElementVNode("div", _hoisted_5$
|
|
468829
|
+
createElementVNode("div", _hoisted_5$f, [
|
|
469470
468830
|
createVNode$1(_component_el_icon, {
|
|
469471
468831
|
color: row.color,
|
|
469472
468832
|
size: "16"
|
|
@@ -469611,21 +468971,21 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
469611
468971
|
};
|
|
469612
468972
|
}
|
|
469613
468973
|
});
|
|
469614
|
-
const MyMarkersDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
469615
|
-
const _hoisted_1$
|
|
469616
|
-
const _hoisted_2$
|
|
469617
|
-
const _hoisted_3$
|
|
469618
|
-
const _hoisted_4$
|
|
469619
|
-
const _hoisted_5$
|
|
469620
|
-
const _hoisted_6$
|
|
469621
|
-
const _hoisted_7$
|
|
469622
|
-
const _hoisted_8$
|
|
469623
|
-
const _hoisted_9$
|
|
469624
|
-
const _hoisted_10$
|
|
469625
|
-
const _hoisted_11$
|
|
469626
|
-
const _hoisted_12$
|
|
469627
|
-
const _hoisted_13$
|
|
469628
|
-
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" };
|
|
469629
468989
|
const _hoisted_15$6 = { class: "detail-item" };
|
|
469630
468990
|
const _hoisted_16$6 = { class: "detail-item" };
|
|
469631
468991
|
const _hoisted_17$5 = { class: "bookmark-time" };
|
|
@@ -469638,7 +468998,7 @@ const _hoisted_19$4 = {
|
|
|
469638
468998
|
class: "statistics"
|
|
469639
468999
|
};
|
|
469640
469000
|
const _hoisted_20$3 = { class: "dialog-footer" };
|
|
469641
|
-
const _sfc_main$
|
|
469001
|
+
const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
469642
469002
|
__name: "ViewBookmarksDialog",
|
|
469643
469003
|
props: {
|
|
469644
469004
|
modelValue: { type: Boolean }
|
|
@@ -469918,8 +469278,8 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
469918
469278
|
])
|
|
469919
469279
|
]),
|
|
469920
469280
|
default: withCtx(() => [
|
|
469921
|
-
createElementVNode("div", _hoisted_1$
|
|
469922
|
-
createElementVNode("div", _hoisted_2$
|
|
469281
|
+
createElementVNode("div", _hoisted_1$g, [
|
|
469282
|
+
createElementVNode("div", _hoisted_2$f, [
|
|
469923
469283
|
createVNode$1(_component_el_button, {
|
|
469924
469284
|
type: "primary",
|
|
469925
469285
|
icon: unref(plus_default),
|
|
@@ -469959,7 +469319,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
469959
469319
|
_: 1
|
|
469960
469320
|
}, 8, ["icon", "disabled"])
|
|
469961
469321
|
]),
|
|
469962
|
-
createElementVNode("div", _hoisted_3$
|
|
469322
|
+
createElementVNode("div", _hoisted_3$f, [
|
|
469963
469323
|
createVNode$1(_component_el_input, {
|
|
469964
469324
|
modelValue: searchKeyword.value,
|
|
469965
469325
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchKeyword.value = $event),
|
|
@@ -470014,15 +469374,15 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
470014
469374
|
_: 1
|
|
470015
469375
|
}, 8, ["modelValue"])
|
|
470016
469376
|
]),
|
|
470017
|
-
createElementVNode("div", _hoisted_4$
|
|
469377
|
+
createElementVNode("div", _hoisted_4$e, [
|
|
470018
469378
|
(openBlock(true), createElementBlock(Fragment, null, renderList(filteredBookmarks.value, (bookmark, index2) => {
|
|
470019
469379
|
return openBlock(), createElementBlock("div", {
|
|
470020
469380
|
key: bookmark.id,
|
|
470021
469381
|
class: "bookmark-card",
|
|
470022
469382
|
onClick: ($event) => applyBookmark(bookmark)
|
|
470023
469383
|
}, [
|
|
470024
|
-
createElementVNode("div", _hoisted_6$
|
|
470025
|
-
createElementVNode("div", _hoisted_7$
|
|
469384
|
+
createElementVNode("div", _hoisted_6$e, [
|
|
469385
|
+
createElementVNode("div", _hoisted_7$b, [
|
|
470026
469386
|
createVNode$1(_component_el_icon, {
|
|
470027
469387
|
size: "40",
|
|
470028
469388
|
color: "#409eff"
|
|
@@ -470033,7 +469393,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
470033
469393
|
_: 1
|
|
470034
469394
|
})
|
|
470035
469395
|
]),
|
|
470036
|
-
createElementVNode("div", _hoisted_8$
|
|
469396
|
+
createElementVNode("div", _hoisted_8$8, [
|
|
470037
469397
|
createVNode$1(_component_el_button_group, null, {
|
|
470038
469398
|
default: withCtx(() => [
|
|
470039
469399
|
createVNode$1(_component_el_button, {
|
|
@@ -470073,9 +469433,9 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
470073
469433
|
}, 1024)
|
|
470074
469434
|
])
|
|
470075
469435
|
]),
|
|
470076
|
-
createElementVNode("div", _hoisted_9$
|
|
470077
|
-
createElementVNode("div", _hoisted_10$
|
|
470078
|
-
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, [
|
|
470079
469439
|
createVNode$1(_component_el_tag, {
|
|
470080
469440
|
size: "small",
|
|
470081
469441
|
type: "info"
|
|
@@ -470085,10 +469445,10 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
470085
469445
|
]),
|
|
470086
469446
|
_: 2
|
|
470087
469447
|
}, 1024),
|
|
470088
|
-
createElementVNode("span", _hoisted_12$
|
|
469448
|
+
createElementVNode("span", _hoisted_12$8, "使用 " + toDisplayString(bookmark.useCount) + " 次", 1)
|
|
470089
469449
|
]),
|
|
470090
|
-
createElementVNode("div", _hoisted_13$
|
|
470091
|
-
createElementVNode("div", _hoisted_14$
|
|
469450
|
+
createElementVNode("div", _hoisted_13$8, toDisplayString(bookmark.description), 1),
|
|
469451
|
+
createElementVNode("div", _hoisted_14$7, [
|
|
470092
469452
|
createElementVNode("span", _hoisted_15$6, [
|
|
470093
469453
|
createVNode$1(_component_el_icon, null, {
|
|
470094
469454
|
default: withCtx(() => [
|
|
@@ -470110,7 +469470,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
470110
469470
|
]),
|
|
470111
469471
|
createElementVNode("div", _hoisted_17$5, toDisplayString(formatTime(bookmark.createTime)), 1)
|
|
470112
469472
|
])
|
|
470113
|
-
], 8, _hoisted_5$
|
|
469473
|
+
], 8, _hoisted_5$e);
|
|
470114
469474
|
}), 128))
|
|
470115
469475
|
]),
|
|
470116
469476
|
filteredBookmarks.value.length === 0 ? (openBlock(), createElementBlock("div", _hoisted_18$5, [
|
|
@@ -470327,24 +469687,24 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
470327
469687
|
};
|
|
470328
469688
|
}
|
|
470329
469689
|
});
|
|
470330
|
-
const ViewBookmarksDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
470331
|
-
const _hoisted_1$
|
|
470332
|
-
const _hoisted_2$
|
|
470333
|
-
const _hoisted_3$
|
|
470334
|
-
const _hoisted_4$
|
|
470335
|
-
const _hoisted_5$
|
|
470336
|
-
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 = {
|
|
470337
469697
|
key: 0,
|
|
470338
469698
|
class: "mb-3"
|
|
470339
469699
|
};
|
|
470340
|
-
const _hoisted_7$
|
|
470341
|
-
const _hoisted_8$
|
|
470342
|
-
const _hoisted_9$
|
|
470343
|
-
const _hoisted_10$
|
|
470344
|
-
const _hoisted_11$
|
|
470345
|
-
const _hoisted_12$
|
|
470346
|
-
const _hoisted_13$
|
|
470347
|
-
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" };
|
|
470348
469708
|
const _hoisted_15$5 = { class: "mb-3" };
|
|
470349
469709
|
const _hoisted_16$5 = { class: "flex gap-2 mb-2" };
|
|
470350
469710
|
const _hoisted_17$4 = { class: "flex gap-2" };
|
|
@@ -470417,7 +469777,7 @@ const _hoisted_44$1 = {
|
|
|
470417
469777
|
const _hoisted_45 = { key: 0 };
|
|
470418
469778
|
const _hoisted_46 = { key: 0 };
|
|
470419
469779
|
const _hoisted_47 = { class: "text-right" };
|
|
470420
|
-
const _sfc_main$
|
|
469780
|
+
const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
470421
469781
|
__name: "MapPrintDialog",
|
|
470422
469782
|
props: {
|
|
470423
469783
|
modelValue: { type: Boolean },
|
|
@@ -470834,15 +470194,15 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
470834
470194
|
])
|
|
470835
470195
|
]),
|
|
470836
470196
|
default: withCtx(() => [
|
|
470837
|
-
createElementVNode("div", _hoisted_1$
|
|
470197
|
+
createElementVNode("div", _hoisted_1$f, [
|
|
470838
470198
|
createVNode$1(_component_el_row, { gutter: 20 }, {
|
|
470839
470199
|
default: withCtx(() => [
|
|
470840
470200
|
createVNode$1(_component_el_col, { span: 8 }, {
|
|
470841
470201
|
default: withCtx(() => [
|
|
470842
|
-
createElementVNode("div", _hoisted_2$
|
|
470202
|
+
createElementVNode("div", _hoisted_2$e, [
|
|
470843
470203
|
createVNode$1(_component_el_card, { shadow: "hover" }, {
|
|
470844
470204
|
header: withCtx(() => [
|
|
470845
|
-
createElementVNode("div", _hoisted_3$
|
|
470205
|
+
createElementVNode("div", _hoisted_3$e, [
|
|
470846
470206
|
_cache[18] || (_cache[18] = createElementVNode("span", null, "打印设置", -1)),
|
|
470847
470207
|
createVNode$1(_component_el_button, {
|
|
470848
470208
|
type: "text",
|
|
@@ -470862,9 +470222,9 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
470862
470222
|
])
|
|
470863
470223
|
]),
|
|
470864
470224
|
default: withCtx(() => [
|
|
470865
|
-
createElementVNode("div", _hoisted_4$
|
|
470225
|
+
createElementVNode("div", _hoisted_4$d, [
|
|
470866
470226
|
_cache[21] || (_cache[21] = createElementVNode("label", { class: "block text-sm font-medium text-gray-700 mb-2" }, "纸张设置", -1)),
|
|
470867
|
-
createElementVNode("div", _hoisted_5$
|
|
470227
|
+
createElementVNode("div", _hoisted_5$d, [
|
|
470868
470228
|
createVNode$1(_component_el_select, {
|
|
470869
470229
|
modelValue: printSettings.paperSize,
|
|
470870
470230
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => printSettings.paperSize = $event),
|
|
@@ -470908,8 +470268,8 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
470908
470268
|
_: 1
|
|
470909
470269
|
}, 8, ["modelValue"])
|
|
470910
470270
|
]),
|
|
470911
|
-
printSettings.paperSize === "Custom" ? (openBlock(), createElementBlock("div", _hoisted_6$
|
|
470912
|
-
createElementVNode("div", _hoisted_7$
|
|
470271
|
+
printSettings.paperSize === "Custom" ? (openBlock(), createElementBlock("div", _hoisted_6$d, [
|
|
470272
|
+
createElementVNode("div", _hoisted_7$a, [
|
|
470913
470273
|
createVNode$1(_component_el_input, {
|
|
470914
470274
|
modelValue: printSettings.customWidth,
|
|
470915
470275
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => printSettings.customWidth = $event),
|
|
@@ -470949,9 +470309,9 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
470949
470309
|
}, 8, ["modelValue"])
|
|
470950
470310
|
])
|
|
470951
470311
|
]),
|
|
470952
|
-
createElementVNode("div", _hoisted_8$
|
|
470312
|
+
createElementVNode("div", _hoisted_8$7, [
|
|
470953
470313
|
_cache[23] || (_cache[23] = createElementVNode("label", { class: "block text-sm font-medium text-gray-700 mb-2" }, "地图设置", -1)),
|
|
470954
|
-
createElementVNode("div", _hoisted_9$
|
|
470314
|
+
createElementVNode("div", _hoisted_9$7, [
|
|
470955
470315
|
createVNode$1(_component_el_select, {
|
|
470956
470316
|
modelValue: printSettings.dpi,
|
|
470957
470317
|
"onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => printSettings.dpi = $event),
|
|
@@ -470979,7 +470339,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
470979
470339
|
_: 1
|
|
470980
470340
|
}, 8, ["modelValue"])
|
|
470981
470341
|
]),
|
|
470982
|
-
createElementVNode("div", _hoisted_10$
|
|
470342
|
+
createElementVNode("div", _hoisted_10$7, [
|
|
470983
470343
|
createVNode$1(_component_el_select, {
|
|
470984
470344
|
modelValue: printSettings.scale,
|
|
470985
470345
|
"onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => printSettings.scale = $event),
|
|
@@ -471023,7 +470383,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
471023
470383
|
_: 1
|
|
471024
470384
|
}, 8, ["modelValue"])
|
|
471025
470385
|
]),
|
|
471026
|
-
printSettings.scale === "custom" ? (openBlock(), createElementBlock("div", _hoisted_11$
|
|
470386
|
+
printSettings.scale === "custom" ? (openBlock(), createElementBlock("div", _hoisted_11$7, [
|
|
471027
470387
|
createVNode$1(_component_el_input, {
|
|
471028
470388
|
modelValue: printSettings.customScale,
|
|
471029
470389
|
"onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => printSettings.customScale = $event),
|
|
@@ -471038,9 +470398,9 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
471038
470398
|
}, 8, ["modelValue"])
|
|
471039
470399
|
])) : createCommentVNode("", true)
|
|
471040
470400
|
]),
|
|
471041
|
-
createElementVNode("div", _hoisted_12$
|
|
470401
|
+
createElementVNode("div", _hoisted_12$7, [
|
|
471042
470402
|
_cache[32] || (_cache[32] = createElementVNode("label", { class: "block text-sm font-medium text-gray-700 mb-2" }, "内容设置", -1)),
|
|
471043
|
-
createElementVNode("div", _hoisted_13$
|
|
470403
|
+
createElementVNode("div", _hoisted_13$7, [
|
|
471044
470404
|
createVNode$1(_component_el_input, {
|
|
471045
470405
|
modelValue: printSettings.title,
|
|
471046
470406
|
"onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => printSettings.title = $event),
|
|
@@ -471048,7 +470408,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
471048
470408
|
class: "w-full"
|
|
471049
470409
|
}, null, 8, ["modelValue"])
|
|
471050
470410
|
]),
|
|
471051
|
-
createElementVNode("div", _hoisted_14$
|
|
470411
|
+
createElementVNode("div", _hoisted_14$6, [
|
|
471052
470412
|
createVNode$1(_component_el_input, {
|
|
471053
470413
|
modelValue: printSettings.subtitle,
|
|
471054
470414
|
"onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => printSettings.subtitle = $event),
|
|
@@ -471403,18 +470763,18 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
471403
470763
|
};
|
|
471404
470764
|
}
|
|
471405
470765
|
});
|
|
471406
|
-
const MapPrintDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
471407
|
-
const _hoisted_1$
|
|
471408
|
-
const _hoisted_2$
|
|
471409
|
-
const _hoisted_3$
|
|
471410
|
-
const _hoisted_4$
|
|
471411
|
-
const _hoisted_5$
|
|
471412
|
-
const _hoisted_6$
|
|
471413
|
-
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 = {
|
|
471414
470774
|
key: 0,
|
|
471415
470775
|
class: "stop-drawing-section"
|
|
471416
470776
|
};
|
|
471417
|
-
const _sfc_main$
|
|
470777
|
+
const _sfc_main$g = {
|
|
471418
470778
|
__name: "MarkTab",
|
|
471419
470779
|
setup(__props) {
|
|
471420
470780
|
const mapRef = inject("map");
|
|
@@ -471904,7 +471264,7 @@ const _sfc_main$f = {
|
|
|
471904
471264
|
const _component_el_select = resolveComponent("el-select");
|
|
471905
471265
|
const _component_el_switch = resolveComponent("el-switch");
|
|
471906
471266
|
const _component_el_button = resolveComponent("el-button");
|
|
471907
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
471267
|
+
return openBlock(), createElementBlock("div", _hoisted_1$e, [
|
|
471908
471268
|
createVNode$1(_component_el_select, {
|
|
471909
471269
|
modelValue: selectedType.value,
|
|
471910
471270
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => selectedType.value = $event),
|
|
@@ -471922,7 +471282,7 @@ const _sfc_main$f = {
|
|
|
471922
471282
|
]),
|
|
471923
471283
|
_: 1
|
|
471924
471284
|
}, 8, ["modelValue"]),
|
|
471925
|
-
createElementVNode("div", _hoisted_2$
|
|
471285
|
+
createElementVNode("div", _hoisted_2$d, [
|
|
471926
471286
|
_cache[2] || (_cache[2] = createElementVNode("span", { class: "switch-label" }, "连续标绘模式", -1)),
|
|
471927
471287
|
createVNode$1(_component_el_switch, {
|
|
471928
471288
|
modelValue: continuousDrawing.value,
|
|
@@ -471930,7 +471290,7 @@ const _sfc_main$f = {
|
|
|
471930
471290
|
size: "small"
|
|
471931
471291
|
}, null, 8, ["modelValue"])
|
|
471932
471292
|
]),
|
|
471933
|
-
createElementVNode("div", _hoisted_3$
|
|
471293
|
+
createElementVNode("div", _hoisted_3$d, [
|
|
471934
471294
|
(openBlock(true), createElementBlock(Fragment, null, renderList(currentTools.value, (tool, idx) => {
|
|
471935
471295
|
return openBlock(), createElementBlock("div", {
|
|
471936
471296
|
key: idx,
|
|
@@ -471942,15 +471302,15 @@ const _sfc_main$f = {
|
|
|
471942
471302
|
src: tool.icon,
|
|
471943
471303
|
class: "tool-image",
|
|
471944
471304
|
alt: "tool icon"
|
|
471945
|
-
}, null, 8, _hoisted_5$
|
|
471305
|
+
}, null, 8, _hoisted_5$c)) : (openBlock(), createElementBlock("i", {
|
|
471946
471306
|
key: 1,
|
|
471947
471307
|
class: normalizeClass([tool.icon, "tool-icon-large"])
|
|
471948
471308
|
}, null, 2)),
|
|
471949
|
-
createElementVNode("span", _hoisted_6$
|
|
471950
|
-
], 8, _hoisted_4$
|
|
471309
|
+
createElementVNode("span", _hoisted_6$c, toDisplayString(tool.label), 1)
|
|
471310
|
+
], 8, _hoisted_4$c);
|
|
471951
471311
|
}), 128))
|
|
471952
471312
|
]),
|
|
471953
|
-
activeDrawingTool.value && continuousDrawing.value ? (openBlock(), createElementBlock("div", _hoisted_7$
|
|
471313
|
+
activeDrawingTool.value && continuousDrawing.value ? (openBlock(), createElementBlock("div", _hoisted_7$9, [
|
|
471954
471314
|
createVNode$1(_component_el_button, {
|
|
471955
471315
|
type: "danger",
|
|
471956
471316
|
size: "small",
|
|
@@ -471967,18 +471327,18 @@ const _sfc_main$f = {
|
|
|
471967
471327
|
};
|
|
471968
471328
|
}
|
|
471969
471329
|
};
|
|
471970
|
-
const MarkTab = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
471971
|
-
const _hoisted_1$
|
|
471972
|
-
const _hoisted_2$
|
|
471973
|
-
const _hoisted_3$
|
|
471974
|
-
const _hoisted_4$
|
|
471975
|
-
const _hoisted_5$
|
|
471976
|
-
const _hoisted_6$
|
|
471977
|
-
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 = {
|
|
471978
471338
|
key: 1,
|
|
471979
471339
|
class: "empty-state"
|
|
471980
471340
|
};
|
|
471981
|
-
const _sfc_main$
|
|
471341
|
+
const _sfc_main$f = {
|
|
471982
471342
|
__name: "ListTab",
|
|
471983
471343
|
setup(__props) {
|
|
471984
471344
|
const groups = ref([
|
|
@@ -471999,9 +471359,9 @@ const _sfc_main$e = {
|
|
|
471999
471359
|
return (_ctx, _cache) => {
|
|
472000
471360
|
const _component_el_button = resolveComponent("el-button");
|
|
472001
471361
|
const _component_el_tree = resolveComponent("el-tree");
|
|
472002
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
472003
|
-
createElementVNode("div", _hoisted_2$
|
|
472004
|
-
createElementVNode("div", _hoisted_3$
|
|
471362
|
+
return openBlock(), createElementBlock("div", _hoisted_1$d, [
|
|
471363
|
+
createElementVNode("div", _hoisted_2$c, [
|
|
471364
|
+
createElementVNode("div", _hoisted_3$c, [
|
|
472005
471365
|
_cache[2] || (_cache[2] = createElementVNode("span", { class: "toolbar-title" }, "分组管理:", -1)),
|
|
472006
471366
|
createVNode$1(_component_el_button, {
|
|
472007
471367
|
type: "primary",
|
|
@@ -472024,9 +471384,9 @@ const _sfc_main$e = {
|
|
|
472024
471384
|
_: 1
|
|
472025
471385
|
})
|
|
472026
471386
|
]),
|
|
472027
|
-
createElementVNode("div", _hoisted_4$
|
|
471387
|
+
createElementVNode("div", _hoisted_4$b, "共" + toDisplayString(groups.value.length) + "条数据", 1)
|
|
472028
471388
|
]),
|
|
472029
|
-
createElementVNode("div", _hoisted_5$
|
|
471389
|
+
createElementVNode("div", _hoisted_5$b, [
|
|
472030
471390
|
groups.value.length ? (openBlock(), createBlock(_component_el_tree, {
|
|
472031
471391
|
key: 0,
|
|
472032
471392
|
data: groups.value,
|
|
@@ -472037,27 +471397,27 @@ const _sfc_main$e = {
|
|
|
472037
471397
|
class: "tree-component"
|
|
472038
471398
|
}, {
|
|
472039
471399
|
default: withCtx(({ data }) => [
|
|
472040
|
-
createElementVNode("div", _hoisted_6$
|
|
471400
|
+
createElementVNode("div", _hoisted_6$b, [
|
|
472041
471401
|
_cache[3] || (_cache[3] = createElementVNode("i", { class: "i-carbon-folder node-icon" }, null, -1)),
|
|
472042
471402
|
createElementVNode("span", null, toDisplayString(data.label), 1)
|
|
472043
471403
|
])
|
|
472044
471404
|
]),
|
|
472045
471405
|
_: 1
|
|
472046
|
-
}, 8, ["data"])) : (openBlock(), createElementBlock("div", _hoisted_7$
|
|
471406
|
+
}, 8, ["data"])) : (openBlock(), createElementBlock("div", _hoisted_7$8, "暂无数据"))
|
|
472047
471407
|
])
|
|
472048
471408
|
]);
|
|
472049
471409
|
};
|
|
472050
471410
|
}
|
|
472051
471411
|
};
|
|
472052
|
-
const ListTab = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
472053
|
-
const _hoisted_1$
|
|
472054
|
-
const _hoisted_2$
|
|
472055
|
-
const _hoisted_3$
|
|
472056
|
-
const _hoisted_4$
|
|
472057
|
-
const _hoisted_5$
|
|
472058
|
-
const _hoisted_6$
|
|
472059
|
-
const _hoisted_7$
|
|
472060
|
-
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 = {
|
|
472061
471421
|
__name: "index",
|
|
472062
471422
|
setup(__props) {
|
|
472063
471423
|
const visible = ref(true);
|
|
@@ -472119,9 +471479,9 @@ const _sfc_main$d = {
|
|
|
472119
471479
|
onClose: handleClose
|
|
472120
471480
|
}, {
|
|
472121
471481
|
default: withCtx(() => [
|
|
472122
|
-
createElementVNode("div", _hoisted_1$
|
|
472123
|
-
createElementVNode("div", _hoisted_2$
|
|
472124
|
-
createElementVNode("div", _hoisted_3$
|
|
471482
|
+
createElementVNode("div", _hoisted_1$c, [
|
|
471483
|
+
createElementVNode("div", _hoisted_2$b, [
|
|
471484
|
+
createElementVNode("div", _hoisted_3$b, [
|
|
472125
471485
|
(openBlock(), createElementBlock(Fragment, null, renderList(leftTools, (tool, idx) => {
|
|
472126
471486
|
return createVNode$1(_component_el_tooltip, {
|
|
472127
471487
|
key: idx,
|
|
@@ -472133,13 +471493,13 @@ const _sfc_main$d = {
|
|
|
472133
471493
|
createElementVNode("i", {
|
|
472134
471494
|
class: normalizeClass([tool.icon, "tool-icon"]),
|
|
472135
471495
|
onClick: ($event) => handleToolClick(tool, "left", idx)
|
|
472136
|
-
}, null, 10, _hoisted_4$
|
|
471496
|
+
}, null, 10, _hoisted_4$a)
|
|
472137
471497
|
]),
|
|
472138
471498
|
_: 2
|
|
472139
471499
|
}, 1032, ["content"]);
|
|
472140
471500
|
}), 64))
|
|
472141
471501
|
]),
|
|
472142
|
-
createElementVNode("div", _hoisted_5$
|
|
471502
|
+
createElementVNode("div", _hoisted_5$a, [
|
|
472143
471503
|
(openBlock(), createElementBlock(Fragment, null, renderList(rightTools, (tool, idx) => {
|
|
472144
471504
|
return createVNode$1(_component_el_tooltip, {
|
|
472145
471505
|
key: idx,
|
|
@@ -472151,14 +471511,14 @@ const _sfc_main$d = {
|
|
|
472151
471511
|
createElementVNode("i", {
|
|
472152
471512
|
class: normalizeClass([tool.icon, "tool-icon"]),
|
|
472153
471513
|
onClick: ($event) => handleToolClick(tool, "right", idx)
|
|
472154
|
-
}, null, 10, _hoisted_6$
|
|
471514
|
+
}, null, 10, _hoisted_6$a)
|
|
472155
471515
|
]),
|
|
472156
471516
|
_: 2
|
|
472157
471517
|
}, 1032, ["content"]);
|
|
472158
471518
|
}), 64))
|
|
472159
471519
|
])
|
|
472160
471520
|
]),
|
|
472161
|
-
createElementVNode("div", _hoisted_7$
|
|
471521
|
+
createElementVNode("div", _hoisted_7$7, [
|
|
472162
471522
|
createVNode$1(_component_el_tabs, {
|
|
472163
471523
|
modelValue: activeTab.value,
|
|
472164
471524
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => activeTab.value = $event),
|
|
@@ -472195,9 +471555,9 @@ const _sfc_main$d = {
|
|
|
472195
471555
|
};
|
|
472196
471556
|
}
|
|
472197
471557
|
};
|
|
472198
|
-
const MapDrawingDialog = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
472199
|
-
const _hoisted_1$
|
|
472200
|
-
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({
|
|
472201
471561
|
__name: "MapToolbar",
|
|
472202
471562
|
props: {
|
|
472203
471563
|
config: { default: void 0 },
|
|
@@ -472388,7 +471748,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
|
|
|
472388
471748
|
class: "main-menu-item"
|
|
472389
471749
|
}, {
|
|
472390
471750
|
title: withCtx(() => [
|
|
472391
|
-
createElementVNode("div", _hoisted_1$
|
|
471751
|
+
createElementVNode("div", _hoisted_1$b, [
|
|
472392
471752
|
createElementVNode("div", null, [
|
|
472393
471753
|
createVNode$1(_component_el_icon, null, {
|
|
472394
471754
|
default: withCtx(() => [
|
|
@@ -472611,30 +471971,30 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
|
|
|
472611
471971
|
};
|
|
472612
471972
|
}
|
|
472613
471973
|
});
|
|
472614
|
-
const MapToolbar = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
472615
|
-
const _hoisted_1$
|
|
472616
|
-
const _hoisted_2$
|
|
472617
|
-
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 = {
|
|
472618
471978
|
key: 0,
|
|
472619
471979
|
class: "search-section"
|
|
472620
471980
|
};
|
|
472621
|
-
const _hoisted_4$
|
|
472622
|
-
const _hoisted_5$
|
|
472623
|
-
const _hoisted_6$
|
|
472624
|
-
const _hoisted_7$
|
|
472625
|
-
const _hoisted_8$
|
|
472626
|
-
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 = {
|
|
472627
471987
|
key: 1,
|
|
472628
471988
|
class: "search-section"
|
|
472629
471989
|
};
|
|
472630
|
-
const _hoisted_10$
|
|
471990
|
+
const _hoisted_10$6 = {
|
|
472631
471991
|
key: 0,
|
|
472632
471992
|
class: "section-title"
|
|
472633
471993
|
};
|
|
472634
|
-
const _hoisted_11$
|
|
472635
|
-
const _hoisted_12$
|
|
472636
|
-
const _hoisted_13$
|
|
472637
|
-
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"];
|
|
472638
471998
|
const _hoisted_15$4 = ["innerHTML"];
|
|
472639
471999
|
const _hoisted_16$4 = {
|
|
472640
472000
|
key: 0,
|
|
@@ -472648,7 +472008,7 @@ const _hoisted_18$3 = {
|
|
|
472648
472008
|
key: 0,
|
|
472649
472009
|
class: "no-results"
|
|
472650
472010
|
};
|
|
472651
|
-
const _sfc_main$
|
|
472011
|
+
const _sfc_main$c = /* @__PURE__ */ defineComponent({
|
|
472652
472012
|
__name: "MapSearch",
|
|
472653
472013
|
props: {
|
|
472654
472014
|
config: { default: () => ({
|
|
@@ -472869,7 +472229,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
472869
472229
|
class: normalizeClass(["map-search-container", [`position-${position2.value}`, { "search-active": isSearchActive.value }]])
|
|
472870
472230
|
}, [
|
|
472871
472231
|
renderSlot(_ctx.$slots, "prepend", {}, void 0, true),
|
|
472872
|
-
createElementVNode("div", _hoisted_1$
|
|
472232
|
+
createElementVNode("div", _hoisted_1$a, [
|
|
472873
472233
|
renderSlot(_ctx.$slots, "search-input", {
|
|
472874
472234
|
searchQuery: searchQuery.value,
|
|
472875
472235
|
placeholder: placeholder.value,
|
|
@@ -472925,7 +472285,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
472925
472285
|
}, 8, ["modelValue", "placeholder"])
|
|
472926
472286
|
], true)
|
|
472927
472287
|
]),
|
|
472928
|
-
withDirectives(createElementVNode("div", _hoisted_2$
|
|
472288
|
+
withDirectives(createElementVNode("div", _hoisted_2$a, [
|
|
472929
472289
|
renderSlot(_ctx.$slots, "search-results", {
|
|
472930
472290
|
searchResults: searchResults.value,
|
|
472931
472291
|
searchHistory: searchHistory.value,
|
|
@@ -472937,9 +472297,9 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
472937
472297
|
clearHistory,
|
|
472938
472298
|
highlightText
|
|
472939
472299
|
}, () => [
|
|
472940
|
-
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, [
|
|
472941
472301
|
renderSlot(_ctx.$slots, "history-title", { clearHistory }, () => [
|
|
472942
|
-
createElementVNode("div", _hoisted_4$
|
|
472302
|
+
createElementVNode("div", _hoisted_4$9, [
|
|
472943
472303
|
_cache[2] || (_cache[2] = createElementVNode("span", null, "搜索历史", -1)),
|
|
472944
472304
|
createVNode$1(unref(ElButton), {
|
|
472945
472305
|
type: "text",
|
|
@@ -472971,22 +472331,22 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
472971
472331
|
]),
|
|
472972
472332
|
_: 1
|
|
472973
472333
|
}),
|
|
472974
|
-
createElementVNode("div", _hoisted_6$
|
|
472975
|
-
createElementVNode("div", _hoisted_7$
|
|
472976
|
-
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)
|
|
472977
472337
|
])
|
|
472978
|
-
], 10, _hoisted_5$
|
|
472338
|
+
], 10, _hoisted_5$9)
|
|
472979
472339
|
], true);
|
|
472980
472340
|
}), 128))
|
|
472981
472341
|
])) : createCommentVNode("", true),
|
|
472982
|
-
searchResults.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_9$
|
|
472342
|
+
searchResults.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_9$6, [
|
|
472983
472343
|
renderSlot(_ctx.$slots, "results-title", {
|
|
472984
472344
|
searchQuery: searchQuery.value,
|
|
472985
472345
|
resultsCount: searchResults.value.length
|
|
472986
472346
|
}, () => [
|
|
472987
|
-
searchQuery.value ? (openBlock(), createElementBlock("div", _hoisted_10$
|
|
472347
|
+
searchQuery.value ? (openBlock(), createElementBlock("div", _hoisted_10$6, [
|
|
472988
472348
|
_cache[3] || (_cache[3] = createElementVNode("span", null, "搜索结果", -1)),
|
|
472989
|
-
createElementVNode("span", _hoisted_11$
|
|
472349
|
+
createElementVNode("span", _hoisted_11$6, "(" + toDisplayString(searchResults.value.length) + ")", 1)
|
|
472990
472350
|
])) : createCommentVNode("", true)
|
|
472991
472351
|
], true),
|
|
472992
472352
|
(openBlock(true), createElementBlock(Fragment, null, renderList(displayResults.value, (result, index2) => {
|
|
@@ -473009,11 +472369,11 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
473009
472369
|
]),
|
|
473010
472370
|
_: 1
|
|
473011
472371
|
}),
|
|
473012
|
-
createElementVNode("div", _hoisted_13$
|
|
472372
|
+
createElementVNode("div", _hoisted_13$6, [
|
|
473013
472373
|
createElementVNode("div", {
|
|
473014
472374
|
class: "item-name",
|
|
473015
472375
|
innerHTML: highlightText(result.name, searchQuery.value)
|
|
473016
|
-
}, null, 8, _hoisted_14$
|
|
472376
|
+
}, null, 8, _hoisted_14$5),
|
|
473017
472377
|
createElementVNode("div", {
|
|
473018
472378
|
class: "item-address",
|
|
473019
472379
|
innerHTML: highlightText(result.address, searchQuery.value)
|
|
@@ -473021,7 +472381,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
473021
472381
|
result.type ? (openBlock(), createElementBlock("div", _hoisted_16$4, toDisplayString(result.type), 1)) : createCommentVNode("", true)
|
|
473022
472382
|
]),
|
|
473023
472383
|
result.confidence ? (openBlock(), createElementBlock("div", _hoisted_17$3, toDisplayString(Math.round(result.confidence * 100)) + "%", 1)) : createCommentVNode("", true)
|
|
473024
|
-
], 10, _hoisted_12$
|
|
472384
|
+
], 10, _hoisted_12$6)
|
|
473025
472385
|
], true);
|
|
473026
472386
|
}), 128))
|
|
473027
472387
|
])) : createCommentVNode("", true),
|
|
@@ -473049,8 +472409,8 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
473049
472409
|
};
|
|
473050
472410
|
}
|
|
473051
472411
|
});
|
|
473052
|
-
const MapSearch = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
473053
|
-
const _sfc_main$
|
|
472412
|
+
const MapSearch = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-3547f7a5"]]);
|
|
472413
|
+
const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
473054
472414
|
__name: "index",
|
|
473055
472415
|
props: {
|
|
473056
472416
|
config: {},
|
|
@@ -473596,21 +472956,21 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
|
473596
472956
|
};
|
|
473597
472957
|
}
|
|
473598
472958
|
});
|
|
473599
|
-
const MapControls = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
473600
|
-
const _hoisted_1$
|
|
473601
|
-
const _hoisted_2$
|
|
473602
|
-
const _hoisted_3$
|
|
473603
|
-
const _hoisted_4$
|
|
473604
|
-
const _hoisted_5$
|
|
473605
|
-
const _hoisted_6$
|
|
473606
|
-
const _hoisted_7$
|
|
473607
|
-
const _hoisted_8$
|
|
473608
|
-
const _hoisted_9$
|
|
473609
|
-
const _hoisted_10$
|
|
473610
|
-
const _hoisted_11$
|
|
473611
|
-
const _hoisted_12$
|
|
473612
|
-
const _hoisted_13$
|
|
473613
|
-
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 };
|
|
473614
472974
|
const _hoisted_15$3 = { class: "flex-1 text-xs text-gray-600" };
|
|
473615
472975
|
const _hoisted_16$3 = {
|
|
473616
472976
|
key: 4,
|
|
@@ -473625,7 +472985,7 @@ const _hoisted_19$2 = {
|
|
|
473625
472985
|
key: 1,
|
|
473626
472986
|
class: "py-10 px-5 text-center"
|
|
473627
472987
|
};
|
|
473628
|
-
const _sfc_main$
|
|
472988
|
+
const _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
473629
472989
|
__name: "LegendPanel",
|
|
473630
472990
|
props: {
|
|
473631
472991
|
position: { default: "right" },
|
|
@@ -473821,9 +473181,9 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
473821
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 }]),
|
|
473822
473182
|
style: normalizeStyle$1(panelStyle.value)
|
|
473823
473183
|
}, [
|
|
473824
|
-
createElementVNode("div", _hoisted_1$
|
|
473184
|
+
createElementVNode("div", _hoisted_1$9, [
|
|
473825
473185
|
_cache[1] || (_cache[1] = createElementVNode("h3", { class: "m-0 text-sm font-semibold text-gray-800" }, "图例", -1)),
|
|
473826
|
-
createElementVNode("div", _hoisted_2$
|
|
473186
|
+
createElementVNode("div", _hoisted_2$9, [
|
|
473827
473187
|
createVNode$1(_component_el_button, {
|
|
473828
473188
|
link: "",
|
|
473829
473189
|
size: "small",
|
|
@@ -473832,8 +473192,8 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
473832
473192
|
}, null, 8, ["icon"])
|
|
473833
473193
|
])
|
|
473834
473194
|
]),
|
|
473835
|
-
createElementVNode("div", _hoisted_3$
|
|
473836
|
-
createElementVNode("div", _hoisted_4$
|
|
473195
|
+
createElementVNode("div", _hoisted_3$9, [
|
|
473196
|
+
createElementVNode("div", _hoisted_4$8, [
|
|
473837
473197
|
visibleLegends.value.length > 0 ? (openBlock(), createBlock(_component_el_collapse, {
|
|
473838
473198
|
key: 0,
|
|
473839
473199
|
modelValue: activeNames.value,
|
|
@@ -473849,8 +473209,8 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
473849
473209
|
class: "legend-item"
|
|
473850
473210
|
}, {
|
|
473851
473211
|
default: withCtx(() => [
|
|
473852
|
-
createElementVNode("div", _hoisted_5$
|
|
473853
|
-
legend.type === "symbol" ? (openBlock(), createElementBlock("div", _hoisted_6$
|
|
473212
|
+
createElementVNode("div", _hoisted_5$8, [
|
|
473213
|
+
legend.type === "symbol" ? (openBlock(), createElementBlock("div", _hoisted_6$8, [
|
|
473854
473214
|
(openBlock(true), createElementBlock(Fragment, null, renderList(legend.items, (item) => {
|
|
473855
473215
|
return openBlock(), createElementBlock("div", {
|
|
473856
473216
|
key: item.value,
|
|
@@ -473860,10 +473220,10 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
473860
473220
|
class: "w-4 h-4 mr-2 border border-gray-300",
|
|
473861
473221
|
style: normalizeStyle$1(getSymbolStyle(item))
|
|
473862
473222
|
}, null, 4),
|
|
473863
|
-
createElementVNode("span", _hoisted_7$
|
|
473223
|
+
createElementVNode("span", _hoisted_7$5, toDisplayString(item.label), 1)
|
|
473864
473224
|
]);
|
|
473865
473225
|
}), 128))
|
|
473866
|
-
])) : legend.type === "color" ? (openBlock(), createElementBlock("div", _hoisted_8$
|
|
473226
|
+
])) : legend.type === "color" ? (openBlock(), createElementBlock("div", _hoisted_8$5, [
|
|
473867
473227
|
(openBlock(true), createElementBlock(Fragment, null, renderList(legend.items, (item) => {
|
|
473868
473228
|
return openBlock(), createElementBlock("div", {
|
|
473869
473229
|
key: item.value,
|
|
@@ -473873,22 +473233,22 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
473873
473233
|
class: "w-4 h-4 mr-2 border border-gray-300 rounded-sm",
|
|
473874
473234
|
style: normalizeStyle$1({ backgroundColor: item.color })
|
|
473875
473235
|
}, null, 4),
|
|
473876
|
-
createElementVNode("span", _hoisted_9$
|
|
473236
|
+
createElementVNode("span", _hoisted_9$5, toDisplayString(item.label), 1)
|
|
473877
473237
|
]);
|
|
473878
473238
|
}), 128))
|
|
473879
|
-
])) : legend.type === "gradient" ? (openBlock(), createElementBlock("div", _hoisted_10$
|
|
473880
|
-
createElementVNode("div", _hoisted_11$
|
|
473239
|
+
])) : legend.type === "gradient" ? (openBlock(), createElementBlock("div", _hoisted_10$5, [
|
|
473240
|
+
createElementVNode("div", _hoisted_11$5, [
|
|
473881
473241
|
createElementVNode("div", {
|
|
473882
473242
|
class: "w-full h-5 border border-gray-300 rounded-sm",
|
|
473883
473243
|
style: normalizeStyle$1(getGradientStyle(legend))
|
|
473884
473244
|
}, null, 4),
|
|
473885
|
-
createElementVNode("div", _hoisted_12$
|
|
473245
|
+
createElementVNode("div", _hoisted_12$5, [
|
|
473886
473246
|
createElementVNode("span", null, toDisplayString(legend.min), 1),
|
|
473887
473247
|
createElementVNode("span", null, toDisplayString(legend.max), 1)
|
|
473888
473248
|
])
|
|
473889
473249
|
]),
|
|
473890
|
-
createElementVNode("div", _hoisted_13$
|
|
473891
|
-
])) : 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, [
|
|
473892
473252
|
(openBlock(true), createElementBlock(Fragment, null, renderList(legend.items, (item) => {
|
|
473893
473253
|
return openBlock(), createElementBlock("div", {
|
|
473894
473254
|
key: item.value,
|
|
@@ -473925,7 +473285,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
473925
473285
|
};
|
|
473926
473286
|
}
|
|
473927
473287
|
});
|
|
473928
|
-
const LegendPanel = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
473288
|
+
const LegendPanel = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__scopeId", "data-v-e505d907"]]);
|
|
473929
473289
|
class ConfigLoader {
|
|
473930
473290
|
/**
|
|
473931
473291
|
* 从URL加载配置文件
|
|
@@ -474827,20 +474187,20 @@ class LayerConfigManager {
|
|
|
474827
474187
|
console.log("批量更新结果:", results);
|
|
474828
474188
|
}
|
|
474829
474189
|
}
|
|
474830
|
-
const _hoisted_1$
|
|
474831
|
-
const _hoisted_2$
|
|
474832
|
-
const _hoisted_3$
|
|
474833
|
-
const _hoisted_4$
|
|
474834
|
-
const _hoisted_5$
|
|
474835
|
-
const _hoisted_6$
|
|
474836
|
-
const _hoisted_7$
|
|
474837
|
-
const _hoisted_8$
|
|
474838
|
-
const _hoisted_9$
|
|
474839
|
-
const _hoisted_10$
|
|
474840
|
-
const _hoisted_11$
|
|
474841
|
-
const _hoisted_12$
|
|
474842
|
-
const _hoisted_13$
|
|
474843
|
-
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" };
|
|
474844
474204
|
const _hoisted_15$2 = { class: "value-text" };
|
|
474845
474205
|
const _hoisted_16$2 = { class: "config-item" };
|
|
474846
474206
|
const _hoisted_17$1 = { class: "value-text" };
|
|
@@ -474848,7 +474208,7 @@ const _hoisted_18$1 = { class: "config-item" };
|
|
|
474848
474208
|
const _hoisted_19$1 = { class: "value-text" };
|
|
474849
474209
|
const _hoisted_20$1 = { class: "config-section" };
|
|
474850
474210
|
const _hoisted_21$1 = { class: "preset-buttons" };
|
|
474851
|
-
const _sfc_main$
|
|
474211
|
+
const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
474852
474212
|
__name: "FilterPanel",
|
|
474853
474213
|
props: {
|
|
474854
474214
|
filters: {}
|
|
@@ -474868,10 +474228,10 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
474868
474228
|
return (_ctx, _cache) => {
|
|
474869
474229
|
const _component_el_slider = resolveComponent("el-slider");
|
|
474870
474230
|
const _component_el_button = resolveComponent("el-button");
|
|
474871
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
474872
|
-
createElementVNode("div", _hoisted_2$
|
|
474231
|
+
return openBlock(), createElementBlock("div", _hoisted_1$8, [
|
|
474232
|
+
createElementVNode("div", _hoisted_2$8, [
|
|
474873
474233
|
_cache[15] || (_cache[15] = createElementVNode("h5", null, "色彩调整", -1)),
|
|
474874
|
-
createElementVNode("div", _hoisted_3$
|
|
474234
|
+
createElementVNode("div", _hoisted_3$8, [
|
|
474875
474235
|
_cache[11] || (_cache[11] = createElementVNode("label", null, "色相:", -1)),
|
|
474876
474236
|
createVNode$1(_component_el_slider, {
|
|
474877
474237
|
modelValue: _ctx.filters.hue,
|
|
@@ -474881,9 +474241,9 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
474881
474241
|
step: 1,
|
|
474882
474242
|
onInput: handleFilterChange
|
|
474883
474243
|
}, null, 8, ["modelValue"]),
|
|
474884
|
-
createElementVNode("span", _hoisted_4$
|
|
474244
|
+
createElementVNode("span", _hoisted_4$7, toDisplayString(_ctx.filters.hue) + "°", 1)
|
|
474885
474245
|
]),
|
|
474886
|
-
createElementVNode("div", _hoisted_5$
|
|
474246
|
+
createElementVNode("div", _hoisted_5$7, [
|
|
474887
474247
|
_cache[12] || (_cache[12] = createElementVNode("label", null, "饱和度:", -1)),
|
|
474888
474248
|
createVNode$1(_component_el_slider, {
|
|
474889
474249
|
modelValue: _ctx.filters.saturate,
|
|
@@ -474893,9 +474253,9 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
474893
474253
|
step: 1,
|
|
474894
474254
|
onInput: handleFilterChange
|
|
474895
474255
|
}, null, 8, ["modelValue"]),
|
|
474896
|
-
createElementVNode("span", _hoisted_6$
|
|
474256
|
+
createElementVNode("span", _hoisted_6$7, toDisplayString(_ctx.filters.saturate) + "%", 1)
|
|
474897
474257
|
]),
|
|
474898
|
-
createElementVNode("div", _hoisted_7$
|
|
474258
|
+
createElementVNode("div", _hoisted_7$4, [
|
|
474899
474259
|
_cache[13] || (_cache[13] = createElementVNode("label", null, "亮度:", -1)),
|
|
474900
474260
|
createVNode$1(_component_el_slider, {
|
|
474901
474261
|
modelValue: _ctx.filters.brightness,
|
|
@@ -474905,9 +474265,9 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
474905
474265
|
step: 1,
|
|
474906
474266
|
onInput: handleFilterChange
|
|
474907
474267
|
}, null, 8, ["modelValue"]),
|
|
474908
|
-
createElementVNode("span", _hoisted_8$
|
|
474268
|
+
createElementVNode("span", _hoisted_8$4, toDisplayString(_ctx.filters.brightness) + "%", 1)
|
|
474909
474269
|
]),
|
|
474910
|
-
createElementVNode("div", _hoisted_9$
|
|
474270
|
+
createElementVNode("div", _hoisted_9$4, [
|
|
474911
474271
|
_cache[14] || (_cache[14] = createElementVNode("label", null, "对比度:", -1)),
|
|
474912
474272
|
createVNode$1(_component_el_slider, {
|
|
474913
474273
|
modelValue: _ctx.filters.contrast,
|
|
@@ -474917,12 +474277,12 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
474917
474277
|
step: 1,
|
|
474918
474278
|
onInput: handleFilterChange
|
|
474919
474279
|
}, null, 8, ["modelValue"]),
|
|
474920
|
-
createElementVNode("span", _hoisted_10$
|
|
474280
|
+
createElementVNode("span", _hoisted_10$4, toDisplayString(_ctx.filters.contrast) + "%", 1)
|
|
474921
474281
|
])
|
|
474922
474282
|
]),
|
|
474923
|
-
createElementVNode("div", _hoisted_11$
|
|
474283
|
+
createElementVNode("div", _hoisted_11$4, [
|
|
474924
474284
|
_cache[20] || (_cache[20] = createElementVNode("h5", null, "特殊效果", -1)),
|
|
474925
|
-
createElementVNode("div", _hoisted_12$
|
|
474285
|
+
createElementVNode("div", _hoisted_12$4, [
|
|
474926
474286
|
_cache[16] || (_cache[16] = createElementVNode("label", null, "模糊:", -1)),
|
|
474927
474287
|
createVNode$1(_component_el_slider, {
|
|
474928
474288
|
modelValue: _ctx.filters.blur,
|
|
@@ -474932,9 +474292,9 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
474932
474292
|
step: 0.1,
|
|
474933
474293
|
onInput: handleFilterChange
|
|
474934
474294
|
}, null, 8, ["modelValue"]),
|
|
474935
|
-
createElementVNode("span", _hoisted_13$
|
|
474295
|
+
createElementVNode("span", _hoisted_13$4, toDisplayString(_ctx.filters.blur) + "px", 1)
|
|
474936
474296
|
]),
|
|
474937
|
-
createElementVNode("div", _hoisted_14$
|
|
474297
|
+
createElementVNode("div", _hoisted_14$3, [
|
|
474938
474298
|
_cache[17] || (_cache[17] = createElementVNode("label", null, "棕褐色:", -1)),
|
|
474939
474299
|
createVNode$1(_component_el_slider, {
|
|
474940
474300
|
modelValue: _ctx.filters.sepia,
|
|
@@ -475018,27 +474378,27 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
475018
474378
|
};
|
|
475019
474379
|
}
|
|
475020
474380
|
});
|
|
475021
|
-
const FilterPanel = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
475022
|
-
const _hoisted_1$
|
|
475023
|
-
const _hoisted_2$
|
|
475024
|
-
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 = {
|
|
475025
474385
|
key: 0,
|
|
475026
474386
|
class: "config-section"
|
|
475027
474387
|
};
|
|
475028
|
-
const _hoisted_4$
|
|
475029
|
-
const _hoisted_5$
|
|
475030
|
-
const _hoisted_6$
|
|
475031
|
-
const _hoisted_7$
|
|
475032
|
-
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 = {
|
|
475033
474393
|
key: 1,
|
|
475034
474394
|
class: "config-section"
|
|
475035
474395
|
};
|
|
475036
|
-
const _hoisted_9$
|
|
475037
|
-
const _hoisted_10$
|
|
475038
|
-
const _hoisted_11$
|
|
475039
|
-
const _hoisted_12$
|
|
475040
|
-
const _hoisted_13$
|
|
475041
|
-
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({
|
|
475042
474402
|
__name: "LayerStyleConfig",
|
|
475043
474403
|
props: {
|
|
475044
474404
|
layerData: {}
|
|
@@ -475069,11 +474429,11 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475069
474429
|
const _component_el_select = resolveComponent("el-select");
|
|
475070
474430
|
const _component_el_switch = resolveComponent("el-switch");
|
|
475071
474431
|
const _component_el_button = resolveComponent("el-button");
|
|
475072
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
475073
|
-
createElementVNode("h4", _hoisted_2$
|
|
475074
|
-
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, [
|
|
475075
474435
|
_cache[8] || (_cache[8] = createElementVNode("h5", null, "聚合配置", -1)),
|
|
475076
|
-
createElementVNode("div", _hoisted_4$
|
|
474436
|
+
createElementVNode("div", _hoisted_4$6, [
|
|
475077
474437
|
_cache[6] || (_cache[6] = createElementVNode("label", null, "聚合距离:", -1)),
|
|
475078
474438
|
createVNode$1(_component_el_slider, {
|
|
475079
474439
|
modelValue: _ctx.layerData.clusterDistance,
|
|
@@ -475083,9 +474443,9 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475083
474443
|
size: "small",
|
|
475084
474444
|
onInput: handleClusterDistanceChange
|
|
475085
474445
|
}, null, 8, ["modelValue"]),
|
|
475086
|
-
createElementVNode("span", _hoisted_5$
|
|
474446
|
+
createElementVNode("span", _hoisted_5$6, toDisplayString(_ctx.layerData.clusterDistance) + "px", 1)
|
|
475087
474447
|
]),
|
|
475088
|
-
createElementVNode("div", _hoisted_6$
|
|
474448
|
+
createElementVNode("div", _hoisted_6$6, [
|
|
475089
474449
|
_cache[7] || (_cache[7] = createElementVNode("label", null, "最小距离:", -1)),
|
|
475090
474450
|
createVNode$1(_component_el_slider, {
|
|
475091
474451
|
modelValue: _ctx.layerData.minDistance,
|
|
@@ -475095,12 +474455,12 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475095
474455
|
size: "small",
|
|
475096
474456
|
onInput: handleClusterDistanceChange
|
|
475097
474457
|
}, null, 8, ["modelValue"]),
|
|
475098
|
-
createElementVNode("span", _hoisted_7$
|
|
474458
|
+
createElementVNode("span", _hoisted_7$3, toDisplayString(_ctx.layerData.minDistance) + "px", 1)
|
|
475099
474459
|
])
|
|
475100
474460
|
])) : createCommentVNode("", true),
|
|
475101
|
-
isSuperMapLayer.value ? (openBlock(), createElementBlock("div", _hoisted_8$
|
|
474461
|
+
isSuperMapLayer.value ? (openBlock(), createElementBlock("div", _hoisted_8$3, [
|
|
475102
474462
|
_cache[13] || (_cache[13] = createElementVNode("h5", null, "SuperMap配置", -1)),
|
|
475103
|
-
createElementVNode("div", _hoisted_9$
|
|
474463
|
+
createElementVNode("div", _hoisted_9$3, [
|
|
475104
474464
|
_cache[9] || (_cache[9] = createElementVNode("label", null, "图片格式:", -1)),
|
|
475105
474465
|
createVNode$1(_component_el_select, {
|
|
475106
474466
|
modelValue: _ctx.layerData.format,
|
|
@@ -475125,7 +474485,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475125
474485
|
_: 1
|
|
475126
474486
|
}, 8, ["modelValue"])
|
|
475127
474487
|
]),
|
|
475128
|
-
createElementVNode("div", _hoisted_10$
|
|
474488
|
+
createElementVNode("div", _hoisted_10$3, [
|
|
475129
474489
|
_cache[10] || (_cache[10] = createElementVNode("label", null, "透明度支持:", -1)),
|
|
475130
474490
|
createVNode$1(_component_el_switch, {
|
|
475131
474491
|
modelValue: _ctx.layerData.transparent,
|
|
@@ -475134,7 +474494,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475134
474494
|
onChange: handleSuperMapConfigChange
|
|
475135
474495
|
}, null, 8, ["modelValue"])
|
|
475136
474496
|
]),
|
|
475137
|
-
createElementVNode("div", _hoisted_11$
|
|
474497
|
+
createElementVNode("div", _hoisted_11$3, [
|
|
475138
474498
|
_cache[11] || (_cache[11] = createElementVNode("label", null, "缓存启用:", -1)),
|
|
475139
474499
|
createVNode$1(_component_el_switch, {
|
|
475140
474500
|
modelValue: _ctx.layerData.cacheEnabled,
|
|
@@ -475143,7 +474503,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475143
474503
|
onChange: handleSuperMapConfigChange
|
|
475144
474504
|
}, null, 8, ["modelValue"])
|
|
475145
474505
|
]),
|
|
475146
|
-
createElementVNode("div", _hoisted_12$
|
|
474506
|
+
createElementVNode("div", _hoisted_12$3, [
|
|
475147
474507
|
_cache[12] || (_cache[12] = createElementVNode("label", null, "自动获取元数据:", -1)),
|
|
475148
474508
|
createVNode$1(_component_el_switch, {
|
|
475149
474509
|
modelValue: _ctx.layerData.autoFetchMetadata,
|
|
@@ -475153,7 +474513,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475153
474513
|
}, null, 8, ["modelValue"])
|
|
475154
474514
|
])
|
|
475155
474515
|
])) : createCommentVNode("", true),
|
|
475156
|
-
createElementVNode("div", _hoisted_13$
|
|
474516
|
+
createElementVNode("div", _hoisted_13$3, [
|
|
475157
474517
|
createVNode$1(_component_el_button, {
|
|
475158
474518
|
size: "small",
|
|
475159
474519
|
onClick: handleReset
|
|
@@ -475168,17 +474528,17 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
475168
474528
|
};
|
|
475169
474529
|
}
|
|
475170
474530
|
});
|
|
475171
|
-
const LayerStyleConfig = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
475172
|
-
const _hoisted_1$
|
|
474531
|
+
const LayerStyleConfig = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__scopeId", "data-v-21ab8d8c"]]);
|
|
474532
|
+
const _hoisted_1$6 = {
|
|
475173
474533
|
key: 0,
|
|
475174
474534
|
class: "group-node"
|
|
475175
474535
|
};
|
|
475176
|
-
const _hoisted_2$
|
|
475177
|
-
const _hoisted_3$
|
|
475178
|
-
const _hoisted_4$
|
|
475179
|
-
const _hoisted_5$
|
|
475180
|
-
const _hoisted_6$
|
|
475181
|
-
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({
|
|
475182
474542
|
__name: "LayerTreeNode",
|
|
475183
474543
|
props: {
|
|
475184
474544
|
data: {},
|
|
@@ -475216,14 +474576,14 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
475216
474576
|
onDblclick: _cache[6] || (_cache[6] = withModifiers(() => {
|
|
475217
474577
|
}, ["stop"]))
|
|
475218
474578
|
}, [
|
|
475219
|
-
_ctx.data.type === "group" ? (openBlock(), createElementBlock("div", _hoisted_1$
|
|
474579
|
+
_ctx.data.type === "group" ? (openBlock(), createElementBlock("div", _hoisted_1$6, [
|
|
475220
474580
|
createVNode$1(_component_el_icon, { class: "mr-2" }, {
|
|
475221
474581
|
default: withCtx(() => [
|
|
475222
474582
|
createVNode$1(unref(folder_opened_default))
|
|
475223
474583
|
]),
|
|
475224
474584
|
_: 1
|
|
475225
474585
|
}),
|
|
475226
|
-
createElementVNode("span", _hoisted_2$
|
|
474586
|
+
createElementVNode("span", _hoisted_2$6, toDisplayString(_ctx.data.label), 1)
|
|
475227
474587
|
])) : (openBlock(), createElementBlock("div", {
|
|
475228
474588
|
key: 1,
|
|
475229
474589
|
class: "layer-item",
|
|
@@ -475231,7 +474591,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
475231
474591
|
onClick: _cache[5] || (_cache[5] = withModifiers(() => {
|
|
475232
474592
|
}, ["stop"]))
|
|
475233
474593
|
}, [
|
|
475234
|
-
createElementVNode("div", _hoisted_3$
|
|
474594
|
+
createElementVNode("div", _hoisted_3$6, [
|
|
475235
474595
|
createVNode$1(_component_el_icon, {
|
|
475236
474596
|
class: normalizeClass(["layer-icon", layerIconClass.value])
|
|
475237
474597
|
}, {
|
|
@@ -475240,7 +474600,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
475240
474600
|
]),
|
|
475241
474601
|
_: 1
|
|
475242
474602
|
}, 8, ["class"]),
|
|
475243
|
-
createElementVNode("span", _hoisted_4$
|
|
474603
|
+
createElementVNode("span", _hoisted_4$5, toDisplayString(_ctx.data.label), 1)
|
|
475244
474604
|
]),
|
|
475245
474605
|
createElementVNode("div", {
|
|
475246
474606
|
class: "layer-controls",
|
|
@@ -475251,7 +474611,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
475251
474611
|
onDblclick: _cache[4] || (_cache[4] = withModifiers(() => {
|
|
475252
474612
|
}, ["stop"]))
|
|
475253
474613
|
}, [
|
|
475254
|
-
createElementVNode("div", _hoisted_5$
|
|
474614
|
+
createElementVNode("div", _hoisted_5$5, [
|
|
475255
474615
|
createVNode$1(_component_el_slider, {
|
|
475256
474616
|
modelValue: _ctx.data.layerData.opacity,
|
|
475257
474617
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.data.layerData.opacity = $event),
|
|
@@ -475261,7 +474621,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
475261
474621
|
class: "opacity-slider",
|
|
475262
474622
|
onInput: handleOpacityChange
|
|
475263
474623
|
}, null, 8, ["modelValue"]),
|
|
475264
|
-
createElementVNode("span", _hoisted_6$
|
|
474624
|
+
createElementVNode("span", _hoisted_6$5, toDisplayString(_ctx.data.layerData.opacity) + "%", 1)
|
|
475265
474625
|
]),
|
|
475266
474626
|
createVNode$1(_component_el_popover, {
|
|
475267
474627
|
placement: "left",
|
|
@@ -475305,14 +474665,14 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
475305
474665
|
};
|
|
475306
474666
|
}
|
|
475307
474667
|
});
|
|
475308
|
-
const LayerTreeNode = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
475309
|
-
const _hoisted_1$
|
|
475310
|
-
const _hoisted_2$
|
|
475311
|
-
const _hoisted_3$
|
|
475312
|
-
const _hoisted_4$
|
|
475313
|
-
const _hoisted_5$
|
|
475314
|
-
const _hoisted_6$
|
|
475315
|
-
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({
|
|
475316
474676
|
__name: "LayerPanel",
|
|
475317
474677
|
props: {
|
|
475318
474678
|
modelValue: { type: Boolean }
|
|
@@ -475917,7 +475277,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
475917
475277
|
name: "layers"
|
|
475918
475278
|
}, {
|
|
475919
475279
|
default: withCtx(() => [
|
|
475920
|
-
createElementVNode("div", _hoisted_1$
|
|
475280
|
+
createElementVNode("div", _hoisted_1$5, [
|
|
475921
475281
|
createVNode$1(_component_el_tree, {
|
|
475922
475282
|
ref_key: "treeRef",
|
|
475923
475283
|
ref: treeRef,
|
|
@@ -475957,7 +475317,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
475957
475317
|
name: "style"
|
|
475958
475318
|
}, {
|
|
475959
475319
|
default: withCtx(() => [
|
|
475960
|
-
createElementVNode("div", _hoisted_2$
|
|
475320
|
+
createElementVNode("div", _hoisted_2$5, [
|
|
475961
475321
|
createVNode$1(_component_el_tabs, {
|
|
475962
475322
|
modelValue: activeStyleTab.value,
|
|
475963
475323
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => activeStyleTab.value = $event),
|
|
@@ -475983,8 +475343,8 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
475983
475343
|
name: "custom"
|
|
475984
475344
|
}, {
|
|
475985
475345
|
default: withCtx(() => [
|
|
475986
|
-
createElementVNode("div", _hoisted_3$
|
|
475987
|
-
createElementVNode("div", _hoisted_4$
|
|
475346
|
+
createElementVNode("div", _hoisted_3$5, [
|
|
475347
|
+
createElementVNode("div", _hoisted_4$4, [
|
|
475988
475348
|
createVNode$1(unref(ElInput), {
|
|
475989
475349
|
modelValue: unref(globalCustomCss),
|
|
475990
475350
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(globalCustomCss) ? globalCustomCss.value = $event : null),
|
|
@@ -475995,9 +475355,9 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
475995
475355
|
onInput: updateGlobalStyle
|
|
475996
475356
|
}, null, 8, ["modelValue"])
|
|
475997
475357
|
]),
|
|
475998
|
-
createElementVNode("div", _hoisted_5$
|
|
475358
|
+
createElementVNode("div", _hoisted_5$4, [
|
|
475999
475359
|
_cache[4] || (_cache[4] = createElementVNode("h6", null, "当前应用的样式:", -1)),
|
|
476000
|
-
createElementVNode("div", _hoisted_6$
|
|
475360
|
+
createElementVNode("div", _hoisted_6$4, toDisplayString(currentAppliedStyle.value), 1)
|
|
476001
475361
|
])
|
|
476002
475362
|
])
|
|
476003
475363
|
]),
|
|
@@ -476019,7 +475379,256 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
476019
475379
|
};
|
|
476020
475380
|
}
|
|
476021
475381
|
});
|
|
476022
|
-
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
|
+
});
|
|
476023
475632
|
const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
476024
475633
|
__name: "BasePopup",
|
|
476025
475634
|
props: {
|
|
@@ -477251,7 +476860,7 @@ function createPopupManager(map2, config) {
|
|
|
477251
476860
|
return new PopupManager(map2, config);
|
|
477252
476861
|
}
|
|
477253
476862
|
const _hoisted_1 = {
|
|
477254
|
-
key:
|
|
476863
|
+
key: 10,
|
|
477255
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"
|
|
477256
476865
|
};
|
|
477257
476866
|
const _hoisted_2 = { class: "flex items-center justify-between px-4 py-3 border-b border-gray-200 bg-gray-50" };
|
|
@@ -477268,6 +476877,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477268
476877
|
config: {},
|
|
477269
476878
|
width: { default: "100%" },
|
|
477270
476879
|
height: { default: "100%" },
|
|
476880
|
+
loading: { type: Boolean },
|
|
477271
476881
|
showToolbar: { type: Boolean, default: void 0 },
|
|
477272
476882
|
showMapInfo: { type: Boolean, default: void 0 },
|
|
477273
476883
|
showLayerPanel: { type: Boolean, default: void 0 },
|
|
@@ -477305,7 +476915,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477305
476915
|
enablePopup: { type: Boolean, default: true },
|
|
477306
476916
|
popupConfig: {}
|
|
477307
476917
|
},
|
|
477308
|
-
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"],
|
|
477309
476919
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
477310
476920
|
const props = __props;
|
|
477311
476921
|
const emit = __emit;
|
|
@@ -477313,6 +476923,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477313
476923
|
const eventBus = ref(createLayerEventBus());
|
|
477314
476924
|
const storage2 = ref(createMapStorage(instanceId.value));
|
|
477315
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]);
|
|
477316
476933
|
const mapContainerRef = ref();
|
|
477317
476934
|
const mapToolbarRef = ref();
|
|
477318
476935
|
const mapSearchRef = ref();
|
|
@@ -477519,6 +477136,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477519
477136
|
if (props.enableStorage) {
|
|
477520
477137
|
loadStoredData();
|
|
477521
477138
|
}
|
|
477139
|
+
document.addEventListener("click", handleDocumentClick);
|
|
477522
477140
|
});
|
|
477523
477141
|
onUnmounted(() => {
|
|
477524
477142
|
if (measurementTool.value) {
|
|
@@ -477527,7 +477145,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477527
477145
|
if (popupManager.value) {
|
|
477528
477146
|
popupManager.value.destroy();
|
|
477529
477147
|
}
|
|
477148
|
+
document.removeEventListener("click", handleDocumentClick);
|
|
477530
477149
|
});
|
|
477150
|
+
const handleDocumentClick = (event) => {
|
|
477151
|
+
const target = event.target;
|
|
477152
|
+
if (!target.closest(".context-menu")) {
|
|
477153
|
+
contextMenuVisible.value = false;
|
|
477154
|
+
}
|
|
477155
|
+
};
|
|
477531
477156
|
const loadStoredData = () => {
|
|
477532
477157
|
const storedMeasurements = storage2.value.getMeasurements();
|
|
477533
477158
|
measurementResults.value = storedMeasurements;
|
|
@@ -477595,12 +477220,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477595
477220
|
const onFeatureInfo = (data) => {
|
|
477596
477221
|
emit("feature-info", data);
|
|
477597
477222
|
};
|
|
477598
|
-
const onTooltipShow = (data) => {
|
|
477599
|
-
emit("tooltip-show", data);
|
|
477600
|
-
};
|
|
477601
|
-
const onTooltipHide = () => {
|
|
477602
|
-
emit("tooltip-hide");
|
|
477603
|
-
};
|
|
477604
477223
|
const onFeatureClick = (feature2, layer2, clickCoordinate, mapCoordinate) => {
|
|
477605
477224
|
if (feature2 && layer2 && popupManager.value && clickCoordinate) {
|
|
477606
477225
|
const coordinate = mapCoordinate || clickCoordinate;
|
|
@@ -477679,9 +477298,83 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477679
477298
|
};
|
|
477680
477299
|
const onContextMenu = (coordinate, pixel) => {
|
|
477681
477300
|
var _a3;
|
|
477301
|
+
contextMenuCoordinate.value = coordinate;
|
|
477302
|
+
contextMenuPosition.value = { x: pixel[0], y: pixel[1] };
|
|
477303
|
+
contextMenuVisible.value = true;
|
|
477682
477304
|
if ((_a3 = props.eventCallbacks) == null ? void 0 : _a3.onContextMenu) {
|
|
477683
477305
|
props.eventCallbacks.onContextMenu(coordinate, pixel);
|
|
477684
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
|
+
}
|
|
477685
477378
|
};
|
|
477686
477379
|
const onToolAction = (data) => {
|
|
477687
477380
|
emit("tool-action", data);
|
|
@@ -477790,6 +477483,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477790
477483
|
var _a3;
|
|
477791
477484
|
return (_a3 = mapManager.value) == null ? void 0 : _a3.getDrawingManager();
|
|
477792
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);
|
|
477793
477501
|
const toggleLayerPanel = () => {
|
|
477794
477502
|
showLayerPanel.value = !showLayerPanel.value;
|
|
477795
477503
|
};
|
|
@@ -477837,40 +477545,161 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477837
477545
|
return popupManager.value.updatePopupPosition(popupId, coordinate);
|
|
477838
477546
|
};
|
|
477839
477547
|
__expose({
|
|
477548
|
+
// 基础地图方法
|
|
477840
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
|
+
// 测量相关方法
|
|
477841
477556
|
getMeasurementResults,
|
|
477557
|
+
getMeasurementTool: () => {
|
|
477558
|
+
var _a3;
|
|
477559
|
+
return (_a3 = mapManager.value) == null ? void 0 : _a3.getMeasurementTool();
|
|
477560
|
+
},
|
|
477561
|
+
startMeasurement: (type) => onMeasurementStart(type),
|
|
477842
477562
|
clearAllMeasurements,
|
|
477563
|
+
removeMeasurement,
|
|
477564
|
+
// 清理方法
|
|
477843
477565
|
clearAll,
|
|
477566
|
+
// 面板控制方法
|
|
477844
477567
|
toggleLayerPanel,
|
|
477845
|
-
|
|
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: () => {
|
|
477846
477582
|
var _a3;
|
|
477847
|
-
return (_a3 =
|
|
477583
|
+
return (_a3 = mapManager.value) == null ? void 0 : _a3.getCoordinateTool();
|
|
477848
477584
|
},
|
|
477849
|
-
|
|
477585
|
+
// 右键菜单相关方法
|
|
477586
|
+
onContextMenuVisibleChange,
|
|
477587
|
+
copyCoordinate,
|
|
477588
|
+
addMarker,
|
|
477589
|
+
measureFromHere,
|
|
477590
|
+
// 搜索相关方法
|
|
477591
|
+
searchLocation: (query) => onSearch(query),
|
|
477592
|
+
clearSearchResults: () => onSearchClear(),
|
|
477593
|
+
// 标记工具方法
|
|
477594
|
+
getMarkerTool: () => {
|
|
477850
477595
|
var _a3;
|
|
477851
|
-
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
|
+
}
|
|
477852
477613
|
},
|
|
477853
|
-
|
|
477614
|
+
// 地图操作工具方法
|
|
477615
|
+
getMapOperationTool: () => {
|
|
477854
477616
|
var _a3;
|
|
477855
|
-
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
|
+
}
|
|
477856
477626
|
},
|
|
477857
|
-
|
|
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: () => {
|
|
477858
477645
|
var _a3;
|
|
477859
|
-
return (_a3 = mapContainerRef.value) == null ? void 0 : _a3.
|
|
477646
|
+
return (_a3 = mapContainerRef.value) == null ? void 0 : _a3.getDrawingManager();
|
|
477860
477647
|
},
|
|
477861
|
-
|
|
477862
|
-
updateMapConfig: (config) => {
|
|
477648
|
+
startDrawing: (type) => {
|
|
477863
477649
|
var _a3;
|
|
477864
|
-
|
|
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();
|
|
477865
477677
|
},
|
|
477866
477678
|
// Popup 相关方法
|
|
477867
477679
|
getPopupManager,
|
|
477868
477680
|
showPopup,
|
|
477869
477681
|
hidePopup,
|
|
477870
477682
|
hideAllPopups,
|
|
477871
|
-
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
|
|
477872
477700
|
});
|
|
477873
477701
|
return (_ctx, _cache) => {
|
|
477702
|
+
const _component_el_icon = resolveComponent("el-icon");
|
|
477874
477703
|
const _component_el_button = resolveComponent("el-button");
|
|
477875
477704
|
return openBlock(), createElementBlock("div", {
|
|
477876
477705
|
class: normalizeClass(["relative w-full h-full overflow-hidden", { "fixed top-0 left-0 w-screen h-screen z-9999": isFullscreen.value }])
|
|
@@ -477909,10 +477738,64 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477909
477738
|
formattedData,
|
|
477910
477739
|
coordinate,
|
|
477911
477740
|
pixel
|
|
477912
|
-
})
|
|
477741
|
+
}, void 0, true)
|
|
477913
477742
|
]),
|
|
477914
477743
|
_: 3
|
|
477915
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),
|
|
477916
477799
|
withDirectives(createVNode$1(MapToolbar, {
|
|
477917
477800
|
ref_key: "mapToolbarRef",
|
|
477918
477801
|
ref: mapToolbarRef,
|
|
@@ -477952,25 +477835,25 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477952
477835
|
renderSlot(_ctx.$slots, "controls", {
|
|
477953
477836
|
controls,
|
|
477954
477837
|
map: map2.value
|
|
477955
|
-
})
|
|
477838
|
+
}, void 0, true)
|
|
477956
477839
|
]),
|
|
477957
477840
|
_: 3
|
|
477958
477841
|
}, 8, ["config", "position", "direction", "left-offset", "right-offset", "top-offset", "bottom-offset"]), [
|
|
477959
477842
|
[vShow, finalShowControls.value]
|
|
477960
477843
|
]),
|
|
477961
|
-
hasToolbarSlot.value ? renderSlot(_ctx.$slots, "toolbar", { key: 0
|
|
477962
|
-
hasMapInfoSlot.value ? renderSlot(_ctx.$slots, "mapInfo", { key:
|
|
477963
|
-
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),
|
|
477964
477847
|
finalShowLayerPanel.value ? (openBlock(), createBlock(LayerPanel, {
|
|
477965
|
-
key:
|
|
477848
|
+
key: 5,
|
|
477966
477849
|
modelValue: showLayerPanel.value,
|
|
477967
477850
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => showLayerPanel.value = $event),
|
|
477968
477851
|
onLayerChange
|
|
477969
477852
|
}, null, 8, ["modelValue"])) : createCommentVNode("", true),
|
|
477970
|
-
hasLayerPanelSlot.value ? renderSlot(_ctx.$slots, "layerPanel", { key:
|
|
477971
|
-
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),
|
|
477972
477855
|
showLegend.value ? (openBlock(), createBlock(LegendPanel, {
|
|
477973
|
-
key:
|
|
477856
|
+
key: 8,
|
|
477974
477857
|
position: finalLegendPosition.value,
|
|
477975
477858
|
width: finalLegendWidth.value,
|
|
477976
477859
|
collapsible: finalLegendCollapsible.value,
|
|
@@ -477981,17 +477864,17 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
477981
477864
|
"top-offset": props.legendTopOffset,
|
|
477982
477865
|
"bottom-offset": props.legendBottomOffset
|
|
477983
477866
|
}, null, 8, ["position", "width", "collapsible", "default-collapsed", "show-only-visible", "left-offset", "right-offset", "top-offset", "bottom-offset"])) : createCommentVNode("", true),
|
|
477984
|
-
hasLegendSlot.value ? renderSlot(_ctx.$slots, "legend", { key:
|
|
477867
|
+
hasLegendSlot.value ? renderSlot(_ctx.$slots, "legend", { key: 9 }, void 0, true) : createCommentVNode("", true),
|
|
477985
477868
|
measurementResults.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_1, [
|
|
477986
477869
|
createElementVNode("div", _hoisted_2, [
|
|
477987
|
-
_cache[
|
|
477870
|
+
_cache[6] || (_cache[6] = createElementVNode("h4", { class: "m-0 text-sm font-semibold text-gray-800" }, "测量结果", -1)),
|
|
477988
477871
|
createVNode$1(_component_el_button, {
|
|
477989
477872
|
link: "",
|
|
477990
477873
|
size: "small",
|
|
477991
477874
|
onClick: clearAllMeasurements,
|
|
477992
477875
|
icon: unref(delete_default)
|
|
477993
477876
|
}, {
|
|
477994
|
-
default: withCtx(() => [..._cache[
|
|
477877
|
+
default: withCtx(() => [..._cache[5] || (_cache[5] = [
|
|
477995
477878
|
createTextVNode(" 清除 ", -1)
|
|
477996
477879
|
])]),
|
|
477997
477880
|
_: 1
|
|
@@ -478028,6 +477911,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
478028
477911
|
};
|
|
478029
477912
|
}
|
|
478030
477913
|
});
|
|
477914
|
+
const CustomOpenlayer = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-4636b3e2"]]);
|
|
478031
477915
|
var u8 = Uint8Array;
|
|
478032
477916
|
var u16 = Uint16Array;
|
|
478033
477917
|
var i32 = Int32Array;
|
|
@@ -486299,7 +486183,7 @@ function(t3) {
|
|
|
486299
486183
|
*/
|
|
486300
486184
|
function(t3) {
|
|
486301
486185
|
function e8() {
|
|
486302
|
-
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) {
|
|
486303
486187
|
return Promise.reject(new Error("Could not load canvg: " + t4));
|
|
486304
486188
|
}).then(function(t4) {
|
|
486305
486189
|
return t4.default ? t4.default : t4;
|
|
@@ -495173,22 +495057,22 @@ const getAssetUrl = (path2) => {
|
|
|
495173
495057
|
}
|
|
495174
495058
|
};
|
|
495175
495059
|
const install = (app) => {
|
|
495176
|
-
app.component("CustomOpenlayer",
|
|
495060
|
+
app.component("CustomOpenlayer", CustomOpenlayer);
|
|
495177
495061
|
app.component("CustomDialog", CustomDialog);
|
|
495178
|
-
app.component("SvgIcon", _sfc_main$
|
|
495062
|
+
app.component("SvgIcon", _sfc_main$p);
|
|
495179
495063
|
};
|
|
495180
495064
|
const index = {
|
|
495181
495065
|
install,
|
|
495182
|
-
CustomOpenlayer
|
|
495066
|
+
CustomOpenlayer,
|
|
495183
495067
|
CustomDialog,
|
|
495184
|
-
SvgIcon: _sfc_main$
|
|
495068
|
+
SvgIcon: _sfc_main$p
|
|
495185
495069
|
};
|
|
495186
495070
|
const version = "1.0.0";
|
|
495187
495071
|
export {
|
|
495188
495072
|
ImageDrawingFactory as $,
|
|
495189
495073
|
PointDrawingFactory as A,
|
|
495190
495074
|
BasemapManager as B,
|
|
495191
|
-
|
|
495075
|
+
CustomOpenlayer as C,
|
|
495192
495076
|
DrawingFactoryRegistry as D,
|
|
495193
495077
|
TextDrawingFactory as E,
|
|
495194
495078
|
PointWithTextDrawing as F,
|
|
@@ -495222,8 +495106,8 @@ export {
|
|
|
495222
495106
|
htmlToPDF as a5,
|
|
495223
495107
|
_defineProperty as b,
|
|
495224
495108
|
commonjsGlobal as c,
|
|
495225
|
-
|
|
495226
|
-
_sfc_main$
|
|
495109
|
+
CustomDialog as d,
|
|
495110
|
+
_sfc_main$p as e,
|
|
495227
495111
|
index as f,
|
|
495228
495112
|
getAssetUrl as g,
|
|
495229
495113
|
MapStorage as h,
|