ngx-formly-tabs
Version:
ngx-formly-tabs is an Angular module that adds Components that enable flexible tab use for @ngx-formly.
62 lines • 3.74 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Injectable } from '@angular/core';
import { BehaviorSubject } from 'rxjs';
export class TabsetService {
constructor() {
this._tabs = new BehaviorSubject([]);
}
/**
* @return {?}
*/
get tabs() {
return this._tabs.value.slice();
}
/**
* @return {?}
*/
get tabs$() {
return this._tabs.asObservable();
}
/**
* @param {?} tab
* @return {?}
*/
add(tab) {
this._tabs.next(this._tabs.value.filter((/**
* @param {?} t
* @return {?}
*/
t => t !== tab)).concat(tab));
}
/**
* @param {?} tab
* @return {?}
*/
remove(tab) {
this._tabs.next(this._tabs.value.filter((/**
* @param {?} t
* @return {?}
*/
t => t !== tab)));
}
/**
* @return {?}
*/
update() {
this._tabs.next(this.tabs);
}
}
TabsetService.decorators = [
{ type: Injectable }
];
if (false) {
/**
* @type {?}
* @private
*/
TabsetService.prototype._tabs;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFic2V0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtZm9ybWx5LXRhYnMvIiwic291cmNlcyI6WyJsaWIvdGFic2V0L3RhYnNldC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFJbkQsTUFBTSxPQUFPLGFBQWE7SUFEMUI7UUFFcUIsVUFBSyxHQUFHLElBQUksZUFBZSxDQUFpQixFQUFFLENBQUMsQ0FBQztJQXFCckUsQ0FBQzs7OztJQW5CRyxJQUFJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3BDLENBQUM7Ozs7SUFFRCxJQUFJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDckMsQ0FBQzs7Ozs7SUFFRCxHQUFHLENBQUMsR0FBaUI7UUFDakIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTTs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEdBQUcsRUFBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7Ozs7O0lBRUQsTUFBTSxDQUFDLEdBQWlCO1FBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU07Ozs7UUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7Ozs7SUFFRCxNQUFNO1FBQ0YsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7OztZQXRCSixVQUFVOzs7Ozs7O0lBRVAsOEJBQWlFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVGFiQ29tcG9uZW50IH0gZnJvbSAnLi4vdGFiL3RhYi5jb21wb25lbnQnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgVGFic2V0U2VydmljZSB7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IF90YWJzID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUYWJDb21wb25lbnRbXT4oW10pO1xyXG5cclxuICAgIGdldCB0YWJzKCk6IFRhYkNvbXBvbmVudFtdIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fdGFicy52YWx1ZS5zbGljZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCB0YWJzJCgpOiBPYnNlcnZhYmxlPFRhYkNvbXBvbmVudFtdPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RhYnMuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkKHRhYjogVGFiQ29tcG9uZW50KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fdGFicy5uZXh0KHRoaXMuX3RhYnMudmFsdWUuZmlsdGVyKHQgPT4gdCAhPT0gdGFiKS5jb25jYXQodGFiKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVtb3ZlKHRhYjogVGFiQ29tcG9uZW50KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fdGFicy5uZXh0KHRoaXMuX3RhYnMudmFsdWUuZmlsdGVyKHQgPT4gdCAhPT0gdGFiKSk7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3RhYnMubmV4dCh0aGlzLnRhYnMpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==