@node-projects/web-component-designer 0.1.127 → 0.1.128

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.
@@ -4,6 +4,13 @@ import { DesignerView } from './widgets/designerView/designerView.js';
4
4
  import { SimpleSplitView } from './controls/SimpleSplitView.js';
5
5
  import { sleep } from "./helper/Helper.js";
6
6
  import { ExtensionType } from "./widgets/designerView/extensions/ExtensionType.js";
7
+ var tabIndex;
8
+ (function (tabIndex) {
9
+ tabIndex[tabIndex["designer"] = 0] = "designer";
10
+ tabIndex[tabIndex["code"] = 1] = "code";
11
+ tabIndex[tabIndex["split"] = 2] = "split";
12
+ tabIndex[tabIndex["preview"] = 3] = "preview";
13
+ })(tabIndex || (tabIndex = {}));
7
14
  export class DocumentContainer extends BaseCustomWebComponentLazyAppend {
8
15
  designerView;
9
16
  codeView;
@@ -90,8 +97,8 @@ export class DocumentContainer extends BaseCustomWebComponentLazyAppend {
90
97
  this._codeDiv.appendChild(this.codeView);
91
98
  this.codeView.onTextChanged.on(text => {
92
99
  if (!this._disableChangeNotificationDesigner) {
93
- this._disableChangeNotificationEditor = true;
94
- if (this._tabControl.selectedIndex === 2) {
100
+ if (this._tabControl.selectedIndex === tabIndex.code || this._tabControl.selectedIndex === tabIndex.split) {
101
+ this._disableChangeNotificationEditor = true;
95
102
  this._content = text;
96
103
  this.refreshInSplitViewDebounced();
97
104
  }
@@ -106,18 +113,22 @@ export class DocumentContainer extends BaseCustomWebComponentLazyAppend {
106
113
  this._tabControl.appendChild(this.demoView);
107
114
  queueMicrotask(() => {
108
115
  this.shadowRoot.appendChild(div);
109
- this._tabControl.selectedIndex = 0;
116
+ this._tabControl.selectedIndex = tabIndex.designer;
110
117
  });
111
118
  }
112
119
  async refreshInSplitView() {
113
- await this.updateDesignerHtml();
120
+ try {
121
+ await this.updateDesignerHtml();
122
+ }
123
+ catch (err) {
124
+ console.error(err);
125
+ }
114
126
  this._disableChangeNotificationEditor = false;
115
127
  }
116
128
  designerSelectionChanged(e) {
117
- if (this._tabControl.selectedIndex === 2) {
129
+ if (this._tabControl.selectedIndex === tabIndex.split) {
118
130
  let primarySelection = this.instanceServiceContainer.selectionService.primarySelection;
119
131
  if (primarySelection) {
120
- //this._content = this.designerView.getHTML();
121
132
  if (this.designerView.instanceServiceContainer.designItemDocumentPositionService) {
122
133
  this._selectionPosition = this.designerView.instanceServiceContainer.designItemDocumentPositionService.getPosition(primarySelection);
123
134
  if (this._selectionPosition)
@@ -131,7 +142,7 @@ export class DocumentContainer extends BaseCustomWebComponentLazyAppend {
131
142
  this.onContentChanged.emit();
132
143
  if (!this._disableChangeNotificationEditor) {
133
144
  this._disableChangeNotificationDesigner = true;
134
- if (this._tabControl.selectedIndex === 2) {
145
+ if (this._tabControl.selectedIndex === tabIndex.code || this._tabControl.selectedIndex === tabIndex.split) {
135
146
  let primarySelection = this.instanceServiceContainer.selectionService.primarySelection;
136
147
  this._content = this.designerView.getHTML();
137
148
  this.codeView.update(this._content, this.designerView.instanceServiceContainer);
@@ -152,23 +163,23 @@ export class DocumentContainer extends BaseCustomWebComponentLazyAppend {
152
163
  this.demoView.dispose();
153
164
  }
154
165
  executeCommand(command) {
155
- if (this._tabControl.selectedIndex === 0 || this._tabControl.selectedIndex === 2)
166
+ if (this._tabControl.selectedIndex === tabIndex.designer || this._tabControl.selectedIndex === tabIndex.split)
156
167
  this.designerView.executeCommand(command);
157
- else if (this._tabControl.selectedIndex === 1)
168
+ else if (this._tabControl.selectedIndex === tabIndex.code)
158
169
  this.codeView.executeCommand(command);
159
- else if (this._tabControl.selectedIndex === 3)
170
+ else if (this._tabControl.selectedIndex === tabIndex.preview)
160
171
  this.demoView.executeCommand(command);
161
172
  }
162
173
  canExecuteCommand(command) {
163
- if (this._tabControl.selectedIndex === 0 || this._tabControl.selectedIndex === 2) {
174
+ if (this._tabControl.selectedIndex === tabIndex.designer || this._tabControl.selectedIndex === tabIndex.split) {
164
175
  if (this.designerView?.canExecuteCommand)
165
176
  return this.designerView.canExecuteCommand(command);
166
177
  }
167
- else if (this._tabControl.selectedIndex === 1) {
178
+ else if (this._tabControl.selectedIndex === tabIndex.code) {
168
179
  if (this.codeView?.canExecuteCommand)
169
180
  return this.codeView.canExecuteCommand(command);
170
181
  }
171
- else if (this._tabControl.selectedIndex === 3) {
182
+ else if (this._tabControl.selectedIndex === tabIndex.preview) {
172
183
  if (this.demoView?.canExecuteCommand)
173
184
  return this.demoView.canExecuteCommand(command);
174
185
  }
@@ -177,21 +188,21 @@ export class DocumentContainer extends BaseCustomWebComponentLazyAppend {
177
188
  set content(value) {
178
189
  this._content = value;
179
190
  if (this._tabControl) {
180
- if (this._tabControl.selectedIndex === 0)
191
+ if (this._tabControl.selectedIndex === tabIndex.designer)
181
192
  this.updateDesignerHtml();
182
- else if (this._tabControl.selectedIndex === 1)
193
+ else if (this._tabControl.selectedIndex === tabIndex.code)
183
194
  this.codeView.update(this._content, this.designerView.instanceServiceContainer);
184
- else if (this._tabControl.selectedIndex === 2) {
195
+ else if (this._tabControl.selectedIndex === tabIndex.split) {
185
196
  }
186
- else if (this._tabControl.selectedIndex === 3)
197
+ else if (this._tabControl.selectedIndex === tabIndex.preview)
187
198
  this.demoView.display(this._serviceContainer, this.designerView.instanceServiceContainer, this._content, this.additionalStyleString);
188
199
  }
189
200
  }
190
201
  get content() {
191
202
  if (this._tabControl) {
192
- if (this._tabControl.selectedIndex === 0)
203
+ if (this._tabControl.selectedIndex === tabIndex.designer)
193
204
  this._content = this.designerView.getHTML();
194
- else if (this._tabControl.selectedIndex === 1)
205
+ else if (this._tabControl.selectedIndex === tabIndex.code)
195
206
  this._content = this.codeView.getText();
196
207
  return this._content;
197
208
  }
@@ -213,9 +224,9 @@ export class DocumentContainer extends BaseCustomWebComponentLazyAppend {
213
224
  this._designerDiv.appendChild(this.designerView);
214
225
  this._codeDiv.appendChild(this.codeView);
215
226
  }
216
- if (i.newIndex === 0 || i.newIndex === 2)
227
+ if (i.newIndex === tabIndex.designer || i.newIndex === tabIndex.split)
217
228
  this.updateDesignerHtml();
218
- if (i.newIndex === 1 || i.newIndex === 2) {
229
+ if (i.newIndex === tabIndex.code || i.newIndex === tabIndex.split) {
219
230
  this.codeView.update(this._content, this.designerView.instanceServiceContainer);
220
231
  if (this._selectionPosition) {
221
232
  this.codeView.setSelection(this._selectionPosition);
@@ -229,11 +240,11 @@ export class DocumentContainer extends BaseCustomWebComponentLazyAppend {
229
240
  this.codeView.focusEditor();
230
241
  }
231
242
  }
232
- if (i.newIndex === 2) {
243
+ if (i.newIndex === tabIndex.split) {
233
244
  this._splitDiv.appendChild(this.designerView);
234
245
  this._splitDiv.appendChild(this.codeView);
235
246
  }
236
- if (i.newIndex === 3) {
247
+ if (i.newIndex === tabIndex.preview) {
237
248
  this.demoView.display(this._serviceContainer, this.designerView.instanceServiceContainer, this._content, this.additionalStyleString);
238
249
  }
239
250
  if (this._content) {
@@ -263,5 +274,4 @@ export class DocumentContainer extends BaseCustomWebComponentLazyAppend {
263
274
  return this.designerView.instanceServiceContainer;
264
275
  }
265
276
  }
266
- //@ts-ignore
267
277
  customElements.define("node-projects-document-container", DocumentContainer);
@@ -1,19 +1,19 @@
1
1
  import type { IPoint } from '../../../interfaces/IPoint.js';
2
2
  import type { IPlacementService } from './IPlacementService.js';
3
3
  import type { IDesignItem } from '../../item/IDesignItem.js';
4
- import { IPlacementView } from '../../widgets/designerView/IPlacementView.js';
4
+ import { IDesignerCanvas } from '../../widgets/designerView/IDesignerCanvas.js';
5
5
  export declare class AbsolutePlacementService implements IPlacementService {
6
- serviceForContainer(container: IDesignItem, containerStyle: CSSStyleDeclaration): boolean;
6
+ serviceForContainer(container: IDesignItem, containerStyle: CSSStyleDeclaration, item?: IDesignItem): boolean;
7
7
  isEnterableContainer(container: IDesignItem): boolean;
8
8
  canEnter(container: IDesignItem, items: IDesignItem[]): boolean;
9
9
  canLeave(container: IDesignItem, items: IDesignItem[]): boolean;
10
10
  getElementOffset(container: IDesignItem, designItem?: IDesignItem): IPoint;
11
11
  private calculateTrack;
12
- placePoint(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): IPoint;
13
- startPlace(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
14
- place(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
12
+ placePoint(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): IPoint;
13
+ startPlace(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
14
+ place(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
15
15
  moveElements(designItems: IDesignItem[], position: IPoint, absolute: boolean): void;
16
16
  enterContainer(container: IDesignItem, items: IDesignItem[], mode: 'normal' | 'drop'): void;
17
17
  leaveContainer(container: IDesignItem, items: IDesignItem[]): void;
18
- finishPlace(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
18
+ finishPlace(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
19
19
  }
@@ -4,7 +4,9 @@ import { filterChildPlaceItems, getDesignItemCurrentPos, placeDesignItem } from
4
4
  import { ExtensionType } from '../../widgets/designerView/extensions/ExtensionType.js';
5
5
  import { straightenLine } from '../../helper/PathDataPolyfill.js';
6
6
  export class AbsolutePlacementService {
7
- serviceForContainer(container, containerStyle) {
7
+ serviceForContainer(container, containerStyle, item) {
8
+ if (item != null && item.getComputedStyle()?.position == 'absolute')
9
+ return true;
8
10
  if (containerStyle.display === 'grid' || containerStyle.display === 'inline-grid' ||
9
11
  containerStyle.display === 'flex' || containerStyle.display === 'inline-flex')
10
12
  return false;
@@ -30,20 +32,20 @@ export class AbsolutePlacementService {
30
32
  getElementOffset(container, designItem) {
31
33
  return container.instanceServiceContainer.designerCanvas.getNormalizedElementCoordinates(container.element);
32
34
  }
33
- calculateTrack(event, placementView, startPoint, offsetInControl, newPoint, item) {
35
+ calculateTrack(event, designerCanvas, startPoint, offsetInControl, newPoint, item) {
34
36
  let trackX = newPoint.x - startPoint.x;
35
37
  let trackY = newPoint.y - startPoint.y;
36
38
  if (!event.ctrlKey) {
37
- if (placementView.alignOnGrid) {
39
+ if (designerCanvas.alignOnGrid) {
38
40
  let p = getDesignItemCurrentPos(item, 'position');
39
- p.x = p.x % placementView.gridSize;
40
- p.y = p.y % placementView.gridSize;
41
- trackX = Math.round(trackX / placementView.gridSize) * placementView.gridSize - p.x;
42
- trackY = Math.round(trackY / placementView.gridSize) * placementView.gridSize - p.y;
41
+ p.x = p.x % designerCanvas.gridSize;
42
+ p.y = p.y % designerCanvas.gridSize;
43
+ trackX = Math.round(trackX / designerCanvas.gridSize) * designerCanvas.gridSize - p.x;
44
+ trackY = Math.round(trackY / designerCanvas.gridSize) * designerCanvas.gridSize - p.y;
43
45
  }
44
- else if (placementView.alignOnSnap) {
46
+ else if (designerCanvas.alignOnSnap) {
45
47
  let rect = item.element.getBoundingClientRect();
46
- let newPos = placementView.snapLines.snapToPosition({ x: (newPoint.x - offsetInControl.x), y: (newPoint.y - offsetInControl.y) }, { width: rect.width / placementView.scaleFactor, height: rect.height / placementView.scaleFactor }, { x: trackX > 0 ? 1 : -1, y: trackY > 0 ? 1 : -1 });
48
+ let newPos = designerCanvas.snapLines.snapToPosition({ x: (newPoint.x - offsetInControl.x), y: (newPoint.y - offsetInControl.y) }, { width: rect.width / designerCanvas.scaleFactor, height: rect.height / designerCanvas.scaleFactor }, { x: trackX > 0 ? 1 : -1, y: trackY > 0 ? 1 : -1 });
47
49
  if (newPos.x !== null) {
48
50
  trackX = newPos.x - Math.round(startPoint.x) + Math.round(offsetInControl.x);
49
51
  }
@@ -60,16 +62,16 @@ export class AbsolutePlacementService {
60
62
  }
61
63
  return { x: trackX, y: trackY };
62
64
  }
63
- placePoint(event, placementView, container, startPoint, offsetInControl, newPoint, items) {
65
+ placePoint(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
64
66
  let trackX = newPoint.x;
65
67
  let trackY = newPoint.y;
66
68
  if (!event.ctrlKey) {
67
- if (placementView.alignOnGrid) {
68
- trackX = Math.round(trackX / placementView.gridSize) * placementView.gridSize;
69
- trackY = Math.round(trackY / placementView.gridSize) * placementView.gridSize;
69
+ if (designerCanvas.alignOnGrid) {
70
+ trackX = Math.round(trackX / designerCanvas.gridSize) * designerCanvas.gridSize;
71
+ trackY = Math.round(trackY / designerCanvas.gridSize) * designerCanvas.gridSize;
70
72
  }
71
- else if (placementView.alignOnSnap) {
72
- let newPos = placementView.snapLines.snapToPosition({ x: newPoint.x - offsetInControl.x, y: newPoint.y - offsetInControl.y }, null, { x: trackX > 0 ? 1 : -1, y: trackY > 0 ? 1 : -1 });
73
+ else if (designerCanvas.alignOnSnap) {
74
+ let newPos = designerCanvas.snapLines.snapToPosition({ x: newPoint.x - offsetInControl.x, y: newPoint.y - offsetInControl.y }, null, { x: trackX > 0 ? 1 : -1, y: trackY > 0 ? 1 : -1 });
73
75
  if (newPos.x !== null) {
74
76
  trackX = newPos.x;
75
77
  }
@@ -86,12 +88,12 @@ export class AbsolutePlacementService {
86
88
  }
87
89
  return { x: trackX, y: trackY };
88
90
  }
89
- startPlace(event, placementView, container, startPoint, offsetInControl, newPoint, items) {
91
+ startPlace(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
90
92
  }
91
- place(event, placementView, container, startPoint, offsetInControl, newPoint, items) {
93
+ place(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
92
94
  //TODO: this should revert all undo actions while active
93
95
  //maybe a undo actions returns itself or an id so it could be changed?
94
- let track = this.calculateTrack(event, placementView, startPoint, offsetInControl, newPoint, items[0]);
96
+ let track = this.calculateTrack(event, designerCanvas, startPoint, offsetInControl, newPoint, items[0]);
95
97
  if (event.shiftKey) {
96
98
  track = straightenLine({ x: 0, y: 0 }, track, true);
97
99
  }
@@ -137,7 +139,7 @@ export class AbsolutePlacementService {
137
139
  }
138
140
  leaveContainer(container, items) {
139
141
  }
140
- finishPlace(event, placementView, container, startPoint, offsetInControl, newPoint, items) {
142
+ finishPlace(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
141
143
  let filterdItems = filterChildPlaceItems(items);
142
144
  for (const designItem of filterdItems) {
143
145
  let translation = extractTranslationFromDOMMatrix(new DOMMatrix(designItem.element.style.transform));
@@ -147,7 +149,7 @@ export class AbsolutePlacementService {
147
149
  placeDesignItem(container, designItem, { x: track.x - stylesMapOffset.x, y: track.y - stylesMapOffset.y }, 'position');
148
150
  }
149
151
  for (const item of items) {
150
- placementView.extensionManager.removeExtension(item, ExtensionType.Placement);
152
+ designerCanvas.extensionManager.removeExtension(item, ExtensionType.Placement);
151
153
  }
152
154
  }
153
155
  }
@@ -2,6 +2,7 @@ import type { IPoint } from '../../../interfaces/IPoint.js';
2
2
  import type { IPlacementService } from './IPlacementService.js';
3
3
  import type { IDesignItem } from '../../item/IDesignItem.js';
4
4
  import { IPlacementView } from '../../widgets/designerView/IPlacementView.js';
5
+ import { IDesignerCanvas } from '../../widgets/designerView/IDesignerCanvas.js';
5
6
  export declare class DefaultPlacementService implements IPlacementService {
6
7
  serviceForContainer(container: IDesignItem, containerStyle: CSSStyleDeclaration, item?: IDesignItem): boolean;
7
8
  isEnterableContainer(container: IDesignItem): boolean;
@@ -10,8 +11,8 @@ export declare class DefaultPlacementService implements IPlacementService {
10
11
  getElementOffset(container: IDesignItem, designItem?: IDesignItem): IPoint;
11
12
  private calculateTrack;
12
13
  placePoint(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): IPoint;
13
- startPlace(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
14
- place(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
14
+ startPlace(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
15
+ place(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
15
16
  moveElements(designItems: IDesignItem[], position: IPoint, absolute: boolean): void;
16
17
  enterContainer(container: IDesignItem, items: IDesignItem[], mode: 'normal' | 'drop'): void;
17
18
  leaveContainer(container: IDesignItem, items: IDesignItem[]): void;
@@ -1,6 +1,6 @@
1
1
  import { IPoint } from '../../../interfaces/IPoint.js';
2
2
  import { IDesignItem } from '../../item/IDesignItem.js';
3
- import { IPlacementView } from '../../widgets/designerView/IPlacementView.js';
3
+ import { IDesignerCanvas } from '../../widgets/designerView/IDesignerCanvas.js';
4
4
  import { IPlacementService } from './IPlacementService.js';
5
5
  export declare class FlexBoxPlacementService implements IPlacementService {
6
6
  private _basePlacementService;
@@ -12,9 +12,9 @@ export declare class FlexBoxPlacementService implements IPlacementService {
12
12
  canEnter(container: IDesignItem, items: IDesignItem[]): any;
13
13
  canLeave(container: IDesignItem, items: IDesignItem[]): boolean;
14
14
  getElementOffset(container: IDesignItem, designItem?: IDesignItem): IPoint;
15
- placePoint(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): IPoint;
16
- startPlace(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
17
- place(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
18
- finishPlace(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
15
+ placePoint(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): IPoint;
16
+ startPlace(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
17
+ place(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
18
+ finishPlace(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
19
19
  moveElements(designItems: IDesignItem[], position: IPoint, absolute: boolean): void;
20
20
  }
@@ -42,16 +42,16 @@ export class FlexBoxPlacementService {
42
42
  getElementOffset(container, designItem) {
43
43
  return container.element.getBoundingClientRect();
44
44
  }
45
- placePoint(event, placementView, container, startPoint, offsetInControl, newPoint, items) {
45
+ placePoint(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
46
46
  const defaultPlacementService = container.serviceContainer.getLastServiceWhere('containerService', x => x instanceof DefaultPlacementService);
47
- return defaultPlacementService.placePoint(event, placementView, container, startPoint, offsetInControl, newPoint, items);
47
+ return defaultPlacementService.placePoint(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items);
48
48
  }
49
- startPlace(event, placementView, container, startPoint, offsetInControl, newPoint, items) {
49
+ startPlace(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
50
50
  }
51
- place(event, placementView, container, startPoint, offsetInControl, newPoint, items) {
52
- const pos = placementView.getNormalizedEventCoordinates(event);
51
+ place(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
52
+ const pos = designerCanvas.getNormalizedEventCoordinates(event);
53
53
  const style = getComputedStyle(container.element);
54
- const childrenWithPos = Array.from(container.children()).filter(x => !x.isEmptyTextNode).map(x => [x, placementView.getNormalizedElementCoordinates(x.element)]);
54
+ const childrenWithPos = Array.from(container.children()).filter(x => !x.isEmptyTextNode).map(x => [x, designerCanvas.getNormalizedElementCoordinates(x.element)]);
55
55
  if (style.flexDirection == 'row' || style.flexDirection == 'row-reverse') {
56
56
  childrenWithPos.sort(x => x[1].x);
57
57
  let elBefore = null;
@@ -138,9 +138,9 @@ export class FlexBoxPlacementService {
138
138
  container.instanceServiceContainer.selectionService.setSelectedElements(sel);
139
139
  }
140
140
  }
141
- placementView.extensionManager.refreshAllExtensions([container]);
141
+ designerCanvas.extensionManager.refreshAllExtensions([container]);
142
142
  }
143
- finishPlace(event, placementView, container, startPoint, offsetInControl, newPoint, items) {
143
+ finishPlace(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
144
144
  }
145
145
  moveElements(designItems, position, absolute) {
146
146
  }
@@ -1,7 +1,7 @@
1
1
  import type { IPoint } from '../../../interfaces/IPoint.js';
2
2
  import type { IPlacementService } from './IPlacementService.js';
3
3
  import type { IDesignItem } from '../../item/IDesignItem.js';
4
- import { IPlacementView } from '../../widgets/designerView/IPlacementView.js';
4
+ import { IDesignerCanvas } from '../../widgets/designerView/IDesignerCanvas.js';
5
5
  export declare class GridPlacementService implements IPlacementService {
6
6
  private _basePlacementService;
7
7
  constructor(basePlacementService: IPlacementService);
@@ -12,9 +12,9 @@ export declare class GridPlacementService implements IPlacementService {
12
12
  canEnter(container: IDesignItem, items: IDesignItem[]): any;
13
13
  canLeave(container: IDesignItem, items: IDesignItem[]): boolean;
14
14
  getElementOffset(container: IDesignItem, designItem?: IDesignItem): IPoint;
15
- placePoint(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): IPoint;
16
- startPlace(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
17
- place(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
18
- finishPlace(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
15
+ placePoint(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): IPoint;
16
+ startPlace(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
17
+ place(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
18
+ finishPlace(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
19
19
  moveElements(designItems: IDesignItem[], position: IPoint, absolute: boolean): void;
20
20
  }
@@ -46,15 +46,15 @@ export class GridPlacementService {
46
46
  getElementOffset(container, designItem) {
47
47
  return container.element.getBoundingClientRect();
48
48
  }
49
- placePoint(event, placementView, container, startPoint, offsetInControl, newPoint, items) {
49
+ placePoint(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
50
50
  const defaultPlacementService = container.serviceContainer.getLastServiceWhere('containerService', x => x instanceof DefaultPlacementService);
51
- return defaultPlacementService.placePoint(event, placementView, container, startPoint, offsetInControl, newPoint, items);
51
+ return defaultPlacementService.placePoint(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items);
52
52
  }
53
- startPlace(event, placementView, container, startPoint, offsetInControl, newPoint, items) {
53
+ startPlace(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
54
54
  }
55
- place(event, placementView, container, startPoint, offsetInControl, newPoint, items) {
55
+ place(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
56
56
  const gridInformation = calculateGridInformation(container);
57
- const pos = placementView.getNormalizedEventCoordinates(event);
57
+ const pos = designerCanvas.getNormalizedEventCoordinates(event);
58
58
  //pos.x -= offsetInControl.x;
59
59
  //pos.y -= offsetInControl.y;
60
60
  let row = 0;
@@ -79,11 +79,11 @@ export class GridPlacementService {
79
79
  }
80
80
  row++;
81
81
  }
82
- placementView.extensionManager.refreshAllExtensions([container]);
82
+ designerCanvas.extensionManager.refreshAllExtensions([container]);
83
83
  }
84
- finishPlace(event, placementView, container, startPoint, offsetInControl, newPoint, items) {
84
+ finishPlace(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
85
85
  const gridInformation = calculateGridInformation(container);
86
- const pos = placementView.getNormalizedEventCoordinates(event);
86
+ const pos = designerCanvas.getNormalizedEventCoordinates(event);
87
87
  //pos.x -= offsetInControl.x;
88
88
  //pos.y -= offsetInControl.y;
89
89
  let row = 0;
@@ -113,7 +113,7 @@ export class GridPlacementService {
113
113
  }
114
114
  row++;
115
115
  }
116
- placementView.extensionManager.refreshAllExtensions([container]);
116
+ designerCanvas.extensionManager.refreshAllExtensions([container]);
117
117
  }
118
118
  moveElements(designItems, position, absolute) {
119
119
  }
@@ -1,7 +1,7 @@
1
1
  import { IService } from '../IService.js';
2
2
  import { IDesignItem } from '../../item/IDesignItem.js';
3
- import { IPlacementView } from '../../widgets/designerView/IPlacementView.js';
4
3
  import { IPoint } from '../../../interfaces/IPoint.js';
4
+ import { IDesignerCanvas } from '../../widgets/designerView/IDesignerCanvas.js';
5
5
  export interface IPlacementService extends IService {
6
6
  serviceForContainer(container: IDesignItem, containerStyle: CSSStyleDeclaration, item?: IDesignItem): boolean;
7
7
  isEnterableContainer(container: IDesignItem): boolean;
@@ -10,9 +10,9 @@ export interface IPlacementService extends IService {
10
10
  enterContainer(container: IDesignItem, items: IDesignItem[], mode: 'normal' | 'drop'): any;
11
11
  leaveContainer(container: IDesignItem, items: IDesignItem[]): any;
12
12
  getElementOffset(container: IDesignItem, designItem?: IDesignItem): IPoint;
13
- placePoint(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): IPoint;
14
- startPlace(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): any;
15
- place(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): any;
16
- finishPlace(event: MouseEvent, placementView: IPlacementView, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): any;
13
+ placePoint(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): IPoint;
14
+ startPlace(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): any;
15
+ place(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): any;
16
+ finishPlace(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): any;
17
17
  moveElements(designItems: IDesignItem[], position: IPoint, absolute: boolean): any;
18
18
  }
@@ -47,7 +47,6 @@ export interface IDesignerCanvas extends IPlacementView, IUiCommandHandler {
47
47
  getDesignSurfaceDimensions(): ISize;
48
48
  getNormalizedOffsetInElement(event: MouseEvent, element: Element): IPoint;
49
49
  getElementAtPoint(point: IPoint, ignoreElementCallback?: (element: HTMLElement) => boolean): any;
50
- elementFromPoint(x: number, y: number): Element;
51
50
  elementsFromPoint(x: number, y: number): Element[];
52
51
  showHoverExtension(element: Element, event: Event): any;
53
52
  setDesignItems(designItems: IDesignItem[]): any;
@@ -124,7 +124,6 @@ export declare class DesignerCanvas extends BaseCustomWebComponentLazyAppend imp
124
124
  realHeight: number;
125
125
  };
126
126
  getNormalizedOffsetInElement(event: MouseEvent, element: Element): IPoint;
127
- elementFromPoint(x: number, y: number): Element;
128
127
  elementsFromPoint(x: number, y: number): Element[];
129
128
  getElementAtPoint(point: IPoint, ignoreElementCallback?: (element: HTMLElement) => boolean): HTMLElement;
130
129
  showHoverExtension(element: Element, event: Event): void;
@@ -854,6 +854,8 @@ export class DesignerCanvas extends BaseCustomWebComponentLazyAppend {
854
854
  event.preventDefault();
855
855
  if (event.target === this.overlayLayer)
856
856
  return;
857
+ if (event.altKey)
858
+ return;
857
859
  if (this.serviceContainer.globalContext.tool == null || this.serviceContainer.globalContext.tool === this.serviceContainer.designerTools.get(NamedTools.Pointer)) {
858
860
  this.extensionManager.removeExtension(this.instanceServiceContainer.selectionService.primarySelection, ExtensionType.PrimarySelectionRefreshed);
859
861
  this.extensionManager.applyExtension(this.instanceServiceContainer.selectionService.primarySelection, ExtensionType.Doubleclick, event);
@@ -1003,12 +1005,6 @@ export class DesignerCanvas extends BaseCustomWebComponentLazyAppend {
1003
1005
  const normEl = this.getNormalizedElementCoordinates(element);
1004
1006
  return { x: normEvt.x - normEl.x, y: normEvt.y - normEl.y };
1005
1007
  }
1006
- //TODO: remove
1007
- elementFromPoint(x, y) {
1008
- let elements = this._canvasShadowRoot.elementsFromPoint(x, y);
1009
- let element = elements[0];
1010
- return element;
1011
- }
1012
1008
  elementsFromPoint(x, y) {
1013
1009
  let retVal = [];
1014
1010
  let elements = this._canvasShadowRoot.elementsFromPoint(x, y);
@@ -241,40 +241,46 @@ export class ResizeExtension extends AbstractExtension {
241
241
  case EventNames.PointerUp:
242
242
  event.target.releasePointerCapture(event.pointerId);
243
243
  let cg = this.extendedItem.openGroup((this.resizeAllSelected && this.designerCanvas.instanceServiceContainer.selectionService.selectedElements.length > 1) ? "Resize Elements" : "Resize <" + this.extendedItem.name + ">");
244
- this.extendedItem.setStyle('width', this.extendedItem.element.style.width);
245
- this.extendedItem.setStyle('height', this.extendedItem.element.style.height);
246
- this.extendedItem.setStyle('left', roundValue(this.extendedItem, parseFloat(normalizeToAbsolutePosition(this.extendedItem.element, 'left'))) + 'px');
247
- this.extendedItem.setStyle('top', roundValue(this.extendedItem, parseFloat(normalizeToAbsolutePosition(this.extendedItem.element, 'top'))) + 'px');
248
- let p3Abs = new DOMPoint(this.extendedItem.element.offsetLeft + parseFloat(getComputedStyle(this.extendedItem.element).transformOrigin.split(' ')[0].replace('px', '')), this.extendedItem.element.offsetTop + parseFloat(getComputedStyle(this.extendedItem.element).transformOrigin.split(' ')[1].replace('px', '')));
249
- this.extendedItem.element.style.transformOrigin = this._initialTransformOrigins[0];
250
- let p1Abs = new DOMPoint(this.extendedItem.element.offsetLeft + parseFloat(getComputedStyle(this.extendedItem.element).transformOrigin.split(' ')[0].replace('px', '')), this.extendedItem.element.offsetTop + parseFloat(getComputedStyle(this.extendedItem.element).transformOrigin.split(' ')[1].replace('px', '')));
251
- let p1 = new DOMPoint(p1Abs.x - p3Abs.x, -(p1Abs.y - p3Abs.y));
252
- let matrix = new DOMMatrix(getComputedStyle(this.extendedItem.element).transform);
253
- let deltaX = 0;
254
- let deltaY = 0;
255
- let p1transformed = transformPointByInverseMatrix(p1, matrix);
256
- let p2Abs = new DOMPoint(p3Abs.x + p1transformed.x, p3Abs.y - p1transformed.y);
257
- let p1p2 = new DOMPoint(p2Abs.x - p1Abs.x, -(p2Abs.y - p1Abs.y));
258
- let p1p2transformed = p1p2.matrixTransform(matrix);
259
- let p4Abs = new DOMPoint(p1Abs.x + p1p2transformed.x, p1Abs.y - p1p2transformed.y);
260
- deltaX = p4Abs.x - p1Abs.x;
261
- deltaY = p4Abs.y - p1Abs.y;
262
- this.extendedItem.element.style.transform = matrix.translate(deltaX, deltaY).toString();
263
- if (matrix.isIdentity) {
264
- this.extendedItem.element.style.transform = '';
265
- }
266
- this.extendedItem.setStyle('transform', this.extendedItem.element.style.transform);
267
- if (this.resizeAllSelected) {
268
- for (const designItem of this.designerCanvas.instanceServiceContainer.selectionService.selectedElements) {
269
- if (designItem !== this.extendedItem) {
270
- designItem.setStyle('width', designItem.element.style.width);
271
- designItem.setStyle('height', designItem.element.style.height);
272
- designItem.setStyle('left', roundValue(this.extendedItem, parseFloat(normalizeToAbsolutePosition(designItem.element, 'left'))) + 'px');
273
- designItem.setStyle('top', roundValue(this.extendedItem, parseFloat(normalizeToAbsolutePosition(designItem.element, 'top'))) + 'px');
244
+ try {
245
+ this.extendedItem.setStyle('width', this.extendedItem.element.style.width);
246
+ this.extendedItem.setStyle('height', this.extendedItem.element.style.height);
247
+ this.extendedItem.setStyle('left', roundValue(this.extendedItem, parseFloat(normalizeToAbsolutePosition(this.extendedItem.element, 'left'))) + 'px');
248
+ this.extendedItem.setStyle('top', roundValue(this.extendedItem, parseFloat(normalizeToAbsolutePosition(this.extendedItem.element, 'top'))) + 'px');
249
+ let p3Abs = new DOMPoint(this.extendedItem.element.offsetLeft + parseFloat(getComputedStyle(this.extendedItem.element).transformOrigin.split(' ')[0].replace('px', '')), this.extendedItem.element.offsetTop + parseFloat(getComputedStyle(this.extendedItem.element).transformOrigin.split(' ')[1].replace('px', '')));
250
+ this.extendedItem.element.style.transformOrigin = this._initialTransformOrigins[0];
251
+ let p1Abs = new DOMPoint(this.extendedItem.element.offsetLeft + parseFloat(getComputedStyle(this.extendedItem.element).transformOrigin.split(' ')[0].replace('px', '')), this.extendedItem.element.offsetTop + parseFloat(getComputedStyle(this.extendedItem.element).transformOrigin.split(' ')[1].replace('px', '')));
252
+ let p1 = new DOMPoint(p1Abs.x - p3Abs.x, -(p1Abs.y - p3Abs.y));
253
+ let matrix = new DOMMatrix(getComputedStyle(this.extendedItem.element).transform);
254
+ let deltaX = 0;
255
+ let deltaY = 0;
256
+ let p1transformed = transformPointByInverseMatrix(p1, matrix);
257
+ let p2Abs = new DOMPoint(p3Abs.x + p1transformed.x, p3Abs.y - p1transformed.y);
258
+ let p1p2 = new DOMPoint(p2Abs.x - p1Abs.x, -(p2Abs.y - p1Abs.y));
259
+ let p1p2transformed = p1p2.matrixTransform(matrix);
260
+ let p4Abs = new DOMPoint(p1Abs.x + p1p2transformed.x, p1Abs.y - p1p2transformed.y);
261
+ deltaX = p4Abs.x - p1Abs.x;
262
+ deltaY = p4Abs.y - p1Abs.y;
263
+ this.extendedItem.element.style.transform = matrix.translate(deltaX, deltaY).toString();
264
+ if (matrix.isIdentity) {
265
+ this.extendedItem.element.style.transform = '';
266
+ }
267
+ this.extendedItem.setStyle('transform', this.extendedItem.element.style.transform);
268
+ if (this.resizeAllSelected) {
269
+ for (const designItem of this.designerCanvas.instanceServiceContainer.selectionService.selectedElements) {
270
+ if (designItem !== this.extendedItem) {
271
+ designItem.setStyle('width', designItem.element.style.width);
272
+ designItem.setStyle('height', designItem.element.style.height);
273
+ designItem.setStyle('left', roundValue(this.extendedItem, parseFloat(normalizeToAbsolutePosition(designItem.element, 'left'))) + 'px');
274
+ designItem.setStyle('top', roundValue(this.extendedItem, parseFloat(normalizeToAbsolutePosition(designItem.element, 'top'))) + 'px');
275
+ }
274
276
  }
275
277
  }
278
+ cg.commit();
279
+ }
280
+ catch (err) {
281
+ cg.abort();
282
+ console.error(err);
276
283
  }
277
- cg.commit();
278
284
  this._initialSizes = null;
279
285
  this._initialPoint = null;
280
286
  break;
@@ -5,7 +5,7 @@ export class BlockToolbarExtensionProvider {
5
5
  shouldExtend(extensionManager, designerCanvas, designItem) {
6
6
  if (designItem.nodeType === NodeType.Element) {
7
7
  const d = getComputedStyle(designItem.element).display;
8
- if (d === 'block' || d === 'inline')
8
+ if (d === 'block' || d === 'inline' || d === 'inline-block')
9
9
  return designerCanvas.instanceServiceContainer.designContext.extensionOptions[basicStackedToolbarExtensionOverlayOptionName] !== false;
10
10
  }
11
11
  return false;
@@ -25,7 +25,6 @@ export declare class OverlayLayerView extends BaseCustomWebComponentConstructorA
25
25
  removeAllNodesWithClass(className: string): void;
26
26
  removeAllOverlays(): void;
27
27
  createPoint(): DOMPointInit;
28
- elementFromPoint(x: number, y: number): Element;
29
28
  drawGroup(overlaySource: string, className?: string, group?: SVGGElement, overlayLayer?: OverlayLayer): SVGGElement;
30
29
  drawLine(overlaySource: string, x1: number, y1: number, x2: number, y2: number, className?: string, line?: SVGLineElement, overlayLayer?: OverlayLayer): SVGLineElement;
31
30
  drawCircle(overlaySource: string, x: number, y: number, radius: number, className?: string, circle?: SVGCircleElement, overlayLayer?: OverlayLayer): SVGCircleElement;
@@ -150,10 +150,6 @@ export class OverlayLayerView extends BaseCustomWebComponentConstructorAppend {
150
150
  //@ts-ignore
151
151
  return this._svg.createSVGPoint();
152
152
  }
153
- elementFromPoint(x, y) {
154
- //@ts-ignore
155
- return this.shadowRoot.elementFromPoint(x, y);
156
- }
157
153
  drawGroup(overlaySource, className, group, overlayLayer) {
158
154
  if (!group) {
159
155
  group = document.createElementNS("http://www.w3.org/2000/svg", "g");
package/dist/index.d.ts CHANGED
@@ -116,6 +116,7 @@ export * from "./elements/services/propertiesService/services/CssCurrentProperti
116
116
  export * from "./elements/services/propertiesService/services/CssPropertiesService.js";
117
117
  export * from "./elements/services/propertiesService/services/ListPropertiesService.js";
118
118
  export * from "./elements/services/propertiesService/services/LitElementPropertiesService.js";
119
+ export * from "./elements/services/propertiesService/services/Lit2PropertiesService.js";
119
120
  export * from "./elements/services/propertiesService/services/MathMLElementsPropertiesService.js";
120
121
  export * from "./elements/services/propertiesService/services/NativeElementsPropertiesService.js";
121
122
  export * from "./elements/services/propertiesService/services/SVGElementsPropertiesService.js";
@@ -217,6 +218,8 @@ export * from "./elements/widgets/designerView/extensions/InvisibleElementExtens
217
218
  export * from "./elements/widgets/designerView/extensions/InvisibleElementExtensionProvider.js";
218
219
  export * from "./elements/widgets/designerView/extensions/HighlightElementExtension.js";
219
220
  export * from "./elements/widgets/designerView/extensions/HighlightElementExtensionProvider.js";
221
+ export * from "./elements/widgets/designerView/extensions/MultipleSelectionRectExtension.js";
222
+ export * from "./elements/widgets/designerView/extensions/MultipleSelectionRectExtensionProvider.js";
220
223
  export * from "./elements/widgets/designerView/extensions/svg/SvgElementExtension.js";
221
224
  export * from "./elements/widgets/designerView/extensions/svg/SvgElementExtensionProvider.js";
222
225
  export * from "./elements/widgets/designerView/extensions/svg/PathExtension.js";
@@ -233,6 +236,8 @@ export * from "./elements/widgets/designerView/extensions/SelectionDefaultExtens
233
236
  export * from "./elements/widgets/designerView/extensions/SelectionDefaultExtensionProvider.js";
234
237
  export * from "./elements/widgets/designerView/extensions/TransformOriginExtension.js";
235
238
  export * from "./elements/widgets/designerView/extensions/TransformOriginExtensionProvider.js";
239
+ export * from "./elements/widgets/designerView/extensions/PlacementExtension.js";
240
+ export * from "./elements/widgets/designerView/extensions/PlacementExtensionProvider.js";
236
241
  export * from "./elements/widgets/designerView/extensions/block/BlockToolbarExtension.js";
237
242
  export * from "./elements/widgets/designerView/extensions/block/BlockToolbarExtensionProvider.js";
238
243
  export * from "./elements/widgets/designerView/extensions/flex/FlexToolbarExtension.js";
@@ -255,6 +260,7 @@ export * from "./elements/widgets/designerView/extensions/buttons/AbstractDesign
255
260
  export * from "./elements/widgets/designerView/extensions/buttons/ButtonSeperatorProvider.js";
256
261
  export * from "./elements/widgets/designerView/extensions/buttons/StylesheetServiceDesignViewConfigButtons.js";
257
262
  export * from "./elements/widgets/designerView/extensions/buttons/ToolbarExtensionsDesignViewConfigButtons.js";
263
+ export * from "./elements/widgets/designerView/extensions/buttons/RoundPixelsDesignViewConfigButton.js";
258
264
  export type { IDesignViewConfigButtonsProvider } from './elements/widgets/designerView/extensions/buttons/IDesignViewConfigButtonsProvider.js';
259
265
  export * from "./elements/widgets/designerView/extensions/EditText/EditTextExtension.js";
260
266
  export * from "./elements/widgets/designerView/extensions/EditText/EditTextExtensionProvider.js";
package/dist/index.js CHANGED
@@ -75,6 +75,7 @@ export * from "./elements/services/propertiesService/services/CssCurrentProperti
75
75
  export * from "./elements/services/propertiesService/services/CssPropertiesService.js";
76
76
  export * from "./elements/services/propertiesService/services/ListPropertiesService.js";
77
77
  export * from "./elements/services/propertiesService/services/LitElementPropertiesService.js";
78
+ export * from "./elements/services/propertiesService/services/Lit2PropertiesService.js";
78
79
  export * from "./elements/services/propertiesService/services/MathMLElementsPropertiesService.js";
79
80
  export * from "./elements/services/propertiesService/services/NativeElementsPropertiesService.js";
80
81
  export * from "./elements/services/propertiesService/services/SVGElementsPropertiesService.js";
@@ -158,6 +159,8 @@ export * from "./elements/widgets/designerView/extensions/InvisibleElementExtens
158
159
  export * from "./elements/widgets/designerView/extensions/InvisibleElementExtensionProvider.js";
159
160
  export * from "./elements/widgets/designerView/extensions/HighlightElementExtension.js";
160
161
  export * from "./elements/widgets/designerView/extensions/HighlightElementExtensionProvider.js";
162
+ export * from "./elements/widgets/designerView/extensions/MultipleSelectionRectExtension.js";
163
+ export * from "./elements/widgets/designerView/extensions/MultipleSelectionRectExtensionProvider.js";
161
164
  export * from "./elements/widgets/designerView/extensions/svg/SvgElementExtension.js";
162
165
  export * from "./elements/widgets/designerView/extensions/svg/SvgElementExtensionProvider.js";
163
166
  export * from "./elements/widgets/designerView/extensions/svg/PathExtension.js";
@@ -174,6 +177,8 @@ export * from "./elements/widgets/designerView/extensions/SelectionDefaultExtens
174
177
  export * from "./elements/widgets/designerView/extensions/SelectionDefaultExtensionProvider.js";
175
178
  export * from "./elements/widgets/designerView/extensions/TransformOriginExtension.js";
176
179
  export * from "./elements/widgets/designerView/extensions/TransformOriginExtensionProvider.js";
180
+ export * from "./elements/widgets/designerView/extensions/PlacementExtension.js";
181
+ export * from "./elements/widgets/designerView/extensions/PlacementExtensionProvider.js";
177
182
  export * from "./elements/widgets/designerView/extensions/block/BlockToolbarExtension.js";
178
183
  export * from "./elements/widgets/designerView/extensions/block/BlockToolbarExtensionProvider.js";
179
184
  export * from "./elements/widgets/designerView/extensions/flex/FlexToolbarExtension.js";
@@ -196,6 +201,7 @@ export * from "./elements/widgets/designerView/extensions/buttons/AbstractDesign
196
201
  export * from "./elements/widgets/designerView/extensions/buttons/ButtonSeperatorProvider.js";
197
202
  export * from "./elements/widgets/designerView/extensions/buttons/StylesheetServiceDesignViewConfigButtons.js";
198
203
  export * from "./elements/widgets/designerView/extensions/buttons/ToolbarExtensionsDesignViewConfigButtons.js";
204
+ export * from "./elements/widgets/designerView/extensions/buttons/RoundPixelsDesignViewConfigButton.js";
199
205
  export * from "./elements/widgets/designerView/extensions/EditText/EditTextExtension.js";
200
206
  export * from "./elements/widgets/designerView/extensions/EditText/EditTextExtensionProvider.js";
201
207
  export * from "./elements/widgets/designerView/extensions/contextMenu/ChildContextMenu.js";
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "description": "A WYSIWYG designer webcomponent for html components",
3
3
  "name": "@node-projects/web-component-designer",
4
- "version": "0.1.127",
4
+ "version": "0.1.128",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "author": "jochen.kuehner@gmx.de",