feat(plex): actor filter AND/OR toggle (default OR) (S2)
Multiple selected actors now combine as OR (any) by default — click several cast and see films featuring ANY of them — instead of the old hardcoded AND that emptied the grid. An AND (all) toggle in the ACTIVE filter section (shown for 2+ actors, mirroring the genre match toggle) narrows to films with ALL of them. Backend actor_mode param mirrors genre_mode. Verified: OR John Goodman|Douglas M. Griffin = 11 films; AND = 1 (10 Cloverfield Lane). (Plex cast-explore S2)
This commit is contained in:
@@ -211,6 +211,23 @@ export default function PlexSidebar({
|
||||
onRemove={() => patch({ directors: filters.directors.filter((x) => x !== d) })}
|
||||
/>
|
||||
))}
|
||||
{filters.actors.length > 1 && (
|
||||
<div className="w-full inline-flex overflow-hidden rounded-lg border border-border text-[11px]">
|
||||
{(["any", "all"] as const).map((m) => (
|
||||
<button
|
||||
key={m}
|
||||
onClick={() => patch({ actorMode: m })}
|
||||
className={`px-2 py-0.5 transition ${
|
||||
(filters.actorMode ?? "any") === m
|
||||
? "bg-accent text-accent-fg"
|
||||
: "text-muted hover:bg-surface"
|
||||
}`}
|
||||
>
|
||||
{t(`plex.filter.match.${m}`)}
|
||||
</button>
|
||||
))}
|
||||
</div>
|
||||
)}
|
||||
{filters.actors.map((a) => (
|
||||
<RemovableChip
|
||||
key={`a:${a}`}
|
||||
|
||||
Reference in New Issue
Block a user