42 lines
878 B
TypeScript
42 lines
878 B
TypeScript
"use client";
|
|
|
|
import { signIn, signOut } from "next-auth/react";
|
|
import Link from "next/link";
|
|
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
|
|
import { faUser } from "@fortawesome/free-solid-svg-icons";
|
|
|
|
export const LoginButton = () => {
|
|
return (
|
|
<button className="button" onClick={() => signIn('keycloak')}>
|
|
Sign in
|
|
</button>
|
|
);
|
|
};
|
|
|
|
export const RegisterButton = () => {
|
|
return (
|
|
<Link href="/register" style={{ marginRight: 10 }}>
|
|
Register
|
|
</Link>
|
|
);
|
|
};
|
|
|
|
export const LogoutButton = () => {
|
|
return (
|
|
<button className="button" onClick={() => signOut()}>
|
|
Sign Out
|
|
</button>
|
|
);
|
|
};
|
|
|
|
export const ProfileButton = () => {
|
|
return (
|
|
<Link className="button" href="/profile">
|
|
<FontAwesomeIcon
|
|
icon={faUser}
|
|
className="fas fa-user-large mr-1"
|
|
/>Profile
|
|
</Link>
|
|
)
|
|
};
|