@gedit/editor-2d 0.2.47 → 0.2.49

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 (30) hide show
  1. package/lib/browser/model/editor2d-document.d.ts +21 -7
  2. package/lib/browser/model/editor2d-document.d.ts.map +1 -1
  3. package/lib/browser/model/editor2d-document.js +169 -14
  4. package/lib/browser/model/editor2d-document.js.map +1 -1
  5. package/lib/browser/playground/canvas-draw.d.ts +6 -2
  6. package/lib/browser/playground/canvas-draw.d.ts.map +1 -1
  7. package/lib/browser/playground/canvas-draw.js +148 -26
  8. package/lib/browser/playground/canvas-draw.js.map +1 -1
  9. package/lib/browser/playground/canvas-layer.d.ts +2 -2
  10. package/lib/browser/playground/canvas-layer.d.ts.map +1 -1
  11. package/lib/browser/playground/canvas-layer.js +57 -41
  12. package/lib/browser/playground/canvas-layer.js.map +1 -1
  13. package/lib/browser/playground/playground-contribution.d.ts +2 -0
  14. package/lib/browser/playground/playground-contribution.d.ts.map +1 -1
  15. package/lib/browser/playground/playground-contribution.js +19 -2
  16. package/lib/browser/playground/playground-contribution.js.map +1 -1
  17. package/lib/browser/playground/selection-entity-manager.d.ts +1 -1
  18. package/lib/browser/playground/selection-entity-manager.d.ts.map +1 -1
  19. package/lib/browser/playground/selection-entity-manager.js +19 -3
  20. package/lib/browser/playground/selection-entity-manager.js.map +1 -1
  21. package/lib/browser/utils/snapshot.js +1 -1
  22. package/lib/browser/utils/snapshot.js.map +1 -1
  23. package/package.json +9 -9
  24. package/src/browser/model/editor2d-document.ts +183 -14
  25. package/src/browser/playground/canvas-draw.ts +308 -94
  26. package/src/browser/playground/canvas-layer.ts +41 -25
  27. package/src/browser/playground/playground-contribution.ts +15 -3
  28. package/src/browser/playground/selection-entity-manager.tsx +17 -3
  29. package/src/browser/style/index.less +6 -0
  30. package/src/browser/utils/snapshot.ts +1 -1
@@ -21,6 +21,7 @@ export interface Editor2dComponentProvider {
21
21
  getComponentContent(compPath: string, parentNode?: Editor2dNode, getParent?: boolean): Editor2dNode[] | undefined;
22
22
  getComponentSymbols(compPath: string, compNode?: Editor2dNode): GameConfig.Symbol[];
23
23
  getAllComponentSymbols(): GameConfig.Symbol[];
24
+ getScriptsById(uri: string): string[];
24
25
  onComponentChanged: Event<URI>;
25
26
  onLoad: Event<void>;
26
27
  }
@@ -46,6 +47,7 @@ export declare class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dCon
46
47
  protected errors: ResourceRefError[];
47
48
  protected _snaplines: any[];
48
49
  loading: boolean;
50
+ protected deleteNames: string[];
49
51
  get uri(): string;
50
52
  get engineName(): string;
51
53
  constructor(message: MessageService, options: Editor2dModelOptions, resourceProvider: ResourceProvider, resourceAutoSaveService: ResourceAutoSaveService, resourceService: WorkspaceResourceService, engineService: RenderEngineIDEService, appConfig: AppConfigService, componentProvider?: Editor2dComponentProvider | undefined, themeService?: ThemeService | undefined);
@@ -70,8 +72,20 @@ export declare class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dCon
70
72
  copyNode(targetNode?: Editor2dNode): Editor2dNode | undefined;
71
73
  copyToParentNode(parentNode: Editor2dNode, nodeData: Editor2dNode, index?: number, position?: PositionSchema): Editor2dNode | undefined;
72
74
  delNodeSetMask(node?: Editor2dNode): void;
