ngx-feedback
Version:
Angular Feedback Library
156 lines • 10.7 kB
JavaScript
/**
* @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==