diff --git a/ui/src/app/common/interfaces/orb/filter-option.ts b/ui/src/app/common/interfaces/orb/filter-option.ts
index b63410ebb..61ee0fa14 100644
--- a/ui/src/app/common/interfaces/orb/filter-option.ts
+++ b/ui/src/app/common/interfaces/orb/filter-option.ts
@@ -5,6 +5,7 @@ export enum FilterTypes {
AutoComplete,
Select, // allows select one option
MultiSelect, // allows select multi options
+ MultiSelectAsync, // allows select multi options | async
Checkbox, // on|off option
Number, // number input
}
diff --git a/ui/src/app/pages/datasets/policies.agent/list/agent.policy.list.component.ts b/ui/src/app/pages/datasets/policies.agent/list/agent.policy.list.component.ts
index e89335145..b5900063d 100644
--- a/ui/src/app/pages/datasets/policies.agent/list/agent.policy.list.component.ts
+++ b/ui/src/app/pages/datasets/policies.agent/list/agent.policy.list.component.ts
@@ -156,6 +156,7 @@ export class AgentPolicyListComponent
filter: filterMultiSelect,
type: FilterTypes.MultiSelect,
options: Object.values(AgentPolicyUsage).map((value) => value as string),
+ exact: true,
},
];
diff --git a/ui/src/app/pages/fleet/agents/list/agent.list.component.ts b/ui/src/app/pages/fleet/agents/list/agent.list.component.ts
index 681f5768e..3b35a4699 100644
--- a/ui/src/app/pages/fleet/agents/list/agent.list.component.ts
+++ b/ui/src/app/pages/fleet/agents/list/agent.list.component.ts
@@ -159,6 +159,7 @@ export class AgentListComponent implements AfterViewInit, AfterViewChecked, OnDe
filter: filterMultiSelect,
type: FilterTypes.MultiSelect,
options: Object.values(AgentStates).map((value) => value as string),
+ exact: true,
},
{
name: 'Policies',
@@ -166,12 +167,13 @@ export class AgentListComponent implements AfterViewInit, AfterViewChecked, OnDe
filter: filterMultiSelect,
type: FilterTypes.MultiSelect,
options: Object.values(AgentPolicyAggStates).map((value) => value as string),
+ exact: true,
},
{
name: 'Version',
prop: 'version',
filter: filterMultiSelect,
- type: FilterTypes.MultiSelect,
+ type: FilterTypes.MultiSelectAsync,
autoSuggestion: orb.getAgentsVersions(),
exact: false,
},
diff --git a/ui/src/app/pages/fleet/groups/list/agent.group.list.component.ts b/ui/src/app/pages/fleet/groups/list/agent.group.list.component.ts
index 8aea4fcdf..136721c4c 100644
--- a/ui/src/app/pages/fleet/groups/list/agent.group.list.component.ts
+++ b/ui/src/app/pages/fleet/groups/list/agent.group.list.component.ts
@@ -139,13 +139,6 @@ export class AgentGroupListComponent
filter: filterString,
type: FilterTypes.Input,
},
- // {
- // name: 'Status',
- // prop: 'state',
- // filter: filterMultiSelect,
- // type: FilterTypes.MultiSelect,
- // options: Object.values(AgentStates).map((value) => value as string),
- // },
];
this.filteredGroups$ = this.filters.createFilteredList()(
diff --git a/ui/src/app/pages/sinks/list/sink.list.component.ts b/ui/src/app/pages/sinks/list/sink.list.component.ts
index 74b7edf44..389156948 100644
--- a/ui/src/app/pages/sinks/list/sink.list.component.ts
+++ b/ui/src/app/pages/sinks/list/sink.list.component.ts
@@ -131,6 +131,7 @@ export class SinkListComponent implements AfterViewInit, AfterViewChecked, OnDes
filter: filterMultiSelect,
type: FilterTypes.MultiSelect,
options: Object.values(SinkStates).map((value) => value as string),
+ exact: true,
},
{
name: 'Backend',
@@ -138,6 +139,7 @@ export class SinkListComponent implements AfterViewInit, AfterViewChecked, OnDes
filter: filterMultiSelect,
type: FilterTypes.MultiSelect,
options: Object.values(SinkBackends).map((value) => value as string),
+ exact: true,
},
{
name: 'Description',
diff --git a/ui/src/app/shared/components/filter/filter.component.html b/ui/src/app/shared/components/filter/filter.component.html
index 5689c977b..7092c8aed 100644
--- a/ui/src/app/shared/components/filter/filter.component.html
+++ b/ui/src/app/shared/components/filter/filter.component.html
@@ -40,7 +40,7 @@
>