@minmaps-dev/mm-web-sdk 1.0.0-rc.36 → 1.0.0-rc.38

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.
@@ -6,8 +6,8 @@
6
6
  "author": "Hospital Mapping Team",
7
7
  "version": "7.1.0"
8
8
  },
9
- "sprite": "http://localhost:4000/sprites/sprite",
10
- "glyphs": "https://demotiles.maplibre.org/font/{fontstack}/{range}.pbf",
9
+ "sprite": "https://martin-dev.purpleground-b373fa6d.eastus.azurecontainerapps.io/sprite/badged",
10
+ "glyphs": "https://martin-dev.purpleground-b373fa6d.eastus.azurecontainerapps.io/font/{fontstack}/{range}.pbf",
11
11
  "light": {
12
12
  "anchor": "viewport",
13
13
  "color": "#fff4e8",
@@ -17,7 +17,7 @@
17
17
  "sources": {
18
18
  "protomaps": {
19
19
  "type": "vector",
20
- "url": "pmtiles://https://jacsdevtiles-gjgbejbpdzbgcge8.z01.azurefd.net/pmtiles/base/usa.pmtiles",
20
+ "url": "https://martin-dev.purpleground-b373fa6d.eastus.azurecontainerapps.io/usa",
21
21
  "attribution": "© OpenStreetMap contributors"
22
22
  },
23
23
  "indoor-data": {
@@ -37,6 +37,10 @@
37
37
  "type": "geojson",
38
38
  "data": { "type": "FeatureCollection", "features": [] }
39
39
  },
40
+ "route-end-data": {
41
+ "type": "geojson",
42
+ "data": { "type": "FeatureCollection", "features": [] }
43
+ },
40
44
  "poi-highlight-data": {
41
45
  "type": "geojson",
42
46
  "data": { "type": "FeatureCollection", "features": [] }
@@ -466,7 +470,6 @@
466
470
  "text-halo-blur": 0.3
467
471
  }
468
472
  },
469
-
470
473
  {
471
474
  "id": "basemap-poi-marine",
472
475
  "type": "symbol",
@@ -483,9 +486,9 @@
483
486
  "icon-image": [
484
487
  "match",
485
488
  ["get", "kind"],
486
- "marina", "basemap-poi-anchor",
487
- ["ferry_terminal", "ferry", "ferry_stop"], "basemap-poi-directions_boat",
488
- "basemap-poi-anchor"
489
+ "marina", "material-anchor",
490
+ ["ferry_terminal", "ferry", "ferry_stop"], "material-directions_boat",
491
+ "material-anchor"
489
492
  ],
490
493
  "icon-size": ["interpolate", ["linear"], ["zoom"], 13, 0.5, 16, 0.68, 19, 0.82],
491
494
  "icon-allow-overlap": false,
@@ -528,20 +531,20 @@
528
531
  "place_of_worship", [
529
532
  "match",
530
533
  ["get", "kind_detail"],
531
- "christian", "basemap-poi-church",
532
- "jewish", "basemap-poi-synagogue",
533
- "muslim", "basemap-poi-mosque",
534
- "buddhist", "basemap-poi-temple_buddhist",
535
- "hindu", "basemap-poi-temple_hindu",
536
- "basemap-poi-church"
534
+ "christian", "material-church",
535
+ "jewish", "material-synagogue",
536
+ "muslim", "material-mosque",
537
+ "buddhist", "material-temple_buddhist",
538
+ "hindu", "material-temple_hindu",
539
+ "material-church"
537
540
  ],
538
- "fire_station", "basemap-poi-local_fire_department",
539
- "post_office", "basemap-poi-local_post_office",
540
- "library", "basemap-poi-local_library",
541
- "townhall", "basemap-poi-account_balance",
542
- "school", "basemap-poi-school",
543
- "hospital", "basemap-poi-local_hospital",
544
- "basemap-poi-account_balance"
541
+ "fire_station", "material-local_fire_department",
542
+ "post_office", "material-local_post_office",
543
+ "library", "material-local_library",
544
+ "townhall", "material-account_balance",
545
+ "school", "material-school",
546
+ "hospital", "material-local_hospital",
547
+ "material-account_balance"
545
548
  ],
546
549
  "icon-size": ["interpolate", ["linear"], ["zoom"], 13, 0.5, 16, 0.68, 19, 0.82],
547
550
  "icon-allow-overlap": false,
@@ -1419,167 +1422,6 @@
1419
1422
  }
