Prayer map without a key: crisp rose borders and light mixed-case country names, as on the reference

This commit is contained in:
Doxa Maps 2026-09-27 02:20:56 +00:00
parent d677a36a83
commit 053bdb41b1

View file

@ -648,8 +648,17 @@ const KEYLESS_NIGHT_PAINT = [
{ layer: 'building', prop: 'fill-color', value: 'hsla(215,30%,15%,0.65)' },
{ layer: 'boundary_country_z0-4', prop: 'line-color', value: '#c95d74' },
{ layer: 'boundary_country_z5-', prop: 'line-color', value: '#c95d74' },
{ layer: 'boundary_country_z0-4', prop: 'line-opacity', value: 0.75 },
{ layer: 'boundary_country_z5-', prop: 'line-opacity', value: 0.75 },
// Crisp and opaque: at 0.75 over fiord's blur the rose read as a faint mauve (#5b4659 against
// the reference #934f66, rega's side-by-side).
{ layer: 'boundary_country_z0-4', prop: 'line-opacity', value: 1 },
{ layer: 'boundary_country_z5-', prop: 'line-opacity', value: 1 },
{ layer: 'boundary_country_z0-4', prop: 'line-blur', value: 0 },
{ layer: 'boundary_country_z5-', prop: 'line-blur', value: 0 },
// Country names light over a dark halo, as on the reference (fiord's are grey-blue).
...['place_country_major', 'place_country_minor', 'place_country_other'].flatMap((layer) => [
{ layer, prop: 'text-color', value: '#dde1e7' },
{ layer, prop: 'text-halo-color', value: 'rgba(3,17,45,0.85)' },
]),
{ layer: 'boundary_state', prop: 'line-color', value: 'hsla(345,45%,60%,0.3)' },
]
// MapLibre only (it has no Standard config to set, the same test useMapTheme uses), and only on
@ -657,6 +666,11 @@ const KEYLESS_NIGHT_PAINT = [
function paintKeylessNight(m) {
if (!m || typeof m.setConfigProperty === 'function' || !isDarkBasemap.value) return
applyStylePaint(m, KEYLESS_NIGHT_PAINT)
// fiord writes country names in capitals; the reference is mixed case. Layout, not paint, so it
// is not in the list above; the same skip-if-absent rule applies.
for (const id of ['place_country_major', 'place_country_minor', 'place_country_other']) {
try { if (m.getLayer(id)) m.setLayoutProperty(id, 'text-transform', 'none') } catch (_) {}
}
}
// SEAMLESS theme: the basemap lightPreset follows uiStore.theme reactively. NO setStyle
// reload → pins/glow never wiped, no flash, instant toggle.