UNPKG

ngx-feedback

Version:

Angular Feedback Library

156 lines 10.7 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Injectable } from '@angular/core'; import { ModalService } from './modal.service'; import { SelectorsService } from './selectors.service'; import { EventsService } from './events.service'; import { Subject } from 'rxjs'; import * as i0 from "@angular/core"; import * as i1 from "./modal.service"; import * as i2 from "./selectors.service"; import * as i3 from "./events.service"; export class OrchestratorService { /** * @param {?} modalService * @param {?} selectorsService * @param {?} eventsService */ constructor(modalService, selectorsService, eventsService) { this.modalService = modalService; this.selectorsService = selectorsService; this.eventsService = eventsService; this.subscriptions = []; this.onSend = new Subject(); } /** * @return {?} */ ngOnInit() { this.subscriptions.push(this.onFeedbackButtonClick(), this.onSpecificFeedbackClick(), this.onGenericFeedbackClick(), this.onElementSelected(), this.onCloseClick(), this.onSendClick()); } /** * @private * @return {?} */ onElementSelected() { return this.selectorsService.preview.subscribe((/** * @param {?} prev * @return {?} */ prev => { this.modalService.openWithPreview(prev); })); } /** * @private * @return {?} */ onFeedbackButtonClick() { return this.eventsService.feedbackClickObservable.subscribe((/** * @return {?} */ () => { this.modalService.draw(); })); } /** * @private * @return {?} */ onSpecificFeedbackClick() { return this.eventsService.specificFeedbackClickObservable.subscribe((/** * @return {?} */ () => { this.modalService.remove(); this.selectorsService.elementsHighlight(); })); } /** * @private * @return {?} */ onGenericFeedbackClick() { return this.eventsService.genericFeedbackClickObservable.subscribe((/** * @return {?} */ () => { this.modalService.remove(); this.selectorsService.pageScreenshot(); })); } /** * @private * @return {?} */ onCloseClick() { return this.eventsService.closeClickClickObservable.subscribe((/** * @return {?} */ () => { this.modalService.remove(); })); } /** * @private * @return {?} */ onSendClick() { return this.eventsService.onSendClickObservable.subscribe((/** * @param {?} data * @return {?} */ (data) => { this.onSend.next(data); })); } /** * @return {?} */ ngOnDestroy() { this.subscriptions.forEach((/** * @param {?} sub * @return {?} */ sub => { sub.unsubscribe(); })); } } OrchestratorService.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ OrchestratorService.ctorParameters = () => [ { type: ModalService }, { type: SelectorsService }, { type: EventsService } ]; /** @nocollapse */ OrchestratorService.ngInjectableDef = i0.defineInjectable({ factory: function OrchestratorService_Factory() { return new OrchestratorService(i0.inject(i1.ModalService), i0.inject(i2.SelectorsService), i0.inject(i3.EventsService)); }, token: OrchestratorService, providedIn: "root" }); if (false) { /** * @type {?} * @private */ OrchestratorService.prototype.subscriptions; /** @type {?} */ OrchestratorService.prototype.onSend; /** * @type {?} * @private */ OrchestratorService.prototype.modalService; /** * @type {?} * @private */ OrchestratorService.prototype.selectorsService; /** * @type {?} * @private */ OrchestratorService.prototype.eventsService; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JjaGVzdHJhdG9yLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtZmVlZGJhY2svIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvb3JjaGVzdHJhdG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFnQixPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBSTdDLE1BQU0sT0FBTyxtQkFBbUI7Ozs7OztJQUk1QixZQUNxQixZQUEwQixFQUMxQixnQkFBa0MsRUFDbEMsYUFBNEI7UUFGNUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQU56QyxrQkFBYSxHQUFtQixFQUFFLENBQUM7UUFFM0MsV0FBTSxHQUEwQixJQUFJLE9BQU8sRUFBZ0IsQ0FBQztJQUt6RCxDQUFDOzs7O0lBRUosUUFBUTtRQUNKLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUNuQixJQUFJLENBQUMscUJBQXFCLEVBQUUsRUFDNUIsSUFBSSxDQUFDLHVCQUF1QixFQUFFLEVBQzlCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxFQUM3QixJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFDeEIsSUFBSSxDQUFDLFlBQVksRUFBRSxFQUNuQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQ3JCLENBQUM7SUFDTixDQUFDOzs7OztJQUVPLGlCQUFpQjtRQUNyQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsU0FBUzs7OztRQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2xELElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVDLENBQUMsRUFBQyxDQUFDO0lBQ1AsQ0FBQzs7Ozs7SUFFTyxxQkFBcUI7UUFDekIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLHVCQUF1QixDQUFDLFNBQVM7OztRQUFDLEdBQUcsRUFBRTtZQUM3RCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzdCLENBQUMsRUFBQyxDQUFDO0lBQ1AsQ0FBQzs7Ozs7SUFFTyx1QkFBdUI7UUFDM0IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLCtCQUErQixDQUFDLFNBQVM7OztRQUFDLEdBQUcsRUFBRTtZQUNyRSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQzlDLENBQUMsRUFBQyxDQUFDO0lBQ1AsQ0FBQzs7Ozs7SUFFTyxzQkFBc0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLDhCQUE4QixDQUFDLFNBQVM7OztRQUFDLEdBQUcsRUFBRTtZQUNwRSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUMzQyxDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7Ozs7O0lBRU8sWUFBWTtRQUNoQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMseUJBQXlCLENBQUMsU0FBUzs7O1FBQUMsR0FBRyxFQUFFO1lBQy9ELElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDL0IsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7OztJQUVPLFdBQVc7UUFDZixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQUMsU0FBUzs7OztRQUFDLENBQUMsSUFBa0IsRUFBRSxFQUFFO1lBQzdFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNCLENBQUMsRUFBQyxDQUFDO0lBQ1AsQ0FBQzs7OztJQUNELFdBQVc7UUFDUCxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU87Ozs7UUFBQyxHQUFHLENBQUMsRUFBRTtZQUM3QixHQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEIsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7WUEvREosVUFBVSxTQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7OztZQU56QixZQUFZO1lBQ1osZ0JBQWdCO1lBQ2hCLGFBQWE7Ozs7Ozs7O0lBTWxCLDRDQUEyQzs7SUFFM0MscUNBQTREOzs7OztJQUV4RCwyQ0FBMkM7Ozs7O0lBQzNDLCtDQUFtRDs7Ozs7SUFDbkQsNENBQTZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTW9kYWxTZXJ2aWNlIH0gZnJvbSAnLi9tb2RhbC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU2VsZWN0b3JzU2VydmljZSB9IGZyb20gJy4vc2VsZWN0b3JzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBGZWVkYmFja0RhdGEgfSBmcm9tICcuLi9tb2RlbHMvZmVlZGJhY2stZGF0YS5tb2RlbCc7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgT3JjaGVzdHJhdG9yU2VydmljZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAgIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgICBvblNlbmQ6IFN1YmplY3Q8RmVlZGJhY2tEYXRhPiA9IG5ldyBTdWJqZWN0PEZlZWRiYWNrRGF0YT4oKTtcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgbW9kYWxTZXJ2aWNlOiBNb2RhbFNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBzZWxlY3RvcnNTZXJ2aWNlOiBTZWxlY3RvcnNTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZXZlbnRzU2VydmljZTogRXZlbnRzU2VydmljZVxyXG4gICAgKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICAgICAgICB0aGlzLm9uRmVlZGJhY2tCdXR0b25DbGljaygpLFxyXG4gICAgICAgICAgICB0aGlzLm9uU3BlY2lmaWNGZWVkYmFja0NsaWNrKCksXHJcbiAgICAgICAgICAgIHRoaXMub25HZW5lcmljRmVlZGJhY2tDbGljaygpLFxyXG4gICAgICAgICAgICB0aGlzLm9uRWxlbWVudFNlbGVjdGVkKCksXHJcbiAgICAgICAgICAgIHRoaXMub25DbG9zZUNsaWNrKCksXHJcbiAgICAgICAgICAgIHRoaXMub25TZW5kQ2xpY2soKVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBvbkVsZW1lbnRTZWxlY3RlZCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3RvcnNTZXJ2aWNlLnByZXZpZXcuc3Vic2NyaWJlKHByZXYgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLm1vZGFsU2VydmljZS5vcGVuV2l0aFByZXZpZXcocHJldik7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBvbkZlZWRiYWNrQnV0dG9uQ2xpY2soKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZXZlbnRzU2VydmljZS5mZWVkYmFja0NsaWNrT2JzZXJ2YWJsZS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLm1vZGFsU2VydmljZS5kcmF3KCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBvblNwZWNpZmljRmVlZGJhY2tDbGljaygpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5ldmVudHNTZXJ2aWNlLnNwZWNpZmljRmVlZGJhY2tDbGlja09ic2VydmFibGUuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5tb2RhbFNlcnZpY2UucmVtb3ZlKCk7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0b3JzU2VydmljZS5lbGVtZW50c0hpZ2hsaWdodCgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgb25HZW5lcmljRmVlZGJhY2tDbGljaygpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5ldmVudHNTZXJ2aWNlLmdlbmVyaWNGZWVkYmFja0NsaWNrT2JzZXJ2YWJsZS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLm1vZGFsU2VydmljZS5yZW1vdmUoKTtcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RvcnNTZXJ2aWNlLnBhZ2VTY3JlZW5zaG90KCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBvbkNsb3NlQ2xpY2soKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZXZlbnRzU2VydmljZS5jbG9zZUNsaWNrQ2xpY2tPYnNlcnZhYmxlLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubW9kYWxTZXJ2aWNlLnJlbW92ZSgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgb25TZW5kQ2xpY2soKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZXZlbnRzU2VydmljZS5vblNlbmRDbGlja09ic2VydmFibGUuc3Vic2NyaWJlKChkYXRhOiBGZWVkYmFja0RhdGEpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5vblNlbmQubmV4dChkYXRhKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKHN1YiA9PiB7XHJcbiAgICAgICAgICAgIHN1Yi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==