From 2daccf4ecc7b4dfcb8b0d218c9d41ba0694222f6 Mon Sep 17 00:00:00 2001 From: Jon Kazama Date: Sun, 14 Jun 2026 08:35:27 +0200 Subject: [PATCH] v2.3: trash als eigener Store-Key + saveTrash, in init geladen --- src/js/app.js | 2 ++ src/js/state.js | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/src/js/app.js b/src/js/app.js index d023466..d27521c 100644 --- a/src/js/app.js +++ b/src/js/app.js @@ -6,8 +6,10 @@ async function init() { const savedBoards = await Store.get('boards'); const savedSettings = await Store.get('settings'); + const savedTrash = await Store.get('trash'); boards = savedBoards ?? getDefaultBoards(); + trash = Array.isArray(savedTrash) ? savedTrash : []; if (savedSettings) Object.assign(settings, savedSettings); I18n.init(); diff --git a/src/js/state.js b/src/js/state.js index e9de06e..936bd05 100644 --- a/src/js/state.js +++ b/src/js/state.js @@ -5,6 +5,10 @@ let boards = []; +// Papierkorb als EIGENER Store-Key (nicht im boards-Payload), isoliert das Quota-Risiko (CR-04/TRASH-02). +// Eintrag-Schema: { item, type: 'bookmark'|'board', deletedAt, originBoardId } +let trash = []; + let settings = { compact: false, shortenTitles: false, @@ -51,6 +55,10 @@ async function saveBoards() { await Store.set('boards', boards); } +async function saveTrash() { + await Store.set('trash', trash); +} + async function saveSettings() { await Store.set('settings', settings); }