codegouvfr / react-dsfr

🇫🇷 The Frech Government Design system React toolkit
https://react-dsfr.codegouv.studio
MIT License
403 stars 49 forks source link

Accordion: La props 'expanded' ne controlle pas réellement l'ouverture / fermeture #258

Closed dhmjulien closed 3 months ago

dhmjulien commented 3 months ago

Dans l'exemple ci dessous, lorsqu'on ouvre l'accordéon et que l'on clique sur le bouton "Fermer l'accordéon", celui-ci déclenche setExpanded(false)

import { useState } from 'react';
import Accordion from '@codegouvfr/react-dsfr/Accordion';

export const Issue = () => {
  const [expanded, setExpanded] = useState(false);

  console.log(expanded);

  return (
    <>
      <button onClick={() => setExpanded(false)}>Fermer l'accordéon</button>
      <Accordion label="Label" expanded={expanded} onExpandedChange={() => setExpanded((v) => !v)}>
        Contenu
      </Accordion>
    </>
  );
};

La valeur false est bien loggée, or l'accordéon ne se ferme pas.

garronej commented 3 months ago

Hi @dhmjulien,

Thanks for reporting. The Accordion component was indeed, not correctly implemented.
I just fixed it.

There's 1.9.12 beeing published by the CI workflow