@gedit/editor-2d 0.1.83 → 0.1.86

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.
Files changed (55) hide show
  1. package/lib/browser/editor2d-contribution.d.ts +1 -1
  2. package/lib/browser/editor2d-contribution.d.ts.map +1 -1
  3. package/lib/browser/editor2d-contribution.js +8 -6
  4. package/lib/browser/editor2d-contribution.js.map +1 -1
  5. package/lib/browser/model/editor2d-document.d.ts +1 -1
  6. package/lib/browser/model/editor2d-document.d.ts.map +1 -1
  7. package/lib/browser/model/editor2d-document.js +8 -5
  8. package/lib/browser/model/editor2d-document.js.map +1 -1
  9. package/lib/browser/model/editor2d-model-container.d.ts.map +1 -1
  10. package/lib/browser/model/editor2d-model-container.js +0 -1
  11. package/lib/browser/model/editor2d-model-container.js.map +1 -1
  12. package/lib/browser/model/editor2d-widget.d.ts.map +1 -1
  13. package/lib/browser/model/editor2d-widget.js +6 -6
  14. package/lib/browser/model/editor2d-widget.js.map +1 -1
  15. package/lib/browser/model/index.d.ts +0 -1
  16. package/lib/browser/model/index.d.ts.map +1 -1
  17. package/lib/browser/model/index.js +0 -1
  18. package/lib/browser/model/index.js.map +1 -1
  19. package/lib/browser/playground/canvas-draw.d.ts.map +1 -1
  20. package/lib/browser/playground/canvas-draw.js +8 -11
  21. package/lib/browser/playground/canvas-draw.js.map +1 -1
  22. package/lib/browser/playground/canvas-layer.d.ts.map +1 -1
  23. package/lib/browser/playground/canvas-layer.js +2 -2
  24. package/lib/browser/playground/canvas-layer.js.map +1 -1
  25. package/lib/browser/playground/entities/editor2d-entity.d.ts +4 -1
  26. package/lib/browser/playground/entities/editor2d-entity.d.ts.map +1 -1
  27. package/lib/browser/playground/entities/editor2d-entity.js +7 -0
  28. package/lib/browser/playground/entities/editor2d-entity.js.map +1 -1
  29. package/lib/browser/playground/playground-context.js +2 -2
  30. package/lib/browser/playground/playground-context.js.map +1 -1
  31. package/lib/browser/playground/selection-entity-manager.d.ts +3 -2
  32. package/lib/browser/playground/selection-entity-manager.d.ts.map +1 -1
  33. package/lib/browser/playground/selection-entity-manager.js +17 -13
  34. package/lib/browser/playground/selection-entity-manager.js.map +1 -1
  35. package/package.json +7 -8
  36. package/src/browser/editor2d-contribution.ts +8 -6
  37. package/src/browser/model/editor2d-document.ts +8 -5
  38. package/src/browser/model/editor2d-model-container.ts +0 -2
  39. package/src/browser/model/editor2d-widget.ts +6 -8
  40. package/src/browser/model/index.ts +0 -1
  41. package/src/browser/playground/canvas-draw.ts +8 -11
  42. package/src/browser/playground/canvas-layer.ts +2 -1
  43. package/src/browser/playground/entities/editor2d-entity.ts +6 -1
  44. package/src/browser/playground/playground-context.ts +2 -2
  45. package/src/browser/playground/selection-entity-manager.tsx +16 -12
  46. package/lib/browser/editor2d-history-contribution.d.ts +0 -5
  47. package/lib/browser/editor2d-history-contribution.d.ts.map +0 -1
  48. package/lib/browser/editor2d-history-contribution.js +0 -34
  49. package/lib/browser/editor2d-history-contribution.js.map +0 -1
  50. package/lib/browser/model/editor2d-history.d.ts +0 -6
  51. package/lib/browser/model/editor2d-history.d.ts.map +0 -1
  52. package/lib/browser/model/editor2d-history.js +0 -23
  53. package/lib/browser/model/editor2d-history.js.map +0 -1
  54. package/src/browser/editor2d-history-contribution.ts +0 -21
  55. package/src/browser/model/editor2d-history.ts +0 -8
