ym-giswidget-2d 1.0.36 → 1.0.38

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.
@@ -128,7 +128,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
128
128
  },
129
129
  emits: ["loaded"],
130
130
  setup(__props, { emit: __emit }) {
131
- const modules = /* @__PURE__ */ Object.assign({ "../clear/Clear.vue": () => import("../clear/Clear.vue2.js"), "../clear/index.ts": () => import("../clear/index.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-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"), "../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"), "../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") });
131
+ const modules = /* @__PURE__ */ Object.assign({ "../clear/Clear.vue": () => import("../clear/Clear.vue2.js"), "../clear/index.ts": () => import("../clear/index.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"), "../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"), "../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
132
  const emit = __emit;
133
133
  const props = __props;
134
134
  const reactiveValue = reactive({
@@ -74,7 +74,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
74
74
  }
75
75
  }
76
76
  if (unionGeometry) {
77
- props.map.getView().locationGeometry(unionGeometry);
77
+ props.map.locationGeometry(unionGeometry);
78
78
  }
79
79
  }
80
80
  function showImportResult(res) {
@@ -106,7 +106,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
106
106
  }
107
107
  (_a = templayer.getSource()) == null ? void 0 : _a.addFeatures(features);
108
108
  if (unionGeometry) {
109
- props.map.getView().locationGeometry(unionGeometry);
109
+ props.map.locationGeometry(unionGeometry);
110
110
  }
111
111
  }
