ngx-diagrams
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.2.0.
154 lines • 9.57 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: lib/models/base.model.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { BaseEntity } from '../base.entity';
import { BehaviorSubject } from 'rxjs';
import { map, takeUntil } from 'rxjs/operators';
import { PaintedEvent, ParentChangeEvent, SelectionEvent } from '../interfaces/event.interface';
/**
* @template X
*/
export class BaseModel extends BaseEntity {
/**
* @param {?=} type
* @param {?=} id
* @param {?=} logPrefix
*/
constructor(type, id, logPrefix = '[Base]') {
super(id, logPrefix);
this._parent = new BehaviorSubject(null);
this._parent$ = this._parent.asObservable();
this._selected = new BehaviorSubject(false);
this._selected$ = this._selected.asObservable();
this._painted = new BehaviorSubject(false);
this._painted$ = this._painted.asObservable();
this._type = type;
}
/**
* @return {?}
*/
getParent() {
return this._parent.getValue();
}
/**
* @param {?} parent
* @return {?}
*/
setParent(parent) {
this._parent.next(parent);
}
/**
* @return {?}
*/
parentChanges() {
return this._parent$.pipe(takeUntil(this.onEntityDestroy()), map((/**
* @param {?} p
* @return {?}
*/
p => new ParentChangeEvent(this, p))));
}
/**
* @return {?}
*/
getPainted() {
return this._painted.getValue();
}
/**
* @param {?=} painted
* @return {?}
*/
setPainted(painted = true) {
this._painted.next(painted);
}
/**
* @return {?}
*/
paintChanges() {
return this._painted$.pipe(takeUntil(this.onEntityDestroy()), map((/**
* @param {?} p
* @return {?}
*/
p => new PaintedEvent(this, p))));
}
/**
* @return {?}
*/
getType() {
return this._type;
}
/**
* @return {?}
*/
getSelected() {
return this._selected.getValue();
}
/**
* @return {?}
*/
selectSelected() {
return this._selected.asObservable();
}
/**
* @param {?=} selected
* @return {?}
*/
setSelected(selected = true) {
this._selected.next(selected);
}
/**
* @return {?}
*/
selectionChanges() {
return this._selected$.pipe(takeUntil(this.onEntityDestroy()), map((/**
* @param {?} s
* @return {?}
*/
s => new SelectionEvent(this, s))), this.withLog('selectionChanges'));
}
/**
* @return {?}
*/
getSelectedEntities() {
return this._selected.value ? [this] : [];
}
}
if (false) {
/**
* @type {?}
* @private
*/
BaseModel.prototype._type;
/**
* @type {?}
* @private
*/
BaseModel.prototype._parent;
/**
* @type {?}
* @private
*/
BaseModel.prototype._parent$;
/**
* @type {?}
* @private
*/
BaseModel.prototype._selected;
/**
* @type {?}
* @private
*/
BaseModel.prototype._selected$;
/**
* @type {?}
* @private
*/
BaseModel.prototype._painted;
/**
* @type {?}
* @private
*/
BaseModel.prototype._painted$;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1kaWFncmFtcy8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvYmFzZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7OztBQUVoRyxNQUFNLE9BQU8sU0FBNkMsU0FBUSxVQUFVOzs7Ozs7SUFTM0UsWUFBWSxJQUFhLEVBQUUsRUFBVyxFQUFFLFNBQVMsR0FBRyxRQUFRO1FBQzNELEtBQUssQ0FBQyxFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFSTCxZQUFPLEdBQXVCLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hELGFBQVEsR0FBa0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN0RCxjQUFTLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pFLGVBQVUsR0FBd0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNoRSxhQUFRLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hFLGNBQVMsR0FBd0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUk5RSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDOzs7O0lBRUQsU0FBUztRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNoQyxDQUFDOzs7OztJQUVELFNBQVMsQ0FBQyxNQUFTO1FBQ2xCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzNCLENBQUM7Ozs7SUFFRCxhQUFhO1FBQ1osT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDeEIsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxFQUNqQyxHQUFHOzs7O1FBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLGlCQUFpQixDQUFJLElBQUksRUFBRSxDQUFDLENBQUMsRUFBQyxDQUMzQyxDQUFDO0lBQ0gsQ0FBQzs7OztJQUVELFVBQVU7UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDakMsQ0FBQzs7Ozs7SUFFRCxVQUFVLENBQUMsVUFBbUIsSUFBSTtRQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM3QixDQUFDOzs7O0lBRUQsWUFBWTtRQUNYLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQ3pCLFNBQVMsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsRUFDakMsR0FBRzs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFDLENBQ25DLENBQUM7SUFDSCxDQUFDOzs7O0lBRUQsT0FBTztRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNuQixDQUFDOzs7O0lBRUQsV0FBVztRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNsQyxDQUFDOzs7O0lBRUQsY0FBYztRQUNiLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QyxDQUFDOzs7OztJQUVELFdBQVcsQ0FBQyxXQUFvQixJQUFJO1FBQ25DLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQy9CLENBQUM7Ozs7SUFFRCxnQkFBZ0I7UUFDZixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixTQUFTLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLEVBQ2pDLEdBQUc7Ozs7UUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBQyxFQUNyQyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQ2hDLENBQUM7SUFDSCxDQUFDOzs7O0lBRUQsbUJBQW1CO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0NBQ0Q7Ozs7OztJQXRFQSwwQkFBK0I7Ozs7O0lBQy9CLDRCQUF5RTs7Ozs7SUFDekUsNkJBQXVFOzs7OztJQUN2RSw4QkFBa0Y7Ozs7O0lBQ2xGLCtCQUFpRjs7Ozs7SUFDakYsNkJBQWlGOzs7OztJQUNqRiw4QkFBK0UiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRW50aXR5IH0gZnJvbSAnLi4vYmFzZS5lbnRpdHknO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFBhaW50ZWRFdmVudCwgUGFyZW50Q2hhbmdlRXZlbnQsIFNlbGVjdGlvbkV2ZW50IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9ldmVudC5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY2xhc3MgQmFzZU1vZGVsPFggZXh0ZW5kcyBCYXNlRW50aXR5ID0gQmFzZUVudGl0eT4gZXh0ZW5kcyBCYXNlRW50aXR5IHtcblx0cHJpdmF0ZSByZWFkb25seSBfdHlwZTogc3RyaW5nO1xuXHRwcml2YXRlIHJlYWRvbmx5IF9wYXJlbnQ6IEJlaGF2aW9yU3ViamVjdDxYPiA9IG5ldyBCZWhhdmlvclN1YmplY3QobnVsbCk7XG5cdHByaXZhdGUgcmVhZG9ubHkgX3BhcmVudCQ6IE9ic2VydmFibGU8WD4gPSB0aGlzLl9wYXJlbnQuYXNPYnNlcnZhYmxlKCk7XG5cdHByaXZhdGUgcmVhZG9ubHkgX3NlbGVjdGVkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblx0cHJpdmF0ZSByZWFkb25seSBfc2VsZWN0ZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5fc2VsZWN0ZWQuYXNPYnNlcnZhYmxlKCk7XG5cdHByaXZhdGUgcmVhZG9ubHkgX3BhaW50ZWQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXHRwcml2YXRlIHJlYWRvbmx5IF9wYWludGVkJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuX3BhaW50ZWQuYXNPYnNlcnZhYmxlKCk7XG5cblx0Y29uc3RydWN0b3IodHlwZT86IHN0cmluZywgaWQ/OiBzdHJpbmcsIGxvZ1ByZWZpeCA9ICdbQmFzZV0nKSB7XG5cdFx0c3VwZXIoaWQsIGxvZ1ByZWZpeCk7XG5cdFx0dGhpcy5fdHlwZSA9IHR5cGU7XG5cdH1cblxuXHRnZXRQYXJlbnQoKTogWCB7XG5cdFx0cmV0dXJuIHRoaXMuX3BhcmVudC5nZXRWYWx1ZSgpO1xuXHR9XG5cblx0c2V0UGFyZW50KHBhcmVudDogWCk6IHZvaWQge1xuXHRcdHRoaXMuX3BhcmVudC5uZXh0KHBhcmVudCk7XG5cdH1cblxuXHRwYXJlbnRDaGFuZ2VzKCk6IE9ic2VydmFibGU8UGFyZW50Q2hhbmdlRXZlbnQ8WD4+IHtcblx0XHRyZXR1cm4gdGhpcy5fcGFyZW50JC5waXBlKFxuXHRcdFx0dGFrZVVudGlsKHRoaXMub25FbnRpdHlEZXN0cm95KCkpLFxuXHRcdFx0bWFwKHAgPT4gbmV3IFBhcmVudENoYW5nZUV2ZW50PFg+KHRoaXMsIHApKVxuXHRcdCk7XG5cdH1cblxuXHRnZXRQYWludGVkKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLl9wYWludGVkLmdldFZhbHVlKCk7XG5cdH1cblxuXHRzZXRQYWludGVkKHBhaW50ZWQ6IGJvb2xlYW4gPSB0cnVlKSB7XG5cdFx0dGhpcy5fcGFpbnRlZC5uZXh0KHBhaW50ZWQpO1xuXHR9XG5cblx0cGFpbnRDaGFuZ2VzKCk6IE9ic2VydmFibGU8UGFpbnRlZEV2ZW50PiB7XG5cdFx0cmV0dXJuIHRoaXMuX3BhaW50ZWQkLnBpcGUoXG5cdFx0XHR0YWtlVW50aWwodGhpcy5vbkVudGl0eURlc3Ryb3koKSksXG5cdFx0XHRtYXAocCA9PiBuZXcgUGFpbnRlZEV2ZW50KHRoaXMsIHApKVxuXHRcdCk7XG5cdH1cblxuXHRnZXRUeXBlKCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIHRoaXMuX3R5cGU7XG5cdH1cblxuXHRnZXRTZWxlY3RlZCgpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gdGhpcy5fc2VsZWN0ZWQuZ2V0VmFsdWUoKTtcblx0fVxuXG5cdHNlbGVjdFNlbGVjdGVkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuXHRcdHJldHVybiB0aGlzLl9zZWxlY3RlZC5hc09ic2VydmFibGUoKTtcblx0fVxuXG5cdHNldFNlbGVjdGVkKHNlbGVjdGVkOiBib29sZWFuID0gdHJ1ZSkge1xuXHRcdHRoaXMuX3NlbGVjdGVkLm5leHQoc2VsZWN0ZWQpO1xuXHR9XG5cblx0c2VsZWN0aW9uQ2hhbmdlcygpOiBPYnNlcnZhYmxlPFNlbGVjdGlvbkV2ZW50PiB7XG5cdFx0cmV0dXJuIHRoaXMuX3NlbGVjdGVkJC5waXBlKFxuXHRcdFx0dGFrZVVudGlsKHRoaXMub25FbnRpdHlEZXN0cm95KCkpLFxuXHRcdFx0bWFwKHMgPT4gbmV3IFNlbGVjdGlvbkV2ZW50KHRoaXMsIHMpKSxcblx0XHRcdHRoaXMud2l0aExvZygnc2VsZWN0aW9uQ2hhbmdlcycpXG5cdFx0KTtcblx0fVxuXG5cdGdldFNlbGVjdGVkRW50aXRpZXMoKTogQmFzZU1vZGVsW10ge1xuXHRcdHJldHVybiB0aGlzLl9zZWxlY3RlZC52YWx1ZSA/IFt0aGlzXSA6IFtdO1xuXHR9XG59XG4iXX0=