Use codemod jss-to-styled

This commit is contained in:
Cédric FAMIBELLE-PRONZOLA
2022-01-19 06:35:04 +04:00
parent 3b83cf93e9
commit 1afa1e5ba8
22 changed files with 693 additions and 402 deletions
+27 -9
View File
@@ -15,27 +15,43 @@ import {
} from '@material-ui/core' } from '@material-ui/core'
import ExpandMoreIcon from '@material-ui/icons/ExpandMore' import ExpandMoreIcon from '@material-ui/icons/ExpandMore'
import {makeStyles} from '@material-ui/core/styles' import {styled} from '@material-ui/core/styles'
import MizikLis from './mizik-lis' import MizikLis from './mizik-lis'
import AwtisBiyografi from './awtis-biyografi' import AwtisBiyografi from './awtis-biyografi'
const useStyles = makeStyles(theme => ({ const PREFIX = 'awtis-kat'
root: {
const classes = {
root: `${PREFIX}-root`,
media: `${PREFIX}-media`,
expand: `${PREFIX}-expand`,
expandOpen: `${PREFIX}-expandOpen`
}
const Root = styled('div')((
{
theme
}
) => ({
[`& .${classes.root}`]: {
maxWidth: 345 maxWidth: 345
}, },
media: {
[`& .${classes.media}`]: {
height: 240, height: 240,
objectFit: 'contain' objectFit: 'contain'
}, },
expand: {
[`& .${classes.expand}`]: {
transform: 'rotate(0deg)', transform: 'rotate(0deg)',
marginLeft: 'auto', marginLeft: 'auto',
transition: theme.transitions.create('transform', { transition: theme.transitions.create('transform', {
duration: theme.transitions.duration.shortest duration: theme.transitions.duration.shortest
}) })
}, },
expandOpen: {
[`& .${classes.expandOpen}`]: {
transform: 'rotate(180deg)' transform: 'rotate(180deg)'
} }
})) }))
@@ -45,7 +61,7 @@ export default function AwtisKat({anAwtis}) {
const noImageUrl = 'https://place-hold.it/140x140?text=Pa%20ni%20imaj' const noImageUrl = 'https://place-hold.it/140x140?text=Pa%20ni%20imaj'
const {alias, biyografi, teks, foto} = anAwtis const {alias, biyografi, teks, foto} = anAwtis
const classes = useStyles()
const [expanded, setExpanded] = useState(false) const [expanded, setExpanded] = useState(false)
const handleExpandClick = () => { const handleExpandClick = () => {
@@ -57,7 +73,8 @@ export default function AwtisKat({anAwtis}) {
} }
return ( return (
<> (
<Root>
<Grid item xs={12} sm={6} lg={4}> <Grid item xs={12} sm={6} lg={4}>
<Card className={classes.root}> <Card className={classes.root}>
<CardActionArea onClick={handleClick}> <CardActionArea onClick={handleClick}>
@@ -106,7 +123,8 @@ export default function AwtisKat({anAwtis}) {
meteEsByografiOuve={meteEsByografiOuve} meteEsByografiOuve={meteEsByografiOuve}
/> />
)} )}
</> </Root>
)
) )
} }
+18 -7
View File
@@ -13,20 +13,31 @@ import {
Badge Badge
} from '@material-ui/core' } from '@material-ui/core'
import {makeStyles} from '@material-ui/core/styles' import {styled} from '@material-ui/core/styles'
import MenuBookIcon from '@material-ui/icons/MenuBook' import MenuBookIcon from '@material-ui/icons/MenuBook'
const useStyles = makeStyles(theme => ({ const PREFIX = 'mizik-badj-meni'
root: {
const classes = {
root: `${PREFIX}-root`,
paper: `${PREFIX}-paper`
}
const Root = styled('div')((
{
theme
}
) => ({
[`&.${classes.root}`]: {
display: 'flex' display: 'flex'
}, },
paper: {
[`& .${classes.paper}`]: {
marginRight: theme.spacing(2) marginRight: theme.spacing(2)
} }
})) }))
export default function MizikBadjMeni({teks}) { export default function MizikBadjMeni({teks}) {
const classes = useStyles()
const [open, setOpen] = useState(false) const [open, setOpen] = useState(false)
const anchorRef = useRef(null) const anchorRef = useRef(null)
const router = useRouter() const router = useRouter()
@@ -64,7 +75,7 @@ export default function MizikBadjMeni({teks}) {
}, [open]) }, [open])
return ( return (
<div className={classes.root}> <Root className={classes.root}>
<Button <Button
ref={anchorRef} ref={anchorRef}
aria-controls={open ? 'menu-list-grow' : undefined} aria-controls={open ? 'menu-list-grow' : undefined}
@@ -98,7 +109,7 @@ export default function MizikBadjMeni({teks}) {
</Grow> </Grow>
)} )}
</Popper> </Popper>
</div> </Root>
) )
} }
+15 -6
View File
@@ -1,7 +1,7 @@
import PropTypes from 'prop-types' import PropTypes from 'prop-types'
import {useRouter} from 'next/router' import {useRouter} from 'next/router'
import {makeStyles} from '@material-ui/core/styles' import {styled} from '@material-ui/core/styles'
import {List, ListItem, ListItemText} from '@material-ui/core' import {List, ListItem, ListItemText} from '@material-ui/core'
import FiberNewOutlinedIcon from '@material-ui/icons/FiberNewOutlined' import FiberNewOutlinedIcon from '@material-ui/icons/FiberNewOutlined'
import LibraryMusicIcon from '@material-ui/icons/LibraryMusic' import LibraryMusicIcon from '@material-ui/icons/LibraryMusic'
@@ -9,8 +9,18 @@ import ExplicitIcon from '@material-ui/icons/Explicit'
import {esBrandNew} from '../../lib/date' import {esBrandNew} from '../../lib/date'
const useStyles = makeStyles(theme => ({ const PREFIX = 'mizik-lis'
root: {
const classes = {
root: `${PREFIX}-root`
}
const StyledList = styled(List)((
{
theme
}
) => ({
[`&.${classes.root}`]: {
width: '100%', width: '100%',
maxWidth: 360, maxWidth: 360,
backgroundColor: theme.palette.background.paper backgroundColor: theme.palette.background.paper
@@ -18,7 +28,6 @@ const useStyles = makeStyles(theme => ({
})) }))
export default function MizikLis({meteEsMobilOuve, niAwtis, teks, slugTeksChwazi, meteSlugTeksChwazi}) { export default function MizikLis({meteEsMobilOuve, niAwtis, teks, slugTeksChwazi, meteSlugTeksChwazi}) {
const classes = useStyles()
const router = useRouter() const router = useRouter()
const handleClick = slug => { const handleClick = slug => {
@@ -40,7 +49,7 @@ export default function MizikLis({meteEsMobilOuve, niAwtis, teks, slugTeksChwazi
} }
return ( return (
<List component='nav' className={classes.root} aria-label='mizik'> <StyledList component='nav' className={classes.root} aria-label='mizik'>
{teks.map(({slug, tit, awtis, published_at, okiMizikID, eksplisit}) => ( {teks.map(({slug, tit, awtis, published_at, okiMizikID, eksplisit}) => (
<ListItem <ListItem
key={slug} key={slug}
@@ -61,7 +70,7 @@ export default function MizikLis({meteEsMobilOuve, niAwtis, teks, slugTeksChwazi
)} )}
</ListItem> </ListItem>
))} ))}
</List> </StyledList>
) )
} }
+16 -6
View File
@@ -1,11 +1,21 @@
import PropTypes from 'prop-types' import PropTypes from 'prop-types'
import {useRouter} from 'next/router' import {useRouter} from 'next/router'
import {makeStyles} from '@material-ui/core/styles' import {styled} from '@material-ui/core/styles'
import Pagination from '@material-ui/lab/Pagination' import Pagination from '@material-ui/lab/Pagination'
import {Grid} from '@material-ui/core' import {Grid} from '@material-ui/core'
const useStyles = makeStyles(theme => ({ const PREFIX = 'pajinasyon'
root: {
const classes = {
root: `${PREFIX}-root`
}
const StyledGrid = styled(Grid)((
{
theme
}
) => ({
[`& .${classes.root}`]: {
'& > *': { '& > *': {
marginBottom: theme.spacing(2) marginBottom: theme.spacing(2)
} }
@@ -14,7 +24,7 @@ const useStyles = makeStyles(theme => ({
export default function Pajinasyon({pajTotal, paj}) { export default function Pajinasyon({pajTotal, paj}) {
const router = useRouter() const router = useRouter()
const classes = useStyles()
const handleChange = (event, value) => { const handleChange = (event, value) => {
const href = `/awtis?paj&paj=${value}` const href = `/awtis?paj&paj=${value}`
const as = `/awtis/paj/${value}` const as = `/awtis/paj/${value}`
@@ -22,11 +32,11 @@ export default function Pajinasyon({pajTotal, paj}) {
} }
return ( return (
<Grid container justify='center'> <StyledGrid container justify='center'>
<div className={classes.root}> <div className={classes.root}>
<Pagination size='small' page={paj} count={pajTotal} color='primary' onChange={handleChange} /> <Pagination size='small' page={paj} count={pajTotal} color='primary' onChange={handleChange} />
</div> </div>
</Grid> </StyledGrid>
) )
} }
+13 -7
View File
@@ -1,19 +1,25 @@
import {useRef, useEffect} from 'react' import {useRef, useEffect} from 'react'
import {styled} from '@mui/material/styles'
import PropTypes from 'prop-types' import PropTypes from 'prop-types'
import {Button, Dialog, DialogActions, DialogContent, DialogTitle, makeStyles, Typography} from '@material-ui/core' import {Button, Dialog, DialogActions, DialogContent, DialogTitle, Typography} from '@material-ui/core'
import {useRouter} from 'next/router' import {useRouter} from 'next/router'
import Cgu from '.' import Cgu from '.'
const CGU_DOWNLOAD_LINK = process.env.NEXT_PUBLIC_CGU_DOWNLOAD_LINK const PREFIX = 'cgu-dialog'
const useStyles = makeStyles(() => ({ const classes = {
dialog: { dialog: `${PREFIX}-dialog`
}
const Root = styled('div')(() => ({
[`& .${classes.dialog}`]: {
zIndex: 9999 zIndex: 9999
} }
})) }))
const CGU_DOWNLOAD_LINK = process.env.NEXT_PUBLIC_CGU_DOWNLOAD_LINK
export default function CGUDialog({open, setOpen}) { export default function CGUDialog({open, setOpen}) {
const classes = useStyles()
const router = useRouter() const router = useRouter()
const handleClose = () => { const handleClose = () => {
@@ -36,7 +42,7 @@ export default function CGUDialog({open, setOpen}) {
}, [open]) }, [open])
return ( return (
<div> <Root>
<Dialog <Dialog
open={open} open={open}
scroll='paper' scroll='paper'
@@ -65,7 +71,7 @@ export default function CGUDialog({open, setOpen}) {
</Button> </Button>
</DialogActions> </DialogActions>
</Dialog> </Dialog>
</div> </Root>
) )
} }
+12 -7
View File
@@ -1,17 +1,22 @@
import {List, ListItem, ListItemText, Link, makeStyles, Typography, ListItemIcon} from '@material-ui/core' import {List, ListItem, ListItemText, Link, Typography, ListItemIcon} from '@material-ui/core'
import {styled} from '@mui/material/styles'
import ArrowRightAltIcon from '@material-ui/icons/ArrowRightAlt' import ArrowRightAltIcon from '@material-ui/icons/ArrowRightAlt'
const useStyles = makeStyles({ const PREFIX = 'index'
root: {
const classes = {
root: `${PREFIX}-root`
}
const Root = styled('div')({
[`&.${classes.root}`]: {
textAlign: 'justify' textAlign: 'justify'
} }
}) })
export default function Cgu() { export default function Cgu() {
const classes = useStyles()
return ( return (
<div className={classes.root}> <Root className={classes.root}>
<Typography gutterBottom variant='h5' component='h2'> <Typography gutterBottom variant='h5' component='h2'>
Définitions Définitions
</Typography> </Typography>
@@ -436,6 +441,6 @@ export default function Cgu() {
<Typography gutterBottom variant='caption' > <Typography gutterBottom variant='caption' >
Dernières modifications le 15/06/2021 Dernières modifications le 15/06/2021
</Typography> </Typography>
</div> </Root>
) )
} }
+21 -7
View File
@@ -1,25 +1,38 @@
import {useState} from 'react' import {useState} from 'react'
import {Container, Link, makeStyles, Typography} from '@material-ui/core' import {styled} from '@mui/material/styles'
import {Container, Link, Typography} from '@material-ui/core'
import CGUDialog from './cgu/cgu-dialog' import CGUDialog from './cgu/cgu-dialog'
const useStyles = makeStyles(theme => ({ const PREFIX = 'footer'
footer: {
const classes = {
footer: `${PREFIX}-footer`,
text: `${PREFIX}-text`
}
const Root = styled('div')((
{
theme
}
) => ({
[`& .${classes.footer}`]: {
padding: theme.spacing(3, 2), padding: theme.spacing(3, 2),
marginTop: 'auto', marginTop: 'auto',
backgroundColor: backgroundColor:
theme.palette.type === 'light' ? theme.palette.grey[200] : theme.palette.grey[800] theme.palette.type === 'light' ? theme.palette.grey[200] : theme.palette.grey[800]
}, },
text: {
[`& .${classes.text}`]: {
fontWeight: 'bold' fontWeight: 'bold'
} }
})) }))
export default function Footer() { export default function Footer() {
const classes = useStyles()
const [open, setOpen] = useState(false) const [open, setOpen] = useState(false)
return ( return (
<> (
<Root>
<CGUDialog open={open} setOpen={setOpen} /> <CGUDialog open={open} setOpen={setOpen} />
<footer id='cgu' className={classes.footer}> <footer id='cgu' className={classes.footer}>
<Container> <Container>
@@ -30,6 +43,7 @@ export default function Footer() {
</Typography> </Typography>
</Container> </Container>
</footer> </footer>
</> </Root>
)
) )
} }
+17 -9
View File
@@ -7,31 +7,39 @@ import {
Typography, Typography,
Grid Grid
} from '@material-ui/core' } from '@material-ui/core'
import {makeStyles} from '@material-ui/core/styles' import {styled} from '@material-ui/core/styles'
const useStyles = makeStyles({ const PREFIX = 'kat-kay-la'
root: {
const classes = {
root: `${PREFIX}-root`,
bullet: `${PREFIX}-bullet`,
title: `${PREFIX}-title`,
pos: `${PREFIX}-pos`
}
const StyledGrid = styled(Grid)({
[`& .${classes.root}`]: {
minWidth: 275 minWidth: 275
}, },
bullet: { [`& .${classes.bullet}`]: {
display: 'inline-block', display: 'inline-block',
margin: '0 2px', margin: '0 2px',
transform: 'scale(0.8)' transform: 'scale(0.8)'
}, },
title: { [`& .${classes.title}`]: {
fontSize: 14 fontSize: 14
}, },
pos: { [`& .${classes.pos}`]: {
marginBottom: 12 marginBottom: 12
} }
}) })
export default function KatKayLa({tit, soutit, kantite, route}) { export default function KatKayLa({tit, soutit, kantite, route}) {
const classes = useStyles()
const router = useRouter() const router = useRouter()
return ( return (
<Grid item xs={12} md={6}> <StyledGrid item xs={12} md={6}>
<Card className={classes.root} variant='outlined'> <Card className={classes.root} variant='outlined'>
<CardActionArea onClick={() => router.push(route).then(() => window.scrollTo(0, 0))}> <CardActionArea onClick={() => router.push(route).then(() => window.scrollTo(0, 0))}>
<CardContent> <CardContent>
@@ -47,7 +55,7 @@ export default function KatKayLa({tit, soutit, kantite, route}) {
</CardContent> </CardContent>
</CardActionArea> </CardActionArea>
</Card> </Card>
</Grid> </StyledGrid>
) )
} }
+18 -8
View File
@@ -1,7 +1,7 @@
import PropTypes from 'prop-types' import PropTypes from 'prop-types'
import {format} from 'date-fns' import {format} from 'date-fns'
import {fr} from 'date-fns/locale' import {fr} from 'date-fns/locale'
import {makeStyles} from '@material-ui/core/styles' import {styled} from '@material-ui/core/styles'
import { import {
Typography, Typography,
@@ -12,22 +12,32 @@ import {
import {formatJsonString} from '../../lib/utils/format' import {formatJsonString} from '../../lib/utils/format'
const useStyles = makeStyles(theme => ({ const PREFIX = 'komante-list'
root: {
const classes = {
root: `${PREFIX}-root`,
inline: `${PREFIX}-inline`
}
const StyledList = styled(List)((
{
theme
}
) => ({
[`&.${classes.root}`]: {
width: '100%', width: '100%',
maxWidth: '36ch', maxWidth: '36ch',
backgroundColor: theme.palette.background.paper backgroundColor: theme.palette.background.paper
}, },
inline: {
[`& .${classes.inline}`]: {
display: 'inline' display: 'inline'
} }
})) }))
export default function KomanteList({komante}) { export default function KomanteList({komante}) {
const classes = useStyles()
return ( return (
<List className={classes.root}> <StyledList className={classes.root}>
{komante.map(({_id, username, kontni, sentAt}) => ( {komante.map(({_id, username, kontni, sentAt}) => (
<div key={_id}> <div key={_id}>
<ListItemText <ListItemText
@@ -48,7 +58,7 @@ export default function KomanteList({komante}) {
<Divider style={{marginBottom: '1em'}} /> <Divider style={{marginBottom: '1em'}} />
</div> </div>
))} ))}
</List> </StyledList>
) )
} }
+31 -15
View File
@@ -1,4 +1,5 @@
import {useState, useEffect, useRef} from 'react' import {useState, useEffect, useRef} from 'react'
import {styled} from '@mui/material/styles'
import PropTypes from 'prop-types' import PropTypes from 'prop-types'
import {useSession} from 'next-auth/client' import {useSession} from 'next-auth/client'
@@ -11,9 +12,7 @@ import {
Button, Button,
Typography, Typography,
Tooltip, Tooltip,
Zoom, Zoom
withStyles,
makeStyles
} from '@material-ui/core' } from '@material-ui/core'
import AddCommentIcon from '@material-ui/icons/AddComment' import AddCommentIcon from '@material-ui/icons/AddComment'
import {useRouter} from 'next/router' import {useRouter} from 'next/router'
@@ -21,23 +20,31 @@ import Koneksyon from '../sesyon/koneksyon'
import KomanteList from './komante-list' import KomanteList from './komante-list'
import EkriKomante from './ekri-komante' import EkriKomante from './ekri-komante'
const useStyles = makeStyles(theme => ({ const PREFIX = 'vwe-komante'
margin: {
const classes = {
tooltip: `${PREFIX}-tooltip`,
margin: `${PREFIX}-margin`,
extendedIcon: `${PREFIX}-extendedIcon`
}
const Root = styled('div')((
{
theme
}
) => ({
[`& .${classes.margin}`]: {
margin: theme.spacing(1) margin: theme.spacing(1)
}, },
extendedIcon: {
[`& .${classes.extendedIcon}`]: {
marginRight: theme.spacing(1) marginRight: theme.spacing(1)
} }
})) }))
const KomanteTooltip = withStyles(() => ({ const KomanteTooltip = Tooltip
tooltip: {
fontSize: 18
}
}))(Tooltip)
export default function VweKomante({komante, teks}) { export default function VweKomante({komante, teks}) {
const classes = useStyles()
const [esOuve, meteEsOuve] = useState(false) const [esOuve, meteEsOuve] = useState(false)
const [esKoneksyonOuve, meteEsKoneksyonOuve] = useState(false) const [esKoneksyonOuve, meteEsKoneksyonOuve] = useState(false)
const [esKomenteOuve, meteEsKomanteOuve] = useState(false) const [esKomenteOuve, meteEsKomanteOuve] = useState(false)
@@ -63,8 +70,16 @@ export default function VweKomante({komante, teks}) {
}, [esOuve]) }, [esOuve])
return ( return (
<> (
<KomanteTooltip title='Komantè' placement='bottom' TransitionComponent={Zoom}> <Root>
<KomanteTooltip
title='Komantè'
placement='bottom'
TransitionComponent={Zoom}
classes={{
tooltip: classes.tooltip
}}
>
<IconButton className={classes.margin} color='primary' aria-label='commentaire' component='span' onClick={handleClick}> <IconButton className={classes.margin} color='primary' aria-label='commentaire' component='span' onClick={handleClick}>
<AddCommentIcon /> <AddCommentIcon />
</IconButton> </IconButton>
@@ -122,7 +137,8 @@ export default function VweKomante({komante, teks}) {
</> </>
)} )}
</Dialog> </Dialog>
</> </Root>
)
) )
} }
+23 -13
View File
@@ -2,7 +2,7 @@ import {useState} from 'react'
import PropTypes from 'prop-types' import PropTypes from 'prop-types'
import {useRouter} from 'next/router' import {useRouter} from 'next/router'
import {makeStyles} from '@material-ui/core/styles' import {styled} from '@material-ui/core/styles'
import AppBar from '@material-ui/core/AppBar' import AppBar from '@material-ui/core/AppBar'
import Tabs from '@material-ui/core/Tabs' import Tabs from '@material-ui/core/Tabs'
import Tab from '@material-ui/core/Tab' import Tab from '@material-ui/core/Tab'
@@ -13,6 +13,25 @@ import PlaylistAddIcon from '@material-ui/icons/PlaylistAdd'
import Typography from '@material-ui/core/Typography' import Typography from '@material-ui/core/Typography'
import Box from '@material-ui/core/Box' import Box from '@material-ui/core/Box'
const PREFIX = 'navigasyon'
const classes = {
root: `${PREFIX}-root`
}
const Root = styled('div')((
{
theme
}
) => ({
[`& .${classes.root}`]: {
marginBottom: 50,
flexGrow: 1,
width: '100%',
backgroundColor: theme.palette.background.paper
}
}))
const tabRouteHref = [ const tabRouteHref = [
'/', '/',
'/teks', '/teks',
@@ -31,7 +50,7 @@ function TabPanel(props) {
const {children, value, index, ...other} = props const {children, value, index, ...other} = props
return ( return (
<div <Root
role='tabpanel' role='tabpanel'
hidden={value !== index} hidden={value !== index}
id={`scrollable-force-tabpanel-${index}`} id={`scrollable-force-tabpanel-${index}`}
@@ -43,7 +62,7 @@ function TabPanel(props) {
<Typography component='div'>{children}</Typography> <Typography component='div'>{children}</Typography>
</Box> </Box>
)} )}
</div> </Root>
) )
} }
@@ -60,18 +79,9 @@ function a11yProps(index) {
} }
} }
const useStyles = makeStyles(theme => ({
root: {
marginBottom: 50,
flexGrow: 1,
width: '100%',
backgroundColor: theme.palette.background.paper
}
}))
export default function Navigasyon({selectedTab}) { export default function Navigasyon({selectedTab}) {
const router = useRouter() const router = useRouter()
const classes = useStyles()
const [value, setValue] = useState(0) const [value, setValue] = useState(0)
const handleChange = (event, newValue) => { const handleChange = (event, newValue) => {
+46 -19
View File
@@ -1,14 +1,38 @@
import {useRef, useState} from 'react' import {useRef, useState} from 'react'
import {styled} from '@mui/material/styles'
import PropTypes from 'prop-types' import PropTypes from 'prop-types'
import {useRouter} from 'next/router' import {useRouter} from 'next/router'
import {Button, ListItemIcon, ListItemText, Menu, MenuItem, withStyles} from '@material-ui/core' import {Button, ListItemIcon, ListItemText, Menu, MenuItem} from '@material-ui/core'
import PublicIcon from '@material-ui/icons/Public' import PublicIcon from '@material-ui/icons/Public'
const StyledMenu = withStyles({ const PREFIX = 'rezo-menu'
paper: {
border: '1px solid #d3d4d5' const classes = {
paper: `${PREFIX}-paper`,
root: `${PREFIX}-root`
}
const Root = styled('div')((
{
theme
} }
})(props => ( ) => ({
[`& .${classes.paper}`]: {
border: '1px solid #d3d4d5'
},
[`& .${classes.root}`]: {
'&:hover': {
backgroundColor: theme.palette.primary.main,
'& .MuiListItemIcon-root, & .MuiListItemText-primary': {
color: theme.palette.common.white
}
}
}
}))
function StyledMenu(props) {
return (
<Menu <Menu
elevation={0} elevation={0}
getContentAnchorEl={null} getContentAnchorEl={null}
@@ -22,18 +46,10 @@ const StyledMenu = withStyles({
}} }}
{...props} {...props}
/> />
)) )
}
const StyledMenuItem = withStyles(theme => ({ const StyledMenuItem = MenuItem
root: {
'&:hover': {
backgroundColor: theme.palette.primary.main,
'& .MuiListItemIcon-root, & .MuiListItemText-primary': {
color: theme.palette.common.white
}
}
}
}))(MenuItem)
const siteDomain = process.env.NEXT_PUBLIC_PROD_DOMAIN || 'localhost' const siteDomain = process.env.NEXT_PUBLIC_PROD_DOMAIN || 'localhost'
@@ -57,7 +73,8 @@ export default function RezoMenu({data}) {
} }
return ( return (
<> (
<Root>
<Button <Button
ref={anchorRef} ref={anchorRef}
startIcon={<PublicIcon />} startIcon={<PublicIcon />}
@@ -75,10 +92,19 @@ export default function RezoMenu({data}) {
id='customized-menu' id='customized-menu'
anchorEl={anchorElement} anchorEl={anchorElement}
open={Boolean(anchorElement)} open={Boolean(anchorElement)}
classes={{
paper: classes.paper
}}
onClose={handleClose} onClose={handleClose}
> >
{data.map(({id, tit, icon, link}) => ( {data.map(({id, tit, icon, link}) => (
<StyledMenuItem key={id} onClick={() => handleClose(id, link)}> <StyledMenuItem
key={id}
classes={{
root: classes.root
}}
onClick={() => handleClose(id, link)}
>
<ListItemIcon> <ListItemIcon>
{icon} {icon}
</ListItemIcon> </ListItemIcon>
@@ -86,7 +112,8 @@ export default function RezoMenu({data}) {
</StyledMenuItem> </StyledMenuItem>
))} ))}
</StyledMenu> </StyledMenu>
</> </Root>
)
) )
} }
+26 -14
View File
@@ -1,30 +1,33 @@
import {useState} from 'react' import {useState} from 'react'
import {styled} from '@mui/material/styles'
import PropTypes from 'prop-types' import PropTypes from 'prop-types'
import Link from 'next/link' import Link from 'next/link'
import {signOut} from 'next-auth/client' import {signOut} from 'next-auth/client'
import {withStyles, makeStyles, Tooltip, Fab, Zoom} from '@material-ui/core' import {Tooltip, Fab, Zoom} from '@material-ui/core'
import ExitToAppIcon from '@material-ui/icons/ExitToApp' import ExitToAppIcon from '@material-ui/icons/ExitToApp'
import Alet from '../alet' import Alet from '../alet'
const siteUrl = process.env.NEXT_PUBLIC_SITE_URL || 'http://localhost:3000' const PREFIX = 'Dekoneksyon'
const useStyles = makeStyles(() => ({ const classes = {
dekoneksyon: { tooltip: `${PREFIX}-tooltip`,
dekoneksyon: `${PREFIX}-dekoneksyon`
}
const Root = styled('div')(() => ({
[`& .${classes.dekoneksyon}`]: {
position: props => props.position, position: props => props.position,
top: props => props.top, top: props => props.top,
left: props => props.left left: props => props.left
} }
})) }))
const DekoneksonTooltip = withStyles(() => ({ const siteUrl = process.env.NEXT_PUBLIC_SITE_URL || 'http://localhost:3000'
tooltip: {
fontSize: 18
}
}))(Tooltip)
function Dekoneksyon({chimen, tooltipPlacement, ...props}) { const DekoneksonTooltip = Tooltip
const classes = useStyles(props)
function Dekoneksyon({chimen, tooltipPlacement}) {
const [esOuve, meteEsOuve] = useState(false) const [esOuve, meteEsOuve] = useState(false)
const handleDekonekte = event => { const handleDekonekte = event => {
@@ -33,9 +36,17 @@ function Dekoneksyon({chimen, tooltipPlacement, ...props}) {
} }
return ( return (
<> (
<Root>
<Link passHref href='/api/auth/signout'> <Link passHref href='/api/auth/signout'>
<DekoneksonTooltip title='Dékoneksyon' placement={tooltipPlacement} TransitionComponent={Zoom}> <DekoneksonTooltip
title='Dékoneksyon'
placement={tooltipPlacement}
TransitionComponent={Zoom}
classes={{
tooltip: classes.tooltip
}}
>
<Fab <Fab
className={classes.dekoneksyon} className={classes.dekoneksyon}
color='secondary' color='secondary'
@@ -48,7 +59,8 @@ function Dekoneksyon({chimen, tooltipPlacement, ...props}) {
</DekoneksonTooltip> </DekoneksonTooltip>
</Link> </Link>
<Alet esOuve={esOuve} meteEsOuve={meteEsOuve} handleKonfime={handleDekonekte} /> <Alet esOuve={esOuve} meteEsOuve={meteEsOuve} handleKonfime={handleDekonekte} />
</> </Root>
)
) )
} }
+58 -21
View File
@@ -1,13 +1,37 @@
import {useState} from 'react' import {useState} from 'react'
import {styled} from '@mui/material/styles'
import PropTypes from 'prop-types' import PropTypes from 'prop-types'
import {MenuItem, withStyles, Menu, Button} from '@material-ui/core' import {MenuItem, Menu, Button} from '@material-ui/core'
import {uniq} from 'lodash' import {uniq} from 'lodash'
const StyledMenu = withStyles({ const PREFIX = 'AjouteTradiksyon'
paper: {
border: '1px solid #d3d4d5' const classes = {
paper: `${PREFIX}-paper`,
root: `${PREFIX}-root`
}
const Root = styled('div')((
{
theme
} }
})(props => ( ) => ({
[`& .${classes.paper}`]: {
border: '1px solid #d3d4d5'
},
[`& .${classes.root}`]: {
'&:focus': {
backgroundColor: theme.palette.primary.main,
'& .MuiListItemIcon-root, & .MuiListItemText-primary': {
color: theme.palette.common.white
}
}
}
}))
function StyledMenu(props) {
return (
<Menu <Menu
elevation={0} elevation={0}
getContentAnchorEl={null} getContentAnchorEl={null}
@@ -21,18 +45,10 @@ const StyledMenu = withStyles({
}} }}
{...props} {...props}
/> />
)) )
}
const StyledMenuItem = withStyles(theme => ({ const StyledMenuItem = MenuItem
root: {
'&:focus': {
backgroundColor: theme.palette.primary.main,
'& .MuiListItemIcon-root, & .MuiListItemText-primary': {
color: theme.palette.common.white
}
}
}
}))(MenuItem)
function AjouteTradiksyon({chwaLang, setChwaLang}) { function AjouteTradiksyon({chwaLang, setChwaLang}) {
const [anchorElement, setAnchorElement] = useState(null) const [anchorElement, setAnchorElement] = useState(null)
@@ -48,7 +64,7 @@ function AjouteTradiksyon({chwaLang, setChwaLang}) {
} }
return ( return (
<div style={{textAlign: 'center', marginTop: 5}}> <Root style={{textAlign: 'center', marginTop: 5}}>
<Button <Button
aria-controls='lang-menu' aria-controls='lang-menu'
variant='outlined' variant='outlined'
@@ -62,13 +78,34 @@ function AjouteTradiksyon({chwaLang, setChwaLang}) {
id='lang-menu' id='lang-menu'
anchorEl={anchorElement} anchorEl={anchorElement}
open={Boolean(anchorElement)} open={Boolean(anchorElement)}
classes={{
paper: classes.paper
}}
onClose={handleClose} onClose={handleClose}
> >
<StyledMenuItem id='fr' onClick={handleClose}>🇫🇷 Français</StyledMenuItem> <StyledMenuItem
<StyledMenuItem id='en' onClick={handleClose}>🇬🇧 English</StyledMenuItem> id='fr'
<StyledMenuItem id='es' onClick={handleClose}>🇪🇸 Español</StyledMenuItem> classes={{
root: classes.root
}}
onClick={handleClose}
>🇫🇷 Français</StyledMenuItem>
<StyledMenuItem
id='en'
classes={{
root: classes.root
}}
onClick={handleClose}
>🇬🇧 English</StyledMenuItem>
<StyledMenuItem
id='es'
classes={{
root: classes.root
}}
onClick={handleClose}
>🇪🇸 Español</StyledMenuItem>
</StyledMenu> </StyledMenu>
</div> </Root>
) )
} }
+24 -10
View File
@@ -1,4 +1,5 @@
import {useCallback, useEffect, useState} from 'react' import {useCallback, useEffect, useState} from 'react'
import {styled} from '@mui/material/styles'
import PropTypes from 'prop-types' import PropTypes from 'prop-types'
import axios from 'axios' import axios from 'axios'
import { import {
@@ -16,14 +17,25 @@ import {
Snackbar, Snackbar,
TextField, TextField,
Tooltip, Tooltip,
Typography, Typography
withStyles
} from '@material-ui/core' } from '@material-ui/core'
import MuiAlert from '@material-ui/lab/Alert' import MuiAlert from '@material-ui/lab/Alert'
import CloseIcon from '@material-ui/icons/Close' import CloseIcon from '@material-ui/icons/Close'
import AjouteTradiksyon from './ajoute-tradiksyon' import AjouteTradiksyon from './ajoute-tradiksyon'
const PREFIX = 'EkriTeks'
const classes = {
tooltip: `${PREFIX}-tooltip`
}
const StyledContainer = styled(Container)(() => ({
[`& .${classes.tooltip}`]: {
fontSize: 18
}
}))
const API_URL = process.env.NEXT_PUBLIC_API_URL || 'http://localhost:1337' const API_URL = process.env.NEXT_PUBLIC_API_URL || 'http://localhost:1337'
const textLabels = { const textLabels = {
@@ -48,11 +60,7 @@ function Alert(props) {
return <MuiAlert elevation={6} variant='filled' {...props} /> return <MuiAlert elevation={6} variant='filled' {...props} />
} }
const RemoveTooltip = withStyles(() => ({ const RemoveTooltip = Tooltip
tooltip: {
fontSize: 18
}
}))(Tooltip)
function EkriTeks({session}) { function EkriTeks({session}) {
const {jwt, user} = session const {jwt, user} = session
@@ -160,7 +168,7 @@ function EkriTeks({session}) {
}, [error]) }, [error])
return ( return (
<Container maxWidth='sm'> <StyledContainer maxWidth='sm'>
<Box align='center' marginBottom={2}> <Box align='center' marginBottom={2}>
<Typography display='inline' variant='h5' component='h1'> <Typography display='inline' variant='h5' component='h1'>
Soumèt an tèks Soumèt an tèks
@@ -224,7 +232,13 @@ function EkriTeks({session}) {
rows={8} rows={8}
endAdornment={ endAdornment={
<InputAdornment position='end'> <InputAdornment position='end'>
<RemoveTooltip title='Effacer la traduction' placement='left'> <RemoveTooltip
title='Effacer la traduction'
placement='left'
classes={{
tooltip: classes.tooltip
}}
>
<IconButton <IconButton
color='secondary' color='secondary'
style={{bottom: 75}} style={{bottom: 75}}
@@ -273,7 +287,7 @@ function EkriTeks({session}) {
</Alert> </Alert>
</Snackbar> </Snackbar>
)} )}
</Container> </StyledContainer>
) )
} }
+15 -8
View File
@@ -1,17 +1,25 @@
import PropTypes from 'prop-types' import PropTypes from 'prop-types'
import {styled} from '@mui/material/styles'
import WbSunnyIcon from '@material-ui/icons/WbSunny' import WbSunnyIcon from '@material-ui/icons/WbSunny'
import Brightness3Icon from '@material-ui/icons/Brightness3' import Brightness3Icon from '@material-ui/icons/Brightness3'
import {Box, makeStyles} from '@material-ui/core' import {Box} from '@material-ui/core'
const useStyles = makeStyles({ const PREFIX = 'switch-theme'
switch: {
const classes = {
switch: `${PREFIX}-switch`,
switchFixed: `${PREFIX}-switchFixed`
}
const StyledBox = styled(Box)({
[`& .${classes.switch}`]: {
position: 'absolute', position: 'absolute',
right: '1em', right: '1em',
top: '95px', top: '200px',
zIndex: 1, zIndex: 1,
cursor: 'pointer' cursor: 'pointer'
}, },
switchFixed: { [`& .${classes.switchFixed}`]: {
position: 'fixed', position: 'fixed',
right: '1em', right: '1em',
top: '95px', top: '95px',
@@ -21,20 +29,19 @@ const useStyles = makeStyles({
}) })
export default function SwitchTheme({switchFixed, darkMode, setDarkMode}) { export default function SwitchTheme({switchFixed, darkMode, setDarkMode}) {
const classes = useStyles()
const handleClick = () => { const handleClick = () => {
localStorage.setItem('oki-dark', !darkMode) localStorage.setItem('oki-dark', !darkMode)
setDarkMode(!darkMode) setDarkMode(!darkMode)
} }
return ( return (
<Box className={switchFixed ? classes.switchFixed : classes.switch}> <StyledBox className={switchFixed ? classes.switchFixed : classes.switch}>
{darkMode ? ( {darkMode ? (
<WbSunnyIcon onClick={handleClick} /> <WbSunnyIcon onClick={handleClick} />
) : ( ) : (
<Brightness3Icon onClick={handleClick} /> <Brightness3Icon onClick={handleClick} />
)} )}
</Box> </StyledBox>
) )
} }
+13 -6
View File
@@ -1,15 +1,22 @@
import {Container, Grid, makeStyles} from '@material-ui/core' import {Container, Grid} from '@material-ui/core'
import {styled} from '@mui/material/styles'
import TeksKat from './teks-kat' import TeksKat from './teks-kat'
const useStyles = makeStyles(() => ({ const PREFIX = 'denye-teks'
container: {
const classes = {
container: `${PREFIX}-container`
}
const Root = styled('div')(() => ({
[`&.${classes.container}`]: {
marginTop: '3em' marginTop: '3em'
} }
})) }))
export default function DenyeTeks(teks) { export default function DenyeTeks(teks) {
const classes = useStyles()
const teksKlasePaPibilikasyon = Object.values(teks).sort((a, b) => { const teksKlasePaPibilikasyon = Object.values(teks).sort((a, b) => {
const aDate = new Date(a.published_at) const aDate = new Date(a.published_at)
const bDate = new Date(b.published_at) const bDate = new Date(b.published_at)
@@ -17,12 +24,12 @@ export default function DenyeTeks(teks) {
}).slice(0, 6) }).slice(0, 6)
return ( return (
<div className={classes.container}> <Root className={classes.container}>
<Container> <Container>
<Grid container spacing={3}> <Grid container spacing={3}>
{teksKlasePaPibilikasyon.map(t => <TeksKat key={t._id} teks={t} />)} {teksKlasePaPibilikasyon.map(t => <TeksKat key={t._id} teks={t} />)}
</Grid> </Grid>
</Container> </Container>
</div> </Root>
) )
} }
+25 -10
View File
@@ -1,4 +1,5 @@
import {useState} from 'react' import {useState} from 'react'
import {styled} from '@mui/material/styles'
import PropTypes from 'prop-types' import PropTypes from 'prop-types'
import union from 'lodash.union' import union from 'lodash.union'
import deburr from 'lodash.deburr' import deburr from 'lodash.deburr'
@@ -7,23 +8,38 @@ import {
Divider, Divider,
FormControl, FormControl,
InputAdornment, InputAdornment,
InputBase, InputBase
makeStyles
} from '@material-ui/core' } from '@material-ui/core'
import SearchIcon from '@material-ui/icons/Search' import SearchIcon from '@material-ui/icons/Search'
import MizikLis from '../awtis/mizik-lis' import MizikLis from '../awtis/mizik-lis'
const useStyles = makeStyles(theme => ({ const PREFIX = 'drawer-bar'
toolbar: theme.mixins.toolbar,
list: { const classes = {
toolbar: `${PREFIX}-toolbar`,
list: `${PREFIX}-list`,
form: `${PREFIX}-form`,
text: `${PREFIX}-text`
}
const Root = styled('div')((
{
theme
}
) => ({
[`& .${classes.toolbar}`]: theme.mixins.toolbar,
[`& .${classes.list}`]: {
marginBottom: '6em' marginBottom: '6em'
}, },
form: {
[`& .${classes.form}`]: {
marginLeft: theme.spacing(1) marginLeft: theme.spacing(1)
}, },
text: {
[`& .${classes.text}`]: {
marginBottom: '0.5em' marginBottom: '0.5em'
} }
})) }))
@@ -46,7 +62,6 @@ const getMizikFiltered = (teks, filter) => {
export default function DrawerBar({meteEsMobilOuve, teks, anTeks}) { export default function DrawerBar({meteEsMobilOuve, teks, anTeks}) {
const slug = anTeks ? anTeks.slug : null const slug = anTeks ? anTeks.slug : null
const classes = useStyles()
const [search, setSearch] = useState('') const [search, setSearch] = useState('')
const [slugTeksChwazi, meteSlugTeksChwazi] = useState(slug) const [slugTeksChwazi, meteSlugTeksChwazi] = useState(slug)
@@ -60,7 +75,7 @@ export default function DrawerBar({meteEsMobilOuve, teks, anTeks}) {
} }
return ( return (
<div className='search'> <Root className='search'>
<FormControl className={classes.form}> <FormControl className={classes.form}>
<InputBase <InputBase
className={classes.toolbar} className={classes.toolbar}
@@ -84,7 +99,7 @@ export default function DrawerBar({meteEsMobilOuve, teks, anTeks}) {
meteSlugTeksChwazi={meteSlugTeksChwazi} meteSlugTeksChwazi={meteSlugTeksChwazi}
/> />
</div> </div>
</div> </Root>
) )
} }
+14 -9
View File
@@ -1,7 +1,7 @@
import {useState} from 'react' import {useState} from 'react'
import PropTypes from 'prop-types' import PropTypes from 'prop-types'
import {makeStyles} from '@material-ui/core/styles' import {styled} from '@material-ui/core/styles'
import SpeedDial from '@material-ui/lab/SpeedDial' import SpeedDial from '@material-ui/lab/SpeedDial'
import SpeedDialIcon from '@material-ui/lab/SpeedDialIcon' import SpeedDialIcon from '@material-ui/lab/SpeedDialIcon'
import SpeedDialAction from '@material-ui/lab/SpeedDialAction' import SpeedDialAction from '@material-ui/lab/SpeedDialAction'
@@ -10,24 +10,29 @@ import ShareIcon from '@material-ui/icons/Share'
import TwitterIcon from '@material-ui/icons/Twitter' import TwitterIcon from '@material-ui/icons/Twitter'
import {Backdrop} from '@material-ui/core' import {Backdrop} from '@material-ui/core'
const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL const PREFIX = 'pataje'
const TWITTER_HASHTAGS = process.env.NEXT_PUBLIC_TWITTER_HASHTAGS || 'OKi'
const TWITTER_USERNAME = process.env.NEXT_PUBLIC_TWITTER_USERNAME || 'OrganisationKA'
const useStyles = makeStyles(() => ({ const classes = {
root: { root: `${PREFIX}-root`
}
const Root = styled('div')(() => ({
[`&.${classes.root}`]: {
height: 0, height: 0,
transform: 'translateZ(0px)' transform: 'translateZ(0px)'
} }
})) }))
const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL
const TWITTER_HASHTAGS = process.env.NEXT_PUBLIC_TWITTER_HASHTAGS || 'OKi'
const TWITTER_USERNAME = process.env.NEXT_PUBLIC_TWITTER_USERNAME || 'OrganisationKA'
const actions = [ const actions = [
{icon: <TwitterIcon />, name: 'Twitter', code: 'twitter'}, {icon: <TwitterIcon />, name: 'Twitter', code: 'twitter'},
{icon: <FileCopyIcon />, name: 'Copier le lien', code: 'copy'} {icon: <FileCopyIcon />, name: 'Copier le lien', code: 'copy'}
] ]
export default function Pataje({teks, setError, setSuccess}) { export default function Pataje({teks, setError, setSuccess}) {
const classes = useStyles()
const {tit, awtis, slug} = teks const {tit, awtis, slug} = teks
const [open, setOpen] = useState(false) const [open, setOpen] = useState(false)
@@ -62,7 +67,7 @@ export default function Pataje({teks, setError, setSuccess}) {
} }
return ( return (
<div className={classes.root}> <Root className={classes.root}>
<Backdrop open={open} /> <Backdrop open={open} />
<SpeedDial <SpeedDial
FabProps={{size: 'small', margin: 'auto', color: 'default'}} FabProps={{size: 'small', margin: 'auto', color: 'default'}}
@@ -83,7 +88,7 @@ export default function Pataje({teks, setError, setSuccess}) {
/> />
))} ))}
</SpeedDial> </SpeedDial>
</div> </Root>
) )
} }
+73 -34
View File
@@ -17,8 +17,7 @@ import {
useMediaQuery, useMediaQuery,
Snackbar, Snackbar,
Tooltip, Tooltip,
Zoom, Zoom
withStyles
} from '@material-ui/core' } from '@material-ui/core'
import KeyboardBackspaceIcon from '@material-ui/icons/KeyboardBackspace' import KeyboardBackspaceIcon from '@material-ui/icons/KeyboardBackspace'
@@ -26,7 +25,7 @@ import ExplicitIcon from '@material-ui/icons/Explicit'
import MenuIcon from '@material-ui/icons/Menu' import MenuIcon from '@material-ui/icons/Menu'
import {makeStyles, useTheme} from '@material-ui/core/styles' import {useTheme, styled} from '@material-ui/core/styles'
import MuiAlert from '@material-ui/lab/Alert' import MuiAlert from '@material-ui/lab/Alert'
import {formatJsonString} from '../../lib/utils/format' import {formatJsonString} from '../../lib/utils/format'
@@ -41,24 +40,45 @@ import OkiMizik from './oki-mizik'
import Pataje from './pataje' import Pataje from './pataje'
import EntegreMizik from './entegre-mizik' import EntegreMizik from './entegre-mizik'
function Alert(props) { const PREFIX = 'teks-drawer'
return <MuiAlert elevation={6} variant='filled' {...props} />
const classes = {
tooltip: `${PREFIX}-tooltip`,
root: `${PREFIX}-root`,
drawer: `${PREFIX}-drawer`,
appBar: `${PREFIX}-appBar`,
menuButton: `${PREFIX}-menuButton`,
toolbar: `${PREFIX}-toolbar`,
drawerPaper: `${PREFIX}-drawerPaper`,
content: `${PREFIX}-content`,
list: `${PREFIX}-list`,
form: `${PREFIX}-form`,
text: `${PREFIX}-text`,
gridText: `${PREFIX}-gridText`,
grid: `${PREFIX}-grid`,
koute: `${PREFIX}-koute`,
vwe: `${PREFIX}-vwe`,
pataje: `${PREFIX}-pataje`
} }
const drawerWidth = 240 const Root = styled('div')((
{
const useStyles = makeStyles(theme => ({ theme
root: { }
) => ({
[`&.${classes.root}`]: {
display: 'flex' display: 'flex'
}, },
drawer: {
[`& .${classes.drawer}`]: {
marginTop: '10em', marginTop: '10em',
[theme.breakpoints.up('sm')]: { [theme.breakpoints.up('sm')]: {
width: drawerWidth, width: drawerWidth,
flexShrink: 0 flexShrink: 0
} }
}, },
appBar: {
[`& .${classes.appBar}`]: {
borderTop: '2px solid #303030', borderTop: '2px solid #303030',
marginTop: '4.71rem', marginTop: '4.71rem',
[theme.breakpoints.up('sm')]: { [theme.breakpoints.up('sm')]: {
@@ -67,40 +87,50 @@ const useStyles = makeStyles(theme => ({
}, },
zIndex: 1 zIndex: 1
}, },
menuButton: {
[`& .${classes.menuButton}`]: {
[theme.breakpoints.up('sm')]: { [theme.breakpoints.up('sm')]: {
display: 'none' display: 'none'
} }
}, },
toolbar: theme.mixins.toolbar,
drawerPaper: { [`& .${classes.toolbar}`]: theme.mixins.toolbar,
[`& .${classes.drawerPaper}`]: {
borderTop: '2px solid #303030', borderTop: '2px solid #303030',
marginTop: '4.71rem', marginTop: '4.71rem',
width: drawerWidth width: drawerWidth
}, },
content: {
[`& .${classes.content}`]: {
flexGrow: 1, flexGrow: 1,
padding: theme.spacing(3) padding: theme.spacing(3)
}, },
list: {
[`& .${classes.list}`]: {
marginBottom: '6em' marginBottom: '6em'
}, },
form: {
[`& .${classes.form}`]: {
marginLeft: theme.spacing(1) marginLeft: theme.spacing(1)
}, },
text: {
[`& .${classes.text}`]: {
marginBottom: '0.5em' marginBottom: '0.5em'
}, },
gridText: {
[`& .${classes.gridText}`]: {
border: '2px solid grey', border: '2px solid grey',
borderRadius: '5px', borderRadius: '5px',
marginTop: '2em', marginTop: '2em',
padding: '1em' padding: '1em'
}, },
grid: {
[`& .${classes.grid}`]: {
marginTop: '1em' marginTop: '1em'
}, },
koute: {
[`& .${classes.koute}`]: {
position: 'absolute', position: 'absolute',
right: '40px', right: '40px',
top: '8px', top: '8px',
@@ -108,7 +138,8 @@ const useStyles = makeStyles(theme => ({
top: '10px' top: '10px'
} }
}, },
vwe: {
[`& .${classes.vwe}`]: {
position: 'absolute', position: 'absolute',
right: '90px', right: '90px',
top: '8px', top: '8px',
@@ -116,7 +147,8 @@ const useStyles = makeStyles(theme => ({
top: '10px' top: '10px'
} }
}, },
pataje: {
[`& .${classes.pataje}`]: {
position: 'fixed', position: 'fixed',
top: '85px', top: '85px',
left: '110px', left: '110px',
@@ -128,6 +160,12 @@ const useStyles = makeStyles(theme => ({
} }
})) }))
function Alert(props) {
return <MuiAlert elevation={6} variant='filled' {...props} />
}
const drawerWidth = 240
const langToArray = anTeks => { const langToArray = anTeks => {
const langArray = [] const langArray = []
@@ -168,13 +206,7 @@ const alignTeks = (langArray, isMobile) => {
} }
} }
const ExplicitTooltip = withStyles(() => ({ const ExplicitTooltip = Tooltip
tooltip: {
fontSize: 18,
fontWeight: 'bold',
backgroundColor: 'rgba(245, 0, 87, 0.8)'
}
}))(Tooltip)
export default function TeksDrawer({teks, anTeks, komante}) { export default function TeksDrawer({teks, anTeks, komante}) {
const [session] = useSession() const [session] = useSession()
@@ -182,7 +214,7 @@ export default function TeksDrawer({teks, anTeks, komante}) {
const isMobile = useMediaQuery('(max-width:800px)') const isMobile = useMediaQuery('(max-width:800px)')
const langArray = langToArray(anTeks) const langArray = langToArray(anTeks)
const classes = useStyles()
const theme = useTheme() const theme = useTheme()
const [esMobilOuve, meteEsMobilOuve] = useState(false) const [esMobilOuve, meteEsMobilOuve] = useState(false)
const [open, setOpen] = useState(false) const [open, setOpen] = useState(false)
@@ -212,7 +244,7 @@ export default function TeksDrawer({teks, anTeks, komante}) {
}, [error, success, setOpen]) }, [error, success, setOpen])
return ( return (
<div className={classes.root}> <Root className={classes.root}>
<CssBaseline /> <CssBaseline />
<AppBar position='fixed' className={classes.appBar}> <AppBar position='fixed' className={classes.appBar}>
<Toolbar> <Toolbar>
@@ -294,7 +326,14 @@ export default function TeksDrawer({teks, anTeks, komante}) {
<Typography variant='h5'> <Typography variant='h5'>
{anTeks.tit} {anTeks.tit}
{anTeks.eksplisit && ( {anTeks.eksplisit && (
<ExplicitTooltip title='Explicit Lyrics' placement='bottom' TransitionComponent={Zoom}> <ExplicitTooltip
title='Explicit Lyrics'
placement='bottom'
TransitionComponent={Zoom}
classes={{
tooltip: classes.tooltip
}}
>
<ExplicitIcon style={{marginLeft: 10}} color='secondary' /> <ExplicitIcon style={{marginLeft: 10}} color='secondary' />
</ExplicitTooltip> </ExplicitTooltip>
)} )}
@@ -375,7 +414,7 @@ export default function TeksDrawer({teks, anTeks, komante}) {
<DenyeTeks {...teks} /> <DenyeTeks {...teks} />
)} )}
</main> </main>
</div> </Root>
) )
} }
+13 -7
View File
@@ -11,20 +11,26 @@ import {
Grid Grid
} from '@material-ui/core' } from '@material-ui/core'
import ExplicitIcon from '@material-ui/icons/Explicit' import ExplicitIcon from '@material-ui/icons/Explicit'
import {makeStyles} from '@material-ui/core/styles' import {styled} from '@material-ui/core/styles'
const useStyles = makeStyles({ const PREFIX = 'teks-kat'
root: {
const classes = {
root: `${PREFIX}-root`,
media: `${PREFIX}-media`
}
const StyledGrid = styled(Grid)({
[`& .${classes.root}`]: {
maxWidth: 345 maxWidth: 345
}, },
media: { [`& .${classes.media}`]: {
height: 240, height: 240,
objectFit: 'contain' objectFit: 'contain'
} }
}) })
export default function TeksKat({teks}) { export default function TeksKat({teks}) {
const classes = useStyles()
const router = useRouter() const router = useRouter()
const noImageUrl = 'https://place-hold.it/140x140?text=Pa%20ni%20imaj' const noImageUrl = 'https://place-hold.it/140x140?text=Pa%20ni%20imaj'
const {tit, awtis, lanne, kouveti, published_at, slug} = teks const {tit, awtis, lanne, kouveti, published_at, slug} = teks
@@ -35,7 +41,7 @@ export default function TeksKat({teks}) {
} }
return ( return (
<Grid item sm={12} md={6} lg={4}> <StyledGrid item sm={12} md={6} lg={4}>
<Card className={classes.root}> <Card className={classes.root}>
<CardActionArea onClick={() => handleClick(slug)}> <CardActionArea onClick={() => handleClick(slug)}>
<CardMedia <CardMedia
@@ -71,7 +77,7 @@ export default function TeksKat({teks}) {
</CardContent> </CardContent>
</CardActionArea> </CardActionArea>
</Card> </Card>
</Grid> </StyledGrid>
) )
} }
+11 -6
View File
@@ -17,11 +17,17 @@ import VideocamIcon from '@material-ui/icons/Videocam'
import MusicNoteIcon from '@material-ui/icons/MusicNote' import MusicNoteIcon from '@material-ui/icons/MusicNote'
import AlbumIcon from '@material-ui/icons/Album' import AlbumIcon from '@material-ui/icons/Album'
import PlayCircleFilledIcon from '@material-ui/icons/PlayCircleFilled' import PlayCircleFilledIcon from '@material-ui/icons/PlayCircleFilled'
import {makeStyles} from '@material-ui/core/styles' import {styled} from '@material-ui/core/styles'
import {SpeedDial, SpeedDialIcon, SpeedDialAction} from '@material-ui/lab' import {SpeedDial, SpeedDialIcon, SpeedDialAction} from '@material-ui/lab'
const useStyles = makeStyles(() => ({ const PREFIX = 'vwe-koute-achte'
root: {
const classes = {
root: `${PREFIX}-root`
}
const Root = styled('div')(() => ({
[`&.${classes.root}`]: {
height: 0, height: 0,
transform: 'translateZ(0px)' transform: 'translateZ(0px)'
} }
@@ -47,7 +53,6 @@ const vweyIcons = {
} }
export default function VweKouteAchte({anTeks, niVideyo, niOdyo}) { export default function VweKouteAchte({anTeks, niVideyo, niOdyo}) {
const classes = useStyles()
const [ouve, meteOuve] = useState(false) const [ouve, meteOuve] = useState(false)
const {kouteyAchtey, lyen} = anTeks const {kouteyAchtey, lyen} = anTeks
@@ -76,7 +81,7 @@ export default function VweKouteAchte({anTeks, niVideyo, niOdyo}) {
} }
return ( return (
<div className={classes.root}> <Root className={classes.root}>
<SpeedDial <SpeedDial
color='secondary' color='secondary'
FabProps={{size: 'small', margin: 'auto', color: 'default'}} FabProps={{size: 'small', margin: 'auto', color: 'default'}}
@@ -105,7 +110,7 @@ export default function VweKouteAchte({anTeks, niVideyo, niOdyo}) {
/> />
))} ))}
</SpeedDial> </SpeedDial>
</div> </Root>
) )
} }