mirror of
https://github.com/alam00000/bentopdf.git
synced 2026-11-11 17:23:37 +01:00
Implement safe storage utility and update i18n handling to use it
This commit is contained in:
1 parent
e1a4a31458
commit
706e74f084
4 files changed
+104
-13
No files matched your search
+12
-10
@@ -22,6 +22,11 @@ import {
|
||||
isToolDisabled,
|
||||
isCurrentPageDisabled,
|
||||
} from './utils/disabled-tools.js';
|
||||
import {
|
||||
getStoredItem,
|
||||
setStoredItem,
|
||||
removeStoredItem,
|
||||
} from './utils/safe-storage.js';
|
||||
declare const __BRAND_NAME__: string;
|
||||
|
||||
const init = async () => {
|
||||
@@ -290,17 +295,14 @@ const init = async () => {
|
||||
|
||||
let collapsedCategories: string[] = [];
|
||||
try {
|
||||
const stored = localStorage.getItem('collapsedCategories');
|
||||
const stored = getStoredItem('collapsedCategories');
|
||||
if (stored) collapsedCategories = JSON.parse(stored);
|
||||
} catch {
|
||||
localStorage.removeItem('collapsedCategories');
|
||||
removeStoredItem('collapsedCategories');
|
||||
}
|
||||
|
||||
function saveCollapsedCategories() {
|
||||
localStorage.setItem(
|
||||
'collapsedCategories',
|
||||
JSON.stringify(collapsedCategories)
|
||||
);
|
||||
setStoredItem('collapsedCategories', JSON.stringify(collapsedCategories));
|
||||
}
|
||||
|
||||
const filteredCategories = categories
|
||||
@@ -615,7 +617,7 @@ const init = async () => {
|
||||
) as HTMLInputElement;
|
||||
const toolInterface = document.getElementById('tool-interface');
|
||||
|
||||
const savedFullWidth = localStorage.getItem('fullWidthMode') !== 'false';
|
||||
const savedFullWidth = getStoredItem('fullWidthMode') !== 'false';
|
||||
if (fullWidthToggle) {
|
||||
fullWidthToggle.checked = savedFullWidth;
|
||||
applyFullWidthMode(savedFullWidth);
|
||||
@@ -652,7 +654,7 @@ const init = async () => {
|
||||
if (fullWidthToggle) {
|
||||
fullWidthToggle.addEventListener('change', (e) => {
|
||||
const enabled = (e.target as HTMLInputElement).checked;
|
||||
localStorage.setItem('fullWidthMode', enabled.toString());
|
||||
setStoredItem('fullWidthMode', enabled.toString());
|
||||
applyFullWidthMode(enabled);
|
||||
});
|
||||
}
|
||||
@@ -661,7 +663,7 @@ const init = async () => {
|
||||
'compact-mode-toggle'
|
||||
) as HTMLInputElement;
|
||||
|
||||
const savedCompactMode = localStorage.getItem('compactMode') === 'true';
|
||||
const savedCompactMode = getStoredItem('compactMode') === 'true';
|
||||
if (compactModeToggle) {
|
||||
compactModeToggle.checked = savedCompactMode;
|
||||
}
|
||||
@@ -681,7 +683,7 @@ const init = async () => {
|
||||
if (compactModeToggle) {
|
||||
compactModeToggle.addEventListener('change', (e) => {
|
||||
const enabled = (e.target as HTMLInputElement).checked;
|
||||
localStorage.setItem('compactMode', enabled.toString());
|
||||
setStoredItem('compactMode', enabled.toString());
|
||||
applyCompactMode(enabled);
|
||||
});
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user