Files
2015-06-08 11:16:49 -05:00

37 lines
775 B
JavaScript

import {Parent} from 'angular2/src/core/annotations_impl/visibility';
import {Directive, onInit} from 'angular2/src/core/annotations_impl/annotations';
import {Tabs} from './tabs';
@Directive({
selector: '.tab-button',
properties: ['tab'],
hostProperties: {
'btnId': 'attr.id',
'panelId': 'attr.aria-controls',
'tab.isSelected': 'attr.aria-selected'
},
hostListeners: {
'^click': 'onClick($event)'
},
lifecycle: [onInit]
})
export class TabButton {
constructor(@Parent() tabs: Tabs) {
this.tabs = tabs;
}
onInit() {
let id = this.tab.item.id
this.btnId = 'tab-button-' + id;
this.panelId = 'tab-panel-' + id;
}
onClick(ev) {
ev.stopPropagation();
ev.preventDefault();
this.tabs.select(this.tab);
}
}