import PropTypes from 'prop-types' import {useRouter} from 'next/router' import {styled} from '@material-ui/core/styles' import {List, ListItem, ListItemText} from '@material-ui/core' import FiberNewOutlinedIcon from '@material-ui/icons/FiberNewOutlined' import LibraryMusicIcon from '@material-ui/icons/LibraryMusic' import ExplicitIcon from '@material-ui/icons/Explicit' import {esBrandNew} from '../../lib/date' const PREFIX = 'mizik-lis' const classes = { root: `${PREFIX}-root` } const StyledList = styled(List)(( { theme } ) => ({ [`&.${classes.root}`]: { width: '100%', maxWidth: 360, backgroundColor: theme.palette.background.paper } })) export default function MizikLis({meteEsMobilOuve, niAwtis, teks, slugTeksChwazi, meteSlugTeksChwazi}) { const router = useRouter() const handleClick = slug => { if (meteSlugTeksChwazi) { meteSlugTeksChwazi(slug) } if (slug !== slugTeksChwazi) { if (niAwtis) { router.push(`/teks/${slug}`).then(() => window.scrollTo(0, 0)) } else { router.push(`/teks/${slug}#${slug}`).then(() => window.scrollTo(0, 0)) } } if (meteEsMobilOuve) { meteEsMobilOuve(false) } } return ( {teks.map(({slug, tit, awtis, published_at, okiMizikID, eksplisit}) => ( handleClick(slug)} > a.alias).join(', ') : null} /> {eksplisit && ( )} {okiMizikID && ( )} {esBrandNew(published_at) && ( )} ))} ) } MizikLis.propTypes = { meteEsMobilOuve: PropTypes.func, niAwtis: PropTypes.bool, teks: PropTypes.array.isRequired, slugTeksChwazi: PropTypes.string, meteSlugTeksChwazi: PropTypes.func } MizikLis.defaultProps = { meteEsMobilOuve: null, niAwtis: false, slugTeksChwazi: null, meteSlugTeksChwazi: null }