From ccca3a6e2b524434ffde5d2f733489b8aab8f9fd Mon Sep 17 00:00:00 2001 From: Siddhant Khare Date: Thu, 11 Jul 2024 20:25:56 +0530 Subject: [PATCH] [PAYG] [dashboard] Onboarding: Product Educational content in `/ workspaces` view (#20021) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * intial commit * Documentation links * Update YouTube Videos * cleanup + performant YT method * Static section of `Personalised for you` 😜 * Add blog banners * Minor fixes * Educational content should only be in Gitpod PAYG & minor fixes * nit fix * nti fix * reorder docs link * nit fix * final nit fix :) * fix the label issue, video bug, line break in banner * use `flex-1` * bring back old description copy for header * improve spacing * Optimize VideoCarousel rendering and key usage - Render only the current video to improve performance - Remove redundant key prop from lite-youtube component - Ensure unique keys for list items in VideoCarousel * Enhance VideoCarousel button accessibility - Add focus rings to video selection buttons - Improve keyboard navigation with visible focus indicators --- components/dashboard/src/Analytics.tsx | 2 +- .../components/podkit/layout/PageHeading.tsx | 2 +- .../dashboard/src/icons/gitpod-stroked.svg | 14 ++ .../dashboard/src/images/blog-banner-bg.png | Bin 0 -> 83648 bytes .../dashboard/src/workspaces/BlogBanners.tsx | 100 +++++++++ .../src/workspaces/EmptyWorkspacesContent.tsx | 4 - .../src/workspaces/VideoCarousel.tsx | 81 +++++++ .../src/workspaces/WorkspaceEntry.tsx | 5 +- .../dashboard/src/workspaces/Workspaces.tsx | 210 ++++++++++++------ .../src/workspaces/WorkspacesSearchBar.tsx | 3 +- 10 files changed, 351 insertions(+), 70 deletions(-) create mode 100644 components/dashboard/src/icons/gitpod-stroked.svg create mode 100644 components/dashboard/src/images/blog-banner-bg.png create mode 100644 components/dashboard/src/workspaces/BlogBanners.tsx create mode 100644 components/dashboard/src/workspaces/VideoCarousel.tsx diff --git a/components/dashboard/src/Analytics.tsx b/components/dashboard/src/Analytics.tsx index 27f64d8272d1d6..ae3a90ca6c5bf9 100644 --- a/components/dashboard/src/Analytics.tsx +++ b/components/dashboard/src/Analytics.tsx @@ -188,7 +188,7 @@ export const trackButtonOrAnchor = (target: HTMLAnchorElement | HTMLButtonElemen let trackingMsg: TrackDashboardClick = { path: window.location.pathname, - label: target.textContent || undefined, + label: target.ariaLabel || target.textContent || undefined, }; if (target instanceof HTMLButtonElement || target instanceof HTMLDivElement) { diff --git a/components/dashboard/src/components/podkit/layout/PageHeading.tsx b/components/dashboard/src/components/podkit/layout/PageHeading.tsx index 16470cb8b6b58b..3034412c5ed605 100644 --- a/components/dashboard/src/components/podkit/layout/PageHeading.tsx +++ b/components/dashboard/src/components/podkit/layout/PageHeading.tsx @@ -13,7 +13,7 @@ type PageHeadingProps = { }; export const PageHeading: FC = ({ title, subtitle }) => { return ( -
+
{title} {subtitle && {subtitle}} diff --git a/components/dashboard/src/icons/gitpod-stroked.svg b/components/dashboard/src/icons/gitpod-stroked.svg new file mode 100644 index 00000000000000..6e4c9708cab000 --- /dev/null +++ b/components/dashboard/src/icons/gitpod-stroked.svg @@ -0,0 +1,14 @@ + + + + + diff --git a/components/dashboard/src/images/blog-banner-bg.png b/components/dashboard/src/images/blog-banner-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..79d5d9a169df1c51769296472017800ed698cb5b GIT binary patch literal 83648 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 literal 0 HcmV?d00001 diff --git a/components/dashboard/src/workspaces/BlogBanners.tsx b/components/dashboard/src/workspaces/BlogBanners.tsx new file mode 100644 index 00000000000000..b5959487988243 --- /dev/null +++ b/components/dashboard/src/workspaces/BlogBanners.tsx @@ -0,0 +1,100 @@ +/** + * Copyright (c) 2024 Gitpod GmbH. All rights reserved. + * Licensed under the GNU Affero General Public License (AGPL). + * See License.AGPL.txt in the project root for license information. + */ + +import React, { useEffect, useState } from "react"; +import blogBannerBg from "../images/blog-banner-bg.png"; + +const banners = [ + { + type: "Blog Post", + title: "Gitpod Enterprise:
Self-hosted, not self-managed", + link: "https://www.gitpod.io/blog/self-hosted-not-self-managed", + }, + { + type: "Customer Story", + title: "Thousands of hours spent on VM-based development environments reduced to zero using Gitpod", + link: "https://www.gitpod.io/customers/kingland", + }, + { + type: "Gartner Report", + title: `"By 2026, 60% of cloud workloads will be built and deployed using CDE's"`, + link: "https://www.gitpod.io/blog/gartner-2023-cde-hypecycle", + }, + { + type: "Webinar Series", + title: "The Platform Engineering maturity model", + link: "https://www.gitpod.io/events#platform-maturity-model-series", + }, +]; + +const initialBannerIndex = 0; // Index for "Self-hosted, not self-managed" + +export const BlogBanners: React.FC = () => { + const [currentBannerIndex, setCurrentBannerIndex] = useState(initialBannerIndex); + + useEffect(() => { + const storedBannerData = localStorage.getItem("blog-banner-data"); + const currentTime = new Date().getTime(); + + if (storedBannerData) { + const { lastIndex, lastTime } = JSON.parse(storedBannerData); + + if (currentTime - lastTime >= 2 * 24 * 60 * 60 * 1000) { + // 2 days in milliseconds + const nextIndex = getRandomBannerIndex(lastIndex); + setCurrentBannerIndex(nextIndex); + localStorage.setItem( + "blog-banner-data", + JSON.stringify({ lastIndex: nextIndex, lastTime: currentTime }), + ); + } else { + setCurrentBannerIndex(lastIndex); + } + } else { + setCurrentBannerIndex(initialBannerIndex); + localStorage.setItem( + "blog-banner-data", + JSON.stringify({ lastIndex: initialBannerIndex, lastTime: currentTime }), + ); + } + }, []); + + const getRandomBannerIndex = (excludeIndex: number) => { + let nextIndex; + do { + nextIndex = Math.floor(Math.random() * banners.length); + } while (nextIndex === excludeIndex || nextIndex === initialBannerIndex); + return nextIndex; + }; + + return ( +
+ + + ); +}; diff --git a/components/dashboard/src/workspaces/EmptyWorkspacesContent.tsx b/components/dashboard/src/workspaces/EmptyWorkspacesContent.tsx index 68f0007c97a99e..efc5912ae93643 100644 --- a/components/dashboard/src/workspaces/EmptyWorkspacesContent.tsx +++ b/components/dashboard/src/workspaces/EmptyWorkspacesContent.tsx @@ -12,10 +12,6 @@ import "lite-youtube-embed/src/lite-yt-embed.css"; import "lite-youtube-embed/src/lite-yt-embed"; declare global { - interface Window { - onYouTubeIframeAPIReady: () => void; - YT: any; - } namespace JSX { interface IntrinsicElements { "lite-youtube": any; diff --git a/components/dashboard/src/workspaces/VideoCarousel.tsx b/components/dashboard/src/workspaces/VideoCarousel.tsx new file mode 100644 index 00000000000000..86a691ac2e0213 --- /dev/null +++ b/components/dashboard/src/workspaces/VideoCarousel.tsx @@ -0,0 +1,81 @@ +/** + * Copyright (c) 2024 Gitpod GmbH. All rights reserved. + * Licensed under the GNU Affero General Public License (AGPL). + * See License.AGPL.txt in the project root for license information. + */ + +import React, { useState } from "react"; +import { trackVideoClick } from "../Analytics"; + +import "lite-youtube-embed/src/lite-yt-embed.css"; +import "lite-youtube-embed/src/lite-yt-embed"; + +interface Video { + id: string; + title: string; + analyticsLabel: string; +} + +const videos: Video[] = [ + { id: "1ZBN-b2cIB8", title: "Gitpod in 120 seconds", analyticsLabel: "gitpod-demo" }, + { id: "zhZNnzFlZnY", title: "Getting started with Gitpod", analyticsLabel: "getting-started-with-gitpod" }, + { id: "kuoHM2bpBqY", title: "Fully automate your dev setup", analyticsLabel: "automate-gitpod-setup" }, + { id: "_CwFzCbAsoU", title: "Personalise your workspace", analyticsLabel: "personalise-gitpod-workspace" }, +]; + +declare global { + namespace JSX { + interface IntrinsicElements { + "lite-youtube": any; + } + } +} + +export const VideoCarousel: React.FC = () => { + const [currentVideo, setCurrentVideo] = useState(0); + + const handleDotClick = (index: number) => { + setCurrentVideo(index); + }; + + const onPlayerStateChange = (index: number) => { + trackVideoClick(videos[index].analyticsLabel); + }; + + return ( +
+
+ {videos.map((video, index) => ( +
+ {index === currentVideo && ( + onPlayerStateChange(index)} + > + )} +
+ ))} +
+
+ {videos.map((_, index) => ( + + ))} +
+
+ ); +}; diff --git a/components/dashboard/src/workspaces/WorkspaceEntry.tsx b/components/dashboard/src/workspaces/WorkspaceEntry.tsx index 839a0e496393d0..34792a71d223f1 100644 --- a/components/dashboard/src/workspaces/WorkspaceEntry.tsx +++ b/components/dashboard/src/workspaces/WorkspaceEntry.tsx @@ -93,7 +93,10 @@ export const WorkspaceEntry: FunctionComponent = ({ info, shortVersion })
- + {currentBranch}
diff --git a/components/dashboard/src/workspaces/Workspaces.tsx b/components/dashboard/src/workspaces/Workspaces.tsx index de3ddd214c5703..735b06c7ad31f6 100644 --- a/components/dashboard/src/workspaces/Workspaces.tsx +++ b/components/dashboard/src/workspaces/Workspaces.tsx @@ -18,6 +18,11 @@ import { useDeleteInactiveWorkspacesMutation } from "../data/workspaces/delete-i import { useToast } from "../components/toasts/Toasts"; import { Workspace, WorkspacePhase_Phase } from "@gitpod/public-api/lib/gitpod/v1/workspace_pb"; import { Button } from "@podkit/buttons/Button"; +import { VideoCarousel } from "./VideoCarousel"; +import { BlogBanners } from "./BlogBanners"; +import { BookOpen, Code } from "lucide-react"; +import { ReactComponent as GitpodStrokedSVG } from "../icons/gitpod-stroked.svg"; +import { isGitpodIo } from "../utils"; const WorkspacesPage: FunctionComponent = () => { const [limit, setLimit] = useState(50); @@ -98,75 +103,156 @@ const WorkspacesPage: FunctionComponent = () => { {!isLoading && (activeWorkspaces.length > 0 || inactiveWorkspaces.length > 0 || searchTerm ? ( <> - - -
- {filteredActiveWorkspaces.map((info) => { - return ; - })} - {filteredActiveWorkspaces.length > 0 &&
} - {filteredInactiveWorkspaces.length > 0 && ( -
-
setShowInactive(!showInactive)} - className="flex cursor-pointer py-6 px-6 flex-row text-gray-400 bg-gray-50 hover:bg-gray-100 dark:bg-gray-800 dark:hover:bg-gray-700 rounded-xl mb-2" - > -
- -
-
-
- Inactive Workspaces  - - {filteredInactiveWorkspaces.length} - -
-
- Workspaces that have been stopped for more than 24 hours. Inactive - workspaces are automatically deleted after 14 days.{" "} - evt.stopPropagation()} - > - Learn more - +
+
+ + +
+ {filteredActiveWorkspaces.map((info) => { + return ; + })} + {filteredActiveWorkspaces.length > 0 &&
} + {filteredInactiveWorkspaces.length > 0 && ( +
+
setShowInactive(!showInactive)} + className="flex cursor-pointer py-6 px-6 flex-row text-gray-400 bg-gray-50 hover:bg-gray-100 dark:bg-gray-800 dark:hover:bg-gray-700 rounded-xl mb-2" + > +
+ +
+
+
+ Inactive Workspaces  + + {filteredInactiveWorkspaces.length} + +
+
+ Workspaces that have been stopped for more than 24 hours. + Inactive workspaces are automatically deleted after 14 days.{" "} + evt.stopPropagation()} + > + Learn more + +
+
+
+ {showInactive ? ( + + ) : null} +
-
-
{showInactive ? ( - + <> + {filteredInactiveWorkspaces.map((info) => { + return ; + })} + ) : null}
+ )} +
+
+ {/* Show Educational if user is in gitpodIo */} + {isGitpodIo() && ( +
+ + + {/* TODO: Create this section based on user submissions while onboarding form */} + - {showInactive ? ( - <> - {filteredInactiveWorkspaces.map((info) => { - return ; - })} - - ) : null} +
)} - +
) : ( diff --git a/components/dashboard/src/workspaces/WorkspacesSearchBar.tsx b/components/dashboard/src/workspaces/WorkspacesSearchBar.tsx index f28f3c34bdf944..2f0c15e09acf47 100644 --- a/components/dashboard/src/workspaces/WorkspacesSearchBar.tsx +++ b/components/dashboard/src/workspaces/WorkspacesSearchBar.tsx @@ -9,6 +9,7 @@ import { StartWorkspaceModalKeyBinding } from "../App"; import DropDown from "../components/DropDown"; import search from "../icons/search.svg"; import { LinkButton } from "@podkit/buttons/LinkButton"; +import { isGitpodIo } from "../utils"; type WorkspacesSearchBarProps = { searchTerm: string; @@ -24,7 +25,7 @@ export const WorkspacesSearchBar: FunctionComponent = onLimitUpdated, }) => { return ( -
+
search icon