mirror of
https://github.com/Sonarr/Sonarr.git
synced 2026-04-27 23:06:29 -04:00
36 lines
1.0 KiB
TypeScript
36 lines
1.0 KiB
TypeScript
import { createSelector } from 'reselect';
|
|
import AppState from 'App/State/AppState';
|
|
import { ImportSeries } from 'App/State/ImportSeriesAppState';
|
|
import createAllSeriesSelector from './createAllSeriesSelector';
|
|
|
|
function createImportSeriesItemSelector(id: string) {
|
|
return createSelector(
|
|
(_state: AppState, connectorInput: { id: string }) =>
|
|
connectorInput ? connectorInput.id : id,
|
|
(state: AppState) => state.importSeries,
|
|
createAllSeriesSelector(),
|
|
(connectorId, importSeries, series) => {
|
|
const finalId = id || connectorId;
|
|
|
|
const item =
|
|
importSeries.items.find((item) => {
|
|
return item.id === finalId;
|
|
}) ?? ({} as ImportSeries);
|
|
|
|
const selectedSeries = item && item.selectedSeries;
|
|
const isExistingSeries =
|
|
!!selectedSeries &&
|
|
series.some((s) => {
|
|
return s.tvdbId === selectedSeries.tvdbId;
|
|
});
|
|
|
|
return {
|
|
...item,
|
|
isExistingSeries,
|
|
};
|
|
}
|
|
);
|
|
}
|
|
|
|
export default createImportSeriesItemSelector;
|