@idraw/core 0.4.0-beta.3 → 0.4.0-beta.5

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,4 +1,4 @@
1
- import type { Data, PointSize, CoreOptions, BoardMiddleware, ViewSizeInfo, CoreEvent, ViewScaleInfo } from '@idraw/types';
1
+ import type { Data, PointSize, CoreOptions, BoardMiddleware, ViewSizeInfo, CoreEvent, ViewScaleInfo, LoadItemMap } from '@idraw/types';
2
2
  export { MiddlewareSelector, middlewareEventSelect } from './middleware/selector';
3
3
  export { MiddlewareScroller } from './middleware/scroller';
4
4
  export { MiddlewareScaler, middlewareEventScale } from './middleware/scaler';
@@ -31,4 +31,5 @@ export declare class Core<E extends CoreEvent = CoreEvent> {
31
31
  offsetX: number;
32
32
  offsetY: number;
33
33
  }): void;
34
+ getLoadItemMap(): LoadItemMap;
34
35
  }
package/dist/esm/index.js CHANGED
@@ -101,6 +101,9 @@ export class Core {
101
101
  setViewScale(opts) {
102
102
  __classPrivateFieldGet(this, _Core_board, "f").updateViewScaleInfo(opts);
103
103
  }
104
+ getLoadItemMap() {
105
+ return __classPrivateFieldGet(this, _Core_board, "f").getRenderer().getLoadItemMap();
106
+ }
104
107
  }
105
108
  _Core_board = new WeakMap(), _Core_container = new WeakMap(), _Core_instances = new WeakSet(), _Core_initContainer = function _Core_initContainer() {
106
109
  const container = __classPrivateFieldGet(this, _Core_container, "f");
@@ -1,4 +1,4 @@
1
- import { calcElementsViewInfo, calcElementVertexesInGroup, calcElementQueueVertexesQueueInGroup, calcElementSizeController, rotatePointInGroup, getGroupQueueFromList, findElementsFromList, findElementsFromListByPositions } from '@idraw/util';
1
+ import { calcElementsViewInfo, calcElementVertexesInGroup, calcElementQueueVertexesQueueInGroup, calcElementSizeController, rotatePointInGroup, getGroupQueueFromList, findElementsFromList, findElementsFromListByPositions, deepResizeGroupElement } from '@idraw/util';
2
2
  import { drawHoverVertexesWrapper, drawArea, drawListArea, drawGroupQueueVertexesWrappers, drawSelectedElementControllersVertexes } from './draw-wrapper';
3
3
  import { getPointTarget, resizeElement, getSelectedListArea, calcSelectedElementsArea, isElementInGroup, isPointInViewActiveGroup, calcMoveInGroup } from './util';
4
4
  import { keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController } from './config';
@@ -251,6 +251,7 @@ export const MiddlewareSelector = (opts) => {
251
251
  viewer.drawFrame();
252
252
  },
253
253
  pointMove: (e) => {
254
+ var _a;
254
255
  const data = sharer.getActiveStorage('data');
255
256
  const elems = getActiveElements();
256
257
  const scale = sharer.getActiveStorage('scale') || 1;
@@ -307,8 +308,16 @@ export const MiddlewareSelector = (opts) => {
307
308
  const resizedElemSize = resizeElement(elems[0], { scale, start: resizeStart, end: resizeEnd, resizeType, sharer });
308
309
  elems[0].x = resizedElemSize.x;
309
310
  elems[0].y = resizedElemSize.y;
310
- elems[0].w = resizedElemSize.w;
311
- elems[0].h = resizedElemSize.h;
311
+ if (elems[0].type === 'group' && ((_a = elems[0].operations) === null || _a === void 0 ? void 0 : _a.deepResize) === true) {
312
+ deepResizeGroupElement(elems[0], {
313
+ w: resizedElemSize.w,
314
+ h: resizedElemSize.h
315
+ });
316
+ }
317
+ else {
318
+ elems[0].w = resizedElemSize.w;
319
+ elems[0].h = resizedElemSize.h;
320
+ }
312
321
  updateSelectedElementList([elems[0]]);
313
322
  viewer.drawFrame();
314
323
  }
@@ -385,7 +394,11 @@ export const MiddlewareSelector = (opts) => {
385
394
  sharer.setActiveStorage('contextWidth', viewInfo.contextSize.contextWidth);
386
395
  }
387
396
  if (data && ['drag', 'drag-list', 'drag-list-end', 'resize'].includes(actionType)) {
388
- eventHub.trigger('change', { data });
397
+ let type = 'drag-element';
398
+ if (type === 'resize') {
399
+ type = 'resize-element';
400
+ }
401
+ eventHub.trigger('change', { data, type });
389
402
  }
390
403
  viewer.drawFrame();
391
404
  };