UNPKG

@nova-ui/bits

Version:

SolarWinds Nova Framework

43 lines (42 loc) 1.81 kB
import { RendererFactory2 } from "@angular/core"; import { ActivatedRoute, Router } from "@angular/router"; import { BehaviorSubject } from "rxjs"; import * as i0 from "@angular/core"; /** @dynamic */ export declare class ThemeSwitchService { private rendererFactory; private router; private _route; private document; /** @ignore BehaviorSubject indicating whether we should display theme switcher */ showThemeSwitcherSubject: BehaviorSubject<boolean>; /** BehaviorSubject indicating whether dark mode is enabled */ isDarkModeEnabledSubject: BehaviorSubject<boolean | null>; /** Should route be refreshed after theme switching */ withRefreshRoute: boolean; /** Keep information about preferred dark color scheme on OS */ private darkThemePreference; private renderer; constructor(rendererFactory: RendererFactory2, router: Router, _route: ActivatedRoute, document: Document); /** * Use this method to manually toggle your app between light and dark theme * * @param isDarkModeEnabled Use true for dark theme and false for light theme */ setDarkTheme(isDarkModeEnabled: boolean): void; /** * Use this method to configure the service to synchronize your app's theme with the user's * light/dark mode system preference */ enableColorSchemePreferenceHandling(): void; /** * Use this method to disable synchronization of your app's theme with the user's light/dark mode * system preference */ disableColorSchemePreferenceHandling(): void; private darkModePreferenceHandler; private reInitRoute; static ɵfac: i0.ɵɵFactoryDeclaration<ThemeSwitchService, never>; static ɵprov: i0.ɵɵInjectableDeclaration<ThemeSwitchService>; } export default ThemeSwitchService;