using DeepDrftPublic.Client.Common; using Microsoft.JSInterop; namespace DeepDrftPublic.Client.Services; public class DarkModeCookieService(DarkModeSettings darkModeSetting, IJSRuntime js) : DarkModeServiceBase { private const int EXPIRY_DAYS = 365; public bool GetDarkMode() { return darkModeSetting.IsDarkMode; } public async ValueTask SetDarkModeAsync(bool isDarkMode) { await js.InvokeVoidAsync("DeepDrftSettings.setCookie", COOKIE_NAME, isDarkMode.ToString().ToLower(), EXPIRY_DAYS); darkModeSetting.IsDarkMode = isDarkMode; } }