@taiga-ui/kit
Version:
Taiga UI Angular main components kit
41 lines • 5.6 kB
JavaScript
import { DOCUMENT } from '@angular/common';
import { ChangeDetectorRef, ElementRef, InjectionToken } from '@angular/core';
import { MUTATION_OBSERVER_INIT, MutationObserverService, } from '@ng-web-apis/mutation-observer';
import { TuiDestroyService, TuiResizeService } from '@taiga-ui/cdk';
import { merge } from 'rxjs';
import { debounceTime, filter, startWith, takeUntil, tap } from 'rxjs/operators';
export function tabsRefreshFactory(resize$, mutations$, destroy$, _a, _b, changeDetectorRef) {
var body = _a.body;
var nativeElement = _b.nativeElement;
return merge(resize$, mutations$.pipe(tap(function () { return changeDetectorRef.detectChanges(); }))).pipe(
// Ignoring cases when host is detached from DOM
filter(function () { return body.contains(nativeElement); }), debounceTime(0), startWith(null), takeUntil(destroy$));
}
export var TABS_REFRESH = new InjectionToken('Refresh stream');
var ɵ0 = {
childList: true,
subtree: true,
};
export var TABS_PROVIDERS = [
TuiResizeService,
TuiDestroyService,
MutationObserverService,
{
provide: MUTATION_OBSERVER_INIT,
useValue: ɵ0,
},
{
provide: TABS_REFRESH,
deps: [
TuiResizeService,
MutationObserverService,
TuiDestroyService,
DOCUMENT,
ElementRef,
ChangeDetectorRef,
],
useFactory: tabsRefreshFactory,
},
];
export { ɵ0 };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy13aXRoLW1vcmUucHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3RhYnMvIiwic291cmNlcyI6WyJ0YWJzLXdpdGgtbW9yZS90YWJzLXdpdGgtbW9yZS5wcm92aWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFXLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFDSCxzQkFBc0IsRUFDdEIsdUJBQXVCLEdBQzFCLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUFDLGlCQUFpQixFQUFFLGdCQUFnQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxLQUFLLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvRSxNQUFNLFVBQVUsa0JBQWtCLENBQzlCLE9BQTRCLEVBQzVCLFVBQStCLEVBQy9CLFFBQTZCLEVBQzdCLEVBQWdCLEVBQ2hCLEVBQWlDLEVBQ2pDLGlCQUFvQztRQUZuQyxjQUFJO1FBQ0osZ0NBQWE7SUFHZCxPQUFPLEtBQUssQ0FDUixPQUFPLEVBQ1AsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBTSxPQUFBLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxFQUFqQyxDQUFpQyxDQUFDLENBQUMsQ0FDaEUsQ0FBQyxJQUFJO0lBQ0YsZ0RBQWdEO0lBQ2hELE1BQU0sQ0FBQyxjQUFNLE9BQUEsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBNUIsQ0FBNEIsQ0FBQyxFQUMxQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQ2YsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUNmLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FDdEIsQ0FBQztBQUNOLENBQUM7QUFFRCxNQUFNLENBQUMsSUFBTSxZQUFZLEdBQUcsSUFBSSxjQUFjLENBQXNCLGdCQUFnQixDQUFDLENBQUM7U0FPcEU7SUFDTixTQUFTLEVBQUUsSUFBSTtJQUNmLE9BQU8sRUFBRSxJQUFJO0NBQ2hCO0FBVFQsTUFBTSxDQUFDLElBQU0sY0FBYyxHQUFlO0lBQ3RDLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsdUJBQXVCO0lBQ3ZCO1FBQ0ksT0FBTyxFQUFFLHNCQUFzQjtRQUMvQixRQUFRLElBR1A7S0FDSjtJQUNEO1FBQ0ksT0FBTyxFQUFFLFlBQVk7UUFDckIsSUFBSSxFQUFFO1lBQ0YsZ0JBQWdCO1lBQ2hCLHVCQUF1QjtZQUN2QixpQkFBaUI7WUFDakIsUUFBUTtZQUNSLFVBQVU7WUFDVixpQkFBaUI7U0FDcEI7UUFDRCxVQUFVLEVBQUUsa0JBQWtCO0tBQ2pDO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBFbGVtZW50UmVmLCBJbmplY3Rpb25Ub2tlbiwgUHJvdmlkZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBNVVRBVElPTl9PQlNFUlZFUl9JTklULFxuICAgIE11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlLFxufSBmcm9tICdAbmctd2ViLWFwaXMvbXV0YXRpb24tb2JzZXJ2ZXInO1xuaW1wb3J0IHtUdWlEZXN0cm95U2VydmljZSwgVHVpUmVzaXplU2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge21lcmdlLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lLCBmaWx0ZXIsIHN0YXJ0V2l0aCwgdGFrZVVudGlsLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHRhYnNSZWZyZXNoRmFjdG9yeShcbiAgICByZXNpemUkOiBPYnNlcnZhYmxlPHVua25vd24+LFxuICAgIG11dGF0aW9ucyQ6IE9ic2VydmFibGU8dW5rbm93bj4sXG4gICAgZGVzdHJveSQ6IE9ic2VydmFibGU8dW5rbm93bj4sXG4gICAge2JvZHl9OiBEb2N1bWVudCxcbiAgICB7bmF0aXZlRWxlbWVudH06IEVsZW1lbnRSZWY8Tm9kZT4sXG4gICAgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuKTogT2JzZXJ2YWJsZTx1bmtub3duPiB7XG4gICAgcmV0dXJuIG1lcmdlKFxuICAgICAgICByZXNpemUkLFxuICAgICAgICBtdXRhdGlvbnMkLnBpcGUodGFwKCgpID0+IGNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKSkpLFxuICAgICkucGlwZShcbiAgICAgICAgLy8gSWdub3JpbmcgY2FzZXMgd2hlbiBob3N0IGlzIGRldGFjaGVkIGZyb20gRE9NXG4gICAgICAgIGZpbHRlcigoKSA9PiBib2R5LmNvbnRhaW5zKG5hdGl2ZUVsZW1lbnQpKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDApLFxuICAgICAgICBzdGFydFdpdGgobnVsbCksXG4gICAgICAgIHRha2VVbnRpbChkZXN0cm95JCksXG4gICAgKTtcbn1cblxuZXhwb3J0IGNvbnN0IFRBQlNfUkVGUkVTSCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxPYnNlcnZhYmxlPHVua25vd24+PignUmVmcmVzaCBzdHJlYW0nKTtcbmV4cG9ydCBjb25zdCBUQUJTX1BST1ZJREVSUzogUHJvdmlkZXJbXSA9IFtcbiAgICBUdWlSZXNpemVTZXJ2aWNlLFxuICAgIFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgIE11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlLFxuICAgIHtcbiAgICAgICAgcHJvdmlkZTogTVVUQVRJT05fT0JTRVJWRVJfSU5JVCxcbiAgICAgICAgdXNlVmFsdWU6IHtcbiAgICAgICAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgICAgICAgIHN1YnRyZWU6IHRydWUsXG4gICAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHByb3ZpZGU6IFRBQlNfUkVGUkVTSCxcbiAgICAgICAgZGVwczogW1xuICAgICAgICAgICAgVHVpUmVzaXplU2VydmljZSxcbiAgICAgICAgICAgIE11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlLFxuICAgICAgICAgICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgICAgICAgICBET0NVTUVOVCxcbiAgICAgICAgICAgIEVsZW1lbnRSZWYsXG4gICAgICAgICAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgXSxcbiAgICAgICAgdXNlRmFjdG9yeTogdGFic1JlZnJlc2hGYWN0b3J5LFxuICAgIH0sXG5dO1xuIl19