mseemann/angular2-mdl

View on GitHub
projects/core/src/lib/tabs/mdl-tab-panel.component.ts

Summary

Maintainability
A
0 mins
Test Coverage
A
100%
import {
  Component,
  ContentChild,
  HostBinding,
  Input,
  ViewEncapsulation,
} from "@angular/core";
import { MdlTabPanelTitleComponent } from "./mdl-tab-panel-title.component";

@Component({
  selector: "mdl-tab-panel-content",
  template: "<ng-content></ng-content>",
  encapsulation: ViewEncapsulation.None,
})
export class MdlTabPanelContentComponent {}

@Component({
  selector: "mdl-tab-panel",
  template: `
    <ng-content
      *ngIf="titleComponent"
      select="mdl-tab-panel-content"
    ></ng-content>
    <ng-content *ngIf="!titleComponent"></ng-content>
  `,
  encapsulation: ViewEncapsulation.None,
})
export class MdlTabPanelComponent {
  @ContentChild(MdlTabPanelTitleComponent, { static: true })
  titleComponent: MdlTabPanelTitleComponent | undefined;
  // eslint-disable-next-line
  @Input("mdl-tab-panel-title")
  title: string | undefined;
  // eslint-disable-next-line
  @Input("disabled")
  disabled: boolean | undefined;
  @HostBinding("class.mdl-tabs__panel")
  isTabPanel = true;
  @HostBinding("class.is-active")
  isActive = false;
}