summaryrefslogtreecommitdiffstats
path: root/vid-webpack-master/src/app/shared/pipes
diff options
context:
space:
mode:
authorEylon Malin <eylon.malin@intl.att.com>2019-12-03 12:12:38 +0200
committerEylon Malin <eylon.malin@intl.att.com>2019-12-03 14:38:23 +0200
commitd00cf8079f6ec7d791aa92d9991d95ea0bb4a0e6 (patch)
treea4e3aa972af54847a396e23881c70718f5e4c0d3 /vid-webpack-master/src/app/shared/pipes
parent3250d40c952004bb08a1f54dcc7f816a9de09e1f (diff)
free text filter in instantiationStatus Page
Issue-ID: VID-724 Change-Id: I5f363ecc66ff1f1fef9c9d75a12a9c43403aa905 Signed-off-by: Eylon Malin <eylon.malin@intl.att.com>
Diffstat (limited to 'vid-webpack-master/src/app/shared/pipes')
-rw-r--r--vid-webpack-master/src/app/shared/pipes/searchFilter/search-filter.pipe.spec.ts17
-rw-r--r--vid-webpack-master/src/app/shared/pipes/searchFilter/search-filter.pipe.ts14
2 files changed, 31 insertions, 0 deletions
diff --git a/vid-webpack-master/src/app/shared/pipes/searchFilter/search-filter.pipe.spec.ts b/vid-webpack-master/src/app/shared/pipes/searchFilter/search-filter.pipe.spec.ts
new file mode 100644
index 000000000..cbf7324ac
--- /dev/null
+++ b/vid-webpack-master/src/app/shared/pipes/searchFilter/search-filter.pipe.spec.ts
@@ -0,0 +1,17 @@
+import {SearchFilterPipe} from "./search-filter.pipe";
+import * as _ from 'lodash';
+
+describe('Search filter pipe', () => {
+
+ const items= [{'id':1, 'name': 'aaa'},
+ {'id':12, 'name': 'bbb', 'children':{'first': 155, 'second': 2, 'third': 3}},
+ {'id':3, 'name': 'ccc', 'children':{'first': 1, 'BbB': '3', 'third': 3}},
+ {'id':4, 'name': 'aad', 'children':{'first': 1, 'second': 2, 'third': 3}}];
+
+ test('should return items contains substring bb', () => {
+ let filter = new SearchFilterPipe();
+ let res:any[] = filter.transform(items,'bb');
+ expect(_.map(res, 'name' )).toEqual(['bbb','ccc']);
+ });
+
+});
diff --git a/vid-webpack-master/src/app/shared/pipes/searchFilter/search-filter.pipe.ts b/vid-webpack-master/src/app/shared/pipes/searchFilter/search-filter.pipe.ts
new file mode 100644
index 000000000..725eacb53
--- /dev/null
+++ b/vid-webpack-master/src/app/shared/pipes/searchFilter/search-filter.pipe.ts
@@ -0,0 +1,14 @@
+import {Pipe, PipeTransform} from '@angular/core';
+
+@Pipe({
+ name: 'searchFilter'
+})
+export class SearchFilterPipe implements PipeTransform {
+ transform(items: Object[], searchText: string): any[] {
+ if(!items) return [];
+ if(!searchText) return items;
+ return items.filter( item => {
+ return JSON.stringify(item).toLowerCase().includes(searchText.toLowerCase());
+ });
+ }
+}