Fixed: ArtistIndex selector improvements

pull/6/head
Qstick 5 years ago
parent 0db28d4ea2
commit ec780c310c

@ -348,6 +348,10 @@ class ArtistIndex extends Component {
<div className={styles.contentBodyContainer}> <div className={styles.contentBodyContainer}>
<ViewComponent <ViewComponent
contentBody={contentBody} contentBody={contentBody}
items={items}
filters={filters}
sortKey={sortKey}
sortDirection={sortDirection}
scrollTop={scrollTop} scrollTop={scrollTop}
jumpToCharacter={jumpToCharacter} jumpToCharacter={jumpToCharacter}
onRender={this.onRender} onRender={this.onRender}

@ -1,6 +1,5 @@
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { createSelector } from 'reselect'; import { createSelector } from 'reselect';
import createClientSideCollectionSelector from 'Store/Selectors/createClientSideCollectionSelector';
import createUISettingsSelector from 'Store/Selectors/createUISettingsSelector'; import createUISettingsSelector from 'Store/Selectors/createUISettingsSelector';
import createDimensionsSelector from 'Store/Selectors/createDimensionsSelector'; import createDimensionsSelector from 'Store/Selectors/createDimensionsSelector';
import ArtistIndexBanners from './ArtistIndexBanners'; import ArtistIndexBanners from './ArtistIndexBanners';
@ -8,17 +7,15 @@ import ArtistIndexBanners from './ArtistIndexBanners';
function createMapStateToProps() { function createMapStateToProps() {
return createSelector( return createSelector(
(state) => state.artistIndex.bannerOptions, (state) => state.artistIndex.bannerOptions,
createClientSideCollectionSelector('artist', 'artistIndex'),
createUISettingsSelector(), createUISettingsSelector(),
createDimensionsSelector(), createDimensionsSelector(),
(bannerOptions, artist, uiSettings, dimensions) => { (bannerOptions, uiSettings, dimensions) => {
return { return {
bannerOptions, bannerOptions,
showRelativeDates: uiSettings.showRelativeDates, showRelativeDates: uiSettings.showRelativeDates,
shortDateFormat: uiSettings.shortDateFormat, shortDateFormat: uiSettings.shortDateFormat,
timeFormat: uiSettings.timeFormat, timeFormat: uiSettings.timeFormat,
isSmallScreen: dimensions.isSmallScreen, isSmallScreen: dimensions.isSmallScreen
...artist
}; };
} }
); );

@ -1,6 +1,5 @@
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { createSelector } from 'reselect'; import { createSelector } from 'reselect';
import createClientSideCollectionSelector from 'Store/Selectors/createClientSideCollectionSelector';
import createUISettingsSelector from 'Store/Selectors/createUISettingsSelector'; import createUISettingsSelector from 'Store/Selectors/createUISettingsSelector';
import createDimensionsSelector from 'Store/Selectors/createDimensionsSelector'; import createDimensionsSelector from 'Store/Selectors/createDimensionsSelector';
import ArtistIndexOverviews from './ArtistIndexOverviews'; import ArtistIndexOverviews from './ArtistIndexOverviews';
@ -8,18 +7,16 @@ import ArtistIndexOverviews from './ArtistIndexOverviews';
function createMapStateToProps() { function createMapStateToProps() {
return createSelector( return createSelector(
(state) => state.artistIndex.overviewOptions, (state) => state.artistIndex.overviewOptions,
createClientSideCollectionSelector('artist', 'artistIndex'),
createUISettingsSelector(), createUISettingsSelector(),
createDimensionsSelector(), createDimensionsSelector(),
(overviewOptions, artist, uiSettings, dimensions) => { (overviewOptions, uiSettings, dimensions) => {
return { return {
overviewOptions, overviewOptions,
showRelativeDates: uiSettings.showRelativeDates, showRelativeDates: uiSettings.showRelativeDates,
shortDateFormat: uiSettings.shortDateFormat, shortDateFormat: uiSettings.shortDateFormat,
longDateFormat: uiSettings.longDateFormat, longDateFormat: uiSettings.longDateFormat,
timeFormat: uiSettings.timeFormat, timeFormat: uiSettings.timeFormat,
isSmallScreen: dimensions.isSmallScreen, isSmallScreen: dimensions.isSmallScreen
...artist
}; };
} }
); );

@ -1,6 +1,5 @@
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { createSelector } from 'reselect'; import { createSelector } from 'reselect';
import createClientSideCollectionSelector from 'Store/Selectors/createClientSideCollectionSelector';
import createUISettingsSelector from 'Store/Selectors/createUISettingsSelector'; import createUISettingsSelector from 'Store/Selectors/createUISettingsSelector';
import createDimensionsSelector from 'Store/Selectors/createDimensionsSelector'; import createDimensionsSelector from 'Store/Selectors/createDimensionsSelector';
import ArtistIndexPosters from './ArtistIndexPosters'; import ArtistIndexPosters from './ArtistIndexPosters';
@ -8,17 +7,15 @@ import ArtistIndexPosters from './ArtistIndexPosters';
function createMapStateToProps() { function createMapStateToProps() {
return createSelector( return createSelector(
(state) => state.artistIndex.posterOptions, (state) => state.artistIndex.posterOptions,
createClientSideCollectionSelector('artist', 'artistIndex'),
createUISettingsSelector(), createUISettingsSelector(),
createDimensionsSelector(), createDimensionsSelector(),
(posterOptions, artist, uiSettings, dimensions) => { (posterOptions, uiSettings, dimensions) => {
return { return {
posterOptions, posterOptions,
showRelativeDates: uiSettings.showRelativeDates, showRelativeDates: uiSettings.showRelativeDates,
shortDateFormat: uiSettings.shortDateFormat, shortDateFormat: uiSettings.shortDateFormat,
timeFormat: uiSettings.timeFormat, timeFormat: uiSettings.timeFormat,
isSmallScreen: dimensions.isSmallScreen, isSmallScreen: dimensions.isSmallScreen
...artist
}; };
} }
); );

@ -1,18 +1,18 @@
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { createSelector } from 'reselect'; import { createSelector } from 'reselect';
import createClientSideCollectionSelector from 'Store/Selectors/createClientSideCollectionSelector';
import { setArtistSort } from 'Store/Actions/artistIndexActions'; import { setArtistSort } from 'Store/Actions/artistIndexActions';
import ArtistIndexTable from './ArtistIndexTable'; import ArtistIndexTable from './ArtistIndexTable';
function createMapStateToProps() { function createMapStateToProps() {
return createSelector( return createSelector(
(state) => state.app.dimensions, (state) => state.app.dimensions,
createClientSideCollectionSelector('artist', 'artistIndex'), (state) => state.artistIndex.tableOptions,
(dimensions, artist) => { (state) => state.artistIndex.columns,
(dimensions, tableOptions, columns) => {
return { return {
isSmallScreen: dimensions.isSmallScreen, isSmallScreen: dimensions.isSmallScreen,
...artist, showBanners: tableOptions.showBanners,
showBanners: artist.tableOptions.showBanners columns
}; };
} }
); );

Loading…
Cancel
Save