73
- delNode(targetNode?: Editor2dNode, silent?: boolean): void;
74
- delNodes(...targetNodes: Editor2dNode[]): void;
75
+ layerChangeDialog(name?: string): Promise<boolean | undefined>;
76
+ inCodeFunc(node: Editor2dNode): boolean | undefined;
77
+ nodeLayerChangeAll(nodes: Editor2dNode[]): Promise<boolean | undefined>;
78
+ nodeLayerChange(node: Editor2dNode): Promise<boolean | undefined>;
79
+ /**
80
+ * 元素分组移动,检测是否在代码中被 selectByNamePath 使用过
81
+ * @param nodes
82
+ * @param targetNode
83
+ * @returns
84
+ */
85
+ layerNamePathChange(nodes: Editor2dNode[], targetNode?: Editor2dNode): Promise<boolean>;
86
+ deleteNode(targetNode?: Editor2dNode, silent?: boolean): void;
87
+ delNode(targetNode?: Editor2dNode, silent?: boolean): Promise<void>;
88
+ delNodes(...targetNodes: Editor2dNode[]): Promise<void>;
75
89
  rename(targetNode: Editor2dNode | undefined, name: string): void;
76
90
  addChildren(node: Editor2dNode, parentNode: Editor2dContainerNode, index?: number): void;
77
91
  /**
@@ -112,7 +126,7 @@ export declare class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dCon
112
126
  * @param nodes
113
127
  * @param mask
114
128
  */
115
- toggleMask(nodes: Editor2dNode[], mask?: boolean): void;
129
+ toggleMask(nodes: Editor2dNode[], mask?: boolean): Promise<void>;
116
130
  /**
117
131
  * 忽略底层 mask
118
132
  * 忽略层 mask 不删除,留着恢复用,
@@ -140,8 +154,8 @@ export declare class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dCon
140
154
  * @param targetNode
141
155
  * @param toAfter - 是否加到目标节点的后边,默认前面
142
156
  */
143
- moveToNode(node: Editor2dNode, targetNode: Editor2dNode, toAfter?: boolean): void;
144
- moveToNodesAsChildren(nodes: Editor2dNode[], targetNode: Editor2dNode): boolean;
157
+ moveToNode(node: Editor2dNode, targetNode: Editor2dNode, toAfter?: boolean): Promise<void>;
158
+ moveToNodesAsChildren(nodes: Editor2dNode[], targetNode: Editor2dNode, skip?: boolean): Promise<boolean>;
145
159
  moveToNodesAsSiblings(nodes: Editor2dNode[], targetNode: Editor2dNode): boolean;
146
160
  getSelectedNodes(): Editor2dNode[];
147
161
  getNodeById(nodeId: string): Editor2dNode | Editor2dContainerNode | undefined;
@@ -153,12 +167,12 @@ export declare class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dCon
153
167
  * 合并分组
154
168
  * @param nodes
155
169
  */
156
- combineNodes(n?: Editor2dNode[]): Editor2dNode | undefined;
170
+ combineNodes(n?: Editor2dNode[]): Promise<Editor2dNode | undefined>;
157
171
  /**
158
172
  * 解除分组,目前只支持图层
159
173
  * @param node
160
174
  */
