diff --git a/ui/v2.5/src/components/Changelog/versions/v050.md b/ui/v2.5/src/components/Changelog/versions/v050.md index a1fb43ced..8e2e70076 100644 --- a/ui/v2.5/src/components/Changelog/versions/v050.md +++ b/ui/v2.5/src/components/Changelog/versions/v050.md @@ -21,6 +21,7 @@ * Support configurable number of threads for scanning and generation. ### 🐛 Bug fixes +* Prevent studio from being set as its own parent * Fixed performer scraper select overlapping search results * Fix tag/studio images not being changed after update. * Fixed resolution tags and querying for portrait videos and images. diff --git a/ui/v2.5/src/components/Shared/Select.tsx b/ui/v2.5/src/components/Shared/Select.tsx index a3afe491f..cc4b71f40 100644 --- a/ui/v2.5/src/components/Shared/Select.tsx +++ b/ui/v2.5/src/components/Shared/Select.tsx @@ -379,11 +379,16 @@ export const PerformerSelect: React.FC = (props) => { ); }; -export const StudioSelect: React.FC = (props) => { +export const StudioSelect: React.FC< + IFilterProps & { excludeIds?: string[] } +> = (props) => { const { data, loading } = useAllStudiosForFilter(); const [createStudio] = useStudioCreate({ name: "" }); - const studios = data?.allStudiosSlim ?? []; + const exclude = props.excludeIds ?? []; + const studios = (data?.allStudiosSlim ?? []).filter( + (studio) => !exclude.includes(studio.id) + ); const onCreate = async (name: string) => { const result = await createStudio({ variables: { name } }); diff --git a/ui/v2.5/src/components/Studios/StudioDetails/Studio.tsx b/ui/v2.5/src/components/Studios/StudioDetails/Studio.tsx index 79571f839..9a79551c5 100644 --- a/ui/v2.5/src/components/Studios/StudioDetails/Studio.tsx +++ b/ui/v2.5/src/components/Studios/StudioDetails/Studio.tsx @@ -259,6 +259,7 @@ export const Studio: React.FC = () => { } ids={parentStudioId ? [parentStudioId] : []} isDisabled={!isEditing} + excludeIds={studio.id ? [studio.id] : []} /> ); }