UNPKG

@taiga-ui/cdk

Version:

Base library for creating Angular components and applications using Taiga UI principles regarding of actual visual appearance

20 lines 4.17 kB
import { ɵAnimationEngine as AnimationEngine } from '@angular/animations/browser'; import { inject, InjectionToken } from '@angular/core'; import { BehaviorSubject, map, share, startWith, switchMap, timer } from 'rxjs'; /** * Element currently being removed by AnimationEngine */ export const TUI_REMOVED_ELEMENT = new InjectionToken(ngDevMode ? 'TUI_REMOVED_ELEMENT' : '', { factory: () => { const stub = { onRemovalComplete: () => { } }; const element$ = new BehaviorSubject(null); const engine = inject(AnimationEngine, { optional: true }) || stub; const { onRemovalComplete = stub.onRemovalComplete } = engine; engine.onRemovalComplete = (element, context) => { element$.next(element); onRemovalComplete.call(engine, element, context); }; return element$.pipe(switchMap((element) => timer(0).pipe(map(() => null), startWith(element))), share()); }, }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlZC1lbGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3Rva2Vucy9yZW1vdmVkLWVsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGdCQUFnQixJQUFJLGVBQWUsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ2hGLE9BQU8sRUFBQyxNQUFNLEVBQUUsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBQyxlQUFlLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUU5RTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLElBQUksY0FBYyxDQUNqRCxTQUFTLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQ3RDO0lBQ0ksT0FBTyxFQUFFLEdBQUcsRUFBRTtRQUNWLE1BQU0sSUFBSSxHQUFHLEVBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFLEdBQUUsQ0FBQyxFQUFDLENBQUM7UUFDM0MsTUFBTSxRQUFRLEdBQUcsSUFBSSxlQUFlLENBQWlCLElBQUksQ0FBQyxDQUFDO1FBQzNELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxlQUFlLEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUMsSUFBSSxJQUFJLENBQUM7UUFDakUsTUFBTSxFQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsRUFBQyxHQUFHLE1BQU0sQ0FBQztRQUU1RCxNQUFNLENBQUMsaUJBQWlCLEdBQUcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUU7WUFDNUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN2QixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNyRCxDQUFDLENBQUM7UUFFRixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQ2xCLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ1QsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUNmLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FDckIsQ0FDSixFQUNELEtBQUssRUFBRSxDQUNWLENBQUM7SUFDTixDQUFDO0NBQ0osQ0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHvJtUFuaW1hdGlvbkVuZ2luZSBhcyBBbmltYXRpb25FbmdpbmV9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMvYnJvd3Nlcic7XG5pbXBvcnQge2luamVjdCwgSW5qZWN0aW9uVG9rZW59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIG1hcCwgc2hhcmUsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0aW1lcn0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogRWxlbWVudCBjdXJyZW50bHkgYmVpbmcgcmVtb3ZlZCBieSBBbmltYXRpb25FbmdpbmVcbiAqL1xuZXhwb3J0IGNvbnN0IFRVSV9SRU1PVkVEX0VMRU1FTlQgPSBuZXcgSW5qZWN0aW9uVG9rZW4oXG4gICAgbmdEZXZNb2RlID8gJ1RVSV9SRU1PVkVEX0VMRU1FTlQnIDogJycsXG4gICAge1xuICAgICAgICBmYWN0b3J5OiAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdHViID0ge29uUmVtb3ZhbENvbXBsZXRlOiAoKSA9PiB7fX07XG4gICAgICAgICAgICBjb25zdCBlbGVtZW50JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RWxlbWVudCB8IG51bGw+KG51bGwpO1xuICAgICAgICAgICAgY29uc3QgZW5naW5lID0gaW5qZWN0KEFuaW1hdGlvbkVuZ2luZSwge29wdGlvbmFsOiB0cnVlfSkgfHwgc3R1YjtcbiAgICAgICAgICAgIGNvbnN0IHtvblJlbW92YWxDb21wbGV0ZSA9IHN0dWIub25SZW1vdmFsQ29tcGxldGV9ID0gZW5naW5lO1xuXG4gICAgICAgICAgICBlbmdpbmUub25SZW1vdmFsQ29tcGxldGUgPSAoZWxlbWVudCwgY29udGV4dCkgPT4ge1xuICAgICAgICAgICAgICAgIGVsZW1lbnQkLm5leHQoZWxlbWVudCk7XG4gICAgICAgICAgICAgICAgb25SZW1vdmFsQ29tcGxldGUuY2FsbChlbmdpbmUsIGVsZW1lbnQsIGNvbnRleHQpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgcmV0dXJuIGVsZW1lbnQkLnBpcGUoXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKChlbGVtZW50KSA9PlxuICAgICAgICAgICAgICAgICAgICB0aW1lcigwKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwKCgpID0+IG51bGwpLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRXaXRoKGVsZW1lbnQpLFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgc2hhcmUoKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0sXG4gICAgfSxcbik7XG4iXX0=