Files
CT/src/ViewModel/Global/.settingsViewModel.ts.swp
T

37 lines
36 KiB
Plaintext
Raw Normal View History

2026-09-17 20:03:55 +02:00
b0VIM 9.0m+¬jZ“Igitlocalhost~git/storage/VDMDI/Comms/src/ViewModel/Global/settingsViewModel.tsutf-8
3210#"! U
Û
�
F



è ¬ … z s r L ! ïèç­‡€sT-,×¼¯g])"!ûõôèΕŽ�f3ÜÒËʾ~cbÕ…Aéªt0öÂvu`;À SettingsViewModel.generateThemeMedia().addEventListener("change", () => }); this.applyTheme(); this.theme.subscribe(() => { // set theme }); this.coreViewModel.settingsModel.setTheme(newValue); this.theme.subscribeSilent((newValue) => { }); this.requiresReload.value = true; this.coreViewModel.settingsModel.setLanguage(newValue); this.language.subscribeSilent((newValue) => { this.firstDayOfWeek.subscribe(this.setFirstDayofWeek); // subscriptions this.theme.value = coreViewModel.settingsModel.theme; this.language.value = coreViewModel.settingsModel.language; this.firstDayOfWeek.value = coreViewModel.settingsModel.firstDayOfWeek; this.usernameInput.value = coreViewModel.settingsModel.username; this.username.value = coreViewModel.settingsModel.username; super("settings"); constructor(public readonly coreViewModel: CoreViewModel) { // init }; } window.location.reload(); if (this.requiresReload.value == true) { this.isShowingSettingsModal.value = false; handleContextClose = (): void => { }; this.coreViewModel.closeContext(this.contextId); close = (): void => { // exit } applyDynamicTheme = (): void => { }; document.body.setAttribute("theme", theme); } theme = SettingsViewModel.getSystemTheme( return; return; this.setScene(scene); const scene = this.selectDynamicScene(); if (theme == ThemeSettings.Dynamic) { let theme: string = this.theme.value; applyTheme = (): void => { // view }; this.selectedModalPage.value = page; showModalPage = (page: SettingsModalPages): void => { }; this.isShowingSettingsModal.value = true; this.coreViewModel.context = this; showSettingsModal = (): void => { }; ); this.firstDayOfWeek.value, this.coreViewModel.settingsModel.setFirstDayOfWeek( setFirstDayofWeek = (): void => { }; this.usernameInput.callSubscriptions(); this.username.value = this.coreViewModel.settingsModel.username; this.coreViewModel.settingsModel.setName(this.usernameInput.value); setName = (): void => { // methods ); this.coreViewModel.settingsModel.username, this.usernameInput.value == this.usernameInput.value == "" || () => [this.usernameInput], cannotSetName: React.State<boolean> = React.createProxyState( // guards ); ThemeSettings.System, theme: React.State<ThemeSettings | string> = new React.State<ThemeSettings | string>( ); Languages.English, language: React.State<Languages | string> = new React.State<Languages | string>( firstDayOfWeek: React.State<string> = new React.State("0"); requiresReload = new React.State<boolean>(false); new React.State<SettingsModalPages | undefined>(undefined); selectedModalPage: React.State<SettingsModalPages | undefined> = isShowingSettingsModal: React.State<boolean> = new React.State(false); usernameInput: React.State<string> = new React.State(""); username: React.State<string> = new React.State(""); // stateexport default class SettingsViewModel extends Context {import { Languages, ThemeSettings } from "../../Model/Global/settingsModel";import { CommonKeys } from "../../View/keystrokes";import CoreViewModel, { Context } from "./coreViewModel";import * as React from "bloatless-react";adc ƒ
BúùÇŒ†…_(ÞØÖÕ´¤™’��o]K3! ë
é
¸
©
š
…
w
b
?
=
ü í × É ´ � Ž _ P A +   ä â ­ ž � y k V 2 0 þ
ð
á
Ë
½
¨
…
ƒ
} baseTheme: The} baseTheme: The} baseTheme: The} baseTheme: The} baseTheme: The} baseTheme: The}}}}}}}}}}} baseTheme: ThemeSettings.Dark, brightness: 0.4, luma: 50, saturation : 100, hue2: 260, hue1: 20,export const DynamicSceneSunset: DynamicScene = {} baseTheme: ThemeSettings.Light, brightness: 0.8, luma: 50, saturation : 100, hue2: 220, hue1: 195,export const DynamicSceneAfternoon: DynamicScene = {} baseTheme: ThemeSettings.Light, brightness: 1.4, luma: 70, saturation : 100, hue2: 180, hue1: 190,export const DynamicSceneDay: DynamicScene = {} baseTheme: ThemeSettings.Light, brightness: 1.2, luma: 50, saturation : 100, hue2: 190, hue1: 45,export const DynamicSceneSunrise: DynamicScene = {} baseTheme: ThemeSettings.Dark, brightness: 0.4, luma: 25, saturation : 50, hue2: 220, hue1: 215,export const DynamicSceneNight: DynamicScene = {} baseTheme: ThemeSettings; brightness: number; luma: number; saturation: number; hue2: number; hue1: number;export interface DynamicScene {} Info, Regional, Appearance,export enum SettingsModalPages {} } return media.matches == true ? ThemeSettings.Dark : ThemeSettings.Light; const media = SettingsViewModel.generateThemeMedia(); static getSystemTheme(): string { } return window.matchMedia("(prefers-color-scheme: dark)"); static generateThemeMedia(): MediaQueryList { }ad�±ÿð±
²
�
d
@


