Fix lint errors
This commit is contained in:
@@ -90,7 +90,7 @@ export default function MizikBadjMeni({teks}) {
|
|||||||
>
|
>
|
||||||
<Paper>
|
<Paper>
|
||||||
<ClickAwayListener onClickAway={handleClose}>
|
<ClickAwayListener onClickAway={handleClose}>
|
||||||
<MenuList autoFocusItem={open} id='menu-list-grow' onKeyDown={handleListKeyDown}>
|
<MenuList autoFocusItem={open} id='menu-list-grow' onKeyDown={() => handleListKeyDown()}>
|
||||||
{teks.map(t => <MenuItem key={t._id} onClick={() => handleClick(t.slug)}>{t.tit}</MenuItem>)}
|
{teks.map(t => <MenuItem key={t._id} onClick={() => handleClick(t.slug)}>{t.tit}</MenuItem>)}
|
||||||
</MenuList>
|
</MenuList>
|
||||||
</ClickAwayListener>
|
</ClickAwayListener>
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
import {useState, useEffect, useRef} from 'react'
|
import {useState, useEffect, useRef} from 'react'
|
||||||
import PropTypes from 'prop-types'
|
import PropTypes from 'prop-types'
|
||||||
import {useSession} from 'next-auth/client'
|
import {useSession} from 'next-auth/client'
|
||||||
import Koneksyon from '../sesyon/koneksyon'
|
|
||||||
|
|
||||||
import {
|
import {
|
||||||
IconButton,
|
IconButton,
|
||||||
@@ -17,8 +16,9 @@ import {
|
|||||||
makeStyles
|
makeStyles
|
||||||
} from '@material-ui/core'
|
} from '@material-ui/core'
|
||||||
import AddCommentIcon from '@material-ui/icons/AddComment'
|
import AddCommentIcon from '@material-ui/icons/AddComment'
|
||||||
import KomanteList from './komante-list'
|
|
||||||
import {useRouter} from 'next/router'
|
import {useRouter} from 'next/router'
|
||||||
|
import Koneksyon from '../sesyon/koneksyon'
|
||||||
|
import KomanteList from './komante-list'
|
||||||
import EkriKomante from './ekri-komante'
|
import EkriKomante from './ekri-komante'
|
||||||
|
|
||||||
const useStyles = makeStyles(theme => ({
|
const useStyles = makeStyles(theme => ({
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ function Dekoneksyon({chimen, tooltipPlacement, ...props}) {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Link 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}>
|
||||||
<Fab
|
<Fab
|
||||||
className={classes.dekoneksyon}
|
className={classes.dekoneksyon}
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ export default function LoginProvider({id, title, icon, callbackUrl}) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Link href='/api/auth/signin'>
|
<Link passHref href='/api/auth/signin'>
|
||||||
<Button
|
<Button
|
||||||
variant='contained'
|
variant='contained'
|
||||||
color='primary'
|
color='primary'
|
||||||
|
|||||||
@@ -260,7 +260,7 @@ function EkriTeks({session}) {
|
|||||||
{loading && <LinearProgress size={24} style={{width: '100%', marginBlock: '1em'}} />}
|
{loading && <LinearProgress size={24} style={{width: '100%', marginBlock: '1em'}} />}
|
||||||
</div>
|
</div>
|
||||||
{success && (
|
{success && (
|
||||||
<Snackbar open={open} autoHideDuration={10000} onClose={handleClose}>
|
<Snackbar open={open} autoHideDuration={10_000} onClose={handleClose}>
|
||||||
<Alert severity='success' onClose={handleClose}>
|
<Alert severity='success' onClose={handleClose}>
|
||||||
<strong>{success}</strong>
|
<strong>{success}</strong>
|
||||||
</Alert>
|
</Alert>
|
||||||
|
|||||||
@@ -19,20 +19,37 @@ const kouteyAchteyIcons = {
|
|||||||
|
|
||||||
function RannIframe({boutik, url, isMobile}) {
|
function RannIframe({boutik, url, isMobile}) {
|
||||||
let src = ''
|
let src = ''
|
||||||
if (boutik === 'Tidal') {
|
switch (boutik) {
|
||||||
const trackArray = url.split('/')
|
case 'Tidal': {
|
||||||
const trackId = trackArray[trackArray.length - 1]
|
const trackArray = url.split('/')
|
||||||
src = `https://embed.tidal.com/tracks/${trackId}?disableAnalytics=true`
|
const trackId = trackArray[trackArray.length - 1]
|
||||||
} else if (boutik === 'Deezer') {
|
src = `https://embed.tidal.com/tracks/${trackId}?disableAnalytics=true`
|
||||||
const trackArray = url.split('/')
|
|
||||||
const trackId = trackArray[trackArray.length - 1]
|
break
|
||||||
src = `https://widget.deezer.com/widget/auto/track/${trackId}?tracklist=false`
|
}
|
||||||
} else if (boutik === 'Spotify') {
|
|
||||||
const trackArray = url.split('/')
|
case 'Deezer': {
|
||||||
const trackId = trackArray[trackArray.length - 1]
|
const trackArray = url.split('/')
|
||||||
src = `https://open.spotify.com/embed/track/${trackId}`
|
const trackId = trackArray[trackArray.length - 1]
|
||||||
} else if (boutik === 'Soundcloud') {
|
src = `https://widget.deezer.com/widget/auto/track/${trackId}?tracklist=false`
|
||||||
src = `https://w.soundcloud.com/player/?url=${url}`
|
|
||||||
|
break
|
||||||
|
}
|
||||||
|
|
||||||
|
case 'Spotify': {
|
||||||
|
const trackArray = url.split('/')
|
||||||
|
const trackId = trackArray[trackArray.length - 1]
|
||||||
|
src = `https://open.spotify.com/embed/track/${trackId}`
|
||||||
|
|
||||||
|
break
|
||||||
|
}
|
||||||
|
|
||||||
|
case 'Soundcloud': {
|
||||||
|
src = `https://w.soundcloud.com/player/?url=${url}`
|
||||||
|
|
||||||
|
break
|
||||||
|
}
|
||||||
|
// No default
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@@ -108,13 +125,11 @@ function EntegreMizik({anTeks, isMobile}) {
|
|||||||
Écouter
|
Écouter
|
||||||
</Typography>
|
</Typography>
|
||||||
|
|
||||||
{!okiMizikID && filteredKouteyAchtey.map(({_id, boutik, url}) => {
|
{!okiMizikID && filteredKouteyAchtey.map(({_id, boutik, url}) => (
|
||||||
return (
|
<IconButton key={_id} aria-label='player' onClick={() => handleClick(boutik, url)}>
|
||||||
<IconButton key={_id} aria-label='player' onClick={() => handleClick(boutik, url)}>
|
{kouteyAchteyIcons[boutik]}
|
||||||
{kouteyAchteyIcons[boutik]}
|
</IconButton>
|
||||||
</IconButton>
|
))}
|
||||||
)
|
|
||||||
})}
|
|
||||||
|
|
||||||
{chwaMizik && (
|
{chwaMizik && (
|
||||||
<RannIframe boutik={chwaMizik.boutik} url={chwaMizik.url} isMobile={isMobile} />
|
<RannIframe boutik={chwaMizik.boutik} url={chwaMizik.url} isMobile={isMobile} />
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import React, {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 {makeStyles} from '@material-ui/core/styles'
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ import MenuIcon from '@material-ui/icons/Menu'
|
|||||||
|
|
||||||
import {makeStyles, useTheme} from '@material-ui/core/styles'
|
import {makeStyles, useTheme} from '@material-ui/core/styles'
|
||||||
|
|
||||||
|
import MuiAlert from '@material-ui/lab/Alert'
|
||||||
import {formatJsonString} from '../../lib/utils/format'
|
import {formatJsonString} from '../../lib/utils/format'
|
||||||
|
|
||||||
import VweKomante from '../komante/vwe-komante'
|
import VweKomante from '../komante/vwe-komante'
|
||||||
@@ -40,8 +41,6 @@ import OkiMizik from './oki-mizik'
|
|||||||
import Pataje from './pataje'
|
import Pataje from './pataje'
|
||||||
import EntegreMizik from './entegre-mizik'
|
import EntegreMizik from './entegre-mizik'
|
||||||
|
|
||||||
import MuiAlert from '@material-ui/lab/Alert'
|
|
||||||
|
|
||||||
function Alert(props) {
|
function Alert(props) {
|
||||||
return <MuiAlert elevation={6} variant='filled' {...props} />
|
return <MuiAlert elevation={6} variant='filled' {...props} />
|
||||||
}
|
}
|
||||||
@@ -228,7 +227,7 @@ export default function TeksDrawer({teks, anTeks, komante}) {
|
|||||||
</IconButton>
|
</IconButton>
|
||||||
{anTeks ? (
|
{anTeks ? (
|
||||||
<>
|
<>
|
||||||
<Link href='/teks'>
|
<Link passHref href='/teks'>
|
||||||
<IconButton aria-label='return' size='medium'>
|
<IconButton aria-label='return' size='medium'>
|
||||||
<KeyboardBackspaceIcon style={{fontSize: '1.5em'}} />
|
<KeyboardBackspaceIcon style={{fontSize: '1.5em'}} />
|
||||||
</IconButton>
|
</IconButton>
|
||||||
|
|||||||
@@ -51,21 +51,17 @@ export default function VweKouteAchte({anTeks, niVideyo, niOdyo}) {
|
|||||||
const [ouve, meteOuve] = useState(false)
|
const [ouve, meteOuve] = useState(false)
|
||||||
const {kouteyAchtey, lyen} = anTeks
|
const {kouteyAchtey, lyen} = anTeks
|
||||||
|
|
||||||
const kouteyAchteyActions = kouteyAchtey.map(({boutik, url}) => {
|
const kouteyAchteyActions = kouteyAchtey.map(({boutik, url}) => ({
|
||||||
return {
|
icon: kouteyAchteyIcons[boutik],
|
||||||
icon: kouteyAchteyIcons[boutik],
|
name: boutik,
|
||||||
name: boutik,
|
link: url
|
||||||
link: url
|
}))
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
const vweyActions = lyen.map(({url, sit}) => {
|
const vweyActions = lyen.map(({url, sit}) => ({
|
||||||
return {
|
icon: vweyIcons[sit],
|
||||||
icon: vweyIcons[sit],
|
name: sit,
|
||||||
name: sit,
|
link: url
|
||||||
link: url
|
}))
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
const handleOpen = () => {
|
const handleOpen = () => {
|
||||||
meteOuve(true)
|
meteOuve(true)
|
||||||
|
|||||||
+3
-3
@@ -1,3 +1,3 @@
|
|||||||
export const formatJsonString = stringToFormat => {
|
export const formatJsonString = stringToFormat =>
|
||||||
return stringToFormat.split('\n').map((string, index) => <div key={index}>{`${string}`}<br /></div>) // eslint-disable-line react/no-array-index-key
|
stringToFormat.split('\n').map((string, index) => <div key={index}>{`${string}`}<br /></div>) // eslint-disable-line react/no-array-index-key
|
||||||
}
|
|
||||||
|
|||||||
+1
-2
@@ -1,7 +1,6 @@
|
|||||||
import PropTypes from 'prop-types'
|
import PropTypes from 'prop-types'
|
||||||
import Image from 'next/image'
|
import Image from 'next/image'
|
||||||
import {Box, Container, Grid, Typography, Button} from '@material-ui/core'
|
import {Container, Grid, Typography, Button} from '@material-ui/core'
|
||||||
import {makeStyles} from '@material-ui/core/styles'
|
|
||||||
import GroupIcon from '@material-ui/icons/Group'
|
import GroupIcon from '@material-ui/icons/Group'
|
||||||
import MusicNoteIcon from '@material-ui/icons/MusicNote'
|
import MusicNoteIcon from '@material-ui/icons/MusicNote'
|
||||||
import {Pleroma, Peertube, Paypal} from '@icons-pack/react-simple-icons'
|
import {Pleroma, Peertube, Paypal} from '@icons-pack/react-simple-icons'
|
||||||
|
|||||||
+6
-10
@@ -2,9 +2,8 @@ import {jwennSlugs} from '../lib/oki-api'
|
|||||||
|
|
||||||
const url = process.env.NEXT_PUBLIC_SITE_URL || 'http://localhost'
|
const url = process.env.NEXT_PUBLIC_SITE_URL || 'http://localhost'
|
||||||
|
|
||||||
const createSitemap = teks => {
|
const createSitemap = teks => (
|
||||||
return (
|
`<?xml version="1.0" encoding="UTF-8"?>
|
||||||
`<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||||
<url>
|
<url>
|
||||||
<loc>${url}</loc>
|
<loc>${url}</loc>
|
||||||
@@ -19,18 +18,15 @@ const createSitemap = teks => {
|
|||||||
<priority>0.6</priority>
|
<priority>0.6</priority>
|
||||||
</url>
|
</url>
|
||||||
${teks
|
${teks
|
||||||
.map(m => {
|
.map(m => `
|
||||||
return `
|
|
||||||
<url>
|
<url>
|
||||||
<loc>${`${url}/teks/${m}`}</loc>
|
<loc>${`${url}/teks/${m}`}</loc>
|
||||||
</url>
|
</url>
|
||||||
`
|
`)
|
||||||
})
|
.join('')}
|
||||||
.join('')}
|
|
||||||
</urlset>
|
</urlset>
|
||||||
`
|
`
|
||||||
)
|
)
|
||||||
}
|
|
||||||
|
|
||||||
export default function Sitemap() {
|
export default function Sitemap() {
|
||||||
return null
|
return null
|
||||||
|
|||||||
@@ -5,9 +5,7 @@ import {jwennTeksEpiSlug, jwennTeks, jwennKomanteEpiTeksId} from '../../lib/oki-
|
|||||||
import TeksDrawer from '../../components/teks/teks-drawer'
|
import TeksDrawer from '../../components/teks/teks-drawer'
|
||||||
import HeadLayout from '../../components/head-layout'
|
import HeadLayout from '../../components/head-layout'
|
||||||
|
|
||||||
const jwennAwtis = awtis => {
|
const jwennAwtis = awtis => awtis.map(a => a.alias).join(', ')
|
||||||
return awtis.map(a => a.alias).join(', ')
|
|
||||||
}
|
|
||||||
|
|
||||||
export default function SlugTeks({teks, anTeks, slug, komante}) {
|
export default function SlugTeks({teks, anTeks, slug, komante}) {
|
||||||
const awtis = anTeks.awtis.length === 1 ? anTeks.awtis[0].alias : jwennAwtis(anTeks.awtis)
|
const awtis = anTeks.awtis.length === 1 ? anTeks.awtis[0].alias : jwennAwtis(anTeks.awtis)
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
const express = require('express')
|
const express = require('express')
|
||||||
const next = require('next')
|
const next = require('next')
|
||||||
const compression = require('compression')
|
const compression = require('compression')
|
||||||
const path = require('path')
|
|
||||||
|
|
||||||
const port = process.env.PORT || 3000
|
const port = process.env.PORT || 3000
|
||||||
const dev = process.env.NODE_ENV !== 'production'
|
const dev = process.env.NODE_ENV !== 'production'
|
||||||
@@ -26,13 +25,9 @@ app.prepare().then(() => {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
server.get('*', (request, response) => {
|
server.get('*', (request, response) => handle(request, response))
|
||||||
return handle(request, response)
|
|
||||||
})
|
|
||||||
|
|
||||||
server.post('*', (request, response) => {
|
server.post('*', (request, response) => handle(request, response))
|
||||||
return handle(request, response)
|
|
||||||
})
|
|
||||||
|
|
||||||
server.listen(port, error => {
|
server.listen(port, error => {
|
||||||
if (error) {
|
if (error) {
|
||||||
|
|||||||
Reference in New Issue
Block a user