All files / src/app/dashboard dashboard.component.ts

100% Statements 14/14
100% Branches 0/0
100% Functions 3/3
100% Lines 12/12
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 561x 1x 1x     1x 1x                                                                       1x   1x     4x     1x 3x 3x   1x  
import { Component, OnInit } from '@angular/core';
import { Observable } from 'rxjs/Observable';
import { select } from '@angular-redux/store';
 
import { IMeasure } from '../model/measure.model';
import { StyleWithLess } from '../common/mw.common.module';
import { MeasureService } from './measure.service';
 
@StyleWithLess({
    'mat-card': {
      marginTop: '1em',
      'div.dashboard': {
        paddingLeft: '.8em',
        'h1': {
          marginTop: '10px',
          fontSize: '2.5em'
        },
      },
    }
})
@Component({
  selector: 'mwb-dashboard',
  template: `
  <mat-card>
    <div class="dashboard container-fluid">
      <h1 class="page-title">Dashboard</h1>
      <span class="subtitle">Summary of errors, load failures, clinic matching, team tasks</span>
      <hr class="titles-rule"/>
      <div class="thumbnails row">
        <div *ngFor="let measure of measures$ | async" class="dashboard col-md-8 col-md-offset-2">
          <mwb-dashboard-thumbnail [measure]="measure"></mwb-dashboard-thumbnail>
        </div>
      </div>
    </div>
  </mat-card>
  `,
  // STANDARD ANGULAR STYLES DECLARATION - replaced by LESS format above
  // styles: [
  //   'div.dashboard { padding-left: .8em; }',
  //   'mat-card { margin-top: .8em; }'
  //   ]
})
export class DashboardComponent implements OnInit {
 
  @select('measures') measures$: Observable<IMeasure[]>;
 
  constructor(
    private measureService: MeasureService,
  ) {}
 
  ngOnInit() {
    this.measureService.initializeMeasures();
    this.measureService.updateMeasures();
  }
}