@gedit/editor-2d 0.1.102 → 0.1.106

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 (40) hide show
  1. package/lib/browser/editor2d-contribution.d.ts.map +1 -1
  2. package/lib/browser/editor2d-contribution.js +3 -2
  3. package/lib/browser/editor2d-contribution.js.map +1 -1
  4. package/lib/browser/model/editor2d-document.d.ts +3 -2
  5. package/lib/browser/model/editor2d-document.d.ts.map +1 -1
  6. package/lib/browser/model/editor2d-document.js +21 -9
  7. package/lib/browser/model/editor2d-document.js.map +1 -1
  8. package/lib/browser/model/editor2d.d.ts +3 -3
  9. package/lib/browser/model/editor2d.d.ts.map +1 -1
  10. package/lib/browser/model/editor2d.js +13 -6
  11. package/lib/browser/model/editor2d.js.map +1 -1
  12. package/lib/browser/model/utils/anim.utils.d.ts.map +1 -1
  13. package/lib/browser/model/utils/anim.utils.js +2 -0
  14. package/lib/browser/model/utils/anim.utils.js.map +1 -1
  15. package/lib/browser/playground/index.d.ts +2 -0
  16. package/lib/browser/playground/index.d.ts.map +1 -1
  17. package/lib/browser/playground/index.js +4 -0
  18. package/lib/browser/playground/index.js.map +1 -1
  19. package/lib/browser/playground/selection-entity-manager.d.ts.map +1 -1
  20. package/lib/browser/playground/selection-entity-manager.js +8 -5
  21. package/lib/browser/playground/selection-entity-manager.js.map +1 -1
  22. package/lib/browser/playground/selector-extend-icons.d.ts +8 -0
  23. package/lib/browser/playground/selector-extend-icons.d.ts.map +1 -0
  24. package/lib/browser/playground/selector-extend-icons.js +42 -0
  25. package/lib/browser/playground/selector-extend-icons.js.map +1 -0
  26. package/lib/browser/playground/selector-extend-renderer.d.ts +9 -0
  27. package/lib/browser/playground/selector-extend-renderer.d.ts.map +1 -0
  28. package/lib/browser/playground/selector-extend-renderer.js +150 -0
  29. package/lib/browser/playground/selector-extend-renderer.js.map +1 -0
  30. package/package.json +9 -8
  31. package/src/browser/editor2d-contribution.ts +4 -3
  32. package/src/browser/model/editor2d-document.ts +25 -10
  33. package/src/browser/model/editor2d.ts +14 -6
  34. package/src/browser/model/utils/anim.utils.ts +2 -1
  35. package/src/browser/playground/index.ts +3 -0
  36. package/src/browser/playground/selection-entity-manager.tsx +10 -6
  37. package/src/browser/playground/selector-extend-icons.tsx +82 -0
  38. package/src/browser/playground/selector-extend-renderer.tsx +212 -0
  39. package/src/browser/style/index.less +1 -0
  40. package/src/browser/style/selector-extend.less +47 -0
