mirror of
https://github.com/BillyOutlast/drop.git
synced 2026-02-04 00:31:17 +01:00
* Adds new tile on the admin home page with system data. Also fixes the active users bug in the pie chart * Fixes missing parentheses * Updates user stats cache when signing in * Reads active number of users from session provider * Removes unused variable * Small improvements * Removes acl properties from system data websocket and performs initial push of data * fix: remove acl fetch --------- Co-authored-by: DecDuck <declanahofmeyr@gmail.com>
22 lines
569 B
TypeScript
22 lines
569 B
TypeScript
import type { SerializeObject } from "nitropack";
|
|
import type { SystemData } from "~/server/internal/system-data";
|
|
|
|
const ws = new WebSocketHandler("/api/v1/admin/system-data/ws");
|
|
|
|
export const useSystemData = () =>
|
|
useState<SerializeObject<SystemData>>(
|
|
"system-data",
|
|
(): SystemData => ({
|
|
totalRam: 0,
|
|
freeRam: 0,
|
|
cpuLoad: 0,
|
|
cpuCores: 0,
|
|
}),
|
|
);
|
|
|
|
ws.listen((systemDataString) => {
|
|
const data = JSON.parse(systemDataString) as SerializeObject<SystemData>;
|
|
const systemData = useSystemData();
|
|
systemData.value = data;
|
|
});
|