2018-11-23 07:04:42 +00:00
|
|
|
import { connect } from 'react-redux';
|
|
|
|
import { createSelector } from 'reselect';
|
|
|
|
import createDimensionsSelector from 'Store/Selectors/createDimensionsSelector';
|
2020-07-28 18:47:25 +00:00
|
|
|
import createExclusionMovieSelector from 'Store/Selectors/createExclusionMovieSelector';
|
|
|
|
import createExistingMovieSelector from 'Store/Selectors/createExistingMovieSelector';
|
2018-11-23 07:04:42 +00:00
|
|
|
import AddNewMovieSearchResult from './AddNewMovieSearchResult';
|
|
|
|
|
|
|
|
function createMapStateToProps() {
|
|
|
|
return createSelector(
|
|
|
|
createExistingMovieSelector(),
|
2019-07-06 02:26:16 +00:00
|
|
|
createExclusionMovieSelector(),
|
2018-11-23 07:04:42 +00:00
|
|
|
createDimensionsSelector(),
|
2023-12-12 19:55:41 +00:00
|
|
|
(state) => state.queue.details.items,
|
2024-01-14 01:36:02 +00:00
|
|
|
(state) => state.movieFiles.items,
|
2021-02-03 02:57:27 +00:00
|
|
|
(state, { internalId }) => internalId,
|
2023-11-09 16:20:45 +00:00
|
|
|
(state) => state.settings.ui.item.movieRuntimeFormat,
|
2024-01-14 01:36:02 +00:00
|
|
|
(isExistingMovie, isExclusionMovie, dimensions, queueItems, movieFiles, internalId, movieRuntimeFormat) => {
|
2023-12-12 19:55:41 +00:00
|
|
|
const queueItem = queueItems.find((item) => internalId > 0 && item.movieId === internalId);
|
2024-01-14 01:36:02 +00:00
|
|
|
const movieFile = movieFiles.find((item) => internalId > 0 && item.movieId === internalId);
|
2023-12-12 19:55:41 +00:00
|
|
|
|
2018-11-23 07:04:42 +00:00
|
|
|
return {
|
2023-11-09 16:20:45 +00:00
|
|
|
existingMovieId: internalId,
|
2018-11-23 07:04:42 +00:00
|
|
|
isExistingMovie,
|
2019-07-06 02:26:16 +00:00
|
|
|
isExclusionMovie,
|
2020-10-05 18:50:03 +00:00
|
|
|
isSmallScreen: dimensions.isSmallScreen,
|
2023-12-12 19:55:41 +00:00
|
|
|
queueItem,
|
2024-01-14 01:36:02 +00:00
|
|
|
movieFile,
|
|
|
|
hasFile: !!movieFile,
|
2023-11-09 16:20:45 +00:00
|
|
|
movieRuntimeFormat
|
2018-11-23 07:04:42 +00:00
|
|
|
};
|
|
|
|
}
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
export default connect(createMapStateToProps)(AddNewMovieSearchResult);
|