map-ol-utils 0.0.32 → 0.0.34

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
@@ -69,6 +69,7 @@ var index_exports = {};
69
69
  __export(index_exports, {
70
70
  activeFeatureByUid: () => activeFeatureByUid,
71
71
  addMassMarksLayer: () => addMassMarksLayer,
72
+ appendFeaturesByLayer: () => appendFeaturesByLayer,
72
73
  buildMassMarksStyles: () => buildMassMarksStyles,
73
74
  createAnimationMarker: () => createAnimationMarker,
74
75
  createBaseLayer: () => createBaseLayer,
@@ -157,7 +158,7 @@ var assembleGeoJson = (dataList, config) => {
157
158
  properties: __spreadValues({}, item),
158
159
  geometry: {
159
160
  coordinates: pathArray,
160
- type: isLine ? "Polyline" : "Polygon"
161
+ type: isLine ? "LineString" : "Polygon"
161
162
  }
162
163
  });
163
164
  }
@@ -171,7 +172,7 @@ var assembleGeoJson = (dataList, config) => {
171
172
  import_gcoord.default.WGS84
172
173
  );
173
174
  };
174
- var createVectorStyle = (data, config) => {
175
+ var createVectorStyle = (feature, config) => {
175
176
  const {
176
177
  isLine,
177
178
  colorMap,
@@ -185,6 +186,7 @@ var createVectorStyle = (data, config) => {
185
186
  activeStrokeColor,
186
187
  activeStrokeWeight
187
188
  } = config || {};
189
+ const data = feature.getProperties();
188
190
  const activeStyle = new import_style.Style({
189
191
  stroke: new import_style.Stroke({
190
192
  width: activeStrokeWeight || strokeWeight || 4,
@@ -218,10 +220,12 @@ var createVectorStyle = (data, config) => {
218
220
  })
219
221
  );
220
222
  }
221
- Object.assign(data, {
222
- activeStyle,
223
- unActiveStyle
224
- });
223
+ feature.setProperties(
224
+ Object.assign(data, {
225
+ activeStyle,
226
+ unActiveStyle
227
+ })
228
+ );
225
229
  return unActiveStyle;
226
230
  };
227
231
  var createBusinessLayer = (dataList, config) => {
@@ -232,7 +236,7 @@ var createBusinessLayer = (dataList, config) => {
232
236
  className: layerName ? layerName : "ol-layer",
233
237
  source: new import_Vector2.default({
234
238
  features: new import_format.GeoJSON().readFeatures(geoJson).map((feature) => {
235
- feature.setStyle(createVectorStyle(feature.getProperties(), config));
239
+ feature.setStyle(createVectorStyle(feature, config));
236
240
  return feature;
237
241
  })
238
242
  })
@@ -243,12 +247,19 @@ var createBusinessLayer = (dataList, config) => {
243
247
  vectorLayer.setProperties({
244
248
  _isCustom: true,
245
249
  _isVectorLayer: true,
250
+ _vectorConfig: config,
246
251
  _layerName: layerName,
247
252
  _dataList: [...dataList],
248
253
  _uuidSet: new Set(dataList.map((item) => item._uuid) || [])
249
254
  });
250
255
  return vectorLayer;
251
256
  };
257
+ var appendFeaturesByLayer = (targetLayer, dataList) => {
258
+ const vectorSource = targetLayer.getSource();
259
+ const { _vectorConfig: config } = targetLayer.getProperties() || {};
260
+ const geoJson = assembleGeoJson(dataList, config);
261
+ vectorSource.addFeatures(new import_format.GeoJSON().readFeatures(geoJson));
262
+ };
252
263
  var createVectorFaceLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign(config, { isLine: false }));
253
264
  var createVectorLineLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign(config, { isLine: true }));
254
265
  var removeAllLayers = (isClearAll = true) => {
@@ -264,8 +275,8 @@ var removeAllLayers = (isClearAll = true) => {
264
275
  };
265
276
  var resetActiveFeature = () => {
266
277
  removeOverlays();
267
- const massMarksLayers = instance.getAllLayers().filter((layer) => layer.get("_isVectorLayer"));
268
- massMarksLayers.forEach((layer) => {
278
+ const targetLayers = instance.getAllLayers().filter((layer) => layer.get("_isVectorLayer"));
279
+ targetLayers.forEach((layer) => {
269
280
  const selectInteraction = layer.get("_selectInteraction");
270
281
  if (selectInteraction) {
271
282
  selectInteraction.dispatchEvent({
@@ -795,6 +806,7 @@ var createWmtsLayer = (serverUrl) => (config) => __async(void 0, null, function*
795
806
  0 && (module.exports = {
796
807
  activeFeatureByUid,
797
808
  addMassMarksLayer,
809
+ appendFeaturesByLayer,
798
810
  buildMassMarksStyles,
799
811
  createAnimationMarker,
800
812
  createBaseLayer,
package/dist/index.d.cts CHANGED
@@ -114,6 +114,12 @@ declare const createAnimationMarker: (imgUrl: string, data: MassData) => void;
114
114
  */
115
115
  declare const resetActiveVector: () => void;
116
116
  declare const createBusinessLayer: (dataList: MassData[], config: VectorConfig) => VectorLayer<VectorSource<Feature<ol_geom.Geometry>>, Feature<ol_geom.Geometry>>;
117
+ /**
118
+ * 追加Features
119
+ * @param targetLayer
120
+ * @param dataList
121
+ */
122
+ declare const appendFeaturesByLayer: (targetLayer: VectorLayer, dataList: MassData[]) => void;
117
123
  /**
118
124
  * 创建面状数据
119
125
  * @param dataList
@@ -166,4 +172,4 @@ declare const addMassMarksLayer: (getImgUrlFn: GetImgUrlFn) => (dataList: never[
166
172
  */
167
173
  declare const updateMarksLayersByStatus: (checkedStatusList?: string[]) => MassData[];
168
174
 
169
- export { type CustomMap, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type VectorConfig, type WmtsSourceOptions, activeFeatureByUid, addMassMarksLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMapInstance, createMapWorldLayer, createMassMarksLayer, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getLayersDataList, getMapInstance, instance, removeAllLayers, resetActiveFeature, resetActiveVector, resetMap, resetZoomAndCenter, updateMarksLayersByStatus };
175
+ export { type CustomMap, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type VectorConfig, type WmtsSourceOptions, activeFeatureByUid, addMassMarksLayer, appendFeaturesByLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMapInstance, createMapWorldLayer, createMassMarksLayer, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getLayersDataList, getMapInstance, instance, removeAllLayers, resetActiveFeature, resetActiveVector, resetMap, resetZoomAndCenter, updateMarksLayersByStatus };
package/dist/index.d.ts CHANGED
@@ -114,6 +114,12 @@ declare const createAnimationMarker: (imgUrl: string, data: MassData) => void;
114
114
  */
115
115
  declare const resetActiveVector: () => void;
116
116
  declare const createBusinessLayer: (dataList: MassData[], config: VectorConfig) => VectorLayer<VectorSource<Feature<ol_geom.Geometry>>, Feature<ol_geom.Geometry>>;
117
+ /**
118
+ * 追加Features
119
+ * @param targetLayer
120
+ * @param dataList
121
+ */
122
+ declare const appendFeaturesByLayer: (targetLayer: VectorLayer, dataList: MassData[]) => void;
117
123
  /**
118
124
  * 创建面状数据
119
125
  * @param dataList
@@ -166,4 +172,4 @@ declare const addMassMarksLayer: (getImgUrlFn: GetImgUrlFn) => (dataList: never[
166
172
  */
167
173
  declare const updateMarksLayersByStatus: (checkedStatusList?: string[]) => MassData[];
168
174
 
169
- export { type CustomMap, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type VectorConfig, type WmtsSourceOptions, activeFeatureByUid, addMassMarksLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMapInstance, createMapWorldLayer, createMassMarksLayer, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getLayersDataList, getMapInstance, instance, removeAllLayers, resetActiveFeature, resetActiveVector, resetMap, resetZoomAndCenter, updateMarksLayersByStatus };
175
+ export { type CustomMap, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type VectorConfig, type WmtsSourceOptions, activeFeatureByUid, addMassMarksLayer, appendFeaturesByLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMapInstance, createMapWorldLayer, createMassMarksLayer, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getLayersDataList, getMapInstance, instance, removeAllLayers, resetActiveFeature, resetActiveVector, resetMap, resetZoomAndCenter, updateMarksLayersByStatus };
package/dist/index.js CHANGED
@@ -101,7 +101,7 @@ var assembleGeoJson = (dataList, config) => {
101
101
  properties: __spreadValues({}, item),
102
102
  geometry: {
103
103
  coordinates: pathArray,
104
- type: isLine ? "Polyline" : "Polygon"
104
+ type: isLine ? "LineString" : "Polygon"
105
105
  }
106
106
  });
107
107
  }
@@ -115,7 +115,7 @@ var assembleGeoJson = (dataList, config) => {
115
115
  gcoord.WGS84
116
116
  );
117
117
  };
118
- var createVectorStyle = (data, config) => {
118
+ var createVectorStyle = (feature, config) => {
119
119
  const {
120
120
  isLine,
121
121
  colorMap,
@@ -129,6 +129,7 @@ var createVectorStyle = (data, config) => {
129
129
  activeStrokeColor,
130
130
  activeStrokeWeight
131
131
  } = config || {};
132
+ const data = feature.getProperties();
132
133
  const activeStyle = new Style({
133
134
  stroke: new Stroke({
134
135
  width: activeStrokeWeight || strokeWeight || 4,
@@ -162,10 +163,12 @@ var createVectorStyle = (data, config) => {
162
163
  })
163
164
  );
164
165
  }
165
- Object.assign(data, {
166
- activeStyle,
167
- unActiveStyle
168
- });
166
+ feature.setProperties(
167
+ Object.assign(data, {
168
+ activeStyle,
169
+ unActiveStyle
170
+ })
171
+ );
169
172
  return unActiveStyle;
170
173
  };
171
174
  var createBusinessLayer = (dataList, config) => {
@@ -176,7 +179,7 @@ var createBusinessLayer = (dataList, config) => {
176
179
  className: layerName ? layerName : "ol-layer",
177
180
  source: new VectorSource({
178
181
  features: new GeoJSON().readFeatures(geoJson).map((feature) => {
179
- feature.setStyle(createVectorStyle(feature.getProperties(), config));
182
+ feature.setStyle(createVectorStyle(feature, config));
180
183
  return feature;
181
184
  })
182
185
  })
@@ -187,12 +190,19 @@ var createBusinessLayer = (dataList, config) => {
187
190
  vectorLayer.setProperties({
188
191
  _isCustom: true,
189
192
  _isVectorLayer: true,
193
+ _vectorConfig: config,
190
194
  _layerName: layerName,
191
195
  _dataList: [...dataList],
192
196
  _uuidSet: new Set(dataList.map((item) => item._uuid) || [])
193
197
  });
194
198
  return vectorLayer;
195
199
  };
200
+ var appendFeaturesByLayer = (targetLayer, dataList) => {
201
+ const vectorSource = targetLayer.getSource();
202
+ const { _vectorConfig: config } = targetLayer.getProperties() || {};
203
+ const geoJson = assembleGeoJson(dataList, config);
204
+ vectorSource.addFeatures(new GeoJSON().readFeatures(geoJson));
205
+ };
196
206
  var createVectorFaceLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign(config, { isLine: false }));
197
207
  var createVectorLineLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign(config, { isLine: true }));
198
208
  var removeAllLayers = (isClearAll = true) => {
@@ -208,8 +218,8 @@ var removeAllLayers = (isClearAll = true) => {
208
218
  };
209
219
  var resetActiveFeature = () => {
210
220
  removeOverlays();
211
- const massMarksLayers = instance.getAllLayers().filter((layer) => layer.get("_isVectorLayer"));
212
- massMarksLayers.forEach((layer) => {
221
+ const targetLayers = instance.getAllLayers().filter((layer) => layer.get("_isVectorLayer"));
222
+ targetLayers.forEach((layer) => {
213
223
  const selectInteraction = layer.get("_selectInteraction");
214
224
  if (selectInteraction) {
215
225
  selectInteraction.dispatchEvent({
@@ -738,6 +748,7 @@ var createWmtsLayer = (serverUrl) => (config) => __async(void 0, null, function*
738
748
  export {
739
749
  activeFeatureByUid,
740
750
  addMassMarksLayer,
751
+ appendFeaturesByLayer,
741
752
  buildMassMarksStyles,
742
753
  createAnimationMarker,
743
754
  createBaseLayer,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "map-ol-utils",
3
- "version": "0.0.32",
3
+ "version": "0.0.34",
4
4
  "type": "module",
5
5
  "description": "Openlayers utils library",
6
6
  "files": [