💄 toggle dark: if default tile_layer, switch tile_layer to dark
This commit is contained in:
parent
56b1d008f0
commit
a0d2ce1dc7
@ -864,12 +864,34 @@ export class DashboardComponent implements OnInit, AfterViewInit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
toggleDarkMode() {
|
toggleDarkMode() {
|
||||||
|
if (!this.settings) return;
|
||||||
|
|
||||||
|
let data: Partial<Settings> = { mode_dark: this.isDarkMode };
|
||||||
|
// If user uses default tile, we also update tile_layer to dark/voyager
|
||||||
|
if (
|
||||||
|
!this.settings.mode_dark &&
|
||||||
|
this.settings.tile_layer == 'https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png'
|
||||||
|
)
|
||||||
|
data.tile_layer = 'https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png';
|
||||||
|
else if (
|
||||||
|
this.settings.mode_dark &&
|
||||||
|
this.settings.tile_layer == 'https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png'
|
||||||
|
)
|
||||||
|
data.tile_layer = 'https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png';
|
||||||
|
|
||||||
this.apiService
|
this.apiService
|
||||||
.putSettings({ mode_dark: this.isDarkMode })
|
.putSettings(data)
|
||||||
.pipe(take(1))
|
.pipe(take(1))
|
||||||
.subscribe({
|
.subscribe({
|
||||||
next: (_) => {
|
next: (settings) => {
|
||||||
this.utilsService.toggleDarkMode();
|
this.utilsService.toggleDarkMode();
|
||||||
|
const refreshMap = this.settings?.tile_layer != settings.tile_layer;
|
||||||
|
this.settings = settings;
|
||||||
|
if (refreshMap) {
|
||||||
|
this.map?.remove();
|
||||||
|
this.initMap();
|
||||||
|
this.updateMarkersAndClusters();
|
||||||
|
}
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user