112
112
  function getStyle(geoType) {
@@ -0,0 +1,8 @@
1
+ import { IMapService } from 'ym-gis-2d/entity';
2
+ import { default as OLMap } from 'ym-gis-2d/mapView/Map';
3
+ type __VLS_Props = {
4
+ map: OLMap;
5
+ layers: IMapService[];
6
+ };
7
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
8
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import _sfc_main from "./LayerSwitcher.vue2.js";
2
+ /* empty css */
3
+ import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
4
+ const _LayerSwitcher = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-2222fecf"]]);
5
+ export {
6
+ _LayerSwitcher as default
7
+ };
@@ -0,0 +1,51 @@
1
+ import { defineComponent, reactive, onMounted, createElementBlock, openBlock, Fragment, renderList, normalizeStyle, normalizeClass, createElementVNode, toDisplayString } from "vue";
2
+ const _hoisted_1 = { class: "layerSwitcher" };
3
+ const _hoisted_2 = ["onClick"];
4
+ const _sfc_main = /* @__PURE__ */ defineComponent({
5
+ __name: "LayerSwitcher",
6
+ props: {
7
+ map: {},
8
+ layers: {}
9
+ },
10
+ setup(__props) {
11
+ const props = __props;
12
+ const reactiveValues = reactive({
13
+ activeIds: []
14
+ //用户存储当前激活的图层id
15
+ });
16
+ onMounted(() => {
17
+ for (const layer of props.layers) {
18
+ if (layer.checked) {
19
+ reactiveValues.activeIds.push(layer.id);
20
+ props.map.addMapLayer(layer);
21
+ }
22
+ }
23
+ });
24
+ function addLayer(layer) {
25
+ if (reactiveValues.activeIds.indexOf(layer.id) > -1) {
26
+ reactiveValues.activeIds.splice(reactiveValues.activeIds.indexOf(layer.id), 1);
27
+ props.map.removeLayerById(layer.id);
28
+ } else {
29
+ reactiveValues.activeIds.push(layer.id);
30
+ props.map.addMapLayer(layer);
31
+ }
32
+ }
33
+ return (_ctx, _cache) => {
34
+ return openBlock(), createElementBlock("div", _hoisted_1, [
35
+ (openBlock(true), createElementBlock(Fragment, null, renderList(props.layers, (item, index) => {
36
+ return openBlock(), createElementBlock("div", {
37
+ key: index,
38
+ onClick: ($event) => addLayer(item),
39
+ class: normalizeClass(["mapTypeCard layer", reactiveValues.activeIds.indexOf(item.id) > -1 ? "active" : ""]),
40
+ style: normalizeStyle({ "z-index": `${props.layers.length - index}`, right: `${(props.layers.length - index) * 5}px`, "background-image": `url(${item.thumbnail})` })
41
+ }, [
42
+ createElementVNode("span", null, toDisplayString(item.title), 1)
43
+ ], 14, _hoisted_2);
44
+ }), 128))
45
+ ]);
46
+ };
47
+ }
48
+ });
49
+ export {
50
+ _sfc_main as default
51
+ };
@@ -0,0 +1,81 @@
1
+ @charset "UTF-8";
2
+ .layerSwitcher[data-v-2222fecf] {
3
+ width: 106px;
4
+ height: 70px;
5
+ position: absolute;
6
+ bottom: 20px;
7
+ right: 20px;
8
+ z-index: 2;
9
+ cursor: pointer;
10
+ border-radius: 5px;
11
+ transition: width 0.8s, height 0.8s;
12
+ -moz-transition: width 0.8s, height 0.8s, -moz-transform 0.8s;
13
+ /* Firefox 4 */
14
+ -webkit-transition: width 0.8s, height 0.8s, -webkit-transform 0.8s;
15
+ /* Safari and Chrome */
16
+ -o-transition: width 0.8s, height 0.8s, -o-transform 0.8s;
17
+ /* Opera */
18
+ }
19
+ .layerSwitcher[data-v-2222fecf]:hover {
20
+ width: unset;
21
+ padding-right: 5px;
22
+ background: rgba(255, 255, 255, 0.3);
23
+ display: flex;
24
+ align-items: center;
25
+ }
26
+ .layerSwitcher:hover .layer[data-v-2222fecf] {
27
+ margin-left: 5px;
28
+ position: unset;
29
+ }
30
+ .layerSwitcher:hover span[data-v-2222fecf] {
31
+ position: unset !important;
32
+ margin-top: 42px;
33
+ }
34
+ .layerSwitcher .mapTypeCard[data-v-2222fecf] {
35
+ position: absolute;
36
+ top: 5px;
37
+ width: 86px;
38
+ height: 60px;
39
+ border-radius: 5px;
40
+ border: solid 1px black;
41
+ transition: right 0.8s;
42
+ -moz-transition: right 0.8s;
43
+ /* Firefox 4 */
44
+ -webkit-transition: right 0.8s;
45
+ /* Safari and Chrome */
46
+ -o-transition: right 0.8s;
47
+ /* Opera */
48
+ transition: right 0.8s;
49
+ -moz-transition: right 0.8s;
50
+ /* Firefox 4 */
51
+ -webkit-transition: right 0.8s;
52
+ /* Safari 和 Chrome */
53
+ -o-transition: right 0.8s;
54
+ /* Opera */
55
+ }
56
+ .layerSwitcher .mapTypeCard span[data-v-2222fecf] {
57
+ width: 84px;
58
+ border-radius: 2px;
59
+ height: 16px;
60
+ position: absolute;
61
+ bottom: 0px;
62
+ display: inline-block;
63
+ font-size: 12px;
64
+ line-height: 16px;
65
+ text-align: center;
66
+ color: #fff;
67
+ background: #888f88;
68
+ opacity: 0.8;
69
+ }
70
+ .layerSwitcher .layer[data-v-2222fecf] {
71
+ background-position: center;
72
+ background-repeat: no-repeat;
73
+ background-size: cover;
74
+ }
75
+ .layerSwitcher .layer[data-v-2222fecf]:hover {
76
+ border: solid 1px #31a5f7;
77
+ }
78
+ .layerSwitcher .layer:hover span[data-v-2222fecf],
79
+ .layerSwitcher .active span[data-v-2222fecf] {
80
+ background: #31a5f7;
81
+ }
@@ -0,0 +1,8 @@
1
+ export declare const LayerSwitcher: import('../../utils').WithInstall<import('vue').DefineComponent<{
2
+ map: import('ym-gis-2d/mapView/Map').default;
3
+ layers: import('ym-gis-2d/entity').IMapService[];
4
+ }, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
5
+ map: import('ym-gis-2d/mapView/Map').default;
6
+ layers: import('ym-gis-2d/entity').IMapService[];
7
+ }> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>>;
8
+ export default LayerSwitcher;
@@ -0,0 +1,8 @@
1
+ import "./index.css";
2
+ import { withInstall } from "../../utils/wthInstall.js";
3
+ import _LayerSwitcher from "./LayerSwitcher.vue.js";
4
+ const LayerSwitcher = withInstall(_LayerSwitcher);
5
+ export {
6
+ LayerSwitcher,
7
+ LayerSwitcher as default
8
+ };
@@ -107,6 +107,7 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {
107
107
  url?: string | undefined;
108
108
  }[] | undefined;
