From d094bae7def359a411152424f1426b01ae9288cc Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Thu, 12 May 2022 07:48:12 +0200 Subject: [PATCH] Bugfix/fix issue in activities filter component with typing (#910) * Handle filter (selecting) or search term (typing) * Update changelog --- CHANGELOG.md | 6 ++++++ .../activities-filter/activities-filter.component.ts | 12 +++++++++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 722269aad..d511e59f0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## Unreleased + +### Fixed + +- Fixed an issue in the activities filter component (typing a search term) + ## 1.147.0 - 10.05.2022 ### Changed diff --git a/libs/ui/src/lib/activities-filter/activities-filter.component.ts b/libs/ui/src/lib/activities-filter/activities-filter.component.ts index bf8c5878b..f466999bb 100644 --- a/libs/ui/src/lib/activities-filter/activities-filter.component.ts +++ b/libs/ui/src/lib/activities-filter/activities-filter.component.ts @@ -48,8 +48,8 @@ export class ActivitiesFilterComponent implements OnChanges, OnDestroy { public constructor() { this.searchControl.valueChanges .pipe(takeUntil(this.unsubscribeSubject)) - .subscribe((currentFilter: Filter) => { - if (currentFilter) { + .subscribe((filterOrSearchTerm: Filter | string) => { + if (filterOrSearchTerm) { this.filters$.next( this.allFilters .filter((filter) => { @@ -59,9 +59,15 @@ export class ActivitiesFilterComponent implements OnChanges, OnDestroy { }); }) .filter((filter) => { + if (typeof filterOrSearchTerm === 'string') { + return filter.label + .toLowerCase() + .startsWith(filterOrSearchTerm.toLowerCase()); + } + return filter.label .toLowerCase() - .startsWith(currentFilter.label.toLowerCase()); + .startsWith(filterOrSearchTerm?.label?.toLowerCase()); }) .sort((a, b) => a.label.localeCompare(b.label)) );