ym-giswidget-2d 1.0.54 → 1.0.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,33 +1,33 @@
1
- # olComponents
2
-
3
- This template should help get you started developing with Vue 3 in Vite.
4
-
5
- ## Recommended IDE Setup
6
-
7
- [VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur).
8
-
9
- ## Type Support for `.vue` Imports in TS
10
-
11
- TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) to make the TypeScript language service aware of `.vue` types.
12
-
13
- ## Customize configuration
14
-
15
- See [Vite Configuration Reference](https://vitejs.dev/config/).
16
-
17
- ## Project Setup
18
-
19
- ```sh
20
- pnpm install
21
- ```
22
-
23
- ### Compile and Hot-Reload for Development
24
-
25
- ```sh
26
- pnpm dev
27
- ```
28
-
29
- ### Type-Check, Compile and Minify for Production
30
-
31
- ```sh
32
- pnpm build
33
- ```
1
+ # olComponents
2
+
3
+ This template should help get you started developing with Vue 3 in Vite.
4
+
5
+ ## Recommended IDE Setup
6
+
7
+ [VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur).
8
+
9
+ ## Type Support for `.vue` Imports in TS
10
+
11
+ TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) to make the TypeScript language service aware of `.vue` types.
12
+
13
+ ## Customize configuration
14
+
15
+ See [Vite Configuration Reference](https://vitejs.dev/config/).
16
+
17
+ ## Project Setup
18
+
19
+ ```sh
20
+ pnpm install
21
+ ```
22
+
23
+ ### Compile and Hot-Reload for Development
24
+
25
+ ```sh
26
+ pnpm dev
27
+ ```
28
+
29
+ ### Type-Check, Compile and Minify for Production
30
+
31
+ ```sh
32
+ pnpm build
33
+ ```
@@ -1,39 +1,39 @@
1
- @font-face {
2
- font-family: "iconfont"; /* Project id 4810358 */
3
- src: url('iconfont.woff2?t=1736821977689') format('woff2'),
4
- url('iconfont.woff?t=1736821977689') format('woff'),
5
- url('iconfont.ttf?t=1736821977689') format('truetype');
6
- }
7
-
8
- .iconfont {
9
- font-family: "iconfont" !important;
10
- font-size: 16px;
11
- font-style: normal;
12
- -webkit-font-smoothing: antialiased;
13
- -moz-osx-font-smoothing: grayscale;
14
- }
15
-
16
- .icon-undock:before {
17
- content: "\e718";
18
- }
19
-
20
- .icon-dock:before {
21
- content: "\e601";
22
- }
23
-
24
- .icon-minimize:before {
25
- content: "\e646";
26
- }
27
-
28
- .icon-restore:before {
29
- content: "\e600";
30
- }
31
-
32
- .icon-close:before {
33
- content: "\e70f";
34
- }
35
-
36
- .icon-maximize:before {
37
- content: "\e651";
38
- }
39
-
1
+ @font-face {
2
+ font-family: "iconfont"; /* Project id 4810358 */
3
+ src: url('iconfont.woff2?t=1736821977689') format('woff2'),
4
+ url('iconfont.woff?t=1736821977689') format('woff'),
5
+ url('iconfont.ttf?t=1736821977689') format('truetype');
6
+ }
7
+
8
+ .iconfont {
9
+ font-family: "iconfont" !important;
10
+ font-size: 16px;
11
+ font-style: normal;
12
+ -webkit-font-smoothing: antialiased;
13
+ -moz-osx-font-smoothing: grayscale;
14
+ }
15
+
16
+ .icon-undock:before {
17
+ content: "\e718";
18
+ }
19
+
20
+ .icon-dock:before {
21
+ content: "\e601";
22
+ }
23
+
24
+ .icon-minimize:before {
25
+ content: "\e646";
26
+ }
27
+
28
+ .icon-restore:before {
29
+ content: "\e600";
30
+ }
31
+
32
+ .icon-close:before {
33
+ content: "\e70f";
34
+ }
35
+
36
+ .icon-maximize:before {
37
+ content: "\e651";
38
+ }
39
+
@@ -1,51 +1,51 @@
1
- {
2
- "id": "4810358",
3
- "name": "print-map",
4
- "font_family": "iconfont",
5
- "css_prefix_text": "icon-",
6
- "description": "",
7
- "glyphs": [
8
- {
9
- "icon_id": "21967058",
10
- "name": "未停靠",
11
- "font_class": "undock",
12
- "unicode": "e718",
13
- "unicode_decimal": 59160
14
- },
15
- {
16
- "icon_id": "39867073",
17
- "name": "停靠",
18
- "font_class": "dock",
19
- "unicode": "e601",
20
- "unicode_decimal": 58881
21
- },
22
- {
23
- "icon_id": "659177",
24
- "name": "最小化",
25
- "font_class": "minimize",
26
- "unicode": "e646",
27
- "unicode_decimal": 58950
28
- },
29
- {
30
- "icon_id": "4485682",
31
- "name": "还原窗体",
32
- "font_class": "restore",
33
- "unicode": "e600",
34
- "unicode_decimal": 58880
35
- },
36
- {
37
- "icon_id": "6705520",
38
- "name": "关闭",
39
- "font_class": "close",
40
- "unicode": "e70f",
41
- "unicode_decimal": 59151
42
- },
43
- {
44
- "icon_id": "11490920",
45
- "name": "最大化",
46
- "font_class": "maximize",
47
- "unicode": "e651",
48
- "unicode_decimal": 58961
49
- }
50
- ]
51
- }
1
+ {
2
+ "id": "4810358",
3
+ "name": "print-map",
4
+ "font_family": "iconfont",
5
+ "css_prefix_text": "icon-",
6
+ "description": "",
7
+ "glyphs": [
8
+ {
9
+ "icon_id": "21967058",
10
+ "name": "未停靠",
11
+ "font_class": "undock",
12
+ "unicode": "e718",
13
+ "unicode_decimal": 59160
14
+ },
15
+ {
16
+ "icon_id": "39867073",
17
+ "name": "停靠",
18
+ "font_class": "dock",
19
+ "unicode": "e601",
20
+ "unicode_decimal": 58881
21
+ },
22
+ {
23
+ "icon_id": "659177",
24
+ "name": "最小化",
25
+ "font_class": "minimize",
26
+ "unicode": "e646",
27
+ "unicode_decimal": 58950
28
+ },
29
+ {
30
+ "icon_id": "4485682",
31
+ "name": "还原窗体",
32
+ "font_class": "restore",
33
+ "unicode": "e600",
34
+ "unicode_decimal": 58880
35
+ },
36
+ {
37
+ "icon_id": "6705520",
38
+ "name": "关闭",
39
+ "font_class": "close",
40
+ "unicode": "e70f",
41
+ "unicode_decimal": 59151
42
+ },
43
+ {
44
+ "icon_id": "11490920",
45
+ "name": "最大化",
46
+ "font_class": "maximize",
47
+ "unicode": "e651",
48
+ "unicode_decimal": 58961
49
+ }
50
+ ]
51
+ }
@@ -0,0 +1,4 @@
1
+ import _sfc_main from "./Difference.vue2.js";
2
+ export {
3
+ _sfc_main as default
4
+ };
@@ -0,0 +1,76 @@
1
+ import { defineComponent, reactive, onMounted, toRaw, onUnmounted } from "vue";
2
+ import Difference from "ym-gis-2d/interaction/Difference";
3
+ import { ElLoading, ElMessage } from "element-plus";
4
+ import FeatureManager from "ym-gis-2d/feature/FeatureManager";
5
+ const _sfc_main = /* @__PURE__ */ defineComponent({
6
+ __name: "Difference",
7
+ props: {
8
+ map: {},
9
+ showLoading: { type: Boolean, default: true },
10
+ fieldName: {},
11
+ fieldValues: {}
12
+ },
13
+ emits: ["activeInteraction"],
14
+ setup(__props, { expose: __expose, emit: __emit }) {
15
+ const props = __props;
16
+ const emit = __emit;
17
+ const reactiveData = reactive({
18
+ features: []
19
+ });
20
+ onMounted(() => {
21
+ const featureManager = new FeatureManager(props.map);
22
+ const editFeatures = featureManager.getEditFeatures(props.fieldName, props.fieldValues);
23
+ if (!editFeatures || editFeatures.length === 0) {
24
+ emit("activeInteraction", { success: false, message: "请先选择分割的地块" });
25
+ return;
26
+ }
27
+ reactiveData.differenceTool = new Difference(editFeatures, {
28
+ tipText: "绘制面挖除要素",
29
+ addTempLayer: true
30
+ //是否添加临时图层
31
+ });
32
+ props.map.interactionManager.addInteraction("difference", toRaw(reactiveData.differenceTool));
33
+ let loadingInstance;
34
+ reactiveData.differenceTool.on("holeStart", (event) => {
35
+ if (props.showLoading) {
36
+ loadingInstance = ElLoading.service({ text: "正在挖除...", background: "rgba(0, 0, 0, 0.5)", target: props.map.getTarget() });
37
+ }
38
+ });
39
+ reactiveData.differenceTool.on("holed", (event) => {
40
+ var _a;
41
+ loadingInstance == null ? void 0 : loadingInstance.close();
42
+ if (event.error) {
43
+ ElMessage.error("挖除失败:" + event.error);
44
+ return;
45
+ }
46
+ const features = event.features;
47
+ if (features && features.length > 0) {
48
+ features.forEach((feature) => {
49
+ feature.isSelected = true;
50
+ });
51
+ }
52
+ let editFeatures2 = featureManager.getEditFeatures(props.fieldName, props.fieldValues);
53
+ if (editFeatures2 && editFeatures2.length > 0) {
54
+ (_a = reactiveData.differenceTool) == null ? void 0 : _a.setFeatures(editFeatures2);
55
+ }
56
+ });
57
+ });
58
+ onUnmounted(() => {
59
+ props.map.interactionManager.removeInteraction("difference");
60
+ });
61
+ function setFeatures(features) {
62
+ var _a;
63
+ (_a = reactiveData.differenceTool) == null ? void 0 : _a.setFeatures(features);
64
+ }
65
+ __expose({
66
+ setFeatures,
67
+ features: reactiveData.features
68
+ });
69
+ return (_ctx, _cache) => {
70
+ return null;
71
+ };
72
+ }
73
+ });
74
+ export {
75
+ _sfc_main as default
76
+ };
@@ -0,0 +1,7 @@
1
+ import { withInstall } from "../../utils/wthInstall.js";
2
+ import _sfc_main from "./Difference.vue2.js";
3
+ const Difference = withInstall(_sfc_main);
4
+ export {
5
+ Difference,
6
+ Difference as default
7
+ };
@@ -1,7 +1,7 @@
1
1
  import _sfc_main from "./HorizontallyTopToolbar.vue2.js";
2
2
  /* empty css */
3
3
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
4
- const _HorizontallyTopToolbar = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-18eedeea"]]);
4
+ const _HorizontallyTopToolbar = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-647a59e2"]]);
5
5
  export {
6
6
  _HorizontallyTopToolbar as default
7
7
  };
@@ -104,6 +104,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
104
104
  classPath: "../tools/clear/Clear.vue",
105
105
  icon: "./img/tool/clear.png",
106
106
  isOnce: true
107
+ },
108
+ {
109
+ id: "splitTool",
110
+ title: "分割",
111
+ classPath: "split/Split.vue",
112
+ icon: "./img/tool/clear.png",
113
+ isOnce: true
114
+ },
115
+ {
116
+ id: "differenceTool",
117
+ title: "挖除",
118
+ classPath: "../difference/index.ts",
119
+ icon: "./img/tool/clear.png",
120
+ isOnce: false,
121
+ isRepels: true
107
122
  }
