UNPKG

@junte/ui

Version:

Quality Angular UI components kit

42 lines 4.8 kB
import { __decorate } from "tslib"; import { EventEmitter, Injectable } from '@angular/core'; import * as i0 from "@angular/core"; // TODO: move to interface and check ngc warnings export class PopoverInstance { } let PopoverService = class PopoverService { constructor() { this.attached = new EventEmitter(); } register(popover) { this.popover = popover; } checkRegistration() { if (!this.popover) { throw new Error('popover component is not registered'); } } show(target, options) { this.checkRegistration(); this.target = target; this.popover.show(target, options); this.attached.emit(target); return { hide: () => this.hide(target), picked: (path) => this.popover.picked(path), update: () => this.popover.update() }; } hide(target = null) { if (!this.target || this.target === target) { this.popover.hide(); this.attached.emit(null); } } }; PopoverService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PopoverService_Factory() { return new PopoverService(); }, token: PopoverService, providedIn: "root" }); PopoverService = __decorate([ Injectable({ providedIn: 'root' }) ], PopoverService); export { PopoverService }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGp1bnRlL3VpLyIsInNvdXJjZXMiOlsibGliL292ZXJsYXlzL3BvcG92ZXIvcG9wb3Zlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWMsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHckUsaURBQWlEO0FBQ2pELE1BQU0sT0FBTyxlQUFlO0NBSTNCO0FBR0QsSUFBYSxjQUFjLEdBQTNCLE1BQWEsY0FBYztJQUEzQjtRQUlFLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO0tBZ0MzQztJQTlCQyxRQUFRLENBQUMsT0FBeUI7UUFDaEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNqQixNQUFNLElBQUksS0FBSyxDQUFDLHFDQUFxQyxDQUFDLENBQUM7U0FDeEQ7SUFDSCxDQUFDO0lBRUQsSUFBSSxDQUFDLE1BQWtCLEVBQUUsT0FBZ0M7UUFDdkQsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTNCLE9BQU87WUFDTCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7WUFDN0IsTUFBTSxFQUFFLENBQUMsSUFBbUIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1lBQzFELE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtTQUNwQyxDQUFDO0lBQ0osQ0FBQztJQUVPLElBQUksQ0FBQyxTQUFxQixJQUFJO1FBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssTUFBTSxFQUFFO1lBQzFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDMUI7SUFDSCxDQUFDO0NBRUYsQ0FBQTs7QUFwQ1ksY0FBYztJQUQxQixVQUFVLENBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDLENBQUM7R0FDcEIsY0FBYyxDQW9DMUI7U0FwQ1ksY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUG9wb3ZlckNvbXBvbmVudCwgUG9wb3Zlck9wdGlvbnMgfSBmcm9tICcuL3BvcG92ZXIuY29tcG9uZW50JztcblxuLy8gVE9ETzogbW92ZSB0byBpbnRlcmZhY2UgYW5kIGNoZWNrIG5nYyB3YXJuaW5nc1xuZXhwb3J0IGNsYXNzIFBvcG92ZXJJbnN0YW5jZSB7XG4gIGhpZGU6ICgpID0+IHZvaWQ7XG4gIHBpY2tlZDogKHBhdGg6IEhUTUxFbGVtZW50W10pID0+IGJvb2xlYW47XG4gIHVwZGF0ZTogKCkgPT4gdm9pZDtcbn1cblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgUG9wb3ZlclNlcnZpY2Uge1xuXG4gIHByaXZhdGUgcG9wb3ZlcjogUG9wb3ZlckNvbXBvbmVudDtcbiAgcHJpdmF0ZSB0YXJnZXQ6IEVsZW1lbnRSZWY7XG4gIGF0dGFjaGVkID0gbmV3IEV2ZW50RW1pdHRlcjxFbGVtZW50UmVmPigpO1xuXG4gIHJlZ2lzdGVyKHBvcG92ZXI6IFBvcG92ZXJDb21wb25lbnQpOiB2b2lkIHtcbiAgICB0aGlzLnBvcG92ZXIgPSBwb3BvdmVyO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGVja1JlZ2lzdHJhdGlvbigpIHtcbiAgICBpZiAoIXRoaXMucG9wb3Zlcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdwb3BvdmVyIGNvbXBvbmVudCBpcyBub3QgcmVnaXN0ZXJlZCcpO1xuICAgIH1cbiAgfVxuXG4gIHNob3codGFyZ2V0OiBFbGVtZW50UmVmLCBvcHRpb25zOiBQYXJ0aWFsPFBvcG92ZXJPcHRpb25zPik6IFBvcG92ZXJJbnN0YW5jZSB7XG4gICAgdGhpcy5jaGVja1JlZ2lzdHJhdGlvbigpO1xuICAgIHRoaXMudGFyZ2V0ID0gdGFyZ2V0O1xuICAgIHRoaXMucG9wb3Zlci5zaG93KHRhcmdldCwgb3B0aW9ucyk7XG4gICAgdGhpcy5hdHRhY2hlZC5lbWl0KHRhcmdldCk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgaGlkZTogKCkgPT4gdGhpcy5oaWRlKHRhcmdldCksXG4gICAgICBwaWNrZWQ6IChwYXRoOiBIVE1MRWxlbWVudFtdKSA9PiB0aGlzLnBvcG92ZXIucGlja2VkKHBhdGgpLFxuICAgICAgdXBkYXRlOiAoKSA9PiB0aGlzLnBvcG92ZXIudXBkYXRlKClcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBoaWRlKHRhcmdldDogRWxlbWVudFJlZiA9IG51bGwpIHtcbiAgICBpZiAoIXRoaXMudGFyZ2V0IHx8IHRoaXMudGFyZ2V0ID09PSB0YXJnZXQpIHtcbiAgICAgIHRoaXMucG9wb3Zlci5oaWRlKCk7XG4gICAgICB0aGlzLmF0dGFjaGVkLmVtaXQobnVsbCk7XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==