@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.
- package/lib/browser/model/editor2d-document.d.ts +21 -7
- package/lib/browser/model/editor2d-document.d.ts.map +1 -1
- package/lib/browser/model/editor2d-document.js +169 -14
- package/lib/browser/model/editor2d-document.js.map +1 -1
- package/lib/browser/playground/canvas-draw.d.ts +6 -2
- package/lib/browser/playground/canvas-draw.d.ts.map +1 -1
- package/lib/browser/playground/canvas-draw.js +148 -26
- package/lib/browser/playground/canvas-draw.js.map +1 -1
- package/lib/browser/playground/canvas-layer.d.ts +2 -2
- package/lib/browser/playground/canvas-layer.d.ts.map +1 -1
- package/lib/browser/playground/canvas-layer.js +57 -41
- package/lib/browser/playground/canvas-layer.js.map +1 -1
- package/lib/browser/playground/playground-contribution.d.ts +2 -0
- package/lib/browser/playground/playground-contribution.d.ts.map +1 -1
- package/lib/browser/playground/playground-contribution.js +19 -2
- package/lib/browser/playground/playground-contribution.js.map +1 -1
- package/lib/browser/playground/selection-entity-manager.d.ts +1 -1
- package/lib/browser/playground/selection-entity-manager.d.ts.map +1 -1
- package/lib/browser/playground/selection-entity-manager.js +19 -3
- package/lib/browser/playground/selection-entity-manager.js.map +1 -1
- package/lib/browser/utils/snapshot.js +1 -1
- package/lib/browser/utils/snapshot.js.map +1 -1
- package/package.json +9 -9
- package/src/browser/model/editor2d-document.ts +183 -14
- package/src/browser/playground/canvas-draw.ts +308 -94
- package/src/browser/playground/canvas-layer.ts +41 -25
- package/src/browser/playground/playground-contribution.ts +15 -3
- package/src/browser/playground/selection-entity-manager.tsx +17 -3
- package/src/browser/style/index.less +6 -0
- 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
|
-
|
|
74
|
-
|
|
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":"AACA,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAGL,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EAIZ,GAAG,EACJ,MAAM,cAAc,CAAC;AACtB,OAAO,EAEL,qBAAqB,EAErB,oBAAoB,EACpB,YAAY,EAEb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAsC,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAClH,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACxF,OAAO,EAAyC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC9F,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"editor2d-document.d.ts","sourceRoot":"","sources":["../../../src/browser/model/editor2d-document.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAGL,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EAIZ,GAAG,EACJ,MAAM,cAAc,CAAC;AACtB,OAAO,EAEL,qBAAqB,EAErB,oBAAoB,EACpB,YAAY,EAEb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAsC,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAClH,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACxF,OAAO,EAAyC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC9F,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAK5C,eAAO,MAAM,aAAa,EAAE,cAAc,EAWzC,CAAC;AACF,eAAO,MAAM,gBAAgB,EAAE,cAAc,EAG5C,CAAC;AAIF,eAAO,MAAM,yBAAyB,eAAsC,CAAC;AAE7E;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,YAAY,EAAE,GAAG,SAAS,CAAC;IAElH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC,MAAM,EAAE,CAAA;IAEnF,sBAAsB,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;IAE9C,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEtC,kBAAkB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CACrB;AAED,qBACa,gBAAiB,SAAQ,QAAQ,CAAC,YAAY,EAAE,qBAAqB,CAAE,YAAW,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,EAAE,cAAc;IAyB5H,QAAQ,CAAC,OAAO,EAAE,cAAc;IAC1B,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB;IACpD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IAC9C,SAAS,CAAC,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB;IAClE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,wBAAwB;IAC9D,QAAQ,CAAC,aAAa,EAAE,sBAAsB;IACpD,QAAQ,CAAC,SAAS,EAAE,gBAAgB;IACf,QAAQ,CAAC,iBAAiB,CAAC;IACxC,QAAQ,CAAC,YAAY,CAAC;IAhC1D,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,SAAS,CAAC,uBAAuB,uEAA8E;IAC/G,SAAS,CAAC,cAAc,uEAA8E;IACtG,QAAQ,CAAC,gBAAgB,qEAAsC;IAC/D,QAAQ,CAAC,OAAO,qEAA6B;IACtC,gBAAgB,EAAE,OAAO,CAAS;IACzC,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,CAAM;IACtC,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,YAAY,CAAa;IACjC,SAAS,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAM;IAE1C,SAAS,CAAC,UAAU,EAAE,GAAG,EAAE,CAAM;IAC1B,OAAO,UAAQ;IACtB,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,CAAM;IAErC,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;gBAGkC,OAAO,EAAE,cAAc,EACP,OAAO,EAAE,oBAAoB,EACjC,gBAAgB,EAAE,gBAAgB,EAC3B,uBAAuB,EAAE,uBAAuB,EAC/C,eAAe,EAAE,wBAAwB,EACrD,aAAa,EAAE,sBAAsB,EAC3C,SAAS,EAAE,gBAAgB,EACN,iBAAiB,CAAC,uCAA2B,EAC1D,YAAY,CAAC,0BAAc;IAgCxE,SAAS,CAAC,oBAAoB,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO;IAarD;;OAEG;IACG,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYhD,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,YAAY,EAAE,GAAG,SAAS;IAKjH;;;;OAIG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC,MAAM,EAAE;IAKnF,sBAAsB,IAAI,UAAU,CAAC,MAAM,EAAE;IAK7C;;OAEG;IACH,iBAAiB,IAAI,UAAU,CAAC,MAAM,EAAE;IAQxC,iBAAiB,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,EACrD,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC;IAmCjI,QAAQ,CAAC,UAAU,CAAC,EAAE,YAAY,GAAG,YAAY,GAAG,SAAS;IAS7D,gBAAgB,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,YAAY,GAAG,SAAS;IAwCvI,cAAc,CAAC,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI;IAoBnC,iBAAiB,CAAC,IAAI,GAAE,MAAmC,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAUhG,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,GAAG,SAAS;IAkC7C,kBAAkB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAQvE,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAWvE;;;;;OAKG;IACG,mBAAmB,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,UAAU,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IA+B7F,UAAU,CAAC,UAAU,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAevD,OAAO,CAAC,UAAU,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAWnE,QAAQ,CAAC,GAAG,WAAW,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ7D,MAAM,CAAC,UAAU,EAAE,YAAY,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAKhE,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,qBAAqB,EAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IAc3F;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,UAAO,GAAG,IAAI;IAOrD,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,IAAI,GAAE,OAAO,CAAC,YAAY,CAAM,EAAE,WAAW,GAAE,OAAe,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI;IAwBzJ;;;;;OAKG;IACH,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,GAAE,MAAU,GAAG,MAAM;IAuBtF,WAAW,CAAC,QAAQ,EAAE,YAAY,GAAG,YAAY,EAAE;IAOnD,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAyB9C,SAAS,IAAI,IAAI;IAMjB,SAAS,CAAC,cAAc,IAAI,YAAY;IASxC,kBAAkB,UAAW,YAAY,EAAE,QAAQ,KAAK,GAAG,QAAQ,GAAG,QAAQ,WAAW,OAAO,mBAAmB,OAAO,KAAG,IAAI,CAc/H;IAEF,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC;IAI1B,IAAI,KAAK,IAAI,OAAO,CAEnB;IAED,IAAI,QAAQ,IAAI,IAAI,GAAG,KAAK,CAE3B;IAED,IAAI,cAAc,IAAI,KAAK,CAAC,IAAI,CAAC,CAEhC;IAED;;;;;;OAMG;IACH,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAe7C,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAuBlD,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAiC7D;;;;;;OAMG;IACG,UAAU,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAiFtE;;;;;;OAMG;IACH,UAAU,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAyBzD,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI;IAQ7D,UAAU,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAQzD,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI;IAQjD;;;OAGG;IACH,UAAU,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,IAAI;IAOvC;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,IAAI;IAOzC,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI;IAQtD;;;;;OAKG;IACG,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAwD1F,qBAAqB,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAmB9G,qBAAqB,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,YAAY,GAAG,OAAO;IAa/E,gBAAgB,IAAI,YAAY,EAAE;IAYlC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,qBAAqB,GAAG,SAAS;IAI7E,WAAW,CAAC,IAAI,EAAE,YAAY,GAAG,qBAAqB,GAAG,MAAM;IAa/D,gBAAgB,CAAC,IAAI,EAAE,YAAY,GAAG,qBAAqB,GAAG,MAAM;IASpE,2BAA2B,IAAI,YAAY,EAAE;IAI7C,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO;IASxD;;;OAGG;IACG,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAkBzE;;;OAGG;IACG,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB9E;;;;;OAKG;IACH,eAAe,CAAC,UAAU,EAAE,YAAY,GAAG,qBAAqB,EAAE,gBAAgB,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,YAAY,GAAG,OAAO;IA8BtI,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,oBAAoB,GAAG,OAAO;IAK3F,mBAAmB,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI;IAIrC,oBAAoB,CAClB,YAAY,EAAE,MAAM,MAAM,EAAE,EAC5B,YAAY,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,yBAAyB,CAAC,MAAM,CAAC,KAAK,IAAI,GACrF,UAAU;IA+Db,OAAO,CAAC,eAAe,CAAoI;IAE3J;;;OAGG;IACH,OAAO,CAAC,GAAG,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAqBhF,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY;IAI/C,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IA0BD,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS;IAatD,iBAAiB,CAAC,KAAK,CAAC,EAAE,cAAc,EAAE,GAAG,YAAY,EAAE;IAW3D,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAO5C;;;OAGG;IACH,iBAAiB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAWnF;;;;;OAKG;IACH,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,EAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IA8CpG,IAAI,SAAS,IAAI,GAAG,EAAE,CAErB;IAED,IAAI,SAAS,CAAC,KAAK,EAJF,GAAG,EAID,EAKlB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM;IAQrC;;OAEG;IACH,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,GAAG,GAAG,GAAG,CAAA;KAAE,EAAE;IAa3E;;OAEG;IACH,qBAAqB,IAAI,IAAI;CAgC9B"}
|
|
@@ -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
|
-
|
|
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
|
-
|
|
299
|
-
|
|
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.
|
|
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
|
-
|
|
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.
|
|
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.
|
|
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
|
|
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":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"canvas-draw.d.ts","sourceRoot":"","sources":["../../../src/browser/playground/canvas-draw.ts"],"names":[],"mappings":"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"}
|