Merge branch 'main' into main

This commit is contained in:
sageTheDm 2024-10-03 11:38:13 +02:00
commit 15d852c11d

View file

@ -2,35 +2,34 @@
// Method to export localStorage to a JSON object // Method to export localStorage to a JSON object
export function exportSettings(): string { export function exportSettings(): string {
const settings: { [key: string]: any } = {}; const settings: { [key: string]: any } = {};
// Loop through all keys in localStorage and add them to the settings object // Loop through all keys in localStorage and add them to the settings object
for (let i = 0; i < localStorage.length; i++) { for (let i = 0; i < localStorage.length; i++) {
const key = localStorage.key(i); const key = localStorage.key(i);
if (key) { if (key) {
settings[key] = localStorage.getItem(key); if (key !== "accountName" && key !== "accountPassword" && key !== "accountEmail") {
} settings[key] = localStorage.getItem(key);
} }
}
}
// Convert settings object to JSON string // Convert settings object to JSON string
return JSON.stringify(settings, null, 2); return JSON.stringify(settings, null, 2);
} }
// Method to import settings from a JSON object, clearing old localStorage // Method to import settings from a JSON object, clearing old localStorage
export function importSettings(jsonData: string): void { export function importSettings(jsonData: string): void {
try { try {
const parsedSettings = JSON.parse(jsonData); const parsedSettings = JSON.parse(jsonData);
// Clear the current localStorage // Loop through parsed settings and save them in localStorage
localStorage.clear(); Object.keys(parsedSettings).forEach((key) => {
localStorage.setItem(key, parsedSettings[key]);
});
// Loop through parsed settings and save them in localStorage console.log("Settings imported successfully!");
Object.keys(parsedSettings).forEach((key) => { } catch (error) {
localStorage.setItem(key, parsedSettings[key]); console.error("Invalid JSON data:", error);
}); }
console.log("Settings imported successfully!");
} catch (error) {
console.error("Invalid JSON data:", error);
}
} }