161
- unCombineNode(node: Editor2dNode | Editor2dContainerNode): void;
175
+ unCombineNode(node: Editor2dNode | Editor2dContainerNode): Promise<void>;
162
176
  /**
163
177
  * 可以作为子节点
164
178
  * @param targetNode
@@ -1 +1 @@
1
- {"version":3,"file":"editor2d-document.d.ts","sourceRoot":"","sources":["../../../src/browser/model/editor2d-document.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor2d-document.d.ts","sourceRoot":"","sources":["../../../src/browser/model/editor2d-document.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,7 @@ const app_config_1 = require("@gedit/app-config");
27
27
  const editor2d_iterator_1 = require("./editor2d-iterator");
28
28
  const theme_1 = require("@gedit/theme");
29
29
  const render_engine_pixi_1 = require("@gedit/render-engine-pixi");
30
+ const layout_1 = require("@gedit/layout");
30
31
  // import { getAnimationKeys, getChangeAnimationData } from './utils';
31
32
  exports.maskShowArray = [
32
33
  render_engine_1.GameObjectBaseType.IMAGE,
@@ -76,6 +77,7 @@ let Editor2dDocument = class Editor2dDocument extends tree_1.TreeImpl {
76
77
  // protected componentContents: { [key: string]: Editor2dNode } = {};
77
78
  this._snaplines = [];
78
79
  this.loading = true;
80
+ this.deleteNames = [];
79
81
  this.fireContentChanged = (nodes, type, noSave, noFiredChanged) => {
80
82
  // TODO 这里修改目前还是全量的,需要优化
81
83
  const contents = nodes.map(n => ({ text: 'treeNode' }));
@@ -280,7 +282,99 @@ let Editor2dDocument = class Editor2dDocument extends tree_1.TreeImpl {
280
282
  }
281
283
  }
282
284
  }
283
- delNode(targetNode, silent) {
285
+ async layerChangeDialog(name = this.deleteNames.join(',')) {
286
+ const dialog = new layout_1.ConfirmDialog({
287
+ title: '警告',
288
+ msg: `元素${name ? `(${name})` : ''}在代码中被使用,移动或删除将会出错!`,
289
+ ok: '确定',
290
+ cancel: '取消'
291
+ });
292
+ return dialog.open();
293
+ }
294
+ inCodeFunc(node) {
295
+ var _a;
296
+ // 获取所有代码片段,判断是否在代码片段内被使用;
297
+ const uri = new utils_1.URI(this.uri);
298
+ const id = uri.displayName.split('.')[0];
299
+ // const nodePath = Editor2dNode.getNodePath(node);
300
+ const nodePathName = editor2d_1.Editor2dNode.getNodeNamePath(node);
301
+ const scripts = (_a = this.componentProvider) === null || _a === void 0 ? void 0 : _a.getScriptsById(id);
302
+ if (scripts && scripts.length) {
303
+ const reg = new RegExp(`select(|ByNamePath)\\((\\"|\\')(${node.id}|${node.name}|${nodePathName})(\\"|\\')\\)`, 'i');
304
+ let inCode = scripts.some(c => c.match(reg));
305
+ if (!inCode) {
306
+ const matchReg = /selectMatch\((\'|\")(.*)(\'|\")\)/ig;
307
+ const selectMatch = scripts.map(c => {
308
+ const t = c.match(matchReg);
309
+ if (t) {
310
+ return t.some(tt => {
311
+ var _a;
312
+ const text = tt.replace(matchReg, '$2');
313
+ return !!((_a = node.name) === null || _a === void 0 ? void 0 : _a.match(text));
314
+ });
315
+ }
316
+ });
317
+ inCode = inCode || selectMatch.some(c => c);
318
+ }
319
+ if (inCode) {
320
+ this.deleteNames.push(node.name || '');
321
+ }
322
+ return inCode;
323
+ }
324
+ return false;
325
+ }
326
+ async nodeLayerChangeAll(nodes) {
327
+ const inCodes = await Promise.all(nodes.map(async (node) => this.inCodeFunc(node)));
328
+ if (inCodes.some(c => c)) {
329
+ return this.layerChangeDialog();
330
+ }
331
+ return true;
332
+ }
333
+ async nodeLayerChange(node) {
334
+ if (node.children) {
335
+ return this.nodeLayerChangeAll([node].concat(node.children));
336
+ }
337
+ const inCode = this.inCodeFunc(node);
338
+ if (inCode) {
339
+ return this.layerChangeDialog();
340
+ }
341
+ return true;
342
+ }
343
+ /**
344
+ * 元素分组移动,检测是否在代码中被 selectByNamePath 使用过
345
+ * @param nodes
346
+ * @param targetNode
347
+ * @returns
348
+ */
349
+ async layerNamePathChange(nodes, targetNode) {
350
+ var _a;
351
+ const parentChange = targetNode ? nodes.filter(c => c.parent !== targetNode) : nodes;
352
+ const uri = new utils_1.URI(this.uri);
353
+ const id = uri.displayName.split('.')[0];
354
+ // const nodePath = Editor2dNode.getNodePath(node);
355
+ const scripts = (_a = this.componentProvider) === null || _a === void 0 ? void 0 : _a.getScriptsById(id);
356
+ // 判断是否有 byPathName;
357
+ let inCode = false;
358
+ this.deleteNames = [];
359
+ parentChange.forEach(c => {
360
+ const nodePathName = editor2d_1.Editor2dNode.getNodeNamePath(c);
361
+ const reg = new RegExp(`selectByNamePath\\((\\"|\\')(${nodePathName})(\\"|\\')\\)`, 'i');
362
+ const inCodeChild = scripts === null || scripts === void 0 ? void 0 : scripts.some(d => d.match(reg));
363
+ if (inCodeChild) {
364
+ this.deleteNames.push(c.name || '');
365
+ inCode = true;
366
+ return c;
367
+ }
368
+ });
369
+ if (inCode) {
370
+ const del = await this.layerChangeDialog();
371
+ if (!del) {
372
+ return false;
373
+ }
374
+ }
375
+ return true;
376
+ }
377
+ deleteNode(targetNode, silent) {
284
378
  if (!targetNode || editor2d_1.Editor2dNode.isRootNode(targetNode))
285
379
  return;
286
380
  const parent = targetNode.parent;
@@ -295,8 +389,20 @@ let Editor2dDocument = class Editor2dDocument extends tree_1.TreeImpl {
295
389
  this.fireContentChanged([targetNode], 'delete');
296
390
  }
297
391
  }
