import { signOut } from "next-auth/react"
import { Session } from 'next-auth';
import LinkTag from "next/link";
import Image from "next/image";
import styles from '../../styles/home/categories.module.scss';
import { Category, Link } from '../../types';
interface CategoryProps {
categories: Category[];
favorites: Link[];
handleSelectCategory: (category: Category) => void;
categoryActive: Category;
session: Session;
}
export default function Categories({
categories,
favorites,
handleSelectCategory,
categoryActive,
session
}: CategoryProps) {
return (
Favoris
{favorites.map((link, key) => (
))}
Catégories
{categories.map((category, key) => (
))}
{session.user.name}
);
}
function LinkFavorite({ link }: { link: Link; }): JSX.Element {
const { name, url, category } = link;
return (
{name} - {category.name}
)
}
interface CategoryItemProps {
category: Category;
categoryActive: Category;
handleSelectCategory: (category: Category) => void;
}
function CategoryItem({ category, categoryActive, handleSelectCategory }: CategoryItemProps): JSX.Element {
const className = `${styles['item']} ${category.id === categoryActive.id ? styles['active'] : ''}`;
const onClick = () => handleSelectCategory(category);
return (
{category.name} — {category.links.length}
)
}