map-ol-utils 0.0.71 → 0.0.73

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/dist/index.cjs CHANGED
@@ -75,6 +75,7 @@ __export(index_exports, {
75
75
  createAnimationMarker: () => createAnimationMarker,
76
76
  createBaseLayer: () => createBaseLayer,
77
77
  createBusinessLayer: () => createBusinessLayer,
78
+ createMap: () => createMap,
78
79
  createMapInstance: () => createMapInstance,
79
80
  createMapWorldLayer: () => createMapWorldLayer,
80
81
  createMassMarksLayer: () => createMassMarksLayer,
@@ -129,6 +130,7 @@ var import_gcoord = __toESM(require("gcoord"), 1);
129
130
  var import_Vector = __toESM(require("ol/layer/Vector"), 1);
130
131
  var import_Vector2 = __toESM(require("ol/source/Vector"), 1);
131
132
  var import_geom = require("ol/geom");
133
+ var import_condition = require("ol/events/condition");
132
134
  var import_style = require("ol/style");
133
135
  var removeOverlays = (key = "") => {
134
136
  if (instance) {
@@ -409,20 +411,20 @@ var createSelectByLayer = (vectorLayer) => {
409
411
  style: null,
410
412
  multi: false,
411
413
  hitTolerance: 10,
412
- layers: [vectorLayer]
413
- // condition: (evt) => {
414
- // let hasFeature = false
415
- // instance.forEachFeatureAtPixel(
416
- // evt.pixel,
417
- // () => {
418
- // hasFeature = true
419
- // },
420
- // {
421
- // layerFilter: (layer) => layer === vectorLayer
422
- // }
423
- // )
424
- // return singleClick(evt) && hasFeature
425
- // }
414
+ layers: [vectorLayer],
415
+ condition: (evt) => {
416
+ let hasFeature = false;
417
+ instance.forEachFeatureAtPixel(
418
+ evt.pixel,
419
+ () => {
420
+ hasFeature = true;
421
+ },
422
+ {
423
+ layerFilter: (layer) => layer === vectorLayer
424
+ }
425
+ );
426
+ return (0, import_condition.singleClick)(evt) && hasFeature;
427
+ }
426
428
  });
427
429
  interaction.on("select", (evt) => {
428
430
  const { selected, deselected, mapBrowserEvent } = evt;
@@ -756,6 +758,13 @@ var changeLayersByNames = (activeNames, allLayerNames) => {
756
758
  var instance;
757
759
  var mapCenter = [119.71512016971076, 30.122490541963536];
758
760
  var createMapInstance = (config = {}) => {
761
+ if (instance) {
762
+ return instance;
763
+ }
764
+ instance = createMap(config);
765
+ return instance;
766
+ };
767
+ var createMap = (config = {}) => {
759
768
  const innerConfig = Object.assign(
760
769
  {
761
770
  zoom: 9.4,
@@ -771,10 +780,7 @@ var createMapInstance = (config = {}) => {
771
780
  },
772
781
  config || {}
773
782
  );
774
- if (instance) {
775
- return instance;
776
- }
777
- instance = new import_Map.default({
783
+ const instance2 = new import_Map.default({
778
784
  view: new import_View.default(innerConfig),
779
785
  controls: (0, import_control.defaults)({
780
786
  zoom: false,
@@ -789,14 +795,16 @@ var createMapInstance = (config = {}) => {
789
795
  layers: innerConfig.layers || [createBaseLayer()]
790
796
  });
791
797
  mapCenter = innerConfig.center || mapCenter;
792
- instance.activeBaseLayer = innerConfig.baseLayer;
793
- instance.getLayerByName = getLayerByName;
794
- instance.removeLayerByName = removeLayerByName;
795
- instance.changeLayersByNames = changeLayersByNames;
796
- instance.on("pointermove", (evt) => {
797
- instance.getTargetElement().style.cursor = instance.hasFeatureAtPixel(evt.pixel) ? "pointer" : "";
798
+ instance2.activeBaseLayer = innerConfig.baseLayer;
799
+ instance2.getLayerByName = getLayerByName;
800
+ instance2.removeLayerByName = removeLayerByName;
801
+ instance2.changeLayersByNames = changeLayersByNames;
802
+ instance2.on("pointermove", (evt) => {
803
+ instance2.getTargetElement().style.cursor = instance2.hasFeatureAtPixel(
804
+ evt.pixel
805
+ ) ? "pointer" : "";
798
806
  });
799
- return instance;
807
+ return instance2;
800
808
  };
801
809
  var disposeMap = () => {
802
810
  const layers = instance.getAllLayers();
@@ -946,6 +954,7 @@ var createWmtsLayer = (serverUrl) => (config) => __async(null, null, function* (
946
954
  createAnimationMarker,
947
955
  createBaseLayer,
948
956
  createBusinessLayer,
957
+ createMap,
949
958
  createMapInstance,
950
959
  createMapWorldLayer,
951
960
  createMassMarksLayer,
package/dist/index.d.cts CHANGED
@@ -117,6 +117,7 @@ declare const removeLayerByName: (name: string) => void;
117
117
 
118
118
  declare let instance: CustomMap;
119
119
  declare const createMapInstance: (config?: {}) => CustomMap;
120
+ declare const createMap: (config?: {}) => CustomMap;
120
121
  declare const disposeMap: () => void;
121
122
  declare const getMapInstance: () => CustomMap;
122
123
  declare const resetZoomAndCenter: (center?: [number, number]) => void;
@@ -207,4 +208,4 @@ declare const updateMarksLayersByStatus: (checkedStatusList?: string[]) => MassD
207
208
  */
208
209
  declare const createOverlay: (config?: Options) => Overlay;
209
210
 
210
- export { type CustomMap, type GeometryCoordinates, GeometryType, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type VectorConfig, type WmtsSourceOptions, activeFeatureByUid, addMassMarksLayer, appendFeaturesByLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMapInstance, createMapWorldLayer, createMassMarksLayer, createOverlay, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getLayersDataList, getMapInstance, instance, removeAllLayers, removeLayerByName, resetActiveFeature, resetActiveVector, resetMap, resetZoomAndCenter, setFitViewByGeom, setFitViewByLayer, updateMarksLayersByStatus };
211
+ export { type CustomMap, type GeometryCoordinates, GeometryType, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type VectorConfig, type WmtsSourceOptions, activeFeatureByUid, addMassMarksLayer, appendFeaturesByLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMap, createMapInstance, createMapWorldLayer, createMassMarksLayer, createOverlay, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getLayersDataList, getMapInstance, instance, removeAllLayers, removeLayerByName, resetActiveFeature, resetActiveVector, resetMap, resetZoomAndCenter, setFitViewByGeom, setFitViewByLayer, updateMarksLayersByStatus };
package/dist/index.d.ts CHANGED
@@ -117,6 +117,7 @@ declare const removeLayerByName: (name: string) => void;
117
117
 
118
118
  declare let instance: CustomMap;
119
119
  declare const createMapInstance: (config?: {}) => CustomMap;
120
+ declare const createMap: (config?: {}) => CustomMap;
120
121
  declare const disposeMap: () => void;
121
122
  declare const getMapInstance: () => CustomMap;
122
123
  declare const resetZoomAndCenter: (center?: [number, number]) => void;
@@ -207,4 +208,4 @@ declare const updateMarksLayersByStatus: (checkedStatusList?: string[]) => MassD
207
208
  */
208
209
  declare const createOverlay: (config?: Options) => Overlay;
209
210
 
210
- export { type CustomMap, type GeometryCoordinates, GeometryType, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type VectorConfig, type WmtsSourceOptions, activeFeatureByUid, addMassMarksLayer, appendFeaturesByLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMapInstance, createMapWorldLayer, createMassMarksLayer, createOverlay, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getLayersDataList, getMapInstance, instance, removeAllLayers, removeLayerByName, resetActiveFeature, resetActiveVector, resetMap, resetZoomAndCenter, setFitViewByGeom, setFitViewByLayer, updateMarksLayersByStatus };
211
+ export { type CustomMap, type GeometryCoordinates, GeometryType, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type VectorConfig, type WmtsSourceOptions, activeFeatureByUid, addMassMarksLayer, appendFeaturesByLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMap, createMapInstance, createMapWorldLayer, createMassMarksLayer, createOverlay, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getLayersDataList, getMapInstance, instance, removeAllLayers, removeLayerByName, resetActiveFeature, resetActiveVector, resetMap, resetZoomAndCenter, setFitViewByGeom, setFitViewByLayer, updateMarksLayersByStatus };
package/dist/index.js CHANGED
@@ -67,6 +67,7 @@ import gcoord from "gcoord";
67
67
  import VectorLayer from "ol/layer/Vector";
68
68
  import VectorSource from "ol/source/Vector";
69
69
  import { Point } from "ol/geom";
70
+ import { singleClick } from "ol/events/condition";
70
71
  import { Fill, Icon, Stroke, Style } from "ol/style";
71
72
  var removeOverlays = (key = "") => {
72
73
  if (instance) {
@@ -347,20 +348,20 @@ var createSelectByLayer = (vectorLayer) => {
347
348
  style: null,
348
349
  multi: false,
349
350
  hitTolerance: 10,
350
- layers: [vectorLayer]
351
- // condition: (evt) => {
352
- // let hasFeature = false
353
- // instance.forEachFeatureAtPixel(
354
- // evt.pixel,
355
- // () => {
356
- // hasFeature = true
357
- // },
358
- // {
359
- // layerFilter: (layer) => layer === vectorLayer
360
- // }
361
- // )
362
- // return singleClick(evt) && hasFeature
363
- // }
351
+ layers: [vectorLayer],
352
+ condition: (evt) => {
353
+ let hasFeature = false;
354
+ instance.forEachFeatureAtPixel(
355
+ evt.pixel,
356
+ () => {
357
+ hasFeature = true;
358
+ },
359
+ {
360
+ layerFilter: (layer) => layer === vectorLayer
361
+ }
362
+ );
363
+ return singleClick(evt) && hasFeature;
364
+ }
364
365
  });
365
366
  interaction.on("select", (evt) => {
366
367
  const { selected, deselected, mapBrowserEvent } = evt;
@@ -694,6 +695,13 @@ var changeLayersByNames = (activeNames, allLayerNames) => {
694
695
  var instance;
695
696
  var mapCenter = [119.71512016971076, 30.122490541963536];
696
697
  var createMapInstance = (config = {}) => {
698
+ if (instance) {
699
+ return instance;
700
+ }
701
+ instance = createMap(config);
702
+ return instance;
703
+ };
704
+ var createMap = (config = {}) => {
697
705
  const innerConfig = Object.assign(
698
706
  {
699
707
  zoom: 9.4,
@@ -709,10 +717,7 @@ var createMapInstance = (config = {}) => {
709
717
  },
710
718
  config || {}
711
719
  );
712
- if (instance) {
713
- return instance;
714
- }
715
- instance = new Map2({
720
+ const instance2 = new Map2({
716
721
  view: new View(innerConfig),
717
722
  controls: defaults({
718
723
  zoom: false,
@@ -727,14 +732,16 @@ var createMapInstance = (config = {}) => {
727
732
  layers: innerConfig.layers || [createBaseLayer()]
728
733
  });
729
734
  mapCenter = innerConfig.center || mapCenter;
730
- instance.activeBaseLayer = innerConfig.baseLayer;
731
- instance.getLayerByName = getLayerByName;
732
- instance.removeLayerByName = removeLayerByName;
733
- instance.changeLayersByNames = changeLayersByNames;
734
- instance.on("pointermove", (evt) => {
735
- instance.getTargetElement().style.cursor = instance.hasFeatureAtPixel(evt.pixel) ? "pointer" : "";
735
+ instance2.activeBaseLayer = innerConfig.baseLayer;
736
+ instance2.getLayerByName = getLayerByName;
737
+ instance2.removeLayerByName = removeLayerByName;
738
+ instance2.changeLayersByNames = changeLayersByNames;
739
+ instance2.on("pointermove", (evt) => {
740
+ instance2.getTargetElement().style.cursor = instance2.hasFeatureAtPixel(
741
+ evt.pixel
742
+ ) ? "pointer" : "";
736
743
  });
737
- return instance;
744
+ return instance2;
738
745
  };
739
746
  var disposeMap = () => {
740
747
  const layers = instance.getAllLayers();
@@ -883,6 +890,7 @@ export {
883
890
  createAnimationMarker,
884
891
  createBaseLayer,
885
892
  createBusinessLayer,
893
+ createMap,
886
894
  createMapInstance,
887
895
  createMapWorldLayer,
888
896
  createMassMarksLayer,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "map-ol-utils",
3
- "version": "0.0.71",
3
+ "version": "0.0.73",
4
4
  "type": "module",
5
5
  "description": "Openlayers utils library",
6
6
  "files": [