updated codegen, fixed tsconfig, added prisma

added login, registration and session check
This commit is contained in:
lnn0q 2025-03-23 21:06:15 +02:00
parent 9518787206
commit 04b606b7fa
24 changed files with 740 additions and 1747 deletions

View file

@ -1,28 +1,28 @@
import { Button, Stack } from "@chakra-ui/react";
import { createRootRoute, Link, Outlet } from "@tanstack/react-router";
import React from "react";
import { Button, Stack } from '@chakra-ui/react';
import { createRootRoute, Link, Outlet } from '@tanstack/react-router';
import React from 'react';
const TanStackRouterDevtools =
process.env.NODE_ENV === "production"
process.env.NODE_ENV === 'production'
? () => null // Render nothing in production
: React.lazy(() =>
// Lazy load in development
import("@tanstack/router-devtools").then((res) => ({
default: res.TanStackRouterDevtools,
import('@tanstack/router-devtools').then(res => ({
default: res.TanStackRouterDevtools
// For Embedded Mode
// default: res.TanStackRouterDevtoolsPanel
})),
}))
);
export const Route = createRootRoute({
component: () => (
<Stack padding={3}>
<Stack flexDirection={"row"} justifyContent={"space-between"}>
<Stack flexDirection={'row'} justifyContent={'space-between'}>
<Link to="/">
<Button>Home</Button>
</Link>
<Stack flexDirection={"row"}>
<Stack flexDirection={'row'}>
<Link to="/login">
<Button>Sign in</Button>
</Link>
@ -31,9 +31,9 @@ export const Route = createRootRoute({
</Link>
</Stack>
</Stack>
<hr style={{ padding: "4px" }} />
<hr style={{ padding: '4px' }} />
<Outlet />
<TanStackRouterDevtools />
</Stack>
),
)
});

View file

@ -1,20 +1,20 @@
import { createLazyFileRoute } from "@tanstack/react-router";
import { gql, useQuery } from "@apollo/client";
// import { gql } from '@apollo/client';
import { createLazyFileRoute } from '@tanstack/react-router';
export const Route = createLazyFileRoute("/book")({
component: RouteComponent,
export const Route = createLazyFileRoute('/book')({
component: RouteComponent
});
function RouteComponent() {
return <div>"/book"</div>;
}
const getBookQuery = gql`
query BookOne {
booksMany {
id
author
title
}
}
`;
// const getBookQuery = gql`
// query BookOne {
// booksMany {
// id
// author
// title
// }
// }
// `;

View file

@ -1,4 +1,4 @@
import { Text, Stack } from '@chakra-ui/react';
import { Stack, Text } from '@chakra-ui/react';
import { createFileRoute } from '@tanstack/react-router';
import { gql, useQuery } from '@apollo/client';

View file

@ -1,10 +1,10 @@
import { gql, useQuery } from '@apollo/client';
// import { gql, useQuery } from '@apollo/client';
import { Heading, Input, Stack } from '@chakra-ui/react';
import { Button } from '@client/components/ui/button';
import { Field } from '@client/components/ui/field';
import { valibotResolver } from '@hookform/resolvers/valibot';
import { createFileRoute } from '@tanstack/react-router';
import { useForm } from 'react-hook-form';
import { valibotResolver } from '@hookform/resolvers/valibot';
import * as v from 'valibot';
export const Route = createFileRoute('/login')({

View file

@ -1,10 +1,10 @@
import { gql, useQuery } from '@apollo/client';
// import { gql, useQuery } from '@apollo/client';
import { Heading, Input, Stack } from '@chakra-ui/react';
import { Button } from '@client/components/ui/button';
import { Field } from '@client/components/ui/field';
import { valibotResolver } from '@hookform/resolvers/valibot';
import { createFileRoute } from '@tanstack/react-router';
import { useForm } from 'react-hook-form';
import { valibotResolver } from '@hookform/resolvers/valibot';
import * as v from 'valibot';
export const Route = createFileRoute('/register')({
@ -53,7 +53,7 @@ function Register() {
formState: { errors }
} = useForm<FormValues>({ resolver: valibotResolver(schema) });
const onSubmit = handleSubmit(data => console.log(data));
const onSubmit = handleSubmit(data => alert(data));
return (
<form onSubmit={onSubmit}>