UNPKG

@taiga-ui/kit

Version:

Taiga UI Angular main components kit

35 lines 5.88 kB
import { DOCUMENT } from '@angular/common'; import { ChangeDetectorRef, ElementRef, InjectionToken, } from '@angular/core'; import { takeUntilDestroyed } from '@angular/core/rxjs-interop'; import { WaMutationObserverService, WA_MUTATION_OBSERVER_INIT, } from '@ng-web-apis/mutation-observer'; import { WaResizeObserverService } from '@ng-web-apis/resize-observer'; import { tuiDropdownOptionsProvider } from '@taiga-ui/core/directives/dropdown'; import { debounceTime, filter, merge, startWith, tap } from 'rxjs'; export const TUI_TABS_REFRESH = new InjectionToken(ngDevMode ? 'TUI_TABS_REFRESH' : ''); export const TUI_TABS_PROVIDERS = [ WaResizeObserverService, WaMutationObserverService, tuiDropdownOptionsProvider({ align: 'right' }), { provide: WA_MUTATION_OBSERVER_INIT, useValue: { childList: true, subtree: true, characterData: true, }, }, { provide: TUI_TABS_REFRESH, deps: [ WaResizeObserverService, WaMutationObserverService, DOCUMENT, ElementRef, ChangeDetectorRef, ], useFactory: (resize$, mutations$, { body }, { nativeElement }, cdr) => merge(resize$, mutations$.pipe(tap(() => cdr.detectChanges()))).pipe( // Ignoring cases when host is detached from DOM filter(() => body.contains(nativeElement)), debounceTime(0), startWith(null), takeUntilDestroyed()), }, ]; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5wcm92aWRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy90YWJzL3RhYnMucHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsaUJBQWlCLEVBQ2pCLFVBQVUsRUFDVixjQUFjLEdBRWpCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFDSCx5QkFBeUIsRUFDekIseUJBQXlCLEdBQzVCLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDckUsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDOUUsT0FBTyxFQUFDLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFtQixTQUFTLEVBQUUsR0FBRyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRWxGLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLElBQUksY0FBYyxDQUM5QyxTQUFTLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQ3RDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBZTtJQUMxQyx1QkFBdUI7SUFDdkIseUJBQXlCO0lBQ3pCLDBCQUEwQixDQUFDLEVBQUMsS0FBSyxFQUFFLE9BQU8sRUFBQyxDQUFDO0lBQzVDO1FBQ0ksT0FBTyxFQUFFLHlCQUF5QjtRQUNsQyxRQUFRLEVBQUU7WUFDTixTQUFTLEVBQUUsSUFBSTtZQUNmLE9BQU8sRUFBRSxJQUFJO1lBQ2IsYUFBYSxFQUFFLElBQUk7U0FDdEI7S0FDSjtJQUNEO1FBQ0ksT0FBTyxFQUFFLGdCQUFnQjtRQUN6QixJQUFJLEVBQUU7WUFDRix1QkFBdUI7WUFDdkIseUJBQXlCO1lBQ3pCLFFBQVE7WUFDUixVQUFVO1lBQ1YsaUJBQWlCO1NBQ3BCO1FBQ0QsVUFBVSxFQUFFLENBQ1IsT0FBNEIsRUFDNUIsVUFBK0IsRUFDL0IsRUFBQyxJQUFJLEVBQVcsRUFDaEIsRUFBQyxhQUFhLEVBQW1CLEVBQ2pDLEdBQXNCLEVBQ0gsRUFBRSxDQUNyQixLQUFLLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJO1FBQ2hFLGdEQUFnRDtRQUNoRCxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUMxQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQ2YsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUNmLGtCQUFrQixFQUFFLENBQ3ZCO0tBQ1I7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3Rpb25Ub2tlbixcbiAgICB0eXBlIFByb3ZpZGVyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge1xuICAgIFdhTXV0YXRpb25PYnNlcnZlclNlcnZpY2UsXG4gICAgV0FfTVVUQVRJT05fT0JTRVJWRVJfSU5JVCxcbn0gZnJvbSAnQG5nLXdlYi1hcGlzL211dGF0aW9uLW9ic2VydmVyJztcbmltcG9ydCB7V2FSZXNpemVPYnNlcnZlclNlcnZpY2V9IGZyb20gJ0BuZy13ZWItYXBpcy9yZXNpemUtb2JzZXJ2ZXInO1xuaW1wb3J0IHt0dWlEcm9wZG93bk9wdGlvbnNQcm92aWRlcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bic7XG5pbXBvcnQge2RlYm91bmNlVGltZSwgZmlsdGVyLCBtZXJnZSwgdHlwZSBPYnNlcnZhYmxlLCBzdGFydFdpdGgsIHRhcH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjb25zdCBUVUlfVEFCU19SRUZSRVNIID0gbmV3IEluamVjdGlvblRva2VuPE9ic2VydmFibGU8dW5rbm93bj4+KFxuICAgIG5nRGV2TW9kZSA/ICdUVUlfVEFCU19SRUZSRVNIJyA6ICcnLFxuKTtcblxuZXhwb3J0IGNvbnN0IFRVSV9UQUJTX1BST1ZJREVSUzogUHJvdmlkZXJbXSA9IFtcbiAgICBXYVJlc2l6ZU9ic2VydmVyU2VydmljZSxcbiAgICBXYU11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlLFxuICAgIHR1aURyb3Bkb3duT3B0aW9uc1Byb3ZpZGVyKHthbGlnbjogJ3JpZ2h0J30pLFxuICAgIHtcbiAgICAgICAgcHJvdmlkZTogV0FfTVVUQVRJT05fT0JTRVJWRVJfSU5JVCxcbiAgICAgICAgdXNlVmFsdWU6IHtcbiAgICAgICAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgICAgICAgIHN1YnRyZWU6IHRydWUsXG4gICAgICAgICAgICBjaGFyYWN0ZXJEYXRhOiB0cnVlLFxuICAgICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgICBwcm92aWRlOiBUVUlfVEFCU19SRUZSRVNILFxuICAgICAgICBkZXBzOiBbXG4gICAgICAgICAgICBXYVJlc2l6ZU9ic2VydmVyU2VydmljZSxcbiAgICAgICAgICAgIFdhTXV0YXRpb25PYnNlcnZlclNlcnZpY2UsXG4gICAgICAgICAgICBET0NVTUVOVCxcbiAgICAgICAgICAgIEVsZW1lbnRSZWYsXG4gICAgICAgICAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgXSxcbiAgICAgICAgdXNlRmFjdG9yeTogKFxuICAgICAgICAgICAgcmVzaXplJDogT2JzZXJ2YWJsZTx1bmtub3duPixcbiAgICAgICAgICAgIG11dGF0aW9ucyQ6IE9ic2VydmFibGU8dW5rbm93bj4sXG4gICAgICAgICAgICB7Ym9keX06IERvY3VtZW50LFxuICAgICAgICAgICAge25hdGl2ZUVsZW1lbnR9OiBFbGVtZW50UmVmPE5vZGU+LFxuICAgICAgICAgICAgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgKTogT2JzZXJ2YWJsZTx1bmtub3duPiA9PlxuICAgICAgICAgICAgbWVyZ2UocmVzaXplJCwgbXV0YXRpb25zJC5waXBlKHRhcCgoKSA9PiBjZHIuZGV0ZWN0Q2hhbmdlcygpKSkpLnBpcGUoXG4gICAgICAgICAgICAgICAgLy8gSWdub3JpbmcgY2FzZXMgd2hlbiBob3N0IGlzIGRldGFjaGVkIGZyb20gRE9NXG4gICAgICAgICAgICAgICAgZmlsdGVyKCgpID0+IGJvZHkuY29udGFpbnMobmF0aXZlRWxlbWVudCkpLFxuICAgICAgICAgICAgICAgIGRlYm91bmNlVGltZSgwKSxcbiAgICAgICAgICAgICAgICBzdGFydFdpdGgobnVsbCksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKCksXG4gICAgICAgICAgICApLFxuICAgIH0sXG5dO1xuIl19