vue-openlayers-plugin 1.0.56 → 1.0.57
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-a4ec7e53.mjs → index-799a4733.mjs} +172 -52
- package/lib/{index.es-1ed309bd.mjs → index.es-6d89f2cf.mjs} +1 -1
- package/lib/index.esm.js +1 -1
- package/lib/index.umd.js +172 -52
- package/lib/style.css +40 -40
- package/package.json +1 -1
- package/types/src/components/CustomOpenlayer/components/dialogs/LayerPanel.vue.d.ts +504 -2
- package/types/src/components/CustomOpenlayer/components/dialogs/LayerPanel.vue.d.ts.map +1 -1
- package/types/src/components/CustomOpenlayer/types/index.d.ts +48 -2
- package/types/src/components/CustomOpenlayer/types/index.d.ts.map +1 -1
- package/types/src/components/CustomOpenlayer/utils/configLoader.d.ts.map +1 -1
package/lib/index.umd.js
CHANGED
|
@@ -479687,7 +479687,22 @@ ${this.attributes_.map(
|
|
|
479687
479687
|
fullScreen: false,
|
|
479688
479688
|
scaleLine: true,
|
|
479689
479689
|
mousePosition: false,
|
|
479690
|
-
overviewMap: false
|
|
479690
|
+
overviewMap: false,
|
|
479691
|
+
layerPanel: {
|
|
479692
|
+
enabled: true,
|
|
479693
|
+
defaultOpen: false,
|
|
479694
|
+
position: "right",
|
|
479695
|
+
title: "图层管理",
|
|
479696
|
+
width: "350px",
|
|
479697
|
+
height: "600px",
|
|
479698
|
+
modal: false,
|
|
479699
|
+
draggable: true,
|
|
479700
|
+
resizable: true,
|
|
479701
|
+
showClose: true,
|
|
479702
|
+
cacheId: "layer-dialog",
|
|
479703
|
+
className: "layer-dialog",
|
|
479704
|
+
collapsible: true
|
|
479705
|
+
}
|
|
479691
479706
|
},
|
|
479692
479707
|
baseLayers: [
|
|
479693
479708
|
{
|
|
@@ -480959,8 +480974,18 @@ ${this.attributes_.map(
|
|
|
480959
480974
|
const layerTreeManager = new LayerTreeManager();
|
|
480960
480975
|
const layerConfigManager = new LayerConfigManager();
|
|
480961
480976
|
const defaultExpandedKeys = vue.computed(() => layerTreeManager.defaultExpandedKeys.value);
|
|
480962
|
-
const defaultCheckedKeys = vue.
|
|
480963
|
-
const treeData = vue.
|
|
480977
|
+
const defaultCheckedKeys = vue.ref([]);
|
|
480978
|
+
const treeData = vue.ref([]);
|
|
480979
|
+
vue.onMounted(() => {
|
|
480980
|
+
try {
|
|
480981
|
+
defaultCheckedKeys.value = Array.isArray(layerTreeManager.defaultCheckedKeys.value) ? [...layerTreeManager.defaultCheckedKeys.value] : [];
|
|
480982
|
+
const source = layerTreeManager.treeData.value;
|
|
480983
|
+
treeData.value = source ? JSON.parse(JSON.stringify(source)) : [];
|
|
480984
|
+
} catch (e3) {
|
|
480985
|
+
defaultCheckedKeys.value = layerTreeManager.defaultCheckedKeys.value || [];
|
|
480986
|
+
treeData.value = layerTreeManager.treeData.value || [];
|
|
480987
|
+
}
|
|
480988
|
+
});
|
|
480964
480989
|
const handleLayerDoubleClick = (data2) => {
|
|
480965
480990
|
layerTreeManager.handleLayerDoubleClick(data2, layerManager.value, map2.value);
|
|
480966
480991
|
};
|
|
@@ -481071,6 +481096,22 @@ ${this.attributes_.map(
|
|
|
481071
481096
|
vue.inject("eventBus");
|
|
481072
481097
|
vue.inject("storage");
|
|
481073
481098
|
const mapManager = vue.inject("mapManager");
|
|
481099
|
+
const dialogProps = vue.computed(() => {
|
|
481100
|
+
var _a3;
|
|
481101
|
+
const ui2 = ((_a3 = config == null ? void 0 : config.value) == null ? void 0 : _a3.ui) || {};
|
|
481102
|
+
return {
|
|
481103
|
+
title: ui2.title ?? "图层管理",
|
|
481104
|
+
width: ui2.width ?? "350px",
|
|
481105
|
+
height: ui2.height ?? "600px",
|
|
481106
|
+
modal: ui2.modal ?? false,
|
|
481107
|
+
draggable: ui2.draggable ?? true,
|
|
481108
|
+
resizable: ui2.resizable ?? true,
|
|
481109
|
+
showClose: ui2.showClose ?? true,
|
|
481110
|
+
position: ui2.position ?? "right",
|
|
481111
|
+
cacheId: ui2.cacheId ?? "layer-dialog",
|
|
481112
|
+
className: ui2.className ?? "layer-dialog"
|
|
481113
|
+
};
|
|
481114
|
+
});
|
|
481074
481115
|
vue.watch(config, (newConfig) => {
|
|
481075
481116
|
var _a3, _b3, _c2;
|
|
481076
481117
|
console.log("🔍 [LayerPanel] config变化:", newConfig);
|
|
@@ -481326,11 +481367,33 @@ ${this.attributes_.map(
|
|
|
481326
481367
|
treeRef.value.setCheckedKeys(checkedKeys);
|
|
481327
481368
|
}
|
|
481328
481369
|
};
|
|
481370
|
+
const hasTreeSnapshot = vue.ref(false);
|
|
481371
|
+
const expectedLayerCount = vue.computed(() => {
|
|
481372
|
+
var _a3, _b3, _c2;
|
|
481373
|
+
const c2 = (config == null ? void 0 : config.value) || {};
|
|
481374
|
+
const total = (((_a3 = c2.baseLayers) == null ? void 0 : _a3.length) || 0) + (((_b3 = c2.overlayLayers) == null ? void 0 : _b3.length) || 0) + (((_c2 = c2.vectorLayers) == null ? void 0 : _c2.length) || 0);
|
|
481375
|
+
return total;
|
|
481376
|
+
});
|
|
481329
481377
|
vue.watchEffect(() => {
|
|
481330
481378
|
if (layerGroups.value.length > 0) {
|
|
481331
481379
|
layerTreeManager.setLayerGroups(layerGroups.value);
|
|
481332
481380
|
layerTreeManager.setDefaultExpandedKeys(layerGroups.value.map((group2) => group2.id));
|
|
481333
481381
|
initializeExpandedKeys();
|
|
481382
|
+
if (!hasTreeSnapshot.value) {
|
|
481383
|
+
const isInitialRegistrationDone = layers.value.length >= expectedLayerCount.value || expectedLayerCount.value === 0;
|
|
481384
|
+
console.log("🔍 [LayerPanel] 快照准备检查: layers.length=", layers.value.length, " expected=", expectedLayerCount.value, " done=", isInitialRegistrationDone);
|
|
481385
|
+
if (isInitialRegistrationDone) {
|
|
481386
|
+
try {
|
|
481387
|
+
defaultCheckedKeys.value = Array.isArray(layerTreeManager.defaultCheckedKeys.value) ? [...layerTreeManager.defaultCheckedKeys.value] : [];
|
|
481388
|
+
const source = layerTreeManager.treeData.value;
|
|
481389
|
+
treeData.value = source ? JSON.parse(JSON.stringify(source)) : [];
|
|
481390
|
+
} catch (e3) {
|
|
481391
|
+
defaultCheckedKeys.value = layerTreeManager.defaultCheckedKeys.value || [];
|
|
481392
|
+
treeData.value = layerTreeManager.treeData.value || [];
|
|
481393
|
+
}
|
|
481394
|
+
hasTreeSnapshot.value = true;
|
|
481395
|
+
}
|
|
481396
|
+
}
|
|
481334
481397
|
vue.nextTick(() => {
|
|
481335
481398
|
syncTreeCheckedState();
|
|
481336
481399
|
});
|
|
@@ -481528,20 +481591,41 @@ ${this.attributes_.map(
|
|
|
481528
481591
|
return vue.openBlock(), vue.createBlock(CustomDialog, {
|
|
481529
481592
|
modelValue: visible.value,
|
|
481530
481593
|
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => visible.value = $event),
|
|
481531
|
-
title:
|
|
481532
|
-
width:
|
|
481533
|
-
height:
|
|
481534
|
-
"show-modal":
|
|
481535
|
-
draggable:
|
|
481536
|
-
resizable:
|
|
481537
|
-
"show-close":
|
|
481538
|
-
position:
|
|
481539
|
-
cacheId:
|
|
481540
|
-
class:
|
|
481594
|
+
title: dialogProps.value.title,
|
|
481595
|
+
width: dialogProps.value.width,
|
|
481596
|
+
height: dialogProps.value.height,
|
|
481597
|
+
"show-modal": dialogProps.value.modal,
|
|
481598
|
+
draggable: dialogProps.value.draggable,
|
|
481599
|
+
resizable: dialogProps.value.resizable,
|
|
481600
|
+
"show-close": dialogProps.value.showClose,
|
|
481601
|
+
position: dialogProps.value.position,
|
|
481602
|
+
cacheId: dialogProps.value.cacheId,
|
|
481603
|
+
class: vue.normalizeClass(dialogProps.value.className),
|
|
481541
481604
|
onClose: handleClose
|
|
481542
481605
|
}, {
|
|
481543
481606
|
default: vue.withCtx(() => [
|
|
481544
|
-
vue.
|
|
481607
|
+
_ctx.$slots.default ? vue.renderSlot(_ctx.$slots, "default", {
|
|
481608
|
+
key: 0,
|
|
481609
|
+
layers: layers.value,
|
|
481610
|
+
layerGroups: layerGroups.value,
|
|
481611
|
+
onTreeCheck,
|
|
481612
|
+
handleLayerVisibilityChange,
|
|
481613
|
+
updateLayerOpacity,
|
|
481614
|
+
updateClusterDistance,
|
|
481615
|
+
updateSuperMapConfig,
|
|
481616
|
+
resetLayerStyle,
|
|
481617
|
+
layerManager: layerManager.value,
|
|
481618
|
+
layerTreeManager: vue.unref(layerTreeManager),
|
|
481619
|
+
layerConfigManager: vue.unref(layerConfigManager),
|
|
481620
|
+
treeRef: treeRef.value,
|
|
481621
|
+
treeData: treeData.value,
|
|
481622
|
+
treeProps,
|
|
481623
|
+
defaultExpandedKeys: defaultExpandedKeys.value,
|
|
481624
|
+
defaultCheckedKeys: defaultCheckedKeys.value,
|
|
481625
|
+
syncTreeCheckedState,
|
|
481626
|
+
getAllTreeNodes
|
|
481627
|
+
}, void 0, true) : (vue.openBlock(), vue.createBlock(_component_el_tabs, {
|
|
481628
|
+
key: 1,
|
|
481545
481629
|
modelValue: activeMainTab.value,
|
|
481546
481630
|
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => activeMainTab.value = $event),
|
|
481547
481631
|
class: "main-tabs"
|
|
@@ -481647,15 +481731,15 @@ ${this.attributes_.map(
|
|
|
481647
481731
|
})
|
|
481648
481732
|
]),
|
|
481649
481733
|
_: 1
|
|
481650
|
-
}, 8, ["modelValue"])
|
|
481734
|
+
}, 8, ["modelValue"]))
|
|
481651
481735
|
]),
|
|
481652
|
-
_:
|
|
481653
|
-
}, 8, ["modelValue"]);
|
|
481736
|
+
_: 3
|
|
481737
|
+
}, 8, ["modelValue", "title", "width", "height", "show-modal", "draggable", "resizable", "show-close", "position", "cacheId", "class"]);
|
|
481654
481738
|
};
|
|
481655
481739
|
}
|
|
481656
481740
|
});
|
|
481657
|
-
const
|
|
481658
|
-
const LayerPanel = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-
|
|
481741
|
+
const LayerPanel_vue_vue_type_style_index_0_scoped_d12fef13_lang = "";
|
|
481742
|
+
const LayerPanel = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-d12fef13"]]);
|
|
481659
481743
|
const _hoisted_1$1 = {
|
|
481660
481744
|
key: 2,
|
|
481661
481745
|
class: "tooltip-content"
|
|
@@ -481906,7 +481990,7 @@ ${this.attributes_.map(
|
|
|
481906
481990
|
}
|
|
481907
481991
|
});
|
|
481908
481992
|
const _hoisted_1 = {
|
|
481909
|
-
key:
|
|
481993
|
+
key: 8,
|
|
481910
481994
|
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"
|
|
481911
481995
|
};
|
|
481912
481996
|
const _hoisted_2 = { class: "flex items-center justify-between px-4 py-3 border-b border-gray-200 bg-gray-50" };
|
|
@@ -481993,6 +482077,12 @@ ${this.attributes_.map(
|
|
|
481993
482077
|
const hasMapInfoSlot = vue.computed(() => !!slots.mapInfo || !!slots["map-info"]);
|
|
481994
482078
|
const hasLayerPanelSlot = vue.computed(() => !!slots.layerPanel || !!slots["layer-panel"]);
|
|
481995
482079
|
const hasLegendSlot = vue.computed(() => !!slots.legend);
|
|
482080
|
+
const finalEnableLayerPanel = vue.computed(() => {
|
|
482081
|
+
var _a3, _b3;
|
|
482082
|
+
if (hasLayerPanelSlot.value)
|
|
482083
|
+
return true;
|
|
482084
|
+
return props.showLayerPanel !== void 0 ? props.showLayerPanel : ((_b3 = (_a3 = finalMapConfig.value.controls) == null ? void 0 : _a3.layerPanel) == null ? void 0 : _b3.enabled) ?? false;
|
|
482085
|
+
});
|
|
481996
482086
|
const finalShowToolbar = vue.computed(() => {
|
|
481997
482087
|
var _a3;
|
|
481998
482088
|
if (hasToolbarSlot.value)
|
|
@@ -482005,12 +482095,6 @@ ${this.attributes_.map(
|
|
|
482005
482095
|
return false;
|
|
482006
482096
|
return props.showMapInfo !== void 0 ? props.showMapInfo : ((_a3 = finalMapConfig.value.ui) == null ? void 0 : _a3.showMapInfo) ?? true;
|
|
482007
482097
|
});
|
|
482008
|
-
const finalShowLayerPanel = vue.computed(() => {
|
|
482009
|
-
var _a3;
|
|
482010
|
-
if (hasLayerPanelSlot.value)
|
|
482011
|
-
return false;
|
|
482012
|
-
return props.showLayerPanel !== void 0 ? props.showLayerPanel : ((_a3 = finalMapConfig.value.ui) == null ? void 0 : _a3.showLayerPanel) ?? false;
|
|
482013
|
-
});
|
|
482014
482098
|
const showLegend = vue.computed(() => {
|
|
482015
482099
|
var _a3;
|
|
482016
482100
|
if (hasLegendSlot.value)
|
|
@@ -482053,18 +482137,22 @@ ${this.attributes_.map(
|
|
|
482053
482137
|
});
|
|
482054
482138
|
const finalShowControls = vue.computed(() => {
|
|
482055
482139
|
var _a3;
|
|
482056
|
-
|
|
482140
|
+
const controls = finalMapConfig.value.controls || {};
|
|
482141
|
+
const useCustomStyle = controls.useCustomStyle ?? ((_a3 = controls.tools) == null ? void 0 : _a3.useCustomStyle) ?? false;
|
|
482142
|
+
return props.showControls !== void 0 ? props.showControls : useCustomStyle;
|
|
482057
482143
|
});
|
|
482058
482144
|
const finalControlsConfig = vue.computed(() => {
|
|
482059
|
-
|
|
482145
|
+
const controls = finalMapConfig.value.controls || {};
|
|
482146
|
+
const { tools = {}, ...controlsRest } = controls;
|
|
482060
482147
|
return {
|
|
482061
|
-
...
|
|
482062
|
-
|
|
482063
|
-
|
|
482064
|
-
|
|
482065
|
-
|
|
482066
|
-
|
|
482067
|
-
|
|
482148
|
+
...tools,
|
|
482149
|
+
...controlsRest,
|
|
482150
|
+
position: props.controlsPosition || controlsRest.position || tools.position || "bottom-left",
|
|
482151
|
+
direction: props.controlsDirection || controlsRest.direction || tools.direction || "vertical",
|
|
482152
|
+
leftOffset: props.controlsLeftOffset || controlsRest.leftOffset,
|
|
482153
|
+
rightOffset: props.controlsRightOffset || controlsRest.rightOffset,
|
|
482154
|
+
topOffset: props.controlsTopOffset || controlsRest.topOffset,
|
|
482155
|
+
bottomOffset: props.controlsBottomOffset || controlsRest.bottomOffset,
|
|
482068
482156
|
...props.controlsConfig
|
|
482069
482157
|
};
|
|
482070
482158
|
});
|
|
@@ -482115,9 +482203,23 @@ ${this.attributes_.map(
|
|
|
482115
482203
|
});
|
|
482116
482204
|
const measurementResults = vue.ref([]);
|
|
482117
482205
|
const layerPanelConfig = vue.computed(() => {
|
|
482206
|
+
var _a3, _b3;
|
|
482118
482207
|
console.log("🔍 [CustomOpenlayer] layerPanelConfig计算中...");
|
|
482119
482208
|
console.log("🔍 [CustomOpenlayer] loadedConfig.value:", loadedConfig.value);
|
|
482120
482209
|
console.log("🔍 [CustomOpenlayer] props.mapConfig:", props.mapConfig);
|
|
482210
|
+
const lpControls = ((_b3 = (_a3 = finalMapConfig.value) == null ? void 0 : _a3.controls) == null ? void 0 : _b3.layerPanel) || {};
|
|
482211
|
+
const ui2 = {
|
|
482212
|
+
title: lpControls.title ?? "图层管理",
|
|
482213
|
+
width: lpControls.width ?? "350px",
|
|
482214
|
+
height: lpControls.height ?? "600px",
|
|
482215
|
+
modal: lpControls.modal ?? false,
|
|
482216
|
+
draggable: lpControls.draggable ?? true,
|
|
482217
|
+
resizable: lpControls.resizable ?? true,
|
|
482218
|
+
showClose: lpControls.showClose ?? true,
|
|
482219
|
+
position: lpControls.position ?? "right",
|
|
482220
|
+
cacheId: lpControls.cacheId ?? "layer-dialog",
|
|
482221
|
+
className: lpControls.className ?? "layer-dialog"
|
|
482222
|
+
};
|
|
482121
482223
|
if (loadedConfig.value) {
|
|
482122
482224
|
const hasLayers = loadedConfig.value.baseLayers && loadedConfig.value.baseLayers.length > 0 || loadedConfig.value.overlayLayers && loadedConfig.value.overlayLayers.length > 0 || loadedConfig.value.vectorLayers && loadedConfig.value.vectorLayers.length > 0;
|
|
482123
482225
|
console.log("🔍 [CustomOpenlayer] loadedConfig hasLayers:", hasLayers);
|
|
@@ -482125,7 +482227,8 @@ ${this.attributes_.map(
|
|
|
482125
482227
|
const config = {
|
|
482126
482228
|
baseLayers: loadedConfig.value.baseLayers || [],
|
|
482127
482229
|
overlayLayers: loadedConfig.value.overlayLayers || [],
|
|
482128
|
-
vectorLayers: loadedConfig.value.vectorLayers || []
|
|
482230
|
+
vectorLayers: loadedConfig.value.vectorLayers || [],
|
|
482231
|
+
ui: ui2
|
|
482129
482232
|
};
|
|
482130
482233
|
console.log("🔍 [CustomOpenlayer] 使用loadedConfig,返回配置:", config);
|
|
482131
482234
|
return config;
|
|
@@ -482135,7 +482238,8 @@ ${this.attributes_.map(
|
|
|
482135
482238
|
const config = {
|
|
482136
482239
|
baseLayers: props.mapConfig.baseLayers || [],
|
|
482137
482240
|
overlayLayers: props.mapConfig.overlayLayers || [],
|
|
482138
|
-
vectorLayers: props.mapConfig.vectorLayers || []
|
|
482241
|
+
vectorLayers: props.mapConfig.vectorLayers || [],
|
|
482242
|
+
ui: ui2
|
|
482139
482243
|
};
|
|
482140
482244
|
console.log("🔍 [CustomOpenlayer] 使用props.mapConfig,返回配置:", config);
|
|
482141
482245
|
console.log("🔍 [CustomOpenlayer] overlayLayers数量:", config.overlayLayers.length);
|
|
@@ -482148,7 +482252,8 @@ ${this.attributes_.map(
|
|
|
482148
482252
|
return {
|
|
482149
482253
|
baseLayers: [],
|
|
482150
482254
|
overlayLayers: [],
|
|
482151
|
-
vectorLayers: []
|
|
482255
|
+
vectorLayers: [],
|
|
482256
|
+
ui: ui2
|
|
482152
482257
|
};
|
|
482153
482258
|
});
|
|
482154
482259
|
const measurementTool = vue.ref(null);
|
|
@@ -482179,6 +482284,14 @@ ${this.attributes_.map(
|
|
|
482179
482284
|
},
|
|
482180
482285
|
{ deep: true }
|
|
482181
482286
|
);
|
|
482287
|
+
vue.watch(
|
|
482288
|
+
() => props.showLayerPanel,
|
|
482289
|
+
(val) => {
|
|
482290
|
+
if (val !== void 0) {
|
|
482291
|
+
showLayerPanel.value = val;
|
|
482292
|
+
}
|
|
482293
|
+
}
|
|
482294
|
+
);
|
|
482182
482295
|
vue.watch(
|
|
482183
482296
|
finalMapConfig,
|
|
482184
482297
|
(newConfig) => {
|
|
@@ -482195,7 +482308,12 @@ ${this.attributes_.map(
|
|
|
482195
482308
|
{ deep: true }
|
|
482196
482309
|
);
|
|
482197
482310
|
vue.onMounted(async () => {
|
|
482311
|
+
var _a3, _b3;
|
|
482198
482312
|
await loadConfig();
|
|
482313
|
+
const defaultLayerPanelOpen = props.showLayerPanel !== void 0 ? props.showLayerPanel : ((_b3 = (_a3 = finalMapConfig.value.controls) == null ? void 0 : _a3.layerPanel) == null ? void 0 : _b3.defaultOpen) ?? false;
|
|
482314
|
+
if (defaultLayerPanelOpen) {
|
|
482315
|
+
showLayerPanel.value = true;
|
|
482316
|
+
}
|
|
482199
482317
|
if (props.enableStorage) {
|
|
482200
482318
|
loadStoredData();
|
|
482201
482319
|
}
|
|
@@ -482431,10 +482549,6 @@ ${this.attributes_.map(
|
|
|
482431
482549
|
const onSearchClear = () => {
|
|
482432
482550
|
emit("search-clear");
|
|
482433
482551
|
};
|
|
482434
|
-
const onLayerChange = (layer2) => {
|
|
482435
|
-
emit("layer-change", layer2);
|
|
482436
|
-
console.log("Layer changed:", layer2);
|
|
482437
|
-
};
|
|
482438
482552
|
const onShowLayerPanel = () => {
|
|
482439
482553
|
showLayerPanel.value = true;
|
|
482440
482554
|
};
|
|
@@ -482990,16 +483104,22 @@ ${this.attributes_.map(
|
|
|
482990
483104
|
hasToolbarSlot.value ? vue.renderSlot(_ctx.$slots, "toolbar", { key: 2 }, void 0, true) : vue.createCommentVNode("", true),
|
|
482991
483105
|
hasMapInfoSlot.value ? vue.renderSlot(_ctx.$slots, "mapInfo", { key: 3 }, void 0, true) : vue.createCommentVNode("", true),
|
|
482992
483106
|
hasMapInfoSlot.value ? vue.renderSlot(_ctx.$slots, "map-info", { key: 4 }, void 0, true) : vue.createCommentVNode("", true),
|
|
482993
|
-
|
|
483107
|
+
finalEnableLayerPanel.value ? (vue.openBlock(), vue.createBlock(LayerPanel, {
|
|
482994
483108
|
key: 5,
|
|
482995
483109
|
modelValue: showLayerPanel.value,
|
|
482996
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => showLayerPanel.value = $event)
|
|
482997
|
-
|
|
482998
|
-
|
|
482999
|
-
|
|
483000
|
-
|
|
483110
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => showLayerPanel.value = $event)
|
|
483111
|
+
}, vue.createSlots({ _: 2 }, [
|
|
483112
|
+
hasLayerPanelSlot.value ? {
|
|
483113
|
+
name: "default",
|
|
483114
|
+
fn: vue.withCtx((panel) => [
|
|
483115
|
+
vue.renderSlot(_ctx.$slots, "layerPanel", vue.normalizeProps(vue.guardReactiveProps(panel)), void 0, true),
|
|
483116
|
+
vue.renderSlot(_ctx.$slots, "layer-panel", vue.normalizeProps(vue.guardReactiveProps(panel)), void 0, true)
|
|
483117
|
+
]),
|
|
483118
|
+
key: "0"
|
|
483119
|
+
} : void 0
|
|
483120
|
+
]), 1032, ["modelValue"])) : vue.createCommentVNode("", true),
|
|
483001
483121
|
showLegend.value ? (vue.openBlock(), vue.createBlock(LegendPanel, {
|
|
483002
|
-
key:
|
|
483122
|
+
key: 6,
|
|
483003
483123
|
position: finalLegendPosition.value,
|
|
483004
483124
|
width: finalLegendWidth.value,
|
|
483005
483125
|
collapsible: finalLegendCollapsible.value,
|
|
@@ -483010,7 +483130,7 @@ ${this.attributes_.map(
|
|
|
483010
483130
|
"top-offset": props.legendTopOffset,
|
|
483011
483131
|
"bottom-offset": props.legendBottomOffset
|
|
483012
483132
|
}, null, 8, ["position", "width", "collapsible", "default-collapsed", "show-only-visible", "left-offset", "right-offset", "top-offset", "bottom-offset"])) : vue.createCommentVNode("", true),
|
|
483013
|
-
hasLegendSlot.value ? vue.renderSlot(_ctx.$slots, "legend", { key:
|
|
483133
|
+
hasLegendSlot.value ? vue.renderSlot(_ctx.$slots, "legend", { key: 7 }, void 0, true) : vue.createCommentVNode("", true),
|
|
483014
483134
|
measurementResults.value.length > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
|
|
483015
483135
|
vue.createElementVNode("div", _hoisted_2, [
|
|
483016
483136
|
_cache[6] || (_cache[6] = vue.createElementVNode("h4", { class: "m-0 text-sm font-semibold text-gray-800" }, "测量结果", -1)),
|
|
@@ -483057,8 +483177,8 @@ ${this.attributes_.map(
|
|
|
483057
483177
|
};
|
|
483058
483178
|
}
|
|
483059
483179
|
});
|
|
483060
|
-
const
|
|
483061
|
-
const CustomOpenlayer = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
483180
|
+
const index_vue_vue_type_style_index_0_scoped_a8800082_lang = "";
|
|
483181
|
+
const CustomOpenlayer = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-a8800082"]]);
|
|
483062
483182
|
const base = "";
|
|
483063
483183
|
var u8 = Uint8Array, u16 = Uint16Array, i32 = Int32Array;
|
|
483064
483184
|
var fleb = new u8([
|
package/lib/style.css
CHANGED
|
@@ -2160,18 +2160,18 @@ label[data-v-21ab8d8c] {
|
|
|
2160
2160
|
}
|
|
2161
2161
|
|
|
2162
2162
|
.layer-dialog {
|
|
2163
|
-
&[data-v-
|
|
2163
|
+
&[data-v-d12fef13] {
|
|
2164
2164
|
/* 全局样式面板样式 */
|
|
2165
2165
|
|
|
2166
2166
|
/* 主标签页样式 */
|
|
2167
2167
|
}
|
|
2168
2168
|
.global-style-panel {
|
|
2169
|
-
&[data-v-
|
|
2169
|
+
&[data-v-d12fef13] {
|
|
2170
2170
|
padding: 16px;
|
|
2171
2171
|
border-bottom: 1px solid #eee;
|
|
2172
2172
|
background-color: #f8f9fa;
|
|
2173
2173
|
}
|
|
2174
|
-
.panel-title[data-v-
|
|
2174
|
+
.panel-title[data-v-d12fef13] {
|
|
2175
2175
|
margin: 0 0 16px 0;
|
|
2176
2176
|
font-size: 14px;
|
|
2177
2177
|
font-weight: 600;
|
|
@@ -2180,32 +2180,32 @@ label[data-v-21ab8d8c] {
|
|
|
2180
2180
|
padding-bottom: 8px;
|
|
2181
2181
|
}
|
|
2182
2182
|
.config-section {
|
|
2183
|
-
&[data-v-
|
|
2183
|
+
&[data-v-d12fef13] {
|
|
2184
2184
|
margin-bottom: 16px;
|
|
2185
2185
|
}
|
|
2186
|
-
h5[data-v-
|
|
2186
|
+
h5[data-v-d12fef13] {
|
|
2187
2187
|
margin: 0 0 12px 0;
|
|
2188
2188
|
font-size: 13px;
|
|
2189
2189
|
font-weight: 500;
|
|
2190
2190
|
color: #666;
|
|
2191
2191
|
}
|
|
2192
2192
|
.config-item {
|
|
2193
|
-
&[data-v-
|
|
2193
|
+
&[data-v-d12fef13] {
|
|
2194
2194
|
display: flex;
|
|
2195
2195
|
align-items: center;
|
|
2196
2196
|
margin-bottom: 12px;
|
|
2197
2197
|
gap: 8px;
|
|
2198
2198
|
}
|
|
2199
|
-
label[data-v-
|
|
2199
|
+
label[data-v-d12fef13] {
|
|
2200
2200
|
flex: 0 0 60px;
|
|
2201
2201
|
font-size: 12px;
|
|
2202
2202
|
color: #666;
|
|
2203
2203
|
}
|
|
2204
|
-
.el-slider[data-v-
|
|
2204
|
+
.el-slider[data-v-d12fef13] {
|
|
2205
2205
|
flex: 1;
|
|
2206
2206
|
margin: 0 8px;
|
|
2207
2207
|
}
|
|
2208
|
-
.value-text[data-v-
|
|
2208
|
+
.value-text[data-v-d12fef13] {
|
|
2209
2209
|
flex: 0 0 45px;
|
|
2210
2210
|
font-size: 12px;
|
|
2211
2211
|
color: #999;
|
|
@@ -2213,29 +2213,29 @@ label[data-v-c66f28f2] {
|
|
|
2213
2213
|
}
|
|
2214
2214
|
}
|
|
2215
2215
|
.preset-buttons {
|
|
2216
|
-
&[data-v-
|
|
2216
|
+
&[data-v-d12fef13] {
|
|
2217
2217
|
display: flex;
|
|
2218
2218
|
gap: 6px;
|
|
2219
2219
|
flex-wrap: wrap;
|
|
2220
2220
|
}
|
|
2221
|
-
.el-button[data-v-
|
|
2221
|
+
.el-button[data-v-d12fef13] {
|
|
2222
2222
|
flex: 1;
|
|
2223
2223
|
min-width: 60px;
|
|
2224
2224
|
}
|
|
2225
2225
|
}
|
|
2226
2226
|
}
|
|
2227
|
-
.panel-actions[data-v-
|
|
2227
|
+
.panel-actions[data-v-d12fef13] {
|
|
2228
2228
|
margin-top: 16px;
|
|
2229
2229
|
padding-top: 12px;
|
|
2230
2230
|
border-top: 1px solid #ddd;
|
|
2231
2231
|
text-align: center;
|
|
2232
2232
|
}
|
|
2233
|
-
.custom-css-input[data-v-
|
|
2233
|
+
.custom-css-input[data-v-d12fef13] {
|
|
2234
2234
|
font-family: 'Courier New', monospace;
|
|
2235
2235
|
font-size: 12px;
|
|
2236
2236
|
line-height: 1.4;
|
|
2237
2237
|
}
|
|
2238
|
-
.custom-css-input[data-v-
|
|
2238
|
+
.custom-css-input[data-v-d12fef13] .el-textarea__inner {
|
|
2239
2239
|
font-family: 'Courier New', monospace;
|
|
2240
2240
|
font-size: 12px;
|
|
2241
2241
|
line-height: 1.4;
|
|
@@ -2243,37 +2243,37 @@ label[data-v-c66f28f2] {
|
|
|
2243
2243
|
border: 1px solid #e9ecef;
|
|
2244
2244
|
}
|
|
2245
2245
|
.style-tabs {
|
|
2246
|
-
[data-v-
|
|
2246
|
+
[data-v-d12fef13] .el-tabs__header {
|
|
2247
2247
|
margin: 0 0 16px 0;
|
|
2248
2248
|
}
|
|
2249
|
-
[data-v-
|
|
2249
|
+
[data-v-d12fef13] .el-tabs__nav-wrap {
|
|
2250
2250
|
padding: 0;
|
|
2251
2251
|
}
|
|
2252
|
-
[data-v-
|
|
2252
|
+
[data-v-d12fef13] .el-tabs__item {
|
|
2253
2253
|
font-size: 12px;
|
|
2254
2254
|
padding: 0 16px;
|
|
2255
2255
|
height: 32px;
|
|
2256
2256
|
line-height: 32px;
|
|
2257
2257
|
}
|
|
2258
|
-
[data-v-
|
|
2258
|
+
[data-v-d12fef13] .el-tabs__content {
|
|
2259
2259
|
padding: 0;
|
|
2260
2260
|
}
|
|
2261
2261
|
}
|
|
2262
2262
|
.current-style-display {
|
|
2263
|
-
&[data-v-
|
|
2263
|
+
&[data-v-d12fef13] {
|
|
2264
2264
|
margin-top: 16px;
|
|
2265
2265
|
padding: 12px;
|
|
2266
2266
|
background-color: #f5f5f5;
|
|
2267
2267
|
border-radius: 4px;
|
|
2268
2268
|
border: 1px solid #e9ecef;
|
|
2269
2269
|
}
|
|
2270
|
-
h6[data-v-
|
|
2270
|
+
h6[data-v-d12fef13] {
|
|
2271
2271
|
margin: 0 0 8px 0;
|
|
2272
2272
|
font-size: 12px;
|
|
2273
2273
|
font-weight: 500;
|
|
2274
2274
|
color: #666;
|
|
2275
2275
|
}
|
|
2276
|
-
.style-preview[data-v-
|
|
2276
|
+
.style-preview[data-v-d12fef13] {
|
|
2277
2277
|
font-family: 'Courier New', monospace;
|
|
2278
2278
|
font-size: 11px;
|
|
2279
2279
|
line-height: 1.4;
|
|
@@ -2289,17 +2289,17 @@ h6[data-v-c66f28f2] {
|
|
|
2289
2289
|
}
|
|
2290
2290
|
}
|
|
2291
2291
|
}
|
|
2292
|
-
.main-tabs[data-v-
|
|
2292
|
+
.main-tabs[data-v-d12fef13] {
|
|
2293
2293
|
height: 100%;
|
|
2294
2294
|
display: flex;
|
|
2295
2295
|
flex-direction: column;
|
|
2296
2296
|
}
|
|
2297
|
-
.main-tabs .el-tabs__content[data-v-
|
|
2297
|
+
.main-tabs .el-tabs__content[data-v-d12fef13] {
|
|
2298
2298
|
flex: 1;
|
|
2299
2299
|
overflow: hidden;
|
|
2300
2300
|
padding: 0;
|
|
2301
2301
|
}
|
|
2302
|
-
.main-tabs .el-tab-pane[data-v-
|
|
2302
|
+
.main-tabs .el-tab-pane[data-v-d12fef13] {
|
|
2303
2303
|
height: 100%;
|
|
2304
2304
|
overflow: auto;
|
|
2305
2305
|
display: flex;
|
|
@@ -2307,16 +2307,16 @@ h6[data-v-c66f28f2] {
|
|
|
2307
2307
|
}
|
|
2308
2308
|
.layer-tree {
|
|
2309
2309
|
.tree-node-content {
|
|
2310
|
-
&[data-v-
|
|
2310
|
+
&[data-v-d12fef13] {
|
|
2311
2311
|
width: 100%;
|
|
2312
2312
|
}
|
|
2313
|
-
.group-node[data-v-
|
|
2313
|
+
.group-node[data-v-d12fef13] {
|
|
2314
2314
|
display: flex;
|
|
2315
2315
|
align-items: center;
|
|
2316
2316
|
padding: 8px 0;
|
|
2317
2317
|
}
|
|
2318
2318
|
.layer-item {
|
|
2319
|
-
&[data-v-
|
|
2319
|
+
&[data-v-d12fef13] {
|
|
2320
2320
|
display: flex;
|
|
2321
2321
|
align-items: center;
|
|
2322
2322
|
justify-content: space-between;
|
|
@@ -2324,17 +2324,17 @@ h6[data-v-c66f28f2] {
|
|
|
2324
2324
|
padding: 6px 0;
|
|
2325
2325
|
}
|
|
2326
2326
|
.layer-info {
|
|
2327
|
-
&[data-v-
|
|
2327
|
+
&[data-v-d12fef13] {
|
|
2328
2328
|
display: flex;
|
|
2329
2329
|
align-items: center;
|
|
2330
2330
|
flex: 1;
|
|
2331
2331
|
min-width: 0;
|
|
2332
2332
|
}
|
|
2333
|
-
.layer-icon[data-v-
|
|
2333
|
+
.layer-icon[data-v-d12fef13] {
|
|
2334
2334
|
margin-right: 8px;
|
|
2335
2335
|
flex-shrink: 0;
|
|
2336
2336
|
}
|
|
2337
|
-
.layer-name[data-v-
|
|
2337
|
+
.layer-name[data-v-d12fef13] {
|
|
2338
2338
|
font-size: 14px;
|
|
2339
2339
|
color: #333;
|
|
2340
2340
|
white-space: nowrap;
|
|
@@ -2343,23 +2343,23 @@ h6[data-v-c66f28f2] {
|
|
|
2343
2343
|
}
|
|
2344
2344
|
}
|
|
2345
2345
|
.layer-controls {
|
|
2346
|
-
&[data-v-
|
|
2346
|
+
&[data-v-d12fef13] {
|
|
2347
2347
|
display: flex;
|
|
2348
2348
|
align-items: center;
|
|
2349
2349
|
gap: 8px;
|
|
2350
2350
|
}
|
|
2351
2351
|
.opacity-control {
|
|
2352
|
-
&[data-v-
|
|
2352
|
+
&[data-v-d12fef13] {
|
|
2353
2353
|
display: flex;
|
|
2354
2354
|
align-items: center;
|
|
2355
2355
|
gap: 8px;
|
|
2356
2356
|
min-width: 120px;
|
|
2357
2357
|
}
|
|
2358
|
-
.opacity-slider[data-v-
|
|
2358
|
+
.opacity-slider[data-v-d12fef13] {
|
|
2359
2359
|
flex: 1;
|
|
2360
2360
|
min-width: 80px;
|
|
2361
2361
|
}
|
|
2362
|
-
.opacity-value[data-v-
|
|
2362
|
+
.opacity-value[data-v-d12fef13] {
|
|
2363
2363
|
font-size: 12px;
|
|
2364
2364
|
color: #666;
|
|
2365
2365
|
min-width: 35px;
|
|
@@ -2367,7 +2367,7 @@ h6[data-v-c66f28f2] {
|
|
|
2367
2367
|
white-space: nowrap;
|
|
2368
2368
|
}
|
|
2369
2369
|
}
|
|
2370
|
-
.style-config-btn[data-v-
|
|
2370
|
+
.style-config-btn[data-v-d12fef13] {
|
|
2371
2371
|
width: 24px;
|
|
2372
2372
|
height: 24px;
|
|
2373
2373
|
padding: 0;
|
|
@@ -2380,7 +2380,7 @@ h6[data-v-c66f28f2] {
|
|
|
2380
2380
|
}
|
|
2381
2381
|
|
|
2382
2382
|
/* 样式配置面板样式 */
|
|
2383
|
-
[data-v-
|
|
2383
|
+
[data-v-d12fef13] .layer-style-popover {
|
|
2384
2384
|
.style-config-panel {
|
|
2385
2385
|
& {
|
|
2386
2386
|
padding: 0;
|
|
@@ -2459,7 +2459,7 @@ label {
|
|
|
2459
2459
|
}
|
|
2460
2460
|
}
|
|
2461
2461
|
|
|
2462
|
-
.context-menu[data-v-
|
|
2462
|
+
.context-menu[data-v-a8800082] {
|
|
2463
2463
|
background: white;
|
|
2464
2464
|
border: 1px solid #dcdfe6;
|
|
2465
2465
|
border-radius: 4px;
|
|
@@ -2467,7 +2467,7 @@ label {
|
|
|
2467
2467
|
padding: 4px 0;
|
|
2468
2468
|
min-width: 120px;
|
|
2469
2469
|
}
|
|
2470
|
-
.context-menu-item[data-v-
|
|
2470
|
+
.context-menu-item[data-v-a8800082] {
|
|
2471
2471
|
display: flex;
|
|
2472
2472
|
align-items: center;
|
|
2473
2473
|
padding: 8px 12px;
|
|
@@ -2476,10 +2476,10 @@ label {
|
|
|
2476
2476
|
color: #606266;
|
|
2477
2477
|
transition: background-color 0.3s;
|
|
2478
2478
|
}
|
|
2479
|
-
.context-menu-item[data-v-
|
|
2479
|
+
.context-menu-item[data-v-a8800082]:hover {
|
|
2480
2480
|
background-color: #f5f7fa;
|
|
2481
2481
|
}
|
|
2482
|
-
.context-menu-item .el-icon[data-v-
|
|
2482
|
+
.context-menu-item .el-icon[data-v-a8800082] {
|
|
2483
2483
|
margin-right: 8px;
|
|
2484
2484
|
font-size: 16px;
|
|
2485
2485
|
}
|