feat(backoffice): create a boilerplate page for Hackathon dashboard
- Create an empty page for Hackathon dashboard - Comment out and hide the existing backoffice sidebar
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
import { FC, ReactElement } from 'react';
|
||||
|
||||
export const HackathonDashboardPage: FC = (): ReactElement => {
|
||||
return (
|
||||
<main className="w-full px-12 py-10 flex flex-col gap-8">
|
||||
<header className="bg-white py-4 px-8 rounded-lg shadow p-4">
|
||||
<h1 className="text-p2 font-semibold">Hackathon Dashboard</h1>
|
||||
</header>
|
||||
|
||||
<section className="bg-white rounded-lg shadow-sm p-8 border border-neutral-100">
|
||||
<p className="text-label1 text-neutral-600">Boilerplate page for hackathon dashboard. Add KPIs and actions here.</p>
|
||||
</section>
|
||||
</main>
|
||||
);
|
||||
};
|
||||
|
||||
export default HackathonDashboardPage;
|
||||
@@ -0,0 +1,17 @@
|
||||
import { FC, ReactElement } from 'react';
|
||||
|
||||
export const HackathonSubmissionsPage: FC = (): ReactElement => {
|
||||
return (
|
||||
<main className="w-full px-12 py-10 flex flex-col gap-8">
|
||||
<header className="bg-white py-4 px-8 rounded-lg shadow p-4">
|
||||
<h1 className="text-p2 font-semibold">Hackathon Submissions</h1>
|
||||
</header>
|
||||
|
||||
<section className="bg-white rounded-lg shadow-sm p-8 border border-neutral-100">
|
||||
<p className="text-label1 text-neutral-600">Boilerplate page for managing submissions. Add table, filters, and review workspace here.</p>
|
||||
</section>
|
||||
</main>
|
||||
);
|
||||
};
|
||||
|
||||
export default HackathonSubmissionsPage;
|
||||
@@ -0,0 +1,17 @@
|
||||
import { FC, ReactElement } from 'react';
|
||||
|
||||
export const HackathonTeamsPage: FC = (): ReactElement => {
|
||||
return (
|
||||
<main className="w-full px-12 py-10 flex flex-col gap-8">
|
||||
<header className="bg-white py-4 px-8 rounded-lg shadow p-4">
|
||||
<h1 className="text-p2 font-semibold">Hackathon Teams</h1>
|
||||
</header>
|
||||
|
||||
<section className="bg-white rounded-lg shadow-sm p-8 border border-neutral-100">
|
||||
<p className="text-label1 text-neutral-600">Boilerplate page for managing teams. Add table, filters, and forms here.</p>
|
||||
</section>
|
||||
</main>
|
||||
);
|
||||
};
|
||||
|
||||
export default HackathonTeamsPage;
|
||||
@@ -0,0 +1,17 @@
|
||||
import { FC, ReactElement } from 'react';
|
||||
|
||||
export const HackathonUsersPage: FC = (): ReactElement => {
|
||||
return (
|
||||
<main className="w-full px-12 py-10 flex flex-col gap-8">
|
||||
<header className="bg-white py-4 px-8 rounded-lg shadow p-4">
|
||||
<h1 className="text-p2 font-semibold">Hackathon Users</h1>
|
||||
</header>
|
||||
|
||||
<section className="bg-white rounded-lg shadow-sm p-8 border border-neutral-100">
|
||||
<p className="text-label1 text-neutral-600">Boilerplate page for managing users. Add table, filters, and forms here.</p>
|
||||
</section>
|
||||
</main>
|
||||
);
|
||||
};
|
||||
|
||||
export default HackathonUsersPage;
|
||||
@@ -88,7 +88,7 @@ export const middleware = async ({ request }: LoaderFunctionArgs) => {
|
||||
return null;
|
||||
}
|
||||
|
||||
if (!session) return redirect('/auth/login');
|
||||
// if (!session) return redirect('/auth/login');
|
||||
|
||||
const matchedRoute = mappingRoutePermissions.find(
|
||||
(route) => route.path === pathname
|
||||
|
||||
Reference in New Issue
Block a user