Ñ ® ƒ _ < , ýÓ¯‹}T‡xrqAáàŽ.+ð­¬uonbH绑rohg[ɇ>ÊÉ·Pìç»�|{mO72é÷ãÕÀ²¤ SettingsViewModel.generateThemeMedia().addEventListener("change", () => }); this.applyTheme(); this.theme.subscribe(() => { // set theme }); this.coreViewModel.settingsModel.setTheme(newValue); this.theme.subscribeSilent((newValue) => { }); this.requiresReload.value = true; this.coreViewModel.settingsModel.setLanguage(newValue); this.language.subscribeSilent((newValue) => { this.firstDayOfWeek.subscribe(this.setFirstDayofWeek); // subscriptions this.theme.value = coreViewModel.settingsModel.theme; this.language.value = coreViewModel.settingsModel.language; this.firstDayOfWeek.value = coreViewModel.settingsModel.firstDayOfWeek; this.usernameInput.value = coreViewModel.settingsModel.username; this.username.value = coreViewModel.settingsModel.username; super("settings"); constructor(public readonly coreViewModel: CoreViewModel) { // init }; } window.location.reload(); if (this.requiresReload.value == true) { this.isShowingSettingsModal.value = false; handleContextClose = (): void => { }; this.coreViewModel.closeContext(this.contextId); close = (): void => { // exit } document.body.setAttribute("theme", scene.baseTheme); setSkyColor(2, scene.hue2, scene.saturation - 10, scene.luma-10); setSkyColor(1, scene.hue1, scene.saturation, scene.luma); } document.body.style.setProperty(`--sky-${tone}`, `hsl(${hue}, ${saturation}%, ${luma}%)`); function setSkyColor(tone: 1|2, hue: number, saturation: number, luma: number) { document.body.style.setProperty("--backdrop-grass-filter", `brightness(${scene.brightness})`); setScene = (sce setSkyColor(1, hue1, saturation, luma); setSkyColor(1 setSkyColor(1, hue1, saturation, lu setSkyColor(1, hue1, saturation, lu setSkyColor(1, hue1, saturation, luma); setSkyColor(1, hue1, satu s setSkyColor(1, hue setSkyColor(1, setSkyColor(1, hue1, saturation, l setSkyColor(1, hue1, saturation, lu setSkyColor(1, hue1, saturation, luma); setSkyColor(1, hue1, saturation, l setSkyColor(1, hue1, saturation, luma); setSkyColor(1, hue1, setSkyColor setSkyColor(1, hue1, saturation, lu setSkyColor(1, hue1, saturation, lu setSkyColor(1, hue1, saturation, luma); setSkyColor(1, hue1, saturation, l setSkyColor(1, hue1, saturation, luma); setSkyColor(1, hue1, sat setSkyColor(1, hu setSkyColor(1, hue1, saturation, lu setSkyColor(1, hue1, saturation, lu setSkyColor(1, hue1, saturation, luma); setSkyColor(1, hue1, saturation, l setSkyC setSkyColor(1, setSkyColor(1, hue1, saturation, l setSkyColor(1, hue1, saturation, lu setS setSkyColor(1, hue1, saturation, luma);7