webapp/src/components/Nav/Topics/Topics.tsx

58 lines
1.7 KiB
TypeScript
Raw Normal View History

2023-10-10 15:38:02 +00:00
import { clsx } from 'clsx'
import { Icon } from '~/components/_shared/Icon'
import { useLocalize } from '~/context/localize'
2024-06-24 17:50:27 +00:00
import { A, useMatch } from '@solidjs/router'
import styles from './Topics.module.scss'
2023-10-10 15:38:02 +00:00
export const Topics = () => {
const { t } = useLocalize()
2024-06-24 17:50:27 +00:00
const matchExpo = useMatch(() => '/expo')
2023-10-10 15:38:02 +00:00
return (
<nav class={clsx('wide-container text-2xl', styles.Topics)}>
<ul class={styles.list}>
<li class={styles.item}>
2024-06-24 17:50:27 +00:00
<A class={clsx({ [styles.selected]: matchExpo() })} href="/expo">
2023-10-10 15:38:02 +00:00
{t('Art')}
2024-06-24 17:50:27 +00:00
</A>
2023-10-10 15:38:02 +00:00
</li>
<li class={styles.item}>
2024-06-24 17:50:27 +00:00
<A href="/podcasts">{t('Podcasts')}</A>
2023-10-10 15:38:02 +00:00
</li>
<li class={styles.item}>
2024-07-05 19:40:54 +00:00
<A href="/projects">{t('Special Projects')}</A>
2023-10-10 15:38:02 +00:00
</li>
<li class={styles.item}>
2024-06-24 17:50:27 +00:00
<A href="/topic/interview">#{t('Interview')}</A>
2023-10-10 15:38:02 +00:00
</li>
<li class={styles.item}>
2024-06-24 17:50:27 +00:00
<A href="/topic/reportage">#{t('Reports')}</A>
2023-10-10 15:38:02 +00:00
</li>
<li class={styles.item}>
2024-06-24 17:50:27 +00:00
<A href="/topic/empiric">#{t('Experience')}</A>
2023-10-10 15:38:02 +00:00
</li>
<li class={styles.item}>
2024-06-24 17:50:27 +00:00
<A href="/topic/society">#{t('Society')}</A>
2023-10-10 15:38:02 +00:00
</li>
<li class={styles.item}>
2024-06-24 17:50:27 +00:00
<A href="/topic/culture">#{t('Culture')}</A>
2023-10-10 15:38:02 +00:00
</li>
<li class={styles.item}>
2024-06-24 17:50:27 +00:00
<A href="/topic/theory">#{t('Theory')}</A>
2023-10-10 15:38:02 +00:00
</li>
<li class={styles.item}>
2024-06-24 17:50:27 +00:00
<A href="/topic/poetry">#{t('Poetry')}</A>
2023-10-10 15:38:02 +00:00
</li>
<li class={clsx(styles.item, styles.right)}>
2024-06-24 17:50:27 +00:00
<A href={'topics'}>
2023-10-10 15:38:02 +00:00
<span>
{t('All topics')}
<Icon name="arrow-right-black" class={'icon'} />
</span>
2024-06-24 17:50:27 +00:00
</A>
2023-10-10 15:38:02 +00:00
</li>
</ul>
</nav>
)
}