@idraw/core 0.4.0-beta.32 → 0.4.0-beta.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import { formatNumber, getViewScaleInfoFromSnapshot, getViewSizeInfoFromSnapshot, createUUID, limitAngle, rotatePoint, parseAngleToRadian } from '@idraw/util';
2
- import { keySelectedElementList, keyActionType, keyGroupQueue } from '../selector';
2
+ import { keySelectedElementList, keyHoverElement, keyActionType, keyGroupQueue } from '../selector';
3
3
  import { drawSizeInfoText, drawPositionInfoText, drawAngleInfoText } from './draw-info';
4
4
  import { defaltStyle } from './config';
5
5
  const infoFontSize = 10;
@@ -16,11 +16,13 @@ export const MiddlewareInfo = (opts, config) => {
16
16
  return {
17
17
  name: '@middleware/info',
18
18
  beforeDrawFrame({ snapshot }) {
19
+ var _a;
19
20
  const { sharedStore } = snapshot;
20
21
  const selectedElementList = sharedStore[keySelectedElementList];
22
+ const hoverElement = sharedStore[keyHoverElement];
21
23
  const actionType = sharedStore[keyActionType];
22
24
  const groupQueue = sharedStore[keyGroupQueue] || [];
23
- if (selectedElementList.length === 1) {
25
+ if (selectedElementList.length === 1 && !((_a = hoverElement === null || hoverElement === void 0 ? void 0 : hoverElement.operations) === null || _a === void 0 ? void 0 : _a.locked)) {
24
26
  const elem = selectedElementList[0];
25
27
  if (elem && ['select', 'drag', 'resize'].includes(actionType)) {
26
28
  const viewScaleInfo = getViewScaleInfoFromSnapshot(snapshot);
@@ -1,3 +1,3 @@
1
- import { keySelectedElementList, keyActionType, keyGroupQueue } from '../selector';
1
+ import { keySelectedElementList, keyHoverElement, keyActionType, keyGroupQueue } from '../selector';
2
2
  import type { DeepSelectorSharedStorage } from '../selector';
3
- export type DeepInfoSharedStorage = Pick<DeepSelectorSharedStorage, typeof keySelectedElementList | typeof keyActionType | typeof keyGroupQueue>;
3
+ export type DeepInfoSharedStorage = Pick<DeepSelectorSharedStorage, typeof keySelectedElementList | typeof keyHoverElement | typeof keyActionType | typeof keyGroupQueue>;
@@ -1,11 +1,11 @@
1
- import type { Element, ElementType, PointSize, RendererDrawElementOptions, ViewContext2D, ViewRectVertexes, ViewScaleInfo, ViewSizeInfo, ElementSizeController, ViewCalculator } from '@idraw/types';
2
- import type { AreaSize, MiddlewareSelectorStyle } from './types';
1
+ import type { Element, ElementType, PointSize, RendererDrawElementOptions, ViewContext2D, ViewRectVertexes, ViewScaleInfo, ViewSizeInfo, ElementSizeController, ViewCalculator, MiddlewareSelectorStyle } from '@idraw/types';
2
+ import type { AreaSize } from './types';
3
3
  export declare function drawHoverVertexesWrapper(ctx: ViewContext2D, vertexes: ViewRectVertexes | null, opts: {
4
4
  viewScaleInfo: ViewScaleInfo;
5
5
  viewSizeInfo: ViewSizeInfo;
6
6
  style: MiddlewareSelectorStyle;
7
7
  }): void;
8
- export declare function drawLockVertexesWrapper(ctx: ViewContext2D, vertexes: ViewRectVertexes | null, opts: {
8
+ export declare function drawLockedVertexesWrapper(ctx: ViewContext2D, vertexes: ViewRectVertexes | null, opts: {
9
9
  viewScaleInfo: ViewScaleInfo;
10
10
  viewSizeInfo: ViewSizeInfo;
11
11
  controller?: ElementSizeController | null;
@@ -10,7 +10,7 @@ export function drawHoverVertexesWrapper(ctx, vertexes, opts) {
10
10
  const wrapperOpts = { borderColor: activeColor, borderWidth: 1, background: 'transparent', lineDash: [] };
11
11
  drawVertexes(ctx, calcViewVertexes(vertexes, opts), wrapperOpts);
12
12
  }
13
- export function drawLockVertexesWrapper(ctx, vertexes, opts) {
13
+ export function drawLockedVertexesWrapper(ctx, vertexes, opts) {
14
14
  if (!vertexes) {
15
15
  return;
16
16
  }
@@ -1,5 +1,5 @@
1
- import { is, calcElementsViewInfo, calcElementVertexesInGroup, calcElementQueueVertexesQueueInGroup, calcElementSizeController, calcElementCenterFromVertexes, rotatePointInGroup, getGroupQueueFromList, findElementsFromList, findElementsFromListByPositions, getElementPositionFromList, deepResizeGroupElement } from '@idraw/util';
2
- import { drawHoverVertexesWrapper, drawLockVertexesWrapper, drawArea, drawListArea, drawGroupQueueVertexesWrappers, drawSelectedElementControllersVertexes } from './draw-wrapper';
1
+ import { is, calcElementsViewInfo, calcElementVertexesInGroup, calcElementQueueVertexesQueueInGroup, calcElementSizeController, calcElementCenterFromVertexes, rotatePointInGroup, getGroupQueueFromList, findElementsFromList, findElementsFromListByPositions, getElementPositionFromList, deepResizeGroupElement, getElementSize } from '@idraw/util';
2
+ import { drawHoverVertexesWrapper, drawLockedVertexesWrapper, drawArea, drawListArea, drawGroupQueueVertexesWrappers, drawSelectedElementControllersVertexes } from './draw-wrapper';
3
3
  import { drawReferenceLines } from './draw-reference';
4
4
  import { getPointTarget, resizeElement, rotateElement, getSelectedListArea, calcSelectedElementsArea, isElementInGroup, isPointInViewActiveGroup, calcMoveInGroup } from './util';
5
5
  import { middlewareEventSelect, middlewareEventSelectClear, middlewareEventSelectInGroup, middlewareEventSnapToGrid, keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController, keySelectedElementPosition, keyIsMoving, keyEnableSelectInGroup, keyEnableSnapToGrid, controllerSize, defaultStyle } from './config';
@@ -16,6 +16,8 @@ export const MiddlewareSelector = (opts, config) => {
16
16
  const { viewer, sharer, boardContent, calculator, eventHub } = opts;
17
17
  const { overlayContext } = boardContent;
18
18
  let prevPoint = null;
19
+ let moveOriginalStartPoint = null;
20
+ let moveOriginalStartElementSize = null;
19
21
  let inBusyMode = null;
20
22
  sharer.setSharedStorage(keyActionType, null);
21
23
  sharer.setSharedStorage(keyEnableSnapToGrid, true);
@@ -249,8 +251,9 @@ export const MiddlewareSelector = (opts, config) => {
249
251
  }
250
252
  },
251
253
  pointStart: (e) => {
252
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
254
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
253
255
  prevPoint = e.point;
256
+ moveOriginalStartPoint = e.point;
254
257
  const groupQueue = sharer.getSharedStorage(keyGroupQueue);
255
258
  if ((groupQueue === null || groupQueue === void 0 ? void 0 : groupQueue.length) > 0) {
256
259
  if (isPointInViewActiveGroup(e.point, {
@@ -260,17 +263,20 @@ export const MiddlewareSelector = (opts, config) => {
260
263
  groupQueue
261
264
  })) {
262
265
  const target = getPointTarget(e.point, pointTargetBaseOptions());
263
- if (((_a = target === null || target === void 0 ? void 0 : target.elements) === null || _a === void 0 ? void 0 : _a.length) === 1 && ((_c = (_b = target.elements[0]) === null || _b === void 0 ? void 0 : _b.operations) === null || _c === void 0 ? void 0 : _c.lock) === true) {
266
+ if (((_a = target === null || target === void 0 ? void 0 : target.elements) === null || _a === void 0 ? void 0 : _a.length) === 1 && ((_c = (_b = target.elements[0]) === null || _b === void 0 ? void 0 : _b.operations) === null || _c === void 0 ? void 0 : _c.locked) === true) {
264
267
  return;
265
268
  }
266
269
  else {
267
270
  updateHoverElement(null);
268
271
  }
269
- if (target.type === 'over-element' && ((_d = target === null || target === void 0 ? void 0 : target.elements) === null || _d === void 0 ? void 0 : _d.length) === 1) {
272
+ if (((_d = target === null || target === void 0 ? void 0 : target.elements) === null || _d === void 0 ? void 0 : _d.length) === 1) {
273
+ moveOriginalStartElementSize = getElementSize(target === null || target === void 0 ? void 0 : target.elements[0]);
274
+ }
275
+ if (target.type === 'over-element' && ((_e = target === null || target === void 0 ? void 0 : target.elements) === null || _e === void 0 ? void 0 : _e.length) === 1) {
270
276
  updateSelectedElementList([target.elements[0]], { triggerEvent: true });
271
277
  sharer.setSharedStorage(keyActionType, 'drag');
272
278
  }
273
- else if ((_e = target.type) === null || _e === void 0 ? void 0 : _e.startsWith('resize-')) {
279
+ else if ((_f = target.type) === null || _f === void 0 ? void 0 : _f.startsWith('resize-')) {
274
280
  sharer.setSharedStorage(keyResizeType, target.type);
275
281
  sharer.setSharedStorage(keyActionType, 'resize');
276
282
  }
@@ -290,22 +296,31 @@ export const MiddlewareSelector = (opts, config) => {
290
296
  calculator
291
297
  });
292
298
  const target = getPointTarget(e.point, Object.assign(Object.assign({}, pointTargetBaseOptions()), { areaSize: listAreaSize, groupQueue: [] }));
293
- if (((_f = target === null || target === void 0 ? void 0 : target.elements) === null || _f === void 0 ? void 0 : _f.length) === 1 && ((_h = (_g = target.elements[0]) === null || _g === void 0 ? void 0 : _g.operations) === null || _h === void 0 ? void 0 : _h.lock) === true) {
294
- return;
295
- }
296
- else {
299
+ const isLockedElement = ((_g = target === null || target === void 0 ? void 0 : target.elements) === null || _g === void 0 ? void 0 : _g.length) === 1 && ((_j = (_h = target.elements[0]) === null || _h === void 0 ? void 0 : _h.operations) === null || _j === void 0 ? void 0 : _j.locked) === true;
300
+ if (!isLockedElement) {
297
301
  updateHoverElement(null);
298
302
  }
299
- if (target.type === 'list-area') {
300
- sharer.setSharedStorage(keyActionType, 'drag-list');
301
- }
302
- else if (target.type === 'over-element' && ((_j = target === null || target === void 0 ? void 0 : target.elements) === null || _j === void 0 ? void 0 : _j.length) === 1) {
303
- updateSelectedElementList([target.elements[0]], { triggerEvent: true });
304
- sharer.setSharedStorage(keyActionType, 'drag');
303
+ if (((_k = target === null || target === void 0 ? void 0 : target.elements) === null || _k === void 0 ? void 0 : _k.length) === 1) {
304
+ moveOriginalStartElementSize = getElementSize(target === null || target === void 0 ? void 0 : target.elements[0]);
305
305
  }
306
- else if ((_k = target.type) === null || _k === void 0 ? void 0 : _k.startsWith('resize-')) {
307
- sharer.setSharedStorage(keyResizeType, target.type);
308
- sharer.setSharedStorage(keyActionType, 'resize');
306
+ if (!isLockedElement) {
307
+ if (target.type === 'list-area') {
308
+ sharer.setSharedStorage(keyActionType, 'drag-list');
309
+ }
310
+ else if (target.type === 'over-element' && ((_l = target === null || target === void 0 ? void 0 : target.elements) === null || _l === void 0 ? void 0 : _l.length) === 1) {
311
+ updateSelectedElementList([target.elements[0]], { triggerEvent: true });
312
+ sharer.setSharedStorage(keyActionType, 'drag');
313
+ }
314
+ else if ((_m = target.type) === null || _m === void 0 ? void 0 : _m.startsWith('resize-')) {
315
+ sharer.setSharedStorage(keyResizeType, target.type);
316
+ sharer.setSharedStorage(keyActionType, 'resize');
317
+ }
318
+ else {
319
+ clear();
320
+ sharer.setSharedStorage(keyActionType, 'area');
321
+ sharer.setSharedStorage(keyAreaStart, e.point);
322
+ updateSelectedElementList([], { triggerEvent: true });
323
+ }
309
324
  }
310
325
  else {
311
326
  clear();
@@ -324,6 +339,7 @@ export const MiddlewareSelector = (opts, config) => {
324
339
  const viewScaleInfo = sharer.getActiveViewScaleInfo();
325
340
  const viewSizeInfo = sharer.getActiveViewSizeInfo();
326
341
  const start = prevPoint;
342
+ const originalStart = moveOriginalStartPoint;
327
343
  const end = e.point;
328
344
  const resizeType = sharer.getSharedStorage(keyResizeType);
329
345
  const actionType = sharer.getSharedStorage(keyActionType);
@@ -331,8 +347,8 @@ export const MiddlewareSelector = (opts, config) => {
331
347
  const enableSnapToGrid = sharer.getSharedStorage(keyEnableSnapToGrid);
332
348
  if (actionType === 'drag') {
333
349
  inBusyMode = 'drag';
334
- if (data && (elems === null || elems === void 0 ? void 0 : elems.length) === 1 && start && end && ((_b = (_a = elems[0]) === null || _a === void 0 ? void 0 : _a.operations) === null || _b === void 0 ? void 0 : _b.lock) !== true) {
335
- const { moveX, moveY } = calcMoveInGroup(start, end, groupQueue);
350
+ if (data && (elems === null || elems === void 0 ? void 0 : elems.length) === 1 && moveOriginalStartElementSize && originalStart && end && ((_b = (_a = elems[0]) === null || _a === void 0 ? void 0 : _a.operations) === null || _b === void 0 ? void 0 : _b.locked) !== true) {
351
+ const { moveX, moveY } = calcMoveInGroup(originalStart, end, groupQueue);
336
352
  let totalMoveX = calculator.toGridNum(moveX / scale);
337
353
  let totalMoveY = calculator.toGridNum(moveY / scale);
338
354
  if (enableSnapToGrid === true) {
@@ -357,8 +373,8 @@ export const MiddlewareSelector = (opts, config) => {
357
373
  console.error(err);
358
374
  }
359
375
  }
360
- elems[0].x = calculator.toGridNum(elems[0].x + totalMoveX);
361
- elems[0].y = calculator.toGridNum(elems[0].y + totalMoveY);
376
+ elems[0].x = calculator.toGridNum(moveOriginalStartElementSize.x + totalMoveX);
377
+ elems[0].y = calculator.toGridNum(moveOriginalStartElementSize.y + totalMoveY);
362
378
  updateSelectedElementList([elems[0]]);
363
379
  calculator.modifyViewVisibleInfoMap(data, {
364
380
  modifyOptions: {
@@ -376,12 +392,12 @@ export const MiddlewareSelector = (opts, config) => {
376
392
  }
377
393
  else if (actionType === 'drag-list') {
378
394
  inBusyMode = 'drag-list';
379
- if (data && start && end && (elems === null || elems === void 0 ? void 0 : elems.length) > 1) {
395
+ if (data && originalStart && start && end && (elems === null || elems === void 0 ? void 0 : elems.length) > 1) {
380
396
  const moveX = (end.x - start.x) / scale;
381
397
  const moveY = (end.y - start.y) / scale;
382
398
  elems.forEach((elem) => {
383
399
  var _a;
384
- if (elem && ((_a = elem === null || elem === void 0 ? void 0 : elem.operations) === null || _a === void 0 ? void 0 : _a.lock) !== true) {
400
+ if (elem && ((_a = elem === null || elem === void 0 ? void 0 : elem.operations) === null || _a === void 0 ? void 0 : _a.locked) !== true) {
385
401
  elem.x = calculator.toGridNum(elem.x + moveX);
386
402
  elem.y = calculator.toGridNum(elem.y + moveY);
387
403
  calculator.modifyViewVisibleInfoMap(data, {
@@ -402,7 +418,7 @@ export const MiddlewareSelector = (opts, config) => {
402
418
  viewer.drawFrame();
403
419
  }
404
420
  else if (actionType === 'resize') {
405
- if (data && (elems === null || elems === void 0 ? void 0 : elems.length) === 1 && start && (resizeType === null || resizeType === void 0 ? void 0 : resizeType.startsWith('resize-'))) {
421
+ if (data && (elems === null || elems === void 0 ? void 0 : elems.length) === 1 && originalStart && moveOriginalStartElementSize && (resizeType === null || resizeType === void 0 ? void 0 : resizeType.startsWith('resize-'))) {
406
422
  inBusyMode = 'resize';
407
423
  const pointGroupQueue = [];
408
424
  groupQueue.forEach((group) => {
@@ -415,10 +431,10 @@ export const MiddlewareSelector = (opts, config) => {
415
431
  angle: 0 - angle
416
432
  });
417
433
  });
418
- let resizeStart = start;
434
+ let resizeStart = originalStart;
419
435
  let resizeEnd = end;
420
436
  if (groupQueue.length > 0) {
421
- resizeStart = rotatePointInGroup(start, pointGroupQueue);
437
+ resizeStart = rotatePointInGroup(originalStart, pointGroupQueue);
422
438
  resizeEnd = rotatePointInGroup(end, pointGroupQueue);
423
439
  }
424
440
  if (resizeType === 'resize-rotate') {
@@ -430,11 +446,11 @@ export const MiddlewareSelector = (opts, config) => {
430
446
  controller.bottomRight.center
431
447
  ];
432
448
  const viewCenter = calcElementCenterFromVertexes(viewVertexes);
433
- const resizedElemSize = rotateElement(elems[0], {
449
+ const resizedElemSize = rotateElement(moveOriginalStartElementSize, {
434
450
  center: viewCenter,
435
451
  viewScaleInfo,
436
452
  viewSizeInfo,
437
- start,
453
+ start: originalStart,
438
454
  end,
439
455
  resizeType,
440
456
  sharer
@@ -442,8 +458,8 @@ export const MiddlewareSelector = (opts, config) => {
442
458
  elems[0].angle = calculator.toGridNum(resizedElemSize.angle || 0);
443
459
  }
444
460
  else {
445
- const resizedElemSize = resizeElement(elems[0], { scale, start: resizeStart, end: resizeEnd, resizeType, sharer });
446
- const calcOpts = { ignore: !!elems[0].angle };
461
+ const resizedElemSize = resizeElement(moveOriginalStartElementSize, { scale, start: resizeStart, end: resizeEnd, resizeType, sharer });
462
+ const calcOpts = { ignore: !!moveOriginalStartElementSize.angle };
447
463
  elems[0].x = calculator.toGridNum(resizedElemSize.x, calcOpts);
448
464
  elems[0].y = calculator.toGridNum(resizedElemSize.y, calcOpts);
449
465
  if (elems[0].type === 'group' && ((_c = elems[0].operations) === null || _c === void 0 ? void 0 : _c.deepResize) === true) {
@@ -490,6 +506,8 @@ export const MiddlewareSelector = (opts, config) => {
490
506
  const viewSizeInfo = sharer.getActiveViewSizeInfo();
491
507
  let needDrawFrame = false;
492
508
  prevPoint = null;
509
+ moveOriginalStartPoint = null;
510
+ moveOriginalStartElementSize = null;
493
511
  if (actionType === 'resize' && resizeType) {
494
512
  sharer.setSharedStorage(keyResizeType, null);
495
513
  needDrawFrame = true;
@@ -559,6 +577,8 @@ export const MiddlewareSelector = (opts, config) => {
559
577
  },
560
578
  pointLeave() {
561
579
  prevPoint = null;
580
+ moveOriginalStartPoint = null;
581
+ moveOriginalStartElementSize = null;
562
582
  clear();
563
583
  viewer.drawFrame();
564
584
  },
@@ -570,7 +590,7 @@ export const MiddlewareSelector = (opts, config) => {
570
590
  const target = getPointTarget(e.point, pointTargetBaseOptions());
571
591
  sharer.setSharedStorage(keySelectedElementController, null);
572
592
  sharer.setSharedStorage(keySelectedElementList, []);
573
- if (target.elements.length === 1 && ((_b = (_a = target.elements[0]) === null || _a === void 0 ? void 0 : _a.operations) === null || _b === void 0 ? void 0 : _b.lock) === true) {
593
+ if (target.elements.length === 1 && ((_b = (_a = target.elements[0]) === null || _a === void 0 ? void 0 : _a.operations) === null || _b === void 0 ? void 0 : _b.locked) === true) {
574
594
  return;
575
595
  }
576
596
  if (target.elements.length === 1 && ((_c = target.elements[0]) === null || _c === void 0 ? void 0 : _c.type) === 'group') {
@@ -617,12 +637,12 @@ export const MiddlewareSelector = (opts, config) => {
617
637
  viewScaleInfo
618
638
  })
619
639
  : null;
620
- const isLock = !!((_a = hoverElement === null || hoverElement === void 0 ? void 0 : hoverElement.operations) === null || _a === void 0 ? void 0 : _a.lock);
640
+ const isLocked = !!((_a = hoverElement === null || hoverElement === void 0 ? void 0 : hoverElement.operations) === null || _a === void 0 ? void 0 : _a.locked);
621
641
  if ((groupQueue === null || groupQueue === void 0 ? void 0 : groupQueue.length) > 0) {
622
642
  drawGroupQueueVertexesWrappers(overlayContext, groupQueueVertexesList, drawBaseOpts);
623
643
  if (hoverElement && actionType !== 'drag') {
624
- if (isLock) {
625
- drawLockVertexesWrapper(overlayContext, hoverElementVertexes, Object.assign(Object.assign({}, drawBaseOpts), { controller: calcElementSizeController(hoverElement, {
644
+ if (isLocked) {
645
+ drawLockedVertexesWrapper(overlayContext, hoverElementVertexes, Object.assign(Object.assign({}, drawBaseOpts), { controller: calcElementSizeController(hoverElement, {
626
646
  groupQueue,
627
647
  controllerSize: 10,
628
648
  viewScaleInfo
@@ -632,7 +652,7 @@ export const MiddlewareSelector = (opts, config) => {
632
652
  drawHoverVertexesWrapper(overlayContext, hoverElementVertexes, drawBaseOpts);
633
653
  }
634
654
  }
635
- if (!isLock && elem && ['select', 'drag', 'resize'].includes(actionType)) {
655
+ if (!isLocked && elem && ['select', 'drag', 'resize'].includes(actionType)) {
636
656
  drawSelectedElementControllersVertexes(overlayContext, selectedElementController, Object.assign(Object.assign({}, drawBaseOpts), { element: elem, calculator, hideControllers: !!isMoving && actionType === 'drag', style }));
637
657
  if (actionType === 'drag') {
638
658
  if (enableSnapToGrid === true) {
@@ -659,8 +679,8 @@ export const MiddlewareSelector = (opts, config) => {
659
679
  }
660
680
  else {
661
681
  if (hoverElement && actionType !== 'drag') {
662
- if (isLock) {
663
- drawLockVertexesWrapper(overlayContext, hoverElementVertexes, Object.assign(Object.assign({}, drawBaseOpts), { controller: calcElementSizeController(hoverElement, {
682
+ if (isLocked) {
683
+ drawLockedVertexesWrapper(overlayContext, hoverElementVertexes, Object.assign(Object.assign({}, drawBaseOpts), { controller: calcElementSizeController(hoverElement, {
664
684
  groupQueue,
665
685
  controllerSize: 10,
666
686
  viewScaleInfo
@@ -670,7 +690,7 @@ export const MiddlewareSelector = (opts, config) => {
670
690
  drawHoverVertexesWrapper(overlayContext, hoverElementVertexes, drawBaseOpts);
671
691
  }
672
692
  }
673
- if (!isLock && elem && ['select', 'drag', 'resize'].includes(actionType)) {
693
+ if (!isLocked && elem && ['select', 'drag', 'resize'].includes(actionType)) {
674
694
  drawSelectedElementControllersVertexes(overlayContext, selectedElementController, Object.assign(Object.assign({}, drawBaseOpts), { element: elem, calculator, hideControllers: !!isMoving && actionType === 'drag', style }));
675
695
  if (actionType === 'drag') {
676
696
  if (enableSnapToGrid === true) {
@@ -23,14 +23,14 @@ export declare function getPointTarget(p: PointSize, opts: {
23
23
  groupQueue: Element<'group'>[] | null;
24
24
  selectedElementController: ElementSizeController | null;
25
25
  }): PointTarget;
26
- export declare function resizeElement(elem: Element<ElementType>, opts: {
26
+ export declare function resizeElement(elem: ElementSize, opts: {
27
27
  start: PointSize;
28
28
  end: PointSize;
29
29
  resizeType: ResizeType;
30
30
  scale: number;
31
31
  sharer: StoreSharer;
32
32
  }): ElementSize;
33
- export declare function rotateElement(elem: Element<ElementType>, opts: {
33
+ export declare function rotateElement(elem: ElementSize, opts: {
34
34
  center: PointSize;
35
35
  start: PointSize;
36
36
  end: PointSize;
@@ -703,10 +703,10 @@ export function getSelectedListArea(data, opts) {
703
703
  const endY = Math.max(start.y, end.y);
704
704
  for (let idx = 0; idx < data.elements.length; idx++) {
705
705
  const elem = data.elements[idx];
706
- if (((_a = elem === null || elem === void 0 ? void 0 : elem.operations) === null || _a === void 0 ? void 0 : _a.lock) === true) {
706
+ if (((_a = elem === null || elem === void 0 ? void 0 : elem.operations) === null || _a === void 0 ? void 0 : _a.locked) === true) {
707
707
  continue;
708
708
  }
709
- const elemSize = calcViewElementSize(elem, { viewScaleInfo, viewSizeInfo });
709
+ const elemSize = calcViewElementSize(elem, { viewScaleInfo });
710
710
  const center = calcElementCenter(elemSize);
711
711
  if (center.x >= startX && center.x <= endX && center.y >= startY && center.y <= endY) {
712
712
  indexes.push(idx);
@@ -733,14 +733,14 @@ export function calcSelectedElementsArea(elements, opts) {
733
733
  return null;
734
734
  }
735
735
  const area = { x: 0, y: 0, w: 0, h: 0 };
736
- const { viewScaleInfo, viewSizeInfo } = opts;
736
+ const { viewScaleInfo } = opts;
737
737
  let prevElemSize = null;
738
738
  for (let i = 0; i < elements.length; i++) {
739
739
  const elem = elements[i];
740
740
  if ((_a = elem === null || elem === void 0 ? void 0 : elem.operations) === null || _a === void 0 ? void 0 : _a.invisible) {
741
741
  continue;
742
742
  }
743
- const elemSize = calcViewElementSize(elem, { viewScaleInfo, viewSizeInfo });
743
+ const elemSize = calcViewElementSize(elem, { viewScaleInfo });
744
744
  if (elemSize.angle && (elemSize.angle > 0 || elemSize.angle < 0)) {
745
745
  const ves = rotateElementVertexes(elemSize);
746
746
  if (ves.length === 4) {