Updated some legal screen stuff

This commit is contained in:
Alois 2026-03-26 16:34:57 +00:00
commit ea72de0f08
6 changed files with 215 additions and 306 deletions

View file

@ -1,10 +1,12 @@
import Socket from "@tensamin/ttp/context";
import User from "@tensamin/user/context";
import type { ReactNode } from "react";
import { useEffect, useState, type ReactNode } from "react";
import { useNavigate, useLocation } from "@tanstack/react-router";
import Sidebar from "@/components/sidebar";
import Conversation from "@/features/conversation/context";
import Navbar from "@/components/navbar";
import { useStorage } from "@tensamin/storage/context";
/**
* Executes Layout.
@ -12,8 +14,30 @@ import Navbar from "@/components/navbar";
* @returns unknown.
*/
export default function Layout(props: { children: ReactNode }) {
const [loggedIn, setLoggedIn] = useState<boolean | null>(null);
const { load } = useStorage();
const location = useLocation();
const navigate = useNavigate();
useEffect(() => {
console.log(location);
load("user_id").then((userId) => {
if (userId !== 0) {
setLoggedIn(true);
} else {
navigate({
to: "/login",
});
setLoggedIn(false);
}
});
}, [location]);
return (
<Socket>
<Socket blockConnection={!loggedIn}>
<User>
<Conversation>
<div className="w-full h-full flex bg-sidebar">