@node-projects/web-component-designer 0.0.120 → 0.0.122
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/dist/elements/helper/PathDataPolyfill.js +5 -28
- package/dist/elements/item/DesignItem.d.ts +1 -0
- package/dist/elements/item/DesignItem.js +4 -1
- package/dist/elements/item/IDesignItem.d.ts +1 -0
- package/dist/elements/services/DefaultServiceBootstrap.js +7 -1
- package/dist/elements/services/htmlParserService/LitElementParserService.d.ts +12 -0
- package/dist/elements/services/htmlParserService/LitElementParserService.js +106 -0
- package/dist/elements/services/htmlParserService/NodeHtmlParserService copy.d.ts +11 -0
- package/dist/elements/services/htmlParserService/NodeHtmlParserService copy.js +96 -0
- package/dist/elements/services/placementService/FlexBoxPlacementService.js +67 -9
- package/dist/elements/widgets/designerView/extensions/AbstractExtensionBase.d.ts +2 -1
- package/dist/elements/widgets/designerView/extensions/AbstractExtensionBase.js +7 -0
- package/dist/elements/widgets/designerView/extensions/PositionExtension.d.ts +0 -2
- package/dist/elements/widgets/designerView/extensions/PositionExtension.js +6 -8
- package/dist/elements/widgets/designerView/extensions/PositionExtensionProvider.js +1 -1
- package/dist/elements/widgets/designerView/extensions/ResizeExtensionProvider.js +2 -0
- package/dist/elements/widgets/designerView/extensions/svg/EllipsisExtension.d.ts +29 -0
- package/dist/elements/widgets/designerView/extensions/svg/EllipsisExtension.js +112 -0
- package/dist/elements/widgets/designerView/extensions/svg/EllipsisExtensionProvider.d.ts +9 -0
- package/dist/elements/widgets/designerView/extensions/svg/EllipsisExtensionProvider.js +12 -0
- package/dist/elements/widgets/designerView/extensions/svg/LineExtension.d.ts +20 -0
- package/dist/elements/widgets/designerView/extensions/svg/LineExtension.js +87 -0
- package/dist/elements/widgets/designerView/extensions/svg/LineExtensionProvider.d.ts +9 -0
- package/dist/elements/widgets/designerView/extensions/svg/LineExtensionProvider.js +12 -0
- package/dist/elements/widgets/designerView/extensions/svg/PathExtension.d.ts +23 -0
- package/dist/elements/widgets/designerView/extensions/svg/PathExtension.js +286 -0
- package/dist/elements/widgets/designerView/extensions/svg/PathExtensionProvider.d.ts +9 -0
- package/dist/elements/widgets/designerView/extensions/svg/PathExtensionProvider.js +12 -0
- package/dist/elements/widgets/designerView/extensions/svg/RectExtension.d.ts +34 -0
- package/dist/elements/widgets/designerView/extensions/svg/RectExtension.js +137 -0
- package/dist/elements/widgets/designerView/extensions/svg/RectExtensionProvider.d.ts +9 -0
- package/dist/elements/widgets/designerView/extensions/svg/RectExtensionProvider.js +12 -0
- package/dist/elements/widgets/designerView/overlayLayerView.d.ts +4 -1
- package/dist/elements/widgets/designerView/overlayLayerView.js +39 -0
- package/dist/elements/widgets/designerView/tools/DrawPathTool.js +11 -11
- package/dist/elements/widgets/designerView/tools/PointerTool.js +3 -0
- package/dist/elements/widgets/treeView/treeViewExtended.js +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.js +3 -2
- package/package.json +4 -4
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { EventNames } from "../../../../../enums/EventNames";
|
|
2
|
+
import { AbstractExtension } from "../AbstractExtension";
|
|
3
|
+
export class RectExtension extends AbstractExtension {
|
|
4
|
+
_parentRect;
|
|
5
|
+
_rectElement;
|
|
6
|
+
_circlePos;
|
|
7
|
+
_startPos;
|
|
8
|
+
_lastPos;
|
|
9
|
+
_originalPoint;
|
|
10
|
+
_x;
|
|
11
|
+
_y;
|
|
12
|
+
_w;
|
|
13
|
+
_h;
|
|
14
|
+
_circle1;
|
|
15
|
+
_circle2;
|
|
16
|
+
_circle3;
|
|
17
|
+
_circle4;
|
|
18
|
+
_rect = { x: 0, y: 0, w: 0, h: 0 };
|
|
19
|
+
constructor(extensionManager, designerView, extendedItem) {
|
|
20
|
+
super(extensionManager, designerView, extendedItem);
|
|
21
|
+
}
|
|
22
|
+
extend() {
|
|
23
|
+
this._parentRect = this.extendedItem.element.parentElement.getBoundingClientRect();
|
|
24
|
+
this._rectElement = this.extendedItem.node;
|
|
25
|
+
this._x = this._rectElement.x.baseVal.value;
|
|
26
|
+
this._y = this._rectElement.y.baseVal.value;
|
|
27
|
+
this._w = this._rectElement.width.baseVal.value;
|
|
28
|
+
this._h = this._rectElement.height.baseVal.value;
|
|
29
|
+
this._circle1 = this._drawPathCircle(this._x, this._y, this._rectElement, 0);
|
|
30
|
+
this._circle2 = this._drawPathCircle(this._x + this._w, this._y, this._rectElement, 1);
|
|
31
|
+
this._circle3 = this._drawPathCircle(this._x + this._w, this._y + this._h, this._rectElement, 2);
|
|
32
|
+
this._circle4 = this._drawPathCircle(this._x, this._y + this._h, this._rectElement, 3);
|
|
33
|
+
}
|
|
34
|
+
pointerEvent(event, circle, r, index) {
|
|
35
|
+
event.stopPropagation();
|
|
36
|
+
const cursorPos = this.designerCanvas.getNormalizedEventCoordinates(event);
|
|
37
|
+
switch (event.type) {
|
|
38
|
+
case EventNames.PointerDown:
|
|
39
|
+
event.target.setPointerCapture(event.pointerId);
|
|
40
|
+
this._startPos = cursorPos;
|
|
41
|
+
this._circlePos = { x: parseFloat(circle.getAttribute("cx")), y: parseFloat(circle.getAttribute("cy")) };
|
|
42
|
+
this._originalPoint = { x: this._x, y: this._y };
|
|
43
|
+
break;
|
|
44
|
+
case EventNames.PointerMove:
|
|
45
|
+
if (this._startPos && event.buttons > 0) {
|
|
46
|
+
this._lastPos = { x: this._startPos.x, y: this._startPos.y };
|
|
47
|
+
const cx = cursorPos.x - this._lastPos.x + this._circlePos.x;
|
|
48
|
+
const cy = cursorPos.y - this._lastPos.y + this._circlePos.y;
|
|
49
|
+
let dx = cx - this._circlePos.x;
|
|
50
|
+
let dy = cy - this._circlePos.y;
|
|
51
|
+
if (event.shiftKey) {
|
|
52
|
+
if (Math.abs(dx) < Math.abs(dy)) {
|
|
53
|
+
dx = 0;
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
dy = 0;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
switch (index) {
|
|
60
|
+
case 0:
|
|
61
|
+
this._rect = this._calculateRect(this._originalPoint.x + dx, this._originalPoint.y + dy, this._w - dx, this._h - dy);
|
|
62
|
+
break;
|
|
63
|
+
case 1:
|
|
64
|
+
this._rect = this._calculateRect(this._originalPoint.x, this._originalPoint.y + dy, this._w + dx, this._h - dy);
|
|
65
|
+
break;
|
|
66
|
+
case 2:
|
|
67
|
+
this._rect = this._calculateRect(this._originalPoint.x, this._originalPoint.y, this._w + dx, this._h + dy);
|
|
68
|
+
break;
|
|
69
|
+
case 3:
|
|
70
|
+
this._rect = this._calculateRect(this._originalPoint.x + dx, this._originalPoint.y, this._w - dx, this._h + dy);
|
|
71
|
+
break;
|
|
72
|
+
}
|
|
73
|
+
r.setAttribute("x", this._rect.x.toString());
|
|
74
|
+
r.setAttribute("y", this._rect.y.toString());
|
|
75
|
+
r.setAttribute("width", this._rect.w.toString());
|
|
76
|
+
r.setAttribute("height", this._rect.h.toString());
|
|
77
|
+
circle.setAttribute("cx", (this._circlePos.x + dx).toString());
|
|
78
|
+
circle.setAttribute("cy", (this._circlePos.y + dy).toString());
|
|
79
|
+
this._redrawPathCircle(this._rect.x, this._rect.y, this._circle1);
|
|
80
|
+
this._redrawPathCircle(this._rect.x + this._rect.w, this._rect.y, this._circle2);
|
|
81
|
+
this._redrawPathCircle(this._rect.x + this._rect.w, this._rect.y + this._rect.h, this._circle3);
|
|
82
|
+
this._redrawPathCircle(this._rect.x, this._rect.y + this._rect.h, this._circle4);
|
|
83
|
+
}
|
|
84
|
+
break;
|
|
85
|
+
case EventNames.PointerUp:
|
|
86
|
+
event.target.releasePointerCapture(event.pointerId);
|
|
87
|
+
this._startPos = null;
|
|
88
|
+
this._circlePos = null;
|
|
89
|
+
this._originalPoint = null;
|
|
90
|
+
this.extendedItem.setAttribute("x", this._rect.x.toString());
|
|
91
|
+
this.extendedItem.setAttribute("y", this._rect.y.toString());
|
|
92
|
+
this.extendedItem.setAttribute("width", this._rect.w.toString());
|
|
93
|
+
this.extendedItem.setAttribute("height", this._rect.h.toString());
|
|
94
|
+
break;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
_drawPathCircle(x, y, r, index) {
|
|
98
|
+
let circle = this._drawCircle((this._parentRect.x - this.designerCanvas.containerBoundingRect.x) / this.designerCanvas.scaleFactor + x, (this._parentRect.y - this.designerCanvas.containerBoundingRect.y) / this.designerCanvas.scaleFactor + y, 5 / this.designerCanvas.scaleFactor, 'svg-path');
|
|
99
|
+
circle.style.strokeWidth = (1 / this.designerCanvas.zoomFactor).toString();
|
|
100
|
+
circle.addEventListener(EventNames.PointerDown, event => this.pointerEvent(event, circle, r, index));
|
|
101
|
+
circle.addEventListener(EventNames.PointerMove, event => this.pointerEvent(event, circle, r, index));
|
|
102
|
+
circle.addEventListener(EventNames.PointerUp, event => this.pointerEvent(event, circle, r, index));
|
|
103
|
+
return circle;
|
|
104
|
+
}
|
|
105
|
+
_redrawPathCircle(x, y, oldCircle) {
|
|
106
|
+
let circle = this._drawCircle((this._parentRect.x - this.designerCanvas.containerBoundingRect.x) / this.designerCanvas.scaleFactor + x, (this._parentRect.y - this.designerCanvas.containerBoundingRect.y) / this.designerCanvas.scaleFactor + y, 5 / this.designerCanvas.scaleFactor, 'svg-path', oldCircle);
|
|
107
|
+
circle.style.strokeWidth = (1 / this.designerCanvas.zoomFactor).toString();
|
|
108
|
+
return circle;
|
|
109
|
+
}
|
|
110
|
+
_calculateRect(x, y, w, h) {
|
|
111
|
+
let rect = { x: 0, y: 0, w: 0, h: 0 };
|
|
112
|
+
if (w >= 0) {
|
|
113
|
+
rect.x = x;
|
|
114
|
+
rect.w = w;
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
rect.x = x + w;
|
|
118
|
+
rect.w = -w;
|
|
119
|
+
}
|
|
120
|
+
if (h >= 0) {
|
|
121
|
+
rect.y = y;
|
|
122
|
+
rect.h = h;
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
rect.y = y + h;
|
|
126
|
+
rect.h = -h;
|
|
127
|
+
}
|
|
128
|
+
return rect;
|
|
129
|
+
}
|
|
130
|
+
refresh() {
|
|
131
|
+
this._removeAllOverlays();
|
|
132
|
+
this.extend();
|
|
133
|
+
}
|
|
134
|
+
dispose() {
|
|
135
|
+
this._removeAllOverlays();
|
|
136
|
+
}
|
|
137
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IDesignerExtensionProvider } from "../IDesignerExtensionProvider";
|
|
2
|
+
import { IDesignItem } from "../../../../item/IDesignItem";
|
|
3
|
+
import { IDesignerCanvas } from "../../IDesignerCanvas";
|
|
4
|
+
import { IDesignerExtension } from "../IDesignerExtension";
|
|
5
|
+
import { IExtensionManager } from "../IExtensionManger";
|
|
6
|
+
export declare class RectExtentionProvider implements IDesignerExtensionProvider {
|
|
7
|
+
shouldExtend(extensionManager: IExtensionManager, designerView: IDesignerCanvas, designItem: IDesignItem): boolean;
|
|
8
|
+
getExtension(extensionManager: IExtensionManager, designerView: IDesignerCanvas, designItem: IDesignItem): IDesignerExtension;
|
|
9
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { RectExtension } from "./RectExtension";
|
|
2
|
+
export class RectExtentionProvider {
|
|
3
|
+
shouldExtend(extensionManager, designerView, designItem) {
|
|
4
|
+
if (designItem.node instanceof SVGRectElement) {
|
|
5
|
+
return true;
|
|
6
|
+
}
|
|
7
|
+
return false;
|
|
8
|
+
}
|
|
9
|
+
getExtension(extensionManager, designerView, designItem) {
|
|
10
|
+
return new RectExtension(extensionManager, designerView, designItem);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -10,10 +10,12 @@ export declare class OverlayLayerView extends BaseCustomWebComponentConstructorA
|
|
|
10
10
|
private _gBackground;
|
|
11
11
|
private _gNormal;
|
|
12
12
|
private _gForeground;
|
|
13
|
+
private _defs;
|
|
14
|
+
private _id;
|
|
13
15
|
constructor(serviceContainer: ServiceContainer);
|
|
14
16
|
private _initialize;
|
|
15
17
|
addOverlay(element: SVGGraphicsElement, overlayLayer?: OverlayLayer): void;
|
|
16
|
-
removeOverlay(element:
|
|
18
|
+
removeOverlay(element: SVGElement): void;
|
|
17
19
|
removeAllNodesWithClass(className: string): void;
|
|
18
20
|
removeAllOverlays(): void;
|
|
19
21
|
createPoint(): DOMPointInit;
|
|
@@ -22,4 +24,5 @@ export declare class OverlayLayerView extends BaseCustomWebComponentConstructorA
|
|
|
22
24
|
drawCircle(x: number, y: number, radius: number, className?: string, circle?: SVGCircleElement, overlayLayer?: OverlayLayer): SVGCircleElement;
|
|
23
25
|
drawRect(x: number, y: number, w: number, h: number, className?: string, rect?: SVGRectElement, overlayLayer?: OverlayLayer): SVGRectElement;
|
|
24
26
|
drawText(text: string, x: number, y: number, className?: string, textEl?: SVGTextElement, overlayLayer?: OverlayLayer): SVGTextElement;
|
|
27
|
+
drawTextWithBackground(text: string, x: number, y: number, backgroundColor: string, className?: string, existingEls?: [SVGFilterElement, SVGFEFloodElement, SVGTextElement, SVGTextElement], overlayLayer?: OverlayLayer): [SVGFilterElement, SVGFEFloodElement, SVGTextElement, SVGTextElement];
|
|
25
28
|
}
|
|
@@ -3,6 +3,7 @@ import { OverlayLayer } from './extensions/OverlayLayer.js';
|
|
|
3
3
|
export class OverlayLayerView extends BaseCustomWebComponentConstructorAppend {
|
|
4
4
|
static template = html `
|
|
5
5
|
<svg id="svg" style="pointer-events: none;">
|
|
6
|
+
<defs id="defs"></defs>
|
|
6
7
|
<g id="background"></g>
|
|
7
8
|
<g id="normal"></g>
|
|
8
9
|
<g id="foreground"></g>
|
|
@@ -27,6 +28,8 @@ export class OverlayLayerView extends BaseCustomWebComponentConstructorAppend {
|
|
|
27
28
|
_gBackground;
|
|
28
29
|
_gNormal;
|
|
29
30
|
_gForeground;
|
|
31
|
+
_defs;
|
|
32
|
+
_id = 0;
|
|
30
33
|
constructor(serviceContainer) {
|
|
31
34
|
super();
|
|
32
35
|
this._serviceContainer = serviceContainer;
|
|
@@ -34,6 +37,7 @@ export class OverlayLayerView extends BaseCustomWebComponentConstructorAppend {
|
|
|
34
37
|
this._gBackground = this._getDomElement('background');
|
|
35
38
|
this._gNormal = this._getDomElement('normal');
|
|
36
39
|
this._gForeground = this._getDomElement('foreground');
|
|
40
|
+
this._defs = this._getDomElement('defs');
|
|
37
41
|
this._initialize();
|
|
38
42
|
}
|
|
39
43
|
_initialize() {
|
|
@@ -143,5 +147,40 @@ export class OverlayLayerView extends BaseCustomWebComponentConstructorAppend {
|
|
|
143
147
|
textEl.setAttribute('class', className);
|
|
144
148
|
return textEl;
|
|
145
149
|
}
|
|
150
|
+
drawTextWithBackground(text, x, y, backgroundColor, className, existingEls, overlayLayer) {
|
|
151
|
+
if (!existingEls) {
|
|
152
|
+
let filter = document.createElementNS("http://www.w3.org/2000/svg", "filter");
|
|
153
|
+
filter.setAttribute("x", "0");
|
|
154
|
+
filter.setAttribute("y", "0");
|
|
155
|
+
filter.setAttribute("width", "1");
|
|
156
|
+
filter.setAttribute("height", "1");
|
|
157
|
+
filter.setAttribute("id", "solid_" + (++this._id));
|
|
158
|
+
let flood = document.createElementNS("http://www.w3.org/2000/svg", "feFlood");
|
|
159
|
+
flood.setAttribute("flood-color", backgroundColor);
|
|
160
|
+
filter.appendChild(flood);
|
|
161
|
+
let composite = document.createElementNS("http://www.w3.org/2000/svg", "feComposite");
|
|
162
|
+
composite.setAttribute("in", "SourceGraphic");
|
|
163
|
+
composite.setAttribute("operator", "xor");
|
|
164
|
+
filter.appendChild(composite);
|
|
165
|
+
this._defs.appendChild(filter);
|
|
166
|
+
let textEl1 = document.createElementNS("http://www.w3.org/2000/svg", "text");
|
|
167
|
+
textEl1.setAttribute("filter", "url(#solid_" + this._id + ")");
|
|
168
|
+
let textEl2 = document.createElementNS("http://www.w3.org/2000/svg", "text");
|
|
169
|
+
this.addOverlay(textEl1, overlayLayer);
|
|
170
|
+
this.addOverlay(textEl2, overlayLayer);
|
|
171
|
+
existingEls = [filter, flood, textEl1, textEl2];
|
|
172
|
+
}
|
|
173
|
+
existingEls[2].setAttribute('x', x);
|
|
174
|
+
existingEls[3].setAttribute('x', x);
|
|
175
|
+
existingEls[2].setAttribute('y', y);
|
|
176
|
+
existingEls[3].setAttribute('y', y);
|
|
177
|
+
existingEls[2].textContent = text;
|
|
178
|
+
existingEls[3].textContent = text;
|
|
179
|
+
if (className) {
|
|
180
|
+
existingEls[2].setAttribute('class', className);
|
|
181
|
+
existingEls[3].setAttribute('class', className);
|
|
182
|
+
}
|
|
183
|
+
return existingEls;
|
|
184
|
+
}
|
|
146
185
|
}
|
|
147
186
|
customElements.define(OverlayLayerView.is, OverlayLayerView);
|
|
@@ -22,7 +22,7 @@ export class DrawPathTool {
|
|
|
22
22
|
}
|
|
23
23
|
pointerEventHandler(designerCanvas, event, currentElement) {
|
|
24
24
|
const currentPoint = designerCanvas.getNormalizedEventCoordinates(event);
|
|
25
|
-
const offset =
|
|
25
|
+
const offset = 10;
|
|
26
26
|
switch (event.type) {
|
|
27
27
|
case EventNames.PointerDown:
|
|
28
28
|
this._eventStarted = true;
|
|
@@ -30,7 +30,7 @@ export class DrawPathTool {
|
|
|
30
30
|
event.target.setPointerCapture(event.pointerId);
|
|
31
31
|
designerCanvas.captureActiveTool(this);
|
|
32
32
|
this._path = document.createElementNS("http://www.w3.org/2000/svg", "path");
|
|
33
|
-
this._pathD = "M" + currentPoint.x + " " + currentPoint.y;
|
|
33
|
+
this._pathD = "M " + currentPoint.x + " " + currentPoint.y + " ";
|
|
34
34
|
this._path.setAttribute("d", this._pathD);
|
|
35
35
|
this._path.setAttribute("stroke", designerCanvas.serviceContainer.globalContext.strokeColor);
|
|
36
36
|
this._path.setAttribute("fill", designerCanvas.serviceContainer.globalContext.fillBrush);
|
|
@@ -55,7 +55,7 @@ export class DrawPathTool {
|
|
|
55
55
|
if (!this._p2pMode) {
|
|
56
56
|
this._dragMode = true;
|
|
57
57
|
if (this._path) {
|
|
58
|
-
this._pathD += "L" + currentPoint.x + " " + currentPoint.y;
|
|
58
|
+
this._pathD += "L " + currentPoint.x + " " + currentPoint.y + " ";
|
|
59
59
|
this._path.setAttribute("d", this._pathD);
|
|
60
60
|
}
|
|
61
61
|
}
|
|
@@ -65,7 +65,7 @@ export class DrawPathTool {
|
|
|
65
65
|
if (event.shiftKey) {
|
|
66
66
|
straightLine = straightenLine(this._lastPoint, currentPoint);
|
|
67
67
|
}
|
|
68
|
-
this._path.setAttribute("d", this._pathD + "L" + straightLine.x + " " + straightLine.y);
|
|
68
|
+
this._path.setAttribute("d", this._pathD + "L " + straightLine.x + " " + straightLine.y) + " ";
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
71
|
break;
|
|
@@ -77,12 +77,12 @@ export class DrawPathTool {
|
|
|
77
77
|
if (this._path) {
|
|
78
78
|
if (event.shiftKey) {
|
|
79
79
|
let straightLine = straightenLine(this._lastPoint, currentPoint);
|
|
80
|
-
this._pathD += "L" + straightLine.x + " " + straightLine.y;
|
|
80
|
+
this._pathD += "L " + straightLine.x + " " + straightLine.y + " ";
|
|
81
81
|
this._path.setAttribute("d", this._pathD);
|
|
82
82
|
this._lastPoint = straightLine;
|
|
83
83
|
}
|
|
84
84
|
else {
|
|
85
|
-
this._pathD += "L" + currentPoint.x + " " + currentPoint.y;
|
|
85
|
+
this._pathD += "L " + currentPoint.x + " " + currentPoint.y + " ";
|
|
86
86
|
this._path.setAttribute("d", this._pathD);
|
|
87
87
|
this._lastPoint = currentPoint;
|
|
88
88
|
}
|
|
@@ -96,19 +96,19 @@ export class DrawPathTool {
|
|
|
96
96
|
this._pointerMoved = false;
|
|
97
97
|
this._samePoint = false;
|
|
98
98
|
this._dragMode = false;
|
|
99
|
-
|
|
99
|
+
let coords = designerCanvas.getNormalizedElementCoordinates(this._path);
|
|
100
100
|
designerCanvas.overlayLayer.removeOverlay(this._path);
|
|
101
101
|
const svg = document.createElementNS("http://www.w3.org/2000/svg", "svg");
|
|
102
|
-
const mvX =
|
|
103
|
-
const mvY =
|
|
102
|
+
const mvX = coords.x - offset;
|
|
103
|
+
const mvY = coords.y - offset;
|
|
104
104
|
const d = moveSVGPath(this._path, mvX, mvY);
|
|
105
105
|
this._path.setAttribute("d", d);
|
|
106
106
|
svg.appendChild(this._path);
|
|
107
107
|
svg.style.left = (mvX) + 'px';
|
|
108
108
|
svg.style.top = (mvY) + 'px';
|
|
109
109
|
svg.style.position = 'absolute';
|
|
110
|
-
svg.style.width = (
|
|
111
|
-
svg.style.height = (
|
|
110
|
+
svg.style.width = (coords.width + 2 * offset) + 'px';
|
|
111
|
+
svg.style.height = (coords.height + 2 * offset) + 'px';
|
|
112
112
|
svg.style.overflow = 'visible';
|
|
113
113
|
//designerView.rootDesignItem.element.appendChild(svg);
|
|
114
114
|
this._path = null;
|
|
@@ -171,6 +171,9 @@ export class PointerTool {
|
|
|
171
171
|
}
|
|
172
172
|
case EventNames.PointerMove:
|
|
173
173
|
{
|
|
174
|
+
if (event.buttons == 0) {
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
174
177
|
const elementMoved = currentPoint.x != this._initialPoint.x || currentPoint.y != this._initialPoint.y;
|
|
175
178
|
if (this._actionType != PointerActionType.Drag && elementMoved) {
|
|
176
179
|
this._actionType = PointerActionType.Drag;
|
|
@@ -377,7 +377,7 @@ export class TreeViewExtended extends BaseCustomWebComponentConstructorAppend {
|
|
|
377
377
|
ref: item
|
|
378
378
|
});
|
|
379
379
|
for (let i of item.children()) {
|
|
380
|
-
if (i.
|
|
380
|
+
if (!i.isEmptyTextNode) {
|
|
381
381
|
this._getChildren(i, newNode);
|
|
382
382
|
}
|
|
383
383
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -56,6 +56,7 @@ export * from "./elements/services/htmlWriterService/HtmlWriterService.js";
|
|
|
56
56
|
export * from "./elements/services/htmlWriterService/LitTsElementWriterService.js";
|
|
57
57
|
export * from "./elements/services/htmlParserService/DefaultHtmlParserService.js";
|
|
58
58
|
export * from "./elements/services/htmlParserService/NodeHtmlParserService.js";
|
|
59
|
+
export * from "./elements/services/htmlParserService/LitElementParserService.js";
|
|
59
60
|
export type { IHtmlParserService } from "./elements/services/htmlParserService/IHtmlParserService.js";
|
|
60
61
|
export type { IIntializationService } from "./elements/services/initializationService/IIntializationService.js";
|
|
61
62
|
export * from "./elements/services/instanceService/DefaultInstanceService.js";
|
|
@@ -153,8 +154,8 @@ export * from "./elements/widgets/designerView/extensions/InvisibleDivExtension.
|
|
|
153
154
|
export * from "./elements/widgets/designerView/extensions/InvisibleDivExtensionProvider.js";
|
|
154
155
|
export * from "./elements/widgets/designerView/extensions/MouseOverExtension.js";
|
|
155
156
|
export * from "./elements/widgets/designerView/extensions/MouseOverExtensionProvider.js";
|
|
156
|
-
export * from "./elements/widgets/designerView/extensions/PathExtension.js";
|
|
157
|
-
export * from "./elements/widgets/designerView/extensions/PathExtensionProvider.js";
|
|
157
|
+
export * from "./elements/widgets/designerView/extensions/svg/PathExtension.js";
|
|
158
|
+
export * from "./elements/widgets/designerView/extensions/svg/PathExtensionProvider.js";
|
|
158
159
|
export * from "./elements/widgets/designerView/extensions/PositionExtension.js";
|
|
159
160
|
export * from "./elements/widgets/designerView/extensions/PositionExtensionProvider.js";
|
|
160
161
|
export * from "./elements/widgets/designerView/extensions/ElementDragTitleExtension.js";
|
package/dist/index.js
CHANGED
|
@@ -35,6 +35,7 @@ export * from "./elements/services/htmlWriterService/HtmlWriterService.js";
|
|
|
35
35
|
export * from "./elements/services/htmlWriterService/LitTsElementWriterService.js";
|
|
36
36
|
export * from "./elements/services/htmlParserService/DefaultHtmlParserService.js";
|
|
37
37
|
export * from "./elements/services/htmlParserService/NodeHtmlParserService.js";
|
|
38
|
+
export * from "./elements/services/htmlParserService/LitElementParserService.js";
|
|
38
39
|
export * from "./elements/services/instanceService/DefaultInstanceService.js";
|
|
39
40
|
export * from "./elements/services/manifestParsers/WebcomponentManifestParserService.js";
|
|
40
41
|
export * from "./elements/services/modelCommandService/DefaultModelCommandService.js";
|
|
@@ -111,8 +112,8 @@ export * from "./elements/widgets/designerView/extensions/InvisibleDivExtension.
|
|
|
111
112
|
export * from "./elements/widgets/designerView/extensions/InvisibleDivExtensionProvider.js";
|
|
112
113
|
export * from "./elements/widgets/designerView/extensions/MouseOverExtension.js";
|
|
113
114
|
export * from "./elements/widgets/designerView/extensions/MouseOverExtensionProvider.js";
|
|
114
|
-
export * from "./elements/widgets/designerView/extensions/PathExtension.js";
|
|
115
|
-
export * from "./elements/widgets/designerView/extensions/PathExtensionProvider.js";
|
|
115
|
+
export * from "./elements/widgets/designerView/extensions/svg/PathExtension.js";
|
|
116
|
+
export * from "./elements/widgets/designerView/extensions/svg/PathExtensionProvider.js";
|
|
116
117
|
export * from "./elements/widgets/designerView/extensions/PositionExtension.js";
|
|
117
118
|
export * from "./elements/widgets/designerView/extensions/PositionExtensionProvider.js";
|
|
118
119
|
export * from "./elements/widgets/designerView/extensions/ElementDragTitleExtension.js";
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"description": "A UI designer for Polymer apps",
|
|
3
3
|
"name": "@node-projects/web-component-designer",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.122",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"author": "",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"prepublishOnly": "npm run build"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@node-projects/base-custom-webcomponent": "^0.
|
|
16
|
+
"@node-projects/base-custom-webcomponent": "^0.10.1",
|
|
17
17
|
"construct-style-sheets-polyfill": "^3.1.0"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
@@ -27,11 +27,11 @@
|
|
|
27
27
|
"codemirror": "^6.0.1",
|
|
28
28
|
"esprima-next": "^5.8.4",
|
|
29
29
|
"html2canvas": "*",
|
|
30
|
-
"jest": "^29.1.
|
|
30
|
+
"jest": "^29.1.2",
|
|
31
31
|
"jquery": "^3.6.1",
|
|
32
32
|
"jquery.fancytree": "^2.38.2",
|
|
33
33
|
"monaco-editor": "^0.34.0",
|
|
34
|
-
"ts-jest": "^29.0.
|
|
34
|
+
"ts-jest": "^29.0.3",
|
|
35
35
|
"typescript": "^4.8.4",
|
|
36
36
|
"typescript-lit-html-plugin": "^0.9.0"
|
|
37
37
|
},
|