@syncfusion/ej2-maps 28.1.33 → 28.2.3

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.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 28.1.33
3
+ * version : 28.2.3
4
4
  * Copyright Syncfusion Inc. 2001 - 2024. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "_from": "@syncfusion/ej2-maps@*",
3
- "_id": "@syncfusion/ej2-maps@16.42.7",
3
+ "_id": "@syncfusion/ej2-maps@28.1.38",
4
4
  "_inBundle": false,
5
- "_integrity": "sha512-hYdA8I18QpGdTInSRH3iZ3hdp6/U1dkGLMq7yFsKaEDDvCyl5rvajihb+XaUX1VmW8+eWdgjbI5rPTTfO219RQ==",
5
+ "_integrity": "sha512-ddDdmIsdDFSF2y4GSLRiLbX48FcIJzGVQkUAd3NrW447N+Z9RdH0nsPrSKJk2EgcRy38pdqcZscqBpsvkczf2Q==",
6
6
  "_location": "/@syncfusion/ej2-maps",
7
7
  "_phantomChildren": {},
8
8
  "_requested": {
@@ -23,8 +23,8 @@
23
23
  "/@syncfusion/ej2-react-maps",
24
24
  "/@syncfusion/ej2-vue-maps"
25
25
  ],
26
- "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-release/@syncfusion/ej2-maps/-/ej2-maps-16.42.7.tgz",
27
- "_shasum": "36fc1e11aef49f674a3f00eeaa4618bd0aad2a95",
26
+ "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-maps/-/ej2-maps-28.1.38.tgz",
27
+ "_shasum": "f23c26822ead30c099493aea92cd2d97b5780651",
28
28
  "_spec": "@syncfusion/ej2-maps@*",
29
29
  "_where": "/jenkins/workspace/elease-automation_release_28.1.1/packages/included",
30
30
  "author": {
@@ -35,13 +35,13 @@
35
35
  },
36
36
  "bundleDependencies": false,
37
37
  "dependencies": {
38
- "@syncfusion/ej2-base": "~28.1.33",
39
- "@syncfusion/ej2-buttons": "~28.1.33",
40
- "@syncfusion/ej2-compression": "~28.1.33",
41
- "@syncfusion/ej2-data": "~28.1.33",
42
- "@syncfusion/ej2-file-utils": "~28.1.33",
43
- "@syncfusion/ej2-pdf-export": "~28.1.33",
44
- "@syncfusion/ej2-svg-base": "~28.1.33"
38
+ "@syncfusion/ej2-base": "~28.2.3",
39
+ "@syncfusion/ej2-buttons": "~28.2.3",
40
+ "@syncfusion/ej2-compression": "~28.2.3",
41
+ "@syncfusion/ej2-data": "~28.2.3",
42
+ "@syncfusion/ej2-file-utils": "~28.2.3",
43
+ "@syncfusion/ej2-pdf-export": "~28.2.3",
44
+ "@syncfusion/ej2-svg-base": "~28.2.3"
45
45
  },
46
46
  "deprecated": false,
47
47
  "description": "The Maps component is used to visualize the geographical data and represent the statistical data of a particular geographical area on earth with user interactivity, and provides various customizing options",
@@ -93,6 +93,6 @@
93
93
  "url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
94
94
  },
95
95
  "typings": "index.d.ts",
96
- "version": "28.1.33",
96
+ "version": "28.2.3",
97
97
  "sideEffects": false
98
98
  }
