@idraw/core 0.4.0-beta.27 → 0.4.0-beta.29

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.
@@ -9,8 +9,6 @@ export declare const keySelectedElementList: unique symbol;
9
9
  export declare const keySelectedElementListVertexes: unique symbol;
10
10
  export declare const keySelectedElementController: unique symbol;
11
11
  export declare const keySelectedElementPosition: unique symbol;
12
- export declare const keySelectedReferenceXLines: unique symbol;
13
- export declare const keySelectedReferenceYLines: unique symbol;
14
12
  export declare const keyGroupQueue: unique symbol;
15
13
  export declare const keyGroupQueueVertexesList: unique symbol;
16
14
  export declare const keyIsMoving: unique symbol;
@@ -9,8 +9,6 @@ export const keySelectedElementList = Symbol(`${key}_selectedElementList`);
9
9
  export const keySelectedElementListVertexes = Symbol(`${key}_selectedElementListVertexes`);
10
10
  export const keySelectedElementController = Symbol(`${key}_selectedElementController`);
11
11
  export const keySelectedElementPosition = Symbol(`${key}_selectedElementPosition`);
12
- export const keySelectedReferenceXLines = Symbol(`${key}_selectedReferenceXLines`);
13
- export const keySelectedReferenceYLines = Symbol(`${key}_selectedReferenceYLines`);
14
12
  export const keyGroupQueue = Symbol(`${key}_groupQueue`);
15
13
  export const keyGroupQueueVertexesList = Symbol(`${key}_groupQueueVertexesList`);
16
14
  export const keyIsMoving = Symbol(`${key}_isMoving`);
@@ -2,7 +2,7 @@ import { is, calcElementsViewInfo, calcElementVertexesInGroup, calcElementQueueV
2
2
  import { drawHoverVertexesWrapper, drawLockVertexesWrapper, 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
- import { middlewareEventSelect, middlewareEventSelectClear, middlewareEventSelectInGroup, middlewareEventSnapToGrid, keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController, keySelectedElementPosition, keySelectedReferenceXLines, keySelectedReferenceYLines, keyIsMoving, keyEnableSelectInGroup, keyEnableSnapToGrid, controllerSize } from './config';
5
+ import { middlewareEventSelect, middlewareEventSelectClear, middlewareEventSelectInGroup, middlewareEventSnapToGrid, keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController, keySelectedElementPosition, keyIsMoving, keyEnableSelectInGroup, keyEnableSnapToGrid, controllerSize } from './config';
6
6
  import { calcReferenceInfo } from './reference';
7
7
  import { middlewareEventTextEdit } from '../text-editor';
8
8
  import { eventChange } from '../../config';
@@ -96,8 +96,6 @@ export const MiddlewareSelector = (opts) => {
96
96
  sharer.setSharedStorage(keySelectedElementListVertexes, null);
97
97
  sharer.setSharedStorage(keySelectedElementController, null);
98
98
  sharer.setSharedStorage(keySelectedElementPosition, []);
99
- sharer.setSharedStorage(keySelectedReferenceXLines, []);
100
- sharer.setSharedStorage(keySelectedReferenceYLines, []);
101
99
  sharer.setSharedStorage(keyIsMoving, null);
102
100
  sharer.setSharedStorage(keyEnableSelectInGroup, null);
103
101
  };
@@ -312,8 +310,6 @@ export const MiddlewareSelector = (opts) => {
312
310
  },
313
311
  pointMove: (e) => {
314
312
  var _a, _b, _c;
315
- sharer.setSharedStorage(keySelectedReferenceXLines, []);
316
- sharer.setSharedStorage(keySelectedReferenceYLines, []);
317
313
  sharer.setSharedStorage(keyIsMoving, true);
318
314
  const data = sharer.getActiveStorage('data');
319
315
  const elems = getActiveElements();
@@ -348,8 +344,6 @@ export const MiddlewareSelector = (opts) => {
348
344
  if (is.y(referenceInfo.offsetY) && referenceInfo.offsetY !== null) {
349
345
  totalMoveY = calculator.toGridNum(totalMoveY + referenceInfo.offsetY);
350
346
  }
351
- sharer.setSharedStorage(keySelectedReferenceXLines, referenceInfo.xLines);
352
- sharer.setSharedStorage(keySelectedReferenceYLines, referenceInfo.yLines);
353
347
  }
354
348
  }
355
349
  catch (err) {
@@ -480,10 +474,10 @@ export const MiddlewareSelector = (opts) => {
480
474
  },
481
475
  pointEnd(e) {
482
476
  inBusyMode = null;
483
- sharer.setSharedStorage(keySelectedReferenceXLines, []);
484
- sharer.setSharedStorage(keySelectedReferenceYLines, []);
485
477
  sharer.setSharedStorage(keyIsMoving, false);
486
478
  const data = sharer.getActiveStorage('data');
479
+ const selectedElements = sharer.getSharedStorage(keySelectedElementList);
480
+ const hoverElement = sharer.getSharedStorage(keyHoverElement);
487
481
  const resizeType = sharer.getSharedStorage(keyResizeType);
488
482
  const actionType = sharer.getSharedStorage(keyActionType);
489
483
  const viewSizeInfo = sharer.getActiveViewSizeInfo();
@@ -550,7 +544,7 @@ export const MiddlewareSelector = (opts) => {
550
544
  if (type === 'resize') {
551
545
  type = 'resizeElement';
552
546
  }
553
- eventHub.trigger(eventChange, { data, type });
547
+ eventHub.trigger(eventChange, { data, type, selectedElements, hoverElement });
554
548
  }
555
549
  viewer.drawFrame();
556
550
  };
@@ -634,13 +628,23 @@ export const MiddlewareSelector = (opts) => {
634
628
  if (!isLock && elem && ['select', 'drag', 'resize'].includes(actionType)) {
635
629
  drawSelectedElementControllersVertexes(overlayContext, selectedElementController, Object.assign(Object.assign({}, drawBaseOpts), { element: elem, calculator, hideControllers: !!isMoving && actionType === 'drag' }));
636
630
  if (actionType === 'drag') {
637
- const xLines = sharer.getSharedStorage(keySelectedReferenceXLines);
638
- const yLines = sharer.getSharedStorage(keySelectedReferenceYLines);
639
631
  if (enableSnapToGrid === true) {
640
- drawReferenceLines(overlayContext, {
641
- xLines,
642
- yLines
632
+ const referenceInfo = calcReferenceInfo(elem.uuid, {
633
+ calculator,
634
+ data: activeStore.data,
635
+ groupQueue,
636
+ viewScaleInfo,
637
+ viewSizeInfo
643
638
  });
639
+ if (referenceInfo) {
640
+ const { offsetX, offsetY, xLines, yLines } = referenceInfo;
641
+ if (offsetX === 0 || offsetY === 0) {
642
+ drawReferenceLines(overlayContext, {
643
+ xLines,
644
+ yLines
645
+ });
646
+ }
647
+ }
644
648
  }
645
649
  }
646
650
  }
@@ -661,13 +665,23 @@ export const MiddlewareSelector = (opts) => {
661
665
  if (!isLock && elem && ['select', 'drag', 'resize'].includes(actionType)) {
662
666
  drawSelectedElementControllersVertexes(overlayContext, selectedElementController, Object.assign(Object.assign({}, drawBaseOpts), { element: elem, calculator, hideControllers: !!isMoving && actionType === 'drag' }));
663
667
  if (actionType === 'drag') {
664
- const xLines = sharer.getSharedStorage(keySelectedReferenceXLines);
665
- const yLines = sharer.getSharedStorage(keySelectedReferenceYLines);
666
668
  if (enableSnapToGrid === true) {
667
- drawReferenceLines(overlayContext, {
668
- xLines,
669
- yLines
669
+ const referenceInfo = calcReferenceInfo(elem.uuid, {
670
+ calculator,
671
+ data: activeStore.data,
672
+ groupQueue,
673
+ viewScaleInfo,
674
+ viewSizeInfo
670
675
  });
676
+ if (referenceInfo) {
677
+ const { offsetX, offsetY, xLines, yLines } = referenceInfo;
678
+ if (offsetX === 0 || offsetY === 0) {
679
+ drawReferenceLines(overlayContext, {
680
+ xLines,
681
+ yLines
682
+ });
683
+ }
684
+ }
671
685
  }
672
686
  }
673
687
  }
@@ -177,7 +177,6 @@ export function calcReferenceInfo(uuid, opts) {
177
177
  yList: []
178
178
  };
179
179
  vLine.yList.push(newTargetBox.minY);
180
- vLine.yList.push(newTargetBox.midY);
181
180
  vLine.yList.push(newTargetBox.maxY);
182
181
  vLine.yList.push(...((hRefLineDotMap === null || hRefLineDotMap === void 0 ? void 0 : hRefLineDotMap[closestMinX]) || []));
183
182
  vHelperLineDotMapList.push(vLine);
@@ -188,7 +187,6 @@ export function calcReferenceInfo(uuid, opts) {
188
187
  yList: []
189
188
  };
190
189
  vLine.yList.push(newTargetBox.minY);
191
- vLine.yList.push(newTargetBox.midY);
192
190
  vLine.yList.push(newTargetBox.maxY);
193
191
  vLine.yList.push(...((hRefLineDotMap === null || hRefLineDotMap === void 0 ? void 0 : hRefLineDotMap[closestMidX]) || []));
194
192
  vHelperLineDotMapList.push(vLine);
@@ -199,7 +197,6 @@ export function calcReferenceInfo(uuid, opts) {
199
197
  yList: []
200
198
  };
201
199
  vLine.yList.push(newTargetBox.minY);
202
- vLine.yList.push(newTargetBox.midY);
203
200
  vLine.yList.push(newTargetBox.maxY);
204
201
  vLine.yList.push(...((hRefLineDotMap === null || hRefLineDotMap === void 0 ? void 0 : hRefLineDotMap[closestMaxX]) || []));
205
202
  vHelperLineDotMapList.push(vLine);
@@ -212,7 +209,6 @@ export function calcReferenceInfo(uuid, opts) {
212
209
  xList: []
213
210
  };
214
211
  hLine.xList.push(newTargetBox.minX);
215
- hLine.xList.push(newTargetBox.midX);
216
212
  hLine.xList.push(newTargetBox.maxX);
217
213
  hLine.xList.push(...((vRefLineDotMap === null || vRefLineDotMap === void 0 ? void 0 : vRefLineDotMap[closestMinY]) || []));
218
214
  hHelperLineDotMapList.push(hLine);
@@ -223,7 +219,6 @@ export function calcReferenceInfo(uuid, opts) {
223
219
  xList: []
224
220
  };
225
221
  hLine.xList.push(newTargetBox.minX);
226
- hLine.xList.push(newTargetBox.midX);
227
222
  hLine.xList.push(newTargetBox.maxX);
228
223
  hLine.xList.push(...((vRefLineDotMap === null || vRefLineDotMap === void 0 ? void 0 : vRefLineDotMap[closestMinY]) || []));
229
224
  hHelperLineDotMapList.push(hLine);
@@ -234,7 +229,6 @@ export function calcReferenceInfo(uuid, opts) {
234
229
  xList: []
235
230
  };
236
231
  hLine.xList.push(newTargetBox.minX);
237
- hLine.xList.push(newTargetBox.midX);
238
232
  hLine.xList.push(newTargetBox.maxX);
239
233
  hLine.xList.push(...((vRefLineDotMap === null || vRefLineDotMap === void 0 ? void 0 : vRefLineDotMap[closestMaxY]) || []));
240
234
  hHelperLineDotMapList.push(hLine);
@@ -1,5 +1,5 @@
1
1
  import { Data, ElementSize, ElementType, Element, ViewContext2D, Point, PointSize, ViewScaleInfo, ViewSizeInfo, ViewCalculator, PointWatcherEvent, BoardMiddleware, ViewRectVertexes, ElementSizeController, ElementPosition } from '@idraw/types';
2
- import { keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController, keySelectedElementPosition, keySelectedReferenceXLines, keySelectedReferenceYLines, keyIsMoving, keyEnableSelectInGroup, keyEnableSnapToGrid, keyDebugElemCenter, keyDebugEnd0, keyDebugEndHorizontal, keyDebugEndVertical, keyDebugStartHorizontal, keyDebugStartVertical } from './config';
2
+ import { keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController, keySelectedElementPosition, keyIsMoving, keyEnableSelectInGroup, keyEnableSnapToGrid, keyDebugElemCenter, keyDebugEnd0, keyDebugEndHorizontal, keyDebugEndVertical, keyDebugStartHorizontal, keyDebugStartVertical } from './config';
3
3
  export { Data, ElementType, Element, ElementSize, ViewContext2D, Point, PointSize, ViewScaleInfo, ViewSizeInfo, ViewCalculator, PointWatcherEvent, BoardMiddleware };
4
4
  export type ControllerStyle = ElementSize & {
5
5
  borderWidth: number;
@@ -31,8 +31,6 @@ export type DeepSelectorSharedStorage = {
31
31
  [keySelectedElementListVertexes]: ViewRectVertexes | null;
32
32
  [keySelectedElementController]: ElementSizeController | null;
33
33
  [keySelectedElementPosition]: ElementPosition;
34
- [keySelectedReferenceXLines]: Array<PointSize[]>;
35
- [keySelectedReferenceYLines]: Array<PointSize[]>;
36
34
  [keyIsMoving]: boolean | null;
37
35
  [keyEnableSelectInGroup]: boolean | null;
38
36
  [keyEnableSnapToGrid]: boolean | null;
@@ -1 +1 @@
1
- import { keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController, keySelectedElementPosition, keySelectedReferenceXLines, keySelectedReferenceYLines, keyIsMoving, keyEnableSelectInGroup, keyEnableSnapToGrid, keyDebugElemCenter, keyDebugEnd0, keyDebugEndHorizontal, keyDebugEndVertical, keyDebugStartHorizontal, keyDebugStartVertical } from './config';
1
+ import { keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController, keySelectedElementPosition, keyIsMoving, keyEnableSelectInGroup, keyEnableSnapToGrid, keyDebugElemCenter, keyDebugEnd0, keyDebugEndHorizontal, keyDebugEndVertical, keyDebugStartHorizontal, keyDebugStartVertical } from './config';
@@ -2090,6 +2090,18 @@ var __privateMethod = (obj, member, method) => {
2090
2090
  function enhanceFontFamliy(fontFamily2) {
2091
2091
  return [fontFamily2, ...baseFontFamilyList].join(", ");
2092
2092
  }
2093
+ (function(s, e) {
2094
+ var t = {};
2095
+ for (var p in s)
2096
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
2097
+ t[p] = s[p];
2098
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
2099
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
2100
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
2101
+ t[p[i]] = s[p[i]];
2102
+ }
2103
+ return t;
2104
+ });
2093
2105
  function createColorStyle(ctx, color2, opts) {
2094
2106
  if (typeof color2 === "string") {
2095
2107
  return color2;
@@ -3562,31 +3574,48 @@ var __privateMethod = (obj, member, method) => {
3562
3574
  const viewVisibleInfoMap = __classPrivateFieldGet$4(this, _Calculator_store, "f").get("viewVisibleInfoMap");
3563
3575
  if (type === "deleteElement") {
3564
3576
  const { element } = content;
3565
- delete viewVisibleInfoMap[element.uuid];
3577
+ const uuids = [];
3578
+ const _walk = (e) => {
3579
+ uuids.push(e.uuid);
3580
+ if (e.type === "group" && Array.isArray(e.detail.children)) {
3581
+ e.detail.children.forEach((child) => {
3582
+ _walk(child);
3583
+ });
3584
+ }
3585
+ };
3586
+ _walk(element);
3587
+ uuids.forEach((uuid) => {
3588
+ delete viewVisibleInfoMap[uuid];
3589
+ });
3590
+ __classPrivateFieldGet$4(this, _Calculator_store, "f").set("viewVisibleInfoMap", viewVisibleInfoMap);
3566
3591
  } else if (type === "addElement" || type === "updateElement") {
3567
3592
  const { position } = content;
3568
3593
  const element = findElementFromListByPosition(position, data.elements);
3569
3594
  const groupQueue = getGroupQueueByElementPosition(list, position);
3570
3595
  if (element) {
3571
- const originRectInfo = calcElementOriginRectInfo(element, {
3572
- groupQueue: groupQueue || []
3573
- });
3574
- const newViewVisibleInfo = {
3575
- originRectInfo,
3576
- rangeRectInfo: is.angle(element.angle) ? originRectInfoToRangeRectInfo(originRectInfo) : originRectInfo,
3577
- isVisibleInView: true,
3578
- isGroup: (element === null || element === void 0 ? void 0 : element.type) === "group",
3579
- position: [...position]
3580
- };
3581
- viewVisibleInfoMap[element.uuid] = newViewVisibleInfo;
3582
- if (type === "updateElement") {
3583
- this.updateVisiableStatus({ viewScaleInfo, viewSizeInfo });
3596
+ if (type === "updateElement" && element.type === "group") {
3597
+ this.resetViewVisibleInfoMap(data, { viewScaleInfo, viewSizeInfo });
3598
+ } else {
3599
+ const originRectInfo = calcElementOriginRectInfo(element, {
3600
+ groupQueue: groupQueue || []
3601
+ });
3602
+ const newViewVisibleInfo = {
3603
+ originRectInfo,
3604
+ rangeRectInfo: is.angle(element.angle) ? originRectInfoToRangeRectInfo(originRectInfo) : originRectInfo,
3605
+ isVisibleInView: true,
3606
+ isGroup: (element === null || element === void 0 ? void 0 : element.type) === "group",
3607
+ position: [...position]
3608
+ };
3609
+ viewVisibleInfoMap[element.uuid] = newViewVisibleInfo;
3610
+ __classPrivateFieldGet$4(this, _Calculator_store, "f").set("viewVisibleInfoMap", viewVisibleInfoMap);
3611
+ if (type === "updateElement") {
3612
+ this.updateVisiableStatus({ viewScaleInfo, viewSizeInfo });
3613
+ }
3584
3614
  }
3585
3615
  }
3586
3616
  } else if (type === "moveElement") {
3587
3617
  this.resetViewVisibleInfoMap(data, { viewScaleInfo, viewSizeInfo });
3588
3618
  }
3589
- __classPrivateFieldGet$4(this, _Calculator_store, "f").set("viewVisibleInfoMap", viewVisibleInfoMap);
3590
3619
  }
3591
3620
  }
3592
3621
  _Calculator_opts = /* @__PURE__ */ new WeakMap(), _Calculator_store = /* @__PURE__ */ new WeakMap();
@@ -4550,8 +4579,6 @@ var __privateMethod = (obj, member, method) => {
4550
4579
  const keySelectedElementListVertexes = Symbol(`${key$3}_selectedElementListVertexes`);
4551
4580
  const keySelectedElementController = Symbol(`${key$3}_selectedElementController`);
4552
4581
  const keySelectedElementPosition = Symbol(`${key$3}_selectedElementPosition`);
4553
- const keySelectedReferenceXLines = Symbol(`${key$3}_selectedReferenceXLines`);
4554
- const keySelectedReferenceYLines = Symbol(`${key$3}_selectedReferenceYLines`);
4555
4582
  const keyGroupQueue = Symbol(`${key$3}_groupQueue`);
4556
4583
  const keyGroupQueueVertexesList = Symbol(`${key$3}_groupQueueVertexesList`);
4557
4584
  const keyIsMoving = Symbol(`${key$3}_isMoving`);
@@ -5723,7 +5750,6 @@ var __privateMethod = (obj, member, method) => {
5723
5750
  yList: []
5724
5751
  };
5725
5752
  vLine.yList.push(newTargetBox.minY);
5726
- vLine.yList.push(newTargetBox.midY);
5727
5753
  vLine.yList.push(newTargetBox.maxY);
5728
5754
  vLine.yList.push(...(hRefLineDotMap == null ? void 0 : hRefLineDotMap[closestMinX]) || []);
5729
5755
  vHelperLineDotMapList.push(vLine);
@@ -5734,7 +5760,6 @@ var __privateMethod = (obj, member, method) => {
5734
5760
  yList: []
5735
5761
  };
5736
5762
  vLine.yList.push(newTargetBox.minY);
5737
- vLine.yList.push(newTargetBox.midY);
5738
5763
  vLine.yList.push(newTargetBox.maxY);
5739
5764
  vLine.yList.push(...(hRefLineDotMap == null ? void 0 : hRefLineDotMap[closestMidX]) || []);
5740
5765
  vHelperLineDotMapList.push(vLine);
@@ -5745,7 +5770,6 @@ var __privateMethod = (obj, member, method) => {
5745
5770
  yList: []
5746
5771
  };
5747
5772
  vLine.yList.push(newTargetBox.minY);
5748
- vLine.yList.push(newTargetBox.midY);
5749
5773
  vLine.yList.push(newTargetBox.maxY);
5750
5774
  vLine.yList.push(...(hRefLineDotMap == null ? void 0 : hRefLineDotMap[closestMaxX]) || []);
5751
5775
  vHelperLineDotMapList.push(vLine);
@@ -5758,7 +5782,6 @@ var __privateMethod = (obj, member, method) => {
5758
5782
  xList: []
5759
5783
  };
5760
5784
  hLine.xList.push(newTargetBox.minX);
5761
- hLine.xList.push(newTargetBox.midX);
5762
5785
  hLine.xList.push(newTargetBox.maxX);
5763
5786
  hLine.xList.push(...(vRefLineDotMap == null ? void 0 : vRefLineDotMap[closestMinY]) || []);
5764
5787
  hHelperLineDotMapList.push(hLine);
@@ -5769,7 +5792,6 @@ var __privateMethod = (obj, member, method) => {
5769
5792
  xList: []
5770
5793
  };
5771
5794
  hLine.xList.push(newTargetBox.minX);
5772
- hLine.xList.push(newTargetBox.midX);
5773
5795
  hLine.xList.push(newTargetBox.maxX);
5774
5796
  hLine.xList.push(...(vRefLineDotMap == null ? void 0 : vRefLineDotMap[closestMinY]) || []);
5775
5797
  hHelperLineDotMapList.push(hLine);
@@ -5780,7 +5802,6 @@ var __privateMethod = (obj, member, method) => {
5780
5802
  xList: []
5781
5803
  };
5782
5804
  hLine.xList.push(newTargetBox.minX);
5783
- hLine.xList.push(newTargetBox.midX);
5784
5805
  hLine.xList.push(newTargetBox.maxX);
5785
5806
  hLine.xList.push(...(vRefLineDotMap == null ? void 0 : vRefLineDotMap[closestMaxY]) || []);
5786
5807
  hHelperLineDotMapList.push(hLine);
@@ -6123,8 +6144,6 @@ var __privateMethod = (obj, member, method) => {
6123
6144
  sharer.setSharedStorage(keySelectedElementListVertexes, null);
6124
6145
  sharer.setSharedStorage(keySelectedElementController, null);
6125
6146
  sharer.setSharedStorage(keySelectedElementPosition, []);
6126
- sharer.setSharedStorage(keySelectedReferenceXLines, []);
6127
- sharer.setSharedStorage(keySelectedReferenceYLines, []);
6128
6147
  sharer.setSharedStorage(keyIsMoving, null);
6129
6148
  sharer.setSharedStorage(keyEnableSelectInGroup, null);
6130
6149
  };
@@ -6330,8 +6349,6 @@ var __privateMethod = (obj, member, method) => {
6330
6349
  },
6331
6350
  pointMove: (e) => {
6332
6351
  var _a, _b, _c;
6333
- sharer.setSharedStorage(keySelectedReferenceXLines, []);
6334
- sharer.setSharedStorage(keySelectedReferenceYLines, []);
6335
6352
  sharer.setSharedStorage(keyIsMoving, true);
6336
6353
  const data = sharer.getActiveStorage("data");
6337
6354
  const elems = getActiveElements();
@@ -6366,8 +6383,6 @@ var __privateMethod = (obj, member, method) => {
6366
6383
  if (is.y(referenceInfo.offsetY) && referenceInfo.offsetY !== null) {
6367
6384
  totalMoveY = calculator.toGridNum(totalMoveY + referenceInfo.offsetY);
6368
6385
  }
6369
- sharer.setSharedStorage(keySelectedReferenceXLines, referenceInfo.xLines);
6370
- sharer.setSharedStorage(keySelectedReferenceYLines, referenceInfo.yLines);
6371
6386
  }
6372
6387
  } catch (err) {
6373
6388
  console.error(err);
@@ -6492,10 +6507,10 @@ var __privateMethod = (obj, member, method) => {
6492
6507
  },
6493
6508
  pointEnd(e) {
6494
6509
  inBusyMode = null;
6495
- sharer.setSharedStorage(keySelectedReferenceXLines, []);
6496
- sharer.setSharedStorage(keySelectedReferenceYLines, []);
6497
6510
  sharer.setSharedStorage(keyIsMoving, false);
6498
6511
  const data = sharer.getActiveStorage("data");
6512
+ const selectedElements = sharer.getSharedStorage(keySelectedElementList);
6513
+ const hoverElement = sharer.getSharedStorage(keyHoverElement);
6499
6514
  const resizeType = sharer.getSharedStorage(keyResizeType);
6500
6515
  const actionType = sharer.getSharedStorage(keyActionType);
6501
6516
  const viewSizeInfo = sharer.getActiveViewSizeInfo();
@@ -6555,7 +6570,7 @@ var __privateMethod = (obj, member, method) => {
6555
6570
  }
6556
6571
  if (data && ["drag", "drag-list", "drag-list-end", "resize"].includes(actionType)) {
6557
6572
  let type = "dragElement";
6558
- eventHub.trigger(eventChange, { data, type });
6573
+ eventHub.trigger(eventChange, { data, type, selectedElements, hoverElement });
6559
6574
  }
6560
6575
  viewer.drawFrame();
6561
6576
  };
@@ -6643,13 +6658,23 @@ var __privateMethod = (obj, member, method) => {
6643
6658
  hideControllers: !!isMoving && actionType === "drag"
6644
6659
  });
6645
6660
  if (actionType === "drag") {
6646
- const xLines = sharer2.getSharedStorage(keySelectedReferenceXLines);
6647
- const yLines = sharer2.getSharedStorage(keySelectedReferenceYLines);
6648
6661
  if (enableSnapToGrid === true) {
6649
- drawReferenceLines(overlayContext, {
6650
- xLines,
6651
- yLines
6662
+ const referenceInfo = calcReferenceInfo(elem.uuid, {
6663
+ calculator,
6664
+ data: activeStore.data,
6665
+ groupQueue,
6666
+ viewScaleInfo,
6667
+ viewSizeInfo
6652
6668
  });
6669
+ if (referenceInfo) {
6670
+ const { offsetX, offsetY, xLines, yLines } = referenceInfo;
6671
+ if (offsetX === 0 || offsetY === 0) {
6672
+ drawReferenceLines(overlayContext, {
6673
+ xLines,
6674
+ yLines
6675
+ });
6676
+ }
6677
+ }
6653
6678
  }
6654
6679
  }
6655
6680
  }
@@ -6676,13 +6701,23 @@ var __privateMethod = (obj, member, method) => {
6676
6701
  hideControllers: !!isMoving && actionType === "drag"
6677
6702
  });
6678
6703
  if (actionType === "drag") {
6679
- const xLines = sharer2.getSharedStorage(keySelectedReferenceXLines);
6680
- const yLines = sharer2.getSharedStorage(keySelectedReferenceYLines);
6681
6704
  if (enableSnapToGrid === true) {
6682
- drawReferenceLines(overlayContext, {
6683
- xLines,
6684
- yLines
6705
+ const referenceInfo = calcReferenceInfo(elem.uuid, {
6706
+ calculator,
6707
+ data: activeStore.data,
6708
+ groupQueue,
6709
+ viewScaleInfo,
6710
+ viewSizeInfo
6685
6711
  });
6712
+ if (referenceInfo) {
6713
+ const { offsetX, offsetY, xLines, yLines } = referenceInfo;
6714
+ if (offsetX === 0 || offsetY === 0) {
6715
+ drawReferenceLines(overlayContext, {
6716
+ xLines,
6717
+ yLines
6718
+ });
6719
+ }
6720
+ }
6686
6721
  }
6687
6722
  }
6688
6723
  } else if (actionType === "area" && areaStart && areaEnd) {