import React from "react";

import { createRoot } from "react-dom/client";

import useLocation from "wouter/use-location";

import Home from "./pages/main/Home";
import Exp from "./pages/main/Exp";
import Projects from "./pages/main/Projects";
import Contact from "./pages/main/Contact";
import Live from "./pages/main/Live";

import NotFound from "./pages/main/404";
import BlogHome from "./pages/blog/Home";
import { BlogPost } from "./pages/blog/components/BlogContent";
import { normalise } from "./util";

function App() {
	const [location, navigate] = useLocation();

	const normalised = normalise(location);

	if (location !== normalised) {
		navigate(normalised, { replace: true });
		return null;
	}

	switch (normalised) {
		case "/":
			return <Home />;
		case "/experience":
			return <Exp />;
		case "/projects":
			return <Projects />;
		case "/contact":
			return <Contact />;
		case "/live":
			return <Live />;
		case "/blog":
		// return <BlogHome />;
		default:
			// if (location.startsWith("/blog")) return <BlogPost />;
			return <NotFound />;
	}
}

createRoot(document.getElementById("root")!).render(
	<React.StrictMode>
		<App />
	</React.StrictMode>,
);