1420
1423
  },
1421
1424
  {
1422
- "id": "route-halo",
1423
- "type": "line",
1424
- "source": "route-data",
1425
- "minzoom": 16.5,
1426
- "layout": {
1427
- "line-cap": "round",
1428
- "line-join": "round"
1429
- },
1430
- "paint": {
1431
- "line-color": "#ffffff",
1432
- "line-width": [
1433
- "interpolate", ["linear"], ["zoom"],
1434
- 16.5, 10,
1435
- 18.0, 15,
1436
- 20.0, 21
1437
- ],
1438
- "line-opacity": 0.95
1439
- }
1440
- },
1441
- {
1442
- "id": "route-line",
1443
- "type": "line",
1444
- "source": "route-data",
1445
- "minzoom": 16.5,
1446
- "layout": {
1447
- "line-cap": "round",
1448
- "line-join": "round"
1449
- },
1450
- "paint": {
1451
- "line-color": "#d32f2f",
1452
- "line-width": [
1453
- "interpolate", ["linear"], ["zoom"],
1454
- 16.5, 6,
1455
- 18.0, 9,
1456
- 20.0, 13
1457
- ],
1458
- "line-opacity": 1
1459
- }
1460
- },
1461
- {
1462
- "id": "route-arrows",
1463
- "type": "symbol",
1464
- "source": "route-data",
1465
- "minzoom": 16.5,
1466
- "layout": {
1467
- "symbol-placement": "line",
1468
- "symbol-spacing": [
1469
- "interpolate", ["linear"], ["zoom"],
1470
- 16.5, 150,
1471
- 18.0, 290,
1472
- 20.0, 480
1473
- ],
1474
- "icon-image": "route-arrow",
1475
- "icon-rotation-alignment": "map",
1476
- "icon-pitch-alignment": "map",
1477
- "icon-allow-overlap": true,
1478
- "icon-ignore-placement": true,
1479
- "icon-size": [
1480
- "interpolate", ["linear"], ["zoom"],
1481
- 16.5, 0.55,
1482
- 18.0, 0.75,
1483
- 20.0, 0.85
1484
- ]
1485
- },
1486
- "paint": {
1487
- "icon-opacity": 1
1488
- }
1489
- },
1490
- {
1491
- "id": "route-arrows-flow",
1492
- "type": "symbol",
1493
- "source": "route-arrows-flow",
1494
- "minzoom": 16.5,
1495
- "layout": {
1496
- "icon-image": "route-arrow",
1497
- "icon-rotate": ["get", "rotate"],
1498
- "icon-rotation-alignment": "map",
1499
- "icon-pitch-alignment": "map",
1500
- "icon-allow-overlap": true,
1501
- "icon-ignore-placement": true,
1502
- "icon-size": [
1503
- "interpolate", ["linear"], ["zoom"],
1504
- 16.5, 0.55,
1505
- 18.0, 0.75,
1506
- 20.0, 0.85
1507
- ]
1508
- },
1509
- "paint": {
1510
- "icon-opacity": 1
1511
- }
1512
- },
1513
- {
1514
- "id": "route-line-active-halo",
1515
- "type": "line",
1516
- "source": "route-active-step",
1517
- "minzoom": 16.5,
1518
- "layout": {
1519
- "line-cap": "round",
1520
- "line-join": "round"
1521
- },
1522
- "paint": {
1523
- "line-color": "#FFFFFF",
1524
- "line-width": [
1525
- "interpolate", ["linear"], ["zoom"],
1526
- 16.5, 8,
1527
- 18.0, 11,
1528
- 20.0, 14
1529
- ],
1530
- "line-opacity": 0.85
1531
- }
1532
- },
1533
- {
1534
- "id": "route-line-active",
1535
- "type": "line",
1536
- "source": "route-active-step",
1537
- "minzoom": 16.5,
1538
- "layout": {
1539
- "line-cap": "round",
1540
- "line-join": "round"
1541
- },
1542
- "paint": {
1543
- "line-color": "#fdb81e",
1544
- "line-width": [
1545
- "interpolate", ["linear"], ["zoom"],
1546
- 16.5, 5,
1547
- 18.0, 7,
1548
- 20.0, 9
1549
- ],
1550
- "line-opacity": 1
1551
- }
1552
- },
1553
- {
1554
- "id": "route-endpoint-source",
1555
- "type": "circle",
1556
- "source": "route-endpoints",
1557
- "minzoom": 16.5,
1558
- "filter": ["==", ["get", "role"], "source"],
1559
- "paint": {
1560
- "circle-radius": 6,
1561
- "circle-color": "#ffffff",
1562
- "circle-stroke-width": 3,
1563
- "circle-stroke-color": "#d32f2f",
1564
- "circle-opacity": 1
1565
- }
1566
- },
1567
- {
1568
- "id": "route-endpoint-destination",
1569
- "type": "circle",
1570
- "source": "route-endpoints",
1571
- "minzoom": 16.5,
1572
- "filter": ["==", ["get", "role"], "destination"],
1573
- "paint": {
1574
- "circle-radius": 7,
1575
- "circle-color": "#d32f2f",
1576
- "circle-stroke-width": 3,
1577
- "circle-stroke-color": "#ffffff",
1578
- "circle-opacity": 1
1579
- }
1580
- },
1581
-
1582
- {
1583
1425
  "id": "map-labels",
1584
1426
  "type": "symbol",
1585
1427
  "source": "map-labels-data",
@@ -1665,13 +1507,12 @@
1665
1507
  "icon-image": ["get", "iconId"],
1666
1508
  "icon-size": [
1667
1509
  "interpolate", ["exponential", 1.3], ["zoom"],
1668
- 14, 0.18,
1669
- 16, 0.3,
1670
- 18, 0.48,
1671
- 20, 0.5,
1672
- 22, 0.85
1510
+ 15, 0.3,
1511
+ 16, 0.5,
1512
+ 18, 0.6,
1513
+ 20, 0.75,
1514
+ 22, 0.9
1673
1515
  ],
1674
-
1675
1516
  "icon-optional": false,
1676
1517
  "icon-rotation-alignment": "viewport",
1677
1518
  "icon-pitch-alignment": "viewport",
@@ -1691,9 +1532,6 @@
1691
1532
  "text-rotation-alignment": "viewport"
1692
1533
  },
