Redesign login UI, add theme toggle, refactor user update

- Redesigned login page with two-panel layout and branding
- Added HexaDistro logo and theme toggle to sidebar/header
- Refactored user update: roles via update endpoint, removed assignRole API/controller
- Extended UpdateUserRequest for username, role, password changes
- UserService.UpdateAsync syncs changes with AuthHex, with rollback
- Stock balances client dedupes by itemId-locationId
- Middleware matcher excludes static assets from auth checks
- Improved localStorage clearing for user context
- Added lucide-react for icons
- Minor UI/code cleanups for consistency and UX
This commit is contained in:
Kalana B. Thilakarathna
2026-10-19 02:20:14 +05:30
parent 4ef63420b7
commit 531b3a7fef
17 changed files with 300 additions and 94 deletions
@@ -83,10 +83,10 @@ export function UserSheet({ open, onClose, user, roles, users, onSuccess }: User
async function onEditSubmit(values: EditValues) {
try {
await usersApi.update(user!.id, { fullName: values.fullName })
if (values.roleId !== user!.roleId) {
await usersApi.assignRole(user!.id, values.roleId)
}
await usersApi.update(user!.id, {
fullName: values.fullName,
roleId: values.roleId !== user!.roleId ? values.roleId : undefined,
})
toast.add({ title: 'User updated', type: 'success' })
onSuccess()
onClose()