map-ol-utils 0.0.11 → 0.0.13

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
@@ -191,6 +191,20 @@ var removeAllLayers = (isClearAll = true) => {
191
191
  }
192
192
  };
193
193
  var resetActiveMarker = () => {
194
+ removeOverlays();
195
+ const massMarksLayers = instance.getLayers().getArray().filter((layer) => layer.get("_isMassMarksLayer"));
196
+ massMarksLayers.forEach((layer) => {
197
+ const selectInteraction = layer.get("_selectInteraction");
198
+ if (selectInteraction) {
199
+ selectInteraction.dispatchEvent({
200
+ type: "select",
201
+ selected: [],
202
+ mapBrowserEvent: void 0,
203
+ deselected: selectInteraction.getFeatures().getArray()
204
+ });
205
+ selectInteraction.getFeatures().clear();
206
+ }
207
+ });
194
208
  };
195
209
  var activeMarkerByUid = (uid, setFitView = true) => {
196
210
  var _a;
@@ -202,11 +216,15 @@ var activeMarkerByUid = (uid, setFitView = true) => {
202
216
  );
203
217
  if (targetLayer) {
204
218
  const tempList = ((_a = targetLayer.getSource()) == null ? void 0 : _a.getFeatures()) || [];
205
- const targetFeature = tempList.find((feature) => feature.get("_uuid") === uid);
219
+ const targetFeature = tempList.find(
220
+ (feature) => feature.get("_uuid") === uid
221
+ );
206
222
  const selectInteraction = targetLayer.get("_selectInteraction");
207
223
  if (selectInteraction) {
208
224
  const collection = selectInteraction.getFeatures().getArray();
209
- const hasFeature = collection.find((feature) => feature.get("_uuid") === uid);
225
+ const hasFeature = collection.find(
226
+ (feature) => feature.get("_uuid") === uid
227
+ );
210
228
  if (!hasFeature) {
211
229
  selectInteraction.dispatchEvent({
212
230
  type: "select",
@@ -288,7 +306,15 @@ var createSelectByLayer = (vectorLayer) => {
288
306
  vectorLayer.set("_hasActive", true);
289
307
  if (vectorLayer.get("_isDynamic")) {
290
308
  const activeImage = activeStyle.getImage();
291
- emitter_default.emit("dynamic-marker", Object.assign({}, data.rawData || {}, { lnglat: data.lnglat, style: data.style, width: activeImage.getWidth(), height: activeImage.getHeight() }));
309
+ emitter_default.emit(
310
+ "dynamic-marker",
311
+ Object.assign({}, data.rawData || {}, {
312
+ lnglat: data.lnglat,
313
+ style: data.style,
314
+ width: activeImage.getWidth(),
315
+ height: activeImage.getHeight()
316
+ })
317
+ );
292
318
  }
293
319
  }
294
320
  if (deselected.length) {
@@ -371,6 +397,7 @@ var addMassMarksLayer = (getImgUrlFn) => {
371
397
  instance.addLayer(vectorLayer);
372
398
  }
373
399
  massMarksLayer.setProperties({
400
+ _isCustom: true,
374
401
  _hasLine: hasLine,
375
402
  _hasFace: hasFace,
376
403
  _isDynamic: isDynamic
@@ -386,43 +413,47 @@ var updateMarksLayersByStatus = (checkedStatusList = []) => {
386
413
  // src/create-map.ts
387
414
  var import_interaction2 = require("ol/interaction");
388
415
  var instance;
416
+ var mapCenter = [119.71512016971076, 30.122490541963536];
389
417
  var createMapInstance = (config = {}) => {
390
418
  const innerConfig = Object.assign(
391
419
  {
392
420
  zoom: 9.4,
393
421
  maxZoom: 18,
394
422
  minZoom: 9.4,
423
+ center: mapCenter,
395
424
  baseLayer: "vec-layer",
396
425
  projection: "EPSG:4326",
397
426
  layers: [createBaseLayer()],
398
427
  smoothExtentConstraint: false,
399
- tk: "c77eddc667c5bed016fded560baf93e7",
400
- center: [119.5326450625435, 29.8845606679097]
428
+ tk: "c77eddc667c5bed016fded560baf93e7"
401
429
  },
402
430
  config || {}
403
431
  );
404
- if (!instance) {
405
- instance = new import_Map.default({
406
- view: new import_View.default(innerConfig),
407
- controls: (0, import_control.defaults)({
408
- zoom: false,
409
- rotate: false,
410
- attribution: false
411
- }),
412
- interactions: (0, import_interaction2.defaults)({
413
- doubleClickZoom: false
414
- }),
415
- layers: innerConfig.layers || [createBaseLayer()]
416
- });
417
- instance.activeBaseLayer = innerConfig.baseLayer;
418
- instance.getLayerByName = getLayerByName;
419
- instance.removeLayerByName = removeLayerByName;
420
- instance.changeLayersByNames = changeLayersByNames;
421
- instance.on("pointermove", (evt) => {
422
- instance.getTargetElement().style.cursor = instance.hasFeatureAtPixel(evt.pixel) ? "pointer" : "";
423
- });
432
+ if (instance) {
424
433
  return instance;
425
434
  }
435
+ instance = new import_Map.default({
436
+ view: new import_View.default(innerConfig),
437
+ controls: (0, import_control.defaults)({
438
+ zoom: false,
439
+ rotate: false,
440
+ attribution: false
441
+ }),
442
+ interactions: (0, import_interaction2.defaults)({
443
+ doubleClickZoom: false
444
+ }),
445
+ layers: innerConfig.layers || [createBaseLayer()]
446
+ });
447
+ mapCenter = innerConfig.center || mapCenter;
448
+ instance.activeBaseLayer = innerConfig.baseLayer;
449
+ instance.getLayerByName = getLayerByName;
450
+ instance.removeLayerByName = removeLayerByName;
451
+ instance.changeLayersByNames = changeLayersByNames;
452
+ instance.on("pointermove", (evt) => {
453
+ instance.getTargetElement().style.cursor = instance.hasFeatureAtPixel(
454
+ evt.pixel
455
+ ) ? "pointer" : "";
456
+ });
426
457
  return instance;
427
458
  };
428
459
  var disposeMap = () => {
@@ -434,11 +465,17 @@ var disposeMap = () => {
434
465
  instance = void 0;
435
466
  };
436
467
  var getMapInstance = () => instance;
468
+ var resetZoomAndCenter = (center = mapCenter) => {
469
+ const view = instance.getView();
470
+ view.animate({
471
+ zoom: 9.4,
472
+ center,
473
+ duration: 1e3
474
+ });
475
+ };
437
476
  var resetMap = () => {
438
477
  removeAllLayers();
439
478
  };
440
- var resetZoomAndCenter = () => {
441
- };
442
479
 
443
480
  // src/base-layer.ts
444
481
  var import_WMTS = __toESM(require("ol/tilegrid/WMTS"), 1);
@@ -466,7 +503,12 @@ var createBaseLayer = (isDark = true) => {
466
503
  134089306640625e-20
467
504
  ],
468
505
  origin: [118.122911693886, 31.2869311022836],
469
- extent: [118.340502132662, 29.2073269598186, 120.724787992425, 30.5617943760008]
506
+ extent: [
507
+ 118.340502132662,
508
+ 29.2073269598186,
509
+ 120.724787992425,
510
+ 30.5617943760008
511
+ ]
470
512
  }),
471
513
  projection: "EPSG:4326",
472
514
  urls: isDark ? [
package/dist/index.d.cts CHANGED
@@ -92,8 +92,8 @@ declare let instance: CustomMap;
92
92
  declare const createMapInstance: (config?: {}) => CustomMap;
93
93
  declare const disposeMap: () => void;
94
94
  declare const getMapInstance: () => CustomMap;
95
+ declare const resetZoomAndCenter: (center?: [number, number]) => void;
95
96
  declare const resetMap: () => void;
96
- declare const resetZoomAndCenter: () => void;
97
97
 
98
98
  declare const createAnimationMarker: (imgUrl: string, data: MassData) => void;
99
99
  /**
package/dist/index.d.ts CHANGED
@@ -92,8 +92,8 @@ declare let instance: CustomMap;
92
92
  declare const createMapInstance: (config?: {}) => CustomMap;
93
93
  declare const disposeMap: () => void;
94
94
  declare const getMapInstance: () => CustomMap;
95
+ declare const resetZoomAndCenter: (center?: [number, number]) => void;
95
96
  declare const resetMap: () => void;
96
- declare const resetZoomAndCenter: () => void;
97
97
 
98
98
  declare const createAnimationMarker: (imgUrl: string, data: MassData) => void;
99
99
  /**
package/dist/index.js CHANGED
@@ -137,6 +137,20 @@ var removeAllLayers = (isClearAll = true) => {
137
137
  }
138
138
  };
139
139
  var resetActiveMarker = () => {
140
+ removeOverlays();
141
+ const massMarksLayers = instance.getLayers().getArray().filter((layer) => layer.get("_isMassMarksLayer"));
142
+ massMarksLayers.forEach((layer) => {
143
+ const selectInteraction = layer.get("_selectInteraction");
144
+ if (selectInteraction) {
145
+ selectInteraction.dispatchEvent({
146
+ type: "select",
147
+ selected: [],
148
+ mapBrowserEvent: void 0,
149
+ deselected: selectInteraction.getFeatures().getArray()
150
+ });
151
+ selectInteraction.getFeatures().clear();
152
+ }
153
+ });
140
154
  };
141
155
  var activeMarkerByUid = (uid, setFitView = true) => {
142
156
  var _a;
@@ -148,11 +162,15 @@ var activeMarkerByUid = (uid, setFitView = true) => {
148
162
  );
149
163
  if (targetLayer) {
150
164
  const tempList = ((_a = targetLayer.getSource()) == null ? void 0 : _a.getFeatures()) || [];
151
- const targetFeature = tempList.find((feature) => feature.get("_uuid") === uid);
165
+ const targetFeature = tempList.find(
166
+ (feature) => feature.get("_uuid") === uid
167
+ );
152
168
  const selectInteraction = targetLayer.get("_selectInteraction");
153
169
  if (selectInteraction) {
154
170
  const collection = selectInteraction.getFeatures().getArray();
155
- const hasFeature = collection.find((feature) => feature.get("_uuid") === uid);
171
+ const hasFeature = collection.find(
172
+ (feature) => feature.get("_uuid") === uid
173
+ );
156
174
  if (!hasFeature) {
157
175
  selectInteraction.dispatchEvent({
158
176
  type: "select",
@@ -234,7 +252,15 @@ var createSelectByLayer = (vectorLayer) => {
234
252
  vectorLayer.set("_hasActive", true);
235
253
  if (vectorLayer.get("_isDynamic")) {
236
254
  const activeImage = activeStyle.getImage();
237
- emitter_default.emit("dynamic-marker", Object.assign({}, data.rawData || {}, { lnglat: data.lnglat, style: data.style, width: activeImage.getWidth(), height: activeImage.getHeight() }));
255
+ emitter_default.emit(
256
+ "dynamic-marker",
257
+ Object.assign({}, data.rawData || {}, {
258
+ lnglat: data.lnglat,
259
+ style: data.style,
260
+ width: activeImage.getWidth(),
261
+ height: activeImage.getHeight()
262
+ })
263
+ );
238
264
  }
239
265
  }
240
266
  if (deselected.length) {
@@ -317,6 +343,7 @@ var addMassMarksLayer = (getImgUrlFn) => {
317
343
  instance.addLayer(vectorLayer);
318
344
  }
319
345
  massMarksLayer.setProperties({
346
+ _isCustom: true,
320
347
  _hasLine: hasLine,
321
348
  _hasFace: hasFace,
322
349
  _isDynamic: isDynamic
@@ -332,43 +359,47 @@ var updateMarksLayersByStatus = (checkedStatusList = []) => {
332
359
  // src/create-map.ts
333
360
  import { defaults as interactionDefaults } from "ol/interaction";
334
361
  var instance;
362
+ var mapCenter = [119.71512016971076, 30.122490541963536];
335
363
  var createMapInstance = (config = {}) => {
336
364
  const innerConfig = Object.assign(
337
365
  {
338
366
  zoom: 9.4,
339
367
  maxZoom: 18,
340
368
  minZoom: 9.4,
369
+ center: mapCenter,
341
370
  baseLayer: "vec-layer",
342
371
  projection: "EPSG:4326",
343
372
  layers: [createBaseLayer()],
344
373
  smoothExtentConstraint: false,
345
- tk: "c77eddc667c5bed016fded560baf93e7",
346
- center: [119.5326450625435, 29.8845606679097]
374
+ tk: "c77eddc667c5bed016fded560baf93e7"
347
375
  },
348
376
  config || {}
349
377
  );
350
- if (!instance) {
351
- instance = new Map({
352
- view: new View(innerConfig),
353
- controls: defaults({
354
- zoom: false,
355
- rotate: false,
356
- attribution: false
357
- }),
358
- interactions: interactionDefaults({
359
- doubleClickZoom: false
360
- }),
361
- layers: innerConfig.layers || [createBaseLayer()]
362
- });
363
- instance.activeBaseLayer = innerConfig.baseLayer;
364
- instance.getLayerByName = getLayerByName;
365
- instance.removeLayerByName = removeLayerByName;
366
- instance.changeLayersByNames = changeLayersByNames;
367
- instance.on("pointermove", (evt) => {
368
- instance.getTargetElement().style.cursor = instance.hasFeatureAtPixel(evt.pixel) ? "pointer" : "";
369
- });
378
+ if (instance) {
370
379
  return instance;
371
380
  }
381
+ instance = new Map({
382
+ view: new View(innerConfig),
383
+ controls: defaults({
384
+ zoom: false,
385
+ rotate: false,
386
+ attribution: false
387
+ }),
388
+ interactions: interactionDefaults({
389
+ doubleClickZoom: false
390
+ }),
391
+ layers: innerConfig.layers || [createBaseLayer()]
392
+ });
393
+ mapCenter = innerConfig.center || mapCenter;
394
+ instance.activeBaseLayer = innerConfig.baseLayer;
395
+ instance.getLayerByName = getLayerByName;
396
+ instance.removeLayerByName = removeLayerByName;
397
+ instance.changeLayersByNames = changeLayersByNames;
398
+ instance.on("pointermove", (evt) => {
399
+ instance.getTargetElement().style.cursor = instance.hasFeatureAtPixel(
400
+ evt.pixel
401
+ ) ? "pointer" : "";
402
+ });
372
403
  return instance;
373
404
  };
374
405
  var disposeMap = () => {
@@ -380,11 +411,17 @@ var disposeMap = () => {
380
411
  instance = void 0;
381
412
  };
382
413
  var getMapInstance = () => instance;
414
+ var resetZoomAndCenter = (center = mapCenter) => {
415
+ const view = instance.getView();
416
+ view.animate({
417
+ zoom: 9.4,
418
+ center,
419
+ duration: 1e3
420
+ });
421
+ };
383
422
  var resetMap = () => {
384
423
  removeAllLayers();
385
424
  };
386
- var resetZoomAndCenter = () => {
387
- };
388
425
 
389
426
  // src/base-layer.ts
390
427
  import WMTSTileGrid from "ol/tilegrid/WMTS";
@@ -412,7 +449,12 @@ var createBaseLayer = (isDark = true) => {
412
449
  134089306640625e-20
413
450
  ],
414
451
  origin: [118.122911693886, 31.2869311022836],
415
- extent: [118.340502132662, 29.2073269598186, 120.724787992425, 30.5617943760008]
452
+ extent: [
453
+ 118.340502132662,
454
+ 29.2073269598186,
455
+ 120.724787992425,
456
+ 30.5617943760008
457
+ ]
416
458
  }),
417
459
  projection: "EPSG:4326",
418
460
  urls: isDark ? [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "map-ol-utils",
3
- "version": "0.0.11",
3
+ "version": "0.0.13",
4
4
  "type": "module",
5
5
  "description": "Openlayers utils library",
6
6
  "files": [