@taiga-ui/core
Version:
Core library for creating Angular components and applications using Taiga UI
31 lines • 3.44 kB
JavaScript
import { Directive, inject, Input, TemplateRef, } from '@angular/core';
import { TuiPopupService } from './popup.service';
import * as i0 from "@angular/core";
class TuiPopup {
constructor() {
this.template = inject(TemplateRef);
this.service = inject(TuiPopupService);
}
set tuiPopup(show) {
this.viewRef?.destroy();
if (show) {
this.viewRef = this.service.addTemplate(this.template);
}
}
ngOnDestroy() {
this.viewRef?.destroy();
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiPopup, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiPopup, isStandalone: true, selector: "ng-template[tuiPopup]", inputs: { tuiPopup: "tuiPopup" }, ngImport: i0 }); }
}
export { TuiPopup };
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiPopup, decorators: [{
type: Directive,
args: [{
standalone: true,
selector: 'ng-template[tuiPopup]',
}]
}], propDecorators: { tuiPopup: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9kaXJlY3RpdmVzL3BvcHVwL3BvcHVwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUVULE1BQU0sRUFDTixLQUFLLEVBRUwsV0FBVyxHQUNkLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFaEQsTUFJYSxRQUFRO0lBSnJCO1FBS3FCLGFBQVEsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDL0IsWUFBTyxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztLQWdCdEQ7SUFaRyxJQUNXLFFBQVEsQ0FBQyxJQUFhO1FBQzdCLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFFeEIsSUFBSSxJQUFJLEVBQUU7WUFDTixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUMxRDtJQUNMLENBQUM7SUFFTSxXQUFXO1FBQ2QsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUM1QixDQUFDOytHQWpCUSxRQUFRO21HQUFSLFFBQVE7O1NBQVIsUUFBUTs0RkFBUixRQUFRO2tCQUpwQixTQUFTO21CQUFDO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsdUJBQXVCO2lCQUNwQzs4QkFRYyxRQUFRO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBEaXJlY3RpdmUsXG4gICAgdHlwZSBFbWJlZGRlZFZpZXdSZWYsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIHR5cGUgT25EZXN0cm95LFxuICAgIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtUdWlQb3B1cFNlcnZpY2V9IGZyb20gJy4vcG9wdXAuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICduZy10ZW1wbGF0ZVt0dWlQb3B1cF0nLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlQb3B1cCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZW1wbGF0ZSA9IGluamVjdChUZW1wbGF0ZVJlZik7XG4gICAgcHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlID0gaW5qZWN0KFR1aVBvcHVwU2VydmljZSk7XG5cbiAgICBwcml2YXRlIHZpZXdSZWY/OiBFbWJlZGRlZFZpZXdSZWY8dW5rbm93bj47XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgdHVpUG9wdXAoc2hvdzogYm9vbGVhbikge1xuICAgICAgICB0aGlzLnZpZXdSZWY/LmRlc3Ryb3koKTtcblxuICAgICAgICBpZiAoc2hvdykge1xuICAgICAgICAgICAgdGhpcy52aWV3UmVmID0gdGhpcy5zZXJ2aWNlLmFkZFRlbXBsYXRlKHRoaXMudGVtcGxhdGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZpZXdSZWY/LmRlc3Ryb3koKTtcbiAgICB9XG59XG4iXX0=