annotate app/query-app.component.ts @ 10:66dce99cef4e

attribute contains works now.
author Robert Casties <casties@mpiwg-berlin.mpg.de>
date Wed, 20 Jan 2016 17:02:00 +0100
parents fa646ee46c19
children 98b435bb6c0c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
1 import {Component} from 'angular2/core';
5
b06a5d61afed new query state stuff.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 4
diff changeset
2 import {HTTP_PROVIDERS} from 'angular2/http';
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
3
5
b06a5d61afed new query state stuff.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 4
diff changeset
4 import {QueryService} from './query.service';
7
6cd6c09032aa object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 6
diff changeset
5 import {QueryState} from './query-state';
8
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
6 import {QueryStep} from './query-step';
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
7
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
8 import {QuerySelectComponent} from './query-select.component';
4
351c3df28602 work on result component.
casties
parents: 1
diff changeset
9 import {QueryResultComponent} from './query-result.component';
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
10
39ec75917ef7 first checkin
casties
parents:
diff changeset
11 @Component({
7
6cd6c09032aa object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 6
diff changeset
12 selector: 'query-app',
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
13 template: `
8
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
14 <h1>Angular2 query builder</h1>
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
15 <div>Select a query step:</div>
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
16 <query-select *ngFor="#step of querySteps; #i=index;"
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
17 [queryStep]="step" [index]="i"
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
18 (queryChanged)="onQueryChanged($event)"></query-select>
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
19 <div>
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
20 <button (click)="addQueryStep()">add step</button>
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
21 <button (click)="removeQueryStep()">remove step</button>
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
22 </div>
7
6cd6c09032aa object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 6
diff changeset
23 <query-result [queryState]="queryState"></query-result>
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
24 `,
5
b06a5d61afed new query state stuff.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 4
diff changeset
25 directives: [QuerySelectComponent, QueryResultComponent],
b06a5d61afed new query state stuff.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 4
diff changeset
26 providers: [QueryService, HTTP_PROVIDERS]
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
27 })
1
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
28
7
6cd6c09032aa object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 6
diff changeset
29 export class QueryAppComponent {
6cd6c09032aa object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 6
diff changeset
30 public queryState: QueryState;
8
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
31 public querySteps: QueryStep[];
5
b06a5d61afed new query state stuff.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 4
diff changeset
32
7
6cd6c09032aa object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 6
diff changeset
33 constructor(private _queryService: QueryService) {
8
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
34 this._queryService.setup();
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
35 this.querySteps = [];
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
36 this.addQueryStep();
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
37 }
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
38
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
39 addQueryStep() {
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
40 this.querySteps.push({'mode': null});
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
41 }
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
42
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
43 removeQueryStep() {
10
66dce99cef4e attribute contains works now.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 8
diff changeset
44 this.querySteps.pop();
8
fa646ee46c19 more query generation.
casties
parents: 7
diff changeset
45 this._queryService.state.steps.pop();
5
b06a5d61afed new query state stuff.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 4
diff changeset
46 }
4
351c3df28602 work on result component.
casties
parents: 1
diff changeset
47
7
6cd6c09032aa object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 6
diff changeset
48 onQueryChanged(event: any) {
6cd6c09032aa object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 6
diff changeset
49 console.debug("app.onquerychanged! event=", event);
6cd6c09032aa object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 6
diff changeset
50 this._queryService.updateQuery();
6cd6c09032aa object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 6
diff changeset
51 this.queryState = this._queryService.getState();
6cd6c09032aa object type query with results!
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 6
diff changeset
52 }
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
53 }