From e8a0598e8f8c04c2d581a750e8efea68d0e5b3e2 Mon Sep 17 00:00:00 2001 From: Kevin Midboe Date: Sun, 8 Mar 2026 20:56:46 +0100 Subject: [PATCH] Refactor data management with browser and server storage sections - Split LocalStorageManager into modular StorageManager component - Create StorageSectionBrowser for localStorage/sessionStorage/cookies UI - Create StorageSectionServer for server-side data management (mock) - Extract ExportSection component from DataExport - Add storage type icons (IconCookie, IconDatabase, IconTimer) - Implement collapsible storage sections with visual indicators - Add colored borders and gradients per storage type - Display item counts and total size in section headers - Improve delete button layout using CSS Grid - Reduce DataExport from ~824 lines to focused component --- src/components/settings/DataExport.vue | 824 +----------------- src/components/settings/ExportSection.vue | 127 +++ .../settings/LocalStorageManager.vue | 327 ------- src/components/settings/StorageManager.vue | 215 +++++ .../settings/StorageSectionBrowser.vue | 366 ++++++++ .../settings/StorageSectionServer.vue | 462 ++++++++++ src/icons/IconCookie.vue | 23 + src/icons/IconDatabase.vue | 18 + src/icons/IconTimer.vue | 17 + 9 files changed, 1238 insertions(+), 1141 deletions(-) create mode 100644 src/components/settings/ExportSection.vue delete mode 100644 src/components/settings/LocalStorageManager.vue create mode 100644 src/components/settings/StorageManager.vue create mode 100644 src/components/settings/StorageSectionBrowser.vue create mode 100644 src/components/settings/StorageSectionServer.vue create mode 100644 src/icons/IconCookie.vue create mode 100644 src/icons/IconDatabase.vue create mode 100644 src/icons/IconTimer.vue diff --git a/src/components/settings/DataExport.vue b/src/components/settings/DataExport.vue index 66e192f..17b0b5b 100644 --- a/src/components/settings/DataExport.vue +++ b/src/components/settings/DataExport.vue @@ -1,106 +1,14 @@ diff --git a/src/components/settings/ExportSection.vue b/src/components/settings/ExportSection.vue new file mode 100644 index 0000000..8f74e6f --- /dev/null +++ b/src/components/settings/ExportSection.vue @@ -0,0 +1,127 @@ + + + + + diff --git a/src/components/settings/LocalStorageManager.vue b/src/components/settings/LocalStorageManager.vue deleted file mode 100644 index d124e5c..0000000 --- a/src/components/settings/LocalStorageManager.vue +++ /dev/null @@ -1,327 +0,0 @@ - - - - - diff --git a/src/components/settings/StorageManager.vue b/src/components/settings/StorageManager.vue new file mode 100644 index 0000000..ba90f29 --- /dev/null +++ b/src/components/settings/StorageManager.vue @@ -0,0 +1,215 @@ + + + + + diff --git a/src/components/settings/StorageSectionBrowser.vue b/src/components/settings/StorageSectionBrowser.vue new file mode 100644 index 0000000..f769835 --- /dev/null +++ b/src/components/settings/StorageSectionBrowser.vue @@ -0,0 +1,366 @@ + + + + + diff --git a/src/components/settings/StorageSectionServer.vue b/src/components/settings/StorageSectionServer.vue new file mode 100644 index 0000000..3b3d7f3 --- /dev/null +++ b/src/components/settings/StorageSectionServer.vue @@ -0,0 +1,462 @@ + + + + + diff --git a/src/icons/IconCookie.vue b/src/icons/IconCookie.vue new file mode 100644 index 0000000..4aa1254 --- /dev/null +++ b/src/icons/IconCookie.vue @@ -0,0 +1,23 @@ + diff --git a/src/icons/IconDatabase.vue b/src/icons/IconDatabase.vue new file mode 100644 index 0000000..27163e6 --- /dev/null +++ b/src/icons/IconDatabase.vue @@ -0,0 +1,18 @@ + diff --git a/src/icons/IconTimer.vue b/src/icons/IconTimer.vue new file mode 100644 index 0000000..4fb6428 --- /dev/null +++ b/src/icons/IconTimer.vue @@ -0,0 +1,17 @@ +