@node-projects/web-component-designer 0.0.217 → 0.0.218
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.
|
@@ -98,6 +98,9 @@ export declare class DesignerCanvas extends BaseCustomWebComponentLazyAppend imp
|
|
|
98
98
|
private _onDrop;
|
|
99
99
|
showDesignItemContextMenu(designItem: IDesignItem, event: MouseEvent): ContextMenu;
|
|
100
100
|
private _onDblClick;
|
|
101
|
+
private _searchShowOverlay;
|
|
102
|
+
private _searchHideOverlay;
|
|
103
|
+
private _searchRun;
|
|
101
104
|
private onKeyUp;
|
|
102
105
|
private onKeyDown;
|
|
103
106
|
/**
|
|
@@ -148,7 +148,86 @@ class DesignerCanvas extends BaseCustomWebComponentLazyAppend {
|
|
|
148
148
|
#node-projects-designer-canvas-helper-element {
|
|
149
149
|
height: 0;
|
|
150
150
|
width: 0;
|
|
151
|
-
}
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
#node-projects-designer-search-container {
|
|
154
|
+
position:absolute;
|
|
155
|
+
display: grid;
|
|
156
|
+
grid-template-columns: 1fr auto auto;
|
|
157
|
+
align-items: center;
|
|
158
|
+
justify-content: left;
|
|
159
|
+
gap: 8px;
|
|
160
|
+
width: auto;
|
|
161
|
+
right: 10px;
|
|
162
|
+
top: 0;
|
|
163
|
+
background:rgb(242, 242, 242);
|
|
164
|
+
padding: 5px 6px;
|
|
165
|
+
border-bottom-left-radius: 5px;
|
|
166
|
+
border-bottom-right-radius: 5px;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
#node-projects-designer-search-container > #node-projects-designer-search-bar {
|
|
170
|
+
border: 1px solid black;
|
|
171
|
+
padding: 0;
|
|
172
|
+
display: grid;
|
|
173
|
+
grid-template-columns: 1fr auto;
|
|
174
|
+
align-items: center;
|
|
175
|
+
background-color: white;
|
|
176
|
+
padding: 1px 2px;
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
#node-projects-designer-search-container > div > input {
|
|
180
|
+
height:20px;
|
|
181
|
+
padding-left: 6px;
|
|
182
|
+
font-size: 13px;
|
|
183
|
+
border: none;
|
|
184
|
+
outline: none;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
#node-projects-designer-search-container > div > #node-projects-designer-search-start {
|
|
188
|
+
height:22px;
|
|
189
|
+
border: none;
|
|
190
|
+
background-color: white;
|
|
191
|
+
font-size: 13px;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
#node-projects-designer-search-container > div > #node-projects-designer-search-start:hover {
|
|
195
|
+
background-color: #D3D3D3;
|
|
196
|
+
transition: 0.9s;
|
|
197
|
+
border-radius: 2px;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
#node-projects-designer-search-container > #node-projects-designer-search-close {
|
|
201
|
+
position: relative;
|
|
202
|
+
width: 20px;
|
|
203
|
+
height: 20px;
|
|
204
|
+
border: none;
|
|
205
|
+
background-color: transparent;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
#node-projects-designer-search-container > span {
|
|
209
|
+
font-family:sans-serif;
|
|
210
|
+
font-size: 12px;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
#node-projects-designer-search-container > #node-projects-designer-search-close::before,
|
|
214
|
+
#node-projects-designer-search-container > #node-projects-designer-search-close::after {
|
|
215
|
+
content: "";
|
|
216
|
+
position: absolute;
|
|
217
|
+
top: 50%;
|
|
218
|
+
left: 50%;
|
|
219
|
+
width: 60%;
|
|
220
|
+
background-color: black;
|
|
221
|
+
height: 1px;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
#node-projects-designer-search-container > #node-projects-designer-search-close::before {
|
|
225
|
+
transform: translate(-50%, -50%) rotate(45deg);
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
#node-projects-designer-search-container > #node-projects-designer-search-close::after {
|
|
229
|
+
transform: translate(-50%, -50%) rotate(-45deg);
|
|
230
|
+
}
|
|
152
231
|
`;
|
|
153
232
|
static template = html `
|
|
154
233
|
<div style="display: flex;flex-direction: column;width: 100%;height: 100%; margin: 0 !important; padding: 0 !important; border: none !important;">
|
|
@@ -161,6 +240,15 @@ class DesignerCanvas extends BaseCustomWebComponentLazyAppend {
|
|
|
161
240
|
</div>
|
|
162
241
|
<div id="node-projects-designer-canvas-clickOverlay" tabindex="0" style="pointer-events: auto; margin: 0 !important; padding: 0 !important; border: none !important;"></div>
|
|
163
242
|
</div>
|
|
243
|
+
|
|
244
|
+
<div id="node-projects-designer-search-container" style="display: none;">
|
|
245
|
+
<div id="node-projects-designer-search-bar">
|
|
246
|
+
<input id="node-projects-designer-search-input">
|
|
247
|
+
<button id="node-projects-designer-search-start">↓</button>
|
|
248
|
+
</div>
|
|
249
|
+
<span id="node-projects-designer-search-result">0 selected</span>
|
|
250
|
+
<button id="node-projects-designer-search-close"></button>
|
|
251
|
+
</div>
|
|
164
252
|
</div>`;
|
|
165
253
|
extensionManager;
|
|
166
254
|
_pointerextensions;
|
|
@@ -176,6 +264,12 @@ class DesignerCanvas extends BaseCustomWebComponentLazyAppend {
|
|
|
176
264
|
this.onKeyUp = this.onKeyUp.bind(this);
|
|
177
265
|
this._onDblClick = this._onDblClick.bind(this);
|
|
178
266
|
this._pointerEventHandler = this._pointerEventHandler.bind(this);
|
|
267
|
+
this._getDomElement('node-projects-designer-search-close').onclick = () => this._searchHideOverlay();
|
|
268
|
+
this._getDomElement('node-projects-designer-search-start').onclick = () => this._searchRun();
|
|
269
|
+
this._getDomElement('node-projects-designer-search-container').onkeydown = (event) => {
|
|
270
|
+
if (event.key === "Enter")
|
|
271
|
+
this._searchRun();
|
|
272
|
+
};
|
|
179
273
|
this.clickOverlay.oncontextmenu = (e) => e.preventDefault();
|
|
180
274
|
}
|
|
181
275
|
get designerWidth() {
|
|
@@ -756,6 +850,31 @@ class DesignerCanvas extends BaseCustomWebComponentLazyAppend {
|
|
|
756
850
|
event.preventDefault();
|
|
757
851
|
this.extensionManager.applyExtension(this.instanceServiceContainer.selectionService.primarySelection, ExtensionType.Doubleclick, event);
|
|
758
852
|
}
|
|
853
|
+
_searchShowOverlay() {
|
|
854
|
+
let divElement = this._getDomElement('node-projects-designer-search-container');
|
|
855
|
+
divElement.style.display = '';
|
|
856
|
+
this._getDomElement('node-projects-designer-search-input').focus();
|
|
857
|
+
}
|
|
858
|
+
_searchHideOverlay() {
|
|
859
|
+
let divElement = this._getDomElement('node-projects-designer-search-container');
|
|
860
|
+
divElement.style.display = 'none';
|
|
861
|
+
}
|
|
862
|
+
_searchRun() {
|
|
863
|
+
let input = this._getDomElement('node-projects-designer-search-input');
|
|
864
|
+
this._getDomElement('node-projects-designer-search-result').innerHTML = "0 selected";
|
|
865
|
+
if (input.value != "") {
|
|
866
|
+
let selectedElements = this.shadowRoot.querySelectorAll(input.value);
|
|
867
|
+
let designItems = [];
|
|
868
|
+
for (let i = 0; i <= selectedElements.length; i++) {
|
|
869
|
+
if (this._canvasContainer.contains(selectedElements[i]))
|
|
870
|
+
designItems.push(DesignItem.GetDesignItem(selectedElements[i]));
|
|
871
|
+
}
|
|
872
|
+
if (designItems.length > 0) {
|
|
873
|
+
this.instanceServiceContainer.selectionService.setSelectedElements(designItems);
|
|
874
|
+
this._getDomElement('node-projects-designer-search-result').innerHTML = designItems.length.toString() + " selected";
|
|
875
|
+
}
|
|
876
|
+
}
|
|
877
|
+
}
|
|
759
878
|
onKeyUp(event) {
|
|
760
879
|
if (event.composedPath().indexOf(this.eatEvents) >= 0)
|
|
761
880
|
return;
|
|
@@ -778,6 +897,8 @@ class DesignerCanvas extends BaseCustomWebComponentLazyAppend {
|
|
|
778
897
|
this.executeCommand({ type: CommandType.paste, ctrlKey: event.ctrlKey, altKey: event.altKey, shiftKey: event.shiftKey });
|
|
779
898
|
else if ((event.ctrlKey || event.metaKey) && event.key === 'x')
|
|
780
899
|
this.executeCommand({ type: CommandType.cut, ctrlKey: event.ctrlKey, altKey: event.altKey, shiftKey: event.shiftKey });
|
|
900
|
+
else if ((event.ctrlKey || event.metaKey) && event.key === 'f')
|
|
901
|
+
this._searchShowOverlay();
|
|
781
902
|
else {
|
|
782
903
|
let primarySelection = this.instanceServiceContainer.selectionService.primarySelection;
|
|
783
904
|
if (!primarySelection) {
|