@idraw/core 0.4.0 → 0.4.2

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.
@@ -32,7 +32,8 @@ export class Board {
32
32
  const sharer = new Sharer();
33
33
  const watcher = new BoardWatcher({
34
34
  boardContent,
35
- sharer
35
+ sharer,
36
+ disabled: opts === null || opts === void 0 ? void 0 : opts.disableWatcher
36
37
  });
37
38
  const renderer = new Renderer({
38
39
  viewContext: boardContent.viewContext,
@@ -149,6 +149,9 @@ export class BoardWatcher extends EventEmitter {
149
149
  __classPrivateFieldGet(this, _BoardWatcher_instances, "m", _BoardWatcher_init).call(this);
150
150
  }
151
151
  onEvents() {
152
+ if (__classPrivateFieldGet(this, _BoardWatcher_opts, "f").disabled === true) {
153
+ return;
154
+ }
152
155
  if (__classPrivateFieldGet(this, _BoardWatcher_hasDestroyed, "f")) {
153
156
  return;
154
157
  }
@@ -163,6 +166,9 @@ export class BoardWatcher extends EventEmitter {
163
166
  container.addEventListener('contextmenu', __classPrivateFieldGet(this, _BoardWatcher_onContextMenu, "f"));
164
167
  }
165
168
  offEvents() {
169
+ if (__classPrivateFieldGet(this, _BoardWatcher_opts, "f").disabled === true) {
170
+ return;
171
+ }
166
172
  const container = window;
167
173
  const canvas = __classPrivateFieldGet(this, _BoardWatcher_opts, "f").boardContent.boardContext.canvas;
168
174
  container.removeEventListener('mousemove', __classPrivateFieldGet(this, _BoardWatcher_onHover, "f"));
@@ -151,6 +151,7 @@ export const MiddlewareSelector = (opts, config) => {
151
151
  const groupQueue = getGroupQueueFromList(elem.uuid, (data === null || data === void 0 ? void 0 : data.elements) || []);
152
152
  sharer.setSharedStorage(keyGroupQueue, groupQueue);
153
153
  updateSelectedElementList(elements);
154
+ pointStartElementSizeList = [Object.assign(Object.assign({}, getElementSize(elements[0])), { uuid: elements[0].uuid })];
154
155
  viewer.drawFrame();
155
156
  }
156
157
  };
@@ -633,33 +634,35 @@ export const MiddlewareSelector = (opts, config) => {
633
634
  type = 'resizeElement';
634
635
  }
635
636
  if (hasChangedData) {
636
- const startSize = pointStartElementSizeList[0];
637
637
  let modifyRecord = null;
638
- if (selectedElements.length === 1) {
639
- modifyRecord = {
640
- type: 'resizeElement',
641
- time: 0,
642
- content: {
643
- method: 'modifyElement',
644
- uuid: startSize.uuid,
645
- before: toFlattenElement(startSize),
646
- after: toFlattenElement(getElementSize(selectedElements[0]))
638
+ if (Array.isArray(pointStartElementSizeList) && pointStartElementSizeList.length) {
639
+ const startSize = pointStartElementSizeList[0];
640
+ if (selectedElements.length === 1) {
641
+ modifyRecord = {
642
+ type: 'resizeElement',
643
+ time: 0,
644
+ content: {
645
+ method: 'modifyElement',
646
+ uuid: startSize.uuid,
647
+ before: toFlattenElement(startSize),
648
+ after: toFlattenElement(getElementSize(selectedElements[0]))
649
+ }
650
+ };
651
+ if (selectedElements[0].type === 'group' && startResizeGroupRecord && endResizeGroupRecord) {
652
+ modifyRecord = Object.assign(Object.assign({}, endResizeGroupRecord), { content: Object.assign(Object.assign({}, endResizeGroupRecord.content), { before: startResizeGroupRecord.content.before }) });
647
653
  }
648
- };
649
- if (selectedElements[0].type === 'group' && startResizeGroupRecord && endResizeGroupRecord) {
650
- modifyRecord = Object.assign(Object.assign({}, endResizeGroupRecord), { content: Object.assign(Object.assign({}, endResizeGroupRecord.content), { before: startResizeGroupRecord.content.before }) });
651
654
  }
652
- }
653
- else if (selectedElements.length > 1) {
654
- modifyRecord = {
655
- type: 'resizeElements',
656
- time: 0,
657
- content: {
658
- method: 'modifyElements',
659
- before: pointStartElementSizeList.map((item) => (Object.assign(Object.assign({}, toFlattenElement(item)), { uuid: item.uuid }))),
660
- after: selectedElements.map((item) => (Object.assign(Object.assign({}, toFlattenElement(getElementSize(item))), { uuid: item.uuid })))
661
- }
662
- };
655
+ else if (selectedElements.length > 1) {
656
+ modifyRecord = {
657
+ type: 'resizeElements',
658
+ time: 0,
659
+ content: {
660
+ method: 'modifyElements',
661
+ before: pointStartElementSizeList.map((item) => (Object.assign(Object.assign({}, toFlattenElement(item)), { uuid: item.uuid }))),
662
+ after: selectedElements.map((item) => (Object.assign(Object.assign({}, toFlattenElement(getElementSize(item))), { uuid: item.uuid })))
663
+ }
664
+ };
665
+ }
663
666
  }
664
667
  eventHub.trigger(coreEventKeys.CHANGE, { data, type, selectedElements, hoverElement, modifyRecord });
665
668
  hasChangedData = false;