From f49fe3962db3002bc8ddd5231b10035d15ff0de8 Mon Sep 17 00:00:00 2001 From: Vladyslav Matsiiako Date: Fri, 9 Dec 2022 18:02:22 -0500 Subject: [PATCH] Added progress bar for the Infisical Guide --- frontend/components/basic/Layout.tsx | 63 +++++++++++++++++++++++++- frontend/public/images/progress-0.svg | 5 ++ frontend/public/images/progress-14.svg | 6 +++ frontend/public/images/progress-28.svg | 5 ++ frontend/public/images/progress-43.svg | 5 ++ frontend/public/images/progress-57.svg | 5 ++ 6 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 frontend/public/images/progress-0.svg create mode 100644 frontend/public/images/progress-14.svg create mode 100644 frontend/public/images/progress-28.svg create mode 100644 frontend/public/images/progress-43.svg create mode 100644 frontend/public/images/progress-57.svg diff --git a/frontend/components/basic/Layout.tsx b/frontend/components/basic/Layout.tsx index 4a40fdef0..819a87db0 100644 --- a/frontend/components/basic/Layout.tsx +++ b/frontend/components/basic/Layout.tsx @@ -21,6 +21,7 @@ import addUserToWorkspace from "~/pages/api/workspace/addUserToWorkspace"; import createWorkspace from "~/pages/api/workspace/createWorkspace"; import getWorkspaces from "~/pages/api/workspace/getWorkspaces"; import uploadKeys from "~/pages/api/workspace/uploadKeys"; +import checkUserAction from "~/pages/api/userActions/checkUserAction"; import NavBarDashboard from "../navigation/NavBarDashboard"; import { tempLocalStorage } from "../utilities/checks/tempLocalStorage"; @@ -45,6 +46,11 @@ export default function Layout({ children }: LayoutProps) { const [isOpen, setIsOpen] = useState(false); const [loading, setLoading] = useState(false); const [error, setError] = useState(false); + const [hasUserClickedSlack, setHasUserClickedSlack] = useState(false); + const [hasUserClickedIntro, setHasUserClickedIntro] = useState(false); + const [hasUserStarred, setHasUserStarred] = useState(false); + const [usersInOrg, setUsersInOrg] = useState(false); + const [totalOnboardingActionsDone, setTotalOnboardingActionsDone] = useState(0); function closeModal() { setIsOpen(false); @@ -211,6 +217,46 @@ export default function Layout({ children }: LayoutProps) { } }; putUserInWorkSpace(); + + const checkUserActionsFunction = async () => { + let countActions = 0; + const userActionSlack = await checkUserAction({ + action: "slack_cta_clicked", + }); + setHasUserClickedSlack(userActionSlack ? true : false); + if (userActionSlack) { + countActions = countActions + 1; + } + + const userActionIntro = await checkUserAction({ + action: "intro_cta_clicked", + }); + setHasUserClickedIntro(userActionIntro ? true : false); + if (userActionIntro) { + countActions = countActions + 1; + } + + const userActionStar = await checkUserAction({ + action: "star_cta_clicked", + }); + setHasUserStarred(userActionStar ? true : false); + if (userActionStar) { + countActions = countActions + 1; + } + + const orgId = localStorage.getItem("orgData.id"); + const orgUsers = await getOrganizationUsers({ + orgId: orgId ? orgId : "", + }); + setUsersInOrg(orgUsers.length > 1) + if (orgUsers.length > 1) { + countActions = countActions + 1; + } + console.log(123, countActions) + setTotalOnboardingActionsDone(countActions); + }; + console.log(`images/progress-${totalOnboardingActionsDone == 0 ? "0" : ""}${totalOnboardingActionsDone == 1 ? "14" : ""}${totalOnboardingActionsDone == 1 ? "28" : ""}${totalOnboardingActionsDone == 3 ? "43" : ""}${totalOnboardingActionsDone == 4 ? "57" : ""}.svg`) + checkUserActionsFunction(); }, []); useEffect(() => { @@ -240,6 +286,7 @@ export default function Layout({ children }: LayoutProps) { return ( <>
+
) : (

Infisical Guide + progress bar
)} diff --git a/frontend/public/images/progress-0.svg b/frontend/public/images/progress-0.svg new file mode 100644 index 000000000..8d338b719 --- /dev/null +++ b/frontend/public/images/progress-0.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/frontend/public/images/progress-14.svg b/frontend/public/images/progress-14.svg new file mode 100644 index 000000000..33d8522b9 --- /dev/null +++ b/frontend/public/images/progress-14.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/frontend/public/images/progress-28.svg b/frontend/public/images/progress-28.svg new file mode 100644 index 000000000..59273c32b --- /dev/null +++ b/frontend/public/images/progress-28.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/frontend/public/images/progress-43.svg b/frontend/public/images/progress-43.svg new file mode 100644 index 000000000..fd963c69e --- /dev/null +++ b/frontend/public/images/progress-43.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/frontend/public/images/progress-57.svg b/frontend/public/images/progress-57.svg new file mode 100644 index 000000000..e878c2049 --- /dev/null +++ b/frontend/public/images/progress-57.svg @@ -0,0 +1,5 @@ + + + + +