UNPKG

@taiga-ui/cdk

Version:

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

26 lines 4.16 kB
import { Directive, inject } from '@angular/core'; import { tuiIfMap } from '@taiga-ui/cdk/observables'; import { TuiPopoverService } from '@taiga-ui/cdk/services'; import { PolymorpheusTemplate } from '@taiga-ui/polymorpheus'; import { distinctUntilChanged, endWith, ignoreElements, share, Subject } from 'rxjs'; import * as i0 from "@angular/core"; class TuiPopoverDirective extends PolymorpheusTemplate { constructor() { super(...arguments); this.service = inject((TuiPopoverService)); this.open$ = new Subject(); this.options = {}; this.open = false; this.openChange = this.open$.pipe(distinctUntilChanged(), tuiIfMap(() => this.service.open(this, this.options).pipe(ignoreElements(), endWith(false))), share()); } ngOnChanges() { this.open$.next(this.open); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiPopoverDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiPopoverDirective, usesInheritance: true, usesOnChanges: true, ngImport: i0 }); } } export { TuiPopoverDirective }; i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiPopoverDirective, decorators: [{ type: Directive }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9wb3BvdmVyL3BvcG92ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDbkQsT0FBTyxFQUFrQixpQkFBaUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzFFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBQyxvQkFBb0IsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7O0FBRW5GLE1BQ3NCLG1CQUNsQixTQUFRLG9CQUF5QztJQUZyRDs7UUFLcUIsWUFBTyxHQUFHLE1BQU0sQ0FBQyxDQUFBLGlCQUFvQixDQUFBLENBQUMsQ0FBQztRQUN2QyxVQUFLLEdBQUcsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUV6QyxZQUFPLEdBQWUsRUFBRSxDQUFDO1FBQ3pCLFNBQUksR0FBRyxLQUFLLENBQUM7UUFFSixlQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ3hDLG9CQUFvQixFQUFFLEVBQ3RCLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FDVixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDL0UsRUFDRCxLQUFLLEVBQUUsQ0FDVixDQUFDO0tBS0w7SUFIVSxXQUFXO1FBQ2QsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7K0dBcEJpQixtQkFBbUI7bUdBQW5CLG1CQUFtQjs7U0FBbkIsbUJBQW1COzRGQUFuQixtQkFBbUI7a0JBRHhDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgaW5qZWN0LCB0eXBlIE9uQ2hhbmdlc30gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3R1aUlmTWFwfSBmcm9tICdAdGFpZ2EtdWkvY2RrL29ic2VydmFibGVzJztcbmltcG9ydCB7dHlwZSBUdWlQb3BvdmVyLCBUdWlQb3BvdmVyU2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9zZXJ2aWNlcyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c1RlbXBsYXRlfSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWQsIGVuZFdpdGgsIGlnbm9yZUVsZW1lbnRzLCBzaGFyZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFR1aVBvcG92ZXJEaXJlY3RpdmU8VD5cbiAgICBleHRlbmRzIFBvbHltb3JwaGV1c1RlbXBsYXRlPFR1aVBvcG92ZXI8VCwgdm9pZD4+XG4gICAgaW1wbGVtZW50cyBPbkNoYW5nZXNcbntcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlcnZpY2UgPSBpbmplY3QoVHVpUG9wb3ZlclNlcnZpY2U8VD4pO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgb3BlbiQgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuXG4gICAgcHVibGljIG9wdGlvbnM6IFBhcnRpYWw8VD4gPSB7fTtcbiAgICBwdWJsaWMgb3BlbiA9IGZhbHNlO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IG9wZW5DaGFuZ2UgPSB0aGlzLm9wZW4kLnBpcGUoXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIHR1aUlmTWFwKCgpID0+XG4gICAgICAgICAgICB0aGlzLnNlcnZpY2Uub3Blbih0aGlzLCB0aGlzLm9wdGlvbnMpLnBpcGUoaWdub3JlRWxlbWVudHMoKSwgZW5kV2l0aChmYWxzZSkpLFxuICAgICAgICApLFxuICAgICAgICBzaGFyZSgpLFxuICAgICk7XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMub3BlbiQubmV4dCh0aGlzLm9wZW4pO1xuICAgIH1cbn1cbiJdfQ==