298
- delNodes(...targetNodes) {
299
- targetNodes.forEach(node => this.delNode(node, true));
392
+ async delNode(targetNode, silent) {
393
+ if (!targetNode || editor2d_1.Editor2dNode.isRootNode(targetNode))
394
+ return;
395
+ if (!silent) {
396
+ this.deleteNames = [];
397
+ }
398
+ const del = await this.nodeLayerChange(targetNode);
399
+ if (del) {
400
+ this.deleteNode(targetNode, silent);
401
+ }
402
+ }
403
+ async delNodes(...targetNodes) {
404
+ this.deleteNames = [];
405
+ await Promise.all(targetNodes.map(async (node) => this.delNode(node, true)));
300
406
  if (targetNodes.length > 0) {
301
407
  this.fireContentChanged(targetNodes, 'delete');
302
408
  }
@@ -309,9 +415,8 @@ let Editor2dDocument = class Editor2dDocument extends tree_1.TreeImpl {
309
415
  addChildren(node, parentNode, index = 0) {
310
416
  this.clearMask(node);
311
417
  if (node.parent) {
312
- this.delNode(node, true);
418
+ this.deleteNode(node, true);
313
419
  }
314
- ;
315
420
  if (!parentNode.children)
316
421
  parentNode.children = [];
317
422
  parentNode.children.splice(index, 0, node);
@@ -521,7 +626,7 @@ let Editor2dDocument = class Editor2dDocument extends tree_1.TreeImpl {
521
626
  * @param nodes
522
627
  * @param mask
523
628
  */
524
- toggleMask(nodes, mask) {
629
+ async toggleMask(nodes, mask) {
525
630
  if (nodes.length === 1) {
526
631
  const node = nodes[0];
527
632
  // this.updateNode(node, { isMask: !!mask });
@@ -536,6 +641,7 @@ let Editor2dDocument = class Editor2dDocument extends tree_1.TreeImpl {
536
641
  if (node.mask && node.ignoreMask || !node.mask) {
537
642
  this.setPrevNodeMask(node.previousSibling, mask ? node.id : undefined);
538
643
  }
644
+ this.refresh();
539
645
  this.fireContentChanged([node], 'update');
540
646
  return;
541
647
  }
@@ -547,7 +653,29 @@ let Editor2dDocument = class Editor2dDocument extends tree_1.TreeImpl {
547
653
  * 2. 不是:Enabled 设定 mask, hierarchy-contribution 里判断
548
654
  */
549
655
  nodes = this.getSelectedNodes();
550
- const group = this.combineNodes(nodes);
656
+ if (!mask) {
657
+ // 取消 mask
658
+ nodes.forEach(n => {
659
+ if (n.isMask && (n.mask && n.ignoreMask || !n.mask)) {
660
+ this.setPrevNodeMask(n.previousSibling, mask ? n.id : undefined);
661
+ }
662
+ n.ignoreMask = undefined;
663
+ n.mask = undefined;
664
+ n.isMask = false;
665
+ });
666
+ this.refresh();
667
+ this.fireContentChanged([...nodes], 'update');
668
+ return;
669
+ }
670
+ // 判断父级是分组,,且子级只有nodes 时,,不需建分组;
671
+ const parent = nodes[0].parent;
672
+ let group;
673
+ const equalParent = nodes.every(n => n.parent === parent);
674
+ const l = (parent === null || parent === void 0 ? void 0 : parent.children.length) === nodes.length;
675
+ if (equalParent && l && (parent === null || parent === void 0 ? void 0 : parent.displayType) === render_engine_1.GameObjectBaseType.GROUP) {
676
+ group = parent;
677
+ }
678
+ group = group || await this.combineNodes(nodes);
551
679
  if (!group) {
552
680
  return;
553
681
  }
@@ -572,6 +700,9 @@ let Editor2dDocument = class Editor2dDocument extends tree_1.TreeImpl {
572
700
  if (id) {
573
701
  group.mask = id;
574
702
  }
703
+ if (group === parent) {
704
+ this.refresh();
705
+ }
575
706
  this.fireContentChanged(childNodes.concat([lastNode, group]), 'update');
576
707
  }
577
708
  /**
@@ -657,13 +788,21 @@ let Editor2dDocument = class Editor2dDocument extends tree_1.TreeImpl {
657
788
  * @param targetNode
658
789
  * @param toAfter - 是否加到目标节点的后边,默认前面
659
790
  */
660
- moveToNode(node, targetNode, toAfter) {
791
+ async moveToNode(node, targetNode, toAfter) {
661
792
  if (editor2d_1.Editor2dNode.isRootNode(targetNode) || tree_1.TreeNode.equals(node, targetNode))
662
793
  return;
794
+ // 判断是否有被 selectByPath 选择;
795
+ if (editor2d_1.Editor2dNode.getNodePath(node.parent) !==
796
+ editor2d_1.Editor2dNode.getNodePath(targetNode.parent)) {
797
+ const del = await this.layerNamePathChange([node], targetNode);
798
+ if (!del) {
799
+ return;
800
+ }
801
+ }
663
802
  this.clearMask(node);
664
803
  const parent = targetNode.parent;
665
804
  const children = parent.children;
666
- this.delNode(node, true);
805
+ this.deleteNode(node, true);
667
806
  const targetIndex = children.indexOf(targetNode);
668
807
  const previousSibling = targetNode.previousSibling;
669
808
  const nextSibling = targetNode.nextSibling;
@@ -704,7 +843,15 @@ let Editor2dDocument = class Editor2dDocument extends tree_1.TreeImpl {
704
843
  this.refresh(parent);
705
844
  this.fireContentChanged([node], 'update');
706
845
  }
707
- moveToNodesAsChildren(nodes, targetNode) {
846
+ async moveToNodesAsChildren(nodes, targetNode, skip) {
847
+ // 移动分组提示删除;
848
+ if (!skip) {
849
+ const del = await this.layerNamePathChange(nodes, targetNode);
850
+ if (!del) {
851
+ return false;
852
+ }
853
+ }
854
+ // await this.nodeLayerChangeAll(nodes);
708
855
  // 后边的先加
709
856
  nodes = nodes.slice().reverse();
710
857
  const canAddAsChild = !nodes.find(s => !this.canbeAddAsChild(targetNode, s.displayType, s));
@@ -778,15 +925,19 @@ let Editor2dDocument = class Editor2dDocument extends tree_1.TreeImpl {
778
925
  * 合并分组
779
926
  * @param nodes
780
927
  */
781
- combineNodes(n) {
928
+ async combineNodes(n) {
782
929
  // 合成分组保持图层顺序
783
930
  const nodes = n || this.getSelectedNodes();
931
+ const del = await this.layerNamePathChange(nodes);
932
+ if (!del) {
933
+ return;
934
+ }
784
935
  if (nodes.length > 0) {
785
936
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
786
937
  const parent = nodes[0].parent;
787
938
  const index = tree_1.CompositeTreeNode.indexOf(parent, nodes[0]);
788
939
  const group = this.createDisplayNode(render_engine_1.GameObjectBaseType.GROUP, parent, undefined, index);
789
- this.moveToNodesAsChildren(nodes, group);
940
+ await this.moveToNodesAsChildren(nodes, group, true);
790
941
  return group;
791
942
  }
792
943
  }
@@ -794,8 +945,12 @@ let Editor2dDocument = class Editor2dDocument extends tree_1.TreeImpl {
794
945
  * 解除分组,目前只支持图层
795
946
  * @param node
796
947
  */
797
- unCombineNode(node) {
948
+ async unCombineNode(node) {
798
949
  if (node.children && node.parent) {
950
+ const del = await this.layerNamePathChange(node.children);
951
+ if (!del) {
952
+ return;
953
+ }
799
954
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
800
955
  const parentNode = node.parent;
801
956
  const curIndex = tree_1.CompositeTreeNode.indexOf(parentNode, node);
@@ -803,7 +958,7 @@ let Editor2dDocument = class Editor2dDocument extends tree_1.TreeImpl {
803
958
  this.addChildren(n, parentNode, curIndex);
804
959
  });
805
960
  }
806
- this.delNode(node);
961
+ this.deleteNode(node);
807
962
  }
808
963
  /**
809
964
  * 可以作为子节点
@@ -1 +1 @@
1
- {"version":3,"file":"editor2d-document.js","sourceRoot":"","sources":["../../../src/browser/model/editor2d-document.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor2d-document.js","sourceRoot":"","sources":["../../../src/browser/model/editor2d-document.ts"],"names":[],"mappings":"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"}
@@ -3,12 +3,14 @@ import { Editor2dNode } from '../model/editor2d';
3
3
  import { GameSceneIDE, GameWidgetIDE, RenderEngineIDEService } from '@gedit/render-engine-ide';
4
4
  import { AppConfigData } from '@gedit/app-config/lib/common';
5
5
  import { Disposable, DisposableImpl, Emitter, SizeSchema } from '@gedit/utils';
6
+ import { EntityManager } from '@gedit/playground';
6
7
  interface GameObjectState {
7
8
  selectable: boolean;
8
9
  adsorbable: boolean;
9
10
  isInside: boolean;
10
11
  }
11
12
  export interface CanvasDrawOpts {
13
+ entityManager?: EntityManager;
12
14
  host: HTMLElement;
13
15
  renderEngine: RenderEngineIDEService;
14
16
  assetsURI: string;
@@ -82,6 +84,7 @@ export declare class CanvasDraw extends DisposableImpl {
82
84
  readonly onGameObjectChange: import("@gedit/utils").Event<GameObjectChangeEvent>;
83
85
  readonly onRenderWidgetCreate: import("@gedit/utils").Event<GameWidgetIDE<GameSceneIDE<any>>>;
84
86
  loading: boolean;
87
+ engineName: string;
85
88
  constructor(opts: CanvasDrawOpts);
86
89
  protected startLoadLibs(): Promise<void>;
87
90
  getData(): CanvasDrawData | undefined;
@@ -92,10 +95,11 @@ export declare class CanvasDraw extends DisposableImpl {
92
95
  * @param engineName
93
96
  * @return visible changed
94
97
  */
95
- protected toggleVisible(appConfig: AppConfigData, visible: boolean, engineName: string): boolean;
98
+ protected toggleVisible(appConfig: AppConfigData, visible: boolean): boolean;
96
99
  addComponentSymbolsMetaToLoader(scene: GameSceneIDE): void;
100
+ protected switchSnapline(node?: Editor2dNode): void;
97
101
  updateGameObjects(scene: GameSceneIDE, content: Editor2dNode): void;
98
- updateGameObject(scene: GameSceneIDE, node: Editor2dNode, depth: number, renderKeys: string[], isInside?: boolean, parentId?: string): number;
102
+ updateGameObject(scene: GameSceneIDE, node: Editor2dNode, depth: number, renderKeys: string[], isInside?: boolean, parentId?: string, engineName?: string): number;
99
103
  protected fireLoading(allLoaded: boolean): void;
100
104
  protected lastZoom: number;
101
105
  refreshScale(delayDraw?: boolean, zoom?: number): void;
@@ -1 +1 @@
1
- {"version":3,"file":"canvas-draw.d.ts","sourceRoot":"","sources":["../../../src/browser/playground/canvas-draw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canvas-draw.d.ts","sourceRoot":"","sources":["../../../src/browser/playground/canvas-draw.ts"],"names":[],"mappings":"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"}