@syncfusion/ej2-maps 20.2.45 → 20.3.49
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/CHANGELOG.md +25 -2
- package/dist/ej2-maps.min.js +10 -0
- package/dist/ej2-maps.umd.min.js +2 -2
- package/dist/ej2-maps.umd.min.js.map +1 -1
- package/dist/es6/ej2-maps.es2015.js +329 -268
- package/dist/es6/ej2-maps.es2015.js.map +1 -1
- package/dist/es6/ej2-maps.es5.js +333 -273
- package/dist/es6/ej2-maps.es5.js.map +1 -1
- package/dist/global/ej2-maps.min.js +2 -2
- package/dist/global/ej2-maps.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +13 -13
- package/src/maps/layers/bing-map.d.ts +4 -0
- package/src/maps/layers/bing-map.js +7 -0
- package/src/maps/layers/bubble.d.ts +1 -2
- package/src/maps/layers/bubble.js +4 -5
- package/src/maps/layers/data-label.d.ts +1 -4
- package/src/maps/layers/data-label.js +17 -19
- package/src/maps/layers/layer-panel.d.ts +5 -0
- package/src/maps/layers/layer-panel.js +28 -5
- package/src/maps/layers/legend.d.ts +1 -2
- package/src/maps/layers/legend.js +30 -8
- package/src/maps/layers/marker.d.ts +2 -4
- package/src/maps/layers/marker.js +44 -44
- package/src/maps/layers/navigation-selected-line.d.ts +1 -2
- package/src/maps/layers/navigation-selected-line.js +7 -13
- package/src/maps/maps.js +19 -10
- package/src/maps/model/export-image.d.ts +2 -4
- package/src/maps/model/export-image.js +19 -27
- package/src/maps/model/export-pdf.d.ts +4 -6
- package/src/maps/model/export-pdf.js +22 -30
- package/src/maps/model/interface.d.ts +8 -0
- package/src/maps/model/print.d.ts +2 -5
- package/src/maps/model/print.js +15 -23
- package/src/maps/user-interaction/annotation.d.ts +1 -2
- package/src/maps/user-interaction/annotation.js +2 -3
- package/src/maps/user-interaction/highlight.d.ts +1 -2
- package/src/maps/user-interaction/highlight.js +3 -5
- package/src/maps/user-interaction/selection.d.ts +1 -2
- package/src/maps/user-interaction/selection.js +3 -5
- package/src/maps/user-interaction/tooltip.d.ts +1 -4
- package/src/maps/user-interaction/tooltip.js +7 -2
- package/src/maps/user-interaction/zoom.d.ts +2 -7
- package/src/maps/user-interaction/zoom.js +83 -66
- package/src/maps/utils/helper.js +25 -13
package/src/maps/utils/helper.js
CHANGED
|
@@ -1111,7 +1111,10 @@ export function clusterTemplate(currentLayer, markerTemplate, maps, layerIndex,
|
|
|
1111
1111
|
markerCluster.remove();
|
|
1112
1112
|
}
|
|
1113
1113
|
if (zoomCheck) {
|
|
1114
|
-
document.getElementById(maps.element.id + '_Layer_Collections')
|
|
1114
|
+
var layerGroupElement = document.getElementById(maps.element.id + '_Layer_Collections');
|
|
1115
|
+
if (!isNullOrUndefined(layerGroupElement)) {
|
|
1116
|
+
layerGroupElement.appendChild(layerElement);
|
|
1117
|
+
}
|
|
1115
1118
|
}
|
|
1116
1119
|
});
|
|
1117
1120
|
}
|
|
@@ -1128,15 +1131,16 @@ export function mergeSeparateCluster(sameMarkerData, maps, markerElement) {
|
|
|
1128
1131
|
var markerIndex = sameMarkerData[0].markerIndex;
|
|
1129
1132
|
var dataIndex = sameMarkerData[0].dataIndex;
|
|
1130
1133
|
var markerId = maps.element.id + '_LayerIndex_' + layerIndex + '_MarkerIndex_' + markerIndex;
|
|
1134
|
+
var marker = maps.layers[layerIndex].markerSettings[markerIndex];
|
|
1131
1135
|
var clusterId = markerId + '_dataIndex_' + dataIndex + '_cluster_' + clusterIndex;
|
|
1132
|
-
var clusterEle = getElement(clusterId);
|
|
1136
|
+
var clusterEle = maps.layers[layerIndex].markerClusterSettings.shape === 'Balloon' ? getElement(clusterId + '_Group') : getElement(clusterId);
|
|
1133
1137
|
var clusterEleLabel = getElement(clusterId + '_datalabel_' + clusterIndex);
|
|
1134
1138
|
clusterEle.setAttribute('visibility', 'visible');
|
|
1135
1139
|
clusterEleLabel.setAttribute('visibility', 'visible');
|
|
1136
1140
|
var markerEle;
|
|
1137
1141
|
var markerDataLength = sameMarkerData[0].data.length;
|
|
1138
1142
|
for (var i = 0; i < markerDataLength; i++) {
|
|
1139
|
-
markerEle = getElement(markerId + '_dataIndex_' + sameMarkerData[0].data[i]['index']);
|
|
1143
|
+
markerEle = marker.shape === 'Balloon' ? getElement(markerId + '_dataIndex_' + sameMarkerData[0].data[i]['index'] + '_Group') : getElement(markerId + '_dataIndex_' + sameMarkerData[0].data[i]['index']);
|
|
1140
1144
|
markerEle['style']['visibility'] = 'hidden';
|
|
1141
1145
|
}
|
|
1142
1146
|
removeElement(maps.element.id + '_LayerIndex_' + layerIndex + '_MarkerIndex_' + markerIndex + '_markerClusterConnectorLine');
|
|
@@ -1158,13 +1162,13 @@ export function clusterSeparate(sameMarkerData, maps, markerElement, isDom) {
|
|
|
1158
1162
|
var getElementFunction = isDom ? getElement : markerElement.querySelector.bind(markerElement);
|
|
1159
1163
|
var getQueryConnect = isDom ? '' : '#';
|
|
1160
1164
|
var markerId = maps.element.id + '_LayerIndex_' + layerIndex + '_MarkerIndex_' + markerIndex;
|
|
1165
|
+
var marker = maps.layers[layerIndex].markerSettings[markerIndex];
|
|
1161
1166
|
var clusterId = markerId + '_dataIndex_' + dataIndex + '_cluster_' + clusterIndex;
|
|
1162
|
-
var clusterEle = getElementFunction(getQueryConnect + '' + clusterId);
|
|
1167
|
+
var clusterEle = maps.layers[layerIndex].markerClusterSettings.shape === 'Balloon' ? getElementFunction(getQueryConnect + '' + clusterId + '_Group') : getElementFunction(getQueryConnect + '' + clusterId);
|
|
1163
1168
|
var clusterEleLabel = getElementFunction(getQueryConnect + '' + clusterId + '_datalabel_' + clusterIndex);
|
|
1164
1169
|
clusterEle.setAttribute('visibility', 'hidden');
|
|
1165
1170
|
clusterEleLabel.setAttribute('visibility', 'hidden');
|
|
1166
|
-
var
|
|
1167
|
-
var markerEle = getElementFunction(getQueryConnect + '' + markerId + '_dataIndex_' + dataIndex);
|
|
1171
|
+
var markerEle = marker.shape === 'Balloon' ? getElementFunction(getQueryConnect + '' + markerId + '_dataIndex_' + dataIndex + '_Group') : getElementFunction(getQueryConnect + '' + markerId + '_dataIndex_' + dataIndex);
|
|
1168
1172
|
var height = markerEle.parentElement.id.indexOf('Template_Group') > -1 ? markerEle.getBoundingClientRect().height : marker.height;
|
|
1169
1173
|
var width = markerEle.parentElement.id.indexOf('Template_Group') > -1 ? markerEle.getBoundingClientRect().width : marker.width;
|
|
1170
1174
|
var centerX = +clusterEle.getAttribute('transform').split('translate(')[1].trim().split(' ')[0];
|
|
@@ -1200,7 +1204,7 @@ export function clusterSeparate(sameMarkerData, maps, markerElement, isDom) {
|
|
|
1200
1204
|
var x1 = centerX + radius * Math.sin((Math.PI * 2 * newAngle) / 360);
|
|
1201
1205
|
var y1 = centerY + radius * Math.cos((Math.PI * 2 * newAngle) / 360);
|
|
1202
1206
|
path += start + 'L ' + (x1) + ' ' + y1 + ' ';
|
|
1203
|
-
markerEle = getElementFunction(getQueryConnect + '' + markerId + '_dataIndex_' + sameMarkerData[0].data[i]['index']);
|
|
1207
|
+
markerEle = marker.shape === 'Balloon' ? getElementFunction(getQueryConnect + '' + markerId + '_dataIndex_' + sameMarkerData[0].data[i]['index'] + '_Group') : getElementFunction(getQueryConnect + '' + markerId + '_dataIndex_' + sameMarkerData[0].data[i]['index']);
|
|
1204
1208
|
if (markerEle.parentElement.id.indexOf('Template_Group') > -1) {
|
|
1205
1209
|
markerEle['style']['transform'] = '';
|
|
1206
1210
|
markerEle['style']['left'] = maps.isTileMap ? x1 - (width / 2) + 'px' : (x1 - (width / 2) - 10) + 'px';
|
|
@@ -1221,7 +1225,12 @@ export function clusterSeparate(sameMarkerData, maps, markerElement, isDom) {
|
|
|
1221
1225
|
markerElement = isDom ? getElementFunction(maps.element.id + '_Markers_Group') : markerElement;
|
|
1222
1226
|
var groupEle = maps.renderer.createGroup({ id: maps.element.id + '_LayerIndex_' + layerIndex + '_MarkerIndex_' + markerIndex + '_markerClusterConnectorLine' });
|
|
1223
1227
|
groupEle.appendChild(maps.renderer.drawPath(options));
|
|
1224
|
-
|
|
1228
|
+
if (marker.shape === 'Balloon') {
|
|
1229
|
+
markerElement.insertBefore(groupEle, markerElement.querySelector('#' + markerId + '_dataIndex_0_Group'));
|
|
1230
|
+
}
|
|
1231
|
+
else {
|
|
1232
|
+
markerElement.insertBefore(groupEle, markerElement.querySelector('#' + markerId + '_dataIndex_0'));
|
|
1233
|
+
}
|
|
1225
1234
|
}
|
|
1226
1235
|
/**
|
|
1227
1236
|
*
|
|
@@ -1248,6 +1257,7 @@ export function marker(eventArgs, markerSettings, markerData, dataIndex, locatio
|
|
|
1248
1257
|
dashArray: markerSettings.dashArray, borderOpacity: isNullOrUndefined(eventArgs.border.opacity) ? markerSettings.opacity :
|
|
1249
1258
|
eventArgs.border.opacity
|
|
1250
1259
|
};
|
|
1260
|
+
removeElement(markerID);
|
|
1251
1261
|
var ele = drawSymbols(eventArgs.shape, eventArgs.imageUrl, { x: 0, y: 0 }, markerID, shapeCustom, markerCollection, maps);
|
|
1252
1262
|
var x = (maps.isTileMap ? location.x : (location.x + transPoint.x) * scale) + offset.x;
|
|
1253
1263
|
var y = (maps.isTileMap ? location.y : (location.y + transPoint.y) * scale) + offset.y;
|
|
@@ -1625,7 +1635,7 @@ export function drawBalloon(maps, options, size, location, type, element) {
|
|
|
1625
1635
|
var y = size.height / 30;
|
|
1626
1636
|
balloon.setAttribute('transform', 'translate(' + location.x + ', ' + location.y + ') scale(' + x + ', ' + y + ')');
|
|
1627
1637
|
if (type === 'Marker') {
|
|
1628
|
-
var g = maps.renderer.createGroup({ id: options.id });
|
|
1638
|
+
var g = maps.renderer.createGroup({ id: options.id + '_Group' });
|
|
1629
1639
|
appendShape(balloon, g);
|
|
1630
1640
|
pathElement = appendShape(g, element);
|
|
1631
1641
|
}
|
|
@@ -1699,7 +1709,7 @@ export function checkShapeDataFields(dataSource, properties, dataPath, propertyP
|
|
|
1699
1709
|
dataSource[i][dataPath]);
|
|
1700
1710
|
var shapePath = checkPropertyPath(shapeDataPath, propertyPath, properties);
|
|
1701
1711
|
var shapeDataPathValue = !isNullOrUndefined(shapeDataPath) && isNaN(properties[shapePath])
|
|
1702
|
-
? shapeDataPath.toLowerCase() : shapeDataPath;
|
|
1712
|
+
? (typeof shapeDataPath === 'string' ? shapeDataPath.toLowerCase() : shapeDataPath) : shapeDataPath;
|
|
1703
1713
|
var propertiesShapePathValue = !isNullOrUndefined(properties[shapePath]) && isNaN(properties[shapePath])
|
|
1704
1714
|
? properties[shapePath].toLowerCase() : properties[shapePath];
|
|
1705
1715
|
if (shapeDataPathValue === propertiesShapePathValue) {
|
|
@@ -1724,7 +1734,8 @@ export function checkPropertyPath(shapeData, shapePropertyPath, shape) {
|
|
|
1724
1734
|
var properties = (Object.prototype.toString.call(shapePropertyPath) === '[object Array]' ?
|
|
1725
1735
|
shapePropertyPath : [shapePropertyPath]);
|
|
1726
1736
|
for (var i = 0; i < properties.length; i++) {
|
|
1727
|
-
var shapeDataValue = !isNullOrUndefined(shapeData)
|
|
1737
|
+
var shapeDataValue = !isNullOrUndefined(shapeData) && typeof shapeData === 'string' ?
|
|
1738
|
+
shapeData.toLowerCase() : shapeData;
|
|
1728
1739
|
var shapePropertiesValue = !isNullOrUndefined(shape[properties[i]])
|
|
1729
1740
|
&& isNaN(shape[properties[i]])
|
|
1730
1741
|
? shape[properties[i]].toLowerCase() : shape[properties[i]];
|
|
@@ -2049,6 +2060,7 @@ export function getTranslate(mapObject, layer, animate) {
|
|
|
2049
2060
|
mapHeight = size.height;
|
|
2050
2061
|
}
|
|
2051
2062
|
scaleFactor = parseFloat(Math.min(size.width / mapWidth, size.height / mapHeight).toFixed(2));
|
|
2063
|
+
scaleFactor = scaleFactor > 1.05 ? 1 : scaleFactor;
|
|
2052
2064
|
mapWidth *= scaleFactor;
|
|
2053
2065
|
mapHeight *= scaleFactor;
|
|
2054
2066
|
var widthDiff = min['x'] !== 0 && mapObject.translateType === 'layers' ? availSize.width - size.width : 0;
|
|
@@ -2099,6 +2111,7 @@ export function getTranslate(mapObject, layer, animate) {
|
|
|
2099
2111
|
else {
|
|
2100
2112
|
if (!isNullOrUndefined(mapObject.previousProjection) && (mapObject.mapScaleValue === 1 || mapObject.mapScaleValue <= 1.05) && !mapObject.zoomModule.isDragZoom) {
|
|
2101
2113
|
scaleFactor = parseFloat(Math.min(size.width / mapWidth, size.height / mapHeight).toFixed(2));
|
|
2114
|
+
scaleFactor = scaleFactor > 1.05 ? 1 : scaleFactor;
|
|
2102
2115
|
mapWidth *= scaleFactor;
|
|
2103
2116
|
x = size.x + ((-(min['x'])) + ((size.width / 2) - (mapWidth / 2)));
|
|
2104
2117
|
mapHeight *= scaleFactor;
|
|
@@ -3143,8 +3156,7 @@ export function animate(element, delay, duration, process, end) {
|
|
|
3143
3156
|
window.cancelAnimationFrame(clearAnimation);
|
|
3144
3157
|
end.call(_this, { element: element });
|
|
3145
3158
|
if (element.id.indexOf('Marker') > -1) {
|
|
3146
|
-
|
|
3147
|
-
var markerElement = getElementByID(element.id.split('_')[0] + '_Markers_Group');
|
|
3159
|
+
var markerElement = getElementByID(element.id.split('_Layer')[0] + '_Markers_Group');
|
|
3148
3160
|
markerElement.setAttribute('style', markerStyle);
|
|
3149
3161
|
}
|
|
3150
3162
|
}
|