From 9b02bf794a8d7ae7c2bd56220be8e3ee0b4b398e Mon Sep 17 00:00:00 2001 From: Pas <74743263+Pasithea0@users.noreply.github.com> Date: Fri, 20 Feb 2026 19:20:42 -0700 Subject: [PATCH] append collection bookmarks so they arent removed from other groups --- .../components/overlays/CollectionOverlay.tsx | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/components/overlays/detailsModal/components/overlays/CollectionOverlay.tsx b/src/components/overlays/detailsModal/components/overlays/CollectionOverlay.tsx index 58e14edc..4c1d7079 100644 --- a/src/components/overlays/detailsModal/components/overlays/CollectionOverlay.tsx +++ b/src/components/overlays/detailsModal/components/overlays/CollectionOverlay.tsx @@ -111,6 +111,8 @@ export function CollectionOverlay({ }: CollectionOverlayProps) { const { t } = useTranslation(); const { showModal } = useOverlayStack(); + const bookmarks = useBookmarkStore((s) => s.bookmarks); + const modifyBookmarks = useBookmarkStore((s) => s.modifyBookmarks); const addBookmarkWithGroups = useBookmarkStore( (s) => s.addBookmarkWithGroups, ); @@ -177,6 +179,8 @@ export function CollectionOverlay({ // Format the group name with the random icon const groupName = `[${randomIcon}]${collectionName}`; + const existingIds: string[] = []; + collection.parts.forEach((movie) => { const year = movie.release_date ? new Date(movie.release_date).getFullYear() @@ -185,8 +189,15 @@ export function CollectionOverlay({ // Skip movies without a release year if (year === undefined) return; + const movieId = movie.id.toString(); + + if (bookmarks[movieId]) { + existingIds.push(movieId); + return; + } + const meta = { - tmdbId: movie.id.toString(), + tmdbId: movieId, type: "movie" as const, title: movie.title, releaseYear: year, @@ -195,6 +206,12 @@ export function CollectionOverlay({ addBookmarkWithGroups(meta, [groupName]); }); + + if (existingIds.length > 0) { + modifyBookmarks(existingIds, { + addGroups: [groupName], + }); + } }; const handleShowDetails = (media: MediaItem) => {