UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

43 lines 4.15 kB
import { Injectable } from '@angular/core'; import { cloneDeep } from 'lodash-es'; import * as i0 from "@angular/core"; /** * Holds current state of dashboard children during edit mode. */ export class DashboardOriginatorService { /** * Current dashboard children state name for indicating what change will be undone. */ get currentStateName() { return this.state?.name; } /** * Initializes dashboard children state on edit mode start. * @param state Dashboard children initial state. */ initState(state) { this.state = state; } /** * Updates dashboard children state when it is changed or restored with undo/redo. * @param state Dashboard children updated state. */ setState(state) { this.state = state; } /** * Returns copy of current state. */ getState() { return cloneDeep(this.state); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DashboardOriginatorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DashboardOriginatorService, providedIn: 'root' }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DashboardOriginatorService, decorators: [{ type: Injectable, args: [{ providedIn: 'root' }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLW9yaWdpbmF0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvbnRleHQtZGFzaGJvYXJkL21lbWVudG8vZGFzaGJvYXJkLW9yaWdpbmF0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7O0FBRXRDOztHQUVHO0FBSUgsTUFBTSxPQUFPLDBCQUEwQjtJQUNyQzs7T0FFRztJQUNILElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUM7SUFDMUIsQ0FBQztJQU1EOzs7T0FHRztJQUNILFNBQVMsQ0FBQyxLQUE2QjtRQUNyQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBQ0Q7OztPQUdHO0lBQ0gsUUFBUSxDQUFDLEtBQTZCO1FBQ3BDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFDRDs7T0FFRztJQUNILFFBQVE7UUFDTixPQUFPLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQzsrR0EvQlUsMEJBQTBCO21IQUExQiwwQkFBMEIsY0FGekIsTUFBTTs7NEZBRVAsMEJBQTBCO2tCQUh0QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERhc2hib2FyZENoaWxkcmVuU3RhdGUgfSBmcm9tICcuLi9jb250ZXh0LWRhc2hib2FyZC5tb2RlbCc7XG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG4vKipcbiAqIEhvbGRzIGN1cnJlbnQgc3RhdGUgb2YgZGFzaGJvYXJkIGNoaWxkcmVuIGR1cmluZyBlZGl0IG1vZGUuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERhc2hib2FyZE9yaWdpbmF0b3JTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIEN1cnJlbnQgZGFzaGJvYXJkIGNoaWxkcmVuIHN0YXRlIG5hbWUgZm9yIGluZGljYXRpbmcgd2hhdCBjaGFuZ2Ugd2lsbCBiZSB1bmRvbmUuXG4gICAqL1xuICBnZXQgY3VycmVudFN0YXRlTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnN0YXRlPy5uYW1lO1xuICB9XG4gIC8qKlxuICAgKiBDdXJyZW50IGRhc2hib2FyZCBjaGlsZHJlbiBzdGF0ZS5cbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgc3RhdGU6IERhc2hib2FyZENoaWxkcmVuU3RhdGU7XG4gIC8qKlxuICAgKiBJbml0aWFsaXplcyBkYXNoYm9hcmQgY2hpbGRyZW4gc3RhdGUgb24gZWRpdCBtb2RlIHN0YXJ0LlxuICAgKiBAcGFyYW0gc3RhdGUgRGFzaGJvYXJkIGNoaWxkcmVuIGluaXRpYWwgc3RhdGUuXG4gICAqL1xuICBpbml0U3RhdGUoc3RhdGU6IERhc2hib2FyZENoaWxkcmVuU3RhdGUpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlID0gc3RhdGU7XG4gIH1cbiAgLyoqXG4gICAqIFVwZGF0ZXMgZGFzaGJvYXJkIGNoaWxkcmVuIHN0YXRlIHdoZW4gaXQgaXMgY2hhbmdlZCBvciByZXN0b3JlZCB3aXRoIHVuZG8vcmVkby5cbiAgICogQHBhcmFtIHN0YXRlIERhc2hib2FyZCBjaGlsZHJlbiB1cGRhdGVkIHN0YXRlLlxuICAgKi9cbiAgc2V0U3RhdGUoc3RhdGU6IERhc2hib2FyZENoaWxkcmVuU3RhdGUpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlID0gc3RhdGU7XG4gIH1cbiAgLyoqXG4gICAqIFJldHVybnMgY29weSBvZiBjdXJyZW50IHN0YXRlLlxuICAgKi9cbiAgZ2V0U3RhdGUoKTogRGFzaGJvYXJkQ2hpbGRyZW5TdGF0ZSB7XG4gICAgcmV0dXJuIGNsb25lRGVlcCh0aGlzLnN0YXRlKTtcbiAgfVxufVxuIl19