From 4fef8b74ad24d0b6cae66d8cec082300e7aba884 Mon Sep 17 00:00:00 2001 From: amohamdy99 Date: Sun, 16 Jun 2024 13:47:49 -0700 Subject: [PATCH] telemetry report page skeleton --- web/src/app/admin/telemetry/interfaces.ts | 3 + web/src/app/admin/telemetry/page.tsx | 82 +++++++++++++++++++++++ web/src/components/admin/Layout.tsx | 15 +++++ 3 files changed, 100 insertions(+) create mode 100644 web/src/app/admin/telemetry/interfaces.ts create mode 100644 web/src/app/admin/telemetry/page.tsx diff --git a/web/src/app/admin/telemetry/interfaces.ts b/web/src/app/admin/telemetry/interfaces.ts new file mode 100644 index 000000000..adb1874e5 --- /dev/null +++ b/web/src/app/admin/telemetry/interfaces.ts @@ -0,0 +1,3 @@ +export interface TelemetryReport { + +} diff --git a/web/src/app/admin/telemetry/page.tsx b/web/src/app/admin/telemetry/page.tsx new file mode 100644 index 000000000..1345fe4ff --- /dev/null +++ b/web/src/app/admin/telemetry/page.tsx @@ -0,0 +1,82 @@ +import { AdminPageTitle } from "@/components/admin/Title"; +import { ConnectorsTable } from "@/components/admin/connectors/table/ConnectorsTable"; +import { Settings, TelemetryReport } from "./interfaces"; +import { fetchSS } from "@/lib/utilsSS"; + +import { FiSettings } from "react-icons/fi"; +import { Callout, Divider, Table, TableHead, TableHeaderCell, TableRow, Text } from "@tremor/react"; +import { Button } from "@tremor/react"; + +function TelemetryReportsTable() { + return ( + + + + Report + Period + Time Generated + Download + + +
+ ) +} + +function DataDisclaimer({ props }) { + return ( +
+
+ + + We don't collect ... DISCLAIMER DISCLAIMER DISCLAIMER +
+ We collect ... +
    +
  • Usage Volume
  • +
  • Number of Active Seats
  • +
  • Query Volume (No identifying data)
  • +
+
+ We use this to ... INFO INFO INFO +
+
+
+
+ ) +} + +export default async function Page() { + const response = await fetchSS("/settings"); + + if (!response.ok) { + const errorMsg = await response.text(); + return {errorMsg}; + } + + const settings = (await response.json()) as Settings; + + return ( +
+ } + /> + + + Export Telemetry about usage statistics for all users in the workspace. + + + + + + + + +
+ ); +} diff --git a/web/src/components/admin/Layout.tsx b/web/src/components/admin/Layout.tsx index e403b00a1..be65572a4 100644 --- a/web/src/components/admin/Layout.tsx +++ b/web/src/components/admin/Layout.tsx @@ -181,6 +181,21 @@ export async function Layout({ children }: { children: React.ReactNode }) { }, ], }, + { + name: "Telemetry", + items: [ + { + name: ( +
+ +
Export Telemetry
+
+ ), + link: "/admin/telemetry" + + } + ] + }, { name: "Settings", items: [