You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Prowlarr/frontend/src/Calendar/Events/CalendarEventGroupConnector.js

38 lines
1.1 KiB

import { connect } from 'react-redux';
import { createSelector } from 'reselect';
import createMovieSelector from 'Store/Selectors/createMovieSelector';
import createUISettingsSelector from 'Store/Selectors/createUISettingsSelector';
import CalendarEventGroup from './CalendarEventGroup';
function createIsDownloadingSelector() {
return createSelector(
(state, { movieIds }) => movieIds,
(state) => state.queue.details,
(movieIds, details) => {
return details.items.some((item) => {
return item.movie && movieIds.includes(item.movie.id);
});
}
);
}
function createMapStateToProps() {
return createSelector(
(state) => state.calendar.options,
createMovieSelector(),
createIsDownloadingSelector(),
createUISettingsSelector(),
(calendarOptions, movie, isDownloading, uiSettings) => {
return {
movie,
isDownloading,
...calendarOptions,
timeFormat: uiSettings.timeFormat,
colorImpairedMode: uiSettings.enableColorImpairedMode
};
}
);
}
export default connect(createMapStateToProps)(CalendarEventGroup);