Fine tuned organisation onboarding and tenant management
This commit is contained in:
@@ -441,6 +441,7 @@ export const SettingsPage: React.FC = () => {
|
||||
const userExportColumns: ExportColumn<User>[] = [
|
||||
{ header: 'User Email', key: 'email', format: (val, u) => val || getUserEmail(u.id) || '—' },
|
||||
{ header: 'User Identifier', key: 'id' },
|
||||
{ header: 'Id Number', key: 'idNumber', format: (val) => val || '—' },
|
||||
{ header: 'Role', key: 'role', format: (val) => getUserRoleBadge(val).label },
|
||||
{ header: 'Status', key: 'status', format: (val) => getActivityStatusBadge(val).label },
|
||||
{ header: 'Last Login', key: 'lastLoginAt', format: (val) => (val ? formatDate(val) : 'Never') },
|
||||
@@ -770,6 +771,9 @@ export const SettingsPage: React.FC = () => {
|
||||
<SortableTh column="id" currentColumn={userSortCol} direction={userSortDir} onSort={handleUserSort} className="py-3.5 px-4">
|
||||
User Identifier
|
||||
</SortableTh>
|
||||
<SortableTh column="idNumber" currentColumn={userSortCol} direction={userSortDir} onSort={handleUserSort} className="py-3.5 px-4">
|
||||
Id Number
|
||||
</SortableTh>
|
||||
<SortableTh column="role" currentColumn={userSortCol} direction={userSortDir} onSort={handleUserSort} className="py-3.5 px-4">
|
||||
Role
|
||||
</SortableTh>
|
||||
@@ -785,13 +789,13 @@ export const SettingsPage: React.FC = () => {
|
||||
<tbody className="divide-y divide-slate-800/50">
|
||||
{loadingUsers ? (
|
||||
<tr>
|
||||
<td colSpan={6} className="py-8 text-center text-slate-500">
|
||||
<td colSpan={7} className="py-8 text-center text-slate-500">
|
||||
Loading user directory...
|
||||
</td>
|
||||
</tr>
|
||||
) : sortedUsers.length === 0 ? (
|
||||
<tr>
|
||||
<td colSpan={6} className="py-8 text-center text-slate-500">
|
||||
<td colSpan={7} className="py-8 text-center text-slate-500">
|
||||
No users found matching current filters.
|
||||
</td>
|
||||
</tr>
|
||||
@@ -806,6 +810,9 @@ export const SettingsPage: React.FC = () => {
|
||||
<td className="py-3.5 px-4 font-mono text-slate-400 text-[11px]">
|
||||
{u.id}
|
||||
</td>
|
||||
<td className="py-3.5 px-4 font-mono text-slate-300 text-[11px]">
|
||||
{u.idNumber || <span className="text-slate-600">—</span>}
|
||||
</td>
|
||||
<td className="py-3.5 px-4">
|
||||
<UserRoleBadge role={u.role} />
|
||||
</td>
|
||||
@@ -2113,6 +2120,12 @@ export const SettingsPage: React.FC = () => {
|
||||
{userFreshDetail?.id || selectedUserForDetail.id}
|
||||
</span>
|
||||
</div>
|
||||
<div>
|
||||
<span className="text-slate-400 font-semibold block text-[11px] uppercase">Id Number:</span>
|
||||
<span className="font-mono text-slate-200 text-xs">
|
||||
{userFreshDetail?.idNumber || selectedUserForDetail.idNumber || '—'}
|
||||
</span>
|
||||
</div>
|
||||
<div>
|
||||
<span className="text-slate-400 font-semibold block text-[11px] uppercase mb-1">System Role:</span>
|
||||
<UserRoleBadge role={userFreshDetail?.role ?? selectedUserForDetail.role} />
|
||||
|
||||
Reference in New Issue
Block a user