UNPKG

@bimeister/pupakit.kit

Version:

PupaKit is an open source collection of Angular components based on an atomic approach to building interfaces, which guarantees better performance and greater development flexibility.

28 lines (27 loc) 1.66 kB
import { AfterContentInit, OnChanges, OnDestroy, QueryList, TemplateRef, TrackByFunction } from '@angular/core'; import { ComponentChanges } from '@bimeister/pupakit.common'; import { Nullable } from '@bimeister/utilities'; import { BehaviorSubject, Observable, Subscription } from 'rxjs'; import { ContentTemplateNameDirective } from '../../interfaces/content-template-name.interface'; import { TabTemplateRef } from '../../interfaces/tab-template-ref.interface'; import { TabsServiceBase } from './tabs-service-base.abstract'; import * as i0 from "@angular/core"; export declare abstract class TabsContentBase<T, S extends TabsServiceBase<T>> implements OnChanges, AfterContentInit, OnDestroy { protected readonly stateService: S; protected readonly subscription: Subscription; abstract destroyable: boolean; protected readonly destroyable$: BehaviorSubject<boolean>; abstract tabTemplates: QueryList<ContentTemplateNameDirective<T>>; protected readonly activeTabName$: Observable<T>; readonly activeTemplateRef$: BehaviorSubject<Nullable<TemplateRef<unknown>>>; readonly nonDestroyableTemplateRefs$: BehaviorSubject<TabTemplateRef<T>[]>; constructor(stateService: S); readonly tabTrackBy: TrackByFunction<TabTemplateRef<T>>; ngOnChanges(changes: ComponentChanges<this>): void; ngAfterContentInit(): void; ngOnDestroy(): void; private processInputDestroyableChanges; private processActiveTabChanges; static ɵfac: i0.ɵɵFactoryDeclaration<TabsContentBase<any, any>, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<TabsContentBase<any, any>, never, never, {}, {}, never, never, false>; }