ngx-diagrams
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.2.0.
94 lines • 6.44 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: lib/models/point.model.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { BaseModel } from './base.model';
import { BehaviorSubject } from 'rxjs';
import { distinctUntilChanged, map, takeUntil } from 'rxjs/operators';
export class PointModel extends BaseModel {
/**
* @param {?} link
* @param {?} __1
*/
constructor(link, { x, y }) {
super();
this._coords = new BehaviorSubject({ x, y });
this.coords$ = this._coords.asObservable();
this.setParent(link);
}
/**
* @return {?}
*/
isConnectedToPort() {
return this.getParent().getPortForPoint(this) !== null;
}
/**
* @return {?}
*/
getLink() {
return this.getParent();
}
/**
* @param {?=} options
* @return {?}
*/
destroy(options) {
if (this.getParent) {
this.getParent().removePoint(this);
}
super.destroy(options);
}
/**
* @param {?} newCoords
* @return {?}
*/
setCoords(newCoords) {
this._coords.next(Object.assign({}, this._coords.getValue(), newCoords));
}
/**
* @return {?}
*/
selectCoords() {
return this.coords$.pipe(takeUntil(this.onEntityDestroy()), distinctUntilChanged());
}
/**
* @return {?}
*/
getCoords() {
return this._coords.getValue();
}
/**
* @return {?}
*/
selectX() {
return this.selectCoords().pipe(map((/**
* @param {?} c
* @return {?}
*/
c => c.x)), distinctUntilChanged());
}
/**
* @return {?}
*/
selectY() {
return this.selectCoords().pipe(map((/**
* @param {?} c
* @return {?}
*/
c => c.y)), distinctUntilChanged());
}
}
if (false) {
/**
* @type {?}
* @private
*/
PointModel.prototype._coords;
/**
* @type {?}
* @private
*/
PointModel.prototype.coords$;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pbnQubW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtZGlhZ3JhbXMvIiwic291cmNlcyI6WyJsaWIvbW9kZWxzL3BvaW50Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUV6QyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHdEUsTUFBTSxPQUFPLFVBQVcsU0FBUSxTQUFvQjs7Ozs7SUFJbkQsWUFBWSxJQUFlLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFVO1FBQzVDLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMzQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RCLENBQUM7Ozs7SUFFRCxpQkFBaUI7UUFDaEIsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQztJQUN4RCxDQUFDOzs7O0lBRUQsT0FBTztRQUNOLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3pCLENBQUM7Ozs7O0lBRUQsT0FBTyxDQUFDLE9BQXdCO1FBQy9CLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNuQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ25DO1FBRUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4QixDQUFDOzs7OztJQUVELFNBQVMsQ0FBQyxTQUEwQjtRQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksbUJBQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBSyxTQUFTLEVBQUcsQ0FBQztJQUNqRSxDQUFDOzs7O0lBRUQsWUFBWTtRQUNYLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxFQUFFLG9CQUFvQixFQUFFLENBQUMsQ0FBQztJQUNyRixDQUFDOzs7O0lBRUQsU0FBUztRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNoQyxDQUFDOzs7O0lBRUQsT0FBTztRQUNOLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FDOUIsR0FBRzs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxFQUNiLG9CQUFvQixFQUFFLENBQ3RCLENBQUM7SUFDSCxDQUFDOzs7O0lBRUQsT0FBTztRQUNOLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FDOUIsR0FBRzs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxFQUNiLG9CQUFvQixFQUFFLENBQ3RCLENBQUM7SUFDSCxDQUFDO0NBQ0Q7Ozs7OztJQW5EQSw2QkFBa0Q7Ozs7O0lBQ2xELDZCQUE2QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VNb2RlbCB9IGZyb20gJy4vYmFzZS5tb2RlbCc7XG5pbXBvcnQgeyBMaW5rTW9kZWwgfSBmcm9tICcuL2xpbmsubW9kZWwnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb29yZHMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2Nvb3Jkcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRGVzdHJveU9wdGlvbnMgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGNsYXNzIFBvaW50TW9kZWwgZXh0ZW5kcyBCYXNlTW9kZWw8TGlua01vZGVsPiB7XG5cdHByaXZhdGUgcmVhZG9ubHkgX2Nvb3JkczogQmVoYXZpb3JTdWJqZWN0PENvb3Jkcz47XG5cdHByaXZhdGUgcmVhZG9ubHkgY29vcmRzJDogT2JzZXJ2YWJsZTxDb29yZHM+O1xuXG5cdGNvbnN0cnVjdG9yKGxpbms6IExpbmtNb2RlbCwgeyB4LCB5IH06IENvb3Jkcykge1xuXHRcdHN1cGVyKCk7XG5cdFx0dGhpcy5fY29vcmRzID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDb29yZHM+KHsgeCwgeSB9KTtcblx0XHR0aGlzLmNvb3JkcyQgPSB0aGlzLl9jb29yZHMuYXNPYnNlcnZhYmxlKCk7XG5cdFx0dGhpcy5zZXRQYXJlbnQobGluayk7XG5cdH1cblxuXHRpc0Nvbm5lY3RlZFRvUG9ydCgpIHtcblx0XHRyZXR1cm4gdGhpcy5nZXRQYXJlbnQoKS5nZXRQb3J0Rm9yUG9pbnQodGhpcykgIT09IG51bGw7XG5cdH1cblxuXHRnZXRMaW5rKCk6IExpbmtNb2RlbCB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0UGFyZW50KCk7XG5cdH1cblxuXHRkZXN0cm95KG9wdGlvbnM/OiBEZXN0cm95T3B0aW9ucykge1xuXHRcdGlmICh0aGlzLmdldFBhcmVudCkge1xuXHRcdFx0dGhpcy5nZXRQYXJlbnQoKS5yZW1vdmVQb2ludCh0aGlzKTtcblx0XHR9XG5cblx0XHRzdXBlci5kZXN0cm95KG9wdGlvbnMpO1xuXHR9XG5cblx0c2V0Q29vcmRzKG5ld0Nvb3JkczogUGFydGlhbDxDb29yZHM+KSB7XG5cdFx0dGhpcy5fY29vcmRzLm5leHQoeyAuLi50aGlzLl9jb29yZHMuZ2V0VmFsdWUoKSwgLi4ubmV3Q29vcmRzIH0pO1xuXHR9XG5cblx0c2VsZWN0Q29vcmRzKCk6IE9ic2VydmFibGU8Q29vcmRzPiB7XG5cdFx0cmV0dXJuIHRoaXMuY29vcmRzJC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRW50aXR5RGVzdHJveSgpKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XG5cdH1cblxuXHRnZXRDb29yZHMoKTogQ29vcmRzIHtcblx0XHRyZXR1cm4gdGhpcy5fY29vcmRzLmdldFZhbHVlKCk7XG5cdH1cblxuXHRzZWxlY3RYKCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG5cdFx0cmV0dXJuIHRoaXMuc2VsZWN0Q29vcmRzKCkucGlwZShcblx0XHRcdG1hcChjID0+IGMueCksXG5cdFx0XHRkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG5cdFx0KTtcblx0fVxuXG5cdHNlbGVjdFkoKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcblx0XHRyZXR1cm4gdGhpcy5zZWxlY3RDb29yZHMoKS5waXBlKFxuXHRcdFx0bWFwKGMgPT4gYy55KSxcblx0XHRcdGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcblx0XHQpO1xuXHR9XG59XG4iXX0=