feat: logical columns for service sessions table
This commit is contained in:
@ -71,7 +71,7 @@ const AdminServiceSessionsPage: FC = () => {
|
|||||||
Service
|
Service
|
||||||
</th>
|
</th>
|
||||||
<th className="px-6 py-3 text-left text-sm font-semibold text-gray-700 dark:text-white/70 border border-l-0 border-gray-300 dark:border-gray-700">
|
<th className="px-6 py-3 text-left text-sm font-semibold text-gray-700 dark:text-white/70 border border-l-0 border-gray-300 dark:border-gray-700">
|
||||||
Source
|
User + IP
|
||||||
</th>
|
</th>
|
||||||
<th className="px-6 py-3 text-left text-sm font-semibold text-gray-700 dark:text-white/70 border border-l-0 border-gray-300 dark:border-gray-700">
|
<th className="px-6 py-3 text-left text-sm font-semibold text-gray-700 dark:text-white/70 border border-l-0 border-gray-300 dark:border-gray-700">
|
||||||
Status
|
Status
|
||||||
@ -109,26 +109,44 @@ const AdminServiceSessionsPage: FC = () => {
|
|||||||
key={session.id}
|
key={session.id}
|
||||||
className="hover:bg-gray-50 dark:hover:bg-gray-800"
|
className="hover:bg-gray-50 dark:hover:bg-gray-800"
|
||||||
>
|
>
|
||||||
<td className="px-5 py-3 text-sm text-gray-700 dark:text-gray-300 border border-gray-300 dark:border-gray-700">
|
|
||||||
<div className="flex flex-row items-center gap-2 justify-start">
|
|
||||||
{typeof session.user?.profile_picture === "string" && (
|
|
||||||
<Avatar
|
|
||||||
avatarId={session.user.profile_picture}
|
|
||||||
className="w-7 h-7 min-w-7"
|
|
||||||
/>
|
|
||||||
)}
|
|
||||||
|
|
||||||
<Link to={`/admin/users/view/${session.user_id}`}>
|
|
||||||
<p className="cursor-pointer text-blue-500 text-nowrap">
|
|
||||||
{session.user?.full_name ?? ""}{" "}
|
|
||||||
{session.user_id === profile?.id ? "(You)" : ""}
|
|
||||||
</p>
|
|
||||||
</Link>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td className="px-5 py-3 text-sm text-gray-700 dark:text-gray-300 border border-gray-300 dark:border-gray-700">
|
<td className="px-5 py-3 text-sm text-gray-700 dark:text-gray-300 border border-gray-300 dark:border-gray-700">
|
||||||
{/* <SessionSource deviceInfo={session.} /> */}
|
{/* <SessionSource deviceInfo={session.} /> */}
|
||||||
<p>{session.client_id}</p>
|
{typeof session.api_service?.icon_url === "string" && (
|
||||||
|
<Avatar
|
||||||
|
avatarId={session.api_service.icon_url}
|
||||||
|
className="w-7 h-7 min-w-7"
|
||||||
|
/>
|
||||||
|
)}
|
||||||
|
<Link to={`/admin/api-services/view/${session.service_id}`}>
|
||||||
|
<p className="cursor-pointer text-blue-500 text-nowrap">
|
||||||
|
{session.api_service?.name ?? session.client_id}
|
||||||
|
</p>
|
||||||
|
</Link>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td className="px-5 py-3 text-sm text-gray-700 dark:text-gray-300 border border-gray-300 dark:border-gray-700">
|
||||||
|
<div className="flex flex-col items-stretch gap-2 justify-start">
|
||||||
|
<div className="flex flex-row items-center gap-2 justify-start">
|
||||||
|
{typeof session.user?.profile_picture === "string" && (
|
||||||
|
<Avatar
|
||||||
|
avatarId={session.user.profile_picture}
|
||||||
|
className="w-7 h-7 min-w-7"
|
||||||
|
/>
|
||||||
|
)}
|
||||||
|
|
||||||
|
<div className="flex flex-col items-stretch justify-center">
|
||||||
|
<Link to={`/admin/users/view/${session.user_id}`}>
|
||||||
|
<p className="cursor-pointer text-blue-500 text-nowrap">
|
||||||
|
{session.user?.full_name ?? ""}{" "}
|
||||||
|
{session.user_id === profile?.id ? "(You)" : ""}
|
||||||
|
</p>
|
||||||
|
</Link>
|
||||||
|
<p className="opacity-75">
|
||||||
|
{session.ip_address ?? "No IP available"}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</td>
|
</td>
|
||||||
<td className="px-5 py-3 text-sm border border-gray-300 dark:border-gray-700">
|
<td className="px-5 py-3 text-sm border border-gray-300 dark:border-gray-700">
|
||||||
<span
|
<span
|
||||||
|
Reference in New Issue
Block a user