diff --git a/components/dashboard/src/admin/ProjectsSearch.tsx b/components/dashboard/src/admin/ProjectsSearch.tsx index 9a9bd8abf95a89..33b3d873b1c750 100644 --- a/components/dashboard/src/admin/ProjectsSearch.tsx +++ b/components/dashboard/src/admin/ProjectsSearch.tsx @@ -16,6 +16,7 @@ import { AdminPageHeader } from "./AdminPageHeader"; import Pagination from "../Pagination/Pagination"; import { SpinnerLoader } from "../components/Loader"; import searchIcon from "../icons/search.svg"; +import Tooltip from "../components/Tooltip"; export default function ProjectsSearchPage() { return ( @@ -155,9 +156,11 @@ export function ProjectsSearch() {
{p.project.cloneUrl}
-
- {dayjs(p.project.creationTime).fromNow()} -
+ +
+ {dayjs(p.project.creationTime).fromNow()} +
+
diff --git a/components/dashboard/src/admin/UserSearch.tsx b/components/dashboard/src/admin/UserSearch.tsx index 42946b2cefa82f..eca67580ed6e15 100644 --- a/components/dashboard/src/admin/UserSearch.tsx +++ b/components/dashboard/src/admin/UserSearch.tsx @@ -15,6 +15,7 @@ import { getGitpodService } from "../service/service"; import { AdminPageHeader } from "./AdminPageHeader"; import UserDetail from "./UserDetail"; import searchIcon from "../icons/search.svg"; +import Tooltip from "../components/Tooltip"; export default function UserSearch() { const location = useLocation(); @@ -144,7 +145,11 @@ function UserEntry(p: { user: User }) {
-
{dayjs(p.user.creationDate).fromNow()}
+ +
+ {dayjs(p.user.creationDate).fromNow()} +
+
diff --git a/components/dashboard/src/admin/WorkspacesSearch.tsx b/components/dashboard/src/admin/WorkspacesSearch.tsx index 44e425b01f1564..aceb7d18dc3c0b 100644 --- a/components/dashboard/src/admin/WorkspacesSearch.tsx +++ b/components/dashboard/src/admin/WorkspacesSearch.tsx @@ -29,6 +29,7 @@ import { isGitpodIo } from "../utils"; import { SpinnerLoader } from "../components/Loader"; import { WorkspaceStatusIndicator } from "../workspaces/WorkspaceStatusIndicator"; import searchIcon from "../icons/search.svg"; +import Tooltip from "../components/Tooltip"; interface Props { user?: User; @@ -192,9 +193,13 @@ function WorkspaceEntry(p: { ws: WorkspaceAndInstance }) {
-
- {dayjs(p.ws.instanceCreationTime || p.ws.workspaceCreationTime).fromNow()} -
+ +
+ {dayjs(p.ws.instanceCreationTime || p.ws.workspaceCreationTime).fromNow()} +
+
diff --git a/components/dashboard/src/projects/Prebuilds.tsx b/components/dashboard/src/projects/Prebuilds.tsx index 56b4f560264a3e..e9044a61e7a7e1 100644 --- a/components/dashboard/src/projects/Prebuilds.tsx +++ b/components/dashboard/src/projects/Prebuilds.tsx @@ -23,6 +23,7 @@ import { Disposable } from "vscode-jsonrpc"; import { useCurrentProject } from "./project-context"; import { getProjectTabs } from "./projects.routes"; import search from "../icons/search.svg"; +import Tooltip from "../components/Tooltip"; export default function PrebuildsPage(props: { project?: Project; isAdminDashboard?: boolean }) { const currentProject = useCurrentProject(); @@ -222,7 +223,9 @@ export default function PrebuildsPage(props: { project?: Project; isAdminDashboa alt={p.info.startedBy} /> )} - Triggered {formatDate(p.info.startedAt)} + + Triggered {formatDate(p.info.startedAt)} +

diff --git a/components/dashboard/src/projects/Project.tsx b/components/dashboard/src/projects/Project.tsx index 6a21d95cc5df70..fa2cb6d73e98ef 100644 --- a/components/dashboard/src/projects/Project.tsx +++ b/components/dashboard/src/projects/Project.tsx @@ -24,6 +24,7 @@ import { useCurrentProject } from "./project-context"; import { getProjectTabs } from "./projects.routes"; import { shortCommitMessage, toRemoteURL } from "./render-utils"; import search from "../icons/search.svg"; +import Tooltip from "../components/Tooltip"; export default function ProjectsPage() { const history = useHistory(); @@ -334,10 +335,21 @@ export default function ProjectsPage() {
{shortCommitMessage(branch.changeTitle)}
-

- {avatar}Authored {formatDate(branch.changeDate)} ·{" "} - {branch.changeHash?.substring(0, 8)} -

+ {branch.changeDate ? ( + +

+ {avatar}Authored {formatDate(branch.changeDate)} ·{" "} + {branch.changeHash?.substring(0, 8)} +

+
+ ) : ( +

+ {avatar}Authored {formatDate(branch.changeDate)} ·{" "} + {branch.changeHash?.substring(0, 8)} +

+ )} diff --git a/components/dashboard/src/projects/ProjectListItem.tsx b/components/dashboard/src/projects/ProjectListItem.tsx index a9b9c683920b99..838646332fbc71 100644 --- a/components/dashboard/src/projects/ProjectListItem.tsx +++ b/components/dashboard/src/projects/ProjectListItem.tsx @@ -16,6 +16,7 @@ import { gitpodHostUrl } from "../service/service"; import { useLatestProjectPrebuildQuery } from "../data/prebuilds/latest-project-prebuild-query"; import { StartWorkspaceModalContext } from "../workspaces/start-workspace-modal-context"; import { useNewCreateWorkspacePage } from "../workspaces/CreateWorkspacePage"; +import Tooltip from "../components/Tooltip"; type ProjectListItemProps = { project: Project; @@ -102,9 +103,11 @@ export const ProjectListItem: FunctionComponent = ({ proje {prebuild?.info?.branch} · -
- {dayjs(prebuild?.info?.startedAt).fromNow()} -
+ +
+ {dayjs(prebuild?.info?.startedAt).fromNow()} +
+
- {dayjs(m.memberSince).fromNow()} + + {dayjs(m.memberSince).fromNow()} +