UNPKG

@synerty/vortexjs

Version:

Custom observable data serialisation and routing based on Angular 2+

50 lines 6.15 kB
import { Component, } from "@angular/core"; import { Subject } from "rxjs"; import * as i0 from "@angular/core"; export class NgLifeCycleEvents { onInitEvent = new Subject(); afterViewInitEvent = new Subject(); onDestroyEvent = new Subject(); doCheckEvent = new Subject(); ngOnInit() { this.onInitEvent.next(); } ngAfterViewInit() { this.afterViewInitEvent.next(); } ngDoCheck() { this.doCheckEvent.next(); } ngOnDestroy() { this.onDestroyEvent.next(); if (this.onDestroyEvent["observers"] != null) { for (let observer of this.onDestroyEvent["observers"]) { observer["unsubscribe"](); } } if (this.doCheckEvent["observers"] != null) { for (let observer of this.doCheckEvent["observers"]) { observer["unsubscribe"](); } } if (this.onInitEvent["observers"] != null) { for (let observer of this.onInitEvent["observers"]) { observer["unsubscribe"](); } } if (this.afterViewInitEvent["observers"] != null) { for (let observer of this.afterViewInitEvent["observers"]) { observer["unsubscribe"](); } } } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgLifeCycleEvents, deps: [], target: i0.ɵɵFactoryTarget.Component }); static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NgLifeCycleEvents, selector: "ng-component", ngImport: i0, template: "", isInline: true }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgLifeCycleEvents, decorators: [{ type: Component, args: [{ template: "", }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmdMaWZlQ3ljbGVFdmVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbC9OZ0xpZmVDeWNsZUV2ZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsU0FBUyxHQUlaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxpQkFBaUI7SUFHMUIsV0FBVyxHQUFrQixJQUFJLE9BQU8sRUFBUSxDQUFDO0lBQ2pELGtCQUFrQixHQUFrQixJQUFJLE9BQU8sRUFBUSxDQUFDO0lBQ3hELGNBQWMsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUNwRCxZQUFZLEdBQWtCLElBQUksT0FBTyxFQUFRLENBQUM7SUFFbEQsUUFBUTtRQUNKLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVELFNBQVM7UUFDTCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUUzQixJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLElBQUksSUFBSSxFQUFFO1lBQzFDLEtBQUssSUFBSSxRQUFRLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsRUFBRTtnQkFDbkQsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7YUFDN0I7U0FDSjtRQUVELElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDeEMsS0FBSyxJQUFJLFFBQVEsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxFQUFFO2dCQUNqRCxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQzthQUM3QjtTQUNKO1FBRUQsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLElBQUksRUFBRTtZQUN2QyxLQUFLLElBQUksUUFBUSxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLEVBQUU7Z0JBQ2hELFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO2FBQzdCO1NBQ0o7UUFFRCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDOUMsS0FBSyxJQUFJLFFBQVEsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLEVBQUU7Z0JBQ3ZELFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO2FBQzdCO1NBQ0o7SUFDTCxDQUFDO3dHQTlDUSxpQkFBaUI7NEZBQWpCLGlCQUFpQixvREFGaEIsRUFBRTs7NEZBRUgsaUJBQWlCO2tCQUg3QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxFQUFFO2lCQUNmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENvbXBvbmVudCxcbiAgICBEb0NoZWNrLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGU6IFwiXCIsXG59KVxuZXhwb3J0IGNsYXNzIE5nTGlmZUN5Y2xlRXZlbnRzXG4gICAgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgRG9DaGVja1xue1xuICAgIG9uSW5pdEV2ZW50OiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBhZnRlclZpZXdJbml0RXZlbnQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIG9uRGVzdHJveUV2ZW50OiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBkb0NoZWNrRXZlbnQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMub25Jbml0RXZlbnQubmV4dCgpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgdGhpcy5hZnRlclZpZXdJbml0RXZlbnQubmV4dCgpO1xuICAgIH1cblxuICAgIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kb0NoZWNrRXZlbnQubmV4dCgpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLm9uRGVzdHJveUV2ZW50Lm5leHQoKTtcblxuICAgICAgICBpZiAodGhpcy5vbkRlc3Ryb3lFdmVudFtcIm9ic2VydmVyc1wiXSAhPSBudWxsKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBvYnNlcnZlciBvZiB0aGlzLm9uRGVzdHJveUV2ZW50W1wib2JzZXJ2ZXJzXCJdKSB7XG4gICAgICAgICAgICAgICAgb2JzZXJ2ZXJbXCJ1bnN1YnNjcmliZVwiXSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuZG9DaGVja0V2ZW50W1wib2JzZXJ2ZXJzXCJdICE9IG51bGwpIHtcbiAgICAgICAgICAgIGZvciAobGV0IG9ic2VydmVyIG9mIHRoaXMuZG9DaGVja0V2ZW50W1wib2JzZXJ2ZXJzXCJdKSB7XG4gICAgICAgICAgICAgICAgb2JzZXJ2ZXJbXCJ1bnN1YnNjcmliZVwiXSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMub25Jbml0RXZlbnRbXCJvYnNlcnZlcnNcIl0gIT0gbnVsbCkge1xuICAgICAgICAgICAgZm9yIChsZXQgb2JzZXJ2ZXIgb2YgdGhpcy5vbkluaXRFdmVudFtcIm9ic2VydmVyc1wiXSkge1xuICAgICAgICAgICAgICAgIG9ic2VydmVyW1widW5zdWJzY3JpYmVcIl0oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmFmdGVyVmlld0luaXRFdmVudFtcIm9ic2VydmVyc1wiXSAhPSBudWxsKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBvYnNlcnZlciBvZiB0aGlzLmFmdGVyVmlld0luaXRFdmVudFtcIm9ic2VydmVyc1wiXSkge1xuICAgICAgICAgICAgICAgIG9ic2VydmVyW1widW5zdWJzY3JpYmVcIl0oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZ09uRGVzdHJveUV2ZW50SSB7XG4gICAgb25EZXN0cm95RXZlbnQ6IFN1YmplY3Q8dm9pZD4gfCBPYnNlcnZhYmxlPHZvaWQ+O1xufVxuIl19