Mercurial > hg > ng2-query-ismi
annotate app/query-app.component.ts @ 46:1f3fed01aef6 ng2-final
Starting 'ng2-final' branch
author | casties |
---|---|
date | Fri, 17 Mar 2017 18:11:30 +0100 |
parents | dc4f0541f04d |
children |
rev | line source |
---|---|
45 | 1 import {Component} from '@angular/core'; |
2 import {HTTP_PROVIDERS} from '@angular/http'; | |
0 | 3 |
7
6cd6c09032aa
object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents:
6
diff
changeset
|
4 import {QueryState} from './query-state'; |
8 | 5 import {QueryStep} from './query-step'; |
6 | |
20
34cd764e234b
make interfaces into classes. factor out NormalizationService.
casties
parents:
13
diff
changeset
|
7 import {QueryService} from './query.service'; |
34cd764e234b
make interfaces into classes. factor out NormalizationService.
casties
parents:
13
diff
changeset
|
8 import {NormalizationService} from './normalization.service'; |
34cd764e234b
make interfaces into classes. factor out NormalizationService.
casties
parents:
13
diff
changeset
|
9 |
0 | 10 import {QuerySelectComponent} from './query-select.component'; |
24 | 11 //import {QueryResultComponent} from './query-result.component'; |
12 import {QueryResultTableComponent} from './query-result-table.component'; | |
0 | 13 |
14 @Component({ | |
7
6cd6c09032aa
object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents:
6
diff
changeset
|
15 selector: 'query-app', |
0 | 16 template: ` |
25 | 17 <div class="container"> |
13
98b435bb6c0c
more query work.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents:
10
diff
changeset
|
18 <h1>ISMI-Lab Query Builder</h1> |
26 | 19 </div> |
20 <div class="container"> | |
8 | 21 <div>Select a query step:</div> |
45 | 22 <query-select *ngFor="let step of queryStepList; let i=index;" |
8 | 23 [queryStep]="step" [index]="i" |
24 (queryChanged)="onQueryChanged($event)"></query-select> | |
25 <div> | |
26 <button (click)="addQueryStep()">add step</button> | |
27 <button (click)="removeQueryStep()">remove step</button> | |
28 </div> | |
26 | 29 </div> |
27 | 30 <div class="container"> |
33 | 31 <query-result *ngIf="queryState?.results" |
27 | 32 [resultInfo]="queryState.resultInfo" |
33 [queryState]="queryState"> | |
34 </query-result> | |
25 | 35 </div> |
0 | 36 `, |
24 | 37 directives: [QuerySelectComponent, QueryResultTableComponent], |
20
34cd764e234b
make interfaces into classes. factor out NormalizationService.
casties
parents:
13
diff
changeset
|
38 providers: [QueryService, NormalizationService, HTTP_PROVIDERS] |
0 | 39 }) |
1
59b7c3afcc6b
first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents:
0
diff
changeset
|
40 |
7
6cd6c09032aa
object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents:
6
diff
changeset
|
41 export class QueryAppComponent { |
6cd6c09032aa
object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents:
6
diff
changeset
|
42 public queryState: QueryState; |
20
34cd764e234b
make interfaces into classes. factor out NormalizationService.
casties
parents:
13
diff
changeset
|
43 public queryStepList: string[]; |
5
b06a5d61afed
new query state stuff.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents:
4
diff
changeset
|
44 |
7
6cd6c09032aa
object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents:
6
diff
changeset
|
45 constructor(private _queryService: QueryService) { |
8 | 46 this._queryService.setup(); |
20
34cd764e234b
make interfaces into classes. factor out NormalizationService.
casties
parents:
13
diff
changeset
|
47 this.queryStepList = []; |
8 | 48 this.addQueryStep(); |
49 } | |
50 | |
51 addQueryStep() { | |
20
34cd764e234b
make interfaces into classes. factor out NormalizationService.
casties
parents:
13
diff
changeset
|
52 this.queryStepList.push('step'); |
8 | 53 } |
54 | |
55 removeQueryStep() { | |
20
34cd764e234b
make interfaces into classes. factor out NormalizationService.
casties
parents:
13
diff
changeset
|
56 this.queryStepList.pop(); |
8 | 57 this._queryService.state.steps.pop(); |
5
b06a5d61afed
new query state stuff.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents:
4
diff
changeset
|
58 } |
4 | 59 |
7
6cd6c09032aa
object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents:
6
diff
changeset
|
60 onQueryChanged(event: any) { |
6cd6c09032aa
object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents:
6
diff
changeset
|
61 console.debug("app.onquerychanged! event=", event); |
40 | 62 this._queryService.runQuery(); |
7
6cd6c09032aa
object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents:
6
diff
changeset
|
63 this.queryState = this._queryService.getState(); |
6cd6c09032aa
object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents:
6
diff
changeset
|
64 } |
0 | 65 } |