@gedit/editor-2d 0.1.114 → 0.1.115

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 (65) hide show
  1. package/lib/browser/editor2d-context-key-service.js +24 -35
  2. package/lib/browser/editor2d-context-key-service.js.map +1 -1
  3. package/lib/browser/editor2d-contribution.js +89 -139
  4. package/lib/browser/editor2d-contribution.js.map +1 -1
  5. package/lib/browser/editor2d-frontend-module.js +20 -20
  6. package/lib/browser/editor2d-frontend-module.js.map +1 -1
  7. package/lib/browser/editor2d-label-provider.d.ts +0 -1
  8. package/lib/browser/editor2d-label-provider.d.ts.map +1 -1
  9. package/lib/browser/editor2d-label-provider.js +37 -58
  10. package/lib/browser/editor2d-label-provider.js.map +1 -1
  11. package/lib/browser/editor2d-model-provider.js +61 -127
  12. package/lib/browser/editor2d-model-provider.js.map +1 -1
  13. package/lib/browser/editor2d-ref-provider-contribution.js +44 -110
  14. package/lib/browser/editor2d-ref-provider-contribution.js.map +1 -1
  15. package/lib/browser/editor2d-service.js +66 -85
  16. package/lib/browser/editor2d-service.js.map +1 -1
  17. package/lib/browser/model/editor2d-document.d.ts +1 -1
  18. package/lib/browser/model/editor2d-document.d.ts.map +1 -1
  19. package/lib/browser/model/editor2d-document.js +358 -526
  20. package/lib/browser/model/editor2d-document.js.map +1 -1
  21. package/lib/browser/model/editor2d-iterator.js +27 -67
  22. package/lib/browser/model/editor2d-iterator.js.map +1 -1
  23. package/lib/browser/model/editor2d-model-container.js +10 -21
  24. package/lib/browser/model/editor2d-model-container.js.map +1 -1
  25. package/lib/browser/model/editor2d-model.js +77 -92
  26. package/lib/browser/model/editor2d-model.js.map +1 -1
  27. package/lib/browser/model/editor2d-selection.js +16 -43
  28. package/lib/browser/model/editor2d-selection.js.map +1 -1
  29. package/lib/browser/model/editor2d-widget.js +71 -90
  30. package/lib/browser/model/editor2d-widget.js.map +1 -1
  31. package/lib/browser/model/editor2d.js +41 -127
  32. package/lib/browser/model/editor2d.js.map +1 -1
  33. package/lib/browser/model/utils/anim.utils.js +14 -14
  34. package/lib/browser/model/utils/anim.utils.js.map +1 -1
  35. package/lib/browser/playground/canvas-draw-layer.js +45 -69
  36. package/lib/browser/playground/canvas-draw-layer.js.map +1 -1
  37. package/lib/browser/playground/canvas-draw.js +142 -244
  38. package/lib/browser/playground/canvas-draw.js.map +1 -1
  39. package/lib/browser/playground/canvas-layer.js +54 -101
  40. package/lib/browser/playground/canvas-layer.js.map +1 -1
  41. package/lib/browser/playground/entities/document-entity.js +8 -28
  42. package/lib/browser/playground/entities/document-entity.js.map +1 -1
  43. package/lib/browser/playground/entities/editor2d-entity.js +14 -37
  44. package/lib/browser/playground/entities/editor2d-entity.js.map +1 -1
  45. package/lib/browser/playground/playground-context.d.ts +3 -1
  46. package/lib/browser/playground/playground-context.d.ts.map +1 -1
  47. package/lib/browser/playground/playground-context.js +49 -47
  48. package/lib/browser/playground/playground-context.js.map +1 -1
  49. package/lib/browser/playground/playground-contribution.js +61 -65
  50. package/lib/browser/playground/playground-contribution.js.map +1 -1
  51. package/lib/browser/playground/selection-entity-manager.js +74 -132
  52. package/lib/browser/playground/selection-entity-manager.js.map +1 -1
  53. package/lib/browser/playground/selector-extend-icons.js +15 -16
  54. package/lib/browser/playground/selector-extend-icons.js.map +1 -1
  55. package/lib/browser/playground/selector-extend-renderer.d.ts +3 -2
  56. package/lib/browser/playground/selector-extend-renderer.d.ts.map +1 -1
  57. package/lib/browser/playground/selector-extend-renderer.js +67 -52
  58. package/lib/browser/playground/selector-extend-renderer.js.map +1 -1
  59. package/lib/browser/utils/snapshot.js +81 -172
  60. package/lib/browser/utils/snapshot.js.map +1 -1
  61. package/package.json +7 -7
  62. package/src/browser/editor2d-label-provider.ts +1 -15
  63. package/src/browser/model/editor2d-document.ts +6 -2
  64. package/src/browser/playground/playground-context.ts +2 -0
  65. package/src/browser/playground/selector-extend-renderer.tsx +43 -10
