@hxui/angular
Version:
* * *
153 lines • 10.5 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc
*/
import { Directive, EventEmitter, HostBinding, Input, Output, ElementRef } from '@angular/core';
import { TabsetComponent } from './tabset.component';
var TabDirective = /** @class */ (function () {
function TabDirective(tabset, elementRef) {
this.elementRef = elementRef;
/**
* fired when tab became active, $event:Tab equals to selected instance of Tab component
*/
this.select = new EventEmitter();
/**
* fired when tab became inactive, $event:Tab equals to deselected instance of Tab component
*/
this.deselect = new EventEmitter();
/**
* fired before tab will be removed, $event:Tab equals to instance of removed tab
*/
this.removed = new EventEmitter();
this.addClasn = true;
this.tabset = tabset;
this.tabset.addTab(this);
}
Object.defineProperty(TabDirective.prototype, "active", {
/** tab active state toggle */
get: /**
* tab active state toggle
* @return {?}
*/
function () {
return this._active;
},
set: /**
* @param {?} active
* @return {?}
*/
function (active) {
var _this = this;
if (this.disabled && active || !active) {
if (!active) {
this._active = active;
}
//if(typeof active != 'undefined')
this.deselect.emit(this);
return;
}
this._active = active;
this.select.emit(this);
this.tabset.tabs.forEach(function (tab) {
if (tab !== _this) {
tab.active = false;
}
});
},
enumerable: true,
configurable: true
});
/**
* @return {?}
*/
TabDirective.prototype.ngOnInit = /**
* @return {?}
*/
function () {
this.removable = this.removable;
};
/**
* @return {?}
*/
TabDirective.prototype.ngOnDestroy = /**
* @return {?}
*/
function () {
this.tabset.removeTab(this, { reselect: false, emit: false });
};
TabDirective.decorators = [
{ type: Directive, args: [{ selector: 'hx-tab, [hx-tab]' },] },
];
/** @nocollapse */
TabDirective.ctorParameters = function () { return [
{ type: TabsetComponent },
{ type: ElementRef }
]; };
TabDirective.propDecorators = {
heading: [{ type: Input }],
id: [{ type: Input }],
disabled: [{ type: Input }],
removable: [{ type: Input }],
customClass: [{ type: Input }],
active: [{ type: HostBinding, args: ['class.is-active',] }, { type: Input }],
select: [{ type: Output }],
deselect: [{ type: Output }],
removed: [{ type: Output }],
addClasn: [{ type: HostBinding, args: ['class.hx-tab-pane',] }]
};
return TabDirective;
}());
export { TabDirective };
if (false) {
/**
* tab header text
* @type {?}
*/
TabDirective.prototype.heading;
/**
* tab id
* @type {?}
*/
TabDirective.prototype.id;
/**
* if true tab can not be activated
* @type {?}
*/
TabDirective.prototype.disabled;
/**
* if true tab can be removable, additional button will appear
* @type {?}
*/
TabDirective.prototype.removable;
/**
* if set, will be added to the tab's class atribute
* @type {?}
*/
TabDirective.prototype.customClass;
/**
* fired when tab became active, $event:Tab equals to selected instance of Tab component
* @type {?}
*/
TabDirective.prototype.select;
/**
* fired when tab became inactive, $event:Tab equals to deselected instance of Tab component
* @type {?}
*/
TabDirective.prototype.deselect;
/**
* fired before tab will be removed, $event:Tab equals to instance of removed tab
* @type {?}
*/
TabDirective.prototype.removed;
/** @type {?} */
TabDirective.prototype.addClasn;
/** @type {?} */
TabDirective.prototype.headingRef;
/** @type {?} */
TabDirective.prototype.tabset;
/** @type {?} */
TabDirective.prototype._active;
/** @type {?} */
TabDirective.prototype.elementRef;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BoeHVpL2FuZ3VsYXIvIiwic291cmNlcyI6WyJsaWIvdGFicy90YWIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBa0MsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pILE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVyRDtJQXFERSxzQkFBbUIsTUFBdUIsRUFBUyxVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZOzs7O1FBWnhELFdBQU0sR0FBK0IsSUFBSSxZQUFZLEVBQUUsQ0FBQzs7OztRQUV4RCxhQUFRLEdBQStCLElBQUksWUFBWSxFQUFFLENBQUM7Ozs7UUFFMUQsWUFBTyxHQUErQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRWpDLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFPdkQsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQTFDRCxzQkFFVyxnQ0FBTTtRQUhqQiw4QkFBOEI7Ozs7O1FBQzlCO1lBR0UsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3RCLENBQUM7Ozs7O1FBRUQsVUFBa0IsTUFBZTtZQUFqQyxpQkFrQkM7WUFqQkMsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLE1BQU0sSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDdEMsSUFBSSxDQUFDLE1BQU0sRUFBRTtvQkFDWCxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztpQkFDdkI7Z0JBQ0Qsa0NBQWtDO2dCQUNoQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFFM0IsT0FBTzthQUNSO1lBRUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7WUFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQUMsR0FBaUI7Z0JBQ3pDLElBQUksR0FBRyxLQUFLLEtBQUksRUFBRTtvQkFDaEIsR0FBRyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7aUJBQ3BCO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDOzs7T0FwQkE7Ozs7SUF3Q00sK0JBQVE7OztJQUFmO1FBQ0UsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ2xDLENBQUM7Ozs7SUFFTSxrQ0FBVzs7O0lBQWxCO1FBQ0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEVBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQztJQUM5RCxDQUFDOztnQkFoRUYsU0FBUyxTQUFDLEVBQUMsUUFBUSxFQUFFLGtCQUFrQixFQUFDOzs7O2dCQUZoQyxlQUFlO2dCQUQrRCxVQUFVOzs7MEJBTTlGLEtBQUs7cUJBRUwsS0FBSzsyQkFFTCxLQUFLOzRCQUVMLEtBQUs7OEJBRUwsS0FBSzt5QkFHTCxXQUFXLFNBQUMsaUJBQWlCLGNBQzdCLEtBQUs7eUJBMEJMLE1BQU07MkJBRU4sTUFBTTswQkFFTixNQUFNOzJCQUVOLFdBQVcsU0FBQyxtQkFBbUI7O0lBa0JsQyxtQkFBQztDQUFBLEFBakVELElBaUVDO1NBaEVZLFlBQVk7Ozs7OztJQUV2QiwrQkFBZ0M7Ozs7O0lBRWhDLDBCQUEyQjs7Ozs7SUFFM0IsZ0NBQWtDOzs7OztJQUVsQyxpQ0FBbUM7Ozs7O0lBRW5DLG1DQUFvQzs7Ozs7SUE4QnBDLDhCQUF5RTs7Ozs7SUFFekUsZ0NBQTJFOzs7OztJQUUzRSwrQkFBMEU7O0lBRTFFLGdDQUF5RDs7SUFFekQsa0NBQW9DOztJQUNwQyw4QkFBK0I7O0lBQy9CLCtCQUEyQjs7SUFFaUIsa0NBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXQsIFRlbXBsYXRlUmVmLCBPbkluaXQsIE9uRGVzdHJveSwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUYWJzZXRDb21wb25lbnQgfSBmcm9tICcuL3RhYnNldC5jb21wb25lbnQnO1xyXG5cclxuQERpcmVjdGl2ZSh7c2VsZWN0b3I6ICdoeC10YWIsIFtoeC10YWJdJ30pXHJcbmV4cG9ydCBjbGFzcyBUYWJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgLyoqIHRhYiBoZWFkZXIgdGV4dCAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBoZWFkaW5nOiBzdHJpbmc7XHJcbiAgLyoqIHRhYiBpZCAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpZDogc3RyaW5nO1xyXG4gIC8qKiBpZiB0cnVlIHRhYiBjYW4gbm90IGJlIGFjdGl2YXRlZCAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZDogYm9vbGVhbjtcclxuICAvKiogaWYgdHJ1ZSB0YWIgY2FuIGJlIHJlbW92YWJsZSwgYWRkaXRpb25hbCBidXR0b24gd2lsbCBhcHBlYXIgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgcmVtb3ZhYmxlOiBib29sZWFuO1xyXG4gIC8qKiBpZiBzZXQsIHdpbGwgYmUgYWRkZWQgdG8gdGhlIHRhYidzIGNsYXNzIGF0cmlidXRlICovXHJcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbUNsYXNzOiBzdHJpbmc7XHJcblxyXG4gIC8qKiB0YWIgYWN0aXZlIHN0YXRlIHRvZ2dsZSAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtYWN0aXZlJylcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBnZXQgYWN0aXZlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZTtcclxuICB9XHJcbiAgXHJcbiAgcHVibGljIHNldCBhY3RpdmUoYWN0aXZlOiBib29sZWFuKSB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCAmJiBhY3RpdmUgfHwgIWFjdGl2ZSkge1xyXG4gICAgICBpZiAoIWFjdGl2ZSkge1xyXG4gICAgICAgIHRoaXMuX2FjdGl2ZSA9IGFjdGl2ZTtcclxuICAgICAgfVxyXG4gICAgICAvL2lmKHR5cGVvZiBhY3RpdmUgIT0gJ3VuZGVmaW5lZCcpXHJcbiAgICAgICAgdGhpcy5kZXNlbGVjdC5lbWl0KHRoaXMpO1xyXG5cclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuX2FjdGl2ZSA9IGFjdGl2ZTtcclxuICAgIHRoaXMuc2VsZWN0LmVtaXQodGhpcyk7XHJcbiAgICB0aGlzLnRhYnNldC50YWJzLmZvckVhY2goKHRhYjogVGFiRGlyZWN0aXZlKSA9PiB7XHJcbiAgICAgIGlmICh0YWIgIT09IHRoaXMpIHtcclxuICAgICAgICB0YWIuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqIGZpcmVkIHdoZW4gdGFiIGJlY2FtZSBhY3RpdmUsICRldmVudDpUYWIgZXF1YWxzIHRvIHNlbGVjdGVkIGluc3RhbmNlIG9mIFRhYiBjb21wb25lbnQgKi9cclxuICBAT3V0cHV0KCkgcHVibGljIHNlbGVjdDogRXZlbnRFbWl0dGVyPFRhYkRpcmVjdGl2ZT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgLyoqIGZpcmVkIHdoZW4gdGFiIGJlY2FtZSBpbmFjdGl2ZSwgJGV2ZW50OlRhYiBlcXVhbHMgdG8gZGVzZWxlY3RlZCBpbnN0YW5jZSBvZiBUYWIgY29tcG9uZW50ICovXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBkZXNlbGVjdDogRXZlbnRFbWl0dGVyPFRhYkRpcmVjdGl2ZT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgLyoqIGZpcmVkIGJlZm9yZSB0YWIgd2lsbCBiZSByZW1vdmVkLCAkZXZlbnQ6VGFiIGVxdWFscyB0byBpbnN0YW5jZSBvZiByZW1vdmVkIHRhYiAqL1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgcmVtb3ZlZDogRXZlbnRFbWl0dGVyPFRhYkRpcmVjdGl2ZT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaHgtdGFiLXBhbmUnKSBwdWJsaWMgYWRkQ2xhc24gPSB0cnVlO1xyXG5cclxuICBwdWJsaWMgaGVhZGluZ1JlZjogVGVtcGxhdGVSZWY8YW55PjtcclxuICBwdWJsaWMgdGFic2V0OiBUYWJzZXRDb21wb25lbnQ7XHJcbiAgcHJvdGVjdGVkIF9hY3RpdmU6IGJvb2xlYW47XHJcblxyXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcih0YWJzZXQ6IFRhYnNldENvbXBvbmVudCwgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHtcclxuICAgIHRoaXMudGFic2V0ID0gdGFic2V0O1xyXG4gICAgdGhpcy50YWJzZXQuYWRkVGFiKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZW1vdmFibGUgPSB0aGlzLnJlbW92YWJsZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMudGFic2V0LnJlbW92ZVRhYih0aGlzLCB7cmVzZWxlY3Q6IGZhbHNlLCBlbWl0OiBmYWxzZX0pO1xyXG4gIH1cclxufVxyXG4iXX0=