igniteui-angular-sovn
Version:
Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps
53 lines (43 loc) • 1.31 kB
text/typescript
import { Directive, ElementRef, HostBinding, HostListener } from '@angular/core';
import { PlatformUtil } from '../core/utils';
import { IgxTabItemDirective } from './tab-item.directive';
import { IgxTabHeaderBase, IgxTabsBase } from './tabs.base';
export abstract class IgxTabHeaderDirective implements IgxTabHeaderBase {
/** @hidden */
public role = 'tab';
/** @hidden */
constructor(
protected tabs: IgxTabsBase,
public tab: IgxTabItemDirective,
private elementRef: ElementRef<HTMLElement>,
protected platform: PlatformUtil
) { }
/** @hidden */
public get tabIndex() {
return this.tab.selected ? 0 : -1;
}
/** @hidden */
public get ariaSelected() {
return this.tab.selected;
}
/** @hidden */
public get ariaDisabled() {
return this.tab.disabled;
}
/** @hidden */
public onClick() {
if (this.tab.panelComponent) {
this.tabs.selectTab(this.tab, true);
}
}
/** @hidden */
public get nativeElement() {
return this.elementRef.nativeElement;
}
}