@@ -20,6 +20,7 @@ export class SelectionEntityManager {
20
20
  constructor(
21
21
  protected entityManager: EntityManager,
22
22
  protected context: PlaygroundContext2d,
23
+ protected loading: () => boolean,
23
24
  protected getDocument: () => Editor2dDocument | undefined,
24
25
  protected isVisible: () => boolean,
25
26
  ) {
@@ -30,9 +31,11 @@ export class SelectionEntityManager {
30
31
  if (this.context.options.extendEntityRenderer) {
31
32
  newProps.extendRenderer = () => this.context.options.extendEntityRenderer!({ ...props, context: this.context });
32
33
  }
33
- const deco = this.context.renderEngine.getGameObjectDecoration(entity.gameObject.scene.config.engine, entity.node.displayType);
34
+ const deco = entity.node
35
+ ? this.context.renderEngine.getGameObjectDecoration(entity.gameObject.scene.config.engine, entity.node.displayType)
36
+ : undefined;
34
37
  // 自定义渲染器
35
- if (deco.selectionRenderer) {
38
+ if (deco && deco.selectionRenderer) {
36
39
  const Comp = deco.selectionRenderer;
37
40
  return <Comp {...newProps} />;
38
41
  }
@@ -57,8 +60,9 @@ export class SelectionEntityManager {
57
60
  entity.mouseSelect = selectable && (deco.mouseSelect === undefined ? true : deco.mouseSelect);
58
61
  entity.adsorbable = adsorbable && (deco.adsorbable === undefined ? true : deco.adsorbable);
59
62
  entity.gameObject = gameObject;
63
+ entity.document = this.getDocument()!;
64
+ entity.nodeId = node.id;
60
65
  entity.context = this.context;
61
- entity.node = node;
62
66
  entity.transform.sizeToScale = !!deco.sizeToScale;
63
67
  // 切换选择框的类型,如圆形、矩形, 默认矩形
64
68
  if (deco.selectDisplayType) {
@@ -68,9 +72,10 @@ export class SelectionEntityManager {
68
72
  }
69
73
  // 实体选中状态改变
70
74
  entity.onToggleSelect((selected: boolean) => {
71
- if (node.selected !== selected) {
75
+ const newNode = entity.node;
76
+ if (newNode && newNode.selected !== selected) {
72
77
  // 这个只记录选择,但不会真实触发tree组件的选择器,所以需要再同步一次
73
- node.selected = selected;
78
+ newNode.selected = selected;
74
79
  // 点击画布后则同步选择器
75
80
  this.context.syncToSelectionTree(this);
76
81
  }
@@ -83,7 +88,7 @@ export class SelectionEntityManager {
83
88
  // let lastTransform: TransformSchema | undefined;
84
89
  entity.onTransformChanged((newTransform: TransformSchema) => {
85
90
  const document = this.getDocument();
86
- if (!document) {
91
+ if (this.loading() || !document) {
87
92
  return;
88
93
  }
89
94
  /* if (!lastTransform || !document || document.animationStarted || entity.ignoreTransformChanged) {
@@ -91,7 +96,7 @@ export class SelectionEntityManager {
91
96
  return;
92
97
  }; */
93
98
  // const delta = TransformSchema.getDelta(lastTransform, newTransform);
94
- document.updateNode(node, newTransform, true);
99
+ document.updateNode(entity.nodeId, newTransform, true);
95
100
  // lastTransform = newTransform;
96
101
  });
97
102
  // 设置控制key
@@ -110,15 +115,14 @@ export class SelectionEntityManager {
110
115
  entity.dispose();
111
116
  }
112
117
  }
113
- updateEntity(nodePath: string, gameObject: GameObject, node?: Editor2dNode): void {
118
+ updateEntity(nodePath: string, gameObject: GameObject): void {
114
119
  const register = this.context.renderEngine.getGameObjectIDERegister(gameObject.scene.config.engine, gameObject.type);
115
120
  const deco = register.decoration;
116
121
  const entity = this.nodeEntitiesCache.get(nodePath);
117
122
  if (!entity || !register.getSelectionData) {
118
123
  return;
119
124
  }
120
- node = node || entity.node;
121
- entity.node = node;
125
+ const node = entity.node;
122
126
  entity.ignoreTransformChanged = true;
123
127
  if (gameObject.parent) {
124
128
  const parentEntity = this.nodeEntitiesCache.get(gameObject.parent.id as string);
@@ -137,7 +141,7 @@ export class SelectionEntityManager {
137
141
  // 是否支持吸附
138
142
  entity.adsorbable = entity.adsorbableInit && sizeVisible && (deco.adsorbable === undefined ? true : deco.adsorbable);
139
143
  // 同步选中状态
140
- entity.selected = node.selected;
144
+ entity.selected = !!node?.selected;
141
145
  // 更新zIndex, 每次都要更新,因为节点拖拽会导致所有的zIndex顺序错乱
142
146
  entity.zIndex = gameObject.data.depth || 0;
143
147
  }
@@ -156,7 +160,7 @@ export class SelectionEntityManager {
156
160
  scrollToSelectedNodes = debounce(() => {
157
161
  const entitiesScrollTo: Editor2dEntity[] = [];
158
162
  for (const entity of this.nodeEntitiesCache.values()) {
159
- if (!Editor2dNode.isRootNode(entity.node) && entity.selectable) {
163
+ if (!Editor2dNode.isRootNode(entity.node) && entity.node && entity.selectable) {
160
164
  if (!entity.selected && entity.node.selected) {
161
165
  entitiesScrollTo.push(entity);
162
166
  }
@@ -1,5 +0,0 @@
1
- import { HistoryContribution, HistoryRegistry } from '@gedit/history';
2
- export declare class Editor2dHistoryContribution implements HistoryContribution {
3
- register(registry: HistoryRegistry): void;
4
- }
5
- //# sourceMappingURL=editor2d-history-contribution.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"editor2d-history-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/editor2d-history-contribution.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAe,MAAM,gBAAgB,CAAC;AAEnF,qBACa,2BAA4B,YAAW,mBAAmB;IACrE,QAAQ,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;CAc1C"}
@@ -1,34 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.Editor2dHistoryContribution = void 0;
10
- var inversify_1 = require("inversify");
11
- var Editor2dHistoryContribution = /** @class */ (function () {
12
- function Editor2dHistoryContribution() {
13
- }
14
- Editor2dHistoryContribution.prototype.register = function (registry) {
15
- registry.add({
16
- undoHandle: function (item, resource) {
17
- console.log('undo');
18
- },
19
- redoHandle: function (item, resource) {
20
- console.log('redo');
21
- },
22
- canbeMerge: function (item, resource) {
23
- console.log('canbe merge');
24
- return false;
25
- },
26
- });
27
- };
28
- Editor2dHistoryContribution = __decorate([
29
- inversify_1.injectable()
30
- ], Editor2dHistoryContribution);
31
- return Editor2dHistoryContribution;
32
- }());
33
- exports.Editor2dHistoryContribution = Editor2dHistoryContribution;
34
- //# sourceMappingURL=editor2d-history-contribution.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"editor2d-history-contribution.js","sourceRoot":"","sources":["../../src/browser/editor2d-history-contribution.ts"],"names":[],"mappings":";;;;;;;;;AAAA,uCAAuC;AAKvC;IAAA;IAeA,CAAC;IAdC,8CAAQ,GAAR,UAAS,QAAyB;QAChC,QAAQ,CAAC,GAAG,CAAC;YACX,UAAU,EAAV,UAAW,IAAsB,EAAE,QAAkB;gBACnD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC;YACD,UAAU,EAAV,UAAW,IAAsB,EAAE,QAAkB;gBACnD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC;YACD,UAAU,EAAV,UAAW,IAAsB,EAAE,QAAkB;gBACnD,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;gBAC3B,OAAO,KAAK,CAAC;YACf,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAdU,2BAA2B;QADvC,sBAAU,EAAE;OACA,2BAA2B,CAevC;IAAD,kCAAC;CAAA,AAfD,IAeC;AAfY,kEAA2B"}
@@ -1,6 +0,0 @@
1
- /**
2
- * TODO 文档历史记录管理
3
- */
4
- export declare class Editor2dHistory {
5
- }
6
- //# sourceMappingURL=editor2d-history.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"editor2d-history.d.ts","sourceRoot":"","sources":["../../../src/browser/model/editor2d-history.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,qBACa,eAAe;CAC3B"}
@@ -1,23 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.Editor2dHistory = void 0;
10
- var inversify_1 = require("inversify");
11
- /**
12
- * TODO 文档历史记录管理
13
- */
14
- var Editor2dHistory = /** @class */ (function () {
15
- function Editor2dHistory() {
16
- }
17
- Editor2dHistory = __decorate([
18
- inversify_1.injectable()
19
- ], Editor2dHistory);
20
- return Editor2dHistory;
21
- }());
22
- exports.Editor2dHistory = Editor2dHistory;
23
- //# sourceMappingURL=editor2d-history.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"editor2d-history.js","sourceRoot":"","sources":["../../../src/browser/model/editor2d-history.ts"],"names":[],"mappings":";;;;;;;;;AAAA,uCAAuC;AAEvC;;GAEG;AAEH;IAAA;IACA,CAAC;IADY,eAAe;QAD3B,sBAAU,EAAE;OACA,eAAe,CAC3B;IAAD,sBAAC;CAAA,AADD,IACC;AADY,0CAAe"}
@@ -1,21 +0,0 @@
1
- import { injectable } from 'inversify';
2
- import { Resource } from '@gedit/resource';
3
- import { HistoryContribution, HistoryRegistry, HistoryItem } from '@gedit/history';
4
-
5
- @injectable()
6
- export class Editor2dHistoryContribution implements HistoryContribution {
7
- register(registry: HistoryRegistry): void {
8
- registry.add({
9
- undoHandle(item: HistoryItem<any>, resource: Resource): void {
10
- console.log('undo');
11
- },
12
- redoHandle(item: HistoryItem<any>, resource: Resource): void {
13
- console.log('redo');
14
- },
15
- canbeMerge(item: HistoryItem<any>, resource: Resource): boolean {
16
- console.log('canbe merge');
17
- return false;
18
- },
19
- });
20
- }
21
- }
@@ -1,8 +0,0 @@
1
- import { injectable } from 'inversify';
2
-
3
- /**
4
- * TODO 文档历史记录管理
5
- */
6
- @injectable()
7
- export class Editor2dHistory {
8
- }