UNPKG

@junte/ui

Version:

Quality Angular UI components kit

32 lines 3.41 kB
import { __decorate } from "tslib"; import { EventEmitter, Injectable } from '@angular/core'; import * as i0 from "@angular/core"; let ModalService = class ModalService { constructor() { this.opened$ = new EventEmitter(); } checkRegistration() { if (!this.modal) { throw new Error('modal component is not registered'); } } register(modal) { this.modal = modal; this.modal.opened$.subscribe(opened => this.opened$.emit(opened)); } open(content, options = {}) { this.checkRegistration(); // TODO: use merge options this.modal.open(content, options); } close() { this.checkRegistration(); this.modal.close(); } }; ModalService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ModalService_Factory() { return new ModalService(); }, token: ModalService, providedIn: "root" }); ModalService = __decorate([ Injectable({ providedIn: 'root' }) ], ModalService); export { ModalService }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BqdW50ZS91aS8iLCJzb3VyY2VzIjpbImxpYi9vdmVybGF5cy9tb2RhbC9tb2RhbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFJekQsSUFBYSxZQUFZLEdBQXpCLE1BQWEsWUFBWTtJQUF6QjtRQUlFLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0tBd0J2QztJQXRCUyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7U0FDdEQ7SUFDSCxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQXFCO1FBQzVCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELElBQUksQ0FBQyxPQUFzQixFQUFFLFVBQWlDLEVBQUU7UUFDOUQsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDekIsMEJBQTBCO1FBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDckIsQ0FBQztDQUVGLENBQUE7O0FBNUJZLFlBQVk7SUFEeEIsVUFBVSxDQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyxDQUFDO0dBQ3BCLFlBQVksQ0E0QnhCO1NBNUJZLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1vZGFsQ29tcG9uZW50LCBNb2RhbENvbnRlbnQsIE1vZGFsT3B0aW9ucyB9IGZyb20gJy4vbW9kYWwuY29tcG9uZW50JztcblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgTW9kYWxTZXJ2aWNlIHtcblxuICBwcml2YXRlIG1vZGFsOiBNb2RhbENvbXBvbmVudDtcblxuICBvcGVuZWQkID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIHByaXZhdGUgY2hlY2tSZWdpc3RyYXRpb24oKSB7XG4gICAgaWYgKCF0aGlzLm1vZGFsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ21vZGFsIGNvbXBvbmVudCBpcyBub3QgcmVnaXN0ZXJlZCcpO1xuICAgIH1cbiAgfVxuXG4gIHJlZ2lzdGVyKG1vZGFsOiBNb2RhbENvbXBvbmVudCkge1xuICAgIHRoaXMubW9kYWwgPSBtb2RhbDtcbiAgICB0aGlzLm1vZGFsLm9wZW5lZCQuc3Vic2NyaWJlKG9wZW5lZCA9PiB0aGlzLm9wZW5lZCQuZW1pdChvcGVuZWQpKTtcbiAgfVxuXG4gIG9wZW4oY29udGVudD86IE1vZGFsQ29udGVudCwgb3B0aW9uczogUGFydGlhbDxNb2RhbE9wdGlvbnM+ID0ge30pIHtcbiAgICB0aGlzLmNoZWNrUmVnaXN0cmF0aW9uKCk7XG4gICAgLy8gVE9ETzogdXNlIG1lcmdlIG9wdGlvbnNcbiAgICB0aGlzLm1vZGFsLm9wZW4oY29udGVudCwgb3B0aW9ucyk7XG4gIH1cblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLmNoZWNrUmVnaXN0cmF0aW9uKCk7XG4gICAgdGhpcy5tb2RhbC5jbG9zZSgpO1xuICB9XG5cbn1cbiJdfQ==