import cx from 'classnames' import { useTranslation } from 'components/hooks/useTranslation' import { ArrowRightIcon } from '@primer/octicons-react' import { useState } from 'react' import { FeaturedTrack } from 'components/context/ProductSubLandingContext' import { TruncateLines } from 'components/ui/TruncateLines' import slugger from 'github-slugger' import styles from './LearningTrack.module.scss' type Props = { track: FeaturedTrack } const DEFAULT_VISIBLE_GUIDES = 4 export const LearningTrack = ({ track }: Props) => { const [numVisible, setNumVisible] = useState(DEFAULT_VISIBLE_GUIDES) const showAll = () => { setNumVisible(track?.guides?.length || 0) } const { t } = useTranslation('product_sublanding') const slug = track?.title ? slugger.slug(track?.title) : '' return (
{track?.title}
{track?.description}
{t('start')}
{track?.guides?.slice(0, numVisible).map((guide) => (
{track?.guides && ( {track.guides?.indexOf(guide) + 1} )}
{t('guide_types')[guide.page?.type || '']}
))} {(track?.guides?.length || 0) > numVisible ? ( ) : (
)}
) }