diff --git a/ui-ngx/package.json b/ui-ngx/package.json index 1536858de8..3323d15b56 100644 --- a/ui-ngx/package.json +++ b/ui-ngx/package.json @@ -28,7 +28,6 @@ "@flowjs/ngx-flow": "18.0.1", "@geoman-io/leaflet-geoman-free": "2.17.0", "@iplab/ngx-color-picker": "^18.0.1", - "@maplibre/maplibre-gl-leaflet": "^0.0.22", "@mat-datetimepicker/core": "~14.0.0", "@mdi/svg": "^7.4.47", "@messageformat/core": "^3.4.0", @@ -65,7 +64,7 @@ "leaflet.gridlayer.googlemutant": "0.14.1", "leaflet.markercluster": "1.5.3", "libphonenumber-js": "^1.11.15", - "maplibre-gl": "^4.7.1", + "maplibre-gl": "^5.2.0", "marked": "~12.0.2", "moment": "^2.30.1", "moment-timezone": "^0.5.45", diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/maps/leaflet/leaflet-tb.ts b/ui-ngx/src/app/modules/home/components/widget/lib/maps/leaflet/leaflet-tb.ts index df02c46482..95b8932db0 100644 --- a/ui-ngx/src/app/modules/home/components/widget/lib/maps/leaflet/leaflet-tb.ts +++ b/ui-ngx/src/app/modules/home/components/widget/lib/maps/leaflet/leaflet-tb.ts @@ -17,7 +17,7 @@ import L, { TB } from 'leaflet'; import { guid, isNotEmptyStr } from '@core/utils'; import 'leaflet-providers'; -import '@maplibre/maplibre-gl-leaflet'; +import { Map as MapLibreGLMap, LngLat as MapLibreGLLngLat } from 'maplibre-gl'; import '@geoman-io/leaflet-geoman-free'; import 'leaflet.markercluster'; import { MatIconRegistry } from '@angular/material/icon'; @@ -27,7 +27,7 @@ import { of } from 'rxjs'; L.MarkerCluster = L.MarkerCluster.mergeOptions({ pmIgnore: true }); -class SidebarControl extends L.Control { +class SidebarControl extends L.Control implements L.TB.SidebarControl { private readonly sidebar: JQuery; @@ -95,7 +95,7 @@ class SidebarControl extends L.Control { } } -class SidebarPaneControl extends L.Control { +class SidebarPaneControl extends L.Control implements L.TB.SidebarPaneControl { private button: JQuery; private $ui: JQuery; @@ -155,7 +155,7 @@ class SidebarPaneControl extends L.Contr } } -class LayersControl extends SidebarPaneControl { +class LayersControl extends SidebarPaneControl implements L.TB.LayersControl { constructor(options: TB.LayersControlOptions) { super(options); } @@ -215,9 +215,6 @@ class LayersControl extends SidebarPaneControl { if (!map.hasLayer(layerData.layer)) { map.addLayer(layerData.layer); map.attributionControl.setPrefix(layerData.attributionPrefix); - if (layerData.onAdd) { - layerData.onAdd(); - } layers.forEach((other) => { if (other.layer !== layerData.layer) { map.removeLayer(other.layer); @@ -238,12 +235,12 @@ class LayersControl extends SidebarPaneControl { } } -class GroupsControl extends SidebarPaneControl { +class GroupsControl extends SidebarPaneControl implements L.TB.GroupsControl { constructor(options: TB.GroupsControlOptions) { super(options); } - public onAddPane(map: L.Map, button: JQuery, $ui: JQuery, toggle: (e: JQuery.MouseEventBase) => void) { + public onAddPane(map: L.Map, _button: JQuery, $ui: JQuery, _toggle: (e: JQuery.MouseEventBase) => void) { const paneId = guid(); const groups = this.options.groups; const baseSection = $("
") @@ -285,7 +282,7 @@ class GroupsControl extends SidebarPaneControl { } } -class TopToolbarButton { +class TopToolbarButton implements L.TB.TopToolbarButton { private readonly button: JQuery; private active = false; private disabled = false; @@ -393,7 +390,7 @@ class TopToolbarButton { } } -class ToolbarButton { +class ToolbarButton implements L.TB.ToolbarButton { private readonly id: string; private readonly button: JQuery; private active = false; @@ -461,7 +458,7 @@ class ToolbarButton { } } -class TopToolbarControl { +class TopToolbarControl implements L.TB.TopToolbarControl { private readonly toolbarElement: JQuery; private buttons: Array = []; @@ -490,7 +487,7 @@ class TopToolbarControl { } } -class ToolbarControl extends L.Control { +class ToolbarControl extends L.Control implements L.TB.ToolbarControl { private buttonContainer: JQuery; @@ -516,7 +513,7 @@ class ToolbarControl extends L.Control { } -class BottomToolbarControl { +class BottomToolbarControl implements L.TB.BottomToolbarControl { private readonly buttonContainer: JQuery; private toolbarButtons: ToolbarButton[] = []; @@ -575,35 +572,35 @@ class BottomToolbarControl { } -const sidebar = (options: TB.SidebarControlOptions): SidebarControl => { +const sidebar = (options: TB.SidebarControlOptions): L.TB.SidebarControl => { return new SidebarControl(options); } -const sidebarPane = (options: O): SidebarPaneControl => { +const sidebarPane = (options: O): L.TB.SidebarPaneControl => { return new SidebarPaneControl(options); } -const layers = (options: TB.LayersControlOptions): LayersControl => { +const layers = (options: TB.LayersControlOptions): L.TB.LayersControl => { return new LayersControl(options); } -const groups = (options: TB.GroupsControlOptions): GroupsControl => { +const groups = (options: TB.GroupsControlOptions): L.TB.GroupsControl => { return new GroupsControl(options); } -const topToolbar = (options: TB.TopToolbarControlOptions): TopToolbarControl => { +const topToolbar = (options: TB.TopToolbarControlOptions): L.TB.TopToolbarControl => { return new TopToolbarControl(options); } -const toolbar = (options: L.ControlOptions): ToolbarControl => { +const toolbar = (options: L.ControlOptions): L.TB.ToolbarControl => { return new ToolbarControl(options); } -const bottomToolbar = (options: TB.BottomToolbarControlOptions): BottomToolbarControl => { +const bottomToolbar = (options: TB.BottomToolbarControlOptions): L.TB.BottomToolbarControl => { return new BottomToolbarControl(options); } -class ChinaProvider extends L.TileLayer { +class ChinaProvider extends L.TileLayer implements L.TB.TileLayer.ChinaProvider { static chinaProviders: L.TB.TileLayer.ChinaProvidersData = { Tencent: { @@ -649,10 +646,299 @@ class ChinaProvider extends L.TileLayer { } } -const chinaProvider = (type: string, options?: L.TileLayerOptions): ChinaProvider => { +const chinaProvider = (type: string, options?: L.TileLayerOptions): L.TB.TileLayer.ChinaProvider => { return new ChinaProvider(type, options); } +class MapLibreGLLayer extends L.Layer implements TB.MapLibreGL.MapLibreGLLayer { + + options: TB.MapLibreGL.LeafletMapLibreGLMapOptions; + + private readonly _throttledUpdate: () => void; + private _container: HTMLDivElement; + private _glMap: MapLibreGLMap; + private _actualCanvas: HTMLCanvasElement; + private _offset: L.Point; + private _zooming: boolean; + + constructor(options: TB.MapLibreGL.LeafletMapLibreGLMapOptions) { + super(); + options = {...options, ...{ + updateInterval: 32, + padding: 0.1, + interactive: false, + pane: 'tilePane' + }}; + options.attribution = this._loadAttribution(options); + this._prepareTransformRequest(options); + L.setOptions(this, options); + this._throttledUpdate = L.Util.throttle(this._update, this.options.updateInterval, this); + } + + onAdd(map: L.Map): this { + let update = false; + if (!this._container) { + this._initContainer(); + } else { + update = true; + } + const paneName = this.getPaneName(); + map.getPane(paneName).appendChild(this._container); + this._initGL(); + + this._offset = this._map.containerPointToLayerPoint([0, 0]); + if ((this._map as any)._proxy && map.options.zoomAnimation) { + L.DomEvent.on((map as any)._proxy, L.DomUtil.TRANSITION_END, this._transitionEnd, this); + } + if (update) { + this._update(); + } + return this; + } + + onRemove(map: L.Map): this { + if ((this._map as any)._proxy && this._map.options.zoomAnimation) { + L.DomEvent.off((map as any)._proxy, L.DomUtil.TRANSITION_END, this._transitionEnd, this); + } + const paneName = this.getPaneName(); + map.getPane(paneName).removeChild(this._container); + + this._glMap.remove(); + this._glMap = null; + + return this; + } + + getEvents(): { [p: string]: L.LeafletEventHandlerFn } { + return { + move: this._throttledUpdate, // sensibly throttle updating while panning + zoomanim: this._animateZoom, // applys the zoom animation to the + zoom: this._pinchZoom, // animate every zoom event for smoother pinch-zooming + zoomstart: this._zoomStart, // flag starting a zoom to disable panning + zoomend: this._zoomEnd, + resize: this._resize + }; + } + + getMapLibreGLMap(): MapLibreGLMap { + return this._glMap; + } + + getCanvas(): HTMLCanvasElement { + return this._glMap.getCanvas(); + } + + getSize(): L.Point { + return this._map.getSize().multiplyBy(1 + this.options.padding * 2); + } + + getBounds(): L.LatLngBounds { + const halfSize = this.getSize().multiplyBy(0.5); + const center = this._map.latLngToContainerPoint(this._map.getCenter()); + return L.latLngBounds( + this._map.containerPointToLatLng(center.subtract(halfSize)), + this._map.containerPointToLatLng(center.add(halfSize)) + ); + } + + getContainer(): HTMLDivElement { + return this._container; + } + + getPaneName(): string { + return this._map.getPane(this.options.pane) ? this.options.pane : 'tilePane'; + } + + private _roundPoint(p: L.Point): L.Point { + return new L.Point(Math.round(p.x), Math.round(p.y)); + } + + private _initContainer() { + const container = this._container = L.DomUtil.create('div', 'leaflet-gl-layer'); + const size = this.getSize(); + const offset = this._map.getSize().multiplyBy(this.options.padding); + container.style.width = size.x + 'px'; + container.style.height = size.y + 'px'; + const topLeft = this._map.containerPointToLayerPoint([0, 0]).subtract(offset); + L.DomUtil.setPosition(container, this._roundPoint(topLeft)); + } + + private _initGL() { + const center = this._map.getCenter(); + const options = L.extend({}, this.options, { + container: this._container, + center: [center.lng, center.lat], + zoom: this._map.getZoom() - 1, + attributionControl: false + }); + this._glMap = new MapLibreGLMap(options); + this._glMap.setMaxBounds(null); + this._transformGL(this._glMap); + this._actualCanvas = this._glMap._canvas; + const canvas = this._actualCanvas; + L.DomUtil.addClass(canvas, 'leaflet-image-layer'); + L.DomUtil.addClass(canvas, 'leaflet-zoom-animated'); + if (this.options.interactive) { + L.DomUtil.addClass(canvas, 'leaflet-interactive'); + } + if (this.options.className) { + L.DomUtil.addClass(canvas, this.options.className); + } + } + + private _update() { + if (!this._map) { + return; + } + this._offset = this._map.containerPointToLayerPoint([0, 0]); + + if (this._zooming) { + return; + } + const size = this.getSize(), + container = this._container, + gl = this._glMap, + offset = this._map.getSize().multiplyBy(this.options.padding), + topLeft = this._map.containerPointToLayerPoint([0, 0]).subtract(offset); + + L.DomUtil.setPosition(container, this._roundPoint(topLeft)); + + this._transformGL(gl); + + if (gl.transform.width !== size.x || gl.transform.height !== size.y) { + container.style.width = size.x + 'px'; + container.style.height = size.y + 'px'; + gl.resize(); + } else { + gl._update(); + } + } + + private _transformGL(gl: MapLibreGLMap) { + const center = this._map.getCenter(); + const tr = gl._getTransformForUpdate(); + tr.setCenter(MapLibreGLLngLat.convert([center.lng, center.lat])); + tr.setZoom(this._map.getZoom() - 1); + gl.transform.apply(tr); + gl._fireMoveEvents(); + } + + private _pinchZoom() { + this._glMap.jumpTo({ + zoom: this._map.getZoom() - 1, + center: this._map.getCenter() + }); + } + + private _animateZoom(e: L.ZoomAnimEvent) { + const scale = this._map.getZoomScale(e.zoom); + const padding = this._map.getSize().multiplyBy(this.options.padding * scale); + const viewHalf = this.getSize().divideBy(2); + + const topLeft = this._map.project(e.center, e.zoom) + .subtract(viewHalf) + .add((this._map as any)._getMapPanePos() + .add(padding)).round(); + + const offset = this._map.project(this._map.getBounds().getNorthWest(), e.zoom) + .subtract(topLeft); + + L.DomUtil.setTransform( + this._actualCanvas, + offset.subtract(this._offset), + scale + ); + } + + private _zoomStart() { + this._zooming = true; + } + + private _zoomEnd() { + const scale = this._map.getZoomScale(this._map.getZoom()); + L.DomUtil.setTransform( + this._actualCanvas, + null, + scale + ); + this._zooming = false; + this._update(); + } + + private _transitionEnd() { + L.Util.requestAnimFrame(() => { + const zoom = this._map.getZoom(); + const center = this._map.getCenter(); + const offset = this._map.latLngToContainerPoint( + this._map.getBounds().getNorthWest() + ); + + L.DomUtil.setTransform(this._actualCanvas, offset, 1); + + this._glMap.once('moveend', () => { + this._zoomEnd(); + }); + this._glMap.jumpTo({ + center: center, + zoom: zoom - 1 + }); + }); + } + + private _resize() { + this._transitionEnd(); + } + + private _loadAttribution(options: TB.MapLibreGL.LeafletMapLibreGLMapOptions): string { + if (options.attributionControl !== false && typeof options.attributionControl?.customAttribution === 'string') { + return options.attributionControl.customAttribution; + } + if (options.attributionControl !== false) { + const style = options.style; + if (typeof style !== 'string' && style?.sources) { + return Object.keys(style.sources) + .map((sourceId) => { + const source = style.sources[sourceId]; + return (source && source.type !== 'video' && source.type !== 'image' + && typeof source.attribution === 'string') ? source.attribution.trim() : null; + }) + .filter(Boolean) // Remove null/undefined values + .join(', '); + } + } + return ''; + } + + private _prepareTransformRequest(options: TB.MapLibreGL.LeafletMapLibreGLMapOptions) { + if (!options.transformRequest) { + const style = options.style; + if (typeof style !== 'string' && style.glyphs) { + const glyphs = style.glyphs; + const glyphsRegexString = glyphs.replace(/\//g, '\\/').replace(/\./g, '\\.').replace('{fontstack}', '(.*)').replace('{range}', '(.*)'); + const glyphsRegex = new RegExp(glyphsRegexString); + options.transformRequest = (url, resourceType) => { + if (resourceType === 'Glyphs' && glyphsRegex && glyphsRegex.test(url)) { + const res = glyphsRegex.exec(url); + if (res.length === 3) { + const fontStack = res[1]; + const fonts = fontStack.split(','); + if (fonts.length > 1) { + const newFontStack = fonts[0]; + url = url.replace(fontStack, newFontStack); + } + } + } + return {url}; + }; + } + } + } +} + +const mapLibreGLLayer = (options: TB.MapLibreGL.LeafletMapLibreGLMapOptions): TB.MapLibreGL.MapLibreGLLayer => { + return new MapLibreGLLayer(options); +} + L.TB = L.TB || { SidebarControl, SidebarPaneControl, @@ -675,5 +961,9 @@ L.TB = L.TB || { }, tileLayer: { chinaProvider + }, + MapLibreGL: { + MapLibreGLLayer, + mapLibreGLLayer } } diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/maps/map-layer.ts b/ui-ngx/src/app/modules/home/components/widget/lib/maps/map-layer.ts index 655cc26374..b40abd1d66 100644 --- a/ui-ngx/src/app/modules/home/components/widget/lib/maps/map-layer.ts +++ b/ui-ngx/src/app/modules/home/components/widget/lib/maps/map-layer.ts @@ -26,7 +26,8 @@ import { HereMapLayerSettings, MapLayerSettings, MapProvider, - OpenStreetMapLayerSettings, ReferenceLayerType, + OpenStreetMapLayerSettings, + ReferenceLayerType, TencentMapLayerSettings } from '@shared/models/widget/maps/map.models'; import { WidgetContext } from '@home/models/widget-component.models'; @@ -37,13 +38,13 @@ import { CustomTranslatePipe } from '@shared/pipe/custom-translate.pipe'; import L from 'leaflet'; import { catchError, map } from 'rxjs/operators'; import { ResourcesService } from '@core/services/resources.service'; -import { StyleSpecification, VectorSourceSpecification } from '@maplibre/maplibre-gl-style-spec'; -import { ResourceType } from 'maplibre-gl'; +import { StyleSpecification } from '@maplibre/maplibre-gl-style-spec'; const referenceLayerStyleUrlMap = new Map( [ [ReferenceLayerType.openstreetmap_hybrid, '/assets/map/openstreetmap_hybrid_reference_style.json'], - [ReferenceLayerType.world_edition_hybrid, '/assets/map/world_edition_hybrid_reference_style.json'] + [ReferenceLayerType.world_edition_hybrid, '/assets/map/world_edition_hybrid_reference_style.json'], + [ReferenceLayerType.enhanced_contrast_hybrid, '/assets/map/enhanced_contrast_hybrid_reference_style.json'] ] ); @@ -52,7 +53,6 @@ const referenceLayerCache = new Map void; } export abstract class TbMapLayer { @@ -93,12 +93,7 @@ export abstract class TbMapLayer { title: this.title(), attributionPrefix: attributionPrefix, layer: layerData.layer, - mini: miniLayerData.layer, - onAdd: () => { - if (layerData.onAdd) { - layerData.onAdd(); - } - } + mini: miniLayerData.layer }; } else { return null; @@ -125,10 +120,7 @@ export abstract class TbMapLayer { referenceLayer.addTo(layer); return { layer, - attribution: !!baseLayer.getAttribution() || !!referenceLayer.getAttribution(), - onAdd: () => { - (referenceLayer as any)._update(); - } + attribution: !!baseLayer.getAttribution() || !!referenceLayer.getAttribution() }; } else { return { @@ -164,13 +156,9 @@ export abstract class TbMapLayer { } return spec$.pipe( map(spec => { - const sourceSpec = (spec.sources['esri'] as VectorSourceSpecification); - const attribution = sourceSpec.attribution; - const gl = L.maplibreGL({ + return L.TB.MapLibreGL.mapLibreGLLayer({ style: spec, }); - gl.options.attribution = attribution; - return gl; }) ); } diff --git a/ui-ngx/src/app/shared/models/widget/maps/map.models.ts b/ui-ngx/src/app/shared/models/widget/maps/map.models.ts index 5dc4d52ad4..06083f4298 100644 --- a/ui-ngx/src/app/shared/models/widget/maps/map.models.ts +++ b/ui-ngx/src/app/shared/models/widget/maps/map.models.ts @@ -758,6 +758,7 @@ export const mapProviderTranslationMap = new Map( export enum ReferenceLayerType { openstreetmap_hybrid = 'openstreetmap_hybrid', world_edition_hybrid = 'world_edition_hybrid', + enhanced_contrast_hybrid = 'enhanced_contrast_hybrid' } export const referenceLayerTypes = Object.keys(ReferenceLayerType) as ReferenceLayerType[]; @@ -765,7 +766,8 @@ export const referenceLayerTypes = Object.keys(ReferenceLayerType) as ReferenceL export const referenceLayerTypeTranslationMap = new Map( [ [ReferenceLayerType.openstreetmap_hybrid, 'widgets.maps.layer.reference.openstreetmap-hybrid'], - [ReferenceLayerType.world_edition_hybrid, 'widgets.maps.layer.reference.world-edition-hybrid'] + [ReferenceLayerType.world_edition_hybrid, 'widgets.maps.layer.reference.world-edition-hybrid'], + [ReferenceLayerType.enhanced_contrast_hybrid, 'widgets.maps.layer.reference.enhanced-contrast-hybrid'] ] ); diff --git a/ui-ngx/src/assets/locale/locale.constant-en_US.json b/ui-ngx/src/assets/locale/locale.constant-en_US.json index 30c481610c..eede6bb27e 100644 --- a/ui-ngx/src/assets/locale/locale.constant-en_US.json +++ b/ui-ngx/src/assets/locale/locale.constant-en_US.json @@ -7910,7 +7910,8 @@ "reference-layer": "Reference layer", "no-layer": "No layer", "openstreetmap-hybrid": "OpenStreetMap Hybrid", - "world-edition-hybrid": "World Edition Hybrid" + "world-edition-hybrid": "World Edition Hybrid", + "enhanced-contrast-hybrid": "Enhanced Contrast Hybrid" }, "provider": { "provider": "Provider", diff --git a/ui-ngx/src/assets/map/enhanced_contrast_hybrid_reference_style.json b/ui-ngx/src/assets/map/enhanced_contrast_hybrid_reference_style.json new file mode 100644 index 0000000000..ac06f51314 --- /dev/null +++ b/ui-ngx/src/assets/map/enhanced_contrast_hybrid_reference_style.json @@ -0,0 +1,7937 @@ +{ + "version": 8, + "sprite": "https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/resources/sprites/sprite", + "glyphs": "https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/resources/fonts/{fontstack}/{range}.pbf", + "sources": { + "esri": { + "type": "vector", + "url": "https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer", + "attribution": "Sources: Esri, TomTom, Garmin, FAO, NOAA, USGS, © OpenStreetMap contributors, and the GIS User Community", + "tiles": [ + "https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/{z}/{y}/{x}.pbf" + ] + } + }, + "layers": [ + { + "id": "Boundary line/Admin0/casing_2", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 0 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 5, + "layout": { + "line-cap": "round", + "line-join": "round" + }, + "paint": { + "line-color": "#4d4a00", + "line-width": { + "base": 1.2, + "stops": [ + [ + 5, + 2 + ], + [ + 10, + 8 + ], + [ + 18, + 14 + ] + ] + } + } + }, + { + "id": "Boundary line/Admin1/casing_2", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 1 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 6, + "layout": { + "line-cap": "round", + "line-join": "round" + }, + "paint": { + "line-color": { + "stops": [ + [ + 6, + "rgba(55,44,27,0.5)" + ], + [ + 9, + "rgba(55,44,27,0.5)" + ] + ] + }, + "line-width": { + "base": 1.2, + "stops": [ + [ + 6, + 5 + ], + [ + 10, + 7 + ], + [ + 14, + 10 + ], + [ + 17, + 12 + ] + ] + } + } + }, + { + "id": "Boundary line/Disputed admin5", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 11 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 16, + "layout": { + "line-join": "round" + }, + "paint": { + "line-color": "#9DA0A2", + "line-width": { + "base": 1.2, + "stops": [ + [ + 16, + 1.6 + ], + [ + 18, + 2.5 + ] + ] + }, + "line-dasharray": [ + 6, + 3 + ] + } + }, + { + "id": "Boundary line/Disputed admin4", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 10 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 16, + "layout": { + "line-join": "round" + }, + "paint": { + "line-color": "#9DA0A2", + "line-width": { + "base": 1.2, + "stops": [ + [ + 16, + 1.6 + ], + [ + 18, + 2.5 + ] + ] + }, + "line-dasharray": [ + 6, + 3 + ] + } + }, + { + "id": "Boundary line/Disputed admin3", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 9 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 16, + "layout": { + "line-join": "round" + }, + "paint": { + "line-color": "#9DA0A2", + "line-width": { + "base": 1.2, + "stops": [ + [ + 16, + 1.6 + ], + [ + 18, + 2.5 + ] + ] + }, + "line-dasharray": [ + 6, + 3 + ] + } + }, + { + "id": "Boundary line/Disputed admin2", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 8 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 10, + "layout": { + "line-join": "round" + }, + "paint": { + "line-color": "#9DA0A2", + "line-width": { + "base": 1.2, + "stops": [ + [ + 10, + 1.3 + ], + [ + 14, + 1.6 + ], + [ + 18, + 2.5 + ] + ] + }, + "line-dasharray": [ + 6, + 3 + ] + } + }, + { + "id": "Boundary line/Disputed admin1", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 7 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 3, + "layout": { + "line-join": "round" + }, + "paint": { + "line-color": "#747922", + "line-width": { + "base": 1.2, + "stops": [ + [ + 3, + 1.3 + ], + [ + 14, + 1.6 + ], + [ + 18, + 2.5 + ] + ] + }, + "line-dasharray": [ + 6, + 3 + ] + } + }, + { + "id": "Boundary line/Disputed admin0", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 6 + ], + [ + "!in", + "Viz", + 3 + ], + [ + "!in", + "DisputeID", + 8, + 16, + 90, + 96, + 0 + ] + ], + "minzoom": 1, + "layout": { + "line-join": "round" + }, + "paint": { + "line-color": "#575900", + "line-width": { + "base": 1.2, + "stops": [ + [ + 0, + 0.75 + ], + [ + 6, + 1.2 + ], + [ + 14, + 1.6 + ], + [ + 18, + 2.5 + ] + ] + }, + "line-dasharray": [ + 6, + 3 + ] + } + }, + { + "id": "Boundary line/Admin2/casing", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 2 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 10, + "layout": { + "line-cap": "round", + "line-join": "round" + }, + "paint": { + "line-color": "#4d4a00", + "line-width": { + "base": 1.2, + "stops": [ + [ + 10, + 2 + ], + [ + 14, + 3.5 + ], + [ + 18, + 4 + ] + ] + } + } + }, + { + "id": "Boundary line/Admin1/casing_1", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 1 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 6, + "layout": { + "line-cap": "round", + "line-join": "round" + }, + "paint": { + "line-color": "#4d4a00", + "line-width": { + "base": 1.2, + "stops": [ + [ + 8, + 1.2 + ], + [ + 12, + 3 + ], + [ + 18, + 3.25 + ] + ] + } + } + }, + { + "id": "Boundary line/Admin0/casing_1", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 0 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 5, + "layout": { + "line-cap": "round", + "line-join": "round" + }, + "paint": { + "line-color": "#4d4a00", + "line-width": { + "base": 1.2, + "stops": [ + [ + 8, + 2.2 + ], + [ + 12, + 3 + ], + [ + 14, + 3.25 + ], + [ + 18, + 6.5 + ] + ] + } + } + }, + { + "id": "Boundary line/Admin5", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 5 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 16, + "layout": { + "line-cap": "round", + "line-join": "round" + }, + "paint": { + "line-color": "#9C9C9C", + "line-width": { + "base": 1.2, + "stops": [ + [ + 16, + 1.33 + ], + [ + 18, + 2 + ] + ] + }, + "line-dasharray": [ + 2, + 2 + ] + } + }, + { + "id": "Boundary line/Admin4", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 4 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 16, + "layout": { + "line-join": "round" + }, + "paint": { + "line-color": "#9C9C9C", + "line-width": { + "base": 1.2, + "stops": [ + [ + 16, + 1.33 + ], + [ + 18, + 2 + ] + ] + }, + "line-dasharray": [ + 2, + 2 + ] + } + }, + { + "id": "Boundary line/Admin3", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 3 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 16, + "layout": { + "line-join": "round" + }, + "paint": { + "line-color": "#9C9C9C", + "line-width": { + "base": 1.2, + "stops": [ + [ + 16, + 1.33 + ], + [ + 18, + 2 + ] + ] + }, + "line-dasharray": [ + 2, + 2 + ] + } + }, + { + "id": "Boundary line/Admin2/line", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 2 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 10, + "layout": { + "line-join": "round" + }, + "paint": { + "line-color": "#bfbd6a", + "line-width": { + "base": 1.2, + "stops": [ + [ + 10, + 1 + ], + [ + 14, + 1.33 + ], + [ + 18, + 1.5 + ] + ] + }, + "line-dasharray": [ + 8, + 5.33 + ] + } + }, + { + "id": "Boundary line/Admin1/line", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 1 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 4, + "layout": { + "line-cap": "round", + "line-join": "round" + }, + "paint": { + "line-color": { + "base": 1, + "stops": [ + [ + 10, + "#999755" + ], + [ + 11, + "#d9d678" + ] + ] + }, + "line-width": { + "base": 1.2, + "stops": [ + [ + 8, + 0.75 + ], + [ + 12, + 1.5 + ], + [ + 18, + 1.75 + ] + ] + } + } + }, + { + "id": "Boundary line/Admin0/line", + "type": "line", + "source": "esri", + "source-layer": "Boundary line", + "filter": [ + "all", + [ + "==", + "_symbol", + 0 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "layout": { + "line-cap": "round", + "line-join": "round" + }, + "paint": { + "line-color": { + "stops": [ + [ + 1, + "#bfbd6a" + ], + [ + 5, + "#e6e150" + ] + ] + }, + "line-width": { + "base": 1.2, + "stops": [ + [ + 0, + 0.75 + ], + [ + 6, + 1.2 + ], + [ + 14, + 3 + ], + [ + 18, + 5 + ] + ] + } + } + }, + { + "id": "Ferry/label/Ferry", + "type": "symbol", + "source": "esri", + "source-layer": "Ferry/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 0 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 11, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.07, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#007cb1", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water point/Stream or river", + "type": "symbol", + "source": "esri", + "source-layer": "Water point", + "filter": [ + "==", + "_label_class", + 3 + ], + "minzoom": 9, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 9, + 10 + ], + [ + 15, + 11.5 + ] + ] + }, + "icon-size": 10, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 5, + "text-padding": 15, + "text-letter-spacing": 0.15, + "icon-allow-overlap": true, + "text-field": "{_name_global}", + "icon-image": "Water point" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water point/Lake or reservoir", + "type": "symbol", + "source": "esri", + "source-layer": "Water point", + "filter": [ + "==", + "_label_class", + 2 + ], + "minzoom": 9, + "layout": { + "text-size": { + "stops": [ + [ + 9, + 7 + ], + [ + 15, + 11.3 + ] + ] + }, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 5, + "text-padding": 15, + "text-letter-spacing": 0.01, + "icon-allow-overlap": true, + "text-field": "{_name_global}", + "icon-image": "Water point" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#007cb1", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water point/Bay or inlet", + "type": "symbol", + "source": "esri", + "source-layer": "Water point", + "filter": [ + "==", + "_label_class", + 1 + ], + "minzoom": 9, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 9, + 10 + ], + [ + 15, + 13 + ] + ] + }, + "text-font": [ + "Ubuntu Bold Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 5, + "text-padding": 15, + "text-letter-spacing": 0.15, + "icon-allow-overlap": true, + "text-field": "{_name_global}", + "icon-image": "Water point" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#007cb1", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water point/Sea or ocean", + "type": "symbol", + "source": "esri", + "source-layer": "Water point", + "filter": [ + "==", + "_label_class", + 0 + ], + "minzoom": 9, + "layout": { + "text-size": 12, + "text-font": [ + "Ubuntu Bold Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": { + "stops": [ + [ + 15.5, + 7 + ], + [ + 15.6, + 9 + ] + ] + }, + "text-padding": 15, + "text-letter-spacing": 0.1, + "icon-allow-overlap": true, + "text-field": "{_name_global}", + "icon-image": "Water point" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#007cb1", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water point/Canal or ditch", + "type": "symbol", + "source": "esri", + "source-layer": "Water point", + "filter": [ + "==", + "_label_class", + 4 + ], + "minzoom": 11, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 5, + "text-padding": 15, + "text-letter-spacing": 0.01, + "icon-allow-overlap": true, + "text-field": "{_name_global}", + "icon-image": "Water point" + }, + "paint": { + "text-color": "#c8edff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water point/Island", + "type": "symbol", + "source": "esri", + "source-layer": "Water point", + "filter": [ + "==", + "_label_class", + 7 + ], + "minzoom": 11, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 11, + 10 + ], + [ + 15, + 11 + ] + ] + }, + "icon-size": 10, + "text-font": [ + "Ubuntu Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 5, + "text-padding": 15, + "text-letter-spacing": 0.05, + "icon-allow-overlap": true, + "text-field": "{_name_global}", + "icon-image": "Water point" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2 + } + }, + { + "id": "Water line/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Water line/label", + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.15, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-offset": [ + 0, + -0.5 + ], + "text-max-angle": 30, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#c8edff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water area/label/Canal or ditch", + "type": "symbol", + "source": "esri", + "source-layer": "Water area/label", + "filter": [ + "==", + "_label_class", + 2 + ], + "minzoom": 11, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 5, + "text-letter-spacing": 0.01, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#c8edff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water area/label/Small river", + "type": "symbol", + "source": "esri", + "source-layer": "Water area/label", + "filter": [ + "==", + "_label_class", + 7 + ], + "minzoom": 11, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 5, + "text-letter-spacing": 0.15, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#c8edff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water area/label/Large river", + "type": "symbol", + "source": "esri", + "source-layer": "Water area/label", + "filter": [ + "==", + "_label_class", + 4 + ], + "minzoom": 11, + "layout": { + "text-size": 12, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.15, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#c8edff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water area/label/Small lake or reservoir", + "type": "symbol", + "source": "esri", + "source-layer": "Water area/label", + "filter": [ + "==", + "_label_class", + 6 + ], + "minzoom": 11, + "layout": { + "text-size": 11, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 5, + "text-letter-spacing": 0.01, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#c8edff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water area/label/Large lake or reservoir", + "type": "symbol", + "source": "esri", + "source-layer": "Water area/label", + "filter": [ + "==", + "_label_class", + 3 + ], + "minzoom": 11, + "layout": { + "text-size": 12, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.01, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#c8edff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water area/label/Bay or inlet", + "type": "symbol", + "source": "esri", + "source-layer": "Water area/label", + "filter": [ + "==", + "_label_class", + 1 + ], + "minzoom": 12, + "layout": { + "text-size": 12, + "text-font": [ + "Ubuntu Bold Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.15, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#c8edff", + "text-halo-color": "#007cb1", + "text-halo-width": 2.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water area/label/Small island", + "type": "symbol", + "source": "esri", + "source-layer": "Water area/label", + "filter": [ + "==", + "_label_class", + 0 + ], + "minzoom": 11, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 5, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2 + } + }, + { + "id": "Water area/label/Large island", + "type": "symbol", + "source": "esri", + "source-layer": "Water area/label", + "filter": [ + "==", + "_label_class", + 5 + ], + "minzoom": 11, + "layout": { + "text-size": 13, + "text-font": [ + "Ubuntu Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water area large scale/label/River", + "type": "symbol", + "source": "esri", + "source-layer": "Water area large scale/label", + "filter": [ + "==", + "_label_class", + 1 + ], + "minzoom": 7, + "maxzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name}" + }, + "paint": { + "text-color": "#c8edff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water area large scale/label/Lake or lake intermittent", + "type": "symbol", + "source": "esri", + "source-layer": "Water area large scale/label", + "filter": [ + "==", + "_label_class", + 0 + ], + "minzoom": 7, + "maxzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 5, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name}" + }, + "paint": { + "text-color": "#c8edff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water area medium scale/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Water area medium scale/label", + "minzoom": 5, + "maxzoom": 7, + "layout": { + "text-size": 9.33, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 5, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name}" + }, + "paint": { + "text-color": "#c8edff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water area small scale/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Water area small scale/label", + "minzoom": 1, + "maxzoom": 5, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 5, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name}" + }, + "paint": { + "text-color": "#c8edff", + "text-halo-color": "rgba(0,0,50,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Marine area/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Marine area/label", + "minzoom": 10, + "layout": { + "text-size": 12, + "text-font": [ + "Ubuntu Bold Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#007cb1", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Marine waterbody/label/small", + "type": "symbol", + "source": "esri", + "source-layer": "Marine waterbody/label", + "filter": [ + "==", + "_label_class", + 4 + ], + "minzoom": 1, + "maxzoom": 10, + "layout": { + "text-size": 11, + "text-font": [ + "Ubuntu Bold Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 6, + "text-padding": 15, + "text-letter-spacing": 0.1, + "symbol-avoid-edges": true, + "text-field": "{_name}" + }, + "paint": { + "text-opacity": 0.8, + "text-color": "#ffffff", + "text-halo-color": "#007cb1", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Marine waterbody/label/medium", + "type": "symbol", + "source": "esri", + "source-layer": "Marine waterbody/label", + "filter": [ + "==", + "_label_class", + 3 + ], + "minzoom": 1, + "maxzoom": 10, + "layout": { + "text-size": 12, + "text-font": [ + "Ubuntu Bold Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 6, + "text-padding": 15, + "text-letter-spacing": 0.1, + "symbol-avoid-edges": true, + "text-field": "{_name}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#007cb1", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Marine waterbody/label/large", + "type": "symbol", + "source": "esri", + "source-layer": "Marine waterbody/label", + "filter": [ + "==", + "_label_class", + 2 + ], + "minzoom": 1, + "maxzoom": 10, + "layout": { + "text-size": 12, + "text-font": [ + "Ubuntu Medium Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 6, + "text-padding": 15, + "text-letter-spacing": 0.1, + "symbol-avoid-edges": true, + "text-field": "{_name}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#007cb1", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Marine waterbody/label/x large", + "type": "symbol", + "source": "esri", + "source-layer": "Marine waterbody/label", + "filter": [ + "==", + "_label_class", + 1 + ], + "minzoom": 1, + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 3, + 11 + ], + [ + 5, + 12 + ], + [ + 8, + 16 + ] + ] + }, + "text-font": [ + "Ubuntu Bold Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 6, + "text-padding": 15, + "text-letter-spacing": 0.1, + "symbol-avoid-edges": true, + "text-field": "{_name}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#007cb1", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Marine waterbody/label/2x large", + "type": "symbol", + "source": "esri", + "source-layer": "Marine waterbody/label", + "filter": [ + "==", + "_label_class", + 0 + ], + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 1, + 11 + ], + [ + 3, + 16 + ] + ] + }, + "text-font": [ + "Ubuntu Bold Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 6, + "text-padding": 15, + "text-letter-spacing": 0.1, + "symbol-avoid-edges": true, + "text-field": "{_name}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#007cb1", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Ferry/label/Rail ferry", + "type": "symbol", + "source": "esri", + "source-layer": "Ferry/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 1 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 14, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Light", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + -0.6 + ], + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Railroad/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Railroad/label", + "minzoom": 14, + "layout": { + "text-size": 11, + "text-font": [ + "Ubuntu Light", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 10, + "text-letter-spacing": 0.2, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-offset": [ + 0, + -0.6 + ], + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Trail or path/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Trail or path/label", + "minzoom": 15, + "layout": { + "text-size": 9, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road tunnel/label/Pedestrian", + "type": "symbol", + "source": "esri", + "source-layer": "Road tunnel/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 6 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 15, + "layout": { + "text-size": 9.33, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road tunnel/label/Local", + "type": "symbol", + "source": "esri", + "source-layer": "Road tunnel/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 5 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": { + "stops": [ + [ + 12, + 8 + ], + [ + 14, + 10.67 + ] + ] + }, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road tunnel/label/Minor", + "type": "symbol", + "source": "esri", + "source-layer": "Road tunnel/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 4 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 13, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road tunnel/label/Major, alt name", + "type": "symbol", + "source": "esri", + "source-layer": "Road tunnel/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 3 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{ _name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road tunnel/label/Major", + "type": "symbol", + "source": "esri", + "source-layer": "Road tunnel/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 2 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road tunnel/label/Freeway Motorway, alt name", + "type": "symbol", + "source": "esri", + "source-layer": "Road tunnel/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 1 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{ _name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road tunnel/label/Highway", + "type": "symbol", + "source": "esri", + "source-layer": "Road tunnel/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 7 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road tunnel/label/Freeway Motorway", + "type": "symbol", + "source": "esri", + "source-layer": "Road tunnel/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 0 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road/label/Rectangle hexagon brown white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 72 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle hexagon brown white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle hexagon green white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 70 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle hexagon green white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle hexagon red white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 68 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle hexagon red white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle hexagon blue white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 66 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle hexagon blue white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle hexagon brown white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 71 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle hexagon brown white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle hexagon green white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 69 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 13, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle hexagon green white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle hexagon red white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 67 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle hexagon red white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle hexagon blue white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 65 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 11, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle hexagon blue white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Octagon green white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 74 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 11, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.02, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Octagon green white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Hexagon orange black (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 64 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.03, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Hexagon orange black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Hexagon green white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 62 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.03, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Hexagon green white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Hexagon red white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 60 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.03, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Hexagon red white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Hexagon white black (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 56 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.03, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Hexagon white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Pentagon green yellow (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 54 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Pentagon green yellow/{_len}" + }, + "paint": { + "text-color": "#ffff96" + } + }, + { + "id": "Road/label/Pentagon green white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 52 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Pentagon green white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Pentagon yellow black (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 50 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.02, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Pentagon yellow black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Pentagon blue white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 48 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.02, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Pentagon blue white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Pentagon white black (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 46 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.3 + ], + "text-field": "{_name}", + "icon-image": "Road/Pentagon white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Pentagon inverse white black (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 44 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.3 + ], + "text-field": "{_name}", + "icon-image": "Road/Pentagon inverse white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle green yellow (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 42 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 14, + "layout": { + "text-size": 10, + "icon-size": 1.2, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle green yellow/{_len}" + }, + "paint": { + "text-color": "#ffff96" + } + }, + { + "id": "Road/label/Rectangle green white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 40 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10.5, + "icon-size": 1.2, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.05, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle green white (Alt)/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle yellow black (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 38 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 1.2, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.05, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle yellow black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Hexagon blue white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 58 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.03, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Hexagon blue white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle red white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 36 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10.5, + "icon-size": 1.2, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.05, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle red white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle blue white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 34 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10.5, + "icon-size": 1.2, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle blue white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle white black (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 32 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 14, + "layout": { + "text-size": 10, + "icon-size": 1.3, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.05, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/V-shaped white black (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 30 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/V-shaped white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/U-shaped blue white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 28 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.02, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/U-shaped blue white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/U-shaped red white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 26 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/U-shaped red white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/U-shaped yellow black (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 24 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.02, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/U-shaped yellow black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/U-shaped green leaf (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 22 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/U-shaped green leaf/{_len}" + }, + "paint": { + "text-color": "#000001", + "text-halo-color": "#ffffff", + "text-halo-width": 1 + } + }, + { + "id": "Road/label/U-shaped white green (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 20 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/U-shaped white green/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/U-shaped white black (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 18 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/U-shaped white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Secondary Hwy red white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 16 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Secondary Hwy red white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Secondary Hwy green white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 14 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 1.1, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Secondary Hwy green white (Alt)/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Secondary Hwy white black (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 12 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 14, + "layout": { + "text-size": 11, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Secondary Hwy white black (Alt)/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Shield white black (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 10 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 11, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-field": "{_name}", + "icon-image": "Road/Shield white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Shield blue white (Alt)", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 8 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 11, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-field": "{_name}", + "icon-image": "Road/Shield blue white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Octagon green white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 73 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.02, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Octagon green white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Hexagon orange black", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 63 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.03, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Hexagon orange black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Hexagon green white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 61 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.03, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Hexagon green white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Hexagon red white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 59 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.03, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Hexagon red white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Hexagon white black", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 55 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.03, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Hexagon white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Pentagon green yellow", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 53 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Pentagon green yellow/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Pentagon green white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 51 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Pentagon green white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Pentagon yellow black", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 49 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.02, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Pentagon yellow black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Pentagon blue white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 47 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.02, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Pentagon blue white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Pentagon white black", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 45 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 9.5, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.3 + ], + "text-field": "{_name}", + "icon-image": "Road/Pentagon white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Pentagon inverse white black", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 43 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.3 + ], + "text-field": "{_name}", + "icon-image": "Road/Pentagon inverse white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle green yellow", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 41 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 14, + "layout": { + "text-size": 10.5, + "icon-size": 1.3, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle green yellow/{_len}" + }, + "paint": { + "text-color": "#f5f547" + } + }, + { + "id": "Road/label/Rectangle green white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 39 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 13, + "layout": { + "text-size": 10.5, + "icon-size": 1.3, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.05, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle green white (Alt)/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle yellow black", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 37 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 1.1, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.05, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle yellow black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Hexagon blue white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 57 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.03, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Hexagon blue white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle red white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 35 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10.5, + "icon-size": 1.3, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.05, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle red white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle blue white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 33 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10.5, + "icon-size": 1.3, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle blue white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Rectangle white black", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 31 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10.5, + "icon-size": 1.25, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.05, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Rectangle white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/V-shaped white black", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 29 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/V-shaped white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/U-shaped blue white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 27 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.02, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/U-shaped blue white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/U-shaped red white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 25 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/U-shaped red white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/U-shaped yellow black", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 23 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-letter-spacing": 0.02, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/U-shaped yellow black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/U-shaped green leaf", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 21 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/U-shaped green leaf/{_len}" + }, + "paint": { + "text-color": "#000001", + "text-halo-color": "#ffffff", + "text-halo-width": 1 + } + }, + { + "id": "Road/label/U-shaped white green", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 19 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/U-shaped white green/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/U-shaped white black", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 17 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "icon-size": 0.9, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/U-shaped white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Secondary Hwy red white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 15 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Secondary Hwy red white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Secondary Hwy green white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 13 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Secondary Hwy green white/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Secondary Hwy white black", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 11 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 12, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name}", + "icon-image": "Road/Secondary Hwy white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Shield white black", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 9 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 11, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 30, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-field": "{_name}", + "icon-image": "Road/Shield white black/{_len}" + }, + "paint": { + "text-color": "#ffffff" + } + }, + { + "id": "Road/label/Shield blue white", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 7 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 12, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": { + "stops": [ + [ + 7, + 27 + ], + [ + 9, + 20 + ], + [ + 12, + 15 + ] + ] + }, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-placement": "line", + "symbol-avoid-edges": true, + "text-field": "{_name}", + "icon-image": "Road/Shield blue white/{_len}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-width": 2 + } + }, + { + "id": "Pedestrian/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Pedestrian/label", + "minzoom": 15, + "layout": { + "text-size": 9.33, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road/label/Pedestrian", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 6 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 15, + "layout": { + "text-size": 9, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road/label/Local", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 5 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 14, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 3, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road/label/Minor", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 4 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 13, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}", + "text-padding": { + "stops": [ + [ + 10, + 20 + ], + [ + 18, + 2 + ] + ] + }, + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road/label/Major, alt name", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 3 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{ _name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road/label/Major", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 2 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road/label/Freeway Motorway, alt name", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 1 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{ _name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road/label/Highway", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 75 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Road/label/Freeway Motorway", + "type": "symbol", + "source": "esri", + "source-layer": "Road/label", + "filter": [ + "all", + [ + "==", + "_label_class", + 0 + ], + [ + "!in", + "Viz", + 3 + ] + ], + "minzoom": 12, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.09, + "symbol-placement": "line", + "symbol-avoid-edges": true, + "symbol-spacing": 1000, + "text-field": "{_name_global}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "#000005", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Cemetery/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Cemetery/label", + "minzoom": 13, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Freight/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Freight/label", + "minzoom": 13, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Water and wastewater/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Water and wastewater/label", + "minzoom": 13, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Port/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Port/label", + "minzoom": 10, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Industry/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Industry/label", + "minzoom": 13, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Government/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Government/label", + "minzoom": 13, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Finance/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Finance/label", + "minzoom": 13, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Emergency/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Emergency/label", + "minzoom": 13, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Indigenous/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Indigenous/label", + "minzoom": 7, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Military/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Military/label", + "minzoom": 7, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 25, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Transportation/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Transportation/label", + "minzoom": 13, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Golf course/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Golf course/label", + "minzoom": 11, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Zoo/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Zoo/label", + "minzoom": 11, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Retail/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Retail/label", + "minzoom": 13, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Landmark/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Landmark/label", + "minzoom": 13, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Openspace or forest/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Openspace or forest/label", + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 10, + 10 + ], + [ + 13, + 13 + ] + ] + }, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + }, + "minzoom": 10 + }, + { + "id": "Park or farming/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Park or farming/label", + "minzoom": 11, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 25, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Point of interest/Park", + "type": "symbol", + "source": "esri", + "source-layer": "Point of interest", + "filter": [ + "==", + "_label_class", + 1 + ], + "minzoom": 9, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 9, + 10 + ], + [ + 13, + 13 + ] + ] + }, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.08, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Education/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Education/label", + "minzoom": 11, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Medical/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Medical/label", + "minzoom": 11, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin1 forest or park/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Admin1 forest or park/label", + "minzoom": 7, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 7, + 10 + ], + [ + 11, + 11 + ], + [ + 13, + 14 + ] + ] + }, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 25, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin0 forest or park/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Admin0 forest or park/label", + "minzoom": 7, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 7, + 10 + ], + [ + 9, + 11 + ], + [ + 13, + 14 + ] + ] + }, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 25, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Airport/label/Airport property", + "type": "symbol", + "source": "esri", + "source-layer": "Airport/label", + "minzoom": 9, + "layout": { + "text-size": 10.67, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 15, + "text-letter-spacing": 0.05, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Exit/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Exit", + "minzoom": 15, + "layout": { + "text-size": 10.5, + "icon-size": 1.2, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "text-rotation-alignment": "viewport", + "icon-rotation-alignment": "viewport", + "symbol-avoid-edges": true, + "text-offset": [ + 0, + 0.1 + ], + "text-field": "{_name_global}", + "icon-image": "Exit/Default/{_len}" + }, + "paint": { + "text-color": "#000000", + "text-halo-color": "#008c63" + } + }, + { + "id": "Building/label/Default", + "type": "symbol", + "source": "esri", + "source-layer": "Building/label", + "minzoom": 15, + "layout": { + "text-size": 10, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 20, + "text-letter-spacing": 0.08, + "symbol-avoid-edges": true, + "text-field": "{_name_global}" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5 + } + }, + { + "id": "Point of interest/Bus station", + "type": "symbol", + "source": "esri", + "source-layer": "Point of interest", + "filter": [ + "==", + "_symbol", + 2 + ], + "minzoom": 9, + "layout": { + "text-size": 10.67, + "icon-size": { + "base": 1, + "stops": [ + [ + 14, + 0.75 + ], + [ + 18, + 1.2 + ] + ] + }, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.04, + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom", + "text-offset": [ + 0, + -0.9 + ], + "text-field": "{_name_global}", + "icon-image": "Point of interest/Bus station", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5 + } + }, + { + "id": "Point of interest/Rail station", + "type": "symbol", + "source": "esri", + "source-layer": "Point of interest", + "filter": [ + "==", + "_symbol", + 3 + ], + "minzoom": 9, + "layout": { + "text-size": 10, + "icon-size": { + "base": 1, + "stops": [ + [ + 14, + 0.75 + ], + [ + 18, + 1.2 + ] + ] + }, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.05, + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom", + "text-offset": [ + 0, + -0.9 + ], + "text-field": "{_name_global}", + "icon-image": "Point of interest/Rail station", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2 + } + }, + { + "id": "Admin2 area/label/small", + "type": "symbol", + "source": "esri", + "source-layer": "Admin2 area/label", + "filter": [ + "==", + "_label_class", + 1 + ], + "minzoom": 10, + "maxzoom": 11, + "layout": { + "text-size": 11, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.5, + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin2 area/label/large", + "type": "symbol", + "source": "esri", + "source-layer": "Admin2 area/label", + "filter": [ + "==", + "_label_class", + 0 + ], + "minzoom": 10, + "maxzoom": 11, + "layout": { + "text-size": 13, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.5, + "text-justify": "left", + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin1 area/label/x small", + "type": "symbol", + "source": "esri", + "source-layer": "Admin1 area/label", + "filter": [ + "==", + "_label_class", + 5 + ], + "minzoom": 4, + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 4, + 10 + ], + [ + 10, + 11 + ] + ] + }, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.3, + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin1 area/label/small", + "type": "symbol", + "source": "esri", + "source-layer": "Admin1 area/label", + "filter": [ + "==", + "_label_class", + 4 + ], + "minzoom": 4, + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 4, + 10 + ], + [ + 10, + 11 + ] + ] + }, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.3, + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin1 area/label/medium", + "type": "symbol", + "source": "esri", + "source-layer": "Admin1 area/label", + "filter": [ + "==", + "_label_class", + 3 + ], + "minzoom": 4, + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 4, + 10 + ], + [ + 10, + 13 + ] + ] + }, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.3, + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin1 area/label/large", + "type": "symbol", + "source": "esri", + "source-layer": "Admin1 area/label", + "filter": [ + "==", + "_label_class", + 2 + ], + "minzoom": 4, + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 4, + 10 + ], + [ + 10, + 13 + ] + ] + }, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.3, + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin1 area/label/x large", + "type": "symbol", + "source": "esri", + "source-layer": "Admin1 area/label", + "filter": [ + "==", + "_label_class", + 1 + ], + "minzoom": 4, + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 4, + 10 + ], + [ + 10, + 16 + ] + ] + }, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-padding": 1, + "text-letter-spacing": 0.3, + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin1 area/label/2x large", + "type": "symbol", + "source": "esri", + "source-layer": "Admin1 area/label", + "filter": [ + "==", + "_label_class", + 0 + ], + "minzoom": 3, + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 4, + 10 + ], + [ + 10, + 16 + ] + ] + }, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.3, + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin0 point/x small", + "type": "symbol", + "source": "esri", + "source-layer": "Admin0 point", + "filter": [ + "==", + "_label_class", + 5 + ], + "minzoom": 5, + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 5, + 10 + ], + [ + 10, + 13 + ] + ] + }, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.3, + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin0 point/small", + "type": "symbol", + "source": "esri", + "source-layer": "Admin0 point", + "filter": [ + "==", + "_label_class", + 4 + ], + "minzoom": 4, + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 4, + 10 + ], + [ + 10, + 14 + ] + ] + }, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.3, + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin0 point/medium", + "type": "symbol", + "source": "esri", + "source-layer": "Admin0 point", + "filter": [ + "==", + "_label_class", + 3 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 3, + 10 + ], + [ + 10, + 16 + ] + ] + }, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 6, + "text-letter-spacing": 0.3, + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin0 point/large", + "type": "symbol", + "source": "esri", + "source-layer": "Admin0 point", + "filter": [ + "==", + "_label_class", + 2 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 2, + 10.5 + ], + [ + 10, + 16.5 + ] + ] + }, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.4, + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin0 point/x large", + "type": "symbol", + "source": "esri", + "source-layer": "Admin0 point", + "filter": [ + "==", + "_label_class", + 1 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 2, + 10.5 + ], + [ + 10, + 19 + ] + ] + }, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.4, + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Admin0 point/2x large", + "type": "symbol", + "source": "esri", + "source-layer": "Admin0 point", + "filter": [ + "==", + "_label_class", + 0 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 2, + 12 + ], + [ + 10, + 19 + ] + ] + }, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.4, + "symbol-avoid-edges": true, + "text-field": "{_name}", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + }, + { + "id": "Neighborhood", + "type": "symbol", + "source": "esri", + "source-layer": "Neighborhood", + "minzoom": 14, + "maxzoom": 18, + "layout": { + "text-size": { + "stops": [ + [ + 14, + 10 + ], + [ + 15, + 14 + ], + [ + 16, + 18 + ] + ] + }, + "text-font": [ + "Ubuntu Regular", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "symbol-avoid-edges": true, + "text-field": "{_name_global}", + "icon-image": "Neighborhood" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City large scale/town small", + "type": "symbol", + "source": "esri", + "source-layer": "City large scale", + "filter": [ + "==", + "_label_class", + 5 + ], + "minzoom": 10, + "maxzoom": 17, + "layout": { + "text-size": { + "stops": [ + [ + 10, + 10 + ], + [ + 15, + 16 + ], + [ + 17, + 20 + ] + ] + }, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "symbol-avoid-edges": true, + "text-field": "{_name_global}", + "icon-image": "City large scale" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City large scale/town large", + "type": "symbol", + "source": "esri", + "source-layer": "City large scale", + "filter": [ + "==", + "_label_class", + 4 + ], + "minzoom": 10, + "maxzoom": 16, + "layout": { + "text-size": { + "stops": [ + [ + 10, + 10.5 + ], + [ + 15, + 18 + ], + [ + 16, + 20 + ] + ] + }, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "symbol-avoid-edges": true, + "text-field": "{_name_global}", + "icon-image": "City large scale" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City large scale/small", + "type": "symbol", + "source": "esri", + "source-layer": "City large scale", + "filter": [ + "==", + "_label_class", + 3 + ], + "minzoom": 10, + "maxzoom": 15, + "layout": { + "text-size": { + "stops": [ + [ + 10, + 11 + ], + [ + 15, + 18 + ] + ] + }, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "symbol-avoid-edges": true, + "text-field": "{_name_global}", + "icon-image": "City large scale" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City large scale/medium", + "type": "symbol", + "source": "esri", + "source-layer": "City large scale", + "filter": [ + "==", + "_label_class", + 2 + ], + "minzoom": 10, + "maxzoom": 15, + "layout": { + "text-size": { + "stops": [ + [ + 10, + 12 + ], + [ + 14, + 20 + ] + ] + }, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "symbol-avoid-edges": true, + "text-field": "{_name_global}", + "icon-image": "City large scale" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City large scale/large", + "type": "symbol", + "source": "esri", + "source-layer": "City large scale", + "filter": [ + "==", + "_label_class", + 1 + ], + "minzoom": 10, + "maxzoom": 14, + "layout": { + "text-size": { + "stops": [ + [ + 10, + 13 + ], + [ + 14, + 22 + ] + ] + }, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "symbol-avoid-edges": true, + "text-field": "{_name_global}", + "icon-image": "City large scale" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City large scale/x large", + "type": "symbol", + "source": "esri", + "source-layer": "City large scale", + "filter": [ + "==", + "_label_class", + 0 + ], + "minzoom": 10, + "maxzoom": 14, + "layout": { + "text-size": { + "stops": [ + [ + 10, + 14 + ], + [ + 14, + 25 + ] + ] + }, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "symbol-avoid-edges": true, + "text-field": "{_name_global}", + "icon-image": "City large scale" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/town small non capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 17 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10, + "icon-size": 0.87, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/town small non capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/town large non capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 15 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10.67, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/town large non capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/small non capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 12 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10.67, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/small non capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/medium non capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 9 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10.67, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/medium non capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/other capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 18 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/other capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/town large other capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 14 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10.67, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/town large other capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/small other capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 11 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10.67, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/small other capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/medium other capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 8 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10.67, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/medium other capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/town small admin0 capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 16 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/town small admin0 capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/town large admin0 capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 13 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10.67, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/town large admin0 capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/small admin0 capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 10 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10.67, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/small admin0 capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/medium admin0 capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 7 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10.67, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/medium admin0 capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/large other capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 5 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10.67, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/large other capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/x large admin2 capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 2 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 12, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/x large admin2 capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/large non capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 6 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10.67, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/large non capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/large admin0 capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 4 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 10.67, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/large admin0 capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/x large non capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 3 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 12, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/x large non capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/x large admin1 capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 1 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 12, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/x large admin1 capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "City small scale/x large admin0 capital", + "type": "symbol", + "source": "esri", + "source-layer": "City small scale", + "filter": [ + "==", + "_symbol", + 0 + ], + "minzoom": 2, + "maxzoom": 10, + "layout": { + "text-size": 12, + "icon-size": 0.8, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-justify": "left", + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-anchor": "bottom-left", + "text-offset": [ + 0.13, + -0.13 + ], + "text-field": "{_name}", + "icon-image": "City small scale/x large admin0 capital" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 0.5 + } + }, + { + "id": "Continent", + "type": "symbol", + "source": "esri", + "source-layer": "Continent", + "maxzoom": 2, + "layout": { + "text-size": { + "stops": [ + [ + 0, + 9 + ], + [ + 1, + 12 + ] + ] + }, + "text-font": [ + "Ubuntu Bold", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.3, + "icon-allow-overlap": true, + "symbol-avoid-edges": true, + "text-field": "{_name_global}", + "icon-image": "Continent", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2.5 + } + }, + { + "id": "Disputed label point/Island", + "type": "symbol", + "source": "esri", + "source-layer": "Disputed label point", + "filter": [ + "all", + [ + "==", + "_label_class", + 1 + ], + [ + "in", + "DisputeID", + 0 + ] + ], + "minzoom": 6, + "layout": { + "text-size": 10.67, + "text-font": [ + "Ubuntu Italic", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.1, + "text-optional": true, + "icon-allow-overlap": true, + "text-field": "{_name}", + "icon-image": "Disputed label point" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 2, + "text-halo-blur": 2 + } + }, + { + "id": "Disputed label point/Admin0", + "type": "symbol", + "source": "esri", + "source-layer": "Disputed label point", + "filter": [ + "all", + [ + "==", + "_label_class", + 2 + ], + [ + "in", + "DisputeID", + 1021 + ] + ], + "minzoom": 2, + "layout": { + "text-size": { + "base": 1, + "stops": [ + [ + 2, + 10 + ], + [ + 10, + 15 + ] + ] + }, + "text-font": [ + "Ubuntu Medium", + "Arial Unicode MS Regular" + ], + "text-max-width": 8, + "text-letter-spacing": 0.2, + "text-optional": true, + "icon-allow-overlap": true, + "text-field": "{_name}", + "icon-image": "Disputed label point", + "text-transform": "uppercase" + }, + "paint": { + "text-color": "#ffffff", + "text-halo-color": "rgba(0,0,0,0.8)", + "text-halo-width": 1.5, + "text-halo-blur": 0.5 + } + } + ] +} diff --git a/ui-ngx/src/assets/map/openstreetmap_hybrid_reference_style.json b/ui-ngx/src/assets/map/openstreetmap_hybrid_reference_style.json index b40e5a3838..6e95f3c11c 100644 --- a/ui-ngx/src/assets/map/openstreetmap_hybrid_reference_style.json +++ b/ui-ngx/src/assets/map/openstreetmap_hybrid_reference_style.json @@ -1,6 +1,6 @@ { "version": 8, - "sprite": "https://cdn.arcgis.com/sharing/rest/content/items/f240fe360b434afc87dd989bf0c0b825/resources/sprites/sprite", + "sprite": "https://basemaps.arcgis.com/arcgis/rest/services/OpenStreetMap_v2/VectorTileServer/resources/sprites/sprite", "glyphs": "https://basemaps.arcgis.com/arcgis/rest/services/OpenStreetMap_v2/VectorTileServer/resources/fonts/{fontstack}/{range}.pbf", "sources": { "esri": { diff --git a/ui-ngx/src/assets/map/world_edition_hybrid_reference_style.json b/ui-ngx/src/assets/map/world_edition_hybrid_reference_style.json index 852d0455a0..1c978f9901 100644 --- a/ui-ngx/src/assets/map/world_edition_hybrid_reference_style.json +++ b/ui-ngx/src/assets/map/world_edition_hybrid_reference_style.json @@ -1,6 +1,6 @@ { "version": 8, - "sprite": "https://cdn.arcgis.com/sharing/rest/content/items/30d6b8271e1849cd9c3042060001f425/resources/sprites/sprite", + "sprite": "https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/resources/sprites/sprite", "glyphs": "https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/resources/fonts/{fontstack}/{range}.pbf", "sources": { "esri": { diff --git a/ui-ngx/src/typings/leaflet-extend-tb.d.ts b/ui-ngx/src/typings/leaflet-extend-tb.d.ts index c62d008878..1ea249b478 100644 --- a/ui-ngx/src/typings/leaflet-extend-tb.d.ts +++ b/ui-ngx/src/typings/leaflet-extend-tb.d.ts @@ -16,6 +16,7 @@ import { FormattedData } from '@shared/models/widget.models'; import L from 'leaflet'; +import { Map as MapLibreGLMap, MapOptions as MapLibreGLMapOptions } from 'maplibre-gl'; import { TbMapDatasource } from '@shared/models/widget/maps/map.models'; import { MatIconRegistry } from '@angular/material/icon'; @@ -61,7 +62,6 @@ declare module 'leaflet' { attributionPrefix?: string; layer: Layer; mini: Layer; - onAdd?: () => void; } interface LayersControlOptions extends SidebarPaneControlOptions { @@ -183,5 +183,26 @@ declare module 'leaflet' { namespace tileLayer { function chinaProvider(type: string, options?: TileLayerOptions): TileLayer.ChinaProvider; } + + namespace MapLibreGL { + + interface LeafletMapLibreGLMapOptions extends L.InteractiveLayerOptions, Omit { + updateInterval?: number; + padding?: number; + className?: string; + } + + class MapLibreGLLayer extends L.Layer { + constructor(options: LeafletMapLibreGLMapOptions); + getMapLibreGLMap(): MapLibreGLMap + getCanvas(): HTMLCanvasElement + getSize(): L.Point + getBounds(): L.LatLngBounds + getContainer(): HTMLDivElement + getPaneName(): string + } + + function mapLibreGLLayer(options: LeafletMapLibreGLMapOptions): MapLibreGLLayer; + } } } diff --git a/ui-ngx/yarn.lock b/ui-ngx/yarn.lock index 1423d29ee1..b3cc13904a 100644 --- a/ui-ngx/yarn.lock +++ b/ui-ngx/yarn.lock @@ -1971,21 +1971,16 @@ resolved "https://registry.yarnpkg.com/@mapbox/whoots-js/-/whoots-js-3.1.0.tgz#497c67a1cef50d1a2459ba60f315e448d2ad87fe" integrity sha512-Es6WcD0nO5l+2BOQS4uLfNPYQaNDfbot3X1XUoloz+x0mPDS3eeORZJl06HXjwBG1fOGwCRnzK88LMdxKRrd6Q== -"@maplibre/maplibre-gl-leaflet@^0.0.22": - version "0.0.22" - resolved "https://registry.yarnpkg.com/@maplibre/maplibre-gl-leaflet/-/maplibre-gl-leaflet-0.0.22.tgz#04c4d5b65f44be0962330f8b5a7cafc8c3bd2676" - integrity sha512-9p4DSPLUE5t0StXH/IcZw37/UL7Ekea4jcVdkSsb2jWI+sM3K7mYHLOnti/2wn+HqxG4jMVUHah7Xun3bs00AQ== - -"@maplibre/maplibre-gl-style-spec@^20.3.1": - version "20.4.0" - resolved "https://registry.yarnpkg.com/@maplibre/maplibre-gl-style-spec/-/maplibre-gl-style-spec-20.4.0.tgz#408339e051fb51e022b40af2235e0beb037937ea" - integrity sha512-AzBy3095fTFPjDjmWpR2w6HVRAZJ6hQZUCwk5Plz6EyfnfuQW1odeW5i2Ai47Y6TBA2hQnC+azscjBSALpaWgw== +"@maplibre/maplibre-gl-style-spec@^23.1.0": + version "23.1.0" + resolved "https://registry.yarnpkg.com/@maplibre/maplibre-gl-style-spec/-/maplibre-gl-style-spec-23.1.0.tgz#ad59731b0547ee0986ba4ccff699894dd60f0650" + integrity sha512-R6/ihEuC5KRexmKIYkWqUv84Gm+/QwsOUgHyt1yy2XqCdGdLvlBWVWIIeTZWN4NGdwmY6xDzdSGU2R9oBLNg2w== dependencies: "@mapbox/jsonlint-lines-primitives" "~2.0.2" "@mapbox/unitbezier" "^0.0.1" json-stringify-pretty-compact "^4.0.0" minimist "^1.2.8" - quickselect "^2.0.0" + quickselect "^3.0.0" rw "^1.3.3" tinyqueue "^3.0.0" @@ -2731,7 +2726,7 @@ resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-7946.0.8.tgz#30744afdb385e2945e22f3b033f897f76b1f12ca" integrity sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA== -"@types/geojson@^7946.0.14": +"@types/geojson@^7946.0.16": version "7946.0.16" resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-7946.0.16.tgz#8ebe53d69efada7044454e3305c19017d97ced2a" integrity sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg== @@ -4793,7 +4788,7 @@ domutils@^3.0.1: domelementtype "^2.3.0" domhandler "^5.0.3" -earcut@^3.0.0: +earcut@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/earcut/-/earcut-3.0.1.tgz#f60b3f671c5657cca9d3e131c5527c5dde00ef38" integrity sha512-0l1/0gOjESMeQyYaK5IDiPNvFeu93Z/cO0TjZh9eZ1vyCtZnA7KMZ8rQggpsJHIbGSdrqYq9OhuveadOVHCshw== @@ -6933,10 +6928,10 @@ make-plural@^7.0.0: resolved "https://registry.yarnpkg.com/make-plural/-/make-plural-7.4.0.tgz#fa6990dd550dea4de6b20163f74e5ed83d8a8d6d" integrity sha512-4/gC9KVNTV6pvYg2gFeQYTW3mWaoJt7WZE5vrp1KnQDgW92JtYZnzmZT81oj/dUTqAIu0ufI2x3dkgu3bB1tYg== -maplibre-gl@^4.7.1: - version "4.7.1" - resolved "https://registry.yarnpkg.com/maplibre-gl/-/maplibre-gl-4.7.1.tgz#06a524438ee2aafbe8bcd91002a4e01468ea5486" - integrity sha512-lgL7XpIwsgICiL82ITplfS7IGwrB1OJIw/pCvprDp2dhmSSEBgmPzYRvwYYYvJGJD7fxUv1Tvpih4nZ6VrLuaA== +maplibre-gl@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/maplibre-gl/-/maplibre-gl-5.2.0.tgz#e3cdb66c82232cffbe149b032776484722caee4e" + integrity sha512-9zZKD0M80qtDsqBet+EDuAhoCeA/cnAuZAA0p3hcGKGbyjM/SH+R6wQvnBEgvJz9UhDynnkoKdUwhI+fUkHoXQ== dependencies: "@mapbox/geojson-rewind" "^0.5.2" "@mapbox/jsonlint-lines-primitives" "^2.0.2" @@ -6945,14 +6940,14 @@ maplibre-gl@^4.7.1: "@mapbox/unitbezier" "^0.0.1" "@mapbox/vector-tile" "^1.3.1" "@mapbox/whoots-js" "^3.1.0" - "@maplibre/maplibre-gl-style-spec" "^20.3.1" - "@types/geojson" "^7946.0.14" + "@maplibre/maplibre-gl-style-spec" "^23.1.0" + "@types/geojson" "^7946.0.16" "@types/geojson-vt" "3.2.5" "@types/mapbox__point-geometry" "^0.1.4" "@types/mapbox__vector-tile" "^1.3.4" "@types/pbf" "^3.0.5" "@types/supercluster" "^7.1.3" - earcut "^3.0.0" + earcut "^3.0.1" geojson-vt "^4.0.2" gl-matrix "^3.4.3" global-prefix "^4.0.0"