1693
1534
  "paint": {
1694
- "icon-halo-color": "#FFFFFF",
1695
- "icon-halo-width": 1.5,
1696
- "icon-halo-blur": 0.5,
1697
1535
  "text-color": "#242930",
1698
1536
  "text-halo-color": "#FFFFFF",
1699
1537
  "text-halo-width": 1.5,
@@ -1713,14 +1551,13 @@
1713
1551
  "icon-image": ["get", "iconId"],
1714
1552
  "icon-size": [
1715
1553
  "interpolate", ["exponential", 1.3], ["zoom"],
1716
- 14, 0.18,
1717
- 16, 0.3,
1718
- 18, 0.48,
1719
- 20, 0.5,
1720
- 22, 0.85
1554
+ 15, 0.3,
1555
+ 16, 0.5,
1556
+ 18, 0.6,
1557
+ 20, 0.75,
1558
+ 22, 0.9
1721
1559
  ],
1722
1560
  "icon-allow-overlap": true,
1723
-
1724
1561
  "icon-optional": false,
1725
1562
  "icon-rotation-alignment": "viewport",
1726
1563
  "icon-pitch-alignment": "viewport",
@@ -1740,9 +1577,6 @@
1740
1577
  "text-rotation-alignment": "viewport"
1741
1578
  },
