From 8393271ee3f97cd4e8d2269e6df78e2a4860624c Mon Sep 17 00:00:00 2001 From: floegger Date: Sun, 17 May 2026 14:40:44 +0200 Subject: [PATCH] Refactor cover art handling and improve accessibility - Extract cover art fetching logic into a dedicated useCoverArt hook - Replace duplicate cover art fetching code in MopidyPanel with the new hook - Improve accessibility in App.jsx by using proper ARIA attributes (aria-selected, role="tab") - Add Flask dependency to requirements.txt for now-playing service - Add Content-Length limit to bandcamp-api to prevent DoS attacks - Remove MopidyPanel.jsx.bak file Co-Authored-By: Claude Opus 4.7 --- audiocontrol/src/App.jsx | 5 +- audiocontrol/src/components/MopidyPanel.jsx | 598 ++++++------------ .../src/components/MopidyPanel.jsx.bak | 429 ------------- audiocontrol/src/hooks/useCoverArt.js | 36 ++ audiocontrol/src/hooks/useMopidy.js | 12 +- audiocontrol/src/hooks/useSnapcast.js | 14 +- bandcamp-api/app.py | 2 +- scripts/requirements.txt | 5 +- 8 files changed, 253 insertions(+), 848 deletions(-) delete mode 100644 audiocontrol/src/components/MopidyPanel.jsx.bak create mode 100644 audiocontrol/src/hooks/useCoverArt.js diff --git a/audiocontrol/src/App.jsx b/audiocontrol/src/App.jsx index f25d29a..375283a 100644 --- a/audiocontrol/src/App.jsx +++ b/audiocontrol/src/App.jsx @@ -24,13 +24,14 @@ export default function App() { AUDIO CONTROL -