From 0847176e7ffe6f4dd50c9cf73161b8344e026b9a Mon Sep 17 00:00:00 2001 From: BrunoQuaresma Date: Thu, 31 Oct 2024 14:52:28 +0000 Subject: [PATCH] refactor(site): refactor DAU chart --- .../ActiveUserChart.stories.tsx | 6 --- .../ActiveUserChart/ActiveUserChart.tsx | 49 ++++--------------- .../GeneralSettingsPageView.stories.tsx | 7 --- .../GeneralSettingsPageView.tsx | 12 +---- .../TemplateInsightsPage.stories.tsx | 8 --- .../TemplateInsightsPage.tsx | 3 +- 6 files changed, 12 insertions(+), 73 deletions(-) diff --git a/site/src/components/ActiveUserChart/ActiveUserChart.stories.tsx b/site/src/components/ActiveUserChart/ActiveUserChart.stories.tsx index d8735d3f5cf71..4f28d7243a0bf 100644 --- a/site/src/components/ActiveUserChart/ActiveUserChart.stories.tsx +++ b/site/src/components/ActiveUserChart/ActiveUserChart.stories.tsx @@ -22,9 +22,3 @@ export default meta; type Story = StoryObj; export const Example: Story = {}; - -export const UserLimit: Story = { - args: { - userLimit: 10, - }, -}; diff --git a/site/src/components/ActiveUserChart/ActiveUserChart.tsx b/site/src/components/ActiveUserChart/ActiveUserChart.tsx index f1695b0641cc5..41345ea8f03f8 100644 --- a/site/src/components/ActiveUserChart/ActiveUserChart.tsx +++ b/site/src/components/ActiveUserChart/ActiveUserChart.tsx @@ -14,7 +14,6 @@ import { Tooltip, defaults, } from "chart.js"; -import annotationPlugin from "chartjs-plugin-annotation"; import { HelpTooltip, HelpTooltipContent, @@ -36,21 +35,16 @@ ChartJS.register( Title, Tooltip, Legend, - annotationPlugin, ); -const USER_LIMIT_DISPLAY_THRESHOLD = 60; - export interface ActiveUserChartProps { data: readonly { date: string; amount: number }[]; interval: "day" | "week"; - userLimit: number | undefined; } export const ActiveUserChart: FC = ({ data, interval, - userLimit, }) => { const theme = useTheme(); @@ -64,24 +58,6 @@ export const ActiveUserChart: FC = ({ responsive: true, animation: false, plugins: { - annotation: { - annotations: [ - { - type: "line", - scaleID: "y", - display: shouldDisplayUserLimit(userLimit, chartData), - value: userLimit, - borderColor: theme.palette.secondary.contrastText, - borderWidth: 5, - label: { - content: "User limit", - color: theme.palette.primary.contrastText, - display: true, - font: { weight: "normal" }, - }, - }, - ], - }, legend: { display: false, }, @@ -103,7 +79,6 @@ export const ActiveUserChart: FC = ({ precision: 0, }, }, - x: { grid: { color: theme.palette.divider }, ticks: { @@ -138,32 +113,26 @@ export const ActiveUserChart: FC = ({ ); }; -export const ActiveUsersTitle: FC = () => { +type ActiveUsersTitleProps = { + interval: "day" | "week"; +}; + +export const ActiveUsersTitle: FC = ({ interval }) => { return (
- Active Users + {interval === "day" ? "Daily" : "Weekly"} Active Users How do we calculate active users? When a connection is initiated to a user's workspace they are - considered an active user. e.g. apps, web terminal, SSH + considered an active user. e.g. apps, web terminal, SSH. This is for + measuring user activity and has no connection to license + consumption.
); }; - -function shouldDisplayUserLimit( - userLimit: number | undefined, - activeUsers: number[], -): boolean { - if (!userLimit || activeUsers.length === 0) { - return false; - } - return ( - Math.max(...activeUsers) >= (userLimit * USER_LIMIT_DISPLAY_THRESHOLD) / 100 - ); -} diff --git a/site/src/pages/DeploymentSettingsPage/GeneralSettingsPage/GeneralSettingsPageView.stories.tsx b/site/src/pages/DeploymentSettingsPage/GeneralSettingsPage/GeneralSettingsPageView.stories.tsx index 6f09110e77a5e..9147a1a5befff 100644 --- a/site/src/pages/DeploymentSettingsPage/GeneralSettingsPage/GeneralSettingsPageView.stories.tsx +++ b/site/src/pages/DeploymentSettingsPage/GeneralSettingsPage/GeneralSettingsPageView.stories.tsx @@ -50,13 +50,6 @@ type Story = StoryObj; export const Page: Story = {}; -export const WithUserLimit: Story = { - args: { - deploymentDAUs: MockDeploymentDAUResponse, - entitlements: MockEntitlementsWithUserLimit, - }, -}; - export const NoDAUs: Story = { args: { deploymentDAUs: undefined, diff --git a/site/src/pages/DeploymentSettingsPage/GeneralSettingsPage/GeneralSettingsPageView.tsx b/site/src/pages/DeploymentSettingsPage/GeneralSettingsPage/GeneralSettingsPageView.tsx index 0b4ee0c6d0c43..29edacd08d9e7 100644 --- a/site/src/pages/DeploymentSettingsPage/GeneralSettingsPage/GeneralSettingsPageView.tsx +++ b/site/src/pages/DeploymentSettingsPage/GeneralSettingsPage/GeneralSettingsPageView.tsx @@ -49,16 +49,8 @@ export const GeneralSettingsPageView: FC = ({ )} {deploymentDAUs && (
- }> - + }> +
)} diff --git a/site/src/pages/TemplatePage/TemplateInsightsPage/TemplateInsightsPage.stories.tsx b/site/src/pages/TemplatePage/TemplateInsightsPage/TemplateInsightsPage.stories.tsx index 7fe492a1a3275..5ab6c0ea259f4 100644 --- a/site/src/pages/TemplatePage/TemplateInsightsPage/TemplateInsightsPage.stories.tsx +++ b/site/src/pages/TemplatePage/TemplateInsightsPage/TemplateInsightsPage.stories.tsx @@ -868,11 +868,3 @@ export const Loaded: Story = { }, }, }; - -export const LoadedWithUserLimit: Story = { - ...Loaded, - args: { - ...Loaded.args, - entitlements: MockEntitlementsWithUserLimit, - }, -}; diff --git a/site/src/pages/TemplatePage/TemplateInsightsPage/TemplateInsightsPage.tsx b/site/src/pages/TemplatePage/TemplateInsightsPage/TemplateInsightsPage.tsx index a7e0351e8ba80..f205194a1aded 100644 --- a/site/src/pages/TemplatePage/TemplateInsightsPage/TemplateInsightsPage.tsx +++ b/site/src/pages/TemplatePage/TemplateInsightsPage/TemplateInsightsPage.tsx @@ -249,7 +249,7 @@ const ActiveUsersPanel: FC = ({ - + @@ -258,7 +258,6 @@ const ActiveUsersPanel: FC = ({ {data && data.length > 0 && ( ({ amount: d.active_users, date: d.start_time,