39 lines
		
	
	
		
			871 B
		
	
	
	
		
			TypeScript
		
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			871 B
		
	
	
	
		
			TypeScript
		
	
	
import {ChangeDetectionStrategy, Component, EventEmitter, Input, Output} from '@angular/core';
 | 
						|
import {User} from '../../models/model-interfaces';
 | 
						|
import {Fraction} from '../../utils/fraction.enum';
 | 
						|
 | 
						|
@Component({
 | 
						|
  selector: 'pjm-user-item',
 | 
						|
  templateUrl: './user-item.component.html',
 | 
						|
  styleUrls: ['./user-item.component.css', '../../style/list-entry.css'],
 | 
						|
  changeDetection: ChangeDetectionStrategy.OnPush
 | 
						|
})
 | 
						|
export class UserItemComponent {
 | 
						|
 | 
						|
  @Input() user: User;
 | 
						|
 | 
						|
  @Input() selected: boolean;
 | 
						|
 | 
						|
  @Output() userSelected = new EventEmitter();
 | 
						|
  @Output() userAward = new EventEmitter();
 | 
						|
  @Output() userDelete = new EventEmitter();
 | 
						|
 | 
						|
  readonly fraction = Fraction;
 | 
						|
 | 
						|
  constructor() {
 | 
						|
  }
 | 
						|
 | 
						|
  select() {
 | 
						|
    this.userSelected.emit(this.user._id);
 | 
						|
  }
 | 
						|
 | 
						|
  award() {
 | 
						|
    this.userAward.emit(this.user._id);
 | 
						|
  }
 | 
						|
 | 
						|
  delete() {
 | 
						|
    this.userDelete.emit(this.user);
 | 
						|
  }
 | 
						|
}
 | 
						|
 |