diff options
author | ys9693 <ys9693@att.com> | 2020-01-19 13:50:02 +0200 |
---|---|---|
committer | Ofir Sonsino <ofir.sonsino@intl.att.com> | 2020-01-22 12:33:31 +0000 |
commit | 16a9fce0e104a38371a9e5a567ec611ae3fc7f33 (patch) | |
tree | 03a2aff3060ddb5bc26a90115805a04becbaffc9 /catalog-ui/src/app/models/home-filter.ts | |
parent | aa83a2da4f911c3ac89318b8e9e8403b072942e1 (diff) |
Catalog alignment
Issue-ID: SDC-2724
Signed-off-by: ys9693 <ys9693@att.com>
Change-Id: I52b4aacb58cbd432ca0e1ff7ff1f7dd52099c6fe
Diffstat (limited to 'catalog-ui/src/app/models/home-filter.ts')
-rw-r--r-- | catalog-ui/src/app/models/home-filter.ts | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/catalog-ui/src/app/models/home-filter.ts b/catalog-ui/src/app/models/home-filter.ts new file mode 100644 index 0000000000..2aa509b3d8 --- /dev/null +++ b/catalog-ui/src/app/models/home-filter.ts @@ -0,0 +1,30 @@ +import { IEntityFilterObject, ISearchFilter } from "app/ng2/pipes/entity-filter.pipe"; + +export interface IHomeFilterParams { + 'filter.term': string; + 'filter.distributed': string; + 'filter.status': string +} + + +export class HomeFilter implements IEntityFilterObject{ + selectedStatuses: Array<string>; + distributed: Array<string>; + search: ISearchFilter; + + constructor(params = {}) { + this.search = { filterTerm : params['filter.term'] || "" }; + this.selectedStatuses = params['filter.status']? params['filter.status'].split(',') : []; + this.distributed = params['filter.distributed']? params['filter.distributed'].split(',') : [] + + } + + public toUrlParam = ():IHomeFilterParams => { + return { + 'filter.term': this.search.filterTerm, + 'filter.distributed': this.distributed && this.distributed.join(',') || null, + 'filter.status': this.selectedStatuses && this.selectedStatuses.join(',') || null + }; + } + +}
\ No newline at end of file |