@@ -1,84 +1,11 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- var __assign = (this && this.__assign) || function () {
18
- __assign = Object.assign || function(t) {
19
- for (var s, i = 1, n = arguments.length; i < n; i++) {
20
- s = arguments[i];
21
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
- t[p] = s[p];
23
- }
24
- return t;
25
- };
26
- return __assign.apply(this, arguments);
27
- };
28
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
- return new (P || (P = Promise))(function (resolve, reject) {
31
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
32
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
33
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
34
- step((generator = generator.apply(thisArg, _arguments || [])).next());
35
- });
36
- };
37
- var __generator = (this && this.__generator) || function (thisArg, body) {
38
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
39
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
40
- function verb(n) { return function (v) { return step([n, v]); }; }
41
- function step(op) {
42
- if (f) throw new TypeError("Generator is already executing.");
43
- while (_) try {
44
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
45
- if (y = 0, t) op = [op[0] & 2, t.value];
46
- switch (op[0]) {
47
- case 0: case 1: t = op; break;
48
- case 4: _.label++; return { value: op[1], done: false };
49
- case 5: _.label++; y = op[1]; op = [0]; continue;
50
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
51
- default:
52
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
53
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
54
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
55
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
56
- if (t[2]) _.ops.pop();
57
- _.trys.pop(); continue;
58
- }
59
- op = body.call(thisArg, _);
60
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
61
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
62
- }
63
- };
64
- var __values = (this && this.__values) || function(o) {
65
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
66
- if (m) return m.call(o);
67
- if (o && typeof o.length === "number") return {
68
- next: function () {
69
- if (o && i >= o.length) o = void 0;
70
- return { value: o && o[i++], done: !o };
71
- }
72
- };
73
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
74
- };
75
2
  Object.defineProperty(exports, "__esModule", { value: true });
76
3
  exports.CanvasDraw = exports.GameObjectEventType = void 0;
77
- var render_engine_1 = require("@gedit/render-engine");
78
- var editor2d_1 = require("../model/editor2d");
79
- var utils_1 = require("@gedit/utils");
80
- var WAIT_TO_DISPOSE_TIME = 30000; // 延迟删除, 这样tab在频繁切换时候不会有延迟
81
- var SCENE_KEY = 'boot';
4
+ const render_engine_1 = require("@gedit/render-engine");
5
+ const editor2d_1 = require("../model/editor2d");
6
+ const utils_1 = require("@gedit/utils");
7
+ const WAIT_TO_DISPOSE_TIME = 30000; // 延迟删除, 这样tab在频繁切换时候不会有延迟
8
+ const SCENE_KEY = 'boot';
82
9
  var GameObjectEventType;
83
10
  (function (GameObjectEventType) {
84
11
  GameObjectEventType[GameObjectEventType["CREATE"] = 0] = "CREATE";
@@ -89,24 +16,24 @@ var GameObjectEventType;
89
16
  function replaceSymbolKey(originData, config, obj, path) {
90
17
  if (!obj)
91
18
  return originData;
92
- (0, utils_1.each)(obj, function (v, key) {
19
+ (0, utils_1.each)(obj, (v, key) => {
93
20
  var _a;
94
- var currentPath = path ? "".concat(path, ".").concat(key) : key;
21
+ const currentPath = path ? `${path}.${key}` : key;
95
22
  if (typeof v === 'string') {
96
- var matched = v.match(/^\$\{([^\}]+)\}$/);
23
+ let matched = v.match(/^\$\{([^\}]+)\}$/);
97
24
  // 旧的写法, TODO 暂时做兼容
98
25
  if (!matched && key === 'textureId') {
99
26
  matched = v.match(/^symbol\/(.+)/);
100
27
  }
101
28
  if (matched) {
102
- var symbolId_1 = matched[1];
103
- var symbolValue = ((_a = config.symbols.find(function (s) { return s.id === symbolId_1; })) === null || _a === void 0 ? void 0 : _a.value) || '';
29
+ const symbolId = matched[1];
30
+ const symbolValue = ((_a = config.symbols.find(s => s.id === symbolId)) === null || _a === void 0 ? void 0 : _a.value) || '';
104
31
  originData = (0, utils_1.setByKey)(originData, currentPath, symbolValue, true, true);
105
32
  }
106
33
  }
107
34
  else if (Array.isArray(v)) {
108
- v.forEach(function (item, i) {
109
- originData = replaceSymbolKey(originData, config, item, "".concat(currentPath, ".").concat(i));
35
+ v.forEach((item, i) => {
36
+ originData = replaceSymbolKey(originData, config, item, `${currentPath}.${i}`);
110
37
  });
111
38
  }
112
39
  else if (typeof v === 'object') {
@@ -116,59 +43,48 @@ function replaceSymbolKey(originData, config, obj, path) {
116
43
  return originData;
117
44
  }
118
45
  function toNodeData(node, config) {
119
- var originData = (0, utils_1.omit)(node, ['parent', 'previousSibling', 'nextSibling', 'children']);
46
+ const originData = (0, utils_1.omit)(node, ['parent', 'previousSibling', 'nextSibling', 'children']);
120
47
  return replaceSymbolKey(originData, config, originData);
121
48
  }
122
49
  ;
123
50
  /**
124
51
  * 画布绘制逻辑
125
52
  */
126
- var CanvasDraw = /** @class */ (function (_super) {
127
- __extends(CanvasDraw, _super);
128
- function CanvasDraw(opts) {
129
- var _this = _super.call(this) || this;
130
- _this.opts = opts;
131
- _this.onDrawEmitter = new utils_1.Emitter();
132
- _this.onLoadingEmitter = new utils_1.Emitter();
133
- _this.onGameObjectChangeEmitter = new utils_1.Emitter();
134
- _this.booted = false;
135
- _this.libLoaded = false;
136
- _this.libLoading = false;
137
- _this.lastVisible = false;
138
- _this.gameObjectCache = new Map();
139
- _this.nodeCache = new Map();
140
- _this.nodeVersionCache = new Map();
141
- _this.lastRenderKeys = [];
142
- _this.allCount = -1;
143
- _this.onDraw = _this.onDrawEmitter.event;
144
- _this.onLoading = _this.onLoadingEmitter.event;
145
- _this.onGameObjectChange = _this.onGameObjectChangeEmitter.event;
146
- _this.loading = true;
147
- _this.lastZoom = 0.1;
148
- _this.toDispose.pushAll([
149
- _this.onDrawEmitter,
150
- _this.onLoadingEmitter,
151
- _this.onGameObjectChangeEmitter,
53
+ class CanvasDraw extends utils_1.DisposableImpl {
54
+ constructor(opts) {
55
+ super();
56
+ this.opts = opts;
57
+ this.onDrawEmitter = new utils_1.Emitter();
58
+ this.onLoadingEmitter = new utils_1.Emitter();
59
+ this.onGameObjectChangeEmitter = new utils_1.Emitter();
60
+ this.booted = false;
61
+ this.libLoaded = false;
62
+ this.libLoading = false;
63
+ this.lastVisible = false;
64
+ this.gameObjectCache = new Map();
65
+ this.nodeCache = new Map();
66
+ this.nodeVersionCache = new Map();
67
+ this.lastRenderKeys = [];
68
+ this.allCount = -1;
69
+ this.onDraw = this.onDrawEmitter.event;
70
+ this.onLoading = this.onLoadingEmitter.event;
71
+ this.onGameObjectChange = this.onGameObjectChangeEmitter.event;
72
+ this.loading = true;
73
+ this.lastZoom = 0.1;
74
+ this.toDispose.pushAll([
75
+ this.onDrawEmitter,
76
+ this.onLoadingEmitter,
77
+ this.onGameObjectChangeEmitter,
152
78
  ]);
153
- return _this;
154
79
  }
155
- CanvasDraw.prototype.startLoadLibs = function () {
156
- return __awaiter(this, void 0, void 0, function () {
157
- return __generator(this, function (_a) {
158
- switch (_a.label) {
159
- case 0: return [4 /*yield*/, this.opts.renderEngine.loadIDELibs()];
160
- case 1:
161
- _a.sent();
162
- this.libLoaded = true;
163
- this.draw();
164
- return [2 /*return*/];
165
- }
166
- });
167
- });
168
- };
169
- CanvasDraw.prototype.getData = function () {
80
+ async startLoadLibs() {
81
+ await this.opts.renderEngine.loadIDELibs();
82
+ this.libLoaded = true;
83
+ this.draw();
84
+ }
85
+ getData() {
170
86
  return this.data;
171
- };
87
+ }
172
88
  /**
173
89
  * 在不可见情况下,销毁gameObject,来提升性能
174
90
  * @param appConfig
@@ -176,8 +92,7 @@ var CanvasDraw = /** @class */ (function (_super) {
176
92
  * @param engineName
177
93
  * @return visible changed
178
94
  */
179
- CanvasDraw.prototype.toggleVisible = function (appConfig, visible, engineName) {
180
- var _this = this;
95
+ toggleVisible(appConfig, visible, engineName) {
181
96
  var _a, _b;
182
97
  if (this.waitToDispose) {
183
98
  this.waitToDispose.dispose();
@@ -187,35 +102,35 @@ var CanvasDraw = /** @class */ (function (_super) {
187
102
  if (appConfig.pixelArt !== this.pixelArt && this.renderWidget) {
188
103
  this.renderWidget.dispose();
189
104
  }
190
- var isScene = new utils_1.URI((_a = this.data) === null || _a === void 0 ? void 0 : _a.uri).path.ext === '.scene';
105
+ const isScene = new utils_1.URI((_a = this.data) === null || _a === void 0 ? void 0 : _a.uri).path.ext === '.scene';
191
106
  // 组件模式用透明
192
- var backgroundColor = isScene ? appConfig.backgroundColor : '';
107
+ const backgroundColor = isScene ? appConfig.backgroundColor : '';
193
108
  this.pixelArt = appConfig.pixelArt;
194
109
  if (visible && !this.renderWidget) {
195
- var element_1 = window.document.createElement('canvas');
196
- this.opts.host.appendChild(element_1);
197
- element_1.className = 'gedit-canvas-transparent';
198
- this.renderWidget = this.opts.renderEngine.createGameWidget(engineName, __assign(__assign({}, appConfig), { width: 0, height: 0, uri: (_b = this.data) === null || _b === void 0 ? void 0 : _b.uri, canvas: element_1, backgroundColor: backgroundColor, assetsURI: this.opts.assetsURI, isIDE: true }));
199
- this.renderWidget.toDispose.push(utils_1.Disposable.create(function () {
200
- if (_this.renderWidgetDispose) {
201
- _this.renderWidgetDispose.dispose();
202
- _this.renderWidgetDispose = undefined;
110
+ const element = window.document.createElement('canvas');
111
+ this.opts.host.appendChild(element);
112
+ element.className = 'gedit-canvas-transparent';
113
+ this.renderWidget = this.opts.renderEngine.createGameWidget(engineName, Object.assign(Object.assign({}, appConfig), { width: 0, height: 0, uri: (_b = this.data) === null || _b === void 0 ? void 0 : _b.uri, canvas: element, backgroundColor, assetsURI: this.opts.assetsURI, isIDE: true }));
114
+ this.renderWidget.toDispose.push(utils_1.Disposable.create(() => {
115
+ if (this.renderWidgetDispose) {
116
+ this.renderWidgetDispose.dispose();
117
+ this.renderWidgetDispose = undefined;
203
118
  }
204
- _this.opts.host.removeChild(element_1);
205
- _this.renderWidget = undefined;
206
- _this.booted = false;
207
- _this.loading = true;
208
- _this.onLoadingEmitter.fire({
119
+ this.opts.host.removeChild(element);
120
+ this.renderWidget = undefined;
121
+ this.booted = false;
122
+ this.loading = true;
123
+ this.onLoadingEmitter.fire({
209
124
  loaded: false,
210
- allCount: _this.allCount,
125
+ allCount: this.allCount,
211
126
  currentCount: 0,
212
127
  reload: true,
213
128
  });
214
129
  }));
215
130
  this.renderWidgetDispose = this.toDispose.push(this.renderWidget);
216
- this.renderWidget.start().then(function () {
217
- _this.booted = true;
218
- _this.draw();
131
+ this.renderWidget.start().then(() => {
132
+ this.booted = true;
133
+ this.draw();
219
134
  });
220
135
  }
221
136
  // 更新backgroundColor
@@ -224,12 +139,12 @@ var CanvasDraw = /** @class */ (function (_super) {
224
139
  }
225
140
  // 延迟删除不可见的游戏对象, 提升性能
226
141
  if (!visible && this.renderWidget) {
227
- var timeoutId_1 = setTimeout(function () {
228
- if (_this.renderWidget)
229
- _this.renderWidget.dispose();
142
+ const timeoutId = setTimeout(() => {
143
+ if (this.renderWidget)
144
+ this.renderWidget.dispose();
230
145
  }, WAIT_TO_DISPOSE_TIME);
231
- this.waitToDispose = utils_1.Disposable.create(function () {
232
- window.clearTimeout(timeoutId_1);
146
+ this.waitToDispose = utils_1.Disposable.create(() => {
147
+ window.clearTimeout(timeoutId);
233
148
  });
234
149
  }
235
150
  if (visible !== this.lastVisible) {
@@ -237,37 +152,33 @@ var CanvasDraw = /** @class */ (function (_super) {
237
152
  return true;
238
153
  }
239
154
  return false;
240
- };
155
+ }
241
156
  ;
242
- CanvasDraw.prototype.updateGameObjects = function (scene, content) {
243
- var _this = this;
244
- var renderKeys = [];
157
+ updateGameObjects(scene, content) {
158
+ const renderKeys = [];
245
159
  if (!content)
246
160
  return;
247
161
  this.allCount = this.updateGameObject(scene, content, 0, renderKeys);
248
162
  // 删除节点
249
- this.lastRenderKeys.forEach(function (key) {
163
+ this.lastRenderKeys.forEach(key => {
250
164
  if (!renderKeys.includes(key)) {
251
- var obj = _this.gameObjectCache.get(key);
165
+ const obj = this.gameObjectCache.get(key);
252
166
  if (obj) {
253
167
  obj.dispose();
254
168
  }
255
169
  }
256
170
  });
257
171
  this.lastRenderKeys = renderKeys;
258
- };
259
- CanvasDraw.prototype.updateGameObject = function (scene, node, depth, renderKeys, isInside, parentId) {
260
- var e_1, _a;
261
- var _this = this;
262
- var _b;
263
- if (isInside === void 0) { isInside = false; }
264
- var nodePath = editor2d_1.Editor2dNode.getNodePath(node);
265
- var children = (node.children || []).slice().reverse();
266
- var deco = this.opts.renderEngine.getGameObjectDecoration(this.data.engineName, node.displayType);
267
- var compId = !editor2d_1.Editor2dNode.isRootNode(node) && deco.getComponentId ? deco.getComponentId(node) : undefined;
268
- var adsorbable = true; // 是否可被吸附
269
- var selectable = !isInside && (!this.opts.isTemplate || !editor2d_1.Editor2dNode.isTemplateDisabled(node)); // 是否可被选中
270
- var childInside = false;
172
+ }
173
+ updateGameObject(scene, node, depth, renderKeys, isInside = false, parentId) {
174
+ var _a;
175
+ const nodePath = editor2d_1.Editor2dNode.getNodePath(node);
176
+ let children = (node.children || []).slice().reverse();
177
+ const deco = this.opts.renderEngine.getGameObjectDecoration(this.data.engineName, node.displayType);
178
+ const compId = !editor2d_1.Editor2dNode.isRootNode(node) && deco.getComponentId ? deco.getComponentId(node) : undefined;
179
+ let adsorbable = true; // 是否可被吸附
180
+ const selectable = !isInside && (!this.opts.isTemplate || !editor2d_1.Editor2dNode.isTemplateDisabled(node)); // 是否可被选中
181
+ let childInside = false;
271
182
  if (compId) {
272
183
  children = (this.opts.getComponentContent(compId, node) || []).slice().reverse();
273
184
  // 内部节点
@@ -277,80 +188,70 @@ var CanvasDraw = /** @class */ (function (_super) {
277
188
  }
278
189
  // 子节点先创建
279
190
  if (children && children.length > 0) {
280
- try {
281
- for (var children_1 = __values(children), children_1_1 = children_1.next(); !children_1_1.done; children_1_1 = children_1.next()) {
282
- var child = children_1_1.value;
283
- depth = this.updateGameObject(scene, child, depth, renderKeys, childInside || isInside, nodePath);
284
- }
285
- }
286
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
287
- finally {
288
- try {
289
- if (children_1_1 && !children_1_1.done && (_a = children_1.return)) _a.call(children_1);
290
- }
291
- finally { if (e_1) throw e_1.error; }
191
+ for (const child of children) {
192
+ depth = this.updateGameObject(scene, child, depth, renderKeys, childInside || isInside, nodePath);
292
193
  }
293
194
  }
294
- var gameObjectCache = this.gameObjectCache;
295
- var currentDepth = depth;
296
- var oldNode = this.nodeCache.get(nodePath);
297
- var nodeChanged = node !== oldNode;
298
- var gameObject = gameObjectCache.get(nodePath);
195
+ const gameObjectCache = this.gameObjectCache;
196
+ const currentDepth = depth;
197
+ const oldNode = this.nodeCache.get(nodePath);
198
+ const nodeChanged = node !== oldNode;
199
+ let gameObject = gameObjectCache.get(nodePath);
299
200
  // 节点重置
300
201
  if (nodeChanged) {
301
202
  this.nodeCache.set(nodePath, node);
302
203
  }
303
- var firstCreate = false;
304
- var nodeData = toNodeData(node, this.data.appConfig);
305
- var newVersion = currentDepth + (node.version || 0) + ':' + (((_b = this.data) === null || _b === void 0 ? void 0 : _b.configVersion) || 0);
204
+ let firstCreate = false;
205
+ const nodeData = toNodeData(node, this.data.appConfig);
206
+ const newVersion = currentDepth + (node.version || 0) + ':' + (((_a = this.data) === null || _a === void 0 ? void 0 : _a.configVersion) || 0);
306
207
  // 内部节点无法选中
307
208
  if (!gameObject) {
308
- var gameObjectChildren = children ? children.map(function (c) { return gameObjectCache.get(editor2d_1.Editor2dNode.getNodePath(c)); }) : [];
209
+ const gameObjectChildren = children ? children.map(c => gameObjectCache.get(editor2d_1.Editor2dNode.getNodePath(c))) : [];
309
210
  try {
310
- gameObject = scene.createAuto(__assign(__assign({}, nodeData), { id: nodePath, depth: currentDepth, parentId: parentId }), gameObjectChildren);
211
+ gameObject = scene.createAuto(Object.assign(Object.assign({}, nodeData), { id: nodePath, depth: currentDepth, parentId }), gameObjectChildren);
311
212
  }
312
213
  catch (e) {
313
214
  console.error(e);
314
215
  return depth;
315
216
  }
316
217
  gameObjectCache.set(nodePath, gameObject);
317
- scene.onGameObjectDispose(gameObject, function () {
318
- _this.gameObjectCache.delete(nodePath);
319
- _this.nodeVersionCache.delete(nodePath);
320
- _this.nodeCache.delete(nodePath);
321
- _this.onGameObjectChangeEmitter.fire({ type: GameObjectEventType.DESTROY, gameObject: gameObject, node: _this.nodeCache.get(nodePath) });
218
+ scene.onGameObjectDispose(gameObject, () => {
219
+ this.gameObjectCache.delete(nodePath);
220
+ this.nodeVersionCache.delete(nodePath);
221
+ this.nodeCache.delete(nodePath);
222
+ this.onGameObjectChangeEmitter.fire({ type: GameObjectEventType.DESTROY, gameObject: gameObject, node: this.nodeCache.get(nodePath) });
322
223
  });
323
- scene.onGameObjectUpdate(gameObject, function () {
324
- _this.onGameObjectChangeEmitter.fire({
224
+ scene.onGameObjectUpdate(gameObject, () => {
225
+ this.onGameObjectChangeEmitter.fire({
325
226
  type: GameObjectEventType.UPDATE,
326
227
  gameObject: gameObject,
327
- node: _this.nodeCache.get(nodePath),
228
+ node: this.nodeCache.get(nodePath),
328
229
  });
329
230
  });
330
- scene.onGameObjectCreate(gameObject, function () {
331
- _this.nodeVersionCache.set(nodePath, newVersion);
231
+ scene.onGameObjectCreate(gameObject, () => {
232
+ this.nodeVersionCache.set(nodePath, newVersion);
332
233
  // 根节点创建完成则代表加载完成
333
- _this.fireLoading(editor2d_1.Editor2dNode.isRootNode(_this.nodeCache.get(nodePath)));
234
+ this.fireLoading(editor2d_1.Editor2dNode.isRootNode(this.nodeCache.get(nodePath)));
334
235
  });
335
- scene.onGameObjectError(gameObject, function (error) {
336
- _this.onGameObjectChangeEmitter.fire({
236
+ scene.onGameObjectError(gameObject, error => {
237
+ this.onGameObjectChangeEmitter.fire({
337
238
  type: GameObjectEventType.ERROR,
338
239
  gameObject: gameObject,
339
- node: _this.nodeCache.get(nodePath),
340
- error: error,
240
+ node: this.nodeCache.get(nodePath),
241
+ error,
341
242
  });
342
243
  });
343
244
  this.onGameObjectChangeEmitter.fire({
344
245
  type: GameObjectEventType.CREATE,
345
246
  gameObject: gameObject,
346
247
  node: this.nodeCache.get(nodePath),
347
- state: { selectable: selectable, adsorbable: adsorbable, isInside: isInside }
248
+ state: { selectable, adsorbable, isInside }
348
249
  });
349
250
  firstCreate = true;
350
251
  }
351
252
  if (gameObject && gameObject.getTextureId) {
352
- var oldTexture = gameObject.getTextureId();
353
- var newTexture = nodeData.textureId;
253
+ const oldTexture = gameObject.getTextureId();
254
+ const newTexture = nodeData.textureId;
354
255
  // 素材更新则销毁重新创建
355
256
  if (oldTexture !== newTexture) {
356
257
  gameObject.dispose();
@@ -358,11 +259,11 @@ var CanvasDraw = /** @class */ (function (_super) {
358
259
  return this.updateGameObject(scene, node, currentDepth, renderKeys, isInside, parentId);
359
260
  }
360
261
  }
361
- var update = function () {
362
- var oldVersion = _this.nodeVersionCache.get(nodePath);
262
+ const update = () => {
263
+ const oldVersion = this.nodeVersionCache.get(nodePath);
363
264
  if (nodeChanged || oldVersion !== newVersion) {
364
- gameObject.update(__assign(__assign({}, nodeData), { parentId: parentId, id: nodePath, textureId: nodeData.textureId, depth: currentDepth }));
365
- _this.nodeVersionCache.set(nodePath, newVersion);
265
+ gameObject.update(Object.assign(Object.assign({}, nodeData), { parentId, id: nodePath, textureId: nodeData.textureId, depth: currentDepth }));
266
+ this.nodeVersionCache.set(nodePath, newVersion);
366
267
  }
367
268
  };
368
269
  if (!firstCreate && gameObject.created) {
@@ -376,62 +277,60 @@ var CanvasDraw = /** @class */ (function (_super) {
376
277
  renderKeys.push(nodePath);
377
278
  depth++;
378
279
  return depth;
379
- };
380
- CanvasDraw.prototype.fireLoading = function (allLoaded) {
381
- var allCount = this.allCount;
382
- var currentCount = this.nodeVersionCache.size;
280
+ }
281
+ fireLoading(allLoaded) {
282
+ const allCount = this.allCount;
283
+ const currentCount = this.nodeVersionCache.size;
383
284
  if (allLoaded) {
384
285
  this.loading = false;
385
286
  }
386
287
  this.onLoadingEmitter.fire({
387
288
  loaded: allLoaded,
388
- allCount: allCount,
389
- currentCount: currentCount,
289
+ allCount,
290
+ currentCount,
390
291
  });
391
- };
392
- CanvasDraw.prototype.refreshScale = function (delayDraw, zoom) {
292
+ }
293
+ refreshScale(delayDraw = true, zoom = this.lastZoom) {
393
294
  var _a, _b;
394
- if (delayDraw === void 0) { delayDraw = true; }
395
- if (zoom === void 0) { zoom = this.lastZoom; }
396
- var visible = (_a = this.data) === null || _a === void 0 ? void 0 : _a.visible;
397
- var scene = (_b = this.renderWidget) === null || _b === void 0 ? void 0 : _b.currentScene;
295
+ const visible = (_a = this.data) === null || _a === void 0 ? void 0 : _a.visible;
296
+ const scene = (_b = this.renderWidget) === null || _b === void 0 ? void 0 : _b.currentScene;
398
297
  this.lastZoom = zoom;
399
298
  if (scene) {
400
299
  // 隐藏的画布把像素点降低减少内存消耗
401
300
  scene.setScale(visible ? zoom : 0.1, delayDraw);
402
301
  }
403
- };
404
- CanvasDraw.prototype.update = function (data) {
302
+ }
303
+ update(data) {
405
304
  this.data = data;
406
305
  this.draw();
407
- };
306
+ }
408
307
  /**
409
308
  * 获取画布的宽高
410
309
  */
411
- CanvasDraw.prototype.getSceneSize = function () {
310
+ getSceneSize() {
412
311
  if (!this.data)
413
312
  return undefined;
414
- var _a = this.data, content = _a.content, appConfig = _a.appConfig;
313
+ const { content, appConfig } = this.data;
415
314
  if (!appConfig || !content)
416
315
  return undefined;
417
316
  return render_engine_1.GameConfig.getSceneSize(appConfig, content);
418
- };
419
- CanvasDraw.prototype.draw = function () {
317
+ }
318
+ draw() {
420
319
  if (!this.data)
421
320
  return;
422
- var _a = this.data, visible = _a.visible, appConfig = _a.appConfig, content = _a.content, engineName = _a.engineName;
321
+ const { visible, appConfig, content, engineName } = this.data;
423
322
  if (!this.libLoaded && !this.libLoading) {
424
323
  this.libLoading = true;
425
324
  this.startLoadLibs();
426
325
  return;
427
326
  }
428
- var size = this.getSceneSize();
327
+ const size = this.getSceneSize();
429
328
  if (!content || !appConfig || !this.libLoaded || !size)
430
329
  return;
431
- var visibleChanged = this.toggleVisible(appConfig, visible, engineName);
330
+ const visibleChanged = this.toggleVisible(appConfig, visible, engineName);
432
331
  if (!this.renderWidget || !this.booted)
433
332
  return;
434
- var scene = this.renderWidget.switchScene(SCENE_KEY, size);
333
+ const scene = this.renderWidget.switchScene(SCENE_KEY, size);
435
334
  /**
436
335
  * 更新画布大小
437
336
  */
@@ -450,8 +349,7 @@ var CanvasDraw = /** @class */ (function (_super) {
450
349
  // const enlargeBounds = this.selectionEntityManager.getEntityEnlargeBounds(CANVAS_MIN_WIDTH, CANVAS_MIN_HEIGHT);
451
350
  // this.renderWidget.updateCanvasBounds(enlargeBounds);
452
351
  this.onDrawEmitter.fire(size);
453
- };
454
- return CanvasDraw;
455
- }(utils_1.DisposableImpl));
352
+ }
353
+ }
456
354
  exports.CanvasDraw = CanvasDraw;
457
355
  //# sourceMappingURL=canvas-draw.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"canvas-draw.js","sourceRoot":"","sources":["../../../src/browser/playground/canvas-draw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canvas-draw.js","sourceRoot":"","sources":["../../../src/browser/playground/canvas-draw.ts"],"names":[],"mappings":"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"}