Add tags to studios (#4858)

* Fix makeTagFilter mode

* Remove studio_tags filter criterion

This is handled by studios_filter. The support for this still needs to be added in the UI, so I have removed the criterion options in the short-term.
---------
Co-authored-by: WithoutPants <53250216+WithoutPants@users.noreply.github.com>
This commit is contained in:
bob123491234
2024-06-18 00:55:20 -05:00
committed by GitHub
parent f26766033e
commit b3d35dfae4
51 changed files with 844 additions and 13 deletions

View File

@@ -55,6 +55,13 @@ export const PerformerTagsCriterionOption = new BaseTagsCriterionOption(
withoutEqualsModifierOptions
);
// TODO - this requires using a nested studios_filter which needs to be added separately
// export const StudioTagsCriterionOption = new BaseTagsCriterionOption(
// "studio_tags",
// "studio_tags",
// withoutEqualsModifierOptions
// );
export const ParentTagsCriterionOption = new BaseTagsCriterionOption(
"parent_tags",
"parents",

View File

@@ -14,6 +14,7 @@ import { ScenesCriterionOption } from "./criteria/scenes";
import { StudiosCriterionOption } from "./criteria/studios";
import {
PerformerTagsCriterionOption,
// StudioTagsCriterionOption,
TagsCriterionOption,
} from "./criteria/tags";
import { ListFilterOptions, MediaSortByOptions } from "./filter-options";
@@ -62,6 +63,7 @@ const criterionOptions = [
createMandatoryNumberCriterionOption("performer_age"),
PerformerFavoriteCriterionOption,
createMandatoryNumberCriterionOption("image_count"),
// StudioTagsCriterionOption,
ScenesCriterionOption,
StudiosCriterionOption,
createStringCriterionOption("url"),

View File

@@ -16,6 +16,7 @@ import { OrientationCriterionOption } from "./criteria/orientation";
import { StudiosCriterionOption } from "./criteria/studios";
import {
PerformerTagsCriterionOption,
// StudioTagsCriterionOption,
TagsCriterionOption,
} from "./criteria/tags";
import { ListFilterOptions, MediaSortByOptions } from "./filter-options";
@@ -54,6 +55,7 @@ const criterionOptions = [
createMandatoryNumberCriterionOption("performer_count"),
createMandatoryNumberCriterionOption("performer_age"),
PerformerFavoriteCriterionOption,
// StudioTagsCriterionOption,
StudiosCriterionOption,
createStringCriterionOption("url"),
createDateCriterionOption("date"),

View File

@@ -11,6 +11,7 @@ import { PerformersCriterionOption } from "./criteria/performers";
import { ListFilterOptions } from "./filter-options";
import { DisplayMode } from "./types";
import { RatingCriterionOption } from "./criteria/rating";
// import { StudioTagsCriterionOption } from "./criteria/tags";
import { TagsCriterionOption } from "./criteria/tags";
const defaultSortBy = "name";
@@ -32,6 +33,7 @@ const sortByOptions = [
]);
const displayModeOptions = [DisplayMode.Grid];
const criterionOptions = [
// StudioTagsCriterionOption,
StudiosCriterionOption,
MovieIsMissingCriterionOption,
createStringCriterionOption("url"),

View File

@@ -17,6 +17,7 @@ import { StudiosCriterionOption } from "./criteria/studios";
import { InteractiveCriterionOption } from "./criteria/interactive";
import {
PerformerTagsCriterionOption,
// StudioTagsCriterionOption,
TagsCriterionOption,
} from "./criteria/tags";
import { ListFilterOptions, MediaSortByOptions } from "./filter-options";
@@ -99,6 +100,7 @@ const criterionOptions = [
createMandatoryNumberCriterionOption("performer_count"),
createMandatoryNumberCriterionOption("performer_age"),
PerformerFavoriteCriterionOption,
// StudioTagsCriterionOption,
StudiosCriterionOption,
MoviesCriterionOption,
GalleriesCriterionOption,

View File

@@ -10,11 +10,12 @@ import { StudioIsMissingCriterionOption } from "./criteria/is-missing";
import { RatingCriterionOption } from "./criteria/rating";
import { StashIDCriterionOption } from "./criteria/stash-ids";
import { ParentStudiosCriterionOption } from "./criteria/studios";
import { TagsCriterionOption } from "./criteria/tags";
import { ListFilterOptions } from "./filter-options";
import { DisplayMode } from "./types";
const defaultSortBy = "name";
const sortByOptions = ["name", "random", "rating"]
const sortByOptions = ["name", "tag_count", "random", "rating"]
.map(ListFilterOptions.createSortBy)
.concat([
{
@@ -42,8 +43,10 @@ const criterionOptions = [
createStringCriterionOption("details"),
ParentStudiosCriterionOption,
StudioIsMissingCriterionOption,
TagsCriterionOption,
RatingCriterionOption,
createBooleanCriterionOption("ignore_auto_tag"),
createMandatoryNumberCriterionOption("tag_count"),
createMandatoryNumberCriterionOption("scene_count"),
createMandatoryNumberCriterionOption("image_count"),
createMandatoryNumberCriterionOption("gallery_count"),

View File

@@ -43,6 +43,10 @@ const sortByOptions = ["name", "random"]
messageID: "marker_count",
value: "scene_markers_count",
},
{
messageID: "studio_count",
value: "studios_count",
},
]);
const displayModeOptions = [DisplayMode.Grid, DisplayMode.List];
@@ -57,6 +61,7 @@ const criterionOptions = [
createMandatoryNumberCriterionOption("image_count"),
createMandatoryNumberCriterionOption("gallery_count"),
createMandatoryNumberCriterionOption("performer_count"),
createMandatoryNumberCriterionOption("studio_count"),
createMandatoryNumberCriterionOption("movie_count"),
createMandatoryNumberCriterionOption("marker_count"),
ParentTagsCriterionOption,

View File

@@ -142,6 +142,7 @@ export type CriterionType =
| "tags"
| "scene_tags"
| "performer_tags"
| "studio_tags"
| "tag_count"
| "performers"
| "studios"
@@ -172,6 +173,7 @@ export type CriterionType =
| "image_count"
| "gallery_count"
| "performer_count"
| "studio_count"
| "movie_count"
| "death_year"
| "url"