Commit 97a5eb32 authored by James Long's avatar James Long Committed by Commit Bot

[Lorenz] Prevent filtered items from appearing in filter input

Previously, items in the filter list would continue to show up as
options for the filter input. This change prevents them from showing up.

Bug: 1102546
Change-Id: I259cbb9c78033991f5bb60c93f212062f6bcdb10
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2340362
Commit-Queue: James Long <yjlong@google.com>
Reviewed-by: default avatarMohamed Heikal <mheikal@chromium.org>
Reviewed-by: default avatarSamuel Huang <huangs@chromium.org>
Cr-Commit-Position: refs/heads/master@{#795645}
parent 28ebadce
......@@ -7,6 +7,8 @@
<div id="page-controls">
<GraphFilterInput
:node-ids="pageModel.getNodeIds()"
:nodes-already-in-filter="
displaySettingsData.nodeFilterData.filterList"
:shorten-name="filterShortenName"
@[CUSTOM_EVENTS.FILTER_SUBMITTED]="filterAddOrCheckNode"/>
<GraphFilterItems
......
......@@ -26,6 +26,7 @@ const GraphFilterInput = {
},
props: {
nodeIds: Array,
nodesAlreadyInFilter: Array,
shortenName: Function,
},
data: function() {
......@@ -41,14 +42,22 @@ const GraphFilterInput = {
.map(nameObj => nameObj.realName),
};
},
computed: {
nodesAlreadyInFilterSet: function() {
return new Set(this.nodesAlreadyInFilter.map(
filterEntry => filterEntry.name));
},
},
methods: {
getResultValue: function(result) {
return this.shortenName(result);
},
search: function(searchTerm) {
const searchTermLower = searchTerm.toLowerCase();
return this.nodeIdsSortedByShortNames.filter(name => {
return name.toLowerCase().includes(searchTerm.toLowerCase());
return !this.nodesAlreadyInFilterSet.has(name) &&
name.toLowerCase().includes(searchTermLower);
});
},
......
......@@ -7,6 +7,8 @@
<div id="page-controls">
<GraphFilterInput
:node-ids="pageModel.getNodeIds()"
:nodes-already-in-filter="
displaySettingsData.nodeFilterData.filterList"
:shorten-name="filterShortenName"
@[CUSTOM_EVENTS.FILTER_SUBMITTED]="filterAddOrCheckNode"/>
<GraphFilterItems
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment