ngx-diagrams
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.2.0.
47 lines • 4.3 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: lib/actions/move-items.action.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { BaseAction } from './base.action';
import { LinkModel } from '../models/link.model';
export class MoveItemsAction extends BaseAction {
/**
* @param {?} mouseX
* @param {?} mouseY
* @param {?} diagramEngine
*/
constructor(mouseX, mouseY, diagramEngine) {
super(mouseX, mouseY);
this.moved = false;
/** @type {?} */
let selectedItems = diagramEngine.getDiagramModel().getSelectedItems();
// dont allow items which are locked to move and links which generate their position based on points.
selectedItems = selectedItems.filter((/**
* @param {?} item
* @return {?}
*/
item => {
return !diagramEngine.isModelLocked(item) && !(item instanceof LinkModel);
}));
this.selectionModels = selectedItems.map((/**
* @param {?} item
* @return {?}
*/
(item) => {
const { x: initialX, y: initialY } = item.getCoords();
return {
model: item,
initialX,
initialY
};
}));
}
}
if (false) {
/** @type {?} */
MoveItemsAction.prototype.selectionModels;
/** @type {?} */
MoveItemsAction.prototype.moved;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS1pdGVtcy5hY3Rpb24uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtZGlhZ3JhbXMvIiwic291cmNlcyI6WyJsaWIvYWN0aW9ucy9tb3ZlLWl0ZW1zLmFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWpELE1BQU0sT0FBTyxlQUFnQixTQUFRLFVBQVU7Ozs7OztJQUk5QyxZQUFZLE1BQWMsRUFBRSxNQUFjLEVBQUUsYUFBNEI7UUFDdkUsS0FBSyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQzs7WUFDZixhQUFhLEdBQUcsYUFBYSxDQUFDLGVBQWUsRUFBRSxDQUFDLGdCQUFnQixFQUFFO1FBRXRFLHFHQUFxRztRQUNyRyxhQUFhLEdBQUcsYUFBYSxDQUFDLE1BQU07Ozs7UUFBQyxJQUFJLENBQUMsRUFBRTtZQUMzQyxPQUFPLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxZQUFZLFNBQVMsQ0FBQyxDQUFDO1FBQzNFLENBQUMsRUFBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGVBQWUsR0FBRyxhQUFhLENBQUMsR0FBRzs7OztRQUFDLENBQUMsSUFBNEIsRUFBRSxFQUFFO2tCQUNuRSxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDckQsT0FBTztnQkFDTixLQUFLLEVBQUUsSUFBSTtnQkFDWCxRQUFRO2dCQUNSLFFBQVE7YUFDUixDQUFDO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDSixDQUFDO0NBQ0Q7OztJQXRCQSwwQ0FBa0M7O0lBQ2xDLGdDQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUFjdGlvbiB9IGZyb20gJy4vYmFzZS5hY3Rpb24nO1xuaW1wb3J0IHsgUG9pbnRNb2RlbCB9IGZyb20gJy4uL21vZGVscy9wb2ludC5tb2RlbCc7XG5pbXBvcnQgeyBOb2RlTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvbm9kZS5tb2RlbCc7XG5pbXBvcnQgeyBEaWFncmFtRW5naW5lIH0gZnJvbSAnLi4vc2VydmljZXMvZW5naW5lLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2VsZWN0aW9uTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvbW92ZS1zZWxlY3Rpb24ubW9kZWwnO1xuaW1wb3J0IHsgTGlua01vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL2xpbmsubW9kZWwnO1xuXG5leHBvcnQgY2xhc3MgTW92ZUl0ZW1zQWN0aW9uIGV4dGVuZHMgQmFzZUFjdGlvbiB7XG5cdHNlbGVjdGlvbk1vZGVsczogU2VsZWN0aW9uTW9kZWxbXTtcblx0bW92ZWQ6IGJvb2xlYW47XG5cblx0Y29uc3RydWN0b3IobW91c2VYOiBudW1iZXIsIG1vdXNlWTogbnVtYmVyLCBkaWFncmFtRW5naW5lOiBEaWFncmFtRW5naW5lKSB7XG5cdFx0c3VwZXIobW91c2VYLCBtb3VzZVkpO1xuXHRcdHRoaXMubW92ZWQgPSBmYWxzZTtcblx0XHRsZXQgc2VsZWN0ZWRJdGVtcyA9IGRpYWdyYW1FbmdpbmUuZ2V0RGlhZ3JhbU1vZGVsKCkuZ2V0U2VsZWN0ZWRJdGVtcygpO1xuXG5cdFx0Ly8gZG9udCBhbGxvdyBpdGVtcyB3aGljaCBhcmUgbG9ja2VkIHRvIG1vdmUgYW5kIGxpbmtzIHdoaWNoIGdlbmVyYXRlIHRoZWlyIHBvc2l0aW9uIGJhc2VkIG9uIHBvaW50cy5cblx0XHRzZWxlY3RlZEl0ZW1zID0gc2VsZWN0ZWRJdGVtcy5maWx0ZXIoaXRlbSA9PiB7XG5cdFx0XHRyZXR1cm4gIWRpYWdyYW1FbmdpbmUuaXNNb2RlbExvY2tlZChpdGVtKSAmJiAhKGl0ZW0gaW5zdGFuY2VvZiBMaW5rTW9kZWwpO1xuXHRcdH0pO1xuXG5cdFx0dGhpcy5zZWxlY3Rpb25Nb2RlbHMgPSBzZWxlY3RlZEl0ZW1zLm1hcCgoaXRlbTogUG9pbnRNb2RlbCB8IE5vZGVNb2RlbCkgPT4ge1xuXHRcdFx0Y29uc3QgeyB4OiBpbml0aWFsWCwgeTogaW5pdGlhbFkgfSA9IGl0ZW0uZ2V0Q29vcmRzKCk7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRtb2RlbDogaXRlbSxcblx0XHRcdFx0aW5pdGlhbFgsXG5cdFx0XHRcdGluaXRpYWxZXG5cdFx0XHR9O1xuXHRcdH0pO1xuXHR9XG59XG4iXX0=