@@ -1 +1 @@
1
- {"version":3,"file":"selection-entity-manager.js","sourceRoot":"","sources":["../../../src/browser/playground/selection-entity-manager.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"selection-entity-manager.js","sourceRoot":"","sources":["../../../src/browser/playground/selection-entity-manager.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { GameObjectSelectorExtendType as SelectorExtendType } from '@gedit/render-engine-ide';
3
+ export { SelectorExtendType, };
4
+ export declare const flipY: () => JSX.Element;
5
+ export declare const selectIcon: {
6
+ [key: string]: any;
7
+ };
8
+ //# sourceMappingURL=selector-extend-icons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector-extend-icons.d.ts","sourceRoot":"","sources":["../../../src/browser/playground/selector-extend-icons.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,4BAA4B,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9F,OAAO,EACL,kBAAkB,GACnB,CAAC;AAyCF,eAAO,MAAM,KAAK,mBAoBjB,CAAC;AACF,eAAO,MAAM,UAAU,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAO5C,CAAC"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.selectIcon = exports.flipY = exports.SelectorExtendType = void 0;
5
+ /* eslint-disable max-len */
6
+ var React = require("react");
7
+ var icons_1 = require("@ant-design/icons");
8
+ var render_engine_ide_1 = require("@gedit/render-engine-ide");
9
+ Object.defineProperty(exports, "SelectorExtendType", { enumerable: true, get: function () { return render_engine_ide_1.GameObjectSelectorExtendType; } });
10
+ /* const commonIcon = () => (
11
+ <svg
12
+ viewBox="0 0 1024 1024"
13
+ width="1em"
14
+ height="1em"
15
+ fill="currentColor"
16
+ fillRule="nonzero"
17
+ stroke="none"
18
+ >
19
+ <path
20
+ d="M704 64a64 64 0 0 1 64 64v128h128a64 64 0 0 1 64 64v576a64 64 0 0 1-64 64H320a64 64 0 0 1-64-64v-128H128a64 64 0 0 1-64-64V128a64 64 0 0 1 64-64h576z m0 64H128v576h288v64H320v128h576V320h-128v96h-64V128zM416 288v192A96 96 0 0 0 512 576h134.336L565.504 495.168l45.248-45.248 158.4 158.4-158.4 158.4-45.248-45.248L646.848 640H512a160 160 0 0 1-159.68-149.504L352 480v-192h64z"
21
+ p-id="4758"
22
+ />
23
+ </svg>
24
+ ); */
25
+ var flipX = function () { return (React.createElement("svg", { width: "1em", height: "1em", viewBox: "0 0 14 13" },
26
+ React.createElement("g", { id: "\u9875\u9762-1", stroke: "currentColor", strokeWidth: "1", fill: "none", fillRule: "evenodd", strokeLinecap: "round", strokeLinejoin: "round" },
27
+ React.createElement("polygon", { id: "\u8DEF\u5F84-2", points: "0 10.9051487 4.6880494 10.9051487 4.6880494 1.4679916e-14" }),
28
+ React.createElement("polygon", { id: "\u8DEF\u5F84-2\u5907\u4EFD", fill: "currentColor", transform: "translate(9.344025, 5.452574) scale(-1, 1) translate(-9.344025, -5.452574) ", points: "7 10.9051487 11.6880494 10.9051487 11.6880494 1.4679916e-14" })))); };
29
+ var flipY = function () { return (React.createElement("svg", { width: "1em", height: "1em", viewBox: "0 0 13 14" },
30
+ React.createElement("g", { id: "\u9875\u9762-1", stroke: "currentColor", strokeWidth: "1", fill: "none", fillRule: "evenodd", strokeLinecap: "round", strokeLinejoin: "round", transform: "scale(-1, 1) rotate(90.000000)" },
31
+ React.createElement("polygon", { points: "0 10.9051487 4.6880494 10.9051487 4.6880494 4.80706427e-14" }),
32
+ React.createElement("polygon", { fill: "currentColor", transform: "translate(9.344025, 5.452574) scale(-1, 1) translate(-9.344025, -5.452574) ", points: "7 10.9051487 11.6880494 10.9051487 11.6880494 4.84992691e-14" })))); };
33
+ exports.flipY = flipY;
34
+ exports.selectIcon = (_a = {},
35
+ _a[render_engine_ide_1.GameObjectSelectorExtendType.TO_TOP] = React.createElement(icons_1.ArrowUpOutlined, null),
36
+ _a[render_engine_ide_1.GameObjectSelectorExtendType.TO_BOTTOM] = React.createElement(icons_1.ArrowDownOutlined, null),
37
+ _a[render_engine_ide_1.GameObjectSelectorExtendType.FLIP_X] = React.createElement(icons_1.default, { component: flipX }),
38
+ _a[render_engine_ide_1.GameObjectSelectorExtendType.FLIP_Y] = React.createElement(icons_1.default, { component: exports.flipY }),
39
+ _a[render_engine_ide_1.GameObjectSelectorExtendType.DELETE] = React.createElement(icons_1.DeleteOutlined, null),
40
+ _a[render_engine_ide_1.GameObjectSelectorExtendType.LINK] = React.createElement(icons_1.LinkOutlined, null),
41
+ _a);
42
+ //# sourceMappingURL=selector-extend-icons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector-extend-icons.js","sourceRoot":"","sources":["../../../src/browser/playground/selector-extend-icons.tsx"],"names":[],"mappings":";;;;AAAA,4BAA4B;AAC5B,6BAA+B;AAC/B,2CAK2B;AAC3B,8DAA8F;AAG5F,mGAHuC,gDAAkB,OAGvC;AAEpB;;;;;;;;;;;;;;KAcK;AAEL,IAAM,KAAK,GAAG,cAAM,OAAA,CAClB,6BAAK,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,KAAK,EAAC,OAAO,EAAC,WAAW;IAC/C,2BACE,EAAE,EAAC,gBAAM,EACT,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,IAAI,EAAC,MAAM,EACX,QAAQ,EAAC,SAAS,EAClB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO;QAEtB,iCACE,EAAE,EAAC,gBAAM,EACT,MAAM,EAAC,2DAA2D,GACzD;QACX,iCACE,EAAE,EAAC,4BAAQ,EACX,IAAI,EAAC,cAAc,EACnB,SAAS,EAAC,6EAA6E,EACvF,MAAM,EAAC,6DAA6D,GAC3D,CACT,CACA,CACP,EAvBmB,CAuBnB,CAAC;AACK,IAAM,KAAK,GAAG,cAAM,OAAA,CACzB,6BAAK,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,KAAK,EAAC,OAAO,EAAC,WAAW;IAC/C,2BACE,EAAE,EAAC,gBAAM,EACT,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,IAAI,EAAC,MAAM,EACX,QAAQ,EAAC,SAAS,EAClB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,SAAS,EAAC,gCAAgC;QAE1C,iCAAS,MAAM,EAAC,4DAA4D,GAAG;QAC/E,iCACE,IAAI,EAAC,cAAc,EACnB,SAAS,EAAC,6EAA6E,EACvF,MAAM,EAAC,8DAA8D,GACrE,CACA,CACA,CACP,EApB0B,CAoB1B,CAAC;AApBW,QAAA,KAAK,SAoBhB;AACW,QAAA,UAAU;IACrB,GAAC,gDAAkB,CAAC,MAAM,IAAG,oBAAC,uBAAe,OAAG;IAChD,GAAC,gDAAkB,CAAC,SAAS,IAAG,oBAAC,yBAAiB,OAAG;IACrD,GAAC,gDAAkB,CAAC,MAAM,IAAG,oBAAC,eAAI,IAAC,SAAS,EAAE,KAAK,GAAI;IACvD,GAAC,gDAAkB,CAAC,MAAM,IAAG,oBAAC,eAAI,IAAC,SAAS,EAAE,aAAK,GAAI;IACvD,GAAC,gDAAkB,CAAC,MAAM,IAAG,oBAAC,sBAAc,OAAG;IAC/C,GAAC,gDAAkB,CAAC,IAAI,IAAG,oBAAC,oBAAY,OAAG;QAC3C"}
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import { GameObjectIDERegister } from '@gedit/render-engine-ide';
3
+ import { PlaygroundContext, SelectorEntityRendererProps } from '@gedit/playground';
4
+ export interface SelectorExtendProps extends SelectorEntityRendererProps {
5
+ register?: GameObjectIDERegister;
6
+ context?: PlaygroundContext;
7
+ }
8
+ export declare const SelectorExtendRender: (props: SelectorExtendProps) => JSX.Element;
9
+ //# sourceMappingURL=selector-extend-renderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector-extend-renderer.d.ts","sourceRoot":"","sources":["../../../src/browser/playground/selector-extend-renderer.tsx"],"names":[],"mappings":";AAMA,OAAO,EAAE,qBAAqB,EAA8C,MAAM,0BAA0B,CAAC;AAC7G,OAAO,EAAE,iBAAiB,EAAE,2BAA2B,EAAG,MAAM,mBAAmB,CAAC;AAMpF,MAAM,WAAW,mBAAoB,SAAQ,2BAA2B;IACtE,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IACjC,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B;AA8HD,eAAO,MAAM,oBAAoB,UAAW,mBAAmB,gBAqE9D,CAAC"}
@@ -0,0 +1,150 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.SelectorExtendRender = void 0;
15
+ var React = require("react");
16
+ var clsx_1 = require("clsx");
17
+ var ui_1 = require("@gedit/ui");
18
+ var selector_extend_icons_1 = require("./selector-extend-icons");
19
+ var getClassName = function (str) { return "gedit-selector-extend-".concat(str); };
20
+ var defaultExtends = [
21
+ {
22
+ type: selector_extend_icons_1.SelectorExtendType.LINK,
23
+ title: '配置链接',
24
+ category: 1,
25
+ order: 0,
26
+ visible: function (node, register) { return (register === null || register === void 0 ? void 0 : register.getDisableKeys().indexOf('link')) === -1; },
27
+ event: {
28
+ title: '跳转链接配置',
29
+ type: 'selectorExtendAttr',
30
+ children: [
31
+ {
32
+ type: 'text',
33
+ key: 'link',
34
+ label: '链接',
35
+ placeholder: '请输出 url 地址',
36
+ },
37
+ ],
38
+ },
39
+ },
40
+ {
41
+ type: selector_extend_icons_1.SelectorExtendType.TO_TOP,
42
+ title: '前置一层',
43
+ category: 2,
44
+ order: 0,
45
+ },
46
+ {
47
+ type: selector_extend_icons_1.SelectorExtendType.TO_BOTTOM,
48
+ title: '后置一层',
49
+ category: 2,
50
+ order: 1,
51
+ },
52
+ {
53
+ type: selector_extend_icons_1.SelectorExtendType.FLIP_X,
54
+ title: 'X 轴镜像',
55
+ category: 2,
56
+ order: 2,
57
+ visible: function (node, register) { return (register === null || register === void 0 ? void 0 : register.getDisableKeys().indexOf('flip.x')) === -1; },
58
+ },
59
+ {
60
+ type: selector_extend_icons_1.SelectorExtendType.FLIP_Y,
61
+ title: 'Y 轴镜像',
62
+ category: 2,
63
+ order: 3,
64
+ visible: function (node, register) { return (register === null || register === void 0 ? void 0 : register.getDisableKeys().indexOf('flip.y')) === -1; },
65
+ },
66
+ {
67
+ type: selector_extend_icons_1.SelectorExtendType.DELETE,
68
+ title: '删除图层',
69
+ parentClassName: getClassName('delete'),
70
+ category: 3,
71
+ order: 0,
72
+ },
73
+ ];
74
+ var sortData = function (data) {
75
+ var states = {};
76
+ data.forEach(function (c) {
77
+ var _a = c.category, category = _a === void 0 ? 'empty' : _a;
78
+ states[category] = states[category] || [];
79
+ states[category].push(c);
80
+ states[category] = states[category].sort(function (a, b) { return (a.order || 0) - (b.order || 0); });
81
+ });
82
+ return Object.keys(states)
83
+ .sort(function (a, b) { return parseFloat(a || '0') - parseFloat(b || '0'); })
84
+ .map(function (k) { return states[parseFloat(k)]; });
85
+ };
86
+ var SelectorIcon = function (props) {
87
+ var item = props.item, onChange = props.onChange, node = props.node;
88
+ var child = (React.createElement("div", { className: (0, clsx_1.default)(getClassName('icon'), item.className), onMouseDown: function (e) {
89
+ e.stopPropagation();
90
+ e.preventDefault();
91
+ if (item.event) {
92
+ return;
93
+ }
94
+ onChange === null || onChange === void 0 ? void 0 : onChange(item.type);
95
+ } }, selector_extend_icons_1.selectIcon[item.type]));
96
+ if (item.event) {
97
+ return (React.createElement(ui_1.Popover, { content: ui_1.Form.renderBySchema(__assign(__assign({}, item.event), { context: {
98
+ node: node,
99
+ }, onChange: function (key, value) {
100
+ var _a;
101
+ onChange === null || onChange === void 0 ? void 0 : onChange('updateData', (_a = {},
102
+ _a[key] = value,
103
+ _a));
104
+ }, values: node, size: 'middle' })), title: item.event.title || item.title, placement: "right" }, child));
105
+ }
106
+ if (item.title) {
107
+ return (React.createElement(ui_1.Tooltip, { title: item.title, placement: "right" }, child));
108
+ }
109
+ return child;
110
+ };
111
+ var SelectorExtendRender = function (props) {
112
+ var entity = props.entity, register = props.register, context = props.context;
113
+ var node = entity.node;
114
+ var _a = ((register === null || register === void 0 ? void 0 : register.decoration) || {}).selectorExtends, selectorExtends = _a === void 0 ? [] : _a;
115
+ var childData = sortData([]
116
+ .concat(defaultExtends, selectorExtends)
117
+ .filter(function (c) { return (c.visible ? c.visible(node, register) : true); }));
118
+ var onChange = function (type, value) {
119
+ var _a, _b;
120
+ var document = context.document;
121
+ switch (type) {
122
+ case selector_extend_icons_1.SelectorExtendType.TO_TOP:
123
+ document.moveUp(node);
124
+ break;
125
+ case selector_extend_icons_1.SelectorExtendType.TO_BOTTOM:
126
+ document.moveDown(node);
127
+ break;
128
+ case selector_extend_icons_1.SelectorExtendType.FLIP_X:
129
+ document.updateNode(node, { flip: __assign(__assign({}, node === null || node === void 0 ? void 0 : node.flip), { x: !((_a = node === null || node === void 0 ? void 0 : node.flip) === null || _a === void 0 ? void 0 : _a.x) }) }, true);
130
+ break;
131
+ case selector_extend_icons_1.SelectorExtendType.FLIP_Y:
132
+ document.updateNode(node, { flip: __assign(__assign({}, node === null || node === void 0 ? void 0 : node.flip), { y: !((_b = node === null || node === void 0 ? void 0 : node.flip) === null || _b === void 0 ? void 0 : _b.y) }) }, true);
133
+ break;
134
+ case selector_extend_icons_1.SelectorExtendType.DELETE:
135
+ document.delNodes(node);
136
+ break;
137
+ case 'updateData':
138
+ console.log(value);
139
+ document.updateNode(node, value, true);
140
+ break;
141
+ default:
142
+ console.warn("\u65E0\u6548\u7C7B\u578B: ".concat(type, "."));
143
+ break;
144
+ }
145
+ };
146
+ return (React.createElement("div", { className: getClassName('wrapper') },
147
+ React.createElement("div", null, childData.map(function (c, i) { return (React.createElement("div", { className: (0, clsx_1.default)(getClassName('icon-wrapper'), c.map(function (d) { return d.parentClassName; }).join(' ')), key: i.toString() }, c.map(function (item) { return (React.createElement(SelectorIcon, { item: item, onChange: onChange, node: node, key: item.type })); }))); }))));
148
+ };
149
+ exports.SelectorExtendRender = SelectorExtendRender;
150
+ //# sourceMappingURL=selector-extend-renderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector-extend-renderer.js","sourceRoot":"","sources":["../../../src/browser/playground/selector-extend-renderer.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gedit/editor-2d",
3
- "version": "0.1.102",
3
+ "version": "0.1.106",
4
4
  "license": "MIT",
5
5
  "main": "lib/browser/index",
6
6
  "typings": "lib/browser/index.d.ts",
@@ -9,12 +9,13 @@
9
9
  "src"
10
10
  ],
11
11
  "dependencies": {
12
- "@gedit/app-config": "^0.1.97",
13
- "@gedit/editor": "^0.1.75",
14
- "@gedit/playground": "^0.1.83",
15
- "@gedit/render-engine-ide": "^0.1.102",
16
- "@gedit/workspace-2d": "^0.1.79",
17
- "json-stringify-pretty-compact": "^2.0.0"
12
+ "@gedit/app-config": "^0.1.101",
13
+ "@gedit/editor": "^0.1.78",
14
+ "@gedit/playground": "^0.1.86",
15
+ "@gedit/render-engine-ide": "^0.1.106",
16
+ "@gedit/workspace-2d": "^0.1.82",
17
+ "json-stringify-pretty-compact": "^2.0.0",
18
+ "nanoid": "^3.3.2"
18
19
  },
19
20
  "geditExtensions": [
20
21
  {
@@ -34,5 +35,5 @@
34
35
  "nyc": {
35
36
  "extends": "../../configs/nyc.json"
36
37
  },
37
- "gitHead": "6ea3bd9ad52a81cdd62e9e53aa1e270ce2f9cdef"
38
+ "gitHead": "be77214e3b5234a60a0d4c2d889c725c29206bcf"
38
39
  }
@@ -11,7 +11,7 @@ import { TabBarToolbarContribution, TabBarToolbarRegistry, Widget } from '@gedit
11
11
  import { Editor2dModel, Editor2dNode } from './model';
12
12
  import { Editor2dContextKeyService } from './editor2d-context-key-service';
13
13
  import { Editor2dModelProvider } from './editor2d-model-provider';
14
- import { URI } from '@gedit/utils';
14
+ import { debounce, URI } from '@gedit/utils';
15
15
  import { RenderEngineIDEService } from '@gedit/render-engine-ide';
16
16
 
17
17
  export namespace Editor2dCommands {
@@ -49,7 +49,7 @@ export class Editor2dContribution implements FrontendApplicationContribution, Co
49
49
  onStart(): void {
50
50
  // this.appShell.onDidChangeActiveWidget(this.updateFocusContextKeys.bind(this));
51
51
  this.modelProvider.onModelCreate(model => {
52
- model.onSelectionChanged(e => this.autoOpenUrls(e.selectedNodes as Editor2dNode[], model));
52
+ model.onSelectionChanged(debounce(() => this.autoOpenUrls(model?.selection.selectedNodes as Editor2dNode[], model), 100));
53
53
  });
54
54
  }
55
55
 
@@ -148,11 +148,12 @@ export class Editor2dContribution implements FrontendApplicationContribution, Co
148
148
  }
149
149
  autoOpenUrls(selectedNodes: Editor2dNode[], model: Editor2dModel): void {
150
150
  const newUrls: string[] = [];
151
+ const multiple = selectedNodes.length > 1;
151
152
  selectedNodes.forEach(node => {
152
153
  const register = this.renderEngineService.getGameObjectIDERegister(model.document.engineName, node.displayType);
153
154
  if (register.getOpenningUrls) {
154
155
  const d = register.getOpenningUrls(node);
155
- if (d.multiple || selectedNodes.length === 1) {
156
+ if ((d.multiple && multiple) || selectedNodes.length === 1) {
156
157
  d.urls.forEach(url => {
157
158
  if (!newUrls.includes(url)) {
158
159
  newUrls.push(url);
@@ -96,9 +96,11 @@ export class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dContainerNo
96
96
  */
97
97
  getComponentContent(compPath: string, parentNode: Editor2dNode): Editor2dNode[] | undefined {
98
98
  const comp = this.componentContents[compPath];
99
- if (comp && comp.children) return comp.children.map(c => ({ ...c, parent: parentNode })) as Editor2dNode[];
99
+ if (comp && comp.children) return comp.children.map(c => ({...c, parent: parentNode})) as Editor2dNode[];
100
100
  }
101
- createDisplayNode<E extends Editor2dNode = Editor2dNode>(displayType: GameObjectType, parent?: Editor2dNode, position?: PositionSchema, index?: number): E {
101
+
102
+ createDisplayNode<E extends Editor2dNode = Editor2dNode>(
103
+ displayType: GameObjectType, parent?: Editor2dNode, position?: PositionSchema, index?: number, data?: Partial<Editor2dNode>): E {
102
104
  let parentNode: Editor2dContainerNode;
103
105
  if (!parent || Editor2dNode.isRootNode(parent)) {
104
106
  parentNode = this.getNode(Editor2dNode.ROOT_NODE_ID) as Editor2dContainerNode;
@@ -126,7 +128,7 @@ export class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dContainerNo
126
128
  parentNode.children || [],
127
129
  this.engineService.getGameObjectIDERegister(this.engineName, displayType).decoration.name,
128
130
  displayType);
129
- const node = Editor2dNode.createNode({ ...attrs, name }, displayType);
131
+ const node = Editor2dNode.createNode({...attrs, ...data, name}, displayType, undefined, Object.keys(this.nodes));
130
132
  this.addChildren(node, parentNode, index === undefined ? 0 : index);
131
133
  return node as E;
132
134
  }
@@ -138,7 +140,7 @@ export class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dContainerNo
138
140
  const index = children.findIndex(value => value.id === targetNode.id);
139
141
  return this.copyToParentNode(parent, targetNode, index + 1);
140
142
  }
141
- copyToParentNode(parentNode: Editor2dNode, nodeData: Editor2dNode, index?: number): Editor2dNode | undefined {
143
+ copyToParentNode(parentNode: Editor2dNode, nodeData: Editor2dNode, index?: number, position?: PositionSchema): Editor2dNode | undefined {
142
144
  let parent: Editor2dContainerNode | undefined = undefined;
143
145
  if (this.canbeAddAsChild(parentNode, nodeData.displayType)) {
144
146
  parent = parentNode as Editor2dContainerNode;
@@ -146,22 +148,28 @@ export class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dContainerNo
146
148
  parent = parentNode.parent;
147
149
  }
148
150
  if (parent) {
149
- const newNode = Editor2dNode.clone(nodeData as Editor2dNode);
151
+ const newNode = Editor2dNode.clone(nodeData as Editor2dNode, [], Object.keys(this.nodes));
150
152
  if (newNode.position) {
151
- newNode.position.x = newNode.position.x + 20;
152
- newNode.position.y = newNode.position.y + 20;
153
+ newNode.position.x = position ? position.x : newNode.position.x + 20;
154
+ newNode.position.y = position ? position.y : newNode.position.y + 20;
153
155
  }
154
156
  if (index === undefined) {
155
157
  if (parent === parentNode.parent) {
156
- index = (parent.children as TreeNode[]).findIndex(value => value.id === parentNode.id) + 1;
158
+ index = (parent.children as TreeNode[]).findIndex(value => value.id === parentNode.id);
159
+ if (index < 0) {
160
+ index = 0;
161
+ }
157
162
  } else {
158
163
  index = 0;
159
164
  }
160
165
  }
161
166
  const name = this.getUniqueName((parent.children || []) as Editor2dNode[], nodeData.name!, nodeData.displayType);
162
167
  Object.assign(newNode, { name });
163
- const children = parent.children as TreeNode[];
164
- if (!children) parent.children = [];
168
+ let children = parent.children as TreeNode[];
169
+ if (!children) {
170
+ children = parent.children = [];
171
+ parent.expanded = true;
172
+ }
165
173
  // 加到当前节点的后边
166
174
  children.splice(index, 0, newNode);
167
175
  CompositeTreeNode.setParent(newNode, index, parent);
@@ -777,4 +785,11 @@ export class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dContainerNo
777
785
  get saveVersion(): number {
778
786
  return this._saveVersion;
779
787
  }
788
+ findIndex(node: Editor2dNode): number {
789
+ const parent = node.parent;
790
+ if (parent) {
791
+ return parent.children!.indexOf(node);
792
+ }
793
+ return 0;
794
+ }
780
795
  }
@@ -1,6 +1,6 @@
1
1
  import { EditorDocumentNode } from '@gedit/editor';
2
2
  import { ExpandableTreeNode, SelectableTreeNode, TreeNode } from '@gedit/tree';
3
- import { deepClone, Disposable, generateUuid, omit, URI } from '@gedit/utils';
3
+ import { deepClone, Disposable, omit, URI } from '@gedit/utils';
4
4
  import { ResourceAutoSaveOptions, ResourceAutoSaveService, ResourceChangeEvent } from '@gedit/resource/lib/browser';
5
5
  import type { Editor2dDocument } from './editor2d-document';
6
6
  import { GameObjectBaseType, GameObjectData, GameObjectType } from '@gedit/render-engine';
@@ -10,6 +10,7 @@ import { WorkspaceResourceService } from '@gedit/workspace-2d';
10
10
  import { PlaygroundConfig, SelectorEntityRendererProps } from '@gedit/playground';
11
11
  import type { CanvasDraw } from '../playground/canvas-draw';
12
12
  import type { PlaygroundContext2d } from '../playground/playground-context';
13
+ import { nanoid } from 'nanoid';
13
14
 
14
15
  const stringify = require('json-stringify-pretty-compact');
15
16
 
@@ -87,8 +88,14 @@ export interface Editor2dContainerNode extends Editor2dNode, ExpandableTreeNode
87
88
  export namespace Editor2dNode {
88
89
  export const ROOT_NODE_ID = 'root';
89
90
  export const GLOBAL_ADD_EVENT = 'global_add_event'; // 全局添加标记事件
90
- export function createNodeId(): string {
91
- return generateUuid();
91
+ export function createNodeId(checks?: string[]): string {
92
+ // 用短id生成减少大小
93
+ const newId = nanoid(10);
94
+ // id 冲突,重新生成
95
+ if (checks && checks.includes(newId)) {
96
+ return createNodeId(checks);
97
+ }
98
+ return newId;
92
99
  }
93
100
  export function toContainerNode(node: Editor2dNode | Editor2dContainerNode): Editor2dContainerNode {
94
101
  if (!node.children) {
@@ -153,9 +160,9 @@ export namespace Editor2dNode {
153
160
  }
154
161
  return new URI(workspaceURI.path.join(path).toString());
155
162
  }
156
- export function clone(targetNode: Editor2dNode, omitKeys: string[] = []): Editor2dNode {
163
+ export function clone(targetNode: Editor2dNode, omitKeys: string[] = [], checks?: string[]): Editor2dNode {
157
164
  return deepClone(omitNode(targetNode, ['id', 'selected', ...omitKeys], node => Object.assign(node, {
158
- id: createNodeId(),
165
+ id: createNodeId(checks),
159
166
  selected: false
160
167
  })));
161
168
  }
@@ -163,7 +170,8 @@ export namespace Editor2dNode {
163
170
  /**
164
171
  * 生成普通节点
165
172
  */
166
- export function createNode(members: Partial<Editor2dNode> = {}, displayType: GameObjectType, id: string = createNodeId()): Editor2dNode {
173
+ export function createNode(members: Partial<Editor2dNode> = {}, displayType: GameObjectType, id?: string, checks?: string[]): Editor2dNode {
174
+ id = id || createNodeId(checks);
167
175
  return {
168
176
  ...members,
169
177
  displayType,
@@ -9,7 +9,7 @@ interface KeysValue {
9
9
  key: string;
10
10
  name: string;
11
11
  }
12
-
12
+ // 添加进时间轴动画的条件;
13
13
  const supportKeys: SchemaType[] = ['integer', 'float', 'color'];
14
14
  function readAnimationKeys(
15
15
  deco: SchemaDecoration,
@@ -22,6 +22,7 @@ function readAnimationKeys(
22
22
  parentName && deco.label ? `${parentName}.${deco.label}` : deco.label;
23
23
  currentKey =
24
24
  parentKey && currentKey ? `${parentKey}.${currentKey}` : currentKey;
25
+ // 进时间轴条件,必须带 label, ref: { label: 'xxx', type: 'float' };
25
26
  if (deco.properties) {
26
27
  Object.keys(deco.properties).forEach((property: string) => {
27
28
  readAnimationKeys(
@@ -3,3 +3,6 @@ export * from './playground-context';
3
3
  export * from './playground-contribution';
4
4
  export * from './canvas-layer';
5
5
  export * from './canvas-draw';
6
+
7
+ export { SelectorExtendType } from './selector-extend-icons';
8
+ export * from './selector-extend-renderer';
@@ -6,11 +6,12 @@ import {
6
6
  DefaultSelectorEntityRenderer,
7
7
  EntityManager,
8
8
  PlaygroundConfigEntity,
9
- SelectorConfigEntity
9
+ SelectorConfigEntity,
10
10
  } from '@gedit/playground';
11
11
  import type { PlaygroundContext2d } from './playground-context';
12
12
  import { Rectangle } from '@gedit/math';
13
13
  import { GameObject } from '@gedit/render-engine';
14
+ import { SelectorExtendRender } from './selector-extend-renderer';
14
15
 
15
16
  const numberToFixed4 = (data: {[key: string]: any}) => {
16
17
  const d: any = {};
@@ -44,12 +45,15 @@ export class SelectionEntityManager {
44
45
  selectionConfigEntity?.customSelectorEntityRenderer(props => {
45
46
  const newProps = {...props};
46
47
  const entity = newProps.entity as Editor2dEntity;
47
- if (this.context.options.extendEntityRenderer) {
48
- newProps.extendRenderer = () => this.context.options.extendEntityRenderer!({ ...props, context: this.context });
49
- }
50
- const deco = entity.node
51
- ? this.context.renderEngine.getGameObjectDecoration(entity.gameObject.scene.config.engine, entity.node.displayType)
48
+
49
+ const register = entity.node
50
+ ? this.context.renderEngine.getGameObjectIDERegister(entity.gameObject.scene.config.engine, entity.node.displayType)
52
51
  : undefined;
52
+ const deco = register?.decoration;
53
+ newProps.extendRenderer = () => <SelectorExtendRender {...props} register={register} context={this.context} />;
54
+ /* if (this.context.options.extendEntityRenderer) {
55
+ newProps.extendRenderer = () => this.context.options.extendEntityRenderer!({ ...props, context: this.context });
56
+ } */
53
57
  // 自定义渲染器
54
58
  if (deco && deco.selectionRenderer) {
55
59
  const Comp = deco.selectionRenderer;
@@ -0,0 +1,82 @@
1
+ /* eslint-disable max-len */
2
+ import * as React from 'react';
3
+ import Icon, {
4
+ ArrowUpOutlined,
5
+ ArrowDownOutlined,
6
+ DeleteOutlined,
7
+ LinkOutlined,
8
+ } from '@ant-design/icons';
9
+ import { GameObjectSelectorExtendType as SelectorExtendType } from '@gedit/render-engine-ide';
10
+
11
+ export {
12
+ SelectorExtendType,
13
+ };
14
+ /* const commonIcon = () => (
15
+ <svg
16
+ viewBox="0 0 1024 1024"
17
+ width="1em"
18
+ height="1em"
19
+ fill="currentColor"
20
+ fillRule="nonzero"
21
+ stroke="none"
22
+ >
23
+ <path
24
+ d="M704 64a64 64 0 0 1 64 64v128h128a64 64 0 0 1 64 64v576a64 64 0 0 1-64 64H320a64 64 0 0 1-64-64v-128H128a64 64 0 0 1-64-64V128a64 64 0 0 1 64-64h576z m0 64H128v576h288v64H320v128h576V320h-128v96h-64V128zM416 288v192A96 96 0 0 0 512 576h134.336L565.504 495.168l45.248-45.248 158.4 158.4-158.4 158.4-45.248-45.248L646.848 640H512a160 160 0 0 1-159.68-149.504L352 480v-192h64z"
25
+ p-id="4758"
26
+ />
27
+ </svg>
28
+ ); */
29
+
30
+ const flipX = () => (
31
+ <svg width="1em" height="1em" viewBox="0 0 14 13">
32
+ <g
33
+ id="页面-1"
34
+ stroke="currentColor"
35
+ strokeWidth="1"
36
+ fill="none"
37
+ fillRule="evenodd"
38
+ strokeLinecap="round"
39
+ strokeLinejoin="round"
40
+ >
41
+ <polygon
42
+ id="路径-2"
43
+ points="0 10.9051487 4.6880494 10.9051487 4.6880494 1.4679916e-14"
44
+ ></polygon>
45
+ <polygon
46
+ id="路径-2备份"
47
+ fill="currentColor"
48
+ transform="translate(9.344025, 5.452574) scale(-1, 1) translate(-9.344025, -5.452574) "
49
+ points="7 10.9051487 11.6880494 10.9051487 11.6880494 1.4679916e-14"
50
+ ></polygon>
51
+ </g>
52
+ </svg>
53
+ );
54
+ export const flipY = () => (
55
+ <svg width="1em" height="1em" viewBox="0 0 13 14">
56
+ <g
57
+ id="页面-1"
58
+ stroke="currentColor"
59
+ strokeWidth="1"
60
+ fill="none"
61
+ fillRule="evenodd"
62
+ strokeLinecap="round"
63
+ strokeLinejoin="round"
64
+ transform="scale(-1, 1) rotate(90.000000)"
65
+ >
66
+ <polygon points="0 10.9051487 4.6880494 10.9051487 4.6880494 4.80706427e-14" />
67
+ <polygon
68
+ fill="currentColor"
69
+ transform="translate(9.344025, 5.452574) scale(-1, 1) translate(-9.344025, -5.452574) "
70
+ points="7 10.9051487 11.6880494 10.9051487 11.6880494 4.84992691e-14"
71
+ />
72
+ </g>
73
+ </svg>
74
+ );
75
+ export const selectIcon: { [key: string]: any } = {
76
+ [SelectorExtendType.TO_TOP]: <ArrowUpOutlined />,
77
+ [SelectorExtendType.TO_BOTTOM]: <ArrowDownOutlined />,
78
+ [SelectorExtendType.FLIP_X]: <Icon component={flipX} />,
79
+ [SelectorExtendType.FLIP_Y]: <Icon component={flipY} />,
80
+ [SelectorExtendType.DELETE]: <DeleteOutlined />,
81
+ [SelectorExtendType.LINK]: <LinkOutlined />,
82
+ };