@@ -285,7 +285,7 @@ var LayerPanel = /** @class */ (function () {
285
285
  proxy.renderTileLayer(proxy, layer, layerIndex, bing);
286
286
  this.mapObject.arrangeTemplate();
287
287
  if (this.mapObject.zoomModule && (this.mapObject.previousScale !== this.mapObject.scale)) {
288
- this.mapObject.zoomModule.applyTransform(this.mapObject, true);
288
+ this.mapObject.zoomModule.applyTransform(this.mapObject, false, true);
289
289
  }
290
290
  };
291
291
  LayerPanel.prototype.bubbleCalculation = function (bubbleSettings, range) {
@@ -200,7 +200,7 @@ var Legend = /** @class */ (function () {
200
200
  else {
201
201
  legendText = '';
202
202
  }
203
- if (legend.position === 'Left' || legend.position === 'Right') {
203
+ if (legend.position === 'Left' || legend.position === 'Right' || legend.position === 'Float') {
204
204
  for (var i_1 = 0; i_1 < this.legendCollection.length; i_1++) {
205
205
  var legendItem = this.legendCollection[i_1];
206
206
  var legendTextSize = measureText(legendItem['text'], legend.textStyle);
@@ -1375,8 +1375,12 @@ var Legend = /** @class */ (function () {
1375
1375
  var areaWidth = totalRect.width;
1376
1376
  var totalWidth = map.availableSize.width;
1377
1377
  var totalHeight = map.availableSize.height;
1378
- var locationX = !isNullOrUndefined(legend.location.x) ? legend.location.x : 0;
1379
- var locationY = !isNullOrUndefined(legend.location.y) ? legend.location.y : 0;
1378
+ var locationX = !isNullOrUndefined(legend.location.x) ? (typeof (legend.location.x) === 'string' &&
1379
+ legend.location.x.indexOf('%') > -1 ? (map.availableSize.width / 100) * parseFloat(legend.location.x) :
1380
+ typeof (legend.location.x) === 'string' ? parseFloat(legend.location.x) : legend.location.x) : 0;
1381
+ var locationY = !isNullOrUndefined(legend.location.y) ? (typeof (legend.location.y) === 'string' &&
1382
+ legend.location.y.indexOf('%') > -1 ? (map.availableSize.height / 100) * parseFloat(legend.location.y) :
1383
+ typeof (legend.location.y) === 'string' ? parseFloat(legend.location.y) : legend.location.y) : 0;
1380
1384
  if (legend.position === 'Float') {
1381
1385
  this.translate = map.isTileMap ? new Point(locationX, locationY + (spacing / 4)) :
1382
1386
  new Point(locationX + map.mapAreaRect.x, locationY + map.mapAreaRect.y);
package/src/maps/maps.js CHANGED
@@ -665,7 +665,7 @@ var Maps = /** @class */ (function (_super) {
665
665
  }
666
666
  }
667
667
  if (this.zoomModule && ((this.previousScale !== this.scale) || this.zoomNotApplied || this.isZoomByPosition)) {
668
- this.zoomModule.applyTransform(this, true);
668
+ this.zoomModule.applyTransform(this, false, true);
669
669
  }
670
670
  }
671
671
  };
@@ -1,4 +1,4 @@
1
- import { Property, ChildProperty, Complex, Collection } from '@syncfusion/ej2-base';import { DataManager, Query } from '@syncfusion/ej2-data';import { Alignment, LegendPosition, LegendType, LegendMode, Type, MarkerType, Orientation, MapAjax } from '../../index';import { SmartLabelMode, IntersectAction } from '../../index';import { Theme } from './theme';import { Point, GeoLocation, Coordinate } from '../utils/helper';import { LegendArrangement, LegendShape, BubbleType, ToolbarItem } from '../utils/enum';import { AnnotationAlignment, GeometryType, LabelPosition, LabelIntersectAction } from '../index';
1
+ import { Property, ChildProperty, Complex, Collection } from '@syncfusion/ej2-base';import { DataManager, Query } from '@syncfusion/ej2-data';import { Alignment, LegendPosition, LegendType, LegendMode, Type, MarkerType, Orientation, MapAjax } from '../../index';import { SmartLabelMode, IntersectAction } from '../../index';import { Theme } from './theme';import { Point, GeoLocation, Coordinate, RelativePoint } from '../utils/helper';import { LegendArrangement, LegendShape, BubbleType, ToolbarItem } from '../utils/enum';import { AnnotationAlignment, GeometryType, LabelPosition, LabelIntersectAction } from '../index';
2
2
 
3
3
  /**
4
4
  * Interface for a class Annotation
@@ -1498,7 +1498,7 @@ export interface LegendSettingsModel {
1498
1498
  /**
1499
1499
  * Gets or sets the location of the legend in pixels when the legend position is set as `Float`.
1500
1500
  */
1501
- location?: Point;
1501
+ location?: RelativePoint | Point;
1502
1502
 
1503
1503
  /**
1504
1504
  * Gets or sets the color of the legend in maps.
@@ -10,7 +10,7 @@ import { MarkerSettingsModel, MarkerClusterSettingsModel, ShapeSettingsModel, Bu
10
10
  import { DataLabelSettingsModel, TooltipSettingsModel, SubTitleSettingsModel, SelectionSettingsModel, PolygonSettingModel } from './base-model';
11
11
  import { HighlightSettingsModel, ToggleLegendSettingsModel, ConnectorLineSettingsModel, PolygonTooltipSettingsModel } from './base-model';
12
12
  import { InitialShapeSelectionSettingsModel, InitialMarkerSelectionSettingsModel, ZoomToolbarSettingsModel, ZoomToolbarButtonSettingsModel } from './base-model';
13
- import { Point, GeoLocation, Coordinate } from '../utils/helper';
13
+ import { Point, GeoLocation, Coordinate, RelativePoint } from '../utils/helper';
14
14
  import { LegendArrangement, LegendShape, BubbleType, ToolbarItem } from '../utils/enum';
15
15
  import { AnnotationAlignment, GeometryType, LabelPosition, LabelIntersectAction } from '../index';
16
16
  /**
@@ -1299,7 +1299,7 @@ export declare class LegendSettings extends ChildProperty<LegendSettings> {
1299
1299
  /**
1300
1300
  * Gets or sets the location of the legend in pixels when the legend position is set as `Float`.
1301
1301
  */
1302
- location: Point;
1302
+ location: RelativePoint | Point;
1303
1303
  /**
1304
1304
  * Gets or sets the color of the legend in maps.
1305
1305
  *
@@ -84,10 +84,11 @@ export declare class Zoom {
84
84
  * @param {Point} position - Specifies the position.
85
85
  * @param {number} newZoomFactor - Specifies the zoom factor.
86
86
  * @param {string} type - Specifies the type.
87
+ * @param {boolean} isMouseWheel - Indicates whether the zoom operation was triggered by the mouse wheel.
87
88
  * @returns {void}
88
89
  * @private
89
90
  */
90
- performZooming(position: Point, newZoomFactor: number, type: string): void;
91
+ performZooming(position: Point, newZoomFactor: number, type: string, isMouseWheel?: boolean): void;
91
92
  private calculateInitalZoomTranslatePoint;
92
93
  private triggerZoomEvent;
93
94
  private getTileTranslatePosition;
@@ -124,12 +125,13 @@ export declare class Zoom {
124
125
  private animateTransform;
125
126
  /**
126
127
  * @param {Maps} maps - Specifies the Map control
128
+ * @param {boolean} isMouseWheel - Indicates whether the zoom operation was triggered by the mouse wheel.
127
129
  * @param {boolean} animate - Specifies the animation is available or not
128
130
  * @param {boolean} isPanning - Specifies that it is panning or not
129
131
  * @returns {void}
130
132
  * @private
131
133
  */
132
- applyTransform(maps: Maps, animate?: boolean, isPanning?: boolean): void;
134
+ applyTransform(maps: Maps, isMouseWheel?: boolean, animate?: boolean, isPanning?: boolean): void;
133
135
  private markerTranslates;
134
136
  /**
135
137
  * To translate the layer template elements.
@@ -52,11 +52,13 @@ var Zoom = /** @class */ (function () {
52
52
  * @param {Point} position - Specifies the position.
53
53
  * @param {number} newZoomFactor - Specifies the zoom factor.
54
54
  * @param {string} type - Specifies the type.
55
+ * @param {boolean} isMouseWheel - Indicates whether the zoom operation was triggered by the mouse wheel.
55
56
  * @returns {void}
56
57
  * @private
57
58
  */
58
- Zoom.prototype.performZooming = function (position, newZoomFactor, type) {
59
+ Zoom.prototype.performZooming = function (position, newZoomFactor, type, isMouseWheel) {
59
60
  var _this = this;
61
+ if (isMouseWheel === void 0) { isMouseWheel = false; }
60
62
  var map = this.maps;
61
63
  map.previousProjection = newZoomFactor <= 1.5 ? undefined : map.projectionType;
62
64
  map.defaultState = false;
@@ -115,7 +117,7 @@ var Zoom = /** @class */ (function () {
115
117
  map.scale = map.mapScaleValue = map.previousScale;
116
118
  }
117
119
  else {
118
- this.applyTransform(map);
120
+ this.applyTransform(map, isMouseWheel);
119
121
  }
120
122
  }
121
123
  else if ((map.isTileMap) && (newZoomFactor >= minZoom && newZoomFactor <= maxZoom)) {
@@ -159,7 +161,7 @@ var Zoom = /** @class */ (function () {
159
161
  // element1 = element1;
160
162
  // }
161
163
  // }
162
- _this.applyTransform(_this.maps);
164
+ _this.applyTransform(_this.maps, isMouseWheel);
163
165
  if (document.getElementById(_this.maps.element.id + '_LayerIndex_1')) {
164
166
  document.getElementById(_this.maps.element.id + '_LayerIndex_1').style.display = 'block';
165
167
  }
@@ -285,7 +287,7 @@ var Zoom = /** @class */ (function () {
285
287
  }
286
288
  if (!isZoomCancelled) {
287
289
  map.mapScaleValue = zoomCalculationFactor;
288
- this.applyTransform(map, true);
290
+ this.applyTransform(map, false, true);
289
291
  this.maps.zoomNotApplied = false;
290
292
  this.zoomingRect = null;
291
293
  }
@@ -499,12 +501,13 @@ var Zoom = /** @class */ (function () {
499
501
  };
500
502
  /**
501
503
  * @param {Maps} maps - Specifies the Map control
504
+ * @param {boolean} isMouseWheel - Indicates whether the zoom operation was triggered by the mouse wheel.
502
505
  * @param {boolean} animate - Specifies the animation is available or not
503
506
  * @param {boolean} isPanning - Specifies that it is panning or not
504
507
  * @returns {void}
505
508
  * @private
506
509
  */
507
- Zoom.prototype.applyTransform = function (maps, animate, isPanning) {
510
+ Zoom.prototype.applyTransform = function (maps, isMouseWheel, animate, isPanning) {
508
511
  var _this = this;
509
512
  var layerIndex;
510
513
  this.templateCount = 0;
@@ -596,8 +599,10 @@ var Zoom = /** @class */ (function () {
596
599
  }
597
600
  if (((_this.currentLayer.animationDuration > 0 || animationMode === 'Enable') || ((maps.layersCollection[0].animationDuration > 0 || animationMode === 'Enable') && _this.currentLayer.type === 'SubLayer')) && !_this.isPanModeEnabled) {
598
601
  if (!maps.isTileMap) {
599
- markerStyle = 'visibility:hidden';
600
- currentEle.style.cssText = markerStyle;
602
+ markerStyle = isMouseWheel ? markerStyle : 'visibility:hidden';
603
+ if (!isNullOrUndefined(markerStyle)) {
604
+ currentEle.style.cssText = markerStyle;
605
+ }
601
606
  }
602
607
  }
603
608
  });
@@ -1184,15 +1189,15 @@ var Zoom = /** @class */ (function () {
1184
1189
  if (!panArgs.cancel) {
1185
1190
  if (panningXDirection && panningYDirection) {
1186
1191
  map.translatePoint = new Point(x, y);
1187
- this.applyTransform(map, false, true);
1192
+ this.applyTransform(map, false, false, true);
1188
1193
  }
1189
1194
  else if (panningXDirection) {
1190
1195
  map.translatePoint = new Point(x, map.translatePoint.y);
1191
- this.applyTransform(map, false, true);
1196
+ this.applyTransform(map, false, false, true);
1192
1197
  }
1193
1198
  else if (panningYDirection) {
1194
1199
  map.translatePoint = new Point(map.translatePoint.x, y);
1195
- this.applyTransform(map, false, true);
1200
+ this.applyTransform(map, false, false, true);
1196
1201
  }
1197
1202
  }
1198
1203
  this.maps.zoomNotApplied = false;
@@ -1221,7 +1226,7 @@ var Zoom = /** @class */ (function () {
1221
1226
  };
1222
1227
  map.trigger(pan, panArgs);
1223
1228
  map.mapLayerPanel.generateTiles(map.tileZoomLevel, map.tileTranslatePoint, 'Pan');
1224
- this.applyTransform(map, false, true);
1229
+ this.applyTransform(map, false, false, true);
1225
1230
  map.translatePoint.x = (map.tileTranslatePoint.x - xDifference) / map.scale;
1226
1231
  map.translatePoint.y = (map.tileTranslatePoint.y - yDifference) / map.scale;
1227
1232
  }
@@ -1292,7 +1297,7 @@ var Zoom = /** @class */ (function () {
1292
1297
  map.scale = map.previousScale;
1293
1298
  }
1294
1299
  else {
1295
- this.applyTransform(map, true);
1300
+ this.applyTransform(map, false, true);
1296
1301
  }
1297
1302
  }
1298
1303
  else if ((map.isTileMap) && ((zoomFactor >= minZoom && zoomFactor <= maxZoom) || map.isReset)) {
@@ -1333,7 +1338,7 @@ var Zoom = /** @class */ (function () {
1333
1338
  // element1.removeChild(element1.children[element1.childElementCount - 1]);
1334
1339
  // element1.childElementCount ? element1.removeChild(element1.children[element1.childElementCount - 1]) : element1;
1335
1340
  }
1336
- _this.applyTransform(_this.maps, true);
1341
+ _this.applyTransform(_this.maps, false, true);
1337
1342
  if (document.getElementById(_this.maps.element.id + '_LayerIndex_1')) {
1338
1343
  document.getElementById(_this.maps.element.id + '_LayerIndex_1').style.display = 'block';
1339
1344
  }
@@ -1946,11 +1951,11 @@ var Zoom = /** @class */ (function () {
1946
1951
  map.staticMapZoom = map.tileZoomLevel;
1947
1952
  if (map.staticMapZoom > 0 && map.staticMapZoom < staticMaxZoomLevel) {
1948
1953
  map.staticMapZoom += 1;
1949
- this.performZooming(position, (value + delta), direction);
1954
+ this.performZooming(position, (value + delta), direction, true);
1950
1955
  }
1951
1956
  }
1952
1957
  else {
1953
- this.performZooming(position, (value + delta), direction);
1958
+ this.performZooming(position, (value + delta), direction, true);
1954
1959
  }
1955
1960
  }
1956
1961
  else {
@@ -1964,7 +1969,7 @@ var Zoom = /** @class */ (function () {
1964
1969
  if (map.staticMapZoom > 1 && map.staticMapZoom < staticMaxZoomLevel) {
1965
1970
  map.staticMapZoom -= 1;
1966
1971
  }
1967
- this.performZooming(position, (value - delta), direction);
1972
+ this.performZooming(position, (value - delta), direction, true);
1968
1973
  }
1969
1974
  }
1970
1975
  this.removeToolbarOpacity(map.mapScaleValue, (!this.maps.isDevice ? (!isNullOrUndefined(e.target) ? e.target['id'] :
@@ -184,6 +184,22 @@ export declare class Point {
184
184
  y: number;
185
185
  constructor(x: number, y: number);
186
186
  }
187
+ /**
188
+ * Specifies the position of the legend on the map, with options to set the
189
+ * position values as percentages. The legend is placed relative to the Maps,
190
+ * ensuring responsiveness.
191
+ */
192
+ export declare class RelativePoint {
193
+ /**
194
+ * Defines the horizontal position of the legend as a percentage.
195
+ */
196
+ x: string;
197
+ /**
198
+ * Defines the vertical position of the legend as a percentage.
199
+ */
200
+ y: string;
201
+ constructor(x: string, y: string);
202
+ }
187
203
  /**
188
204
  * Defines the latitude and longitude values that define a map location.
189
205
  */
@@ -389,6 +389,19 @@ var Point = /** @class */ (function () {
389
389
  return Point;
390
390
  }());
391
391
  export { Point };
392
+ /**
393
+ * Specifies the position of the legend on the map, with options to set the
394
+ * position values as percentages. The legend is placed relative to the Maps,
395
+ * ensuring responsiveness.
396
+ */
397
+ var RelativePoint = /** @class */ (function () {
398
+ function RelativePoint(x, y) {
399
+ this.x = x;
400
+ this.y = y;
401
+ }
402
+ return RelativePoint;
403
+ }());
404
+ export { RelativePoint };
392
405
  /**
393
406
  * Defines the latitude and longitude values that define a map location.
394
407
  */