1
0
mirror of https://github.com/Sonarr/Sonarr.git synced 2026-04-27 23:06:29 -04:00

Series type filter/sort

New: Filter/sort by series type
Fixed: Filtering excluding multiple values (is not x or y)
This commit is contained in:
Mark McDowall
2019-01-09 19:33:33 -08:00
parent 3b565d8bb1
commit ba5e2cfc45
6 changed files with 48 additions and 2 deletions
@@ -66,6 +66,12 @@ export const defaultState = {
isVisible: true,
isModifiable: false
},
{
name: 'seriesType',
label: 'Type',
isSortable: true,
isVisible: false
},
{
name: 'network',
label: 'Network',
@@ -255,6 +261,12 @@ export const defaultState = {
type: filterBuilderTypes.EXACT,
valueType: filterBuilderValueTypes.SERIES_STATUS
},
{
name: 'seriesType',
label: 'Type',
type: filterBuilderTypes.EXACT,
valueType: filterBuilderValueTypes.SERIES_TYPES
},
{
name: 'network',
label: 'Network',
@@ -52,7 +52,14 @@ function filter(items, state) {
const predicate = filterTypePredicates[type];
if (Array.isArray(value)) {
accepted = value.some((v) => predicate(item[key], v));
if (
type === filterTypes.NOT_CONTAINS ||
type === filterTypes.NOT_EQUAL
) {
accepted = value.every((v) => predicate(item[key], v));
} else {
accepted = value.some((v) => predicate(item[key], v));
}
} else {
accepted = predicate(item[key], value);
}