1742
1579
  "paint": {
1743
- "icon-halo-color": "#FFFFFF",
1744
- "icon-halo-width": 1.5,
1745
- "icon-halo-blur": 0.5,
1746
1580
  "text-color": "#242930",
1747
1581
  "text-halo-color": "#FFFFFF",
1748
1582
  "text-halo-width": 1.5,
@@ -1762,11 +1596,11 @@
1762
1596
  "icon-image": ["get", "iconId"],
1763
1597
  "icon-size": [
1764
1598
  "interpolate", ["exponential", 1.3], ["zoom"],
1765
- 14, 0.18,
1766
- 16, 0.3,
1767
- 18, 0.48,
1768
- 20, 0.5,
1769
- 22, 0.85
1599
+ 15, 0.3,
1600
+ 16, 0.5,
1601
+ 18, 0.6,
1602
+ 20, 0.75,
1603
+ 22, 0.9
1770
1604
  ],
1771
1605
  "icon-allow-overlap": false,
1772
1606
  "icon-padding": [
@@ -1794,9 +1628,6 @@
1794
1628
  "text-rotation-alignment": "viewport"
1795
1629
  },
1796
1630
  "paint": {
1797
- "icon-halo-color": "#FFFFFF",
1798
- "icon-halo-width": 1.5,
1799
- "icon-halo-blur": 0.5,
1800
1631
  "text-color": "#242930",
1801
1632
  "text-halo-color": "#FFFFFF",
1802
1633
  "text-halo-width": 1.5,
@@ -1816,11 +1647,11 @@
1816
1647
  "icon-image": ["get", "iconId"],
1817
1648
  "icon-size": [
1818
1649
  "interpolate", ["exponential", 1.3], ["zoom"],
1819
- 14, 0.18,
1820
- 16, 0.3,
1821
- 18, 0.48,
1822
- 20, 0.5,
1823
- 22, 0.85
1650
+ 15, 0.3,
1651
+ 16, 0.5,
1652
+ 18, 0.6,
1653
+ 20, 0.75,
1654
+ 22, 0.9
1824
1655
  ],
1825
1656
  "icon-allow-overlap": false,
1826
1657
  "icon-padding": [
@@ -1848,9 +1679,6 @@
1848
1679
  "text-rotation-alignment": "viewport"
1849
1680
  },
1850
1681
  "paint": {
1851
- "icon-halo-color": "#FFFFFF",
1852
- "icon-halo-width": 1.5,
1853
- "icon-halo-blur": 0.5,
1854
1682
  "text-color": "#242930",
1855
1683
  "text-halo-color": "#FFFFFF",
1856
1684
  "text-halo-width": 1.5,
@@ -1870,11 +1698,11 @@
1870
1698
  "icon-image": ["get", "iconId"],
1871
1699
  "icon-size": [
1872
1700
  "interpolate", ["exponential", 1.3], ["zoom"],
1873
- 14, 0.18,
1874
- 16, 0.3,
1875
- 18, 0.48,
1876
- 20, 0.5,
1877
- 22, 0.85
1701
+ 15, 0.3,
1702
+ 16, 0.5,
1703
+ 18, 0.6,
1704
+ 20, 0.75,
1705
+ 22, 0.9
1878
1706
  ],
1879
1707
  "icon-allow-overlap": false,
1880
1708
  "icon-padding": [
@@ -1902,9 +1730,6 @@
1902
1730
  "text-rotation-alignment": "viewport"
1903
1731
  },
1904
1732
  "paint": {
1905
- "icon-halo-color": "#FFFFFF",
1906
- "icon-halo-width": 1.5,
1907
- "icon-halo-blur": 0.5,
1908
1733
  "text-color": "#242930",
1909
1734
  "text-halo-color": "#FFFFFF",
1910
1735
  "text-halo-width": 1.5,
@@ -1928,11 +1753,11 @@
1928
1753
  "icon-image": ["get", "iconId"],
1929
1754
  "icon-size": [
1930
1755
  "interpolate", ["exponential", 1.3], ["zoom"],
1931
- 14, 0.18,
1932
- 16, 0.3,
1933
- 18, 0.48,
1934
- 20, 0.5,
1935
- 22, 0.85
1756
+ 15, 0.3,
1757
+ 16, 0.5,
1758
+ 18, 0.6,
1759
+ 20, 0.75,
1760
+ 22, 0.9
1936
1761
  ],
1937
1762
  "icon-allow-overlap": false,
1938
1763
  "icon-padding": [
@@ -1960,9 +1785,6 @@
1960
1785
  "text-rotation-alignment": "viewport"
1961
1786
  },
1962
1787
  "paint": {
1963
- "icon-halo-color": "#FFFFFF",
1964
- "icon-halo-width": 1.5,
1965
- "icon-halo-blur": 0.5,
1966
1788
  "text-color": "#242930",
1967
1789
  "text-halo-color": "#FFFFFF",
1968
1790
  "text-halo-width": 1.5,
@@ -1981,11 +1803,11 @@
1981
1803
  "icon-image": "material-wc",
1982
1804
  "icon-size": [
1983
1805
  "interpolate", ["exponential", 1.3], ["zoom"],
1984
- 14, 0.18,
1985
- 16, 0.3,
1986
- 18, 0.48,
1987
- 20, 0.5,
1988
- 22, 0.85
1806
+ 15, 0.3,
1807
+ 16, 0.5,
1808
+ 18, 0.6,
1809
+ 20, 0.75,
1810
+ 22, 0.9
1989
1811
  ],
1990
1812
  "icon-allow-overlap": false,
1991
1813
  "icon-padding": [
@@ -1999,9 +1821,6 @@
1999
1821
  "icon-pitch-alignment": "viewport"
2000
1822
  },
2001
1823
  "paint": {
2002
- "icon-halo-color": "#FFFFFF",
2003
- "icon-halo-width": 1.5,
2004
- "icon-halo-blur": 0.5,
2005
1824
  "icon-translate": [0, -20],
2006
1825
  "icon-translate-anchor": "viewport"
2007
1826
  }
@@ -2036,12 +1855,68 @@
2036
1855
  "text-rotation-alignment": "viewport"
2037
1856
  },
2038
1857
  "paint": {
2039
- "text-color": "#0F1114",
2040
- "text-halo-color": "#FFFFFF",
1858
+ "text-color": "#0f1114",
1859
+ "text-halo-color": "#ffffff",
2041
1860
  "text-halo-width": 1.5,
2042
1861
  "text-halo-blur": 0.1
2043
1862
  }
2044
1863
  },
1864
+ {
1865
+ "id": "poi-destination-dots",
1866
+ "type": "symbol",
1867
+ "source": "poi-destination-cluster-data",
1868
+ "filter": ["!", ["has", "point_count"]],
1869
+ "minzoom": 16.5,
1870
+ "maxzoom": 18.25,
1871
+ "layout": {
1872
+ "icon-image": "destination-dot",
1873
+ "icon-size": [
1874
+ "interpolate", ["linear"], ["zoom"],
1875
+ 14, 0.1,
1876
+ 16, 0.8,
1877
+ 17.30, 0.8,
1878
+ 18, 0.5,
1879
+ 20, 0.8
1880
+ ],
1881
+ "icon-overlap": "cooperative",
1882
+ "icon-ignore-placement": false,
1883
+ "icon-padding": 0,
1884
+ "icon-rotation-alignment": "viewport",
1885
+ "icon-pitch-alignment": "viewport"
1886
+ }
1887
+ },
1888
+ {
1889
+ "id": "poi-destination-cluster-bubbles",
1890
+ "type": "symbol",
1891
+ "source": "poi-destination-cluster-data",
1892
+ "filter": ["has", "point_count"],
1893
+ "minzoom": 16.5,
1894
+ "maxzoom": 18.25,
1895
+ "layout": {
1896
+ "icon-image": "destination-cluster-dot",
1897
+ "icon-size": [
1898
+ "step", ["get", "point_count"],
1899
+ 1.3,
1900
+ 10, 1.5,
1901
+ 25, 1.7
1902
+ ],
1903
+ "icon-overlap": "cooperative",
1904
+ "icon-ignore-placement": false,
1905
+ "icon-padding": 0,
1906
+ "icon-rotation-alignment": "viewport",
1907
+ "icon-pitch-alignment": "viewport",
1908
+ "text-field": ["get", "point_count_abbreviated"],
1909
+ "text-size": 18,
1910
+ "text-font": ["Noto Sans Bold"],
1911
+ "text-overlap": "always",
1912
+ "text-ignore-placement": true,
1913
+ "text-rotation-alignment": "viewport",
1914
+ "text-pitch-alignment": "viewport"
1915
+ },
1916
+ "paint": {
1917
+ "text-color": "#ffffff"
1918
+ }
1919
+ },
2045
1920
  {
2046
1921
  "id": "poi-destination-labels",
2047
1922
  "type": "symbol",
@@ -2113,6 +1988,330 @@
2113
1988
  "icon-pitch-alignment": "viewport"
2114
1989
  }
2115
1990
  },
1991
+ {
1992
+ "id": "route-halo",
1993
+ "type": "line",
1994
+ "source": "route-data",
1995
+ "minzoom": 16.5,
1996
+ "layout": {
1997
+ "line-cap": "round",
1998
+ "line-join": "round"
1999
+ },
2000
+ "paint": {
2001
+ "line-color": "#ffffff",
2002
+ "line-width": [
2003
+ "interpolate", ["linear"], ["zoom"],
2004
+ 16.5, 10,
2005
+ 18.0, 15,
2006
+ 20.0, 21
2007
+ ],
2008
+ "line-opacity": 0.95
2009
+ }
2010
+ },
2011
+ {
2012
+ "id": "route-line",
2013
+ "type": "line",
2014
+ "source": "route-data",
2015
+ "minzoom": 16.5,
2016
+ "layout": {
2017
+ "line-cap": "round",
2018
+ "line-join": "round"
2019
+ },
2020
+ "paint": {
2021
+ "line-color": "#d32f2f",
2022
+ "line-width": [
2023
+ "interpolate", ["linear"], ["zoom"],
2024
+ 16.5, 6,
2025
+ 18.0, 9,
2026
+ 20.0, 13
2027
+ ],
2028
+ "line-opacity": 1
2029
+ }
2030
+ },
2031
+ {
2032
+ "id": "route-blocker",
2033
+ "type": "symbol",
2034
+ "source": "route-data",
2035
+ "minzoom": 16.5,
2036
+ "layout": {
2037
+ "symbol-placement": "line",
2038
+ "symbol-spacing": 6,
2039
+ "icon-image": "route-blocker",
2040
+ "icon-rotation-alignment": "viewport",
2041
+ "icon-pitch-alignment": "viewport",
2042
+ "icon-overlap": "always",
2043
+ "icon-ignore-placement": false,
2044
+ "icon-padding": 2,
2045
+ "icon-size": [
2046
+ "interpolate", ["linear"], ["zoom"],
2047
+ 16.5, 0.6,
2048
+ 18.0, 0.8,
2049
+ 20.0, 1.0
2050
+ ]
2051
+ }
2052
+ },
2053
+ {
2054
+ "id": "route-arrows",
2055
+ "type": "symbol",
2056
+ "source": "route-data",
2057
+ "minzoom": 16.5,
2058
+ "layout": {
2059
+ "symbol-placement": "line",
2060
+ "symbol-spacing": [
2061
+ "interpolate", ["linear"], ["zoom"],
2062
+ 16.5, 150,
2063
+ 18.0, 290,
2064
+ 20.0, 480
2065
+ ],
2066
+ "icon-image": "route-arrow",
2067
+ "icon-rotation-alignment": "map",
2068
+ "icon-pitch-alignment": "map",
2069
+ "icon-allow-overlap": true,
2070
+ "icon-ignore-placement": true,
2071
+ "icon-size": [
2072
+ "interpolate", ["linear"], ["zoom"],
2073
+ 16.5, 0.55,
2074
+ 18.0, 0.75,
2075
+ 20.0, 0.85
2076
+ ]
2077
+ },
2078
+ "paint": {
2079
+ "icon-opacity": 1
2080
+ }
2081
+ },
2082
+ {
2083
+ "id": "route-arrows-flow",
2084
+ "type": "symbol",
2085
+ "source": "route-arrows-flow",
2086
+ "minzoom": 16.5,
2087
+ "layout": {
2088
+ "icon-image": "route-arrow",
2089
+ "icon-rotate": ["get", "rotate"],
2090
+ "icon-rotation-alignment": "map",
2091
+ "icon-pitch-alignment": "map",
2092
+ "icon-allow-overlap": true,
2093
+ "icon-ignore-placement": true,
2094
+ "icon-size": [
2095
+ "interpolate", ["linear"], ["zoom"],
2096
+ 16.5, 0.55,
2097
+ 18.0, 0.75,
2098
+ 20.0, 0.85
2099
+ ]
2100
+ },
2101
+ "paint": {
2102
+ "icon-opacity": 1
2103
+ }
2104
+ },
2105
+ {
2106
+ "id": "route-line-active-halo",
2107
+ "type": "line",
2108
+ "source": "route-active-step",
2109
+ "minzoom": 16.5,
2110
+ "layout": {
2111
+ "line-cap": "round",
2112
+ "line-join": "round"
2113
+ },
2114
+ "paint": {
2115
+ "line-color": "#FFFFFF",
2116
+ "line-width": [
2117
+ "interpolate", ["linear"], ["zoom"],
2118
+ 16.5, 8,
2119
+ 18.0, 11,
2120
+ 20.0, 14
2121
+ ],
2122
+ "line-opacity": 0.85
2123
+ }
2124
+ },
2125
+ {
2126
+ "id": "route-line-active",
2127
+ "type": "line",
2128
+ "source": "route-active-step",
2129
+ "minzoom": 16.5,
2130
+ "layout": {
2131
+ "line-cap": "round",
2132
+ "line-join": "round"
2133
+ },
2134
+ "paint": {
2135
+ "line-color": "#fdb81e",
2136
+ "line-width": [
2137
+ "interpolate", ["linear"], ["zoom"],
2138
+ 16.5, 5,
2139
+ 18.0, 7,
2140
+ 20.0, 9
2141
+ ],
2142
+ "line-opacity": 1
2143
+ }
2144
+ },
2145
+ {
2146
+ "id": "route-endpoint-source",
2147
+ "type": "circle",
2148
+ "source": "route-endpoints",
2149
+ "minzoom": 16.5,
2150
+ "filter": ["==", ["get", "role"], "source"],
2151
+ "paint": {
2152
+ "circle-radius": 6,
2153
+ "circle-color": "#ffffff",
2154
+ "circle-stroke-width": 3,
2155
+ "circle-stroke-color": "#d32f2f",
2156
+ "circle-opacity": 1
2157
+ }
2158
+ },
2159
+ {
2160
+ "id": "route-endpoint-destination",
2161
+ "type": "circle",
2162
+ "source": "route-endpoints",
2163
+ "minzoom": 16.5,
2164
+ "filter": ["==", ["get", "role"], "destination"],
2165
+ "paint": {
2166
+ "circle-radius": 7,
2167
+ "circle-color": "#d32f2f",
2168
+ "circle-stroke-width": 3,
2169
+ "circle-stroke-color": "#ffffff",
2170
+ "circle-opacity": 1
2171
+ }
2172
+ },
2173
+ {
2174
+ "id": "poi-route-connector-icons",
2175
+ "type": "symbol",
2176
+ "source": "poi-data",
2177
+ "filter": ["all", ["==", ["get", "amenityCategory"], "connector"], ["in", ["to-string", ["get", "waypointId"]], ["literal", []]]],
2178
+ "minzoom": 16.5,
2179
+ "layout": {
2180
+ "icon-image": ["get", "iconId"],
2181
+ "icon-size": [
2182
+ "interpolate", ["exponential", 1.3], ["zoom"],
2183
+ 15, 0.3,
2184
+ 16, 0.5,
2185
+ 18, 0.6,
2186
+ 20, 0.75,
2187
+ 22, 0.9
2188
+ ],
2189
+ "icon-allow-overlap": true,
2190
+ "icon-ignore-placement": true,
2191
+ "icon-padding": [
2192
+ "interpolate", ["linear"], ["zoom"],
2193
+ 15, 8,
2194
+ 17, 4,
2195
+ 19, 2
2196
+ ],
2197
+ "icon-optional": false,
2198
+ "icon-rotation-alignment": "viewport",
2199
+ "icon-pitch-alignment": "viewport",
2200
+
2201
+ "text-field": ["get", "name"],
2202
+ "text-size": [
2203
+ "interpolate", ["linear"], ["zoom"],
2204
+ 16, ["case", ["!=", ["coalesce", ["get", "iconId"], ""], ""], 0, 17],
2205
+ 19, ["case", ["!=", ["coalesce", ["get", "iconId"], ""], ""], 0, 19],
2206
+ 20, ["case", ["!=", ["coalesce", ["get", "iconId"], ""], ""], 0, 22]
2207
+ ],
2208
+ "text-offset": [0, 1.3],
2209
+ "text-anchor": "top",
2210
+ "text-optional": true,
2211
+ "text-padding": 4,
2212
+ "text-font": ["Noto Sans Bold"],
2213
+ "text-rotation-alignment": "viewport"
2214
+ },
2215
+ "paint": {
2216
+ "text-color": "#242930",
2217
+ "text-halo-color": "#FFFFFF",
2218
+ "text-halo-width": 1.5,
2219
+ "text-halo-blur": 1,
2220
+ "icon-translate": [0, -20],
2221
+ "icon-translate-anchor": "viewport"
2222
+ }
2223
+ },
2224
+ {
2225
+ "id": "poi-route-end-flag",
2226
+ "type": "symbol",
2227
+ "source": "route-end-data",
2228
+ "filter": ["==", ["get", "kind"], "destination"],
2229
+ "layout": {
2230
+ "icon-image": "route-end-flag",
2231
+ "icon-size": [
2232
+ "interpolate", ["linear"], ["zoom"],
2233
+ 15, 0.52,
2234
+ 16, 0.8,
2235
+ 18, 0.9,
2236
+ 20, 1,
2237
+ 22, 1.2
2238
+ ],
2239
+ "icon-overlap": "always",
2240
+ "icon-ignore-placement": false,
2241
+ "icon-rotation-alignment": "viewport",
2242
+ "icon-pitch-alignment": "viewport",
2243
+ "text-field": ["get", "name"],
2244
+ "text-size": 16,
2245
+ "text-variable-anchor-offset": [
2246
+ "top", [0, 1.6],
2247
+ "right", [-2, 0],
2248
+ "bottom", [0, -1.6],
2249
+ "left", [2, 0]
2250
+ ],
2251
+ "text-font": ["Noto Sans Bold"],
2252
+ "text-max-width": 12,
2253
+ "text-overlap": "always",
2254
+ "text-ignore-placement": false,
2255
+ "text-optional": false,
2256
+ "text-rotation-alignment": "viewport"
2257
+ },
2258
+ "paint": {
2259
+ "text-color": "#F2F2F2",
2260
+ "text-halo-color": "#242930",
2261
+ "text-halo-width": 2,
2262
+ "text-halo-blur": 0
2263
+ }
2264
+ },
2265
+ {
2266
+ "id": "poi-route-end-amenity",
2267
+ "type": "symbol",
2268
+ "source": "route-end-data",
2269
+ "filter": ["==", ["get", "kind"], "amenity"],
2270
+ "layout": {
2271
+ "icon-image": ["get", "iconId"],
2272
+ "icon-size": [
2273
+ "interpolate", ["exponential", 1.3], ["zoom"],
2274
+ 15, 0.45,
2275
+ 16, 0.75,
2276
+ 18, 0.9,
2277
+ 20, 1.13,
2278
+ 22, 1.35
2279
+ ],
2280
+ "icon-overlap": "always",
2281
+ "icon-ignore-placement": false,
2282
+ "icon-rotation-alignment": "viewport",
2283
+ "icon-pitch-alignment": "viewport",
2284
+ "text-field": ["coalesce", ["get", "instanceName"], ""],
2285
+ "text-size": [
2286
+ "interpolate", ["linear"], ["zoom"],
2287
+ 16, 14,
2288
+ 19, 15,
2289
+ 22, 17
2290
+ ],
2291
+ "text-offset": [
2292
+ "interpolate", ["linear"], ["zoom"],
2293
+ 16, ["literal", [0, 0.3]],
2294
+ 18, ["literal", [0, 0.5]],
2295
+ 20, ["literal", [0, 0.55]],
2296
+ 22, ["literal", [0, 1.5]]
2297
+ ],
2298
+ "text-anchor": "top",
2299
+ "text-font": ["Noto Sans Bold"],
2300
+ "text-overlap": "always",
2301
+ "text-ignore-placement": false,
2302
+ "text-optional": true,
2303
+ "text-rotation-alignment": "viewport"
2304
+ },
2305
+ "paint": {
2306
+ "icon-translate": [0, -20],
2307
+ "icon-translate-anchor": "viewport",
2308
+ "text-color": "#0F1114",
2309
+ "text-halo-color": "#FFFFFF",
2310
+ "text-halo-width": 1.5,
2311
+ "text-halo-blur": 0.1
2312
+ }
2313
+ },
2314
+
2116
2315
  {
2117
2316
  "id": "poi-you-are-here-heading",
2118
2317
  "type": "symbol",