From 72d8dd8df72fed980794919f715909c9d37f0d9b Mon Sep 17 00:00:00 2001 From: Lars Date: Fri, 20 Mar 2026 07:59:49 +0100 Subject: [PATCH] feat: add AdminUserRestrictionsPage for individual user overrides Per-user feature limit overrides: - Select user from dropdown (shows tier) - View all features with tier limits - Set individual overrides that supersede tier limits - Toggle buttons for boolean features - Text inputs for count features - Remove overrides to revert to tier limits Features: - User info card (avatar, name, email, tier) - Feature table grouped by category - Visual indicators for active overrides - Change tracking with fixed bottom save bar - Conditional rendering based on limit type - Info box explaining override priority UX improvements: - Clear "Tier-Limit" vs "Override" columns - Active/Inactive status per feature - Batch save with change counter - Confirmation before removing overrides - Legend for input values Use cases: - Beta testers with extended limits - Support requests for special access - Temporary feature grants - Custom enterprise configurations Integrated in AdminPanel navigation Co-Authored-By: Claude Opus 4.6 --- frontend/src/App.jsx | 2 + frontend/src/pages/AdminPanel.jsx | 5 + .../src/pages/AdminUserRestrictionsPage.jsx | 447 ++++++++++++++++++ 3 files changed, 454 insertions(+) create mode 100644 frontend/src/pages/AdminUserRestrictionsPage.jsx diff --git a/frontend/src/App.jsx b/frontend/src/App.jsx index 6823627..babf3c0 100644 --- a/frontend/src/App.jsx +++ b/frontend/src/App.jsx @@ -24,6 +24,7 @@ import AdminTierLimitsPage from './pages/AdminTierLimitsPage' import AdminFeaturesPage from './pages/AdminFeaturesPage' import AdminTiersPage from './pages/AdminTiersPage' import AdminCouponsPage from './pages/AdminCouponsPage' +import AdminUserRestrictionsPage from './pages/AdminUserRestrictionsPage' import './app.css' function Nav() { @@ -123,6 +124,7 @@ function AppShell() { }/> }/> }/> + }/>