1 import {Component, Input, Output, Inject, EventEmitter} from '@angular/core';
2 import {Component as ComponentModel} from 'app/models';
3 import {SdcMenuToken, IAppMenu} from "../../../config/sdc-menu.config";
4 import {ElementIcon} from "../sdc-element-icon/sdc-element-icon.component";
5 import {ComponentType, ResourceType, SdcElementType} from "../../../../utils/constants";
9 templateUrl: './tile.component.html',
10 styleUrls: ['./tile.component.less']
12 export class TileComponent {
13 @Input() public component: ComponentModel;
14 @Output() public onTileClick: EventEmitter<ComponentModel>;
15 public catalogIcon: ElementIcon;
16 public hasEllipsis: boolean;
18 constructor(@Inject(SdcMenuToken) public sdcMenu: IAppMenu) {
19 this.onTileClick = new EventEmitter<ComponentModel>();
20 this.hasEllipsis = false;
24 switch (this.component.componentType) {
26 case ComponentType.SERVICE:
27 if (this.component.icon === 'defaulticon') {
28 this.catalogIcon = new ElementIcon(this.component.icon, "services_60", 'lightBlue', 'white');
30 this.catalogIcon = new ElementIcon(this.component.icon, "services_60", '', 'lightBlue');
33 case ComponentType.RESOURCE:
34 switch (this.component.getComponentSubType()) {
37 this.catalogIcon = new ElementIcon(this.component.icon, "resources_24", "purple", "white", "circle", 'medium');
40 if (this.component.icon === 'defaulticon') {
41 this.catalogIcon = new ElementIcon(this.component.icon, "resources_60", "purple", "white", "circle", 'x_large');
43 this.catalogIcon = new ElementIcon(this.component.icon, "resources_60", '', "error");
51 public tileClicked() {
52 this.onTileClick.emit(this.component);