summaryrefslogtreecommitdiff
path: root/raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/Common/settings/SettingsStore.js
diff options
context:
space:
mode:
Diffstat (limited to 'raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/Common/settings/SettingsStore.js')
-rw-r--r--raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/Common/settings/SettingsStore.js275
1 files changed, 0 insertions, 275 deletions
diff --git a/raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/Common/settings/SettingsStore.js b/raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/Common/settings/SettingsStore.js
deleted file mode 100644
index f88bb03..0000000
--- a/raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/Common/settings/SettingsStore.js
+++ /dev/null
@@ -1,275 +0,0 @@
-.pragma library
-
- .import "./SettingsSpec.js" as SpecModule
-
-function parse(root, jsonObj) {
- var SPEC = SpecModule.SPEC;
-
- if (!jsonObj) return;
-
- for (var k in SPEC) {
- if (k === "pluginSettings") continue;
- // Runtime-only keys are never in the JSON; resetting them here
- // would wipe values set by detection processes on every reload.
- if (SPEC[k].persist === false) continue;
- if (!(k in jsonObj)) {
- root[k] = SPEC[k].def;
- }
- }
-
- for (var k in jsonObj) {
- if (!SPEC[k]) continue;
- if (k === "pluginSettings") continue;
- var raw = jsonObj[k];
- var spec = SPEC[k];
- var coerce = spec.coerce;
- root[k] = coerce ? (coerce(raw) !== undefined ? coerce(raw) : root[k]) : raw;
- }
-}
-
-function toJson(root) {
- var SPEC = SpecModule.SPEC;
- var out = {};
- for (var k in SPEC) {
- if (SPEC[k].persist === false) continue;
- if (k === "pluginSettings") continue;
- out[k] = root[k];
- }
- out.configVersion = root.settingsConfigVersion;
- return out;
-}
-
-function migrateToVersion(obj, targetVersion) {
- if (!obj) return null;
-
- var settings = JSON.parse(JSON.stringify(obj));
- var currentVersion = settings.configVersion || 0;
-
- if (currentVersion >= targetVersion) {
- return null;
- }
-
- if (currentVersion < 2) {
- console.info("Migrating settings from version", currentVersion, "to version 2");
-
- if (settings.barConfigs === undefined) {
- var position = 0;
- if (settings.dankBarAtBottom !== undefined || settings.topBarAtBottom !== undefined) {
- var atBottom = settings.dankBarAtBottom !== undefined ? settings.dankBarAtBottom : settings.topBarAtBottom;
- position = atBottom ? 1 : 0;
- } else if (settings.dankBarPosition !== undefined) {
- position = settings.dankBarPosition;
- }
-
- var defaultConfig = {
- id: "default",
- name: "Main Bar",
- enabled: true,
- position: position,
- screenPreferences: ["all"],
- showOnLastDisplay: true,
- leftWidgets: settings.dankBarLeftWidgets || ["launcherButton", "workspaceSwitcher", "focusedWindow"],
- centerWidgets: settings.dankBarCenterWidgets || ["music", "clock", "weather"],
- rightWidgets: settings.dankBarRightWidgets || ["systemTray", "clipboard", "cpuUsage", "memUsage", "notificationButton", "battery", "controlCenterButton"],
- spacing: settings.dankBarSpacing !== undefined ? settings.dankBarSpacing : 4,
- innerPadding: settings.dankBarInnerPadding !== undefined ? settings.dankBarInnerPadding : 4,
- bottomGap: settings.dankBarBottomGap !== undefined ? settings.dankBarBottomGap : 0,
- transparency: settings.dankBarTransparency !== undefined ? settings.dankBarTransparency : 1.0,
- widgetTransparency: settings.dankBarWidgetTransparency !== undefined ? settings.dankBarWidgetTransparency : 1.0,
- squareCorners: settings.dankBarSquareCorners !== undefined ? settings.dankBarSquareCorners : false,
- noBackground: settings.dankBarNoBackground !== undefined ? settings.dankBarNoBackground : false,
- gothCornersEnabled: settings.dankBarGothCornersEnabled !== undefined ? settings.dankBarGothCornersEnabled : false,
- gothCornerRadiusOverride: settings.dankBarGothCornerRadiusOverride !== undefined ? settings.dankBarGothCornerRadiusOverride : false,
- gothCornerRadiusValue: settings.dankBarGothCornerRadiusValue !== undefined ? settings.dankBarGothCornerRadiusValue : 12,
- borderEnabled: settings.dankBarBorderEnabled !== undefined ? settings.dankBarBorderEnabled : false,
- borderColor: settings.dankBarBorderColor || "surfaceText",
- borderOpacity: settings.dankBarBorderOpacity !== undefined ? settings.dankBarBorderOpacity : 1.0,
- borderThickness: settings.dankBarBorderThickness !== undefined ? settings.dankBarBorderThickness : 1,
- fontScale: settings.dankBarFontScale !== undefined ? settings.dankBarFontScale : 1.0,
- autoHide: settings.dankBarAutoHide !== undefined ? settings.dankBarAutoHide : false,
- autoHideDelay: settings.dankBarAutoHideDelay !== undefined ? settings.dankBarAutoHideDelay : 250,
- openOnOverview: settings.dankBarOpenOnOverview !== undefined ? settings.dankBarOpenOnOverview : false,
- visible: settings.dankBarVisible !== undefined ? settings.dankBarVisible : true,
- popupGapsAuto: settings.popupGapsAuto !== undefined ? settings.popupGapsAuto : true,
- popupGapsManual: settings.popupGapsManual !== undefined ? settings.popupGapsManual : 4
- };
-
- settings.barConfigs = [defaultConfig];
-
- var legacyKeys = [
- "dankBarLeftWidgets", "dankBarCenterWidgets", "dankBarRightWidgets",
- "dankBarWidgetOrder", "dankBarAutoHide", "dankBarAutoHideDelay",
- "dankBarOpenOnOverview", "dankBarVisible", "dankBarSpacing",
- "dankBarBottomGap", "dankBarInnerPadding", "dankBarPosition",
- "dankBarSquareCorners", "dankBarNoBackground", "dankBarGothCornersEnabled",
- "dankBarGothCornerRadiusOverride", "dankBarGothCornerRadiusValue",
- "dankBarBorderEnabled", "dankBarBorderColor", "dankBarBorderOpacity",
- "dankBarBorderThickness", "popupGapsAuto", "popupGapsManual",
- "dankBarAtBottom", "topBarAtBottom", "dankBarTransparency", "dankBarWidgetTransparency"
- ];
-
- for (var i = 0; i < legacyKeys.length; i++) {
- delete settings[legacyKeys[i]];
- }
-
- console.info("Migrated single bar settings to barConfigs");
- }
-
- settings.configVersion = 2;
- }
-
- if (currentVersion < 3) {
- console.info("Migrating settings from version", currentVersion, "to version 3");
- console.info("Per-widget controlCenterButton config now supported via widgetData properties");
- settings.configVersion = 3;
- }
-
- if (currentVersion < 4) {
- console.info("Migrating settings from version", currentVersion, "to version 4");
- console.info("Migrating desktop widgets to unified desktopWidgetInstances");
-
- var instances = [];
-
- if (settings.desktopClockEnabled) {
- var clockPositions = {};
- if (settings.desktopClockX !== undefined && settings.desktopClockX >= 0) {
- clockPositions["default"] = {
- x: settings.desktopClockX,
- y: settings.desktopClockY,
- width: settings.desktopClockWidth || 280,
- height: settings.desktopClockHeight || 180
- };
- }
-
- instances.push({
- id: "dw_clock_primary",
- widgetType: "desktopClock",
- name: "Desktop Clock",
- enabled: true,
- config: {
- style: settings.desktopClockStyle || "analog",
- transparency: settings.desktopClockTransparency !== undefined ? settings.desktopClockTransparency : 0.8,
- colorMode: settings.desktopClockColorMode || "primary",
- customColor: settings.desktopClockCustomColor || "#ffffff",
- showDate: settings.desktopClockShowDate !== false,
- showAnalogNumbers: settings.desktopClockShowAnalogNumbers || false,
- showAnalogSeconds: settings.desktopClockShowAnalogSeconds !== false,
- displayPreferences: settings.desktopClockDisplayPreferences || ["all"]
- },
- positions: clockPositions
- });
- }
-
- if (settings.systemMonitorEnabled) {
- var sysmonPositions = {};
- if (settings.systemMonitorX !== undefined && settings.systemMonitorX >= 0) {
- sysmonPositions["default"] = {
- x: settings.systemMonitorX,
- y: settings.systemMonitorY,
- width: settings.systemMonitorWidth || 320,
- height: settings.systemMonitorHeight || 480
- };
- }
-
- instances.push({
- id: "dw_sysmon_primary",
- widgetType: "systemMonitor",
- name: "System Monitor",
- enabled: true,
- config: {
- showHeader: settings.systemMonitorShowHeader !== false,
- transparency: settings.systemMonitorTransparency !== undefined ? settings.systemMonitorTransparency : 0.8,
- colorMode: settings.systemMonitorColorMode || "primary",
- customColor: settings.systemMonitorCustomColor || "#ffffff",
- showCpu: settings.systemMonitorShowCpu !== false,
- showCpuGraph: settings.systemMonitorShowCpuGraph !== false,
- showCpuTemp: settings.systemMonitorShowCpuTemp !== false,
- showGpuTemp: settings.systemMonitorShowGpuTemp || false,
- gpuPciId: settings.systemMonitorGpuPciId || "",
- showMemory: settings.systemMonitorShowMemory !== false,
- showMemoryGraph: settings.systemMonitorShowMemoryGraph !== false,
- showNetwork: settings.systemMonitorShowNetwork !== false,
- showNetworkGraph: settings.systemMonitorShowNetworkGraph !== false,
- showDisk: settings.systemMonitorShowDisk !== false,
- showTopProcesses: settings.systemMonitorShowTopProcesses || false,
- topProcessCount: settings.systemMonitorTopProcessCount || 3,
- topProcessSortBy: settings.systemMonitorTopProcessSortBy || "cpu",
- layoutMode: settings.systemMonitorLayoutMode || "auto",
- graphInterval: settings.systemMonitorGraphInterval || 60,
- displayPreferences: settings.systemMonitorDisplayPreferences || ["all"]
- },
- positions: sysmonPositions
- });
- }
-
- var variants = settings.systemMonitorVariants || [];
- for (var i = 0; i < variants.length; i++) {
- var v = variants[i];
- instances.push({
- id: v.id,
- widgetType: "systemMonitor",
- name: v.name || ("System Monitor " + (i + 2)),
- enabled: true,
- config: v.config || {},
- positions: v.positions || {}
- });
- }
-
- settings.desktopWidgetInstances = instances;
- settings.configVersion = 4;
- }
-
- if (currentVersion < 5) {
- console.info("Migrating settings from version", currentVersion, "to version 5");
- console.info("Moving sensitive data (weather location, coordinates) to session.json");
-
- delete settings.weatherLocation;
- delete settings.weatherCoordinates;
-
- settings.configVersion = 5;
- }
-
- if (currentVersion < 6) {
- console.info("Migrating settings from version", currentVersion, "to version 6");
-
- if (settings.barElevationEnabled === undefined) {
- var legacyBars = Array.isArray(settings.barConfigs) ? settings.barConfigs : [];
- var hadLegacyBarShadowEnabled = false;
- for (var j = 0; j < legacyBars.length; j++) {
- var legacyIntensity = Number(legacyBars[j] && legacyBars[j].shadowIntensity);
- if (!isNaN(legacyIntensity) && legacyIntensity > 0) {
- hadLegacyBarShadowEnabled = true;
- break;
- }
- }
- settings.barElevationEnabled = hadLegacyBarShadowEnabled;
- }
-
- settings.configVersion = 6;
- }
-
- return settings;
-}
-
-function cleanup(fileText) {
- var getValidKeys = SpecModule.getValidKeys;
- if (!fileText || !fileText.trim()) return;
-
- try {
- var settings = JSON.parse(fileText);
- var validKeys = getValidKeys();
- var needsSave = false;
-
- for (var key in settings) {
- if (validKeys.indexOf(key) < 0) {
- delete settings[key];
- needsSave = true;
- }
- }
-
- return needsSave ? JSON.stringify(settings, null, 2) : null;
- } catch (e) {
- console.warn("SettingsData: Failed to cleanup unused keys:", e.message);
- return null;
- }
-}