[WEB-5594] feat: enhance authentication method handling in member columns and introduce new login labels (#8260)

This commit is contained in:
Prateek Shourya 2025-12-08 18:25:48 +05:30 committed by GitHub
parent 316856a555
commit 7659997b53
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 43 additions and 10 deletions

View file

@ -1,6 +1,6 @@
import { useState } from "react";
import { useParams } from "next/navigation";
import { EUserPermissions, EUserPermissionsLevel } from "@plane/constants";
import { EUserPermissions, EUserPermissionsLevel, LOGIN_MEDIUM_LABELS } from "@plane/constants";
import { useTranslation } from "@plane/i18n";
import { renderFormattedDate } from "@plane/utils";
import { MemberHeaderColumn } from "@/components/project/member-header-column";
@ -29,6 +29,7 @@ export const useMemberColumns = () => {
const isAdmin = allowPermissions([EUserPermissions.ADMIN], EUserPermissionsLevel.WORKSPACE);
const isSuspended = (rowData: RowData) => rowData.is_active === false;
// handlers
const handleDisplayFilterUpdate = (filterUpdates: Partial<IMemberFilters>) => {
updateFilters(filterUpdates);
@ -49,7 +50,7 @@ export const useMemberColumns = () => {
tdRender: (rowData: RowData) => (
<NameColumn
rowData={rowData}
workspaceSlug={workspaceSlug as string}
workspaceSlug={workspaceSlug}
isAdmin={isAdmin}
currentUser={currentUser}
setRemoveMemberModal={setRemoveMemberModal}
@ -101,16 +102,18 @@ export const useMemberColumns = () => {
handleDisplayFilterUpdate={handleDisplayFilterUpdate}
/>
),
tdRender: (rowData: RowData) => <AccountTypeColumn rowData={rowData} workspaceSlug={workspaceSlug as string} />,
tdRender: (rowData: RowData) => <AccountTypeColumn rowData={rowData} workspaceSlug={workspaceSlug} />,
},
{
key: "Authentication",
content: t("workspace_settings.settings.members.details.authentication"),
tdRender: (rowData: RowData) =>
isSuspended(rowData) ? null : (
<div className="capitalize">{rowData.member.last_login_medium?.replace("-", " ")}</div>
),
tdRender: (rowData: RowData) => {
if (isSuspended(rowData)) return null;
const loginMedium = rowData.member.last_login_medium;
if (!loginMedium) return null;
return <div>{LOGIN_MEDIUM_LABELS[loginMedium]}</div>;
},
},
{