@mapbox/mapbox-gl-style-spec 13.10.1 → 13.13.0
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 +32 -4
- package/dist/index.es.js +2244 -2406
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +2244 -2405
- package/dist/index.js.map +1 -1
- package/empty.js +29 -0
- package/error/parsing_error.js +5 -2
- package/error/validation_error.js +6 -3
- package/expression/compound_expression.js +5 -5
- package/expression/definitions/assertion.js +3 -4
- package/expression/definitions/at.js +3 -3
- package/expression/definitions/case.js +3 -6
- package/expression/definitions/coalesce.js +3 -4
- package/expression/definitions/coercion.js +3 -4
- package/expression/definitions/collator.js +5 -5
- package/expression/definitions/comparison.js +3 -3
- package/expression/definitions/format.js +3 -3
- package/expression/definitions/format_section_override.js +3 -4
- package/expression/definitions/image.js +6 -8
- package/expression/definitions/in.js +4 -4
- package/expression/definitions/index.js +4 -2
- package/expression/definitions/interpolate.js +3 -4
- package/expression/definitions/length.js +3 -3
- package/expression/definitions/let.js +3 -3
- package/expression/definitions/literal.js +2 -2
- package/expression/definitions/match.js +3 -6
- package/expression/definitions/number_format.js +3 -3
- package/expression/definitions/step.js +3 -4
- package/expression/definitions/var.js +2 -2
- package/expression/definitions/within.js +297 -0
- package/expression/evaluation_context.js +12 -1
- package/expression/expression.js +3 -5
- package/expression/index.js +24 -19
- package/expression/is_constant.js +5 -1
- package/expression/parsing_context.js +3 -0
- package/expression/scope.js +1 -1
- package/expression/types/resolved_image.js +2 -1
- package/feature_filter/convert.js +1 -1
- package/feature_filter/index.js +10 -5
- package/flow-typed/offscreen-canvas.js +9 -0
- package/flow-typed/vector-tile.js +2 -2
- package/function/convert.js +8 -2
- package/package.json +2 -1
- package/reference/v8.json +166 -168
- package/style-spec.js +3 -1
- package/types.js +7 -3
- package/validate/validate_expression.js +1 -1
- package/validate/validate_source.js +22 -2
- package/visit.js +2 -2
package/reference/v8.json
CHANGED
|
@@ -177,6 +177,10 @@
|
|
|
177
177
|
"type": "string",
|
|
178
178
|
"doc": "Contains an attribution to be displayed when the map is shown to a user."
|
|
179
179
|
},
|
|
180
|
+
"promoteId": {
|
|
181
|
+
"type": "promoteId",
|
|
182
|
+
"doc": "A property to use as a feature id (for feature state). Either a property name, or an object of the form `{<sourceLayer>: <propertyName>}`. If specified as a string for a vector tile source, the same property is used across all its source layers."
|
|
183
|
+
},
|
|
180
184
|
"*": {
|
|
181
185
|
"type": "*",
|
|
182
186
|
"doc": "Other keys to configure the data source."
|
|
@@ -383,9 +387,13 @@
|
|
|
383
387
|
"doc": "Whether to calculate line distance metrics. This is required for line layers that specify `line-gradient` values."
|
|
384
388
|
},
|
|
385
389
|
"generateId": {
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
390
|
+
"type": "boolean",
|
|
391
|
+
"default": false,
|
|
392
|
+
"doc": "Whether to generate ids for the geojson features. When enabled, the `feature.id` property will be auto assigned based on its index in the `features` array, over-writing any previous values."
|
|
393
|
+
},
|
|
394
|
+
"promoteId": {
|
|
395
|
+
"type": "promoteId",
|
|
396
|
+
"doc": "A property to use as a feature id (for feature state). Either a property name, or an object of the form `{<sourceLayer>: <propertyName>}`."
|
|
389
397
|
}
|
|
390
398
|
},
|
|
391
399
|
"source_video": {
|
|
@@ -636,7 +644,12 @@
|
|
|
636
644
|
"type": "number",
|
|
637
645
|
"doc": "Sorts features in ascending order based on this value. Features with a higher sort key will appear above features with a lower sort key.",
|
|
638
646
|
"sdk-support": {
|
|
647
|
+
"basic functionality": {
|
|
648
|
+
"js": "1.2.0"
|
|
649
|
+
},
|
|
650
|
+
"data-driven styling": {
|
|
639
651
|
"js": "1.2.0"
|
|
652
|
+
}
|
|
640
653
|
},
|
|
641
654
|
"expression": {
|
|
642
655
|
"interpolated": false,
|
|
@@ -675,7 +688,12 @@
|
|
|
675
688
|
"type": "number",
|
|
676
689
|
"doc": "Sorts features in ascending order based on this value. Features with a higher sort key will appear above features with a lower sort key.",
|
|
677
690
|
"sdk-support": {
|
|
691
|
+
"basic functionality": {
|
|
692
|
+
"js": "1.2.0"
|
|
693
|
+
},
|
|
694
|
+
"data-driven styling": {
|
|
678
695
|
"js": "1.2.0"
|
|
696
|
+
}
|
|
679
697
|
},
|
|
680
698
|
"expression": {
|
|
681
699
|
"interpolated": false,
|
|
@@ -779,8 +797,7 @@
|
|
|
779
797
|
"android": "2.0.1",
|
|
780
798
|
"ios": "2.0.0",
|
|
781
799
|
"macos": "0.1.0"
|
|
782
|
-
}
|
|
783
|
-
"data-driven styling": {}
|
|
800
|
+
}
|
|
784
801
|
},
|
|
785
802
|
"expression": {
|
|
786
803
|
"interpolated": false,
|
|
@@ -843,8 +860,7 @@
|
|
|
843
860
|
"android": "2.0.1",
|
|
844
861
|
"ios": "2.0.0",
|
|
845
862
|
"macos": "0.1.0"
|
|
846
|
-
}
|
|
847
|
-
"data-driven styling": {}
|
|
863
|
+
}
|
|
848
864
|
},
|
|
849
865
|
"expression": {
|
|
850
866
|
"interpolated": true,
|
|
@@ -869,8 +885,7 @@
|
|
|
869
885
|
"android": "2.0.1",
|
|
870
886
|
"ios": "2.0.0",
|
|
871
887
|
"macos": "0.1.0"
|
|
872
|
-
}
|
|
873
|
-
"data-driven styling": {}
|
|
888
|
+
}
|
|
874
889
|
},
|
|
875
890
|
"expression": {
|
|
876
891
|
"interpolated": true,
|
|
@@ -884,7 +899,12 @@
|
|
|
884
899
|
"type": "number",
|
|
885
900
|
"doc": "Sorts features in ascending order based on this value. Features with a higher sort key will appear above features with a lower sort key.",
|
|
886
901
|
"sdk-support": {
|
|
902
|
+
"basic functionality": {
|
|
887
903
|
"js": "1.2.0"
|
|
904
|
+
},
|
|
905
|
+
"data-driven styling": {
|
|
906
|
+
"js": "1.2.0"
|
|
907
|
+
}
|
|
888
908
|
},
|
|
889
909
|
"expression": {
|
|
890
910
|
"interpolated": false,
|
|
@@ -913,8 +933,7 @@
|
|
|
913
933
|
"android": "2.0.1",
|
|
914
934
|
"ios": "2.0.0",
|
|
915
935
|
"macos": "0.1.0"
|
|
916
|
-
}
|
|
917
|
-
"data-driven styling": {}
|
|
936
|
+
}
|
|
918
937
|
},
|
|
919
938
|
"property-type": "constant"
|
|
920
939
|
}
|
|
@@ -947,8 +966,7 @@
|
|
|
947
966
|
"android": "6.4.0",
|
|
948
967
|
"ios": "4.3.0",
|
|
949
968
|
"macos": "0.10.0"
|
|
950
|
-
}
|
|
951
|
-
"data-driven styling": {}
|
|
969
|
+
}
|
|
952
970
|
},
|
|
953
971
|
"expression": {
|
|
954
972
|
"interpolated": false,
|
|
@@ -975,8 +993,7 @@
|
|
|
975
993
|
"android": "2.0.1",
|
|
976
994
|
"ios": "2.0.0",
|
|
977
995
|
"macos": "0.1.0"
|
|
978
|
-
}
|
|
979
|
-
"data-driven styling": {}
|
|
996
|
+
}
|
|
980
997
|
},
|
|
981
998
|
"expression": {
|
|
982
999
|
"interpolated": true,
|
|
@@ -989,15 +1006,14 @@
|
|
|
989
1006
|
"symbol-avoid-edges": {
|
|
990
1007
|
"type": "boolean",
|
|
991
1008
|
"default": false,
|
|
992
|
-
"doc": "If true, the symbols will not cross tile edges to avoid mutual collisions. Recommended in layers that don't have enough padding in the vector tile to prevent collisions, or if it is a point symbol layer placed after a line symbol layer.",
|
|
1009
|
+
"doc": "If true, the symbols will not cross tile edges to avoid mutual collisions. Recommended in layers that don't have enough padding in the vector tile to prevent collisions, or if it is a point symbol layer placed after a line symbol layer. When using a client that supports global collision detection, like Mapbox GL JS version 0.42.0 or greater, enabling this property is not needed to prevent clipped labels at tile boundaries.",
|
|
993
1010
|
"sdk-support": {
|
|
994
1011
|
"basic functionality": {
|
|
995
1012
|
"js": "0.10.0",
|
|
996
1013
|
"android": "2.0.1",
|
|
997
1014
|
"ios": "2.0.0",
|
|
998
1015
|
"macos": "0.1.0"
|
|
999
|
-
}
|
|
1000
|
-
"data-driven styling": {}
|
|
1016
|
+
}
|
|
1001
1017
|
},
|
|
1002
1018
|
"expression": {
|
|
1003
1019
|
"interpolated": false,
|
|
@@ -1009,7 +1025,7 @@
|
|
|
1009
1025
|
},
|
|
1010
1026
|
"symbol-sort-key": {
|
|
1011
1027
|
"type": "number",
|
|
1012
|
-
"doc": "Sorts features in ascending order based on this value. Features with
|
|
1028
|
+
"doc": "Sorts features in ascending order based on this value. Features with lower sort keys are drawn and placed first. When `icon-allow-overlap` or `text-allow-overlap` is `false`, features with a lower sort key will have priority during placement. When `icon-allow-overlap` or `text-allow-overlap` is set to `true`, features with a higher sort key will overlap over features with a lower sort key.",
|
|
1013
1029
|
"sdk-support": {
|
|
1014
1030
|
"basic functionality": {
|
|
1015
1031
|
"js": "0.53.0",
|
|
@@ -1054,8 +1070,7 @@
|
|
|
1054
1070
|
"android": "6.6.0",
|
|
1055
1071
|
"ios": "4.5.0",
|
|
1056
1072
|
"macos": "0.12.0"
|
|
1057
|
-
}
|
|
1058
|
-
"data-driven styling": {}
|
|
1073
|
+
}
|
|
1059
1074
|
},
|
|
1060
1075
|
"expression": {
|
|
1061
1076
|
"interpolated": false,
|
|
@@ -1078,8 +1093,7 @@
|
|
|
1078
1093
|
"android": "2.0.1",
|
|
1079
1094
|
"ios": "2.0.0",
|
|
1080
1095
|
"macos": "0.1.0"
|
|
1081
|
-
}
|
|
1082
|
-
"data-driven styling": {}
|
|
1096
|
+
}
|
|
1083
1097
|
},
|
|
1084
1098
|
"expression": {
|
|
1085
1099
|
"interpolated": false,
|
|
@@ -1102,8 +1116,7 @@
|
|
|
1102
1116
|
"android": "2.0.1",
|
|
1103
1117
|
"ios": "2.0.0",
|
|
1104
1118
|
"macos": "0.1.0"
|
|
1105
|
-
}
|
|
1106
|
-
"data-driven styling": {}
|
|
1119
|
+
}
|
|
1107
1120
|
},
|
|
1108
1121
|
"expression": {
|
|
1109
1122
|
"interpolated": false,
|
|
@@ -1127,8 +1140,7 @@
|
|
|
1127
1140
|
"android": "2.0.1",
|
|
1128
1141
|
"ios": "2.0.0",
|
|
1129
1142
|
"macos": "0.1.0"
|
|
1130
|
-
}
|
|
1131
|
-
"data-driven styling": {}
|
|
1143
|
+
}
|
|
1132
1144
|
},
|
|
1133
1145
|
"expression": {
|
|
1134
1146
|
"interpolated": false,
|
|
@@ -1168,8 +1180,7 @@
|
|
|
1168
1180
|
"android": "4.2.0",
|
|
1169
1181
|
"ios": "3.4.0",
|
|
1170
1182
|
"macos": "0.3.0"
|
|
1171
|
-
}
|
|
1172
|
-
"data-driven styling": {}
|
|
1183
|
+
}
|
|
1173
1184
|
},
|
|
1174
1185
|
"expression": {
|
|
1175
1186
|
"interpolated": false,
|
|
@@ -1239,8 +1250,7 @@
|
|
|
1239
1250
|
"android": "4.2.0",
|
|
1240
1251
|
"ios": "3.4.0",
|
|
1241
1252
|
"macos": "0.2.1"
|
|
1242
|
-
}
|
|
1243
|
-
"data-driven styling": {}
|
|
1253
|
+
}
|
|
1244
1254
|
},
|
|
1245
1255
|
"expression": {
|
|
1246
1256
|
"interpolated": false,
|
|
@@ -1279,8 +1289,7 @@
|
|
|
1279
1289
|
"android": "4.2.0",
|
|
1280
1290
|
"ios": "3.4.0",
|
|
1281
1291
|
"macos": "0.2.1"
|
|
1282
|
-
}
|
|
1283
|
-
"data-driven styling": {}
|
|
1292
|
+
}
|
|
1284
1293
|
},
|
|
1285
1294
|
"expression": {
|
|
1286
1295
|
"interpolated": true,
|
|
@@ -1364,8 +1373,7 @@
|
|
|
1364
1373
|
"android": "2.0.1",
|
|
1365
1374
|
"ios": "2.0.0",
|
|
1366
1375
|
"macos": "0.1.0"
|
|
1367
|
-
}
|
|
1368
|
-
"data-driven styling": {}
|
|
1376
|
+
}
|
|
1369
1377
|
},
|
|
1370
1378
|
"expression": {
|
|
1371
1379
|
"interpolated": true,
|
|
@@ -1386,8 +1394,8 @@
|
|
|
1386
1394
|
},
|
|
1387
1395
|
{
|
|
1388
1396
|
"symbol-placement": [
|
|
1389
|
-
|
|
1390
|
-
|
|
1397
|
+
"line",
|
|
1398
|
+
"line-center"
|
|
1391
1399
|
]
|
|
1392
1400
|
}
|
|
1393
1401
|
],
|
|
@@ -1397,8 +1405,7 @@
|
|
|
1397
1405
|
"android": "2.0.1",
|
|
1398
1406
|
"ios": "2.0.0",
|
|
1399
1407
|
"macos": "0.1.0"
|
|
1400
|
-
}
|
|
1401
|
-
"data-driven styling": {}
|
|
1408
|
+
}
|
|
1402
1409
|
},
|
|
1403
1410
|
"expression": {
|
|
1404
1411
|
"interpolated": false,
|
|
@@ -1526,8 +1533,7 @@
|
|
|
1526
1533
|
"android": "5.2.0",
|
|
1527
1534
|
"ios": "3.7.0",
|
|
1528
1535
|
"macos": "0.6.0"
|
|
1529
|
-
}
|
|
1530
|
-
"data-driven styling": {}
|
|
1536
|
+
}
|
|
1531
1537
|
},
|
|
1532
1538
|
"expression": {
|
|
1533
1539
|
"interpolated": false,
|
|
@@ -1567,8 +1573,7 @@
|
|
|
1567
1573
|
"android": "4.2.0",
|
|
1568
1574
|
"ios": "3.4.0",
|
|
1569
1575
|
"macos": "0.3.0"
|
|
1570
|
-
}
|
|
1571
|
-
"data-driven styling": {}
|
|
1576
|
+
}
|
|
1572
1577
|
},
|
|
1573
1578
|
"expression": {
|
|
1574
1579
|
"interpolated": false,
|
|
@@ -1608,8 +1613,7 @@
|
|
|
1608
1613
|
"android": "4.2.0",
|
|
1609
1614
|
"ios": "3.4.0",
|
|
1610
1615
|
"macos": "0.3.0"
|
|
1611
|
-
}
|
|
1612
|
-
"data-driven styling": {}
|
|
1616
|
+
}
|
|
1613
1617
|
},
|
|
1614
1618
|
"expression": {
|
|
1615
1619
|
"interpolated": false,
|
|
@@ -1759,8 +1763,7 @@
|
|
|
1759
1763
|
"android": "2.0.1",
|
|
1760
1764
|
"ios": "2.0.0",
|
|
1761
1765
|
"macos": "0.1.0"
|
|
1762
|
-
}
|
|
1763
|
-
"data-driven styling": {}
|
|
1766
|
+
}
|
|
1764
1767
|
},
|
|
1765
1768
|
"expression": {
|
|
1766
1769
|
"interpolated": true,
|
|
@@ -1917,24 +1920,18 @@
|
|
|
1917
1920
|
"requires": [
|
|
1918
1921
|
"text-field",
|
|
1919
1922
|
{
|
|
1920
|
-
|
|
1921
|
-
|
|
1922
|
-
|
|
1923
|
+
"symbol-placement": [
|
|
1924
|
+
"point"
|
|
1925
|
+
]
|
|
1923
1926
|
}
|
|
1924
1927
|
],
|
|
1925
|
-
"doc": "To increase the chance of placing high-priority labels on the map, you can provide an array of `text-anchor` locations: the
|
|
1928
|
+
"doc": "To increase the chance of placing high-priority labels on the map, you can provide an array of `text-anchor` locations: the renderer will attempt to place the label at each location, in order, before moving onto the next label. Use `text-justify: auto` to choose justification based on anchor position. To apply an offset, use the `text-radial-offset` or the two-dimensional `text-offset`.",
|
|
1926
1929
|
"sdk-support": {
|
|
1927
1930
|
"basic functionality": {
|
|
1928
1931
|
"js": "0.54.0",
|
|
1929
1932
|
"android": "7.4.0",
|
|
1930
1933
|
"ios": "4.10.0",
|
|
1931
1934
|
"macos": "0.14.0"
|
|
1932
|
-
},
|
|
1933
|
-
"data-driven styling": {
|
|
1934
|
-
"js": "Not yet supported",
|
|
1935
|
-
"android": "Not yet supported",
|
|
1936
|
-
"ios": "Not yet supported",
|
|
1937
|
-
"macos": "Not yet supported"
|
|
1938
1935
|
}
|
|
1939
1936
|
},
|
|
1940
1937
|
"expression": {
|
|
@@ -2015,10 +2012,10 @@
|
|
|
2015
2012
|
"requires": [
|
|
2016
2013
|
"text-field",
|
|
2017
2014
|
{
|
|
2018
|
-
|
|
2019
|
-
|
|
2020
|
-
|
|
2021
|
-
|
|
2015
|
+
"symbol-placement": [
|
|
2016
|
+
"line",
|
|
2017
|
+
"line-center"
|
|
2018
|
+
]
|
|
2022
2019
|
}
|
|
2023
2020
|
],
|
|
2024
2021
|
"sdk-support": {
|
|
@@ -2027,8 +2024,7 @@
|
|
|
2027
2024
|
"android": "2.0.1",
|
|
2028
2025
|
"ios": "2.0.0",
|
|
2029
2026
|
"macos": "0.1.0"
|
|
2030
|
-
}
|
|
2031
|
-
"data-driven styling": {}
|
|
2027
|
+
}
|
|
2032
2028
|
},
|
|
2033
2029
|
"expression": {
|
|
2034
2030
|
"interpolated": true,
|
|
@@ -2054,22 +2050,16 @@
|
|
|
2054
2050
|
"text-field",
|
|
2055
2051
|
{
|
|
2056
2052
|
"symbol-placement": [
|
|
2057
|
-
|
|
2053
|
+
"point"
|
|
2058
2054
|
]
|
|
2059
2055
|
}
|
|
2060
2056
|
],
|
|
2061
2057
|
"sdk-support": {
|
|
2062
2058
|
"basic functionality": {
|
|
2063
|
-
"js": "
|
|
2064
|
-
"android": "
|
|
2065
|
-
"ios": "
|
|
2066
|
-
"macos": "
|
|
2067
|
-
},
|
|
2068
|
-
"data-driven styling": {
|
|
2069
|
-
"js": "Not yet supported",
|
|
2070
|
-
"android": "Not yet supported",
|
|
2071
|
-
"ios": "Not yet supported",
|
|
2072
|
-
"macos": "Not yet supported"
|
|
2059
|
+
"js": "1.3.0",
|
|
2060
|
+
"android": "8.3.0",
|
|
2061
|
+
"ios": "5.3.0",
|
|
2062
|
+
"macos": "0.14.0"
|
|
2073
2063
|
}
|
|
2074
2064
|
},
|
|
2075
2065
|
"expression": {
|
|
@@ -2127,8 +2117,7 @@
|
|
|
2127
2117
|
"android": "2.0.1",
|
|
2128
2118
|
"ios": "2.0.0",
|
|
2129
2119
|
"macos": "0.1.0"
|
|
2130
|
-
}
|
|
2131
|
-
"data-driven styling": {}
|
|
2120
|
+
}
|
|
2132
2121
|
},
|
|
2133
2122
|
"expression": {
|
|
2134
2123
|
"interpolated": true,
|
|
@@ -2148,10 +2137,10 @@
|
|
|
2148
2137
|
"text-rotation-alignment": "map"
|
|
2149
2138
|
},
|
|
2150
2139
|
{
|
|
2151
|
-
|
|
2152
|
-
|
|
2153
|
-
|
|
2154
|
-
|
|
2140
|
+
"symbol-placement": [
|
|
2141
|
+
"line",
|
|
2142
|
+
"line-center"
|
|
2143
|
+
]
|
|
2155
2144
|
}
|
|
2156
2145
|
],
|
|
2157
2146
|
"sdk-support": {
|
|
@@ -2160,8 +2149,7 @@
|
|
|
2160
2149
|
"android": "2.0.1",
|
|
2161
2150
|
"ios": "2.0.0",
|
|
2162
2151
|
"macos": "0.1.0"
|
|
2163
|
-
}
|
|
2164
|
-
"data-driven styling": {}
|
|
2152
|
+
}
|
|
2165
2153
|
},
|
|
2166
2154
|
"expression": {
|
|
2167
2155
|
"interpolated": false,
|
|
@@ -2225,7 +2213,7 @@
|
|
|
2225
2213
|
"requires": [
|
|
2226
2214
|
"text-field",
|
|
2227
2215
|
{
|
|
2228
|
-
|
|
2216
|
+
"!": "text-radial-offset"
|
|
2229
2217
|
}
|
|
2230
2218
|
],
|
|
2231
2219
|
"sdk-support": {
|
|
@@ -2264,8 +2252,7 @@
|
|
|
2264
2252
|
"android": "2.0.1",
|
|
2265
2253
|
"ios": "2.0.0",
|
|
2266
2254
|
"macos": "0.1.0"
|
|
2267
|
-
}
|
|
2268
|
-
"data-driven styling": {}
|
|
2255
|
+
}
|
|
2269
2256
|
},
|
|
2270
2257
|
"expression": {
|
|
2271
2258
|
"interpolated": false,
|
|
@@ -2288,8 +2275,7 @@
|
|
|
2288
2275
|
"android": "2.0.1",
|
|
2289
2276
|
"ios": "2.0.0",
|
|
2290
2277
|
"macos": "0.1.0"
|
|
2291
|
-
}
|
|
2292
|
-
"data-driven styling": {}
|
|
2278
|
+
}
|
|
2293
2279
|
},
|
|
2294
2280
|
"expression": {
|
|
2295
2281
|
"interpolated": false,
|
|
@@ -2313,8 +2299,7 @@
|
|
|
2313
2299
|
"android": "2.0.1",
|
|
2314
2300
|
"ios": "2.0.0",
|
|
2315
2301
|
"macos": "0.1.0"
|
|
2316
|
-
}
|
|
2317
|
-
"data-driven styling": {}
|
|
2302
|
+
}
|
|
2318
2303
|
},
|
|
2319
2304
|
"expression": {
|
|
2320
2305
|
"interpolated": false,
|
|
@@ -2342,8 +2327,7 @@
|
|
|
2342
2327
|
"android": "2.0.1",
|
|
2343
2328
|
"ios": "2.0.0",
|
|
2344
2329
|
"macos": "0.1.0"
|
|
2345
|
-
}
|
|
2346
|
-
"data-driven styling": {}
|
|
2330
|
+
}
|
|
2347
2331
|
},
|
|
2348
2332
|
"property-type": "constant"
|
|
2349
2333
|
}
|
|
@@ -2367,8 +2351,7 @@
|
|
|
2367
2351
|
"android": "2.0.1",
|
|
2368
2352
|
"ios": "2.0.0",
|
|
2369
2353
|
"macos": "0.1.0"
|
|
2370
|
-
}
|
|
2371
|
-
"data-driven styling": {}
|
|
2354
|
+
}
|
|
2372
2355
|
},
|
|
2373
2356
|
"property-type": "constant"
|
|
2374
2357
|
}
|
|
@@ -2392,8 +2375,7 @@
|
|
|
2392
2375
|
"android": "6.0.0",
|
|
2393
2376
|
"ios": "4.0.0",
|
|
2394
2377
|
"macos": "0.7.0"
|
|
2395
|
-
}
|
|
2396
|
-
"data-driven styling": {}
|
|
2378
|
+
}
|
|
2397
2379
|
},
|
|
2398
2380
|
"property-type": "constant"
|
|
2399
2381
|
}
|
|
@@ -2628,7 +2610,7 @@
|
|
|
2628
2610
|
}
|
|
2629
2611
|
},
|
|
2630
2612
|
"match": {
|
|
2631
|
-
"doc": "Selects the output whose label value matches the input value, or the fallback value if no match is found. The input can be any expression (e.g. `[\"get\", \"building_type\"]`). Each label must be either:\n * a single literal value; or\n * an array of literal values, whose values must be all strings or all numbers (e.g. `[100, 101]` or `[\"c\", \"b\"]`). The input matches if any of the values in the array matches, similar to the
|
|
2613
|
+
"doc": "Selects the output whose label value matches the input value, or the fallback value if no match is found. The input can be any expression (e.g. `[\"get\", \"building_type\"]`). Each label must be either:\n * a single literal value; or\n * an array of literal values, whose values must be all strings or all numbers (e.g. `[100, 101]` or `[\"c\", \"b\"]`). The input matches if any of the values in the array matches, similar to the `\"in\"` operator.\n\nEach label must be unique. If the input type does not match the type of the labels, the result will be the fallback value.",
|
|
2632
2614
|
"group": "Decision",
|
|
2633
2615
|
"sdk-support": {
|
|
2634
2616
|
"basic functionality": {
|
|
@@ -2802,7 +2784,7 @@
|
|
|
2802
2784
|
}
|
|
2803
2785
|
},
|
|
2804
2786
|
"format": {
|
|
2805
|
-
"doc": "Returns `formatted` text containing annotations for use in mixed-format `text-field` entries. If set, the `text-font`
|
|
2787
|
+
"doc": "Returns `formatted` text containing annotations for use in mixed-format `text-field` entries. For a `text-field` entries of a string type, following option object's properties are supported: If set, the `text-font` value overrides the font specified by the root layout properties. If set, the `font-scale` value specifies a scaling factor relative to the `text-size` specified in the root layout properties. If set, the `text-color` value overrides the color specified by the root paint properties for this layer.",
|
|
2806
2788
|
"group": "Types",
|
|
2807
2789
|
"sdk-support": {
|
|
2808
2790
|
"basic functionality": {
|
|
@@ -2810,15 +2792,38 @@
|
|
|
2810
2792
|
"android": "6.7.0",
|
|
2811
2793
|
"ios": "4.6.0",
|
|
2812
2794
|
"macos": "0.12.0"
|
|
2795
|
+
},
|
|
2796
|
+
"text-font": {
|
|
2797
|
+
"js": "0.48.0",
|
|
2798
|
+
"android": "6.7.0",
|
|
2799
|
+
"ios": "4.6.0",
|
|
2800
|
+
"macos": "0.12.0"
|
|
2801
|
+
},
|
|
2802
|
+
"font-scale": {
|
|
2803
|
+
"js": "0.48.0",
|
|
2804
|
+
"android": "6.7.0",
|
|
2805
|
+
"ios": "4.6.0",
|
|
2806
|
+
"macos": "0.12.0"
|
|
2807
|
+
},
|
|
2808
|
+
"text-color": {
|
|
2809
|
+
"js": "1.3.0",
|
|
2810
|
+
"android": "7.3.0",
|
|
2811
|
+
"ios": "4.10.0",
|
|
2812
|
+
"macos": "0.14.0"
|
|
2813
|
+
},
|
|
2814
|
+
"image": {
|
|
2815
|
+
"js": "1.6.0"
|
|
2813
2816
|
}
|
|
2814
2817
|
}
|
|
2815
2818
|
},
|
|
2816
2819
|
"image": {
|
|
2817
|
-
"doc": "Returns an `image` type for use in `icon-image` and
|
|
2820
|
+
"doc": "Returns an `image` type for use in `icon-image`, `*-pattern` entries and as a section in the `format` expression. If set, the `image` argument will check that the requested image exists in the style and will return either the resolved image name or `null`, depending on whether or not the image is currently in the style. This validation process is synchronous and requires the image to have been added to the style before requesting it in the `image` argument.",
|
|
2818
2821
|
"group": "Types",
|
|
2819
2822
|
"sdk-support": {
|
|
2820
2823
|
"basic functionality": {
|
|
2821
|
-
"js": "1.4.0"
|
|
2824
|
+
"js": "1.4.0",
|
|
2825
|
+
"android": "8.6.0",
|
|
2826
|
+
"ios": "5.6.0"
|
|
2822
2827
|
}
|
|
2823
2828
|
}
|
|
2824
2829
|
},
|
|
@@ -3449,9 +3454,24 @@
|
|
|
3449
3454
|
}
|
|
3450
3455
|
}
|
|
3451
3456
|
},
|
|
3457
|
+
"within": {
|
|
3458
|
+
"doc": "Returns `true` if the feature being evaluated is inside the pre-defined geometry boundary, `false` otherwise. The expression has one argument which must be a valid GeoJSON Polygon/Multi-Polygon object. The expression only evaluates on `Point` or `LineString` feature. For `Point` feature, The expression will return false if any point of the feature is on the boundary or outside the boundary. For `LineString` feature, the expression will return false if the line is fully outside the boundary, or the line is partially intersecting the boundary, which means either part of the line is outside of the boundary, or end point of the line lies on the boundary.",
|
|
3459
|
+
"group": "Decision",
|
|
3460
|
+
"sdk-support": {
|
|
3461
|
+
"basic functionality": {
|
|
3462
|
+
"js": "1.9.0"
|
|
3463
|
+
}
|
|
3464
|
+
}
|
|
3465
|
+
},
|
|
3452
3466
|
"is-supported-script": {
|
|
3453
3467
|
"doc": "Returns `true` if the input string is expected to render legibly. Returns `false` if the input string contains sections that cannot be rendered without potential loss of meaning (e.g. Indic scripts that require complex text shaping, or right-to-left scripts if the the `mapbox-gl-rtl-text` plugin is not in use in Mapbox GL JS).",
|
|
3454
|
-
"group": "String"
|
|
3468
|
+
"group": "String",
|
|
3469
|
+
"sdk-support": {
|
|
3470
|
+
"basic functionality": {
|
|
3471
|
+
"js": "0.45.0",
|
|
3472
|
+
"android": "6.6.0"
|
|
3473
|
+
}
|
|
3474
|
+
}
|
|
3455
3475
|
},
|
|
3456
3476
|
"upcase": {
|
|
3457
3477
|
"doc": "Returns the input string converted to uppercase. Follows the Unicode Default Case Conversion algorithm and the locale-insensitive case mappings in the Unicode Character Database.",
|
|
@@ -3633,8 +3653,7 @@
|
|
|
3633
3653
|
"android": "2.0.1",
|
|
3634
3654
|
"ios": "2.0.0",
|
|
3635
3655
|
"macos": "0.1.0"
|
|
3636
|
-
}
|
|
3637
|
-
"data-driven styling": {}
|
|
3656
|
+
}
|
|
3638
3657
|
},
|
|
3639
3658
|
"expression": {
|
|
3640
3659
|
"interpolated": false,
|
|
@@ -3762,8 +3781,7 @@
|
|
|
3762
3781
|
"android": "2.0.1",
|
|
3763
3782
|
"ios": "2.0.0",
|
|
3764
3783
|
"macos": "0.1.0"
|
|
3765
|
-
}
|
|
3766
|
-
"data-driven styling": {}
|
|
3784
|
+
}
|
|
3767
3785
|
},
|
|
3768
3786
|
"expression": {
|
|
3769
3787
|
"interpolated": true,
|
|
@@ -3794,8 +3812,7 @@
|
|
|
3794
3812
|
"android": "2.0.1",
|
|
3795
3813
|
"ios": "2.0.0",
|
|
3796
3814
|
"macos": "0.1.0"
|
|
3797
|
-
}
|
|
3798
|
-
"data-driven styling": {}
|
|
3815
|
+
}
|
|
3799
3816
|
},
|
|
3800
3817
|
"expression": {
|
|
3801
3818
|
"interpolated": false,
|
|
@@ -3908,8 +3925,7 @@
|
|
|
3908
3925
|
"android": "5.1.0",
|
|
3909
3926
|
"ios": "3.6.0",
|
|
3910
3927
|
"macos": "0.5.0"
|
|
3911
|
-
}
|
|
3912
|
-
"data-driven styling": {}
|
|
3928
|
+
}
|
|
3913
3929
|
},
|
|
3914
3930
|
"expression": {
|
|
3915
3931
|
"interpolated": true,
|
|
@@ -3940,8 +3956,7 @@
|
|
|
3940
3956
|
"android": "5.1.0",
|
|
3941
3957
|
"ios": "3.6.0",
|
|
3942
3958
|
"macos": "0.5.0"
|
|
3943
|
-
}
|
|
3944
|
-
"data-driven styling": {}
|
|
3959
|
+
}
|
|
3945
3960
|
},
|
|
3946
3961
|
"expression": {
|
|
3947
3962
|
"interpolated": false,
|
|
@@ -4051,13 +4066,15 @@
|
|
|
4051
4066
|
"sdk-support": {
|
|
4052
4067
|
"basic functionality": {
|
|
4053
4068
|
"js": "0.50.0",
|
|
4054
|
-
"ios"
|
|
4055
|
-
"macos"
|
|
4069
|
+
"ios": "4.7.0",
|
|
4070
|
+
"macos": "0.13.0"
|
|
4056
4071
|
}
|
|
4057
4072
|
},
|
|
4058
4073
|
"expression": {
|
|
4059
4074
|
"interpolated": false,
|
|
4060
|
-
"parameters": [
|
|
4075
|
+
"parameters": [
|
|
4076
|
+
"zoom"
|
|
4077
|
+
]
|
|
4061
4078
|
},
|
|
4062
4079
|
"property-type": "data-constant"
|
|
4063
4080
|
}
|
|
@@ -4145,8 +4162,7 @@
|
|
|
4145
4162
|
"android": "2.0.1",
|
|
4146
4163
|
"ios": "2.0.0",
|
|
4147
4164
|
"macos": "0.1.0"
|
|
4148
|
-
}
|
|
4149
|
-
"data-driven styling": {}
|
|
4165
|
+
}
|
|
4150
4166
|
},
|
|
4151
4167
|
"expression": {
|
|
4152
4168
|
"interpolated": true,
|
|
@@ -4177,8 +4193,7 @@
|
|
|
4177
4193
|
"android": "2.0.1",
|
|
4178
4194
|
"ios": "2.0.0",
|
|
4179
4195
|
"macos": "0.1.0"
|
|
4180
|
-
}
|
|
4181
|
-
"data-driven styling": {}
|
|
4196
|
+
}
|
|
4182
4197
|
},
|
|
4183
4198
|
"expression": {
|
|
4184
4199
|
"interpolated": false,
|
|
@@ -4541,8 +4556,7 @@
|
|
|
4541
4556
|
"android": "2.0.1",
|
|
4542
4557
|
"ios": "2.0.0",
|
|
4543
4558
|
"macos": "0.1.0"
|
|
4544
|
-
}
|
|
4545
|
-
"data-driven styling": {}
|
|
4559
|
+
}
|
|
4546
4560
|
},
|
|
4547
4561
|
"expression": {
|
|
4548
4562
|
"interpolated": true,
|
|
@@ -4573,8 +4587,7 @@
|
|
|
4573
4587
|
"android": "2.0.1",
|
|
4574
4588
|
"ios": "2.0.0",
|
|
4575
4589
|
"macos": "0.1.0"
|
|
4576
|
-
}
|
|
4577
|
-
"data-driven styling": {}
|
|
4590
|
+
}
|
|
4578
4591
|
},
|
|
4579
4592
|
"expression": {
|
|
4580
4593
|
"interpolated": false,
|
|
@@ -4602,8 +4615,7 @@
|
|
|
4602
4615
|
"android": "4.2.0",
|
|
4603
4616
|
"ios": "3.4.0",
|
|
4604
4617
|
"macos": "0.2.1"
|
|
4605
|
-
}
|
|
4606
|
-
"data-driven styling": {}
|
|
4618
|
+
}
|
|
4607
4619
|
},
|
|
4608
4620
|
"expression": {
|
|
4609
4621
|
"interpolated": false,
|
|
@@ -4631,8 +4643,7 @@
|
|
|
4631
4643
|
"android": "5.2.0",
|
|
4632
4644
|
"ios": "3.7.0",
|
|
4633
4645
|
"macos": "0.6.0"
|
|
4634
|
-
}
|
|
4635
|
-
"data-driven styling": {}
|
|
4646
|
+
}
|
|
4636
4647
|
},
|
|
4637
4648
|
"expression": {
|
|
4638
4649
|
"interpolated": false,
|
|
@@ -4808,8 +4819,7 @@
|
|
|
4808
4819
|
"android": "6.0.0",
|
|
4809
4820
|
"ios": "4.0.0",
|
|
4810
4821
|
"macos": "0.7.0"
|
|
4811
|
-
}
|
|
4812
|
-
"data-driven styling": {}
|
|
4822
|
+
}
|
|
4813
4823
|
},
|
|
4814
4824
|
"expression": {
|
|
4815
4825
|
"interpolated": true,
|
|
@@ -4874,8 +4884,7 @@
|
|
|
4874
4884
|
"android": "6.0.0",
|
|
4875
4885
|
"ios": "4.0.0",
|
|
4876
4886
|
"macos": "0.7.0"
|
|
4877
|
-
}
|
|
4878
|
-
"data-driven styling": {}
|
|
4887
|
+
}
|
|
4879
4888
|
},
|
|
4880
4889
|
"expression": {
|
|
4881
4890
|
"interpolated": true,
|
|
@@ -5073,8 +5082,7 @@
|
|
|
5073
5082
|
"android": "2.0.1",
|
|
5074
5083
|
"ios": "2.0.0",
|
|
5075
5084
|
"macos": "0.1.0"
|
|
5076
|
-
}
|
|
5077
|
-
"data-driven styling": {}
|
|
5085
|
+
}
|
|
5078
5086
|
},
|
|
5079
5087
|
"expression": {
|
|
5080
5088
|
"interpolated": true,
|
|
@@ -5106,8 +5114,7 @@
|
|
|
5106
5114
|
"android": "2.0.1",
|
|
5107
5115
|
"ios": "2.0.0",
|
|
5108
5116
|
"macos": "0.1.0"
|
|
5109
|
-
}
|
|
5110
|
-
"data-driven styling": {}
|
|
5117
|
+
}
|
|
5111
5118
|
},
|
|
5112
5119
|
"expression": {
|
|
5113
5120
|
"interpolated": false,
|
|
@@ -5304,8 +5311,7 @@
|
|
|
5304
5311
|
"android": "2.0.1",
|
|
5305
5312
|
"ios": "2.0.0",
|
|
5306
5313
|
"macos": "0.1.0"
|
|
5307
|
-
}
|
|
5308
|
-
"data-driven styling": {}
|
|
5314
|
+
}
|
|
5309
5315
|
},
|
|
5310
5316
|
"expression": {
|
|
5311
5317
|
"interpolated": true,
|
|
@@ -5337,8 +5343,7 @@
|
|
|
5337
5343
|
"android": "2.0.1",
|
|
5338
5344
|
"ios": "2.0.0",
|
|
5339
5345
|
"macos": "0.1.0"
|
|
5340
|
-
}
|
|
5341
|
-
"data-driven styling": {}
|
|
5346
|
+
}
|
|
5342
5347
|
},
|
|
5343
5348
|
"expression": {
|
|
5344
5349
|
"interpolated": false,
|
|
@@ -5363,8 +5368,7 @@
|
|
|
5363
5368
|
"android": "2.0.1",
|
|
5364
5369
|
"ios": "2.0.0",
|
|
5365
5370
|
"macos": "0.1.0"
|
|
5366
|
-
}
|
|
5367
|
-
"data-driven styling": {}
|
|
5371
|
+
}
|
|
5368
5372
|
},
|
|
5369
5373
|
"expression": {
|
|
5370
5374
|
"interpolated": true,
|
|
@@ -5387,8 +5391,7 @@
|
|
|
5387
5391
|
"android": "2.0.1",
|
|
5388
5392
|
"ios": "2.0.0",
|
|
5389
5393
|
"macos": "0.1.0"
|
|
5390
|
-
}
|
|
5391
|
-
"data-driven styling": {}
|
|
5394
|
+
}
|
|
5392
5395
|
},
|
|
5393
5396
|
"expression": {
|
|
5394
5397
|
"interpolated": true,
|
|
@@ -5411,8 +5414,7 @@
|
|
|
5411
5414
|
"android": "2.0.1",
|
|
5412
5415
|
"ios": "2.0.0",
|
|
5413
5416
|
"macos": "0.1.0"
|
|
5414
|
-
}
|
|
5415
|
-
"data-driven styling": {}
|
|
5417
|
+
}
|
|
5416
5418
|
},
|
|
5417
5419
|
"expression": {
|
|
5418
5420
|
"interpolated": true,
|
|
@@ -5435,8 +5437,7 @@
|
|
|
5435
5437
|
"android": "2.0.1",
|
|
5436
5438
|
"ios": "2.0.0",
|
|
5437
5439
|
"macos": "0.1.0"
|
|
5438
|
-
}
|
|
5439
|
-
"data-driven styling": {}
|
|
5440
|
+
}
|
|
5440
5441
|
},
|
|
5441
5442
|
"expression": {
|
|
5442
5443
|
"interpolated": true,
|
|
@@ -5459,8 +5460,7 @@
|
|
|
5459
5460
|
"android": "2.0.1",
|
|
5460
5461
|
"ios": "2.0.0",
|
|
5461
5462
|
"macos": "0.1.0"
|
|
5462
|
-
}
|
|
5463
|
-
"data-driven styling": {}
|
|
5463
|
+
}
|
|
5464
5464
|
},
|
|
5465
5465
|
"expression": {
|
|
5466
5466
|
"interpolated": true,
|
|
@@ -5483,8 +5483,7 @@
|
|
|
5483
5483
|
"android": "2.0.1",
|
|
5484
5484
|
"ios": "2.0.0",
|
|
5485
5485
|
"macos": "0.1.0"
|
|
5486
|
-
}
|
|
5487
|
-
"data-driven styling": {}
|
|
5486
|
+
}
|
|
5488
5487
|
},
|
|
5489
5488
|
"expression": {
|
|
5490
5489
|
"interpolated": true,
|
|
@@ -5512,8 +5511,7 @@
|
|
|
5512
5511
|
"android": "6.3.0",
|
|
5513
5512
|
"ios": "4.2.0",
|
|
5514
5513
|
"macos": "0.9.0"
|
|
5515
|
-
}
|
|
5516
|
-
"data-driven styling": {}
|
|
5514
|
+
}
|
|
5517
5515
|
},
|
|
5518
5516
|
"expression": {
|
|
5519
5517
|
"interpolated": false,
|
|
@@ -5536,8 +5534,7 @@
|
|
|
5536
5534
|
"android": "2.0.1",
|
|
5537
5535
|
"ios": "2.0.0",
|
|
5538
5536
|
"macos": "0.1.0"
|
|
5539
|
-
}
|
|
5540
|
-
"data-driven styling": {}
|
|
5537
|
+
}
|
|
5541
5538
|
},
|
|
5542
5539
|
"expression": {
|
|
5543
5540
|
"interpolated": true,
|
|
@@ -5562,8 +5559,7 @@
|
|
|
5562
5559
|
"android": "6.0.0",
|
|
5563
5560
|
"ios": "4.0.0",
|
|
5564
5561
|
"macos": "0.7.0"
|
|
5565
|
-
}
|
|
5566
|
-
"data-driven styling": {}
|
|
5562
|
+
}
|
|
5567
5563
|
},
|
|
5568
5564
|
"expression": {
|
|
5569
5565
|
"interpolated": true,
|
|
@@ -5577,10 +5573,10 @@
|
|
|
5577
5573
|
"type": "enum",
|
|
5578
5574
|
"values": {
|
|
5579
5575
|
"map": {
|
|
5580
|
-
|
|
5576
|
+
"doc": "The hillshade illumination is relative to the north direction."
|
|
5581
5577
|
},
|
|
5582
5578
|
"viewport": {
|
|
5583
|
-
|
|
5579
|
+
"doc": "The hillshade illumination is relative to the top of the viewport."
|
|
5584
5580
|
}
|
|
5585
5581
|
},
|
|
5586
5582
|
"default": "viewport",
|
|
@@ -5591,8 +5587,7 @@
|
|
|
5591
5587
|
"android": "6.0.0",
|
|
5592
5588
|
"ios": "4.0.0",
|
|
5593
5589
|
"macos": "0.7.0"
|
|
5594
|
-
}
|
|
5595
|
-
"data-driven styling": {}
|
|
5590
|
+
}
|
|
5596
5591
|
},
|
|
5597
5592
|
"expression": {
|
|
5598
5593
|
"interpolated": false,
|
|
@@ -5615,8 +5610,7 @@
|
|
|
5615
5610
|
"android": "6.0.0",
|
|
5616
5611
|
"ios": "4.0.0",
|
|
5617
5612
|
"macos": "0.7.0"
|
|
5618
|
-
}
|
|
5619
|
-
"data-driven styling": {}
|
|
5613
|
+
}
|
|
5620
5614
|
},
|
|
5621
5615
|
"expression": {
|
|
5622
5616
|
"interpolated": true,
|
|
@@ -5637,8 +5631,7 @@
|
|
|
5637
5631
|
"android": "6.0.0",
|
|
5638
5632
|
"ios": "4.0.0",
|
|
5639
5633
|
"macos": "0.7.0"
|
|
5640
|
-
}
|
|
5641
|
-
"data-driven styling": {}
|
|
5634
|
+
}
|
|
5642
5635
|
},
|
|
5643
5636
|
"expression": {
|
|
5644
5637
|
"interpolated": true,
|
|
@@ -5659,8 +5652,7 @@
|
|
|
5659
5652
|
"android": "6.0.0",
|
|
5660
5653
|
"ios": "4.0.0",
|
|
5661
5654
|
"macos": "0.7.0"
|
|
5662
|
-
}
|
|
5663
|
-
"data-driven styling": {}
|
|
5655
|
+
}
|
|
5664
5656
|
},
|
|
5665
5657
|
"expression": {
|
|
5666
5658
|
"interpolated": true,
|
|
@@ -5681,8 +5673,7 @@
|
|
|
5681
5673
|
"android": "6.0.0",
|
|
5682
5674
|
"ios": "4.0.0",
|
|
5683
5675
|
"macos": "0.7.0"
|
|
5684
|
-
}
|
|
5685
|
-
"data-driven styling": {}
|
|
5676
|
+
}
|
|
5686
5677
|
},
|
|
5687
5678
|
"expression": {
|
|
5688
5679
|
"interpolated": true,
|
|
@@ -5730,7 +5721,8 @@
|
|
|
5730
5721
|
"android": "2.0.1",
|
|
5731
5722
|
"ios": "2.0.0",
|
|
5732
5723
|
"macos": "0.1.0"
|
|
5733
|
-
}
|
|
5724
|
+
},
|
|
5725
|
+
"data-driven styling": {}
|
|
5734
5726
|
},
|
|
5735
5727
|
"expression": {
|
|
5736
5728
|
"interpolated": false,
|
|
@@ -5805,5 +5797,11 @@
|
|
|
5805
5797
|
"type": "property-type",
|
|
5806
5798
|
"doc": "Property is constant across all zoom levels and property values."
|
|
5807
5799
|
}
|
|
5800
|
+
},
|
|
5801
|
+
"promoteId": {
|
|
5802
|
+
"*": {
|
|
5803
|
+
"type": "string",
|
|
5804
|
+
"doc": "A name of a feature property to use as ID for feature state."
|
|
5805
|
+
}
|
|
5808
5806
|
}
|
|
5809
5807
|
}
|