refactor: organized component folder structure
All checks were successful
container-scan / Container Scan (pull_request) Successful in 4m39s
docker-build / docker (pull_request) Successful in 10m19s

fix: scrolling in login page
This commit is contained in:
Maximilian Liebmann 2025-06-18 22:25:27 +02:00
parent 138970f4c3
commit a412d0710b
15 changed files with 31 additions and 31 deletions

View file

@ -1,5 +1,5 @@
import { RedirectButton } from '@/components/user/redirect-button'; import { RedirectButton } from '@/components/buttons/redirect-button';
import { ThemePicker } from '@/components/user/theme-picker'; import { ThemePicker } from '@/components/misc/theme-picker';
export default function Home() { export default function Home() {
return ( return (

View file

@ -1,4 +1,4 @@
import { ThemeProvider } from '@/components/theme-provider'; import { ThemeProvider } from '@/components/wrappers/theme-provider';
import type { Metadata } from 'next'; import type { Metadata } from 'next';
import './globals.css'; import './globals.css';

View file

@ -1,17 +1,17 @@
import { auth, providerMap } from '@/auth'; import { auth, providerMap } from '@/auth';
import SSOLogin from '@/components/user/sso-login-button'; import SSOLogin from '@/components/buttons/sso-login-button';
import LoginForm from '@/components/user/login-form'; import LoginForm from '@/components/forms/login-form';
import { redirect } from 'next/navigation'; import { redirect } from 'next/navigation';
import { Button } from '@/components/custom-ui/button'; import { Button } from '@/components/ui/button';
import Image from 'next/image'; import Image from 'next/image';
import { Separator } from '@/components/custom-ui/separator'; import { Separator } from '@/components/ui/separator';
import Logo from '@/components/logo'; import Logo from '@/components/misc/logo';
import { import {
Card, Card,
CardContent, CardContent,
CardHeader, CardHeader,
} from '@/components/custom-ui/login-card'; } from '@/components/custom-ui/login-card';
import { ThemePicker } from '@/components/user/theme-picker'; import { ThemePicker } from '@/components/misc/theme-picker';
import { import {
HoverCard, HoverCard,
HoverCardTrigger, HoverCardTrigger,
@ -26,7 +26,7 @@ export default async function LoginPage() {
} }
return ( return (
<div className='flex flex-col items-center min-h-screen'> <div className='flex flex-col items-center max-h-screen overflow-y-auto'>
<div className='flex flex-col items-center min-h-screen'> <div className='flex flex-col items-center min-h-screen'>
<div className='fixed top-4 right-4'> <div className='fixed top-4 right-4'>
<ThemePicker /> <ThemePicker />
@ -51,20 +51,20 @@ export default async function LoginPage() {
</CardContent> </CardContent>
</Card> </Card>
</div> </div>
<HoverCard>
<HoverCardTrigger>
<Button variant='link'>made with love</Button>
</HoverCardTrigger>
<HoverCardContent className='flex items-center justify-center'>
<Image
src='https://img1.wikia.nocookie.net/__cb20140808110649/clubpenguin/images/a/a1/Action_Dance_Light_Blue.gif'
width='150'
height='150'
alt='dancing penguin'
></Image>
</HoverCardContent>
</HoverCard>
</div> </div>
<HoverCard>
<HoverCardTrigger>
<Button variant='link'>made with love</Button>
</HoverCardTrigger>
<HoverCardContent className='flex items-center justify-center'>
<Image
src='https://img1.wikia.nocookie.net/__cb20140808110649/clubpenguin/images/a/a1/Action_Dance_Light_Blue.gif'
width='150'
height='150'
alt='dancing penguin'
></Image>
</HoverCardContent>
</HoverCard>
</div> </div>
); );
} }

View file

@ -1,5 +1,5 @@
import { signOut } from '@/auth'; import { signOut } from '@/auth';
import { Button } from '@/components/custom-ui/button'; import { Button } from '@/components/ui/button';
import { import {
Card, Card,
CardContent, CardContent,

View file

@ -1,4 +1,4 @@
import { Button } from '@/components/custom-ui/button'; import { Button } from '@/components/ui/button';
import { import {
Card, Card,
CardContent, CardContent,

View file

@ -1,4 +1,4 @@
import { Button } from '@/components/custom-ui/button'; import { Button } from '@/components/ui/button';
import { IconProp } from '@fortawesome/fontawesome-svg-core'; import { IconProp } from '@fortawesome/fontawesome-svg-core';
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';

View file

@ -1,4 +1,4 @@
import { Button } from '../custom-ui/button'; import { Button } from '../ui/button';
import Link from 'next/link'; import Link from 'next/link';
export function RedirectButton({ export function RedirectButton({

View file

@ -1,5 +1,5 @@
import { signIn } from '@/auth'; import { signIn } from '@/auth';
import { IconButton } from '@/components/icon-button'; import { IconButton } from '@/components/buttons/icon-button';
import { faOpenid } from '@fortawesome/free-brands-svg-icons'; import { faOpenid } from '@fortawesome/free-brands-svg-icons';
export default function SSOLogin({ export default function SSOLogin({

View file

@ -3,8 +3,8 @@
import React, { useState, useRef } from 'react'; import React, { useState, useRef } from 'react';
import { useRouter } from 'next/navigation'; import { useRouter } from 'next/navigation';
import LabeledInput from '@/components/labeled-input'; import LabeledInput from '@/components/custom-ui/labeled-input';
import { Button } from '@/components/custom-ui/button'; import { Button } from '@/components/ui/button';
import useZodForm from '@/lib/hooks/useZodForm'; import useZodForm from '@/lib/hooks/useZodForm';
import { loginSchema, registerSchema } from '@/lib/validation/user'; import { loginSchema, registerSchema } from '@/lib/validation/user';
import { loginAction } from '@/lib/auth/login'; import { loginAction } from '@/lib/auth/login';

View file

@ -4,7 +4,7 @@ import * as React from 'react';
import { Moon, Sun } from 'lucide-react'; import { Moon, Sun } from 'lucide-react';
import { useTheme } from 'next-themes'; import { useTheme } from 'next-themes';
import { Button } from '@/components/custom-ui/button'; import { Button } from '@/components/ui/button';
import { import {
DropdownMenu, DropdownMenu,
DropdownMenuContent, DropdownMenuContent,