@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
JavaScript
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