@syncfusion/ej2-maps 27.1.56 → 28.1.33
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/.gitleaksignore +37 -0
- package/README.md +2 -2
- package/dist/ej2-maps.min.js +3 -3
- package/dist/ej2-maps.umd.min.js +3 -3
- package/dist/ej2-maps.umd.min.js.map +1 -1
- package/dist/es6/ej2-maps.es2015.js +528 -224
- package/dist/es6/ej2-maps.es2015.js.map +1 -1
- package/dist/es6/ej2-maps.es5.js +537 -233
- package/dist/es6/ej2-maps.es5.js.map +1 -1
- package/dist/global/ej2-maps.min.js +3 -3
- package/dist/global/ej2-maps.min.js.map +1 -1
- package/dist/global/index.d.ts +2 -2
- package/package.json +13 -13
- package/src/maps/layers/legend.d.ts +1 -1
- package/src/maps/layers/legend.js +40 -38
- package/src/maps/layers/marker.d.ts +8 -1
- package/src/maps/layers/marker.js +104 -33
- package/src/maps/maps-model.d.ts +8 -1
- package/src/maps/maps.d.ts +19 -3
- package/src/maps/maps.js +53 -15
- package/src/maps/model/base-model.d.ts +20 -0
- package/src/maps/model/base.d.ts +17 -0
- package/src/maps/model/base.js +9 -0
- package/src/maps/model/constants.d.ts +6 -0
- package/src/maps/model/constants.js +6 -0
- package/src/maps/model/export-image.js +4 -4
- package/src/maps/model/export-pdf.js +4 -4
- package/src/maps/model/interface.d.ts +15 -0
- package/src/maps/model/print.js +2 -2
- package/src/maps/model/theme.js +72 -0
- package/src/maps/user-interaction/tooltip.js +3 -1
- package/src/maps/user-interaction/zoom.d.ts +13 -1
- package/src/maps/user-interaction/zoom.js +139 -91
- package/src/maps/utils/enum.d.ts +4 -0
- package/src/maps/utils/helper.d.ts +4 -9
- package/src/maps/utils/helper.js +102 -46
package/dist/global/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: index.d.ts
|
|
3
|
-
* version :
|
|
4
|
-
* Copyright Syncfusion Inc. 2001 -
|
|
3
|
+
* version : 28.1.33
|
|
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
|
|
7
7
|
* licensing@syncfusion.com. Any infringement will be prosecuted under
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"_from": "@syncfusion/ej2-maps@*",
|
|
3
|
-
"_id": "@syncfusion/ej2-maps@
|
|
3
|
+
"_id": "@syncfusion/ej2-maps@16.42.7",
|
|
4
4
|
"_inBundle": false,
|
|
5
|
-
"_integrity": "sha512-
|
|
5
|
+
"_integrity": "sha512-hYdA8I18QpGdTInSRH3iZ3hdp6/U1dkGLMq7yFsKaEDDvCyl5rvajihb+XaUX1VmW8+eWdgjbI5rPTTfO219RQ==",
|
|
6
6
|
"_location": "/@syncfusion/ej2-maps",
|
|
7
7
|
"_phantomChildren": {},
|
|
8
8
|
"_requested": {
|
|
@@ -23,10 +23,10 @@
|
|
|
23
23
|
"/@syncfusion/ej2-react-maps",
|
|
24
24
|
"/@syncfusion/ej2-vue-maps"
|
|
25
25
|
],
|
|
26
|
-
"_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-
|
|
27
|
-
"_shasum": "
|
|
26
|
+
"_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-release/@syncfusion/ej2-maps/-/ej2-maps-16.42.7.tgz",
|
|
27
|
+
"_shasum": "36fc1e11aef49f674a3f00eeaa4618bd0aad2a95",
|
|
28
28
|
"_spec": "@syncfusion/ej2-maps@*",
|
|
29
|
-
"_where": "/jenkins/workspace/elease-
|
|
29
|
+
"_where": "/jenkins/workspace/elease-automation_release_28.1.1/packages/included",
|
|
30
30
|
"author": {
|
|
31
31
|
"name": "Syncfusion Inc."
|
|
32
32
|
},
|
|
@@ -35,13 +35,13 @@
|
|
|
35
35
|
},
|
|
36
36
|
"bundleDependencies": false,
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@syncfusion/ej2-base": "~
|
|
39
|
-
"@syncfusion/ej2-buttons": "~
|
|
40
|
-
"@syncfusion/ej2-compression": "~
|
|
41
|
-
"@syncfusion/ej2-data": "~
|
|
42
|
-
"@syncfusion/ej2-file-utils": "~
|
|
43
|
-
"@syncfusion/ej2-pdf-export": "~
|
|
44
|
-
"@syncfusion/ej2-svg-base": "~
|
|
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"
|
|
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": "
|
|
96
|
+
"version": "28.1.33",
|
|
97
97
|
"sideEffects": false
|
|
98
98
|
}
|
|
@@ -126,7 +126,7 @@ export declare class Legend {
|
|
|
126
126
|
removeLegendHighlightCollection(): void;
|
|
127
127
|
removeLegendSelectionCollection(targetElement: Element): void;
|
|
128
128
|
removeShapeHighlightCollection(): void;
|
|
129
|
-
shapeHighLightAndSelection(targetElement: Element, data: object,
|
|
129
|
+
shapeHighLightAndSelection(targetElement: Element, data: object, legendModule: SelectionSettingsModel | HighlightSettingsModel, getValue: string, layerIndex: number): void;
|
|
130
130
|
private isTargetSelected;
|
|
131
131
|
private updateLegendElement;
|
|
132
132
|
private getIndexofLegend;
|
|
@@ -200,6 +200,13 @@ var Legend = /** @class */ (function () {
|
|
|
200
200
|
else {
|
|
201
201
|
legendText = '';
|
|
202
202
|
}
|
|
203
|
+
if (legend.position === 'Left' || legend.position === 'Right') {
|
|
204
|
+
for (var i_1 = 0; i_1 < this.legendCollection.length; i_1++) {
|
|
205
|
+
var legendItem = this.legendCollection[i_1];
|
|
206
|
+
var legendTextSize = measureText(legendItem['text'], legend.textStyle);
|
|
207
|
+
this.textMaxWidth = Math.max(this.textMaxWidth, legendTextSize.width);
|
|
208
|
+
}
|
|
209
|
+
}
|
|
203
210
|
maxTextHeight = Math.max(maxTextHeight, itemTextSize.height);
|
|
204
211
|
maxTextWidth = Math.max(maxTextWidth, itemTextSize.width);
|
|
205
212
|
if (itemTextSize.width > 0 && itemTextSize.height > 0) {
|
|
@@ -209,26 +216,26 @@ var Legend = /** @class */ (function () {
|
|
|
209
216
|
(startY - textPadding_1);
|
|
210
217
|
}
|
|
211
218
|
else {
|
|
212
|
-
textX_1 = (position_1 === 'After') ? startX - (
|
|
213
|
-
: (startX + rectWidth +
|
|
219
|
+
textX_1 = (position_1 === 'After') ? startX - (this.textMaxWidth / 2) - textPadding_1
|
|
220
|
+
: (startX + rectWidth + this.textMaxWidth / 2) + textPadding_1;
|
|
214
221
|
textY_1 = startY + (rectHeight / 2) + (itemTextSize.height / 4);
|
|
215
222
|
}
|
|
216
223
|
}
|
|
217
224
|
if (i === 0) {
|
|
218
225
|
itemStartX = (arrangement === 'Horizontal') ? startX : (position_1 === 'After') ?
|
|
219
|
-
textX_1 - (
|
|
226
|
+
textX_1 - (this.textMaxWidth / 2) : startX;
|
|
220
227
|
itemStartY = (arrangement === 'Horizontal') ? (position_1 === 'After') ? startY :
|
|
221
228
|
textY_1 - (itemTextSize.height / 2) : startY;
|
|
222
229
|
if (this.legendCollection.length === 1) {
|
|
223
230
|
legendWidth = (arrangement === 'Horizontal') ? Math.abs((startX + rectWidth) - itemStartX) :
|
|
224
|
-
(rectWidth +
|
|
231
|
+
(rectWidth + this.textMaxWidth + textPadding_1);
|
|
225
232
|
legendHeight = (arrangement === 'Horizontal') ? (rectHeight + (maxTextHeight / 2) + textPadding_1) :
|
|
226
233
|
Math.abs((startY + rectHeight) - itemStartY);
|
|
227
234
|
}
|
|
228
235
|
}
|
|
229
236
|
else if (i === this.legendCollection.length - 1) {
|
|
230
237
|
legendWidth = (arrangement === 'Horizontal') ? Math.abs((startX + rectWidth) - itemStartX) :
|
|
231
|
-
(rectWidth +
|
|
238
|
+
(rectWidth + this.textMaxWidth + textPadding_1);
|
|
232
239
|
legendHeight = (arrangement === 'Horizontal') ? (rectHeight + (maxTextHeight / 2) + textPadding_1) :
|
|
233
240
|
Math.abs((startY + rectHeight) - itemStartY);
|
|
234
241
|
}
|
|
@@ -240,8 +247,8 @@ var Legend = /** @class */ (function () {
|
|
|
240
247
|
shapeBorder: this.legendCollection[i]['shapeBorder']
|
|
241
248
|
});
|
|
242
249
|
}
|
|
243
|
-
if (this.legendCollection.length === 1
|
|
244
|
-
legendHeight =
|
|
250
|
+
if (this.legendCollection.length === 1) {
|
|
251
|
+
legendHeight = maxTextHeight + textPadding_1;
|
|
245
252
|
legendWidth = rectWidth;
|
|
246
253
|
}
|
|
247
254
|
this.legendItemRect = { x: itemStartX, y: itemStartY, width: legendWidth, height: legendHeight };
|
|
@@ -724,13 +731,13 @@ var Legend = /** @class */ (function () {
|
|
|
724
731
|
&& idIndex_1 === i) {
|
|
725
732
|
var layer = this.maps.layers[collection[i]['data'][0]['layerIndex']];
|
|
726
733
|
var enable = void 0;
|
|
727
|
-
var
|
|
734
|
+
var legendModule = void 0;
|
|
728
735
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
729
736
|
var data = void 0;
|
|
730
737
|
if (!isNullOrUndefined(layer)) {
|
|
731
738
|
enable = (value === 'selection') ? layer.selectionSettings.enable : layer.highlightSettings.enable;
|
|
732
|
-
|
|
733
|
-
|
|
739
|
+
legendModule = void 0;
|
|
740
|
+
legendModule = (value === 'selection') ? layer.selectionSettings : layer.highlightSettings;
|
|
734
741
|
data = collection[i]['data'];
|
|
735
742
|
}
|
|
736
743
|
if (enable) {
|
|
@@ -751,8 +758,8 @@ var Legend = /** @class */ (function () {
|
|
|
751
758
|
if (shapeElement !== null) {
|
|
752
759
|
var shapeMatch = true;
|
|
753
760
|
if (this.maps.legendSelectionCollection !== null) {
|
|
754
|
-
for (var
|
|
755
|
-
if (this.maps.legendSelectionCollection[
|
|
761
|
+
for (var i_2 = 0; i_2 < this.maps.legendSelectionCollection.length; i_2++) {
|
|
762
|
+
if (this.maps.legendSelectionCollection[i_2]['legendElement'] === targetElement) {
|
|
756
763
|
shapeMatch = false;
|
|
757
764
|
break;
|
|
758
765
|
}
|
|
@@ -774,12 +781,12 @@ var Legend = /** @class */ (function () {
|
|
|
774
781
|
var shapeOldColor = this.legendHighlightCollection[length - 1]['shapeOldFillColor'][shapeItemCount];
|
|
775
782
|
var shapeOldFillOpacity = this.legendHighlightCollection[length - 1]['shapeOldOpacity'];
|
|
776
783
|
this.shapePreviousColor = this.legendHighlightCollection[length - 1]['shapeOldFillColor'];
|
|
777
|
-
this.setColor(shapeElement, !isNullOrUndefined(
|
|
778
|
-
this.setColor(targetElement, !isNullOrUndefined(
|
|
784
|
+
this.setColor(shapeElement, !isNullOrUndefined(legendModule.fill) ? legendModule.fill : shapeOldColor, isNullOrUndefined(legendModule.opacity) ? shapeOldFillOpacity : legendModule.opacity.toString(), legendModule.border.color, legendModule.border.width.toString(), 'highlight');
|
|
785
|
+
this.setColor(targetElement, !isNullOrUndefined(legendModule.fill) ? legendModule.fill : legendHighlightColor, isNullOrUndefined(legendModule.opacity) ? shapeOldFillOpacity : legendModule.opacity.toString(), legendModule.border.color, legendModule.border.width.toString(), 'highlight');
|
|
779
786
|
}
|
|
780
787
|
else if (value === 'selection') {
|
|
781
788
|
this.legendHighlightCollection = [];
|
|
782
|
-
this.maps.legendSelectionClass =
|
|
789
|
+
this.maps.legendSelectionClass = legendModule;
|
|
783
790
|
if (j === 0) {
|
|
784
791
|
this.pushCollection(targetElement, this.maps.legendSelectionCollection, collection[i], layer.shapeSettings);
|
|
785
792
|
if (multiSelectEnable) {
|
|
@@ -799,8 +806,8 @@ var Legend = /** @class */ (function () {
|
|
|
799
806
|
var legendSelectionColor = this.maps.legendSelectionCollection[selectLength - 1]['legendOldFill'];
|
|
800
807
|
this.maps.legendSelectionCollection[selectLength - 1]['MapShapeCollection']['Elements'].push(shapeElement);
|
|
801
808
|
this.maps.legendSelectionCollection[selectLength - 1]['shapeOldFillColor'] = this.shapePreviousColor;
|
|
802
|
-
this.setColor(targetElement, !isNullOrUndefined(
|
|
803
|
-
this.setColor(shapeElement, !isNullOrUndefined(
|
|
809
|
+
this.setColor(targetElement, !isNullOrUndefined(legendModule.fill) ? legendModule.fill : legendSelectionColor, legendModule.opacity.toString(), legendModule.border.color, legendModule.border.width.toString(), 'selection');
|
|
810
|
+
this.setColor(shapeElement, !isNullOrUndefined(legendModule.fill) ? legendModule.fill : legendSelectionColor, legendModule.opacity.toString(), legendModule.border.color, legendModule.border.width.toString(), 'selection');
|
|
804
811
|
if (this.maps.selectedElementId.indexOf(shapeElement.getAttribute('id')) === -1) {
|
|
805
812
|
this.maps.selectedElementId.push(shapeElement.getAttribute('id'));
|
|
806
813
|
}
|
|
@@ -898,7 +905,7 @@ var Legend = /** @class */ (function () {
|
|
|
898
905
|
}
|
|
899
906
|
}
|
|
900
907
|
};
|
|
901
|
-
Legend.prototype.shapeHighLightAndSelection = function (targetElement, data,
|
|
908
|
+
Legend.prototype.shapeHighLightAndSelection = function (targetElement, data, legendModule, getValue, layerIndex) {
|
|
902
909
|
if (data !== undefined) {
|
|
903
910
|
this.updateLegendElement();
|
|
904
911
|
this.shapeToggled = true;
|
|
@@ -944,7 +951,7 @@ var Legend = /** @class */ (function () {
|
|
|
944
951
|
var selectionIndex = this.maps.selectedLegendElementId.indexOf(indexes['actualIndex']);
|
|
945
952
|
if (selectionIndex === -1) {
|
|
946
953
|
this.maps.selectedLegendElementId.push(indexes['actualIndex']);
|
|
947
|
-
this.maps.legendSelectionClass =
|
|
954
|
+
this.maps.legendSelectionClass = legendModule;
|
|
948
955
|
}
|
|
949
956
|
else {
|
|
950
957
|
if ((checkSelection <= 1) && (targetElement.getAttribute('class') === 'ShapeselectionMapStyle'
|
|
@@ -1010,13 +1017,13 @@ var Legend = /** @class */ (function () {
|
|
|
1010
1017
|
}
|
|
1011
1018
|
else if (j === length_1 - 1) {
|
|
1012
1019
|
this.removeShapeHighlightCollection();
|
|
1013
|
-
this.setColor(legendShape, !isNullOrUndefined(
|
|
1020
|
+
this.setColor(legendShape, !isNullOrUndefined(legendModule.fill) ? legendModule.fill : legendShape.getAttribute('fill'), legendModule.opacity.toString(), legendModule.border.color, legendModule.border.width.toString(), 'highlight');
|
|
1014
1021
|
}
|
|
1015
1022
|
}
|
|
1016
1023
|
}
|
|
1017
1024
|
else {
|
|
1018
1025
|
this.removeShapeHighlightCollection();
|
|
1019
|
-
this.setColor(legendShape, !isNullOrUndefined(
|
|
1026
|
+
this.setColor(legendShape, !isNullOrUndefined(legendModule.fill) ? legendModule.fill : legendShape.getAttribute('fill'), !isNullOrUndefined(legendModule.opacity) ? legendModule.opacity.toString() : '1', legendModule.border.color, legendModule.border.width.toString(), 'highlight');
|
|
1020
1027
|
}
|
|
1021
1028
|
}
|
|
1022
1029
|
else if (getValue === 'selection') {
|
|
@@ -1026,7 +1033,7 @@ var Legend = /** @class */ (function () {
|
|
|
1026
1033
|
var j = 0;
|
|
1027
1034
|
while (j < this.maps.legendSelectionCollection.length) {
|
|
1028
1035
|
if (shapeElement['LegendEle'] !== this.maps.legendSelectionCollection[j]['legendElement'] &&
|
|
1029
|
-
!
|
|
1036
|
+
!legendModule.enableMultiSelect) {
|
|
1030
1037
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1031
1038
|
var element = this.maps.legendSelectionCollection[j];
|
|
1032
1039
|
var selectedLegendIndex = this.maps.selectedLegendElementId.indexOf(indexes['actualIndex']);
|
|
@@ -1044,14 +1051,14 @@ var Legend = /** @class */ (function () {
|
|
|
1044
1051
|
if (selectionEle && (selectionEle['IsSelected'] && (targetElement.getAttribute('class') === 'ShapeselectionMapStyle'
|
|
1045
1052
|
|| targetElement.getAttribute('class') === 'LineselectionMapStyle'))) {
|
|
1046
1053
|
var multiSelection = 0;
|
|
1047
|
-
if (
|
|
1054
|
+
if (legendModule.enableMultiSelect) {
|
|
1048
1055
|
for (var i = 0; i < shapeElement['Elements'].length; i++) {
|
|
1049
1056
|
if (targetElement.getAttribute('class') === shapeElement['Elements'][i].getAttribute('class')) {
|
|
1050
1057
|
multiSelection++;
|
|
1051
1058
|
}
|
|
1052
1059
|
}
|
|
1053
1060
|
}
|
|
1054
|
-
if (multiSelection <= 1 && (!
|
|
1061
|
+
if (multiSelection <= 1 && (!legendModule.enableMultiSelect ?
|
|
1055
1062
|
this.maps.legendSelection : true)) {
|
|
1056
1063
|
this.maps.selectedLegendElementId.splice(this.maps.selectedLegendElementId.indexOf(indexes['actualIndex']), 1);
|
|
1057
1064
|
if (!isNullOrUndefined(shapeElement['LegendEle'])) {
|
|
@@ -1078,10 +1085,10 @@ var Legend = /** @class */ (function () {
|
|
|
1078
1085
|
if (addId) {
|
|
1079
1086
|
this.maps.selectedLegendElementId.push(indexes['actualIndex']);
|
|
1080
1087
|
}
|
|
1081
|
-
this.maps.legendSelectionClass =
|
|
1088
|
+
this.maps.legendSelectionClass = legendModule;
|
|
1082
1089
|
this.removeLegend(this.shapeHighlightCollection);
|
|
1083
1090
|
if (!isNullOrUndefined(legendShape)) {
|
|
1084
|
-
this.setColor(legendShape, !isNullOrUndefined(
|
|
1091
|
+
this.setColor(legendShape, !isNullOrUndefined(legendModule.fill) ? legendModule.fill : legendShape.getAttribute('fill'), !isNullOrUndefined(legendModule.opacity) ? legendModule.opacity.toString() : '1', legendModule.border.color, legendModule.border.width.toString(), 'selection');
|
|
1085
1092
|
var legendSelectionIndex = this.getIndexofLegend(this.maps.legendSelectionCollection, legendShape);
|
|
1086
1093
|
this.maps.legendSelectionCollection[legendSelectionIndex]['MapShapeCollection']['Elements'].push(targetElement);
|
|
1087
1094
|
}
|
|
@@ -1308,18 +1315,7 @@ var Legend = /** @class */ (function () {
|
|
|
1308
1315
|
var spacing = 10;
|
|
1309
1316
|
var trimTitle = textTrim((this.legendItemRect.width + (spacing * 2)), legendTitle, textStyle);
|
|
1310
1317
|
var textSize = measureText(trimTitle, textStyle);
|
|
1311
|
-
|
|
1312
|
-
for (var i = 0; i < this.legendRenderingCollections.length; i++) {
|
|
1313
|
-
if (this.legendRenderingCollections[i].textWidth !== this.legendRenderingCollections[0].textWidth) {
|
|
1314
|
-
sameTextWidth = false;
|
|
1315
|
-
break;
|
|
1316
|
-
}
|
|
1317
|
-
else {
|
|
1318
|
-
sameTextWidth = true;
|
|
1319
|
-
}
|
|
1320
|
-
}
|
|
1321
|
-
this.legendBorderRect = new Rect((map.theme === 'Fluent2HighContrast' && !sameTextWidth && (legend.position === 'Left' || legend.position === 'Right') && legend.mode === 'Interactive')
|
|
1322
|
-
? (this.legendItemRect.x - (spacing * 3)) : (this.legendItemRect.x - spacing), (this.legendItemRect.y - spacing - textSize.height), (this.legendItemRect.width) + (spacing * 2), (this.legendItemRect.height) + (spacing * 2) + textSize.height +
|
|
1318
|
+
this.legendBorderRect = new Rect((this.legendItemRect.x - spacing), (this.legendItemRect.y - spacing - textSize.height), (this.legendItemRect.width) + (spacing * 2), (this.legendItemRect.height) + (spacing * 2) + textSize.height +
|
|
1323
1319
|
(legend.mode === 'Interactive' ? 0 : (this.page !== 0) ? spacing : 0));
|
|
1324
1320
|
var legendBorder = {
|
|
1325
1321
|
color: legend.border.color || this.maps.themeStyle.legendBorderColor, opacity: legend.border.opacity,
|
|
@@ -2252,6 +2248,12 @@ var Legend = /** @class */ (function () {
|
|
|
2252
2248
|
this.maps.off(Browser.touchMoveEvent, this.interactiveHandler);
|
|
2253
2249
|
this.maps.off(Browser.touchEndEvent, this.interactiveHandler);
|
|
2254
2250
|
this.maps.off(click, this.legendClick);
|
|
2251
|
+
var pagingElement = document.getElementById(this.maps.element.id + '_Legend_Paging_Group');
|
|
2252
|
+
if (pagingElement) {
|
|
2253
|
+
for (var i = 0; i < pagingElement.childElementCount; i++) {
|
|
2254
|
+
EventHandler.remove(pagingElement.childNodes[i], Browser.touchStartEvent, this.changeNextPage);
|
|
2255
|
+
}
|
|
2256
|
+
}
|
|
2255
2257
|
};
|
|
2256
2258
|
Legend.prototype.getLegendData = function (
|
|
2257
2259
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -6,7 +6,6 @@ import { LayerSettings, MarkerClusterData } from '../index';
|
|
|
6
6
|
export declare class Marker {
|
|
7
7
|
private maps;
|
|
8
8
|
private isMarkerExplode;
|
|
9
|
-
private trackElements;
|
|
10
9
|
private markerSVGObject;
|
|
11
10
|
initialMarkerCluster: number[][][];
|
|
12
11
|
zoomedMarkerCluster: number[][][];
|
|
@@ -77,6 +76,14 @@ export declare class Marker {
|
|
|
77
76
|
* @private
|
|
78
77
|
*/
|
|
79
78
|
markerClusterMouseMove(e: PointerEvent): void;
|
|
79
|
+
/**
|
|
80
|
+
* This method is used to return whether the clustering is enabled in any marker settings.
|
|
81
|
+
*
|
|
82
|
+
* @param {LayerSettings} layer - Specifies the layer settings
|
|
83
|
+
* @returns {boolean} - Specifies whether the clustering is enabled in any marker settings.
|
|
84
|
+
* @private
|
|
85
|
+
*/
|
|
86
|
+
allowInnerClusterSetting(layer: LayerSettings): boolean;
|
|
80
87
|
/**
|
|
81
88
|
* @private
|
|
82
89
|
* @returns {void}
|
|
@@ -9,7 +9,6 @@ import { getElementByID, mergeSeparateCluster, clusterSeparate, removeElement, g
|
|
|
9
9
|
var Marker = /** @class */ (function () {
|
|
10
10
|
function Marker(maps) {
|
|
11
11
|
this.maps = maps;
|
|
12
|
-
this.trackElements = [];
|
|
13
12
|
this.sameMarkerData = [];
|
|
14
13
|
this.initialMarkerCluster = [];
|
|
15
14
|
this.zoomedMarkerCluster = [];
|
|
@@ -27,23 +26,43 @@ var Marker = /** @class */ (function () {
|
|
|
27
26
|
var templateFn;
|
|
28
27
|
var markerCount = 0;
|
|
29
28
|
var nullCount = 0;
|
|
29
|
+
var isMarkerTemplateNewCreation = false;
|
|
30
30
|
var markerTemplateCount = 0;
|
|
31
31
|
maps.translateType = 'marker';
|
|
32
32
|
var currentLayer = maps.layersCollection[layerIndex];
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
var markerElement = layerElement.querySelectorAll('#' + maps.element.id + '_Markers_Group');
|
|
34
|
+
if (markerElement.length > 0) {
|
|
35
|
+
this.markerSVGObject = markerElement[0];
|
|
36
|
+
this.markerSVGObject.innerHTML = '';
|
|
37
|
+
isMarkerTemplateNewCreation = true;
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
this.markerSVGObject = maps.renderer.createGroup({
|
|
41
|
+
id: maps.element.id + '_Markers_Group',
|
|
42
|
+
class: 'GroupElement'
|
|
43
|
+
});
|
|
44
|
+
}
|
|
37
45
|
this.markerSVGObject.style.pointerEvents = 'auto';
|
|
38
|
-
var
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
46
|
+
var secondaryElement = getElementByID(maps.element.id + '_Secondary_Element');
|
|
47
|
+
var markerTemplateElement = secondaryElement.querySelectorAll('#' + maps.element.id + '_LayerIndex_' + layerIndex + '_Markers_Template_Group');
|
|
48
|
+
var markerTemplateEle;
|
|
49
|
+
if (markerTemplateElement && markerTemplateElement.length > 0 && markerTemplateElement[0].childElementCount > 0) {
|
|
50
|
+
markerTemplateEle = getElementByID(maps.element.id + '_LayerIndex_' + layerIndex + '_Markers_Template_Group');
|
|
51
|
+
markerTemplateEle.innerHTML = '';
|
|
52
|
+
isMarkerTemplateNewCreation = true;
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
markerTemplateEle = createElement('div', {
|
|
56
|
+
id: maps.element.id + '_LayerIndex_' + layerIndex + '_Markers_Template_Group',
|
|
57
|
+
className: maps.element.id + '_template'
|
|
58
|
+
});
|
|
59
|
+
markerTemplateEle.style.cssText = 'overflow: hidden; position: absolute;pointer-events: none;' +
|
|
60
|
+
'top:' + maps.mapAreaRect.y + 'px;' +
|
|
61
|
+
'left:' + maps.mapAreaRect.x + 'px;' +
|
|
62
|
+
'height:' + maps.mapAreaRect.height + 'px;' +
|
|
63
|
+
'width:' + maps.mapAreaRect.width + 'px;';
|
|
64
|
+
}
|
|
65
|
+
var allowInnerClusterSetting = this.allowInnerClusterSetting(currentLayer);
|
|
47
66
|
var allowAnimation = (currentLayer.animationDuration !== 0 || animationMode === 'Enable') || isNullOrUndefined(maps.zoomModule);
|
|
48
67
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
49
68
|
var translatePoint;
|
|
@@ -55,13 +74,20 @@ var Marker = /** @class */ (function () {
|
|
|
55
74
|
Array.prototype.forEach.call(currentLayer.markerSettings, function (markerSettings, markerIndex) {
|
|
56
75
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
57
76
|
var markerData = markerSettings.dataSource;
|
|
77
|
+
markerCount = 0;
|
|
58
78
|
if (!isNullOrUndefined(markerSettings.dataSource)) {
|
|
59
79
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
60
80
|
Array.prototype.forEach.call(markerData, function (data, dataIndex) {
|
|
61
81
|
maps.markerNullCount = markerIndex > 0 && dataIndex === 0 ? 0 : maps.markerNullCount;
|
|
62
82
|
var eventArgs = {
|
|
63
|
-
cancel: false, name: markerRendering, fill: markerSettings.fill,
|
|
64
|
-
|
|
83
|
+
cancel: false, name: markerRendering, fill: markerSettings.fill,
|
|
84
|
+
height: (!isNullOrUndefined(markerSettings.heightValuePath) &&
|
|
85
|
+
!isNullOrUndefined(data[markerSettings.heightValuePath]) ?
|
|
86
|
+
data[markerSettings.heightValuePath] : markerSettings.height),
|
|
87
|
+
width: (!isNullOrUndefined(markerSettings.widthValuePath) &&
|
|
88
|
+
!isNullOrUndefined(data[markerSettings.widthValuePath]) ?
|
|
89
|
+
data[markerSettings.widthValuePath] : markerSettings.width),
|
|
90
|
+
imageUrl: markerSettings.imageUrl, shape: markerSettings.shape,
|
|
65
91
|
template: markerSettings.template, data: data, maps: maps, marker: markerSettings,
|
|
66
92
|
border: markerSettings.border, colorValuePath: markerSettings.colorValuePath,
|
|
67
93
|
shapeValuePath: markerSettings.shapeValuePath, imageUrlValuePath: markerSettings.imageUrlValuePath
|
|
@@ -87,12 +113,14 @@ var Marker = /** @class */ (function () {
|
|
|
87
113
|
var scale = type === 'AddMarker' ? maps.scale : translatePoint['scale'];
|
|
88
114
|
var transPoint = type === 'AddMarker' ? maps.translatePoint : translatePoint['location'];
|
|
89
115
|
if (eventArgs.template && (!isNaN(location_1.x) && !isNaN(location_1.y))) {
|
|
116
|
+
isMarkerTemplateNewCreation = false;
|
|
90
117
|
markerTemplateCount++;
|
|
91
118
|
markerTemplate(eventArgs, templateFn, markerID, data, markerIndex, markerTemplateEle, location_1, transPoint, scale, offset, maps);
|
|
92
119
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
93
120
|
maps.renderReactTemplates();
|
|
94
121
|
}
|
|
95
122
|
else if (!eventArgs.template && (!isNaN(location_1.x) && !isNaN(location_1.y))) {
|
|
123
|
+
isMarkerTemplateNewCreation = true;
|
|
96
124
|
markerCount++;
|
|
97
125
|
marker(eventArgs, markerSettings, markerData, dataIndex, location_1, transPoint, markerID, offset, scale, maps, _this.markerSVGObject);
|
|
98
126
|
}
|
|
@@ -104,32 +132,55 @@ var Marker = /** @class */ (function () {
|
|
|
104
132
|
maps.markerNullCount + 1 : maps.markerNullCount;
|
|
105
133
|
var markerDataLength = markerData.length - maps.markerNullCount;
|
|
106
134
|
var isMarkersClustered = false;
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
135
|
+
var markerGroup = (markerSettings.clusterSettings.allowClustering ||
|
|
136
|
+
(currentLayer.markerClusterSettings.allowClustering && currentLayer.markerSettings.length > 1))
|
|
137
|
+
? _this.markerSVGObject.querySelectorAll("[id*='LayerIndex_" + layerIndex + "_MarkerIndex_" + markerIndex + "']:not([id*='_Group'])")
|
|
138
|
+
: _this.markerSVGObject.childNodes;
|
|
139
|
+
var templateCount = _this.markerSVGObject.childNodes === markerGroup ? markerTemplateCount : 0;
|
|
140
|
+
if (markerGroup.length === (markerDataLength - templateCount - nullCount) && (type !== 'Template')) {
|
|
141
|
+
if (markerElement.length === 0) {
|
|
142
|
+
layerElement.appendChild(_this.markerSVGObject);
|
|
143
|
+
}
|
|
144
|
+
if (markerSettings.clusterSettings.allowClustering || !allowInnerClusterSetting &&
|
|
145
|
+
currentLayer.markerClusterSettings.allowClustering) {
|
|
146
|
+
if (markerElement.length === 0) {
|
|
147
|
+
maps.svgObject.appendChild(_this.markerSVGObject);
|
|
148
|
+
maps.element.appendChild(maps.svgObject);
|
|
149
|
+
}
|
|
112
150
|
if ((currentLayer.urlTemplate.indexOf('openstreetmap') !== -1 && isNullOrUndefined(currentLayer.shapeData))
|
|
113
151
|
&& maps.zoomSettings.enable) {
|
|
114
|
-
isMarkersClustered = clusterTemplate(currentLayer, _this.markerSVGObject, maps, layerIndex, _this.markerSVGObject, layerElement, true, false);
|
|
115
|
-
|
|
152
|
+
isMarkersClustered = clusterTemplate(currentLayer, _this.markerSVGObject, maps, layerIndex, markerIndex, _this.markerSVGObject, layerElement, true, false, null, allowInnerClusterSetting);
|
|
153
|
+
if (markerElement.length === 0) {
|
|
154
|
+
layerElement.appendChild(_this.markerSVGObject);
|
|
155
|
+
}
|
|
116
156
|
}
|
|
117
157
|
else {
|
|
118
|
-
isMarkersClustered = clusterTemplate(currentLayer, _this.markerSVGObject, maps, layerIndex, _this.markerSVGObject, layerElement, true, false);
|
|
158
|
+
isMarkersClustered = clusterTemplate(currentLayer, _this.markerSVGObject, maps, layerIndex, markerIndex, _this.markerSVGObject, layerElement, true, false, translatePoint, allowInnerClusterSetting);
|
|
119
159
|
}
|
|
120
160
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
121
161
|
maps.renderReactTemplates();
|
|
122
162
|
}
|
|
123
163
|
}
|
|
124
|
-
|
|
125
|
-
|
|
164
|
+
var markerTemplateGroup = (markerSettings.clusterSettings.allowClustering ||
|
|
165
|
+
(currentLayer.markerClusterSettings.allowClustering && currentLayer.markerSettings.length > 1))
|
|
166
|
+
? markerTemplateEle.querySelectorAll("[id*='LayerIndex_" + layerIndex + "_MarkerIndex_" + markerIndex + "']:not([id*='_Group'])")
|
|
167
|
+
: markerTemplateEle.childNodes;
|
|
168
|
+
if (markerTemplateGroup.length === (markerDataLength - markerCount - nullCount) && getElementByID(maps.element.id + '_Secondary_Element')) {
|
|
169
|
+
if (!isMarkerTemplateNewCreation) {
|
|
170
|
+
getElementByID(maps.element.id + '_Secondary_Element').appendChild(markerTemplateEle);
|
|
171
|
+
}
|
|
126
172
|
if (maps.checkInitialRender) {
|
|
127
|
-
if (
|
|
128
|
-
|
|
173
|
+
if ((markerSettings.clusterSettings.allowClustering || !allowInnerClusterSetting &&
|
|
174
|
+
currentLayer.markerClusterSettings.allowClustering) && !isMarkersClustered) {
|
|
175
|
+
clusterTemplate(currentLayer, markerTemplateEle, maps, layerIndex, markerIndex, _this.markerSVGObject, layerElement, false, false, translatePoint, allowInnerClusterSetting);
|
|
129
176
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
130
177
|
maps.renderReactTemplates();
|
|
131
178
|
}
|
|
132
179
|
}
|
|
180
|
+
if (currentLayer.markerClusterSettings.allowClustering && markerElement.length > 0) {
|
|
181
|
+
var layerCollectionEle = getElementByID(maps.element.id + '_Layer_Collections');
|
|
182
|
+
layerCollectionEle.appendChild(layerElement);
|
|
183
|
+
}
|
|
133
184
|
}
|
|
134
185
|
});
|
|
135
186
|
});
|
|
@@ -410,16 +461,18 @@ var Marker = /** @class */ (function () {
|
|
|
410
461
|
var markCollection = [];
|
|
411
462
|
var clusterCollection = [];
|
|
412
463
|
var marker;
|
|
413
|
-
this.maps.markerClusterExpand = layer.markerClusterSettings.allowClusterExpand;
|
|
414
464
|
if (target.indexOf('_MarkerIndex_') > -1) {
|
|
415
465
|
var markerIndex = parseInt(id[1].split('_MarkerIndex_')[1].split('_')[0], 10);
|
|
416
466
|
var dataIndex = parseInt(id[1].split('_dataIndex_')[1].split('_')[0], 10);
|
|
417
467
|
marker = layer.markerSettings[markerIndex];
|
|
468
|
+
var allowInnerClusterSetting = this.allowInnerClusterSetting(layer);
|
|
469
|
+
this.maps.markerClusterExpand = !allowInnerClusterSetting && layer.markerClusterSettings.allowClustering ?
|
|
470
|
+
layer.markerClusterSettings.allowClusterExpand : marker.clusterSettings.allowClusterExpand;
|
|
418
471
|
if (!isNaN(markerIndex)) {
|
|
419
472
|
data = marker.dataSource[dataIndex];
|
|
420
473
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
421
474
|
var collection_1 = [];
|
|
422
|
-
if (!marker.template && (target.indexOf('_cluster_') > -1) &&
|
|
475
|
+
if (!marker.template && (target.indexOf('_cluster_') > -1) && this.maps.markerClusterExpand) {
|
|
423
476
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
424
477
|
Array.prototype.forEach.call(marker.dataSource, function (location, index) {
|
|
425
478
|
if (location['latitude'] === data['latitude'] && location['longitude'] === data['longitude']) {
|
|
@@ -429,8 +482,10 @@ var Marker = /** @class */ (function () {
|
|
|
429
482
|
}
|
|
430
483
|
if ((target.indexOf('_cluster_') > -1)) {
|
|
431
484
|
var isClusterSame = false;
|
|
432
|
-
var
|
|
433
|
-
|
|
485
|
+
var cluster = !allowInnerClusterSetting && layer.markerClusterSettings.allowClustering ?
|
|
486
|
+
layer.markerClusterSettings : layer.markerSettings[markerIndex].clusterSettings;
|
|
487
|
+
var clusterElement = document.getElementById(target.indexOf('_datalabel_') > -1 ? cluster.shape === 'Balloon' ? target.split('_datalabel_')[0] + '_Group' : target.split('_datalabel_')[0] : cluster.shape === 'Balloon' ? target + '_Group' : target);
|
|
488
|
+
var indexes = cluster.shape === 'Balloon' ? clusterElement.children[0].textContent.split(',').map(Number) : clusterElement.textContent.split(',').map(Number);
|
|
434
489
|
collection_1 = [];
|
|
435
490
|
for (var _i = 0, indexes_1 = indexes; _i < indexes_1.length; _i++) {
|
|
436
491
|
var i = indexes_1[_i];
|
|
@@ -500,6 +555,23 @@ var Marker = /** @class */ (function () {
|
|
|
500
555
|
};
|
|
501
556
|
this.maps.trigger(markerClusterMouseMove, eventArgs);
|
|
502
557
|
};
|
|
558
|
+
/**
|
|
559
|
+
* This method is used to return whether the clustering is enabled in any marker settings.
|
|
560
|
+
*
|
|
561
|
+
* @param {LayerSettings} layer - Specifies the layer settings
|
|
562
|
+
* @returns {boolean} - Specifies whether the clustering is enabled in any marker settings.
|
|
563
|
+
* @private
|
|
564
|
+
*/
|
|
565
|
+
Marker.prototype.allowInnerClusterSetting = function (layer) {
|
|
566
|
+
var allowInnerClusterSetting = false;
|
|
567
|
+
for (var markerIndex = 0; markerIndex < layer.markerSettings.length; markerIndex++) {
|
|
568
|
+
if (layer.markerSettings[markerIndex].clusterSettings.allowClustering) {
|
|
569
|
+
allowInnerClusterSetting = true;
|
|
570
|
+
break;
|
|
571
|
+
}
|
|
572
|
+
}
|
|
573
|
+
return allowInnerClusterSetting;
|
|
574
|
+
};
|
|
503
575
|
/**
|
|
504
576
|
* @private
|
|
505
577
|
* @returns {void}
|
|
@@ -526,7 +598,6 @@ var Marker = /** @class */ (function () {
|
|
|
526
598
|
*/
|
|
527
599
|
Marker.prototype.destroy = function () {
|
|
528
600
|
this.maps = null;
|
|
529
|
-
this.trackElements = [];
|
|
530
601
|
this.markerSVGObject = null;
|
|
531
602
|
this.sameMarkerData = [];
|
|
532
603
|
this.initialMarkerCluster = [];
|
package/src/maps/maps-model.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, NotifyPropertyChanges, INotifyPropertyChanged, Property, Fetch } from '@syncfusion/ej2-base';import { EventHandler, Browser, EmitType, isNullOrUndefined, createElement, setValue, extend } from '@syncfusion/ej2-base';import { Event, remove, L10n, Collection, Internationalization, Complex } from '@syncfusion/ej2-base';import { ModuleDeclaration } from '@syncfusion/ej2-base';import { SvgRenderer } from '@syncfusion/ej2-svg-base';import { Size, createSvg, Point, removeElement, triggerShapeEvent, showTooltip, checkShapeDataFields, MapLocation, getMousePosition, calculateSize } from './utils/helper';import { getElement, removeClass, getTranslate, triggerItemSelectionEvent, mergeSeparateCluster, customizeStyle, querySelector } from './utils/helper';import { createStyle, getProcessedMarginValue } from './utils/helper';import { ZoomSettings, LegendSettings } from './model/base';import { LayerSettings, TitleSettings, Border, Margin, MapsAreaSettings, Annotation, CenterPosition } from './model/base';import { ZoomSettingsModel, LegendSettingsModel, LayerSettingsModel, BubbleSettingsModel, PolygonSettingsModel } from './model/base-model';import { MarkerSettingsModel, SelectionSettingsModel, InitialMarkerSelectionSettingsModel } from './model/base-model';import { TitleSettingsModel, BorderModel, MarginModel, CenterPositionModel, InitialShapeSelectionSettingsModel } from './model/base-model';import { MapsAreaSettingsModel, AnnotationModel } from './model/base-model';import { Bubble } from './layers/bubble';import { Legend } from './layers/legend';import { Marker } from './layers/marker';import { Highlight } from './user-interaction/highlight';import { Selection } from './user-interaction/selection';import { MapsTooltip } from './user-interaction/tooltip';import { Zoom } from './user-interaction/zoom';import { load, click, onclick, rightClick, doubleClick, resize, shapeSelected, zoomIn } from './model/constants';import { ProjectionType, MapsTheme, PanDirection, TooltipGesture } from './utils/enum';import { getThemeStyle, Theme } from './model/theme';import { ILoadEventArgs, ILoadedEventArgs, IMinMaxLatitudeLongitude, IMouseEventArgs, IResizeEventArgs, ITooltipRenderEventArgs } from './model/interface';import { GeoPosition, ITooltipRenderCompleteEventArgs, ILegendRenderingEventArgs } from './model/interface';import { ILayerRenderingEventArgs, IShapeRenderingEventArgs, IMarkerRenderingEventArgs, IMarkerClickEventArgs } from './model/interface';import { IMarkerMoveEventArgs, ILabelRenderingEventArgs, IBubbleMoveEventArgs, IBubbleClickEventArgs } from './model/interface';import { IMarkerClusterClickEventArgs, IMarkerClusterMoveEventArgs, IMarkerClusterRenderingEventArgs } from './model/interface';import { ISelectionEventArgs, IShapeSelectedEventArgs, IMapPanEventArgs, IMapZoomEventArgs } from './model/interface';import { IBubbleRenderingEventArgs, IAnimationCompleteEventArgs, IPrintEventArgs, IThemeStyle } from './model/interface';import { LayerPanel } from './layers/layer-panel';import { GeoLocation, Rect, RectOption, measureText, getElementByID, MapAjax, processResult, getElementsByClassName } from '../maps/utils/helper';import { findPosition, textTrim, TextOption, renderTextElement, calculateZoomLevel, convertTileLatLongToPoint, convertGeoToPoint} from '../maps/utils/helper';import { Annotations } from '../maps/user-interaction/annotation';import { FontModel, DataLabel, MarkerSettings, IAnnotationRenderingEventArgs, IMarkerDragEventArgs, BingMap } from './index';import { NavigationLineSettingsModel, changeBorderWidth } from './index';import { NavigationLine } from './layers/navigation-selected-line';import { Polygon } from './layers/polygon';import { DataManager, Query } from '@syncfusion/ej2-data';import { ExportType } from '../maps/utils/enum';import { PdfPageOrientation } from '@syncfusion/ej2-pdf-export';import { Print } from './model/print';import { PdfExport } from './model/export-pdf';import { ImageExport } from './model/export-image';
|
|
1
|
+
import { Component, NotifyPropertyChanges, INotifyPropertyChanged, Property, Fetch } from '@syncfusion/ej2-base';import { EventHandler, Browser, EmitType, isNullOrUndefined, createElement, setValue, extend } from '@syncfusion/ej2-base';import { Event, remove, L10n, Collection, Internationalization, Complex } from '@syncfusion/ej2-base';import { ModuleDeclaration } from '@syncfusion/ej2-base';import { SvgRenderer } from '@syncfusion/ej2-svg-base';import { Size, createSvg, Point, removeElement, triggerShapeEvent, showTooltip, checkShapeDataFields, MapLocation, getMousePosition, calculateSize } from './utils/helper';import { getElement, removeClass, getTranslate, triggerItemSelectionEvent, mergeSeparateCluster, customizeStyle, querySelector } from './utils/helper';import { createStyle, getProcessedMarginValue } from './utils/helper';import { ZoomSettings, LegendSettings } from './model/base';import { LayerSettings, TitleSettings, Border, Margin, MapsAreaSettings, Annotation, CenterPosition } from './model/base';import { ZoomSettingsModel, LegendSettingsModel, LayerSettingsModel, BubbleSettingsModel, PolygonSettingsModel } from './model/base-model';import { MarkerSettingsModel, SelectionSettingsModel, InitialMarkerSelectionSettingsModel } from './model/base-model';import { TitleSettingsModel, BorderModel, MarginModel, CenterPositionModel, InitialShapeSelectionSettingsModel } from './model/base-model';import { MapsAreaSettingsModel, AnnotationModel } from './model/base-model';import { Bubble } from './layers/bubble';import { Legend } from './layers/legend';import { Marker } from './layers/marker';import { Highlight } from './user-interaction/highlight';import { Selection } from './user-interaction/selection';import { MapsTooltip } from './user-interaction/tooltip';import { Zoom } from './user-interaction/zoom';import { load, click, onclick, rightClick, doubleClick, resize, shapeSelected, zoomIn, mouseMove } from './model/constants';import { ProjectionType, MapsTheme, PanDirection, TooltipGesture } from './utils/enum';import { getThemeStyle, Theme } from './model/theme';import { ILoadEventArgs, ILoadedEventArgs, IMinMaxLatitudeLongitude, IMouseEventArgs, IMouseMoveEventArgs, IResizeEventArgs, ITooltipRenderEventArgs } from './model/interface';import { GeoPosition, ITooltipRenderCompleteEventArgs, ILegendRenderingEventArgs } from './model/interface';import { ILayerRenderingEventArgs, IShapeRenderingEventArgs, IMarkerRenderingEventArgs, IMarkerClickEventArgs } from './model/interface';import { IMarkerMoveEventArgs, ILabelRenderingEventArgs, IBubbleMoveEventArgs, IBubbleClickEventArgs } from './model/interface';import { IMarkerClusterClickEventArgs, IMarkerClusterMoveEventArgs, IMarkerClusterRenderingEventArgs } from './model/interface';import { ISelectionEventArgs, IShapeSelectedEventArgs, IMapPanEventArgs, IMapZoomEventArgs } from './model/interface';import { IBubbleRenderingEventArgs, IAnimationCompleteEventArgs, IPrintEventArgs, IThemeStyle } from './model/interface';import { LayerPanel } from './layers/layer-panel';import { GeoLocation, Rect, RectOption, measureText, getElementByID, MapAjax, processResult, getElementsByClassName } from '../maps/utils/helper';import { findPosition, textTrim, TextOption, renderTextElement, calculateZoomLevel, convertTileLatLongToPoint, convertGeoToPoint} from '../maps/utils/helper';import { Annotations } from '../maps/user-interaction/annotation';import { FontModel, DataLabel, MarkerSettings, IAnnotationRenderingEventArgs, IMarkerDragEventArgs, BingMap } from './index';import { NavigationLineSettingsModel, changeBorderWidth } from './index';import { NavigationLine } from './layers/navigation-selected-line';import { Polygon } from './layers/polygon';import { DataManager, Query } from '@syncfusion/ej2-data';import { ExportType } from '../maps/utils/enum';import { PdfPageOrientation } from '@syncfusion/ej2-pdf-export';import { Print } from './model/print';import { PdfExport } from './model/export-pdf';import { ImageExport } from './model/export-image';
|
|
2
2
|
import {ComponentModel} from '@syncfusion/ej2-base';
|
|
3
3
|
|
|
4
4
|
/**
|
|
@@ -329,6 +329,13 @@ export interface MapsModel extends ComponentModel{
|
|
|
329
329
|
*/
|
|
330
330
|
markerMouseMove?: EmitType<IMarkerMoveEventArgs>;
|
|
331
331
|
|
|
332
|
+
/**
|
|
333
|
+
* This event is triggered when the mouse pointer moves over the map.
|
|
334
|
+
*
|
|
335
|
+
* @event mouseMove
|
|
336
|
+
*/
|
|
337
|
+
mouseMove?: EmitType<IMouseMoveEventArgs>;
|
|
338
|
+
|
|
332
339
|
/**
|
|
333
340
|
* Triggers before the data-label gets rendered.
|
|
334
341
|
*
|