109
109
  showLegend?: boolean | undefined;
110
+ thumbnail: string;
110
111
  } | undefined;
111
112
  interactionManager: {
112
113
  map: {
@@ -392,6 +393,10 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {
392
393
  getExtent: () => import('ol/extent').Extent;
393
394
  addWKT: (wkt: string, proj: string, tag?: string, location?: boolean, style?: import('ym-gis-2d/entity/IStyle').default) => void;
394
395
  addWKTs: (wkts: string[], proj: string, tag?: string, location?: boolean, style?: import('ym-gis-2d/entity/IStyle').default) => void;
396
+ locationWKT: (wkt: string, proj?: string, ratio?: number, isFlash?: boolean) => void;
397
+ locationWKTs: (wkts: string[], proj?: string, ratio?: number, isFlash?: boolean) => void;
398
+ locationGeometry: (geometry: import('ol/geom').Geometry, proj?: string, ratio?: number, isFlash?: boolean) => void;
399
+ locationGeometrys: (geometrys: import('ol/geom').Geometry[], proj?: string, ratio?: number, isFlash?: boolean) => void;
395
400
  on: import('ol/Map').MapEventHandler<import('ol/events').EventsKey>;
396
401
  once: import('ol/Map').MapEventHandler<import('ol/events').EventsKey>;
397
402
  un: import('ol/Map').MapEventHandler<void>;
@@ -106,6 +106,7 @@ export declare const MapView: import('../../utils').WithInstall<import('vue').De
106
106
  url?: string | undefined;
107
107
  }[] | undefined;
108
108
  showLegend?: boolean | undefined;
109
+ thumbnail: string;
109
110
  } | undefined;
110
111
  interactionManager: {
111
112
  map: {
@@ -391,6 +392,10 @@ export declare const MapView: import('../../utils').WithInstall<import('vue').De
391
392
  getExtent: () => import('ol/extent').Extent;
392
393
  addWKT: (wkt: string, proj: string, tag?: string, location?: boolean, style?: import('ym-gis-2d/entity/IStyle').default) => void;
393
394
  addWKTs: (wkts: string[], proj: string, tag?: string, location?: boolean, style?: import('ym-gis-2d/entity/IStyle').default) => void;
395
+ locationWKT: (wkt: string, proj?: string, ratio?: number, isFlash?: boolean) => void;
396
+ locationWKTs: (wkts: string[], proj?: string, ratio?: number, isFlash?: boolean) => void;
397
+ locationGeometry: (geometry: import('ol/geom').Geometry, proj?: string, ratio?: number, isFlash?: boolean) => void;
398
+ locationGeometrys: (geometrys: import('ol/geom').Geometry[], proj?: string, ratio?: number, isFlash?: boolean) => void;
394
399
  on: import('ol/Map').MapEventHandler<import('ol/events').EventsKey>;
395
400
  once: import('ol/Map').MapEventHandler<import('ol/events').EventsKey>;
396
401
  un: import('ol/Map').MapEventHandler<void>;
@@ -113,6 +113,7 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {
113
113
  url?: string | undefined;
114
114
  }[] | undefined;
115
115
  showLegend?: boolean | undefined;
116
+ thumbnail: string;
116
117
  } | undefined;
117
118
  interactionManager: {
118
119
  map: {
@@ -398,6 +399,10 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {
398
399
  getExtent: () => import('ol/extent').Extent;
399
400
  addWKT: (wkt: string, proj: string, tag?: string, location?: boolean, style?: import('ym-gis-2d/entity/IStyle').default) => void;
400
401
  addWKTs: (wkts: string[], proj: string, tag?: string, location?: boolean, style?: import('ym-gis-2d/entity/IStyle').default) => void;
402
+ locationWKT: (wkt: string, proj?: string, ratio?: number, isFlash?: boolean) => void;
403
+ locationWKTs: (wkts: string[], proj?: string, ratio?: number, isFlash?: boolean) => void;
404
+ locationGeometry: (geometry: import('ol/geom').Geometry, proj?: string, ratio?: number, isFlash?: boolean) => void;
405
+ locationGeometrys: (geometrys: import('ol/geom').Geometry[], proj?: string, ratio?: number, isFlash?: boolean) => void;
401
406
  on: import('ol/Map').MapEventHandler<import('ol/events').EventsKey>;
402
407
  once: import('ol/Map').MapEventHandler<import('ol/events').EventsKey>;
403
408
  un: import('ol/Map').MapEventHandler<void>;
@@ -109,6 +109,7 @@ export declare const MultiScreen: import('../../utils').WithInstall<import('vue'
109
109
  url?: string | undefined;
110
110
  }[] | undefined;
111
111
  showLegend?: boolean | undefined;
112
+ thumbnail: string;
112
113
  } | undefined;
113
114
  interactionManager: {
114
115
  map: {
@@ -394,6 +395,10 @@ export declare const MultiScreen: import('../../utils').WithInstall<import('vue'
394
395
  getExtent: () => import('ol/extent').Extent;
395
396
  addWKT: (wkt: string, proj: string, tag?: string, location?: boolean, style?: import('ym-gis-2d/entity/IStyle').default) => void;
396
397
  addWKTs: (wkts: string[], proj: string, tag?: string, location?: boolean, style?: import('ym-gis-2d/entity/IStyle').default) => void;
398
+ locationWKT: (wkt: string, proj?: string, ratio?: number, isFlash?: boolean) => void;
399
+ locationWKTs: (wkts: string[], proj?: string, ratio?: number, isFlash?: boolean) => void;
400
+ locationGeometry: (geometry: import('ol/geom').Geometry, proj?: string, ratio?: number, isFlash?: boolean) => void;
401
+ locationGeometrys: (geometrys: import('ol/geom').Geometry[], proj?: string, ratio?: number, isFlash?: boolean) => void;
397
402
  on: import('ol/Map').MapEventHandler<import('ol/events').EventsKey>;
398
403
  once: import('ol/Map').MapEventHandler<import('ol/events').EventsKey>;
399
404
  un: import('ol/Map').MapEventHandler<void>;
package/index.d.ts CHANGED
@@ -12,3 +12,4 @@ export * from './components/mouse-position';
12
12
  export * from './components/scale-line';
13
13
  export * from './components/map-view';
14
14
  export * from './components/legend';
15
+ export * from './components/layer-switcher';
package/index.js CHANGED
@@ -13,6 +13,7 @@ import { MousePositon } from "./components/mouse-position/index.js";
13
13
  import { ScaleLine } from "./components/scale-line/index.js";
14
14
  import { MapView } from "./components/map-view/index.js";
15
15
  import { Legend } from "./components/legend/index.js";
16
+ import { LayerSwitcher } from "./components/layer-switcher/index.js";
16
17
  export {
17
18
  Clear,
18
19
  Draw,
@@ -20,6 +21,7 @@ export {
20
21
  HorizontallyTopToolbar,
21
22
  Identify,
22
23
  Import,
24
+ LayerSwitcher,
23
25
  Legend,
24
26
  MapView,
25
27
  MousePositon,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ym-giswidget-2d",
3
- "version": "1.0.36",
3
+ "version": "1.0.38",
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.14"
13
+ "ym-gis-2d": "1.0.16"
14
14
  }
15
15
  }