diff options
| author | Armand Philippot <git@armandphilippot.com> | 2022-05-24 19:35:12 +0200 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-05-24 19:35:12 +0200 | 
| commit | c85ab5ad43ccf52881ee224672c41ec30021cf48 (patch) | |
| tree | 8058808d9bfca19383f120c46b34d99ff2f89f63 /src/components/Widgets/ThematicsList | |
| parent | 52404177c07a2aab7fc894362fb3060dff2431a0 (diff) | |
| parent | 11b9de44a4b2f305a6a484187805e429b2767118 (diff) | |
refactor: use storybook and atomic design (#16)
BREAKING CHANGE: rewrite most of the Typescript types, so the content format (the meta in particular) needs to be updated.
Diffstat (limited to 'src/components/Widgets/ThematicsList')
| -rw-r--r-- | src/components/Widgets/ThematicsList/ThematicsList.tsx | 76 | 
1 files changed, 0 insertions, 76 deletions
| diff --git a/src/components/Widgets/ThematicsList/ThematicsList.tsx b/src/components/Widgets/ThematicsList/ThematicsList.tsx deleted file mode 100644 index 51254ee..0000000 --- a/src/components/Widgets/ThematicsList/ThematicsList.tsx +++ /dev/null @@ -1,76 +0,0 @@ -import Spinner from '@components/Spinner/Spinner'; -import { ExpandableWidget, List } from '@components/WidgetParts'; -import { getAllThematics } from '@services/graphql/queries'; -import { TitleLevel } from '@ts/types/app'; -import { ThematicPreview } from '@ts/types/taxonomies'; -import Link from 'next/link'; -import { useRouter } from 'next/router'; -import { useIntl } from 'react-intl'; -import useSWR from 'swr'; - -const ThematicsList = ({ -  title, -  titleLevel, -  initialData, -}: { -  title: string; -  titleLevel?: TitleLevel; -  initialData?: ThematicPreview[]; -}) => { -  const intl = useIntl(); -  const router = useRouter(); -  const isThematic = () => router.asPath.includes('/thematique/'); -  const currentThematicSlug = isThematic() -    ? router.asPath.replace('/thematique/', '') -    : ''; - -  const { data, error } = useSWR('/api/thematics', getAllThematics, { -    fallbackData: initialData, -  }); - -  const getList = () => { -    if (error) -      return ( -        <ul> -          {intl.formatMessage({ -            defaultMessage: 'Failed to load.', -            description: 'ThematicsList: failed to load text', -            id: 'PxMDzL', -          })} -        </ul> -      ); -    if (!data) -      return ( -        <ul> -          <Spinner /> -        </ul> -      ); - -    const thematics = data.map((thematic) => { -      return currentThematicSlug !== thematic.slug ? ( -        <li key={thematic.databaseId}> -          <Link href={`/thematique/${thematic.slug}`}> -            <a>{thematic.title}</a> -          </Link> -        </li> -      ) : ( -        '' -      ); -    }); - -    return <List items={thematics} />; -  }; - -  return ( -    <ExpandableWidget -      title={title} -      titleLevel={titleLevel} -      withBorders={true} -      expand={true} -    > -      {getList()} -    </ExpandableWidget> -  ); -}; - -export default ThematicsList; | 
