Skip to content

Commit a63644b

Browse files
authored
to-hsla expression support (#2875)
* Add to-hsla expression * Add changelog entry * Update api * Update stylegen repo pin * Update CHANGELOG.md
1 parent fef824a commit a63644b

File tree

7 files changed

+75
-1
lines changed

7 files changed

+75
-1
lines changed

CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@
22

33
Mapbox welcomes participation and contributions from everyone.
44

5-
# main
5+
# 11.9.0-rc.1
66

7+
* Add `toHsla` expression.
78

89
# 11.8.1 December 03, 2024
910
## Bug fixes 🐞

extension-style-app/src/androidTest/java/com/mapbox/maps/testapp/style/expressions/ExpressionTest.kt

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1660,6 +1660,22 @@ class ExpressionTest : BaseStyleTest() {
16601660
assertEquals(listOf(0.0, 0.0, 255.0, 1.0), layer.iconTextFitPadding!!)
16611661
}
16621662

1663+
/**
1664+
* Returns a four-element array containing the input color's Hue, Saturation, Luminance and alpha components, in that order.
1665+
*/
1666+
@Test
1667+
@UiThreadTest
1668+
fun toHslaTest() {
1669+
val expression = toHsla {
1670+
literal("blue")
1671+
}
1672+
val layer = symbolLayer("id", "source") {
1673+
iconTextFitPadding(expression)
1674+
}
1675+
setupLayer(layer)
1676+
assertEquals(listOf(240.0, 100.0, 50.0, 1.0), layer.iconTextFitPadding!!)
1677+
}
1678+
16631679
/**
16641680
* Converts the input value to a string. If the input is `null`, the result is `""`. If the input is a boolean, the result is `"true"` or `"false"`. If the input is a number, it is converted to a string as specified by the ["NumberToString" algorithm](https://tc39.github.io/ecma262/#sec-tostring-applied-to-the-number-type) of the ECMAScript Language Specification. If the input is a color, it is converted to a string of the form `"rgba(r,g,b,a)"`, where `r`, `g`, and `b` are numerals ranging from 0 to 255, and `a` ranges from 0 to 1. Otherwise, the input is converted to a string in the format specified by the [`JSON.stringify`](https://tc39.github.io/ecma262/#sec-json.stringify) function of the ECMAScript Language Specification.
16651681
*/

extension-style/api/Release/metalava.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -317,6 +317,7 @@ package com.mapbox.maps.extension.style.expressions.dsl.generated {
317317
method public static com.mapbox.maps.extension.style.expressions.generated.Expression tan(double value);
318318
method public static com.mapbox.maps.extension.style.expressions.generated.Expression toBoolean(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
319319
method public static com.mapbox.maps.extension.style.expressions.generated.Expression toColor(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
320+
method public static com.mapbox.maps.extension.style.expressions.generated.Expression toHsla(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
320321
method public static com.mapbox.maps.extension.style.expressions.generated.Expression toNumber(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
321322
method public static com.mapbox.maps.extension.style.expressions.generated.Expression toRgba(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
322323
method public static com.mapbox.maps.extension.style.expressions.generated.Expression toString(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
@@ -481,6 +482,7 @@ package com.mapbox.maps.extension.style.expressions.generated {
481482
method public static com.mapbox.maps.extension.style.expressions.generated.Expression tan(double value);
482483
method public static com.mapbox.maps.extension.style.expressions.generated.Expression toBoolean(com.mapbox.maps.extension.style.expressions.generated.Expression... expressions);
483484
method public static com.mapbox.maps.extension.style.expressions.generated.Expression toColor(com.mapbox.maps.extension.style.expressions.generated.Expression... expressions);
485+
method public static com.mapbox.maps.extension.style.expressions.generated.Expression toHsla(com.mapbox.maps.extension.style.expressions.generated.Expression... expressions);
484486
method public static com.mapbox.maps.extension.style.expressions.generated.Expression toNumber(com.mapbox.maps.extension.style.expressions.generated.Expression... expressions);
485487
method public static com.mapbox.maps.extension.style.expressions.generated.Expression toRgba(com.mapbox.maps.extension.style.expressions.generated.Expression... expressions);
486488
method public static com.mapbox.maps.extension.style.expressions.generated.Expression toString(com.mapbox.maps.extension.style.expressions.generated.Expression... expressions);
@@ -728,6 +730,8 @@ package com.mapbox.maps.extension.style.expressions.generated {
728730
method public com.mapbox.maps.extension.style.expressions.generated.Expression toBoolean(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
729731
method public com.mapbox.maps.extension.style.expressions.generated.Expression toColor(com.mapbox.maps.extension.style.expressions.generated.Expression... expressions);
730732
method public com.mapbox.maps.extension.style.expressions.generated.Expression toColor(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
733+
method public com.mapbox.maps.extension.style.expressions.generated.Expression toHsla(com.mapbox.maps.extension.style.expressions.generated.Expression... expressions);
734+
method public com.mapbox.maps.extension.style.expressions.generated.Expression toHsla(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
731735
method public com.mapbox.maps.extension.style.expressions.generated.Expression toNumber(com.mapbox.maps.extension.style.expressions.generated.Expression... expressions);
732736
method public com.mapbox.maps.extension.style.expressions.generated.Expression toNumber(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
733737
method public com.mapbox.maps.extension.style.expressions.generated.Expression toRgba(com.mapbox.maps.extension.style.expressions.generated.Expression... expressions);
@@ -882,6 +886,7 @@ package com.mapbox.maps.extension.style.expressions.generated {
882886
method public final com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder tan(double value);
883887
method public final com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder toBoolean(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
884888
method public final com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder toColor(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
889+
method public final com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder toHsla(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
885890
method public final com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder toNumber(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
886891
method public final com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder toRgba(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);
887892
method public final com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder toString(kotlin.jvm.functions.Function1<? super com.mapbox.maps.extension.style.expressions.generated.Expression.ExpressionBuilder,kotlin.Unit> block);

extension-style/api/extension-style.api

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,7 @@ public final class com/mapbox/maps/extension/style/expressions/dsl/generated/Exp
286286
public static final fun tan (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
287287
public static final fun toBoolean (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
288288
public static final fun toColor (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
289+
public static final fun toHsla (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
289290
public static final fun toNumber (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
290291
public static final fun toRgba (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
291292
public static final fun toString (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
@@ -453,6 +454,7 @@ public final class com/mapbox/maps/extension/style/expressions/generated/Express
453454
public static final fun tan ([Lcom/mapbox/maps/extension/style/expressions/generated/Expression;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
454455
public static final fun toBoolean ([Lcom/mapbox/maps/extension/style/expressions/generated/Expression;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
455456
public static final fun toColor ([Lcom/mapbox/maps/extension/style/expressions/generated/Expression;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
457+
public static final fun toHsla ([Lcom/mapbox/maps/extension/style/expressions/generated/Expression;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
456458
public static final fun toNumber ([Lcom/mapbox/maps/extension/style/expressions/generated/Expression;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
457459
public static final fun toRgba ([Lcom/mapbox/maps/extension/style/expressions/generated/Expression;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
458460
public static final fun toString ([Lcom/mapbox/maps/extension/style/expressions/generated/Expression;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
@@ -704,6 +706,8 @@ public final class com/mapbox/maps/extension/style/expressions/generated/Express
704706
public final fun toBoolean ([Lcom/mapbox/maps/extension/style/expressions/generated/Expression;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
705707
public final fun toColor (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
706708
public final fun toColor ([Lcom/mapbox/maps/extension/style/expressions/generated/Expression;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
709+
public final fun toHsla (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
710+
public final fun toHsla ([Lcom/mapbox/maps/extension/style/expressions/generated/Expression;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
707711
public final fun toNumber (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
708712
public final fun toNumber ([Lcom/mapbox/maps/extension/style/expressions/generated/Expression;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
709713
public final fun toRgba (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression;
@@ -858,6 +862,7 @@ public class com/mapbox/maps/extension/style/expressions/generated/Expression$Ex
858862
public final fun tan (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression$ExpressionBuilder;
859863
public final fun toBoolean (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression$ExpressionBuilder;
860864
public final fun toColor (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression$ExpressionBuilder;
865+
public final fun toHsla (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression$ExpressionBuilder;
861866
public final fun toNumber (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression$ExpressionBuilder;
862867
public final fun toRgba (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression$ExpressionBuilder;
863868
public final fun toString (Lkotlin/jvm/functions/Function1;)Lcom/mapbox/maps/extension/style/expressions/generated/Expression$ExpressionBuilder;

extension-style/src/main/java/com/mapbox/maps/extension/style/expressions/dsl/generated/ExpressionDsl.kt

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

extension-style/src/main/java/com/mapbox/maps/extension/style/expressions/generated/Expression.kt

Lines changed: 27 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

extension-style/src/test/java/com/mapbox/maps/extension/style/expressions/generated/ExpressionTest.kt

Lines changed: 15 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)