Moved all reducers and actions to their own folders
This commit is contained in:
@@ -11,7 +11,7 @@ import PlayArrowIcon from '@material-ui/icons/PlayArrow'
|
||||
import ShuffleIcon from '@material-ui/icons/Shuffle'
|
||||
import CloudDownloadOutlinedIcon from '@material-ui/icons/CloudDownloadOutlined'
|
||||
import { RiPlayListAddFill, RiPlayList2Fill } from 'react-icons/ri'
|
||||
import { playNext, addTracks, playTracks, shuffleTracks } from '../audioplayer'
|
||||
import { playNext, addTracks, playTracks, shuffleTracks } from '../actions'
|
||||
import subsonic from '../subsonic'
|
||||
import { formatBytes } from '../common/SizeField'
|
||||
import { useMediaQuery } from '@material-ui/core'
|
||||
|
||||
@@ -18,7 +18,6 @@ import { List, QuickFilter, Title, useAlbumsPerPage } from '../common'
|
||||
import AlbumListActions from './AlbumListActions'
|
||||
import AlbumListView from './AlbumListView'
|
||||
import AlbumGridView from './AlbumGridView'
|
||||
import { ALBUM_MODE_LIST } from './albumState'
|
||||
import AddToPlaylistDialog from '../dialogs/AddToPlaylistDialog'
|
||||
import albumLists, { defaultAlbumList } from './albumLists'
|
||||
|
||||
@@ -99,10 +98,10 @@ const AlbumList = (props) => {
|
||||
pagination={<Pagination rowsPerPageOptions={perPageOptions} />}
|
||||
title={<AlbumListTitle albumListType={albumListType} />}
|
||||
>
|
||||
{albumView.mode === ALBUM_MODE_LIST ? (
|
||||
<AlbumListView {...props} />
|
||||
) : (
|
||||
{albumView.grid ? (
|
||||
<AlbumGridView isArtistView={isArtistView} {...props} />
|
||||
) : (
|
||||
<AlbumListView {...props} />
|
||||
)}
|
||||
</List>
|
||||
<AddToPlaylistDialog />
|
||||
|
||||
@@ -4,7 +4,7 @@ import { ButtonGroup } from '@material-ui/core'
|
||||
import ViewHeadlineIcon from '@material-ui/icons/ViewHeadline'
|
||||
import ViewModuleIcon from '@material-ui/icons/ViewModule'
|
||||
import { useDispatch, useSelector } from 'react-redux'
|
||||
import { ALBUM_MODE_GRID, ALBUM_MODE_LIST, selectViewMode } from './albumState'
|
||||
import { albumViewGrid, albumViewList } from '../actions'
|
||||
|
||||
const AlbumListActions = ({
|
||||
currentSort,
|
||||
@@ -44,15 +44,15 @@ const AlbumListActions = ({
|
||||
>
|
||||
<Button
|
||||
size="small"
|
||||
color={albumView.mode === ALBUM_MODE_GRID ? 'primary' : 'secondary'}
|
||||
onClick={() => dispatch(selectViewMode(ALBUM_MODE_GRID))}
|
||||
color={albumView.grid ? 'primary' : 'secondary'}
|
||||
onClick={() => dispatch(albumViewGrid())}
|
||||
>
|
||||
<ViewModuleIcon fontSize="inherit" />
|
||||
</Button>
|
||||
<Button
|
||||
size="small"
|
||||
color={albumView.mode === ALBUM_MODE_LIST ? 'primary' : 'secondary'}
|
||||
onClick={() => dispatch(selectViewMode(ALBUM_MODE_LIST))}
|
||||
color={albumView.grid ? 'secondary' : 'primary'}
|
||||
onClick={() => dispatch(albumViewList())}
|
||||
>
|
||||
<ViewHeadlineIcon fontSize="inherit" />
|
||||
</Button>
|
||||
|
||||
@@ -11,7 +11,7 @@ import { useDispatch } from 'react-redux'
|
||||
import { Card, useMediaQuery } from '@material-ui/core'
|
||||
import { makeStyles } from '@material-ui/core/styles'
|
||||
import StarBorderIcon from '@material-ui/icons/StarBorder'
|
||||
import { playTracks } from '../audioplayer'
|
||||
import { playTracks } from '../actions'
|
||||
import {
|
||||
DurationField,
|
||||
SongContextMenu,
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
const ALBUM_MODE_GRID = 'ALBUM_GRID_MODE'
|
||||
const ALBUM_MODE_LIST = 'ALBUM_LIST_MODE'
|
||||
const selectViewMode = (mode) => ({ type: mode })
|
||||
|
||||
const albumViewReducer = (
|
||||
previousState = {
|
||||
mode: ALBUM_MODE_GRID,
|
||||
},
|
||||
payload
|
||||
) => {
|
||||
const { type } = payload
|
||||
switch (type) {
|
||||
case ALBUM_MODE_GRID:
|
||||
case ALBUM_MODE_LIST:
|
||||
return { ...previousState, mode: type }
|
||||
default:
|
||||
return previousState
|
||||
}
|
||||
}
|
||||
|
||||
export { ALBUM_MODE_LIST, ALBUM_MODE_GRID, albumViewReducer, selectViewMode }
|
||||
Reference in New Issue
Block a user