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

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 type { Data, PointSize, CoreOptions, BoardMiddleware, ViewSizeInfo, CoreEvent, ViewScaleInfo, LoadItemMap } from '@idraw/types';
2
- export { MiddlewareSelector, middlewareEventSelect } from './middleware/selector';
2
+ export { MiddlewareSelector, middlewareEventSelect, middlewareEventSelectClear } from './middleware/selector';
3
3
  export { MiddlewareScroller } from './middleware/scroller';
4
4
  export { MiddlewareScaler, middlewareEventScale } from './middleware/scaler';
5
5
  export { MiddlewareRuler, middlewareEventRuler } from './middleware/ruler';
@@ -8,6 +8,7 @@ export { MiddlewareDragger } from './middleware/dragger';
8
8
  export declare class Core<E extends CoreEvent = CoreEvent> {
9
9
  #private;
10
10
  constructor(container: HTMLDivElement, opts: CoreOptions);
11
+ destroy(): void;
11
12
  use(middleware: BoardMiddleware<any, any>): void;
12
13
  disuse(middleware: BoardMiddleware<any, any>): void;
13
14
  setData(data: Data): void;
package/dist/esm/index.js CHANGED
@@ -13,7 +13,7 @@ var _Core_instances, _Core_board, _Core_container, _Core_initContainer;
13
13
  import { Board } from '@idraw/board';
14
14
  import { createBoardContent, validateElements } from '@idraw/util';
15
15
  import { Cursor } from './lib/cursor';
16
- export { MiddlewareSelector, middlewareEventSelect } from './middleware/selector';
16
+ export { MiddlewareSelector, middlewareEventSelect, middlewareEventSelectClear } from './middleware/selector';
17
17
  export { MiddlewareScroller } from './middleware/scroller';
18
18
  export { MiddlewareScaler, middlewareEventScale } from './middleware/scaler';
19
19
  export { MiddlewareRuler, middlewareEventRuler } from './middleware/ruler';
@@ -46,6 +46,9 @@ export class Core {
46
46
  eventHub
47
47
  });
48
48
  }
49
+ destroy() {
50
+ __classPrivateFieldGet(this, _Core_board, "f").destroy();
51
+ }
49
52
  use(middleware) {
50
53
  __classPrivateFieldGet(this, _Core_board, "f").use(middleware);
51
54
  }
@@ -4,6 +4,7 @@ export const MiddlewareDragger = (opts) => {
4
4
  const { eventHub, sharer, viewer } = opts;
5
5
  let isDragging = false;
6
6
  return {
7
+ name: '@middleware/dragger',
7
8
  hover() {
8
9
  if (isDragging === true) {
9
10
  return;
@@ -18,6 +18,7 @@ export const MiddlewareRuler = (opts) => {
18
18
  }
19
19
  };
20
20
  return {
21
+ name: '@middleware/ruler',
21
22
  use() {
22
23
  eventHub.on(middlewareEventRuler, rulerCallback);
23
24
  },
@@ -5,6 +5,7 @@ export const MiddlewareScaler = (opts) => {
5
5
  const maxScale = 50;
6
6
  const minScale = 0.05;
7
7
  return {
8
+ name: '@middleware/scaler',
8
9
  wheelScale(e) {
9
10
  const { deltaY, point } = e;
10
11
  const { scale } = sharer.getActiveViewScaleInfo();
@@ -42,6 +42,7 @@ export const MiddlewareScroller = (opts) => {
42
42
  });
43
43
  };
44
44
  return {
45
+ name: '@middleware/scroller',
45
46
  wheel: (e) => {
46
47
  viewer.scroll({
47
48
  moveX: 0 - e.deltaX,
@@ -1,4 +1,5 @@
1
1
  import type { CoreEvent } from '@idraw/types';
2
2
  import type { BoardMiddleware, DeepSelectorSharedStorage } from './types';
3
3
  export declare const middlewareEventSelect: string;
4
+ export declare const middlewareEventSelectClear: string;
4
5
  export declare const MiddlewareSelector: BoardMiddleware<DeepSelectorSharedStorage, CoreEvent>;
@@ -4,6 +4,7 @@ import { getPointTarget, resizeElement, getSelectedListArea, calcSelectedElement
4
4
  import { keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController } from './config';
5
5
  import { middlewareEventTextEdit } from '../text-editor';
6
6
  export const middlewareEventSelect = '@middleware/select';
7
+ export const middlewareEventSelectClear = '@middleware/select-clear';
7
8
  export const MiddlewareSelector = (opts) => {
8
9
  const { viewer, sharer, boardContent, calculator, eventHub } = opts;
9
10
  const { helperContext } = boardContent;
@@ -114,12 +115,19 @@ export const MiddlewareSelector = (opts) => {
114
115
  viewer.drawFrame();
115
116
  }
116
117
  };
118
+ const selectClearCallback = () => {
119
+ clear();
120
+ viewer.drawFrame();
121
+ };
117
122
  return {
123
+ name: '@middleware/selector',
118
124
  use() {
119
125
  eventHub.on(middlewareEventSelect, selectCallback);
126
+ eventHub.on(middlewareEventSelectClear, selectClearCallback);
120
127
  },
121
128
  disuse() {
122
129
  eventHub.off(middlewareEventSelect, selectCallback);
130
+ eventHub.off(middlewareEventSelectClear, selectClearCallback);
123
131
  },
124
132
  hover: (e) => {
125
133
  var _a, _b;
@@ -136,6 +136,7 @@ export const MiddlewareTextEditor = (opts) => {
136
136
  showTextArea(e);
137
137
  };
138
138
  return {
139
+ name: '@middleware/text-editor',
139
140
  use() {
140
141
  eventHub.on(middlewareEventTextEdit, textEditCallback);
141
142
  },