import React, { useEffect, useState } from 'react'; import Image from 'next/image'; import { CSSTransition } from 'react-transition-group'; import shared from '../styles/Shared.module.scss'; import styles from '../styles/Archive.module.scss'; import PerformersData2021 from '../data/performers/2021'; import PerformersData2022 from '../data/performers/2022'; import Performer from '../types/Performer'; import { BiChevronDown, BiChevronLeft } from 'react-icons/bi'; interface PerformerCard extends Performer { id: number; showDesc: boolean; } const Archive = () => { const [performers2021, setPerformers2021] = useState([]); const [performers2022, setPerformers2022] = useState([]); useEffect(() => { let cards: PerformerCard[] = []; PerformersData2021.map((p, index) => { let newCard = { ...p, id: index, showDesc: false }; cards.push(newCard); }); setPerformers2021(cards); }, []); useEffect(() => { let cards: PerformerCard[] = []; PerformersData2022.map((p, index) => { let newCard = { ...p, id: index, showDesc: false }; cards.push(newCard); }); setPerformers2022(cards); }, []); const togglePerformerDesc2021 = (id: number) => { let updated: PerformerCard[]; updated = performers2021.map((p) => { if (p.id === id) { p.showDesc = !p.showDesc; } return p; }); setPerformers2021(updated); }; const togglePerformerDesc2022 = (id: number) => { let updated: PerformerCard[]; updated = performers2022.map((p) => { if (p.id === id) { p.showDesc = !p.showDesc; } return p; }); setPerformers2022(updated); }; return (

Arkisto

2022

{performers2022.map((p) => (
{p.name
togglePerformerDesc2022(p.id)} >

{p.name}

{p.showDesc ? (
{p.paragraphs.map((parag, index) => (

{parag.toString()}

))}
) : ( )}

))}

2021

{performers2021.map((p) => (
{p.name
togglePerformerDesc2021(p.id)} >

{p.name}

{p.showDesc ? (
{p.paragraphs.map((parag, index) => (

{parag.toString()}

))}
) : ( )}

))}
); }; export default Archive;