diff options
author | Israel Lavi <il0695@att.com> | 2018-08-07 10:54:17 +0300 |
---|---|---|
committer | Israel Lavi <il0695@att.com> | 2018-08-07 11:06:44 +0300 |
commit | b2a3acea0d0f66028c9ce5fad02d4ecc64abf70c (patch) | |
tree | 8d70110f34cb845965c42a5915e950bca967d2c3 /src/angular/autocomplete | |
parent | 05b37297177e8a342668c15e5d6f738b51f7aedd (diff) |
Initial commit.
Adding files needed for Linux Foundation.
Change-Id: I9f2b4851a5ae01f83800c7f8bab8608a2221c730
Issue-ID: SDC-1608
Signed-off-by: Israel Lavi <il0695@att.com>
Diffstat (limited to 'src/angular/autocomplete')
-rw-r--r-- | src/angular/autocomplete/autocomplete.component.html.ts | 2 | ||||
-rw-r--r-- | src/angular/autocomplete/autocomplete.component.ts | 39 | ||||
-rw-r--r-- | src/angular/autocomplete/autocomplete.module.ts | 17 |
3 files changed, 30 insertions, 28 deletions
diff --git a/src/angular/autocomplete/autocomplete.component.html.ts b/src/angular/autocomplete/autocomplete.component.html.ts index 5df7352..8e57f9e 100644 --- a/src/angular/autocomplete/autocomplete.component.html.ts +++ b/src/angular/autocomplete/autocomplete.component.html.ts @@ -1,4 +1,4 @@ -export default ` +export const template = ` <div class="sdc-autocomplete-container" [ngClass]="{'results-shown': autoCompleteResults.length}"> <sdc-filter-bar [placeholder]="placeholder" diff --git a/src/angular/autocomplete/autocomplete.component.ts b/src/angular/autocomplete/autocomplete.component.ts index 5570eff..45718b2 100644 --- a/src/angular/autocomplete/autocomplete.component.ts +++ b/src/angular/autocomplete/autocomplete.component.ts @@ -1,15 +1,10 @@ -import { OnInit, animate, Component, EventEmitter, Input, Output, state, style, transition, trigger } from '@angular/core'; -import { FilterBarComponent } from "../filterbar/filter-bar.component"; -import { URLSearchParams, Http } from "@angular/http"; +import { OnInit, Component, EventEmitter, Input, Output } from '@angular/core'; +import { animate, state, style, transition, trigger } from '@angular/animations'; import { AutocompletePipe } from "./autocomplete.pipe"; -import template from "./autocomplete.component.html"; +import { template } from "./autocomplete.component.html"; +import { HttpClient, HttpParams } from '@angular/common/http'; import 'rxjs/add/operator/map'; -export interface IDataSchema { - key: string; - value: string; -} - @Component({ selector: 'sdc-autocomplete', template: template, @@ -25,10 +20,9 @@ export interface IDataSchema { })), transition('* => *', animate('200ms')) ]), - ], - providers: [AutocompletePipe] + ] }) -export class SearchWithAutoCompleteComponent implements OnInit { +export class AutoCompleteComponent implements OnInit { @Input() public data: any[] = []; @Input() public dataSchema: IDataSchema; @Input() public dataUrl: string; @@ -36,12 +30,12 @@ export class SearchWithAutoCompleteComponent implements OnInit { @Input() public placeholder: string; @Output() public itemSelected: EventEmitter<any> = new EventEmitter<any>(); - private searchQuery: string; + public searchQuery: string; private complexData: any[] = []; - private autoCompleteResults: any[] = []; + public autoCompleteResults: any[] = []; private isItemSelected: boolean = false; - public constructor(private http: Http, private autocompletePipe: AutocompletePipe) { + public constructor(private http: HttpClient, private autocompletePipe: AutocompletePipe) { } public ngOnInit(): void { @@ -82,18 +76,18 @@ export class SearchWithAutoCompleteComponent implements OnInit { this.itemSelected.emit(selectedItem.key); } - private onSearchQueryChanged = (searchText: string): void => { + public onSearchQueryChanged = (searchText: string): void => { if (searchText !== this.searchQuery) { this.searchQuery = searchText; if (!this.searchQuery) { this.onClearSearch(); } else { if (this.dataUrl) { - const params: URLSearchParams = new URLSearchParams(); - params.set('searchQuery', this.searchQuery); - this.http.get(this.dataUrl, {search: params}) + const params = new HttpParams(); + params.append('searchQuery', this.searchQuery); + this.http.get(this.dataUrl, {params}) .map((response) => { - this.data = response.json(); + this.data = JSON.parse(JSON.stringify(response)); this.handleLocalData(); this.autoCompleteResults = this.complexData; }).subscribe(); @@ -112,3 +106,8 @@ export class SearchWithAutoCompleteComponent implements OnInit { } } } + +export interface IDataSchema { + key: string; + value: string; +} diff --git a/src/angular/autocomplete/autocomplete.module.ts b/src/angular/autocomplete/autocomplete.module.ts index 1bead47..f105669 100644 --- a/src/angular/autocomplete/autocomplete.module.ts +++ b/src/angular/autocomplete/autocomplete.module.ts @@ -1,23 +1,26 @@ import { NgModule } from "@angular/core"; -import { SearchWithAutoCompleteComponent } from "./autocomplete.component"; +import { AutoCompleteComponent } from "./autocomplete.component"; import { CommonModule } from "@angular/common"; import { FilterBarModule } from "../filterbar/filter-bar.module"; import { AutocompletePipe } from "./autocomplete.pipe"; -import { HttpModule } from '@angular/http'; +import { BrowserModule } from '@angular/platform-browser'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; @NgModule({ declarations: [ - SearchWithAutoCompleteComponent, + AutoCompleteComponent, AutocompletePipe ], imports: [ + BrowserModule, + BrowserAnimationsModule, FilterBarModule, - CommonModule, - HttpModule + CommonModule ], exports: [ - SearchWithAutoCompleteComponent - ], + AutoCompleteComponent, + AutocompletePipe + ] }) export class AutoCompleteModule { } |