108
123
  ]
109
124
  },
@@ -128,7 +143,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
128
143
  },
129
144
  emits: ["loaded"],
130
145
  setup(__props, { emit: __emit }) {
131
- const modules = /* @__PURE__ */ Object.assign({ "../area-measurement/AreaMeasurement.vue": () => import("../area-measurement/AreaMeasurement.vue2.js"), "../area-measurement/index.ts": () => import("../area-measurement/index.js"), "../clear/Clear.vue": () => import("../clear/Clear.vue2.js"), "../clear/index.ts": () => import("../clear/index.js"), "../distance-measurement/DistanceMeasurement.vue": () => import("../distance-measurement/DistanceMeasurement.vue.js"), "../draw/Draw.vue": () => import("../draw/Draw.vue2.js"), "../draw/index.ts": () => import("../draw/index.js"), "../export/Export.vue": () => import("../export/Export.vue.js"), "../export/index.ts": () => import("../export/index.js"), "./HorizontallyTopToolbar.vue": () => import("./HorizontallyTopToolbar.vue.js"), "./index.ts": () => import("./index.js"), "../identify/Identify.vue": () => import("../identify/Identify.vue2.js"), "../identify/index.ts": () => import("../identify/index.js"), "../import/Import.vue": () => import("../import/Import.vue2.js"), "../import/index.ts": () => import("../import/index.js"), "../layer-switcher/LayerSwitcher.vue": () => import("../layer-switcher/LayerSwitcher.vue.js"), "../layer-switcher/index.ts": () => import("../layer-switcher/index.js"), "../layer-tree/LayerTree.vue": () => import("../layer-tree/LayerTree.vue.js"), "../layer-tree/index.ts": () => import("../layer-tree/index.js"), "../legend/Legend.vue": () => import("../legend/Legend.vue.js"), "../legend/index.ts": () => import("../legend/index.js"), "../location/Location.vue": () => import("../location/Location.vue.js"), "../location/index.ts": () => import("../location/index.js"), "../map-view/MapView.vue": () => import("../map-view/MapView.vue2.js"), "../map-view/index.ts": () => import("../map-view/index.js"), "../mouse-position/MousePositon.vue": () => import("../mouse-position/MousePositon.vue.js"), "../mouse-position/index.ts": () => import("../mouse-position/index.js"), "../multi-screen-panel/PanelMultiScreen.vue": () => import("../multi-screen-panel/PanelMultiScreen.vue.js"), "../multi-screen-panel/index.ts": () => import("../multi-screen-panel/index.js"), "../multi-screen/MultiScreen.vue": () => import("../multi-screen/MultiScreen.vue.js"), "../multi-screen/index.ts": () => import("../multi-screen/index.js"), "../popup/Popup.vue": () => import("../popup/Popup.vue.js"), "../popup/index.ts": () => import("../popup/index.js"), "../scale-line/ScaleLine.vue": () => import("../scale-line/ScaleLine.vue.js"), "../scale-line/index.ts": () => import("../scale-line/index.js"), "../select/Select.vue": () => import("../select/Select.vue2.js"), "../select/index.ts": () => import("../select/index.js"), "../split/Split.vue": () => import("../split/Split.vue.js"), "../split/index.ts": () => import("../split/index.js"), "../swipe-layer/SwipeLayer.vue": () => import("../swipe-layer/SwipeLayer.vue2.js"), "../swipe-layer/index.ts": () => import("../swipe-layer/index.js"), "../toc-card/TocCard.vue": () => import("../toc-card/TocCard.vue.js"), "../toc-card/index.ts": () => import("../toc-card/index.js") });
146
+ const modules = /* @__PURE__ */ Object.assign({ "../area-measurement/AreaMeasurement.vue": () => import("../area-measurement/AreaMeasurement.vue2.js"), "../area-measurement/index.ts": () => import("../area-measurement/index.js"), "../clear/Clear.vue": () => import("../clear/Clear.vue2.js"), "../clear/index.ts": () => import("../clear/index.js"), "../difference/Difference.vue": () => import("../difference/Difference.vue.js"), "../difference/index.ts": () => import("../difference/index.js"), "../distance-measurement/DistanceMeasurement.vue": () => import("../distance-measurement/DistanceMeasurement.vue.js"), "../draw/Draw.vue": () => import("../draw/Draw.vue2.js"), "../draw/index.ts": () => import("../draw/index.js"), "../export/Export.vue": () => import("../export/Export.vue.js"), "../export/index.ts": () => import("../export/index.js"), "./HorizontallyTopToolbar.vue": () => import("./HorizontallyTopToolbar.vue.js"), "./index.ts": () => import("./index.js"), "../identify/Identify.vue": () => import("../identify/Identify.vue2.js"), "../identify/index.ts": () => import("../identify/index.js"), "../import/Import.vue": () => import("../import/Import.vue2.js"), "../import/index.ts": () => import("../import/index.js"), "../layer-switcher/LayerSwitcher.vue": () => import("../layer-switcher/LayerSwitcher.vue.js"), "../layer-switcher/index.ts": () => import("../layer-switcher/index.js"), "../layer-tree/LayerTree.vue": () => import("../layer-tree/LayerTree.vue.js"), "../layer-tree/index.ts": () => import("../layer-tree/index.js"), "../legend/Legend.vue": () => import("../legend/Legend.vue.js"), "../legend/index.ts": () => import("../legend/index.js"), "../location/Location.vue": () => import("../location/Location.vue.js"), "../location/index.ts": () => import("../location/index.js"), "../map-view/MapView.vue": () => import("../map-view/MapView.vue2.js"), "../map-view/index.ts": () => import("../map-view/index.js"), "../mouse-position/MousePositon.vue": () => import("../mouse-position/MousePositon.vue.js"), "../mouse-position/index.ts": () => import("../mouse-position/index.js"), "../multi-screen-panel/PanelMultiScreen.vue": () => import("../multi-screen-panel/PanelMultiScreen.vue.js"), "../multi-screen-panel/index.ts": () => import("../multi-screen-panel/index.js"), "../multi-screen/MultiScreen.vue": () => import("../multi-screen/MultiScreen.vue.js"), "../multi-screen/index.ts": () => import("../multi-screen/index.js"), "../popup/Popup.vue": () => import("../popup/Popup.vue.js"), "../popup/index.ts": () => import("../popup/index.js"), "../scale-line/ScaleLine.vue": () => import("../scale-line/ScaleLine.vue.js"), "../scale-line/index.ts": () => import("../scale-line/index.js"), "../select/Select.vue": () => import("../select/Select.vue2.js"), "../select/index.ts": () => import("../select/index.js"), "../split/Split.vue": () => import("../split/Split.vue.js"), "../split/index.ts": () => import("../split/index.js"), "../swipe-layer/SwipeLayer.vue": () => import("../swipe-layer/SwipeLayer.vue2.js"), "../swipe-layer/index.ts": () => import("../swipe-layer/index.js"), "../toc-card/TocCard.vue": () => import("../toc-card/TocCard.vue.js"), "../toc-card/index.ts": () => import("../toc-card/index.js") });
132
147
  const emit = __emit;
133
148
  const props = __props;
134
149
  const reactiveValue = reactive({
@@ -1,4 +1,4 @@
1
- .toolbar-contain[data-v-18eedeea] {
1
+ .toolbar-contain[data-v-647a59e2] {
2
2
  position: absolute;
3
3
  top: 44px;
4
4
  display: flex;
@@ -9,7 +9,7 @@
9
9
  border: 1px solid var(--system-primary-border-color);
10
10
  border-radius: 3px;
11
11
  }
12
- .toolbar-contain .toolbar-item-contain[data-v-18eedeea] {
12
+ .toolbar-contain .toolbar-item-contain[data-v-647a59e2] {
13
13
  height: 43px;
14
14
  line-height: 43px;
15
15
  display: flex;
@@ -18,17 +18,17 @@
18
18
  align-items: center;
19
19
  cursor: pointer;
20
20
  }
21
- .toolbar-contain .toolbar-item-contain .toolbar-item[data-v-18eedeea] {
21
+ .toolbar-contain .toolbar-item-contain .toolbar-item[data-v-647a59e2] {
22
22
  display: flex;
23
23
  align-items: center;
24
24
  padding: 0px 10px;
25
25
  }
26
- .toolbar-contain .toolbar-item-contain .toolbar-icon[data-v-18eedeea] {
26
+ .toolbar-contain .toolbar-item-contain .toolbar-icon[data-v-647a59e2] {
27
27
  width: 24px;
28
28
  height: 24px;
29
29
  margin-right: 6px;
30
30
  }
31
- .toolbar-contain .toolbar-item-contain .toolbar-children-contain[data-v-18eedeea] {
31
+ .toolbar-contain .toolbar-item-contain .toolbar-children-contain[data-v-647a59e2] {
32
32
  position: absolute;
33
33
  top: 50px;
34
34
  background: var(--system-primary-color);
@@ -36,24 +36,24 @@
36
36
  border-radius: 3px;
37
37
  margin: 0px -1px;
38
38
  }
39
- .toolbar-contain .active[data-v-18eedeea] {
39
+ .toolbar-contain .active[data-v-647a59e2] {
40
40
  color: var(--system-primary-text-active-color);
41
41
  }
42
- .toolbar-contain .toolbar-split[data-v-18eedeea] {
42
+ .toolbar-contain .toolbar-split[data-v-647a59e2] {
43
43
  width: 2px;
44
44
  height: 20px;
45
45
  background: #7EA08E;
46
46
  margin: auto;
47
47
  opacity: 0.5;
48
48
  }
49
- .toolbar-contain .toolbar-h-split[data-v-18eedeea] {
49
+ .toolbar-contain .toolbar-h-split[data-v-647a59e2] {
50
50
  height: 2px;
51
51
  background: #7EA08E;
52
52
  margin: auto;
53
53
  opacity: 0.5;
54
54
  margin: 0px 10px;
55
55
  }
56
- .component-position[data-v-18eedeea] {
56
+ .component-position[data-v-647a59e2] {
57
57
  position: absolute;
58
58
  right: 300px;
59
59
  }
@@ -392,6 +392,7 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {
392
392
  constrainResolution: boolean | undefined;
393
393
  };
394
394
  getView: () => import('ym-gis-2d/mapView/View').default;
395
+ refresh: () => void;
395
396
  fitLayer: (layer: import('ym-gis-2d/layers/IBaseLayer').IBaseLayer) => void;
396
397
  fitLayerById: (id: string) => void;
397
398
  addMapLayer: (layerInfo: import('ym-gis-2d/entity').IMapService) => Promise<import('ol/layer/Base').default>;
@@ -387,6 +387,7 @@ export declare const MapView: import('../../utils').WithInstall<import('vue').De
387
387
  constrainResolution: boolean | undefined;
388
388
  };
389
389
  getView: () => import('ym-gis-2d/mapView/View').default;
390
+ refresh: () => void;
390
391
  fitLayer: (layer: import('ym-gis-2d/layers/IBaseLayer').IBaseLayer) => void;
391
392
  fitLayerById: (id: string) => void;
392
393
  addMapLayer: (layerInfo: import('ym-gis-2d/entity').IMapService) => Promise<import('ol/layer/Base').default>;
@@ -394,6 +394,7 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {
394
394
  constrainResolution: boolean | undefined;
395
395
  };
396
396
  getView: () => OLView;
397
+ refresh: () => void;
397
398
  fitLayer: (layer: import('ym-gis-2d/layers/IBaseLayer').IBaseLayer) => void;
398
399
  fitLayerById: (id: string) => void;
399
400
  addMapLayer: (layerInfo: IMapService) => Promise<import('ol/layer/Base').default>;
@@ -390,6 +390,7 @@ export declare const MultiScreen: import('../../utils').WithInstall<import('vue'
390
390
  constrainResolution: boolean | undefined;
391
391
  };
392
392
  getView: () => import('ym-gis-2d/mapView/View').default;
393
+ refresh: () => void;
393
394
  fitLayer: (layer: import('ym-gis-2d/layers/IBaseLayer').IBaseLayer) => void;
394
395
  fitLayerById: (id: string) => void;
395
396
  addMapLayer: (layerInfo: import('ym-gis-2d/entity').IMapService) => Promise<import('ol/layer/Base').default>;
@@ -1,36 +1,25 @@
1
1
  import { defineComponent, reactive, onMounted, toRaw, onUnmounted } from "vue";
2
2
  import Split from "ym-gis-2d/interaction/Split";
3
- import { ElLoading } from "element-plus";
3
+ import { ElLoading, ElMessage } from "element-plus";
4
4
  import FeatureManager from "ym-gis-2d/feature/FeatureManager";
5
- import "ym-gis-2d/utils/GeometryUtil";
6
- import { getStyle, getSelectCancePointStyle, getSelectCancelLineStyle, getSelectCancelPolygonStyle } from "ym-gis-2d/style/StyleManager";
7
5
  const _sfc_main = /* @__PURE__ */ defineComponent({
8
6
  __name: "Split",
9
7
  props: {
10
8
  map: {},
11
- pointStyle: {},
12
- cancePointStyle: {},
13
- lineStyle: {},
14
- canceLineStyle: {},
15
- polygonStyle: {},
16
- cancePolygonStyle: {},
17
- selectLayers: {},
18
9
  showLoading: { type: Boolean, default: true },
19
- selectType: { default: "rectangle" }
10
+ fieldName: {},
11
+ fieldValues: {}
20
12
  },
21
13
  emits: ["activeInteraction"],
22
14
  setup(__props, { expose: __expose, emit: __emit }) {
23
15
  const props = __props;
24
- props.cancePointStyle ? getStyle(props.cancePointStyle) : getSelectCancePointStyle();
25
- props.canceLineStyle ? getStyle(props.canceLineStyle) : getSelectCancelLineStyle();
26
- props.cancePolygonStyle ? getStyle(props.cancePolygonStyle) : getSelectCancelPolygonStyle();
27
16
  const emit = __emit;
28
17
  const reactiveData = reactive({
29
18
  features: []
30
19
  });
31
20
  onMounted(() => {
32
21
  const featureManager = new FeatureManager(props.map);
33
- const editFeatures = featureManager.getEditFeatures();
22
+ const editFeatures = featureManager.getEditFeatures(props.fieldName, props.fieldValues);
34
23
  if (!editFeatures || editFeatures.length === 0) {
35
24
  emit("activeInteraction", { success: false, message: "请先选择分割的地块" });
36
25
  return;
@@ -48,24 +37,33 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
48
37
  }
49
38
  });
50
39
  reactiveData.splitTool.on("splited", (event) => {
40
+ var _a;
51
41
  loadingInstance == null ? void 0 : loadingInstance.close();
52
- const features = event.polygonFeatures;
42
+ if (event.error) {
43
+ ElMessage.error("分割失败:" + event.error);
44
+ return;
45
+ }
46
+ const features = event.features;
53
47
  if (features && features.length > 0) {
54
48
  features.forEach((feature) => {
55
49
  feature.isSelected = true;
56
50
  });
57
51
  }
52
+ let editFeatures2 = featureManager.getEditFeatures(props.fieldName, props.fieldValues);
53
+ if (editFeatures2 && editFeatures2.length > 0) {
54
+ (_a = reactiveData.splitTool) == null ? void 0 : _a.setFeatures(editFeatures2);
55
+ }
58
56
  });
59
57
  });
60
58
  onUnmounted(() => {
61
- props.map.interactionManager.removeInteraction("select");
59
+ props.map.interactionManager.removeInteraction("split");
62
60
  });
63
- function setSelectLayers(layers) {
61
+ function setFeatures(features) {
64
62
  var _a;
65
- (_a = reactiveData.selectTool) == null ? void 0 : _a.setSelectLayers(layers);
63
+ (_a = reactiveData.splitTool) == null ? void 0 : _a.setFeatures(features);
66
64
  }
67
65
  __expose({
68
- setSelectLayers,
66
+ setFeatures,
69
67
  features: reactiveData.features
70
68
  });
71
69
  return (_ctx, _cache) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ym-giswidget-2d",
3
- "version": "1.0.54",
3
+ "version": "1.0.56",
4
4
  "type": "module",
5
5
  "main": "index.js",
6
6
  "module": "index.js",
@@ -10,6 +10,6 @@
10
10
  "element-plus": "^2.9.0",
11
11
  "jszip": "^3.10.1",
12
12
  "ol": "^9.2.4",
13
- "ym-gis-2d": "1.0.32"
13
+ "ym-gis-2d": "1.0.34"
14
14
  }
15
15
  }
@@ -1,7 +1,7 @@
1
1
  import _sfc_main from "./DraggablePanel.vue2.js";
2
2
  /* empty css */
3
3
  import _export_sfc from "../_virtual/_plugin-vue_export-helper.js";
4
- const DraggablePanel = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-2f4a5739"]]);
4
+ const DraggablePanel = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-98e8fdca"]]);
5
5
  export {
6
6
  DraggablePanel as default
7
7
  };
package/panel/index.css CHANGED
@@ -1,36 +1,36 @@
1
- @font-face {
2
- font-family: "iconfont"; /* Project id 4810358 */
3
- src: url('data:font/woff2;base64,d09GMgABAAAAAAPkAAsAAAAACNQAAAOXAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHFQGYACDVgqEHINRATYCJAMcCxAABCAFhGcHXxu2BxEVnPvIfh44xtoR60JS/t4jKOZhRY2k+xw839dJf+5DdyceKBnBK1k9NStoZa/hZGAlgzX0fxIgoG5rzhEKHzVZkrUjj/73zVMhvXyGMfA/l+N/753d83R9CwDm2Dioo/Q8oKNwb8si7OVpopyGeZdO6iC9/AwCBKlJc1TbU4ceRCeoGZNIYOBMgbxRJvjRQ/EUK6anUfAQnLF7DbIWC2qZugmsid8v36gtHiishl/SZVS7EaQzZAtrP+eDfknIQMB8BVhAA1VPZpdF/d456DRbFU2w7TeGDkAYD4XJSKZ9pms2li2cy5GhpOR5IUzU/YMHBoXGwSIgDqgPA9BHyDmQwTdjTJ3AjIKuPcxo6LpCCAeyMTMWusKQX91dLgBRIAZsABfhVF2yFo2wFpUwJmCsweSEDYTzx+dHlx+AYDDB+AdDsRWHRUK0xi45NCdGVOmY6r3ShVQwLLFJ3ibmx5087oxpxISCNtS/VzyXOA2n4QyRglT52QFEbayvSpzdPP8xYlSPkSN6jh7Ze9Tc6PLHj7vNT54MHvnoEcZ/+HDWbLW12hvqki0jpSNvdwRq/I5CqOa9ki15ZXpHyx2p3I6OtO+3bFGiuo56ux3CHTa51IzsjFszmIp0Mj6aan9TokfS3xekU8keiXRs2u/DlNhYmPDsaSadSp9+uvBZ4/jn/iaadPuvTev5C0aOCjmjxo4aaRo5prS+TZsF86lZM+lUalexYtvKtnIgSvorsbLqH4tvLG59vRNPZhEAubc7dSm67Pd+7QJoJA0536CXEDd9RLfKf9ysk7/Dd6izbV2RwbGm372QAeDD4YV9oZgnfZ06Rktfvm7ASFpjxcA1bb19KdvkUgMLgAKC7gC872BeXq/nzwe5W/AUGVDhkkSNR2kwZGW0hKiNDh7NMEgV2h0OkY8paMQEgPIsJRTiHERFlBOoiXMFDPkELQXJokOc/9Cy8mh73touvWdUghU8f+A1dcYzSMz2gvbVKG5KPZCjRwLyJKsWztghL7Ehvm0hYsAwtXCSHsOmIeiZAmpJnEhfpqlpe0miqR3sMaQIVAFPP8DTSMeE9FL+vAtkvTQUHgmPLIs82INcIhsBZ203qutJLonerIIQBjCY8i1wUtyoMbME9O2zAqSJhJuR7pVSl86M1Sb769ubPAQE8avdlGgxYsURVzxmdxXpehKkFq3vvN/yxzljFMKMqW4o4qJV3ybLYAAA') format('woff2'),
4
- url('data:font/woff;base64,d09GRgABAAAAAAW4AAsAAAAACNQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADsAAABUIIslek9TLzIAAAFEAAAARAAAAGA8FUnoY21hcAAAAYgAAAB9AAAB1k7+hjNnbHlmAAACCAAAAZoAAAIcJRpmcmhlYWQAAAOkAAAALwAAADYqdj6waGhlYQAAA9QAAAAcAAAAJAfeA4hobXR4AAAD8AAAAA4AAAAcHAAAAGxvY2EAAAQAAAAAEAAAABABlgIqbWF4cAAABBAAAAAfAAAAIAEWADtuYW1lAAAEMAAAAUAAAAJnEKM8sHBvc3QAAAVwAAAASAAAAF/a9ea9eJxjYGRgYOBiMGCwY2BycfMJYeDLSSzJY5BiYGGAAJA8MpsxJzM9kYEDxgPKsYBpDiBmg4gCACY7BUgAeJxjYGFhYJzAwMrAwNTJdIaBgaEfQjO+ZjBi5ACKMrAyM2AFAWmuKQwHnjE8l2Bu+N/AwMB8hwFIMjCiKGICAGUXDHl4nO2RwQnDQAwER/blCMbEXxeROvLKx7+UkpfL1ZXhrE4mpIjomAMJsYJd4AKM4i4K2I4R9dbU+nxk6vPCU/3MlYHi5g/f2tLW4wDnt/uWaft2vlAfpFV1UbpW+dfc/9fZ1fAxiSTcErkmd5NIyrck9tuSRIptTbAPCuEd+gAAAHicfU+7TuNQFDwPYojAK1kmIGxhcWPZUVxQEAIVyCiGii+gogLRp2Qlr0JJjURoQgNfQLla/8AWW0KVgscHQMPjXjgmEtshnceMdDRnBioA70M+ZwVzMA8KElgEQFW35jGsWzVneqalllbWsLW00naWY1Q1NYfKcUMhoWqrqK1qnOvCdge269qUjsDbI6W6oLQYuLbJR5gXXHsoFMpDASTADFOT4sDsIqDQfCFNAVg8PfMlj8MYTMBU6cdRDkq3QqfFOxp4WwM+/O122Xp74imdUlcfUxfkVFoEsChVSrcIBEZ4PtLNx4B/SdYAGt/l5Jq8/ArJhd7z4gsvjj0qvDgXcCM/i98/Y8/E1Oc88qX0hh9F/mXk0akf6cY9/TENvPajfOTrveAr3oBJIY0qjldxtoqryFeZOTL9DPfNaYZ7eJiZHumO6eF+x5yYfgcPTC/DQ9Eg0bjlM/bBhRCgouqLKGbXUawHKBl+IP7PUsYImfVLc6spRdbn1v+CJAnIKqff3Eyokmw2ZetX2XSXBPr186ASJB+iQ326AAB4nGNgZGBgAGLnedMk4/ltvjJwszCAwOPVtZEI+n8DCwNzI5DLwcAEEgUAHdYKGgB4nGNgZGBgbvjfwBDDwgACQJKRARWwAwBHDQJweJxjYWBgYMGBAQHcAB0AAAAAAAAASgBoAHYAtADWAQ54nGNgZGBgYGfQZ2BlAAEmIOYCQgaG/2A+AwAOEQFSAHichZE9bsJAEIWfwZAElChKpDRpVikoEsn8lEipUKCnoAez5ke211ovSNQ5TY6QE+QI6Whzikh52EMDRbza2W/evpkdyQDusIeH8rvnLtnDJbOSK7jAo3CV+pOwT34WrqGJnnCd+qtwAy94E26yY8YOnn/FrIV3YQ+3+BCu4AafwlXqX8I++Vu4hgf8CNep/wo3MPGuhZtoeeHA6qnTczXbqVVo0sik7niO9WITT+2pPNE2X5lUdYPOURrpVNtjm3y76DkXqciaRA15q+PYqMyatQ5dsHQu67fbkehBaBIMYKExhWOcQ2GGHeMKIQxSREV0Z/mY7gU2iFlp/3VP6LbIqR9yhS4CdM5cI7rSwnk6TY4tX+tRdXQrbsuahDSUWs1JYrLiDzzcramE1AMsi6oMfbS5ohN/UMyQ/AHYk29XeJxjYGKAAC4G7ICdkYmRmZGFkZWRjZGdkYOBrTQvJT85mwVEcORm5mXmZlalshelFpfkF6WyJufkF6dy5CZWgIUZGACPyRBp') format('woff'),
1
+ @font-face {
2
+ font-family: "iconfont"; /* Project id 4810358 */
3
+ src: url('data:font/woff2;base64,d09GMgABAAAAAAPkAAsAAAAACNQAAAOXAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHFQGYACDVgqEHINRATYCJAMcCxAABCAFhGcHXxu2BxEVnPvIfh44xtoR60JS/t4jKOZhRY2k+xw839dJf+5DdyceKBnBK1k9NStoZa/hZGAlgzX0fxIgoG5rzhEKHzVZkrUjj/73zVMhvXyGMfA/l+N/753d83R9CwDm2Dioo/Q8oKNwb8si7OVpopyGeZdO6iC9/AwCBKlJc1TbU4ceRCeoGZNIYOBMgbxRJvjRQ/EUK6anUfAQnLF7DbIWC2qZugmsid8v36gtHiishl/SZVS7EaQzZAtrP+eDfknIQMB8BVhAA1VPZpdF/d456DRbFU2w7TeGDkAYD4XJSKZ9pms2li2cy5GhpOR5IUzU/YMHBoXGwSIgDqgPA9BHyDmQwTdjTJ3AjIKuPcxo6LpCCAeyMTMWusKQX91dLgBRIAZsABfhVF2yFo2wFpUwJmCsweSEDYTzx+dHlx+AYDDB+AdDsRWHRUK0xi45NCdGVOmY6r3ShVQwLLFJ3ibmx5087oxpxISCNtS/VzyXOA2n4QyRglT52QFEbayvSpzdPP8xYlSPkSN6jh7Ze9Tc6PLHj7vNT54MHvnoEcZ/+HDWbLW12hvqki0jpSNvdwRq/I5CqOa9ki15ZXpHyx2p3I6OtO+3bFGiuo56ux3CHTa51IzsjFszmIp0Mj6aan9TokfS3xekU8keiXRs2u/DlNhYmPDsaSadSp9+uvBZ4/jn/iaadPuvTev5C0aOCjmjxo4aaRo5prS+TZsF86lZM+lUalexYtvKtnIgSvorsbLqH4tvLG59vRNPZhEAubc7dSm67Pd+7QJoJA0536CXEDd9RLfKf9ysk7/Dd6izbV2RwbGm372QAeDD4YV9oZgnfZ06Rktfvm7ASFpjxcA1bb19KdvkUgMLgAKC7gC872BeXq/nzwe5W/AUGVDhkkSNR2kwZGW0hKiNDh7NMEgV2h0OkY8paMQEgPIsJRTiHERFlBOoiXMFDPkELQXJokOc/9Cy8mh73touvWdUghU8f+A1dcYzSMz2gvbVKG5KPZCjRwLyJKsWztghL7Ehvm0hYsAwtXCSHsOmIeiZAmpJnEhfpqlpe0miqR3sMaQIVAFPP8DTSMeE9FL+vAtkvTQUHgmPLIs82INcIhsBZ203qutJLonerIIQBjCY8i1wUtyoMbME9O2zAqSJhJuR7pVSl86M1Sb769ubPAQE8avdlGgxYsURVzxmdxXpehKkFq3vvN/yxzljFMKMqW4o4qJV3ybLYAAA') format('woff2'),
4
+ url('data:font/woff;base64,d09GRgABAAAAAAW4AAsAAAAACNQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADsAAABUIIslek9TLzIAAAFEAAAARAAAAGA8FUnoY21hcAAAAYgAAAB9AAAB1k7+hjNnbHlmAAACCAAAAZoAAAIcJRpmcmhlYWQAAAOkAAAALwAAADYqdj6waGhlYQAAA9QAAAAcAAAAJAfeA4hobXR4AAAD8AAAAA4AAAAcHAAAAGxvY2EAAAQAAAAAEAAAABABlgIqbWF4cAAABBAAAAAfAAAAIAEWADtuYW1lAAAEMAAAAUAAAAJnEKM8sHBvc3QAAAVwAAAASAAAAF/a9ea9eJxjYGRgYOBiMGCwY2BycfMJYeDLSSzJY5BiYGGAAJA8MpsxJzM9kYEDxgPKsYBpDiBmg4gCACY7BUgAeJxjYGFhYJzAwMrAwNTJdIaBgaEfQjO+ZjBi5ACKMrAyM2AFAWmuKQwHnjE8l2Bu+N/AwMB8hwFIMjCiKGICAGUXDHl4nO2RwQnDQAwER/blCMbEXxeROvLKx7+UkpfL1ZXhrE4mpIjomAMJsYJd4AKM4i4K2I4R9dbU+nxk6vPCU/3MlYHi5g/f2tLW4wDnt/uWaft2vlAfpFV1UbpW+dfc/9fZ1fAxiSTcErkmd5NIyrck9tuSRIptTbAPCuEd+gAAAHicfU+7TuNQFDwPYojAK1kmIGxhcWPZUVxQEAIVyCiGii+gogLRp2Qlr0JJjURoQgNfQLla/8AWW0KVgscHQMPjXjgmEtshnceMdDRnBioA70M+ZwVzMA8KElgEQFW35jGsWzVneqalllbWsLW00naWY1Q1NYfKcUMhoWqrqK1qnOvCdge269qUjsDbI6W6oLQYuLbJR5gXXHsoFMpDASTADFOT4sDsIqDQfCFNAVg8PfMlj8MYTMBU6cdRDkq3QqfFOxp4WwM+/O122Xp74imdUlcfUxfkVFoEsChVSrcIBEZ4PtLNx4B/SdYAGt/l5Jq8/ArJhd7z4gsvjj0qvDgXcCM/i98/Y8/E1Oc88qX0hh9F/mXk0akf6cY9/TENvPajfOTrveAr3oBJIY0qjldxtoqryFeZOTL9DPfNaYZ7eJiZHumO6eF+x5yYfgcPTC/DQ9Eg0bjlM/bBhRCgouqLKGbXUawHKBl+IP7PUsYImfVLc6spRdbn1v+CJAnIKqff3Eyokmw2ZetX2XSXBPr186ASJB+iQ326AAB4nGNgZGBgAGLnedMk4/ltvjJwszCAwOPVtZEI+n8DCwNzI5DLwcAEEgUAHdYKGgB4nGNgZGBgbvjfwBDDwgACQJKRARWwAwBHDQJweJxjYWBgYMGBAQHcAB0AAAAAAAAASgBoAHYAtADWAQ54nGNgZGBgYGfQZ2BlAAEmIOYCQgaG/2A+AwAOEQFSAHichZE9bsJAEIWfwZAElChKpDRpVikoEsn8lEipUKCnoAez5ke211ovSNQ5TY6QE+QI6Whzikh52EMDRbza2W/evpkdyQDusIeH8rvnLtnDJbOSK7jAo3CV+pOwT34WrqGJnnCd+qtwAy94E26yY8YOnn/FrIV3YQ+3+BCu4AafwlXqX8I++Vu4hgf8CNep/wo3MPGuhZtoeeHA6qnTczXbqVVo0sik7niO9WITT+2pPNE2X5lUdYPOURrpVNtjm3y76DkXqciaRA15q+PYqMyatQ5dsHQu67fbkehBaBIMYKExhWOcQ2GGHeMKIQxSREV0Z/mY7gU2iFlp/3VP6LbIqR9yhS4CdM5cI7rSwnk6TY4tX+tRdXQrbsuahDSUWs1JYrLiDzzcramE1AMsi6oMfbS5ohN/UMyQ/AHYk29XeJxjYGKAAC4G7ICdkYmRmZGFkZWRjZGdkYOBrTQvJT85mwVEcORm5mXmZlalshelFpfkF6WyJufkF6dy5CZWgIUZGACPyRBp') format('woff'),
5
5
  url('data:font/ttf;base64,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') format('truetype');
6
6
  }
7
- .iconfont[data-v-2f4a5739] {
8
- font-family: "iconfont" !important;
9
- font-size: 16px;
10
- font-style: normal;
11
- -webkit-font-smoothing: antialiased;
7
+ .iconfont[data-v-98e8fdca] {
8
+ font-family: "iconfont" !important;
9
+ font-size: 16px;
10
+ font-style: normal;
11
+ -webkit-font-smoothing: antialiased;
12
12
  -moz-osx-font-smoothing: grayscale;
13
13
  }
14
- .icon-undock[data-v-2f4a5739]:before {
14
+ .icon-undock[data-v-98e8fdca]:before {
15
15
  content: "\e718";
16
16
  }
17
- .icon-dock[data-v-2f4a5739]:before {
17
+ .icon-dock[data-v-98e8fdca]:before {
18
18
  content: "\e601";
19
19
  }
20
- .icon-minimize[data-v-2f4a5739]:before {
20
+ .icon-minimize[data-v-98e8fdca]:before {
21
21
  content: "\e646";
22
22
  }
23
- .icon-restore[data-v-2f4a5739]:before {
23
+ .icon-restore[data-v-98e8fdca]:before {
24
24
  content: "\e600";
25
25
  }
26
- .icon-close[data-v-2f4a5739]:before {
26
+ .icon-close[data-v-98e8fdca]:before {
27
27
  content: "\e70f";
28
28
  }
29
- .icon-maximize[data-v-2f4a5739]:before {
29
+ .icon-maximize[data-v-98e8fdca]:before {
30
30
  content: "\e651";
31
31
  }
32
- .draggable-panel[data-v-2f4a5739] {
33
- position: fixed;
32
+ .draggable-panel[data-v-98e8fdca] {
33
+ position: fixed !important;
34
34
  left: 0;
35
35
  top: 0;
36
36
  border: 1px solid #ddd;
@@ -44,20 +44,20 @@
44
44
  color: var(--system-primary-text-color);
45
45
  font-size: var(--system-primary-text-size);
46
46
  }
47
- .draggable-panel[data-v-2f4a5739]:not(.is-maximized) {
47
+ .draggable-panel[data-v-98e8fdca]:not(.is-maximized) {
48
48
  transition: width 0.2s, height 0.2s;
49
49
  }
50
- .draggable-panel.is-maximized[data-v-2f4a5739] {
50
+ .draggable-panel.is-maximized[data-v-98e8fdca] {
51
51
  border-radius: 0;
52
52
  }
53
- .draggable-panel.is-minimized[data-v-2f4a5739] {
53
+ .draggable-panel.is-minimized[data-v-98e8fdca] {
54
54
  height: 40px !important;
55
55
  width: 200px !important;
56
56
  }
57
- .draggable-panel.is-docked[data-v-2f4a5739] {
57
+ .draggable-panel.is-docked[data-v-98e8fdca] {
58
58
  transition: transform 0.2s;
59
59
  }
60
- .panel-header[data-v-2f4a5739] {
60
+ .panel-header[data-v-98e8fdca] {
61
61
  display: flex;
62
62
  align-items: center;
63
63
  justify-content: space-between;
@@ -66,14 +66,14 @@
66
66
  cursor: move;
67
67
  user-select: none;
68
68
  }
69
- .panel-title[data-v-2f4a5739] {
69
+ .panel-title[data-v-98e8fdca] {
70
70
  font-weight: bold;
71
71
  }
72
- .panel-controls[data-v-2f4a5739] {
72
+ .panel-controls[data-v-98e8fdca] {
73
73
  display: flex;
74
74
  gap: 4px;
75
75
  }
76
- .panel-controls button[data-v-2f4a5739] {
76
+ .panel-controls button[data-v-98e8fdca] {
77
77
  background: none;
78
78
  border: none;
79
79
  padding: 4px;
@@ -81,81 +81,81 @@
81
81
  cursor: pointer;
82
82
  opacity: 0.6;
83
83
  }
84
- .panel-controls button[data-v-2f4a5739]:hover {
84
+ .panel-controls button[data-v-98e8fdca]:hover {
85
85
  opacity: 1;
86
86
  }
87
- .panel-content[data-v-2f4a5739] {
87
+ .panel-content[data-v-98e8fdca] {
88
88
  flex: 1;
89
89
  overflow: auto;
90
90
  padding: 12px;
91
91
  }
92
- .panel-footer[data-v-2f4a5739] {
92
+ .panel-footer[data-v-98e8fdca] {
93
93
  border-top: solid 1px;
94
94
  }
95
- .panel-footer .panel-footer-buttons[data-v-2f4a5739] {
95
+ .panel-footer .panel-footer-buttons[data-v-98e8fdca] {
96
96
  padding: 8px 12px;
97
97
  display: flex;
98
98
  justify-content: end;
99
99
  }
100
- .panel-footer .panel-footer-buttons .el-button[data-v-2f4a5739] {
100
+ .panel-footer .panel-footer-buttons .el-button[data-v-98e8fdca] {
101
101
  --el-button-bg-color: "";
102
102
  --el-button-hover-text-color: "";
103
103
  --el-button-hover-bg-color: "";
104
104
  }
105
- .resize-handles .resize-handle[data-v-2f4a5739] {
105
+ .resize-handles .resize-handle[data-v-98e8fdca] {
106
106
  position: absolute;
107
107
  background: transparent;
108
108
  }
109
- .resize-handles .resize-handle.n[data-v-2f4a5739] {
109
+ .resize-handles .resize-handle.n[data-v-98e8fdca] {
110
110
  top: -3px;
111
111
  left: 0;
112
112
  right: 0;
113
113
  height: 6px;
114
114
  cursor: n-resize;
115
115
  }
116
- .resize-handles .resize-handle.e[data-v-2f4a5739] {
116
+ .resize-handles .resize-handle.e[data-v-98e8fdca] {
117
117
  top: 0;
118
118
  right: -3px;
119
119
  bottom: 0;
120
120
  width: 6px;
121
121
  cursor: e-resize;
122
122
  }
123
- .resize-handles .resize-handle.s[data-v-2f4a5739] {
123
+ .resize-handles .resize-handle.s[data-v-98e8fdca] {
124
124
  bottom: -3px;
125
125
  left: 0;
126
126
  right: 0;
127
127
  height: 6px;
128
128
  cursor: s-resize;
129
129
  }
130
- .resize-handles .resize-handle.w[data-v-2f4a5739] {
130
+ .resize-handles .resize-handle.w[data-v-98e8fdca] {
131
131
  top: 0;
132
132
  left: -3px;
133
133
  bottom: 0;
134
134
  width: 6px;
135
135
  cursor: w-resize;
136
136
  }
137
- .resize-handles .resize-handle.ne[data-v-2f4a5739] {
137
+ .resize-handles .resize-handle.ne[data-v-98e8fdca] {
138
138
  top: -3px;
139
139
  right: -3px;
140
140
  width: 6px;
141
141
  height: 6px;
142
142
  cursor: ne-resize;
143
143
  }
144
- .resize-handles .resize-handle.se[data-v-2f4a5739] {
144
+ .resize-handles .resize-handle.se[data-v-98e8fdca] {
145
145
  bottom: -3px;
146
146
  right: -3px;
147
147
  width: 6px;
148
148
  height: 6px;
149
149
  cursor: se-resize;
150
150
  }
151
- .resize-handles .resize-handle.sw[data-v-2f4a5739] {
151
+ .resize-handles .resize-handle.sw[data-v-98e8fdca] {
152
152
  bottom: -3px;
153
153
  left: -3px;
154
154
  width: 6px;
155
155
  height: 6px;
156
156
  cursor: sw-resize;
157
157
  }
158
- .resize-handles .resize-handle.nw[data-v-2f4a5739] {
158
+ .resize-handles .resize-handle.nw[data-v-98e8fdca] {
159
159
  top: -3px;
160
160
  left: -3px;
161
161
  width: 6px;