@node-projects/web-component-designer 0.2.32 → 0.2.34
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/assets/images/tools/ColorPickerTool.svg +2 -20
- package/assets/images/tools/DrawEllipTool.svg +2 -12
- package/assets/images/tools/DrawLineTool.svg +2 -12
- package/assets/images/tools/DrawPathTool.svg +2 -31
- package/assets/images/tools/DrawRectTool.svg +2 -27
- package/assets/images/tools/MagicWandTool.svg +2 -13
- package/assets/images/tools/Margin.svg +3 -3
- package/assets/images/tools/Padding.svg +3 -3
- package/assets/images/tools/PanTool.svg +3 -5
- package/assets/images/tools/PointerTool.svg +2 -9
- package/assets/images/tools/SelectRectTool.svg +3 -9
- package/assets/images/tools/TextBoxTool.svg +2 -7
- package/assets/images/tools/TextTool.svg +2 -6
- package/assets/images/tools/TransformTool.svg +2 -20
- package/assets/images/tools/ZoomTool.svg +2 -15
- package/dist/Constants.d.ts +6 -0
- package/dist/Constants.js +29 -2
- package/dist/Constants.js.map +1 -1
- package/dist/elements/documentContainer.js +2 -2
- package/dist/elements/documentContainer.js.map +1 -1
- package/dist/elements/item/DesignItem.d.ts +1 -1
- package/dist/elements/services/DefaultServiceBootstrap.js +1 -2
- package/dist/elements/services/DefaultServiceBootstrap.js.map +1 -1
- package/dist/elements/services/ServiceContainer.d.ts +2 -1
- package/dist/elements/services/ServiceContainer.js.map +1 -1
- package/dist/elements/widgets/designerView/DomConverter.d.ts +1 -1
- package/dist/elements/widgets/designerView/designerView.js +5 -4
- package/dist/elements/widgets/designerView/designerView.js.map +1 -1
- package/dist/elements/widgets/designerView/extensions/PositionExtension.d.ts +9 -8
- package/dist/elements/widgets/designerView/extensions/PositionExtension.js +141 -56
- package/dist/elements/widgets/designerView/extensions/PositionExtension.js.map +1 -1
- package/dist/elements/widgets/designerView/extensions/PositionExtensionProvider.d.ts +6 -0
- package/dist/elements/widgets/designerView/extensions/PositionExtensionProvider.js +9 -1
- package/dist/elements/widgets/designerView/extensions/PositionExtensionProvider.js.map +1 -1
- package/dist/elements/widgets/designerView/tools/toolBar/DesignerToolbar.js +7 -1
- package/dist/elements/widgets/designerView/tools/toolBar/DesignerToolbar.js.map +1 -1
- package/dist/elements/widgets/designerView/tools/toolBar/DesignerToolbarButton.js +44 -16
- package/dist/elements/widgets/designerView/tools/toolBar/DesignerToolbarButton.js.map +1 -1
- package/dist/elements/widgets/designerView/tools/toolBar/popups/AbstractBaseToolPopup.js +53 -18
- package/dist/elements/widgets/designerView/tools/toolBar/popups/AbstractBaseToolPopup.js.map +1 -1
- package/dist/elements/widgets/designerView/tools/toolBar/popups/DrawToolPopup.js +38 -21
- package/dist/elements/widgets/designerView/tools/toolBar/popups/DrawToolPopup.js.map +1 -1
- package/dist/elements/widgets/designerView/tools/toolBar/popups/PointerToolPopup.js +3 -3
- package/dist/elements/widgets/designerView/tools/toolBar/popups/PointerToolPopup.js.map +1 -1
- package/dist/elements/widgets/designerView/tools/toolBar/popups/SelectionToolPopup.js +3 -3
- package/dist/elements/widgets/designerView/tools/toolBar/popups/SelectionToolPopup.js.map +1 -1
- package/dist/elements/widgets/designerView/tools/toolBar/popups/TransformToolPopup.js +121 -84
- package/dist/elements/widgets/designerView/tools/toolBar/popups/TransformToolPopup.js.map +1 -1
- package/dist/index-min.js +35 -35
- package/dist/index-min.js.map +4 -4
- package/package.json +1 -1
|
@@ -1,37 +1,72 @@
|
|
|
1
1
|
import { BaseCustomWebComponentConstructorAppend, css } from '@node-projects/base-custom-webcomponent';
|
|
2
2
|
export class AbstractBaseToolPopup extends BaseCustomWebComponentConstructorAppend {
|
|
3
3
|
static style = css `
|
|
4
|
+
:host {
|
|
5
|
+
display: block;
|
|
6
|
+
font: 12px system-ui, sans-serif;
|
|
7
|
+
color: var(--wcd-designer-view-statusbar-color, #354348);
|
|
8
|
+
}
|
|
4
9
|
.container {
|
|
5
|
-
width:
|
|
6
|
-
min-
|
|
7
|
-
|
|
8
|
-
background
|
|
9
|
-
border: 1px solid var(--wcd-tool-popup-border-color,
|
|
10
|
+
width: max-content;
|
|
11
|
+
min-width: 112px;
|
|
12
|
+
box-sizing: border-box;
|
|
13
|
+
background: var(--wcd-tool-popup-background, var(--wcd-designer-view-statusbar-background, #787f82));
|
|
14
|
+
border: 1px solid var(--wcd-tool-popup-border-color, var(--wcd-color-border, #596c7a));
|
|
15
|
+
border-radius: 6px;
|
|
16
|
+
box-shadow: 0 4px 16px rgba(0, 0, 0, .25);
|
|
10
17
|
}
|
|
11
18
|
header {
|
|
12
|
-
|
|
19
|
+
padding: 6px 8px;
|
|
20
|
+
border-radius: 5px 5px 0 0;
|
|
21
|
+
border-bottom: 1px solid var(--wcd-tool-popup-border-color, var(--wcd-color-border, #596c7a));
|
|
22
|
+
background: var(--wcd-tool-popup-title-background, rgba(255, 255, 255, .08));
|
|
23
|
+
}
|
|
24
|
+
h2 {
|
|
25
|
+
margin: 0;
|
|
26
|
+
font: 600 11px/16px system-ui, sans-serif;
|
|
27
|
+
}
|
|
28
|
+
main {
|
|
29
|
+
padding: 8px;
|
|
13
30
|
}
|
|
14
31
|
.tool {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
32
|
+
box-sizing: border-box;
|
|
33
|
+
height: 24px;
|
|
34
|
+
width: 24px;
|
|
35
|
+
padding: 4px;
|
|
36
|
+
border: 0;
|
|
37
|
+
border-radius: 4px;
|
|
38
|
+
background: transparent;
|
|
39
|
+
color: inherit;
|
|
40
|
+
display: flex;
|
|
41
|
+
align-items: center;
|
|
42
|
+
justify-content: center;
|
|
21
43
|
flex-shrink: 0;
|
|
22
|
-
|
|
44
|
+
cursor: pointer;
|
|
45
|
+
}
|
|
46
|
+
.tool::before {
|
|
47
|
+
content: '';
|
|
48
|
+
width: 16px;
|
|
49
|
+
height: 16px;
|
|
50
|
+
background: currentColor;
|
|
51
|
+
mask: var(--tool-icon) center / contain no-repeat;
|
|
52
|
+
}
|
|
53
|
+
.tool:hover {
|
|
54
|
+
background: var(--wcd-designer-view-tool-hover-background, rgba(164,206,249,.6));
|
|
55
|
+
}
|
|
56
|
+
.tool:focus-visible {
|
|
57
|
+
outline: 2px solid var(--wcd-color-focus, #47977c);
|
|
58
|
+
outline-offset: -2px;
|
|
23
59
|
}
|
|
24
60
|
.tools {
|
|
25
61
|
display: flex;
|
|
26
62
|
flex-wrap: wrap;
|
|
27
|
-
|
|
28
|
-
gap: 3px;
|
|
63
|
+
gap: 4px;
|
|
29
64
|
}`;
|
|
30
65
|
constructor() {
|
|
31
66
|
super();
|
|
32
|
-
for (let e of [...this.shadowRoot.querySelectorAll("
|
|
33
|
-
|
|
34
|
-
|
|
67
|
+
for (let e of [...this.shadowRoot.querySelectorAll("button.tool")]) {
|
|
68
|
+
e.setAttribute('aria-label', e.title);
|
|
69
|
+
e.onclick = () => this.getRootNode().host.setTool(e.dataset['commandParameter']);
|
|
35
70
|
}
|
|
36
71
|
}
|
|
37
72
|
}
|
package/dist/elements/widgets/designerView/tools/toolBar/popups/AbstractBaseToolPopup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractBaseToolPopup.js","sourceRoot":"","sources":["../../../../../../../src/elements/widgets/designerView/tools/toolBar/popups/AbstractBaseToolPopup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uCAAuC,EAAE,GAAG,EAAE,MAAM,yCAAyC,CAAC;AAGvG,MAAM,OAAgB,qBAAsB,SAAQ,uCAAuC;IAEzF,MAAM,CAAU,KAAK,GAAoC,GAAG,CAAA
|
|
1
|
+
{"version":3,"file":"AbstractBaseToolPopup.js","sourceRoot":"","sources":["../../../../../../../src/elements/widgets/designerView/tools/toolBar/popups/AbstractBaseToolPopup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uCAAuC,EAAE,GAAG,EAAE,MAAM,yCAAyC,CAAC;AAGvG,MAAM,OAAgB,qBAAsB,SAAQ,uCAAuC;IAEzF,MAAM,CAAU,KAAK,GAAoC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA6DtD,CAAA;IAEN;QACE,KAAK,EAAE,CAAC;QAER,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAoB,aAAa,CAAC,CAAC,EAAE,CAAC;YACtF,CAAC,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;YACtC,CAAC,CAAC,OAAO,GAAG,GAAG,EAAE,CAAgC,IAAI,CAAC,WAAW,EAAG,CAAC,IAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;QACpH,CAAC;IACH,CAAC"}
|
|
@@ -5,40 +5,57 @@ export class DrawToolPopup extends AbstractBaseToolPopup {
|
|
|
5
5
|
designerCanvas;
|
|
6
6
|
static style = [super.style, css `
|
|
7
7
|
.container {
|
|
8
|
-
width:
|
|
9
|
-
min-height: 300px;
|
|
8
|
+
width: 232px;
|
|
10
9
|
}
|
|
11
|
-
.inputs{
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
10
|
+
.inputs {
|
|
11
|
+
display: grid;
|
|
12
|
+
grid-template-columns: auto minmax(0, 1fr);
|
|
13
|
+
grid-auto-rows: 24px;
|
|
14
|
+
gap: 8px;
|
|
15
|
+
padding-top: 8px;
|
|
16
|
+
margin-top: 8px;
|
|
17
|
+
border-top: 1px solid var(--wcd-tool-popup-border-color, var(--wcd-color-border, #596c7a));
|
|
18
|
+
align-items: center;
|
|
19
|
+
}
|
|
20
|
+
.inputs > * {
|
|
21
|
+
min-width: 0;
|
|
22
|
+
}
|
|
23
|
+
.inputs > span:not(.text) {
|
|
24
|
+
height: 24px;
|
|
25
|
+
display: flex;
|
|
26
|
+
align-items: center;
|
|
27
|
+
}
|
|
28
|
+
.inputs node-projects-color-input {
|
|
29
|
+
padding: 0;
|
|
30
|
+
}
|
|
31
|
+
.inputs input {
|
|
32
|
+
box-sizing: border-box;
|
|
33
|
+
width: 100%;
|
|
34
|
+
height: 24px;
|
|
35
|
+
margin: 0;
|
|
36
|
+
accent-color: var(--wcd-designer-view-tool-selected-background, deepskyblue);
|
|
19
37
|
}
|
|
20
38
|
.text {
|
|
21
|
-
|
|
22
|
-
font-size: 14px;
|
|
39
|
+
font-size: 11px;
|
|
23
40
|
}
|
|
24
41
|
`];
|
|
25
42
|
static template = html `
|
|
26
43
|
<div class="container">
|
|
27
|
-
<header><h2 id="title"
|
|
44
|
+
<header><h2 id="title">Draw</h2></header>
|
|
28
45
|
<main id="content-area">
|
|
29
46
|
<div class="tools">
|
|
30
|
-
<
|
|
31
|
-
<
|
|
32
|
-
<
|
|
33
|
-
<
|
|
34
|
-
<
|
|
47
|
+
<button type="button" class="tool" data-command="setTool" data-command-parameter="DrawLine" title="Draw Line" style="--tool-icon: url('${assetsPath}images/tools/DrawLineTool.svg');"></button>
|
|
48
|
+
<button type="button" class="tool" data-command="setTool" data-command-parameter="DrawPath" title="Draw Path" style="--tool-icon: url('${assetsPath}images/tools/DrawPathTool.svg');"></button>
|
|
49
|
+
<button type="button" class="tool" data-command="setTool" data-command-parameter="DrawRect" title="Draw Rectangle" style="--tool-icon: url('${assetsPath}images/tools/DrawRectTool.svg');"></button>
|
|
50
|
+
<button type="button" class="tool" data-command="setTool" data-command-parameter="DrawEllipsis" title="Draw Ellipse" style="--tool-icon: url('${assetsPath}images/tools/DrawEllipTool.svg');"></button>
|
|
51
|
+
<button type="button" class="tool" data-command="setTool" data-command-parameter="PickColor" title="Pick Color" style="--tool-icon: url('${assetsPath}images/tools/ColorPickerTool.svg');"></button>
|
|
35
52
|
</div>
|
|
36
53
|
<div class="inputs">
|
|
37
|
-
<
|
|
54
|
+
<span class="text">Stroke Color</span>
|
|
38
55
|
[[this.getEditor('setStrokeColor', 'color', {}, this.designerCanvas.serviceContainer.globalContext.strokeColor)]]
|
|
39
|
-
<
|
|
56
|
+
<span class="text">Fill Brush</span>
|
|
40
57
|
[[this.getEditor('setFillBrush', 'color', {}, this.designerCanvas.serviceContainer.globalContext.fillBrush)]]
|
|
41
|
-
<
|
|
58
|
+
<span class="text">Stroke Thickness</span>
|
|
42
59
|
[[this.getEditor('setStrokeThickness', 'range', { min: 1, max: 20, step: 1 }, this.designerCanvas.serviceContainer.globalContext.strokeThickness)]]
|
|
43
60
|
</div>
|
|
44
61
|
</main>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawToolPopup.js","sourceRoot":"","sources":["../../../../../../../src/elements/widgets/designerView/tools/toolBar/popups/DrawToolPopup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE,MAAM,OAAO,aAAc,SAAQ,qBAAqB;
|
|
1
|
+
{"version":3,"file":"DrawToolPopup.js","sourceRoot":"","sources":["../../../../../../../src/elements/widgets/designerView/tools/toolBar/popups/DrawToolPopup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE,MAAM,OAAO,aAAc,SAAQ,qBAAqB;IA6DlC;IA3DpB,MAAM,CAAU,KAAK,GAAG,CAAgB,KAAK,CAAC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCnD,CAAC,CAAA;IAEN,MAAM,CAAU,QAAQ,GAAG,IAAI,CAAA;;;;;uJAKsH,UAAU;uJACV,UAAU;4JACL,UAAU;8JACR,UAAU;yJACf,UAAU;;;;;;;;;;;eAWpJ,CAAC;IAEd,YAAoB,cAA+B;QACjD,KAAK,EAAE,CAAC;QADU,mBAAc,GAAd,cAAc,CAAiB;IAEnD,CAAC;IAED,KAAK;QACH,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,aAAa,CAAC,WAAW,CAAA;IAChE,CAAC;IAED,mBAAmB;IACnB,SAAS,CAAC,WAAwB,EAAE,IAAY,EAAE,UAAkC,EAAE,YAAiB;QACrG,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,mBAAmB,EAC5F,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE;YACrB,eAAe,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;YAC7G,GAAG,UAAU;SACd,CAAC,CAAC,CAAC;QACN,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAC3B,OAAO,GAAG,CAAC,OAAO,CAAC;IACrB,CAAC;;AAGH,cAAc,CAAC,MAAM,CAAC,wCAAwC,EAAE,aAAa,CAAC,CAAC"}
|
|
@@ -4,11 +4,11 @@ import { AbstractBaseToolPopup } from './AbstractBaseToolPopup.js';
|
|
|
4
4
|
export class PointerToolPopup extends AbstractBaseToolPopup {
|
|
5
5
|
static template = html `
|
|
6
6
|
<div class="container">
|
|
7
|
-
<header><h2 id="title"
|
|
7
|
+
<header><h2 id="title">Pointer & Pan</h2></header>
|
|
8
8
|
<main id="content-area">
|
|
9
9
|
<div class="tools">
|
|
10
|
-
<
|
|
11
|
-
<
|
|
10
|
+
<button type="button" class="tool" data-command="setTool" data-command-parameter="Pointer" title="Pointer" style="--tool-icon: url('${assetsPath}images/tools/PointerTool.svg');"></button>
|
|
11
|
+
<button type="button" class="tool" data-command="setTool" data-command-parameter="Pan" title="Pan" style="--tool-icon: url('${assetsPath}images/tools/PanTool.svg');"></button>
|
|
12
12
|
</div>
|
|
13
13
|
</main>
|
|
14
14
|
</div>`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PointerToolPopup.js","sourceRoot":"","sources":["../../../../../../../src/elements/widgets/designerView/tools/toolBar/popups/PointerToolPopup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yCAAyC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,OAAO,gBAAiB,SAAQ,qBAAqB;IAEzD,MAAM,CAAU,QAAQ,GAAG,IAAI,CAAA;;;;;
|
|
1
|
+
{"version":3,"file":"PointerToolPopup.js","sourceRoot":"","sources":["../../../../../../../src/elements/widgets/designerView/tools/toolBar/popups/PointerToolPopup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yCAAyC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,OAAO,gBAAiB,SAAQ,qBAAqB;IAEzD,MAAM,CAAU,QAAQ,GAAG,IAAI,CAAA;;;;;oJAKmH,UAAU;4IAClB,UAAU;;;eAGvI,CAAC;;AAGhB,cAAc,CAAC,MAAM,CAAC,2CAA2C,EAAE,gBAAgB,CAAC,CAAC"}
|
|
@@ -4,11 +4,11 @@ import { AbstractBaseToolPopup } from './AbstractBaseToolPopup.js';
|
|
|
4
4
|
export class SelectionToolPopup extends AbstractBaseToolPopup {
|
|
5
5
|
static template = html `
|
|
6
6
|
<div class="container">
|
|
7
|
-
<header><h2 id="title"
|
|
7
|
+
<header><h2 id="title">Selection</h2></header>
|
|
8
8
|
<main id="content-area">
|
|
9
9
|
<div class="tools">
|
|
10
|
-
<
|
|
11
|
-
<
|
|
10
|
+
<button type="button" class="tool" data-command="setTool" data-command-parameter="RectangleSelector" title="Rectangle Selector" style="--tool-icon: url('${assetsPath}images/tools/SelectRectTool.svg');"></button>
|
|
11
|
+
<button type="button" class="tool" data-command="setTool" data-command-parameter="MagicWandSelector" title="Magic Wand Selector" style="--tool-icon: url('${assetsPath}images/tools/MagicWandTool.svg');"></button>
|
|
12
12
|
</div>
|
|
13
13
|
</main>
|
|
14
14
|
</div>`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectionToolPopup.js","sourceRoot":"","sources":["../../../../../../../src/elements/widgets/designerView/tools/toolBar/popups/SelectionToolPopup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yCAAyC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,OAAO,kBAAmB,SAAQ,qBAAqB;IAE3D,MAAM,CAAU,QAAQ,GAAG,IAAI,CAAA;;;;;
|
|
1
|
+
{"version":3,"file":"SelectionToolPopup.js","sourceRoot":"","sources":["../../../../../../../src/elements/widgets/designerView/tools/toolBar/popups/SelectionToolPopup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yCAAyC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,OAAO,kBAAmB,SAAQ,qBAAqB;IAE3D,MAAM,CAAU,QAAQ,GAAG,IAAI,CAAA;;;;;yKAKwI,UAAU;0KACT,UAAU;;;eAGrK,CAAC;;AAGhB,cAAc,CAAC,MAAM,CAAC,6CAA6C,EAAE,kBAAkB,CAAC,CAAC"}
|
|
@@ -28,112 +28,159 @@ export class TransformToolPopup extends DraggableToolWindow {
|
|
|
28
28
|
get windowTitle() { return 'Transform'; }
|
|
29
29
|
get windowContentStyle() {
|
|
30
30
|
return css `
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
31
|
+
:host {
|
|
32
|
+
width: 232px;
|
|
33
|
+
font: 12px system-ui, sans-serif;
|
|
34
|
+
color: var(--wcd-designer-view-statusbar-color, #354348);
|
|
35
35
|
}
|
|
36
|
-
.
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
36
|
+
.window-frame {
|
|
37
|
+
background: var(--wcd-tool-popup-background, var(--wcd-designer-view-statusbar-background, #787f82));
|
|
38
|
+
border: 1px solid var(--wcd-tool-popup-border-color, var(--wcd-color-border, #596c7a));
|
|
39
|
+
border-radius: 6px;
|
|
40
|
+
box-shadow: 0 4px 16px rgba(0, 0, 0, .25);
|
|
40
41
|
}
|
|
41
|
-
.
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
.title-bar {
|
|
43
|
+
height: 29px;
|
|
44
|
+
padding: 6px 8px;
|
|
45
|
+
background: var(--wcd-tool-popup-title-background, rgba(255, 255, 255, .08));
|
|
46
|
+
border-bottom: 1px solid var(--wcd-tool-popup-border-color, var(--wcd-color-border, #596c7a));
|
|
44
47
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
grid-template-rows: 25px 25px 25px;
|
|
49
|
-
grid-row-gap: 2px;
|
|
50
|
-
font-size: small;
|
|
51
|
-
margin: 10px;
|
|
52
|
-
color: var(--wcd-color-text, white);
|
|
48
|
+
.title-text {
|
|
49
|
+
font: 600 11px/16px system-ui, sans-serif;
|
|
50
|
+
color: inherit;
|
|
53
51
|
}
|
|
54
|
-
|
|
52
|
+
.close-btn {
|
|
53
|
+
color: inherit;
|
|
54
|
+
width: 20px;
|
|
55
|
+
height: 20px;
|
|
56
|
+
border-radius: 4px;
|
|
57
|
+
}
|
|
58
|
+
.window-content {
|
|
59
|
+
padding: 8px;
|
|
60
|
+
}
|
|
61
|
+
#input-div, #spacing-div {
|
|
55
62
|
display: grid;
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
font-size:
|
|
59
|
-
margin: 10px;
|
|
60
|
-
grid-column-gap: 5px
|
|
63
|
+
gap: 6px 8px;
|
|
64
|
+
align-items: center;
|
|
65
|
+
font-size: 11px;
|
|
61
66
|
}
|
|
62
|
-
#
|
|
63
|
-
|
|
64
|
-
|
|
67
|
+
#input-div {
|
|
68
|
+
grid-template-columns: auto minmax(0, 1fr);
|
|
69
|
+
}
|
|
70
|
+
#spacing-div {
|
|
71
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
72
|
+
margin-top: 8px;
|
|
73
|
+
padding-top: 8px;
|
|
74
|
+
border-top: 1px solid var(--wcd-tool-popup-border-color, var(--wcd-color-border, #596c7a));
|
|
75
|
+
}
|
|
76
|
+
input[type="number"] {
|
|
77
|
+
box-sizing: border-box;
|
|
65
78
|
width: 100%;
|
|
66
|
-
|
|
67
|
-
|
|
79
|
+
min-width: 0;
|
|
80
|
+
height: 24px;
|
|
81
|
+
padding: 0 4px;
|
|
82
|
+
border: 1px solid var(--wcd-color-border, #596c7a);
|
|
83
|
+
border-radius: 4px;
|
|
84
|
+
background: var(--wcd-input-background-color, white);
|
|
85
|
+
color: inherit;
|
|
86
|
+
font: inherit;
|
|
87
|
+
}
|
|
88
|
+
#button-div {
|
|
68
89
|
display: flex;
|
|
90
|
+
gap: 4px;
|
|
91
|
+
margin-top: 8px;
|
|
92
|
+
}
|
|
93
|
+
#button-div button {
|
|
94
|
+
flex: 1;
|
|
95
|
+
}
|
|
96
|
+
.window-content button {
|
|
97
|
+
height: 24px;
|
|
98
|
+
border: 0;
|
|
99
|
+
border-radius: 4px;
|
|
100
|
+
padding: 0 8px;
|
|
101
|
+
font: inherit;
|
|
102
|
+
color: inherit;
|
|
103
|
+
background: rgba(255, 255, 255, .12);
|
|
104
|
+
cursor: pointer;
|
|
69
105
|
}
|
|
70
|
-
#
|
|
106
|
+
.window-content button[aria-pressed="true"], #transform-button-apply {
|
|
107
|
+
background: var(--wcd-designer-view-tool-selected-background, deepskyblue);
|
|
108
|
+
}
|
|
109
|
+
.window-content button:hover, .close-btn:hover {
|
|
110
|
+
background: var(--wcd-designer-view-tool-hover-background, rgba(164,206,249,.6));
|
|
111
|
+
color: inherit;
|
|
112
|
+
}
|
|
113
|
+
button:focus-visible, input:focus-visible {
|
|
114
|
+
outline: 2px solid var(--wcd-color-focus, #47977c);
|
|
115
|
+
outline-offset: -2px;
|
|
116
|
+
}
|
|
117
|
+
#origin-div {
|
|
71
118
|
display: grid;
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
top: -80px;
|
|
77
|
-
position: relative;
|
|
119
|
+
justify-items: center;
|
|
120
|
+
gap: 8px;
|
|
121
|
+
margin: 12px 0;
|
|
122
|
+
font-size: 11px;
|
|
78
123
|
}
|
|
79
|
-
#cube
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
124
|
+
#cube {
|
|
125
|
+
display: grid;
|
|
126
|
+
grid-template-columns: repeat(3, 16px);
|
|
127
|
+
gap: 8px;
|
|
128
|
+
padding: 8px;
|
|
129
|
+
border: 1px solid var(--wcd-tool-popup-border-color, var(--wcd-color-border, #596c7a));
|
|
130
|
+
border-radius: 4px;
|
|
131
|
+
background: rgba(255, 255, 255, .08);
|
|
85
132
|
}
|
|
86
|
-
#
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
133
|
+
#cube input {
|
|
134
|
+
width: 16px;
|
|
135
|
+
height: 16px;
|
|
136
|
+
margin: 0;
|
|
137
|
+
accent-color: var(--wcd-designer-view-tool-selected-background, deepskyblue);
|
|
138
|
+
}
|
|
139
|
+
#apply-div {
|
|
140
|
+
display: flex;
|
|
141
|
+
justify-content: flex-end;
|
|
95
142
|
}
|
|
96
143
|
`;
|
|
97
144
|
}
|
|
98
145
|
get windowTemplate() {
|
|
99
146
|
return `
|
|
100
147
|
<div id="input-div">
|
|
101
|
-
<
|
|
148
|
+
<label for="transform-input-x">X</label>
|
|
102
149
|
<input type="number" id="transform-input-x">
|
|
103
|
-
<
|
|
150
|
+
<label for="transform-input-y">Y</label>
|
|
104
151
|
<input type="number" id="transform-input-y">
|
|
105
|
-
<
|
|
152
|
+
<label for="transform-input-r">Rotation</label>
|
|
106
153
|
<input type="number" id="transform-input-r">
|
|
107
154
|
</div>
|
|
108
155
|
<div id="button-div">
|
|
109
|
-
<button id="transform-button-absolute">
|
|
110
|
-
<button id="transform-button-relative">
|
|
156
|
+
<button id="transform-button-absolute">Absolute</button>
|
|
157
|
+
<button id="transform-button-relative">Relative</button>
|
|
111
158
|
</div>
|
|
112
159
|
|
|
113
160
|
<div id="spacing-div">
|
|
114
|
-
<
|
|
115
|
-
<
|
|
161
|
+
<label for="spacing-input-x">X spacing</label>
|
|
162
|
+
<label for="spacing-input-y">Y spacing</label>
|
|
116
163
|
<input type="number" id="spacing-input-x">
|
|
117
164
|
<input type="number" id="spacing-input-y">
|
|
118
165
|
</div>
|
|
119
166
|
|
|
120
|
-
<div
|
|
121
|
-
<
|
|
122
|
-
<div id="cube">
|
|
123
|
-
<input id="origin-top-left" type="radio" name="origin-radio">
|
|
124
|
-
<input id="origin-top-mid" type="radio" name="origin-radio">
|
|
125
|
-
<input id="origin-top-right" type="radio" name="origin-radio">
|
|
126
|
-
<input id="origin-mid-left" type="radio" name="origin-radio">
|
|
127
|
-
<input id="origin-mid-mid" type="radio" name="origin-radio" checked>
|
|
128
|
-
<input id="origin-mid-right" type="radio" name="origin-radio">
|
|
129
|
-
<input id="origin-bot-left" type="radio" name="origin-radio">
|
|
130
|
-
<input id="origin-bot-mid" type="radio" name="origin-radio">
|
|
131
|
-
<input id="origin-bot-right" type="radio" name="origin-radio">
|
|
167
|
+
<div id="origin-div">
|
|
168
|
+
<span id="origin-label">Transform origin</span>
|
|
169
|
+
<div id="cube" role="group" aria-labelledby="origin-label">
|
|
170
|
+
<input id="origin-top-left" aria-label="Top left" type="radio" name="origin-radio">
|
|
171
|
+
<input id="origin-top-mid" aria-label="Top center" type="radio" name="origin-radio">
|
|
172
|
+
<input id="origin-top-right" aria-label="Top right" type="radio" name="origin-radio">
|
|
173
|
+
<input id="origin-mid-left" aria-label="Middle left" type="radio" name="origin-radio">
|
|
174
|
+
<input id="origin-mid-mid" aria-label="Center" type="radio" name="origin-radio" checked>
|
|
175
|
+
<input id="origin-mid-right" aria-label="Middle right" type="radio" name="origin-radio">
|
|
176
|
+
<input id="origin-bot-left" aria-label="Bottom left" type="radio" name="origin-radio">
|
|
177
|
+
<input id="origin-bot-mid" aria-label="Bottom center" type="radio" name="origin-radio">
|
|
178
|
+
<input id="origin-bot-right" aria-label="Bottom right" type="radio" name="origin-radio">
|
|
132
179
|
</div>
|
|
133
180
|
</div>
|
|
134
181
|
|
|
135
182
|
<div id="apply-div">
|
|
136
|
-
<button id="transform-button-apply" style="width:100px;">
|
|
183
|
+
<button id="transform-button-apply" style="width:100px;">Apply</button>
|
|
137
184
|
</div>`;
|
|
138
185
|
}
|
|
139
186
|
constructor(designerCanvas) {
|
|
@@ -163,18 +210,8 @@ export class TransformToolPopup extends DraggableToolWindow {
|
|
|
163
210
|
this._changePositionMode(this._transformMode);
|
|
164
211
|
}
|
|
165
212
|
_changePositionMode(mode) {
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
this._relativeButton.style.color = "black";
|
|
169
|
-
this._absoluteButton.style.backgroundColor = "#A4B5C1";
|
|
170
|
-
this._absoluteButton.style.color = "#77716E";
|
|
171
|
-
}
|
|
172
|
-
else {
|
|
173
|
-
this._absoluteButton.style.backgroundColor = "#6F8A9D";
|
|
174
|
-
this._absoluteButton.style.color = "black";
|
|
175
|
-
this._relativeButton.style.backgroundColor = "#A4B5C1";
|
|
176
|
-
this._relativeButton.style.color = "#77716E";
|
|
177
|
-
}
|
|
213
|
+
this._relativeButton.setAttribute('aria-pressed', String(mode === 'relative'));
|
|
214
|
+
this._absoluteButton.setAttribute('aria-pressed', String(mode === 'absolute'));
|
|
178
215
|
this._transformMode = mode;
|
|
179
216
|
}
|
|
180
217
|
_applyTransform() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TransformToolPopup.js","sourceRoot":"","sources":["../../../../../../../src/elements/widgets/designerView/tools/toolBar/popups/TransformToolPopup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yCAAyC,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAG9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAG5E,MAAM,OAAO,kBAAmB,SAAQ,mBAAmB;IACjD,eAAe,CAAkB;IACjC,sBAAsB,CAAQ;IAC9B,iBAAiB,CAAU;IAE3B,eAAe,CAAoB;IACnC,eAAe,CAAoB;IACnC,YAAY,CAAoB;IAEhC,OAAO,CAAmB;IAC1B,OAAO,CAAmB;IAC1B,OAAO,CAAmB;IAC1B,cAAc,CAAmB;IACjC,cAAc,CAAmB;IAEjC,cAAc,CAAmB;IACjC,aAAa,CAAmB;IAChC,eAAe,CAAmB;IAClC,cAAc,CAAmB;IACjC,aAAa,CAAmB;IAChC,eAAe,CAAmB;IAClC,cAAc,CAAmB;IACjC,aAAa,CAAmB;IAChC,eAAe,CAAmB;IAElC,cAAc,CAA0B;IACxC,gBAAgB,CAA4G;IAEpI,IAAuB,WAAW,KAAa,OAAO,WAAW,CAAC,CAAC,CAAC;IAEpE,IAAuB,kBAAkB;QACvC,OAAO,GAAG,CAAA
|
|
1
|
+
{"version":3,"file":"TransformToolPopup.js","sourceRoot":"","sources":["../../../../../../../src/elements/widgets/designerView/tools/toolBar/popups/TransformToolPopup.ts"],"names":[],"mappings":"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"}
|