cleanup criteria api request

This commit is contained in:
Gauthier Roebroeck 2026-03-25 14:38:42 +08:00
parent 243b72362c
commit d7b93d51f6
2 changed files with 7 additions and 1 deletions

View file

@ -13,6 +13,7 @@ import * as v from 'valibot'
export function schemaFilterSeriesStatusToConditions(
filter: InferOutput<typeof SchemaFilterSeriesStatus>,
) {
if (filter.v.length === 0) return null
const list = filter.v.map((it) => ({
seriesStatus: {
operator: 'is',
@ -29,6 +30,7 @@ export function schemaFilterAuthorsToConditions(
filter: InferOutput<typeof SchemaFilterAuthors>,
role?: string,
) {
if (filter.v.length === 0) return null
const list = filter.v.map((it) => {
if (v.is(SchemaAnyNone, it)) {
return {
@ -65,6 +67,7 @@ export function schemaFilterAuthorsToConditions(
export function schemaFilterReadStatusToConditions(
filter: InferOutput<typeof SchemaFilterReadStatus>,
) {
if (filter.v.length === 0) return null
const list = filter.v.map((it) => {
return {
readStatus: {
@ -83,6 +86,7 @@ export function schemaFilterStringToConditions(
key: string,
nullable: boolean,
) {
if (filter.v.length === 0) return null
const list = filter.v.map((it) => {
if (v.is(SchemaAnyNone, it)) {
if (nullable)
@ -154,6 +158,7 @@ export function schemaFilterReleaseYearToConditions(
})
}
}
if (conds.length === 0) return null
return {
allOf: conds,
}
@ -200,6 +205,7 @@ export function schemaFilterAgeRatingToConditions(
})
}
}
if (conds.length === 0) return null
return {
allOf: conds,
}

View file

@ -416,7 +416,7 @@ const conds = computed(() => ({
...Object.entries(filterAuthors).map(([, filter]) =>
schemaFilterAuthorsToConditions(toValue(filter.filter), toValue(filter.role)),
),
],
].filter(Boolean),
}))
// clear selection if filter or paging changes