UNPKG

@aurigma/design-atoms-model

Version:

Design Atoms is a part of Customer's Canvas SDK which allows for manipulating individual design elements through your code.

58 lines 2.4 kB
import { EventObject } from "../../EventObject"; import { ImagePermissions } from "./ImagePermissions"; import { BarcodePermissions } from "./BarcodePermissions"; import { ArgumentException } from "../../Exception"; import { equals } from "../../Utils/Utils"; export class ContentPermissions { constructor() { this._onPermissionsChanged = () => { this.propertyChanged.notify(); }; this.propertyChanged = new EventObject(); this._imagePermissions = new ImagePermissions(); this._barcodePermissions = new BarcodePermissions(); this._imagePermissions.propertyChanged.add(this._onPermissionsChanged); this._barcodePermissions.propertyChanged.add(this._onPermissionsChanged); } get barcodePermissions() { return this._barcodePermissions; } set barcodePermissions(value) { if (value == null) { throw new ArgumentException("barcodePermissions cannot be null"); } this._barcodePermissions.propertyChanged.remove(this._onPermissionsChanged); this._barcodePermissions = value; this._barcodePermissions.propertyChanged.add(this._onPermissionsChanged); this._onPermissionsChanged(); } get imagePermissions() { return this._imagePermissions; } set imagePermissions(value) { if (value == null) { throw new ArgumentException("imagePermissions cannot be null"); } this._imagePermissions.propertyChanged.remove(this._onPermissionsChanged); this._imagePermissions = value; this._imagePermissions.propertyChanged.add(this._onPermissionsChanged); this._onPermissionsChanged(); } getSimplifiedObject() { return { imagePermissions: this.imagePermissions.getSimplifiedObject(), barcodePermissions: this.barcodePermissions.getSimplifiedObject() }; } clone() { const clone = new ContentPermissions(); clone.barcodePermissions = this.barcodePermissions.clone(); clone.imagePermissions = this.imagePermissions.clone(); return clone; } equals(p) { return equals(this.barcodePermissions, p.barcodePermissions) && equals(this.imagePermissions, p.imagePermissions); } } //# sourceMappingURL=ContentPermissions.js.map