Skip to content

Commit d2a1fba

Browse files
committed
fix clusterproperties operator
1 parent 7431b6d commit d2a1fba

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

src/ui-mapbox/index.android.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2514,7 +2514,11 @@ export class Mapbox extends MapboxCommon implements MapboxApi {
25142514
if (options.cluster.properties) {
25152515
for (const property of Object.keys(options.cluster.properties)) {
25162516
const propertyValues = options.cluster.properties[property];
2517-
geojsonOptions.withClusterProperty(property, ExpressionParser.parseJson(propertyValues[0]), ExpressionParser.parseJson(propertyValues[1]));
2517+
let operator = propertyValues[0];
2518+
if (!Array.isArray(operator)) {
2519+
operator = [operator];
2520+
}
2521+
geojsonOptions.withClusterProperty(property, ExpressionParser.parseJson(operator), ExpressionParser.parseJson(propertyValues[1]));
25182522
}
25192523
}
25202524
}

src/ui-mapbox/index.ios.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2780,13 +2780,16 @@ export class Mapbox extends MapboxCommon implements MapboxApi {
27802780
sourceOptions[MGLShapeSourceOptionMaximumZoomLevelForClustering] = options.cluster.maxZoom || 13;
27812781

27822782
if (options.cluster.properties) {
2783+
const clusterProperties = {};
27832784
for (const property of Object.keys(options.cluster.properties)) {
2784-
const propertyValues = options.cluster.properties[property];
2785-
const expressions = Utils.ios.collections.jsArrayToNSArray([ExpressionParser.parseJson(propertyValues[0]), ExpressionParser.parseJson(propertyValues[1])]);
2786-
const clusterProperties = {};
2785+
let [operator, operand] = options.cluster.properties[property];
2786+
if (!Array.isArray(operator)) {
2787+
operator = [operator];
2788+
}
2789+
const expressions = Utils.ios.collections.jsArrayToNSArray([ExpressionParser.parseJson(operator), ExpressionParser.parseJson(operand)]);
27872790
clusterProperties[property] = expressions;
2788-
sourceOptions[MGLShapeSourceOptionClusterProperties] = clusterProperties;
27892791
}
2792+
sourceOptions[MGLShapeSourceOptionClusterProperties] = clusterProperties;
27902793
}
27912794
}
27922795

0 commit comments

Comments
 (0)