diff --git a/.claude/settings.local.json b/.claude/settings.local.json index 4b68f1e3..eff176ed 100644 --- a/.claude/settings.local.json +++ b/.claude/settings.local.json @@ -34,7 +34,8 @@ "Bash(npm run *)", "Bash(npm test *)", "Bash(python3 *)", - "Bash(ls -lh aInventory-PROD-v*.zip)" + "Bash(ls -lh aInventory-PROD-v*.zip)", + "Bash(npm install *)" ] } } diff --git a/frontend/app/globals.css b/frontend/app/globals.css index 4012ce2f..9b604076 100644 --- a/frontend/app/globals.css +++ b/frontend/app/globals.css @@ -2,12 +2,12 @@ @tailwind components; @tailwind utilities; -@import "bootstrap-icons/font/bootstrap-icons.css"; - :root { /* slate-950 forced as default to prevent white flash */ --background: #020617; --foreground: #f1f5f9; + --primary: #3b82f6; + --primary-foreground: #ffffff; } body { diff --git a/frontend/components/AdminOverlay.tsx b/frontend/components/AdminOverlay.tsx index 5683c948..edc23b0a 100644 --- a/frontend/components/AdminOverlay.tsx +++ b/frontend/components/AdminOverlay.tsx @@ -1,8 +1,10 @@ 'use client'; +import { useState } from 'react'; import { X, Shield, UserPlus, User, Trash2, Tag, Plus, AlertTriangle, LogOut, Layers } from 'lucide-react'; import { inventoryApi } from '@/lib/api'; import { toast } from 'react-hot-toast'; +import CreateUserModal from './CreateUserModal'; interface AdminOverlayProps { show: boolean; @@ -13,19 +15,31 @@ interface AdminOverlayProps { onUpdateCategories: (categories: any[]) => void; } -export default function AdminOverlay({ - show, - onClose, - users, - categories, - onUpdateUsers, - onUpdateCategories +export default function AdminOverlay({ + show, + onClose, + users, + categories, + onUpdateUsers, + onUpdateCategories }: AdminOverlayProps) { + const [showCreateUserModal, setShowCreateUserModal] = useState(false); + if (!show) return null; + const handleUserCreated = () => { + inventoryApi.getUsers().then(onUpdateUsers); + }; + return ( -
-
+ <> + setShowCreateUserModal(false)} + onUserCreated={handleUserCreated} + /> +
+
@@ -33,9 +47,10 @@ export default function AdminOverlay({

System Admin

- @@ -45,20 +60,9 @@ export default function AdminOverlay({

User Management

- @@ -78,7 +82,7 @@ export default function AdminOverlay({
{u.username !== 'Admin' && ( - @@ -133,7 +138,7 @@ export default function AdminOverlay({
- @@ -159,18 +165,19 @@ export default function AdminOverlay({

Logout

Exit current session and return to identity check.

-
- + + ); } diff --git a/frontend/components/BottomNav.tsx b/frontend/components/BottomNav.tsx index 2f478163..105124da 100644 --- a/frontend/components/BottomNav.tsx +++ b/frontend/components/BottomNav.tsx @@ -28,27 +28,27 @@ export default function BottomNav({