From 5d849fc8b1c36ca0dccc4443bf0ea8393b9116f7 Mon Sep 17 00:00:00 2001 From: mrevanzak Date: Thu, 23 May 2024 03:13:15 +0700 Subject: [PATCH] feat(web): admin homepage --- apps/web/package.json | 3 +- .../src/app/(app)/@admin/documents/page.tsx | 2 +- apps/web/src/app/(app)/@admin/page.tsx | 109 ++- apps/web/src/app/(app)/layout.tsx | 2 +- apps/web/src/components/area-chart.tsx | 894 ++++++++++++++++++ apps/web/src/lib/chartUtils.ts | 125 +++ apps/web/src/lib/hooks/useOnWindowResize.ts | 22 + bun.lockb | Bin 529488 -> 541320 bytes 8 files changed, 1133 insertions(+), 24 deletions(-) create mode 100644 apps/web/src/components/area-chart.tsx create mode 100644 apps/web/src/lib/chartUtils.ts create mode 100644 apps/web/src/lib/hooks/useOnWindowResize.ts diff --git a/apps/web/package.json b/apps/web/package.json index 0e721c0..c2c0b71 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -38,6 +38,7 @@ "react": "18.3.1", "react-dom": "18.3.1", "react-icons": "^5.2.0", + "recharts": "^2.12.7", "superjson": "2.2.1", "zod": "^3.23.0" }, @@ -60,4 +61,4 @@ "typescript": "^5.4.5" }, "prettier": "@tanya.in/prettier-config" -} \ No newline at end of file +} diff --git a/apps/web/src/app/(app)/@admin/documents/page.tsx b/apps/web/src/app/(app)/@admin/documents/page.tsx index de6c2c7..de44f43 100644 --- a/apps/web/src/app/(app)/@admin/documents/page.tsx +++ b/apps/web/src/app/(app)/@admin/documents/page.tsx @@ -8,7 +8,7 @@ export default async function DocumentsPage() { return (
-

All Files

+

All Files

); diff --git a/apps/web/src/app/(app)/@admin/page.tsx b/apps/web/src/app/(app)/@admin/page.tsx index 1fb02de..2f9b99e 100644 --- a/apps/web/src/app/(app)/@admin/page.tsx +++ b/apps/web/src/app/(app)/@admin/page.tsx @@ -1,29 +1,96 @@ -import { - Card, - CardContent, - CardFooter, - CardHeader, - CardTitle, -} from "@tanya.in/ui/card"; -import { Chat } from "@tanya.in/ui/chat"; +import { AreaChart } from "@/components/area-chart"; +import { api } from "@/trpc/server"; +import { Chip, Divider, Tooltip } from "@nextui-org/react"; +import moment from "moment"; + +import { Card, CardContent, CardHeader, CardTitle } from "@tanya.in/ui/card"; + +export default async function HomePage() { + const analytics = await api.analytics.get(); + const data = analytics.map((item) => ({ + date: item.key, + "Page Views": item.total, + Visitors: item.devices, + })); + + const { visitors, pageViews } = analytics.reduce( + (acc, { devices, total }) => { + acc.visitors += devices; + acc.pageViews += total; + return acc; + }, + { + visitors: 0, + pageViews: 0, + }, + ); + const { visitorsLastWeek, pageViewsLastWeek } = analytics.reduce( + (acc, { devices, total, key }) => { + if (moment(key).isSameOrBefore(moment().subtract(1, "week"))) { + acc.visitorsLastWeek += devices; + acc.pageViewsLastWeek += total; + } + return acc; + }, + { + visitorsLastWeek: 0, + pageViewsLastWeek: 0, + }, + ); -export default function HomePage() { return ( -
- +
+ - Admin + Statistics - - + + +
+
+
+

{pageViews}

+ pageViewsLastWeek ? "more" : "less"} page views than last week`} + color="foreground" + > + + {pageViews > pageViewsLastWeek + ? "↑" + pageViews + : "↓" + pageViews} + + +
+

Page Views

+
+ +
+
+
+

{visitors}

+ visitorsLastWeek ? "more" : "less"} visitors than last week`} + color="foreground" + > + + {visitors > visitorsLastWeek + ? "↑" + visitors + : "↓" + visitors} + + +
+

Visitors

+
- - - - /: To choose the topic - - -
); diff --git a/apps/web/src/app/(app)/layout.tsx b/apps/web/src/app/(app)/layout.tsx index ddbbdf1..d1e4e19 100644 --- a/apps/web/src/app/(app)/layout.tsx +++ b/apps/web/src/app/(app)/layout.tsx @@ -27,7 +27,7 @@ export default async function AuthLayout(props: {
{isAdmin ? props.admin : props.user} diff --git a/apps/web/src/components/area-chart.tsx b/apps/web/src/components/area-chart.tsx new file mode 100644 index 0000000..740916d --- /dev/null +++ b/apps/web/src/components/area-chart.tsx @@ -0,0 +1,894 @@ +/* eslint-disable @typescript-eslint/no-unsafe-return */ +/* eslint-disable @typescript-eslint/no-unsafe-argument */ +/* eslint-disable @typescript-eslint/no-unsafe-member-access */ +/* eslint-disable @typescript-eslint/no-unsafe-call */ +/* eslint-disable @typescript-eslint/no-unsafe-assignment */ +/* eslint-disable @typescript-eslint/no-explicit-any */ +/* eslint-disable @typescript-eslint/no-non-null-assertion */ +// Tremor Raw AreaChart [v0.0.0] + +"use client"; + +import type { AvailableChartColorsKeys } from "@/lib/chartUtils"; +import type { AxisDomain } from "recharts/types/util/types"; +import React from "react"; +import { + AvailableChartColors, + constructCategoryColors, + getColorClassName, + getYAxisDomain, + hasOnlyOneValueForKey, +} from "@/lib/chartUtils"; +import { useOnWindowResize } from "@/lib/hooks/useOnWindowResize"; +import { RiArrowLeftSLine, RiArrowRightSLine } from "react-icons/ri"; +import { + Area, + CartesianGrid, + Dot, + Label, + Line, + AreaChart as RechartsAreaChart, + Legend as RechartsLegend, + ResponsiveContainer, + Tooltip, + XAxis, + YAxis, +} from "recharts"; + +import { cn } from "@tanya.in/ui"; + +//#region Legend + +interface LegendItemProps { + name: string; + color: AvailableChartColorsKeys; + onClick?: (name: string, color: AvailableChartColorsKeys) => void; + activeLegend?: string; +} + +const LegendItem = ({ + name, + color, + onClick, + activeLegend, +}: LegendItemProps) => { + const hasOnValueChange = !!onClick; + return ( +
  • { + e.stopPropagation(); + onClick?.(name, color); + }} + > + +

    + {name} +

    +
  • + ); +}; + +interface ScrollButtonProps { + icon: React.ElementType; + onClick?: () => void; + disabled?: boolean; +} + +const ScrollButton = ({ icon, onClick, disabled }: ScrollButtonProps) => { + const Icon = icon; + const [isPressed, setIsPressed] = React.useState(false); + const intervalRef = React.useRef(null); + + React.useEffect(() => { + if (isPressed) { + intervalRef.current = setInterval(() => { + onClick?.(); + }, 300); + } else { + clearInterval(intervalRef.current!); + } + return () => clearInterval(intervalRef.current!); + }, [isPressed, onClick]); + + React.useEffect(() => { + if (disabled) { + clearInterval(intervalRef.current!); + setIsPressed(false); + } + }, [disabled]); + + return ( + + ); +}; + +interface LegendProps extends React.OlHTMLAttributes { + categories: string[]; + colors?: AvailableChartColorsKeys[]; + onClickLegendItem?: (category: string, color: string) => void; + activeLegend?: string; + enableLegendSlider?: boolean; +} + +interface HasScrollProps { + left: boolean; + right: boolean; +} + +const Legend = React.forwardRef((props, ref) => { + const { + categories, + colors = AvailableChartColors, + className, + onClickLegendItem, + activeLegend, + enableLegendSlider = false, + ...other + } = props; + const scrollableRef = React.useRef(null); + const [hasScroll, setHasScroll] = React.useState(null); + const [isKeyDowned, setIsKeyDowned] = React.useState(null); + const intervalRef = React.useRef(null); + + const checkScroll = React.useCallback(() => { + const scrollable = scrollableRef.current; + if (!scrollable) return; + + const hasLeftScroll = scrollable.scrollLeft > 0; + const hasRightScroll = + scrollable.scrollWidth - scrollable.clientWidth > scrollable.scrollLeft; + + setHasScroll({ left: hasLeftScroll, right: hasRightScroll }); + }, [setHasScroll]); + + const scrollToTest = React.useCallback( + (direction: "left" | "right") => { + const element = scrollableRef.current; + const width = element?.clientWidth ?? 0; + + if (element && enableLegendSlider) { + element.scrollTo({ + left: + direction === "left" + ? element.scrollLeft - width + : element.scrollLeft + width, + behavior: "smooth", + }); + setTimeout(() => { + checkScroll(); + }, 400); + } + }, + [enableLegendSlider, checkScroll], + ); + + React.useEffect(() => { + const keyDownHandler = (key: string) => { + if (key === "ArrowLeft") { + scrollToTest("left"); + } else if (key === "ArrowRight") { + scrollToTest("right"); + } + }; + if (isKeyDowned) { + keyDownHandler(isKeyDowned); + intervalRef.current = setInterval(() => { + keyDownHandler(isKeyDowned); + }, 300); + } else { + clearInterval(intervalRef.current!); + } + return () => clearInterval(intervalRef.current!); + }, [isKeyDowned, scrollToTest]); + + const keyDown = (e: KeyboardEvent) => { + e.stopPropagation(); + if (e.key === "ArrowLeft" || e.key === "ArrowRight") { + e.preventDefault(); + setIsKeyDowned(e.key); + } + }; + const keyUp = (e: KeyboardEvent) => { + e.stopPropagation(); + setIsKeyDowned(null); + }; + + React.useEffect(() => { + const scrollable = scrollableRef.current; + if (enableLegendSlider) { + checkScroll(); + scrollable?.addEventListener("keydown", keyDown); + scrollable?.addEventListener("keyup", keyUp); + } + + return () => { + scrollable?.removeEventListener("keydown", keyDown); + scrollable?.removeEventListener("keyup", keyUp); + }; + }, [checkScroll, enableLegendSlider]); + + return ( +
      +
      + {categories.map((category, index) => ( + + ))} +
      + {enableLegendSlider && (hasScroll?.right ?? hasScroll?.left) ? ( + <> +
      + { + setIsKeyDowned(null); + scrollToTest("left"); + }} + disabled={!hasScroll.left} + /> + { + setIsKeyDowned(null); + scrollToTest("right"); + }} + disabled={!hasScroll.right} + /> +
      + + ) : null} +
    + ); +}); + +Legend.displayName = "Legend"; + +const ChartLegend = ( + { payload }: any, + categoryColors: Map, + setLegendHeight: React.Dispatch>, + activeLegend: string | undefined, + onClick?: (category: string, color: string) => void, + enableLegendSlider?: boolean, +) => { + const legendRef = React.useRef(null); + + useOnWindowResize(() => { + const calculateHeight = (height: number | undefined) => + height ? Number(height) + 15 : 60; + setLegendHeight(calculateHeight(legendRef.current?.clientHeight)); + }); + + const filteredPayload = payload.filter((item: any) => item.type !== "none"); + + return ( +
    + entry.value)} + colors={filteredPayload.map((entry: any) => + categoryColors.get(entry.value), + )} + onClickLegendItem={onClick} + activeLegend={activeLegend} + enableLegendSlider={enableLegendSlider} + /> +
    + ); +}; + +//#region Tooltip + +interface ChartTooltipRowProps { + value: string; + name: string; + color: string; +} + +const ChartTooltipRow = ({ value, name, color }: ChartTooltipRowProps) => ( +
    +
    +
    +

    + {value} +

    +
    +); + +interface ChartTooltipProps { + active: boolean | undefined; + payload: any; + label: string; + categoryColors: Map; + valueFormatter: (value: number) => string; +} + +const ChartTooltip = ({ + active, + payload, + label, + categoryColors, + valueFormatter, +}: ChartTooltipProps) => { + if (active && payload) { + const filteredPayload = payload.filter((item: any) => item.type !== "none"); + + return ( +
    +
    +

    + {label} +

    +
    + +
    + {filteredPayload.map( + ( + { value, name }: { value: number; name: string }, + index: number, + ) => ( + + ), + )} +
    +
    + ); + } + return null; +}; + +//#region AreaChart + +interface ActiveDot { + index?: number; + dataKey?: string; +} + +interface BaseEventProps { + eventType: "dot" | "category"; + categoryClicked: string; + [key: string]: number | string; +} + +type AreaChartEventProps = BaseEventProps | null | undefined; + +interface AreaChartProps extends React.HTMLAttributes { + data: Record[]; + index: string; + categories: string[]; + colors?: AvailableChartColorsKeys[]; + valueFormatter?: (value: number) => string; + startEndOnly?: boolean; + showXAxis?: boolean; + showYAxis?: boolean; + showGridLines?: boolean; + yAxisWidth?: number; + intervalType?: "preserveStartEnd" | "equidistantPreserveStart"; + showTooltip?: boolean; + showLegend?: boolean; + autoMinValue?: boolean; + minValue?: number; + maxValue?: number; + allowDecimals?: boolean; + onValueChange?: (value: AreaChartEventProps) => void; + enableLegendSlider?: boolean; + tickGap?: number; + connectNulls?: boolean; + xAxisLabel?: string; + yAxisLabel?: string; + type?: "default" | "stacked" | "percent"; +} + +const AreaChart = React.forwardRef( + (props, ref) => { + const { + data = [], + categories = [], + index, + colors = AvailableChartColors, + valueFormatter = (value: number) => value.toString(), + startEndOnly = false, + showXAxis = true, + showYAxis = true, + showGridLines = true, + yAxisWidth = 56, + intervalType = "equidistantPreserveStart", + showTooltip = true, + showLegend = true, + autoMinValue = false, + minValue, + maxValue, + allowDecimals = true, + connectNulls = false, + className, + onValueChange, + enableLegendSlider = false, + tickGap = 5, + xAxisLabel, + yAxisLabel, + type = "default", + ...other + } = props; + const paddingValue = !showXAxis && !showYAxis ? 0 : 20; + const [legendHeight, setLegendHeight] = React.useState(60); + const [activeDot, setActiveDot] = React.useState( + undefined, + ); + const [activeLegend, setActiveLegend] = React.useState( + undefined, + ); + const categoryColors = constructCategoryColors(categories, colors); + + const yAxisDomain = getYAxisDomain(autoMinValue, minValue, maxValue); + const hasOnValueChange = !!onValueChange; + const stacked = type === "stacked" || type === "percent"; + function valueToPercent(value: number) { + return `${(value * 100).toFixed(0)}%`; + } + + function onDotClick(itemData: any, event: React.MouseEvent) { + event.stopPropagation(); + + if (!hasOnValueChange) return; + if ( + (itemData.index === activeDot?.index && + itemData.dataKey === activeDot?.dataKey) || + (hasOnlyOneValueForKey(data, itemData.dataKey) && + activeLegend && + activeLegend === itemData.dataKey) + ) { + setActiveLegend(undefined); + setActiveDot(undefined); + onValueChange(null); + } else { + setActiveLegend(itemData.dataKey); + setActiveDot({ + index: itemData.index, + dataKey: itemData.dataKey, + }); + onValueChange({ + eventType: "dot", + categoryClicked: itemData.dataKey, + ...itemData.payload, + }); + } + } + + function onCategoryClick(dataKey: string) { + if (!hasOnValueChange) return; + if ( + (dataKey === activeLegend && !activeDot) || + (hasOnlyOneValueForKey(data, dataKey) && + activeDot && + activeDot.dataKey === dataKey) + ) { + setActiveLegend(undefined); + onValueChange(null); + } else { + setActiveLegend(dataKey); + onValueChange({ + eventType: "category", + categoryClicked: dataKey, + }); + } + setActiveDot(undefined); + } + + return ( +
    + + { + setActiveDot(undefined); + setActiveLegend(undefined); + onValueChange(null); + } + : undefined + } + margin={{ + bottom: xAxisLabel ? 30 : undefined, + left: yAxisLabel ? 20 : undefined, + right: yAxisLabel ? 5 : undefined, + top: 5, + }} + stackOffset={type === "percent" ? "expand" : undefined} + > + {showGridLines ? ( + + ) : null} + + {xAxisLabel && ( + + )} + + + {yAxisLabel && ( + + )} + + ( + + ) + ) : ( + <> + ) + } + /> + {showLegend ? ( + + ChartLegend( + { payload }, + categoryColors, + setLegendHeight, + activeLegend, + hasOnValueChange + ? (clickedLegendItem: string) => + onCategoryClick(clickedLegendItem) + : undefined, + enableLegendSlider, + ) + } + /> + ) : null} + {categories.map((category) => ( + + + + + + + ))} + {categories.map((category) => ( + { + const { + cx: cxCoord, + cy: cyCoord, + stroke, + strokeLinecap, + strokeLinejoin, + strokeWidth, + dataKey, + } = props; + return ( + onDotClick(props, event)} + /> + ); + }} + dot={(props: any) => { + const { + stroke, + strokeLinecap, + strokeLinejoin, + strokeWidth, + cx: cxCoord, + cy: cyCoord, + dataKey, + index, + } = props; + + if ( + (hasOnlyOneValueForKey(data, category) && + !( + activeDot ?? + (activeLegend && activeLegend !== category) + )) || + (activeDot?.index === index && + activeDot?.dataKey === category) + ) { + return ( + + ); + } + return ; + }} + key={category} + name={category} + type="linear" + dataKey={category} + stroke="" + strokeWidth={2} + strokeLinejoin="round" + strokeLinecap="round" + isAnimationActive={false} + connectNulls={connectNulls} + stackId={stacked ? "stack" : undefined} + fill={`url(#${categoryColors.get(category)!})`} + /> + ))} + {/* hidden lines to increase clickable target area */} + {onValueChange + ? categories.map((category) => ( + { + event.stopPropagation(); + const { name } = props; + onCategoryClick(name); + }} + /> + )) + : null} + + +
    + ); + }, +); + +AreaChart.displayName = "AreaChart"; + +export { AreaChart, type AreaChartEventProps }; diff --git a/apps/web/src/lib/chartUtils.ts b/apps/web/src/lib/chartUtils.ts new file mode 100644 index 0000000..e71cd71 --- /dev/null +++ b/apps/web/src/lib/chartUtils.ts @@ -0,0 +1,125 @@ +/* eslint-disable @typescript-eslint/no-unnecessary-condition */ +/* eslint-disable @typescript-eslint/no-unsafe-assignment */ +/* eslint-disable @typescript-eslint/no-unsafe-member-access */ +/* eslint-disable @typescript-eslint/no-explicit-any */ +// Tremor Raw chartColors [v0.0.0] + +export type ColorUtility = "bg" | "stroke" | "fill" | "text"; + +export const chartColors = { + blue: { + bg: "bg-primary-its", + stroke: "stroke-primary-its", + fill: "fill-primary-its", + text: "text-primary-its", + }, + emerald: { + bg: "bg-emerald-500", + stroke: "stroke-emerald-500", + fill: "fill-emerald-500", + text: "text-emerald-500", + }, + violet: { + bg: "bg-violet-500", + stroke: "stroke-violet-500", + fill: "fill-violet-500", + text: "text-violet-500", + }, + amber: { + bg: "bg-amber-500", + stroke: "stroke-amber-500", + fill: "fill-amber-500", + text: "text-amber-500", + }, + gray: { + bg: "bg-gray-500", + stroke: "stroke-gray-500", + fill: "fill-gray-500", + text: "text-gray-500", + }, + cyan: { + bg: "bg-cyan-500", + stroke: "stroke-cyan-500", + fill: "fill-cyan-500", + text: "text-cyan-500", + }, + pink: { + bg: "bg-pink-500", + stroke: "stroke-pink-500", + fill: "fill-pink-500", + text: "text-pink-500", + }, + yellow: { + bg: "bg-accent-its", + stroke: "stroke-accent-its", + fill: "fill-accent-its", + text: "text-accent-its", + }, +} as const satisfies Record< + string, + { + [key in ColorUtility]: string; + } +>; + +export type AvailableChartColorsKeys = keyof typeof chartColors; + +export const AvailableChartColors: AvailableChartColorsKeys[] = Object.keys( + chartColors, +) as AvailableChartColorsKeys[]; + +export const constructCategoryColors = ( + categories: string[], + colors: AvailableChartColorsKeys[], +): Map => { + const categoryColors = new Map(); + categories.forEach((category, index) => { + // @ts-expect-error idk, i just straightly copy-paste + categoryColors.set(category, colors[index % colors.length]); + }); + return categoryColors; +}; + +export const getColorClassName = ( + color: AvailableChartColorsKeys, + type: ColorUtility, +): string => { + const fallbackColor = { + bg: "bg-gray-500", + stroke: "stroke-gray-500", + fill: "fill-gray-500", + text: "text-gray-500", + }; + return chartColors[color]?.[type] ?? fallbackColor[type]; +}; + +// Tremor Raw getYAxisDomain [v0.0.0] + +export const getYAxisDomain = ( + autoMinValue: boolean, + minValue: number | undefined, + maxValue: number | undefined, +) => { + const minDomain = autoMinValue ? "auto" : minValue ?? 0; + const maxDomain = maxValue ?? "auto"; + return [minDomain, maxDomain]; +}; + +// Tremor Raw hasOnlyOneValueForKey [v0.0.0] + +export function hasOnlyOneValueForKey( + array: any[], + keyToCheck: string, +): boolean { + let value: any = undefined; + for (const obj of array) { + if (Object.prototype.hasOwnProperty.call(obj, keyToCheck)) { + if (value === undefined) { + value = obj[keyToCheck]; + } else if (value !== obj[keyToCheck]) { + return false; + } + } + } + return true; +} diff --git a/apps/web/src/lib/hooks/useOnWindowResize.ts b/apps/web/src/lib/hooks/useOnWindowResize.ts new file mode 100644 index 0000000..19b1a56 --- /dev/null +++ b/apps/web/src/lib/hooks/useOnWindowResize.ts @@ -0,0 +1,22 @@ +// Tremor Raw useOnWindowResize [v0.0.0] + +import * as React from "react"; + +export const useOnWindowResize = ( + handler: () => void, + initialWindowSize?: number, +) => { + const [windowSize, setWindowSize] = React.useState( + initialWindowSize, + ); + React.useEffect(() => { + const handleResize = () => { + setWindowSize(window.innerWidth); + handler(); + }; + handleResize(); + window.addEventListener("resize", handleResize); + + return () => window.removeEventListener("resize", handleResize); + }, [handler, windowSize]); +}; diff --git a/bun.lockb b/bun.lockb index 9567ff8659b2a33899591b9eb7fc71fea865f304..32705e363edae36c2114265b12fdb68cff050677 100755 GIT binary patch delta 83924 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 Qhh*eSNh^Bgce(NZ0bmi#zW@LL delta 77508 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