From a16988b957c7dad2fc1b4425ab6f74ed5d947961 Mon Sep 17 00:00:00 2001 From: Janpeter Visser <30029041+madhura68@users.noreply.github.com> Date: Fri, 8 May 2026 08:55:43 +0200 Subject: [PATCH] Sprint: debug, zichtbaarheid componenten (#165) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat(debug-store): Zustand store met hydration-flag voor debug-modus * feat(status-bar): dev-only debug-toggle via geïsoleerde sub-component * feat(globals.css): debug-mode overlay CSS voor data-debug-id elementen * feat(shared): data-debug-id+label op navigatie-componenten * feat(shared): data-debug-id+label op form/select-componenten * feat(shared): data-debug-id+label op display-componenten --- app/globals.css | 22 +++++++++++++ components/shared/activate-product-button.tsx | 2 ++ components/shared/alert-toast.tsx | 2 +- components/shared/app-icon.tsx | 2 ++ components/shared/code-badge.tsx | 2 ++ components/shared/demo-tooltip.tsx | 20 ++++++------ components/shared/min-width-banner.tsx | 6 +++- components/shared/nav-bar.tsx | 6 +++- components/shared/notifications-bell.tsx | 2 ++ components/shared/panel-nav-bar.tsx | 6 +++- components/shared/pbi-status-select.tsx | 2 ++ components/shared/priority-select.tsx | 2 ++ components/shared/set-current-product.tsx | 2 +- components/shared/sprint-switcher.tsx | 26 +++++++++------- components/shared/status-bar-debug-toggle.tsx | 31 +++++++++++++++++++ components/shared/status-bar.tsx | 13 ++++++-- components/shared/story-log.tsx | 12 +++++-- components/shared/user-avatar.tsx | 14 +++++---- components/shared/user-menu.tsx | 2 ++ stores/debug-store.ts | 15 +++++++++ 20 files changed, 154 insertions(+), 35 deletions(-) create mode 100644 components/shared/status-bar-debug-toggle.tsx create mode 100644 stores/debug-store.ts diff --git a/app/globals.css b/app/globals.css index 9e6d7af..6c32368 100644 --- a/app/globals.css +++ b/app/globals.css @@ -3,3 +3,25 @@ @plugin "@tailwindcss/typography"; @import "./styles/theme.css"; + +/* Debug-mode overlay (alleen actief wanneer body.debug-mode is gezet door dev-only toggle) */ +body.debug-mode [data-debug-id] { + outline: 2px dashed var(--info); + outline-offset: 1px; + position: relative; +} +body.debug-mode [data-debug-id]:hover::after { + content: attr(data-debug-label); + position: absolute; + top: 0; + left: 0; + background: var(--info-container); + color: var(--info-container-foreground); + font-size: 10px; + line-height: 1.2; + padding: 2px 4px; + white-space: nowrap; + border-radius: 2px; + z-index: 9999; + pointer-events: none; +} diff --git a/components/shared/activate-product-button.tsx b/components/shared/activate-product-button.tsx index 90c19c4..c64da62 100644 --- a/components/shared/activate-product-button.tsx +++ b/components/shared/activate-product-button.tsx @@ -28,6 +28,7 @@ export function ActivateProductButton({ productId, isDemo, redirectTo, label = ' } return ( + + ) } diff --git a/components/shared/alert-toast.tsx b/components/shared/alert-toast.tsx index 630892d..0779266 100644 --- a/components/shared/alert-toast.tsx +++ b/components/shared/alert-toast.tsx @@ -24,5 +24,5 @@ export function AlertToast() { // eslint-disable-next-line react-hooks/exhaustive-deps }, [alert]) - return null + return