Matteo Scandolo | 44b7d6b | 2016-12-08 13:48:01 -0800 | [diff] [blame^] | 1 | import { Observable } from 'rxjs/Rx'; |
| 2 | import { IXosTableConfig } from './interfaces/xos-components/table.interface'; |
Matteo Scandolo | 43ffb67 | 2016-12-02 14:49:58 -0800 | [diff] [blame] | 3 | /// <reference path="../../typings/index.d.ts"/> |
| 4 | import {Component, OnInit} from '@angular/core'; |
Matteo Scandolo | 43ffb67 | 2016-12-02 14:49:58 -0800 | [diff] [blame] | 5 | import {StyleConfig} from './config/style.config'; |
Matteo Scandolo | 40f8fa9 | 2016-12-07 09:21:35 -0800 | [diff] [blame] | 6 | import {ISlice} from './interfaces/models.interface'; |
| 7 | import {SliceStore} from './services/stores/slice.store'; |
Matteo Scandolo | d819c92 | 2016-12-02 14:06:14 -0800 | [diff] [blame] | 8 | |
| 9 | @Component({ |
Matteo Scandolo | 43ffb67 | 2016-12-02 14:49:58 -0800 | [diff] [blame] | 10 | selector: 'xos-app', |
| 11 | template: require('./hello.html'), |
Matteo Scandolo | 40f8fa9 | 2016-12-07 09:21:35 -0800 | [diff] [blame] | 12 | providers: [SliceStore], |
Matteo Scandolo | d819c92 | 2016-12-02 14:06:14 -0800 | [diff] [blame] | 13 | }) |
Matteo Scandolo | 5e5c12b | 2016-12-05 16:17:52 -0800 | [diff] [blame] | 14 | export class HelloComponent implements OnInit { |
Matteo Scandolo | d819c92 | 2016-12-02 14:06:14 -0800 | [diff] [blame] | 15 | |
Matteo Scandolo | 43ffb67 | 2016-12-02 14:49:58 -0800 | [diff] [blame] | 16 | // declare class properties |
| 17 | public hello: string; |
Matteo Scandolo | 40f8fa9 | 2016-12-07 09:21:35 -0800 | [diff] [blame] | 18 | public slices: ISlice[]; |
Matteo Scandolo | 44b7d6b | 2016-12-08 13:48:01 -0800 | [diff] [blame^] | 19 | public data: Observable<any>; |
| 20 | |
| 21 | public cfg: IXosTableConfig = { |
| 22 | columns: [ |
| 23 | { |
| 24 | label: 'Name', |
| 25 | prop: 'name' |
| 26 | }, |
| 27 | { |
| 28 | label: 'Default Isolation', |
| 29 | prop: 'default_isolation' |
| 30 | } |
| 31 | ] |
| 32 | }; |
Matteo Scandolo | 43ffb67 | 2016-12-02 14:49:58 -0800 | [diff] [blame] | 33 | |
Matteo Scandolo | 0f77c50 | 2016-12-06 16:46:00 -0800 | [diff] [blame] | 34 | constructor( |
Matteo Scandolo | 40f8fa9 | 2016-12-07 09:21:35 -0800 | [diff] [blame] | 35 | private sliceStore: SliceStore |
Matteo Scandolo | 0f77c50 | 2016-12-06 16:46:00 -0800 | [diff] [blame] | 36 | ) { |
Matteo Scandolo | 43ffb67 | 2016-12-02 14:49:58 -0800 | [diff] [blame] | 37 | this.hello = `Hello ${StyleConfig.projectName}!`; |
Matteo Scandolo | 40f8fa9 | 2016-12-07 09:21:35 -0800 | [diff] [blame] | 38 | this.slices = []; |
Matteo Scandolo | 43ffb67 | 2016-12-02 14:49:58 -0800 | [diff] [blame] | 39 | } |
| 40 | |
| 41 | ngOnInit() { |
| 42 | console.log('on init'); |
Matteo Scandolo | 44b7d6b | 2016-12-08 13:48:01 -0800 | [diff] [blame^] | 43 | this.data = this.sliceStore.query(); |
Matteo Scandolo | d819c92 | 2016-12-02 14:06:14 -0800 | [diff] [blame] | 44 | } |
| 45 | } |