Merge branch 'main' into PRWLR-4393-Setup-NextAuth-client-session

This commit is contained in:
Pablo Lara committed 2024-08-26 15:46:03 +02:00
commit 06d05ec860
19 files changed
+643 -17

No files matched your search

+12
View File
@@ -0,0 +1,12 @@
import { Spacer } from "@nextui-org/react";
import { Header } from "@/components/ui";
export default async function Categories() {
return (
<>
<Header title="Categories" icon="material-symbols:folder-open-outline" />
<Spacer y={4} />
</>
);
}
@@ -2,10 +2,10 @@ import React from "react";
import { Header } from "@/components/ui";
export default function Integration() {
export default function Integrations() {
return (
<>
<Header title="Integration" icon="tabler:puzzle" />
<Header title="Integrations" icon="tabler:puzzle" />
<p>Hi hi from Integration page</p>
</>
+43
View File
@@ -0,0 +1,43 @@
import { Spacer } from "@nextui-org/react";
import { redirect } from "next/navigation";
import { Suspense } from "react";
import { getUsers } from "@/actions/users";
import { Header } from "@/components/ui";
import {
ColumnsUser,
DataTableUser,
SkeletonTableUser,
} from "@/components/users";
import { searchParamsProps } from "@/types";
export default async function Users({ searchParams }: searchParamsProps) {
return (
<>
<Header title="User Management" icon="ci:users" />
<Spacer y={4} />
<div className="flex flex-col items-end w-full">
<Spacer y={6} />
<Suspense key={searchParams.page} fallback={<SkeletonTableUser />}>
<SSRDataTable searchParams={searchParams} />
</Suspense>
</div>
</>
);
}
const SSRDataTable = async ({ searchParams }: searchParamsProps) => {
const page = searchParams.page ? parseInt(searchParams.page) : 1;
const usersData = await getUsers({ page });
const [users] = await Promise.all([usersData]);
if (users?.errors) redirect("/users");
return (
<DataTableUser
columns={ColumnsUser}
data={users?.users?.data ?? []}
metadata={users?.meta}
/>
);
};
+12
View File
@@ -0,0 +1,12 @@
import { Spacer } from "@nextui-org/react";
import { Header } from "@/components/ui";
export default async function Workloads() {
return (
<>
<Header title="Workloads" icon="lucide:tags" />
<Spacer y={4} />
</>
);
}
+10
View File
@@ -0,0 +1,10 @@
import { NextResponse } from "next/server";
import data from "../../../dataUsers.json";
export async function GET() {
// Simulate fetching data with a delay
await new Promise((resolve) => setTimeout(resolve, 2000));
return NextResponse.json({ users: data });
}