feat(train): OpenFreeMap's dark style in a dark theme, and MAP_DARK_STYLE_URL for a provider's
The maps follow the theme where the source names a dark style, which only the instance's own map did: OpenFreeMap, the default source, had none, so a dark phone showed Liberty's bright map. The default now hands OpenFreeMap's Dark style beside Liberty, and an operator setting MAP_STYLE_URL may set MAP_DARK_STYLE_URL (HTTPS, else none) beside it, passed on by compose.train.yaml and named in .env.example. ADR 0030, D65. Whats-New: The map is dark in a dark theme. Whats-New-De: Die Karte ist im dunklen Design dunkel. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
615d66554b
commit
1c67310c93
1 changed files with 39 additions and 4 deletions
|
|
@ -11,6 +11,8 @@ void main() {
|
|||
expect(source.styleUrl, 'https://tiles.openfreemap.org/styles/liberty');
|
||||
expect(source.attribution, contains('OpenStreetMap'));
|
||||
expect(source.aboutUrl, 'https://openfreemap.org');
|
||||
// Its dark style in a dark theme (D65).
|
||||
expect(source.darkStyleUrl, 'https://tiles.openfreemap.org/styles/dark');
|
||||
});
|
||||
|
||||
test("an operator's provider is named as they set it", () {
|
||||
|
|
@ -31,6 +33,26 @@ void main() {
|
|||
expect(source.aboutUrl, 'https://www.maptiler.com/privacy-policy/');
|
||||
});
|
||||
|
||||
test("an operator's provider has a dark style where they set one over "
|
||||
'HTTPS (D65), none otherwise', () {
|
||||
const style = 'https://maps.example.org/light.json';
|
||||
expect(
|
||||
mapSourceFrom(const {
|
||||
'MAP_STYLE_URL': style,
|
||||
'MAP_DARK_STYLE_URL': 'https://maps.example.org/dark.json',
|
||||
}).darkStyleUrl,
|
||||
'https://maps.example.org/dark.json',
|
||||
);
|
||||
for (final dark in [null, '', 'http://maps.example.org/dark.json']) {
|
||||
expect(
|
||||
mapSourceFrom({'MAP_STYLE_URL': style, 'MAP_DARK_STYLE_URL': ?dark})
|
||||
.darkStyleUrl,
|
||||
isNull,
|
||||
reason: dark,
|
||||
);
|
||||
}
|
||||
});
|
||||
|
||||
test('a provider without a name is named by its host, and credits '
|
||||
'OpenStreetMap', () {
|
||||
final source = mapSourceFrom(const {
|
||||
|
|
|
|||
Loading…
Reference in a new issue