diff --git a/components/alerts/alerts.vue b/components/alerts/alerts.vue index 9f72208..4c8a6fe 100644 --- a/components/alerts/alerts.vue +++ b/components/alerts/alerts.vue @@ -17,6 +17,7 @@ const filterActors = ref(false); const filterEntities = ref(false); const filterTags = ref(false); const filterExpressions = ref(false); +const filterScenes = ref(false); const filterCombined = ref(null); const filteredAlerts = computed(() => { @@ -39,11 +40,15 @@ const filteredAlerts = computed(() => { return false; } - if (filterCombined.value === false && [...alert.actors, ...alert.entities, ...alert.tags, ...alert.matches].length > 1) { + if (filterScenes.value && alert.scenes.length === 0) { return false; } - if (filterCombined.value === true && [...alert.actors, ...alert.entities, ...alert.tags, ...alert.matches].length === 1) { + if (filterCombined.value === false && [...alert.actors, ...alert.entities, ...alert.tags, ...alert.matches, ...alert.scenes].length > 1) { + return false; + } + + if (filterCombined.value === true && [...alert.actors, ...alert.entities, ...alert.tags, ...alert.matches, ...alert.scenes].length === 1) { return false; } @@ -67,6 +72,10 @@ const filteredAlerts = computed(() => { return true; } + if (alert.scenes.some((scene) => queryRegex.test(scene.title))) { + return true; + } + return false; }); }); @@ -140,37 +149,45 @@ function toggleFilterCombined() {