diff --git a/components/dashboard/src/admin/ProjectDetail.tsx b/components/dashboard/src/admin/ProjectDetail.tsx index 13bc8c5b15332e..96300123f73df9 100644 --- a/components/dashboard/src/admin/ProjectDetail.tsx +++ b/components/dashboard/src/admin/ProjectDetail.tsx @@ -13,62 +13,64 @@ import dayjs from "dayjs"; export default function ProjectDetail(props: { project: Project; owner: string | undefined }) { return ( <> -
-
-
-

{props.project.name}

- +
+
+
+
+

{props.project.name}

+ +
+

{props.project.cloneUrl}

-

{props.project.cloneUrl}

-
-
-
- {dayjs(props.project.creationTime).format("MMM D, YYYY")} - - - {props.project.name} - - - {props.project.userId ? ( - - <> - - {props.owner} - - (User) - +
+
+ {dayjs(props.project.creationTime).format("MMM D, YYYY")} + + + {props.project.name} + - ) : ( - - <> - - {props.owner} - - (Organization) - + {props.project.userId ? ( + + <> + + {props.owner} + + (User) + + + ) : ( + + <> + + {props.owner} + + (Organization) + + + )} +
+
+ + {props.project.settings?.useIncrementalPrebuilds ? "Yes" : "No"} - )} + {props.project.markedDeleted ? "Yes" : "No"} +
-
- - {props.project.settings?.useIncrementalPrebuilds ? "Yes" : "No"} - - {props.project.markedDeleted ? "Yes" : "No"} +
+
-
- -
); } diff --git a/components/dashboard/src/admin/TeamDetail.tsx b/components/dashboard/src/admin/TeamDetail.tsx index 2c7742d3b23706..0189a4dfaae164 100644 --- a/components/dashboard/src/admin/TeamDetail.tsx +++ b/components/dashboard/src/admin/TeamDetail.tsx @@ -69,7 +69,7 @@ export default function TeamDetail(props: { team: Team }) { }; return ( <> -
+

{team.name}

diff --git a/components/dashboard/src/admin/UserDetail.tsx b/components/dashboard/src/admin/UserDetail.tsx index 2c7912d788ccae..4c6a639dc54e1d 100644 --- a/components/dashboard/src/admin/UserDetail.tsx +++ b/components/dashboard/src/admin/UserDetail.tsx @@ -260,7 +260,7 @@ export default function UserDetail(p: { user: User }) { <>
-
+

{user.fullName}

diff --git a/components/dashboard/src/admin/UserSearch.tsx b/components/dashboard/src/admin/UserSearch.tsx index 3c430291e0131b..ddd2672f03f96c 100644 --- a/components/dashboard/src/admin/UserSearch.tsx +++ b/components/dashboard/src/admin/UserSearch.tsx @@ -109,9 +109,18 @@ export default function UserSearch() {
-
-
Name
-
Created
+
Name
+
+ Created + + + +
{searchResult.rows .filter((u) => u.identities.length > 0) diff --git a/components/dashboard/src/admin/WorkspaceDetail.tsx b/components/dashboard/src/admin/WorkspaceDetail.tsx index a791f7b94fd419..231a6e327236bc 100644 --- a/components/dashboard/src/admin/WorkspaceDetail.tsx +++ b/components/dashboard/src/admin/WorkspaceDetail.tsx @@ -57,104 +57,106 @@ export default function WorkspaceDetail(props: { workspace: WorkspaceAndInstance ); return ( <> -
-
-
-

{workspace.workspaceId}

- - - +
+
+
+
+

{workspace.workspaceId}

+ + + +
+

{getProjectPath(WorkspaceAndInstance.toWorkspace(workspace))}

-

{getProjectPath(WorkspaceAndInstance.toWorkspace(workspace))}

+ +
- - -
-
-
-
- - {dayjs(workspace.workspaceCreationTime).format("MMM D, YYYY")} - - {dayjs(workspace.instanceCreationTime).fromNow()} - - - {workspace.context.title} - - -
-
- - - {user?.name || props.workspace.ownerId} - - - {workspace.shareable ? "Enabled" : "Disabled"} - { - await getGitpodService().server.adminRestoreSoftDeletedWorkspace( - workspace.workspaceId, - ); - await reload(); +
+
+
+ + {dayjs(workspace.workspaceCreationTime).format("MMM D, YYYY")} + + {dayjs(workspace.instanceCreationTime).fromNow()} + + + {workspace.context.title} + + +
+
+ + + {user?.name || props.workspace.ownerId} + + + {workspace.shareable ? "Enabled" : "Disabled"} + { + await getGitpodService().server.adminRestoreSoftDeletedWorkspace( + workspace.workspaceId, + ); + await reload(); + }, }, - }, - ] - : undefined - } - > - {workspace.softDeleted - ? `'${workspace.softDeleted}' ${dayjs(workspace.softDeletedTime).fromNow()}` - : "No"} - -
-
- -
{workspace.instanceId}
-
- {workspace.region} - - {workspace.stoppedTime ? dayjs(workspace.stoppedTime).fromNow() : "---"} - -
-
- -
{workspace.status.nodeName ?? "not assigned"}
-
- -
{workspace.workspaceClass ?? "unknown"}
-
+ ] + : undefined + } + > + {workspace.softDeleted + ? `'${workspace.softDeleted}' ${dayjs(workspace.softDeletedTime).fromNow()}` + : "No"} + +
+
+ +
{workspace.instanceId}
+
+ {workspace.region} + + {workspace.stoppedTime ? dayjs(workspace.stoppedTime).fromNow() : "---"} + +
+
+ +
{workspace.status.nodeName ?? "not assigned"}
+
+ +
{workspace.workspaceClass ?? "unknown"}
+
+
+
{[0, 1, 2].map(adminLink)}
+
{[3, 4, 5].map(adminLink)}
-
{[0, 1, 2].map(adminLink)}
-
{[3, 4, 5].map(adminLink)}
diff --git a/components/dashboard/src/admin/WorkspacesSearch.tsx b/components/dashboard/src/admin/WorkspacesSearch.tsx index ca5cb6e2ecc863..6d84ca2a5ac239 100644 --- a/components/dashboard/src/admin/WorkspacesSearch.tsx +++ b/components/dashboard/src/admin/WorkspacesSearch.tsx @@ -161,9 +161,8 @@ export function WorkspaceSearch(props: Props) {
-
-
Name
-
Context
+
Name
+
Context
Last Started
{searchResult.rows.map((ws) => (