@node-projects/web-component-designer 0.1.247 → 0.1.249
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/item/DesignItem.d.ts +1 -1
- package/dist/elements/services/DefaultServiceBootstrap.ts.BASE.d.ts +3 -0
- package/dist/elements/services/DefaultServiceBootstrap.ts.BASE.js +216 -0
- package/dist/elements/services/DefaultServiceBootstrap.ts.LOCAL.d.ts +3 -0
- package/dist/elements/services/DefaultServiceBootstrap.ts.LOCAL.js +220 -0
- package/dist/elements/services/DefaultServiceBootstrap.ts.REMOTE.d.ts +3 -0
- package/dist/elements/services/DefaultServiceBootstrap.ts.REMOTE.js +220 -0
- package/dist/elements/services/designItemService/DesignItemService copy.d.ts +7 -0
- package/dist/elements/services/designItemService/DesignItemService copy.js +6 -0
- package/dist/elements/services/placementService/AbsolutePlacementService copy.d.ts +19 -0
- package/dist/elements/services/placementService/AbsolutePlacementService copy.js +155 -0
- package/dist/elements/services/placementService/AbsolutePlacementService.js +10 -4
- package/dist/elements/services/placementService/AbsolutePlacementService.js.map +1 -1
- package/dist/elements/services/placementService/DefaultPlacementService.d.ts +5 -5
- package/dist/elements/services/placementService/DefaultPlacementService.js +10 -4
- package/dist/elements/services/placementService/DefaultPlacementService.js.map +1 -1
- package/dist/elements/services/propertiesService/IProperty.d.ts +1 -0
- package/dist/elements/services/propertiesService/services/AbstractPolymerLikePropertiesService.js +13 -8
- package/dist/elements/services/propertiesService/services/AbstractPolymerLikePropertiesService.js.map +1 -1
- package/dist/elements/widgets/bindings/BindingsEditor.d.ts +17 -0
- package/dist/elements/widgets/bindings/BindingsEditor.js +54 -0
- package/dist/elements/widgets/bindings/BindingsEditor.js.map +1 -0
- package/dist/elements/widgets/designerView/DomConverter.d.ts +1 -1
- package/dist/elements/widgets/designerView/IDesignerCanvas.d.ts +3 -2
- package/dist/elements/widgets/designerView/designerCanvas.d.ts +2 -2
- package/dist/elements/widgets/designerView/designerCanvas.js +1 -0
- package/dist/elements/widgets/designerView/designerCanvas.js.map +1 -1
- package/dist/elements/widgets/designerView/extensions/CanvasExtension.d.ts +10 -0
- package/dist/elements/widgets/designerView/extensions/CanvasExtension.js +31 -0
- package/dist/elements/widgets/designerView/extensions/CanvasExtensionProvider.d.ts +10 -0
- package/dist/elements/widgets/designerView/extensions/CanvasExtensionProvider.js +16 -0
- package/dist/elements/widgets/designerView/extensions/MarginExtension copy.d.ts +10 -0
- package/dist/elements/widgets/designerView/extensions/MarginExtension copy.js +32 -0
- package/dist/elements/widgets/designerView/extensions/MarginExtensionProvider copy.d.ts +10 -0
- package/dist/elements/widgets/designerView/extensions/MarginExtensionProvider copy.js +16 -0
- package/dist/elements/widgets/designerView/extensions/ResizeExtension.js +5 -0
- package/dist/elements/widgets/designerView/extensions/ResizeExtension.js.map +1 -1
- package/dist/elements/widgets/designerView/extensions/buttons/AbstractDesignViewConfigButton copy.d.ts +12 -0
- package/dist/elements/widgets/designerView/extensions/buttons/AbstractDesignViewConfigButton copy.js +46 -0
- package/dist/elements/widgets/designerView/extensions/buttons/GridExtensionDesignViewConfigButtons copy.d.ts +4 -0
- package/dist/elements/widgets/designerView/extensions/buttons/GridExtensionDesignViewConfigButtons copy.js +7 -0
- package/dist/elements/widgets/designerView/extensions/buttons/OptionsConfigButton.d.ts +12 -0
- package/dist/elements/widgets/designerView/extensions/buttons/OptionsConfigButton.js +46 -0
- package/dist/elements/widgets/propertyGrid/PropertyGridPropertyList.js +1 -1
- package/dist/elements/widgets/propertyGrid/PropertyGridPropertyList.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
import { ServiceContainer } from './ServiceContainer.js';
|
|
2
|
+
import { PolymerPropertiesService } from './propertiesService/services/PolymerPropertiesService.js';
|
|
3
|
+
import { LitElementPropertiesService } from './propertiesService/services/LitElementPropertiesService.js';
|
|
4
|
+
import { NativeElementsPropertiesService } from './propertiesService/services/NativeElementsPropertiesService.js';
|
|
5
|
+
import { SVGElementsPropertiesService } from './propertiesService/services/SVGElementsPropertiesService.js';
|
|
6
|
+
import { DefaultInstanceService } from './instanceService/DefaultInstanceService.js';
|
|
7
|
+
import { DefaultEditorTypesService } from './propertiesService/DefaultEditorTypesService.js';
|
|
8
|
+
import { BaseCustomWebComponentPropertiesService } from './propertiesService/services/BaseCustomWebComponentPropertiesService.js';
|
|
9
|
+
import { DefaultPlacementService } from './placementService/DefaultPlacementService.js';
|
|
10
|
+
import { DefaultHtmlParserService } from './htmlParserService/DefaultHtmlParserService.js';
|
|
11
|
+
import { Lit2PropertiesService } from './propertiesService/services/Lit2PropertiesService.js';
|
|
12
|
+
import { ExtensionType } from '../widgets/designerView/extensions/ExtensionType.js';
|
|
13
|
+
import { ElementDragTitleExtensionProvider } from '../widgets/designerView/extensions/ElementDragTitleExtensionProvider.js';
|
|
14
|
+
import { TransformOriginExtensionProvider } from '../widgets/designerView/extensions/TransformOriginExtensionProvider.js';
|
|
15
|
+
import { MarginExtensionProvider } from '../widgets/designerView/extensions/MarginExtensionProvider.js';
|
|
16
|
+
import { PositionExtensionProvider } from '../widgets/designerView/extensions/PositionExtensionProvider.js';
|
|
17
|
+
import { HighlightElementExtensionProvider } from '../widgets/designerView/extensions/HighlightElementExtensionProvider.js';
|
|
18
|
+
import { NamedTools } from '../widgets/designerView/tools/NamedTools.js';
|
|
19
|
+
import { PointerTool } from '../widgets/designerView/tools/PointerTool.js';
|
|
20
|
+
import { DrawPathTool } from '../widgets/designerView/tools/DrawPathTool.js';
|
|
21
|
+
import { SelectionDefaultExtensionProvider } from '../widgets/designerView/extensions/SelectionDefaultExtensionProvider.js';
|
|
22
|
+
import { ResizeExtensionProvider } from '../widgets/designerView/extensions/ResizeExtensionProvider.js';
|
|
23
|
+
import { RotateExtensionProvider } from '../widgets/designerView/extensions/RotateExtensionProvider.js';
|
|
24
|
+
import { ZoomTool } from '../widgets/designerView/tools/ZoomTool.js';
|
|
25
|
+
import { PanTool } from '../widgets/designerView/tools/PanTool.js';
|
|
26
|
+
import { CopyPasteContextMenu } from '../widgets/designerView/extensions/contextMenu/CopyPasteContextMenu.js';
|
|
27
|
+
import { ZMoveContextMenu } from '../widgets/designerView/extensions/contextMenu/ZMoveContextMenu.js';
|
|
28
|
+
import { MultipleItemsSelectedContextMenu } from '../widgets/designerView/extensions/contextMenu/MultipleItemsSelectedContextMenu.js';
|
|
29
|
+
import { RectangleSelectorTool } from '../widgets/designerView/tools/RectangleSelectorTool.js';
|
|
30
|
+
import { MagicWandSelectorTool } from '../widgets/designerView/tools/MagicWandSelectorTool.js';
|
|
31
|
+
import { PickColorTool } from '../widgets/designerView/tools/PickColorTool.js';
|
|
32
|
+
import { TextTool } from '../widgets/designerView/tools/TextTool.js';
|
|
33
|
+
import { GrayOutExtensionProvider } from '../widgets/designerView/extensions/GrayOutExtensionProvider.js';
|
|
34
|
+
import { AltToEnterContainerExtensionProvider } from '../widgets/designerView/extensions/AltToEnterContainerExtensionProvider.js';
|
|
35
|
+
import { InvisibleElementExtensionProvider } from '../widgets/designerView/extensions/InvisibleElementExtensionProvider.js';
|
|
36
|
+
import { ItemsBelowContextMenu } from '../widgets/designerView/extensions/contextMenu/ItemsBelowContextMenu.js';
|
|
37
|
+
import { GridPlacementService } from './placementService/GridPlacementService.js';
|
|
38
|
+
import { ElementAtPointService } from './elementAtPointService/ElementAtPointService.js';
|
|
39
|
+
import { FlexBoxPlacementService } from './placementService/FlexBoxPlacementService.js';
|
|
40
|
+
import { SnaplinesProviderService } from './placementService/SnaplinesProviderService.js';
|
|
41
|
+
import { ExternalDragDropService } from './dragDropService/ExternalDragDropService.js';
|
|
42
|
+
import { EditTextExtensionProvider } from '../widgets/designerView/extensions/EditText/EditTextExtensionProvider.js';
|
|
43
|
+
import { CopyPasteService } from './copyPasteService/CopyPasteService.js';
|
|
44
|
+
import { DefaultModelCommandService } from './modelCommandService/DefaultModelCommandService.js';
|
|
45
|
+
import { ButtonSeperatorProvider } from '../widgets/designerView/extensions/buttons/ButtonSeperatorProvider.js';
|
|
46
|
+
import { GridExtensionDesignViewConfigButtons } from '../widgets/designerView/extensions/buttons/GridExtensionDesignViewConfigButtons.js';
|
|
47
|
+
import { DrawRectTool } from '../widgets/designerView/tools/DrawRectTool.js';
|
|
48
|
+
import { DrawEllipsisTool } from '../widgets/designerView/tools/DrawEllipsisTool.js';
|
|
49
|
+
import { DrawLineTool } from '../widgets/designerView/tools/DrawLineTool.js';
|
|
50
|
+
import { HtmlWriterService } from './htmlWriterService/HtmlWriterService.js';
|
|
51
|
+
import { RectContextMenu } from '../widgets/designerView/extensions/contextMenu/RectContextMenu.js';
|
|
52
|
+
import { PathContextMenu } from '../widgets/designerView/extensions/contextMenu/PathContextMenu.js';
|
|
53
|
+
import { SeperatorContextMenu } from '../widgets/designerView/extensions/contextMenu/SeperatorContextMenu.js';
|
|
54
|
+
import { ZoomToElementContextMenu } from '../widgets/designerView/extensions/contextMenu/ZoomToElementContextMenu.js';
|
|
55
|
+
import { RotateLeftAndRight } from '../widgets/designerView/extensions/contextMenu/RotateLeftAndRightContextMenu.js';
|
|
56
|
+
import { SelectAllChildrenContextMenu } from '../widgets/designerView/extensions/contextMenu/SelectAllChildrenContextMenu.js';
|
|
57
|
+
import { PointerToolButtonProvider } from '../widgets/designerView/tools/toolBar/buttons/PointerToolButtonProvider.js';
|
|
58
|
+
import { SeperatorToolProvider } from '../widgets/designerView/tools/toolBar/buttons/SeperatorToolProvider.js';
|
|
59
|
+
import { ZoomToolButtonProvider } from '../widgets/designerView/tools/toolBar/buttons/ZoomToolButtonProvider.js';
|
|
60
|
+
import { DrawToolButtonProvider } from '../widgets/designerView/tools/toolBar/buttons/DrawToolButtonProvider.js';
|
|
61
|
+
import { TextToolButtonProvider } from '../widgets/designerView/tools/toolBar/buttons/TextToolButtonProvider.js';
|
|
62
|
+
import { SelectorToolButtonProvider } from '../widgets/designerView/tools/toolBar/buttons/SelectorToolButtonProvider.js';
|
|
63
|
+
import { GrayOutDragOverContainerExtensionProvider } from '../widgets/designerView/extensions/GrayOutDragOverContainerExtensionProvider.js';
|
|
64
|
+
import { PropertyGroupsService } from './propertiesService/PropertyGroupsService.js';
|
|
65
|
+
import { PlacementExtensionProvider } from '../widgets/designerView/extensions/PlacementExtensionProvider.js';
|
|
66
|
+
import { FlexboxExtensionProvider } from '../widgets/designerView/extensions/FlexboxExtensionProvider.js';
|
|
67
|
+
import { FlexboxExtensionDesignViewConfigButtons } from '../widgets/designerView/extensions/buttons/FlexboxExtensionDesignViewConfigButtons.js';
|
|
68
|
+
import { InvisibleElementExtensionDesignViewConfigButtons } from '../widgets/designerView/extensions/buttons/InvisibleElementExtensionDesignViewConfigButtons.js';
|
|
69
|
+
import { UndoService } from './undoService/UndoService.js';
|
|
70
|
+
import { SelectionService } from './selectionService/SelectionService.js';
|
|
71
|
+
import { ContentService } from './contentService/ContentService.js';
|
|
72
|
+
import { StylesheetServiceDesignViewConfigButtons } from '../widgets/designerView/extensions/buttons/StylesheetServiceDesignViewConfigButtons.js';
|
|
73
|
+
import { JumpToElementContextMenu } from '../widgets/designerView/extensions/contextMenu/JumpToElementContextMenu.js';
|
|
74
|
+
import { EditGridColumnRowSizesExtensionProvider } from '../widgets/designerView/extensions/grid/EditGridColumnRowSizesExtensionProvider.js';
|
|
75
|
+
import { DisplayGridExtensionProvider } from '../widgets/designerView/extensions/grid/DisplayGridExtensionProvider.js';
|
|
76
|
+
import { ApplyFirstMachingExtensionProvider } from '../widgets/designerView/extensions/logic/ApplyFirstMachingExtensionProvider.js';
|
|
77
|
+
import { DesignItemDocumentPositionService } from './designItemDocumentPositionService/DesignItemDocumentPositionService.js';
|
|
78
|
+
import { TransformToolButtonProvider } from '../widgets/designerView/tools/toolBar/buttons/TransformToolButtonProvider.js';
|
|
79
|
+
import { MultipleSelectionRectExtensionProvider } from '../widgets/designerView/extensions/MultipleSelectionRectExtensionProvider.js';
|
|
80
|
+
import { DragDropService } from './dragDropService/DragDropService.js';
|
|
81
|
+
import { EventsService } from './eventsService/EventsService.js';
|
|
82
|
+
import { SimpleDemoProviderService } from './demoProviderService/SimpleDemoProviderService.js';
|
|
83
|
+
import { DrawElementTool } from '../widgets/designerView/tools/DrawElementTool.js';
|
|
84
|
+
import { RoundPixelsDesignViewConfigButton } from '../widgets/designerView/extensions/buttons/RoundPixelsDesignViewConfigButton.js';
|
|
85
|
+
import { MathMLElementsPropertiesService } from './propertiesService/services/MathMLElementsPropertiesService.js';
|
|
86
|
+
import { SvgElementExtensionProvider } from '../widgets/designerView/extensions/svg/SvgElementExtensionProvider.js';
|
|
87
|
+
import { ConditionExtensionProvider } from '../widgets/designerView/extensions/logic/ConditionExtensionProvider.js';
|
|
88
|
+
import { GridToolbarExtensionProvider } from '../widgets/designerView/extensions/grid/GridToolbarExtensionProvider.js';
|
|
89
|
+
import { FlexToolbarExtensionProvider } from '../widgets/designerView/extensions/flex/FlexToolbarExtensionProvider.js';
|
|
90
|
+
import { BlockToolbarExtensionProvider } from '../widgets/designerView/extensions/block/BlockToolbarExtensionProvider.js';
|
|
91
|
+
import { ChildContextMenu } from '../widgets/designerView/extensions/contextMenu/ChildContextMenu.js';
|
|
92
|
+
import { GridChildToolbarExtensionProvider } from '../widgets/designerView/extensions/grid/GridChildToolbarExtensionProvider.js';
|
|
93
|
+
import { ToolbarExtensionsDesignViewConfigButtons } from '../widgets/designerView/extensions/buttons/ToolbarExtensionsDesignViewConfigButtons.js';
|
|
94
|
+
import { PaddingExtensionProvider } from '../widgets/designerView/extensions/PaddingExtensionProvider.js';
|
|
95
|
+
import { GridChildResizeExtensionProvider } from '../widgets/designerView/extensions/grid/GridChildResizeExtensionProvider.js';
|
|
96
|
+
import { AlignItemsContextMenu } from '../widgets/designerView/extensions/contextMenu/AlignItemsContextMenu.js';
|
|
97
|
+
import { BasicWebcomponentPropertiesService } from './propertiesService/services/BasicWebcomponentPropertiesService.js';
|
|
98
|
+
import { PreviousElementSelectExtensionProvider } from '../widgets/designerView/extensions/PreviousElementSelectExtensionProvider.js';
|
|
99
|
+
export function createDefaultServiceContainer() {
|
|
100
|
+
let serviceContainer = new ServiceContainer();
|
|
101
|
+
let defaultPlacementService = new DefaultPlacementService();
|
|
102
|
+
serviceContainer.register("containerService", defaultPlacementService);
|
|
103
|
+
serviceContainer.register("containerService", new GridPlacementService(defaultPlacementService));
|
|
104
|
+
serviceContainer.register("containerService", new FlexBoxPlacementService(defaultPlacementService));
|
|
105
|
+
serviceContainer.register("propertyService", new BasicWebcomponentPropertiesService());
|
|
106
|
+
serviceContainer.register("propertyService", new PolymerPropertiesService());
|
|
107
|
+
serviceContainer.register("propertyService", new LitElementPropertiesService());
|
|
108
|
+
serviceContainer.register("propertyService", new NativeElementsPropertiesService());
|
|
109
|
+
serviceContainer.register("propertyService", new SVGElementsPropertiesService());
|
|
110
|
+
serviceContainer.register("propertyService", new MathMLElementsPropertiesService());
|
|
111
|
+
serviceContainer.register("propertyService", new Lit2PropertiesService());
|
|
112
|
+
serviceContainer.register("propertyService", new BaseCustomWebComponentPropertiesService());
|
|
113
|
+
serviceContainer.register("propertyGroupsService", new PropertyGroupsService());
|
|
114
|
+
serviceContainer.register("instanceService", new DefaultInstanceService());
|
|
115
|
+
serviceContainer.register("editorTypesService", new DefaultEditorTypesService());
|
|
116
|
+
serviceContainer.register("htmlWriterService", new HtmlWriterService());
|
|
117
|
+
serviceContainer.register("snaplinesProviderService", new SnaplinesProviderService());
|
|
118
|
+
serviceContainer.register("htmlParserService", new DefaultHtmlParserService());
|
|
119
|
+
serviceContainer.register("elementAtPointService", new ElementAtPointService());
|
|
120
|
+
serviceContainer.register("externalDragDropService", new ExternalDragDropService());
|
|
121
|
+
serviceContainer.register("dragDropService", new DragDropService());
|
|
122
|
+
serviceContainer.register("copyPasteService", new CopyPasteService());
|
|
123
|
+
serviceContainer.register("modelCommandService", new DefaultModelCommandService());
|
|
124
|
+
serviceContainer.register("demoProviderService", new SimpleDemoProviderService());
|
|
125
|
+
serviceContainer.register("eventsService", new EventsService());
|
|
126
|
+
serviceContainer.register("undoService", (designerCanvas) => new UndoService(designerCanvas));
|
|
127
|
+
serviceContainer.register("selectionService", (designerCanvas) => new SelectionService(designerCanvas, false));
|
|
128
|
+
serviceContainer.register("contentService", (designerCanvas) => new ContentService(designerCanvas.rootDesignItem));
|
|
129
|
+
serviceContainer.register("designItemDocumentPositionService", (designerCanvas) => new DesignItemDocumentPositionService(designerCanvas));
|
|
130
|
+
serviceContainer.designerExtensions.set(ExtensionType.Permanent, [
|
|
131
|
+
new InvisibleElementExtensionProvider(),
|
|
132
|
+
]);
|
|
133
|
+
serviceContainer.designerExtensions.set(ExtensionType.PrimarySelection, [
|
|
134
|
+
new ConditionExtensionProvider(new ElementDragTitleExtensionProvider(), item => !(item.node instanceof SVGElement) || item.node instanceof SVGSVGElement),
|
|
135
|
+
new PreviousElementSelectExtensionProvider(),
|
|
136
|
+
new TransformOriginExtensionProvider(true),
|
|
137
|
+
new MarginExtensionProvider(),
|
|
138
|
+
new PaddingExtensionProvider(),
|
|
139
|
+
new PositionExtensionProvider(),
|
|
140
|
+
new SvgElementExtensionProvider(),
|
|
141
|
+
new ApplyFirstMachingExtensionProvider(new GridChildResizeExtensionProvider(), new ResizeExtensionProvider(true)),
|
|
142
|
+
new RotateExtensionProvider(),
|
|
143
|
+
new ConditionExtensionProvider(new MultipleSelectionRectExtensionProvider(), item => !(item.node instanceof SVGElement) || item.node instanceof SVGSVGElement),
|
|
144
|
+
]);
|
|
145
|
+
serviceContainer.designerExtensions.set(ExtensionType.PrimarySelectionRefreshed, [
|
|
146
|
+
new GridChildToolbarExtensionProvider(),
|
|
147
|
+
new GridToolbarExtensionProvider(),
|
|
148
|
+
new FlexToolbarExtensionProvider(),
|
|
149
|
+
new BlockToolbarExtensionProvider(),
|
|
150
|
+
]);
|
|
151
|
+
serviceContainer.designerExtensions.set(ExtensionType.PrimarySelectionAndCanBeEntered, [
|
|
152
|
+
new DisplayGridExtensionProvider(),
|
|
153
|
+
new EditGridColumnRowSizesExtensionProvider(),
|
|
154
|
+
new FlexboxExtensionProvider(),
|
|
155
|
+
]);
|
|
156
|
+
serviceContainer.designerExtensions.set(ExtensionType.Selection, [
|
|
157
|
+
new ConditionExtensionProvider(new SelectionDefaultExtensionProvider(), item => !(item.node instanceof SVGElement) || item.node instanceof SVGSVGElement),
|
|
158
|
+
]);
|
|
159
|
+
serviceContainer.designerExtensions.set(ExtensionType.PrimarySelectionContainerAndCanBeEntered, [
|
|
160
|
+
new DisplayGridExtensionProvider('lightgray', '#8080802b'),
|
|
161
|
+
new EditGridColumnRowSizesExtensionProvider(),
|
|
162
|
+
new FlexboxExtensionProvider()
|
|
163
|
+
]);
|
|
164
|
+
serviceContainer.designerExtensions.set(ExtensionType.MouseOver, [
|
|
165
|
+
new HighlightElementExtensionProvider(),
|
|
166
|
+
new ConditionExtensionProvider(new ElementDragTitleExtensionProvider(), item => item.instanceServiceContainer.selectionService.primarySelection !== item && !(item.node instanceof SVGElement) || item.node instanceof SVGSVGElement),
|
|
167
|
+
new ConditionExtensionProvider(new PreviousElementSelectExtensionProvider(), item => item.instanceServiceContainer.selectionService.primarySelection !== item && !(item.node instanceof SVGElement) || item.node instanceof SVGSVGElement),
|
|
168
|
+
]);
|
|
169
|
+
serviceContainer.designerExtensions.set(ExtensionType.Placement, [
|
|
170
|
+
new PlacementExtensionProvider()
|
|
171
|
+
]);
|
|
172
|
+
serviceContainer.designerExtensions.set(ExtensionType.ContainerDrag, [
|
|
173
|
+
new GrayOutExtensionProvider()
|
|
174
|
+
]);
|
|
175
|
+
serviceContainer.designerExtensions.set(ExtensionType.ContainerDragOverAndCanBeEntered, [
|
|
176
|
+
new ApplyFirstMachingExtensionProvider(new DisplayGridExtensionProvider(), new GrayOutDragOverContainerExtensionProvider()),
|
|
177
|
+
new AltToEnterContainerExtensionProvider()
|
|
178
|
+
]);
|
|
179
|
+
serviceContainer.designerExtensions.set(ExtensionType.ContainerExternalDragOverAndCanBeEntered, [
|
|
180
|
+
new ApplyFirstMachingExtensionProvider(new DisplayGridExtensionProvider(), new GrayOutDragOverContainerExtensionProvider()),
|
|
181
|
+
]);
|
|
182
|
+
serviceContainer.designerExtensions.set(ExtensionType.Doubleclick, [
|
|
183
|
+
new EditTextExtensionProvider()
|
|
184
|
+
]);
|
|
185
|
+
serviceContainer.designerTools.set(NamedTools.Pointer, new PointerTool());
|
|
186
|
+
serviceContainer.designerTools.set(NamedTools.DrawSelection, new RectangleSelectorTool());
|
|
187
|
+
serviceContainer.designerTools.set(NamedTools.DrawPath, new DrawPathTool());
|
|
188
|
+
serviceContainer.designerTools.set(NamedTools.DrawRect, new DrawRectTool());
|
|
189
|
+
serviceContainer.designerTools.set(NamedTools.DrawEllipsis, new DrawEllipsisTool());
|
|
190
|
+
serviceContainer.designerTools.set(NamedTools.DrawLine, new DrawLineTool());
|
|
191
|
+
serviceContainer.designerTools.set(NamedTools.Zoom, new ZoomTool());
|
|
192
|
+
serviceContainer.designerTools.set(NamedTools.Pan, new PanTool());
|
|
193
|
+
serviceContainer.designerTools.set(NamedTools.RectangleSelector, new RectangleSelectorTool());
|
|
194
|
+
serviceContainer.designerTools.set(NamedTools.MagicWandSelector, new MagicWandSelectorTool());
|
|
195
|
+
serviceContainer.designerTools.set(NamedTools.PickColor, new PickColorTool());
|
|
196
|
+
serviceContainer.designerTools.set(NamedTools.Text, new TextTool());
|
|
197
|
+
serviceContainer.designerTools.set(NamedTools.DrawElementTool, DrawElementTool);
|
|
198
|
+
serviceContainer.designerPointerExtensions.push(
|
|
199
|
+
//new CursorLinePointerExtensionProvider()
|
|
200
|
+
);
|
|
201
|
+
serviceContainer.designViewConfigButtons.push(new ButtonSeperatorProvider(20), new GridExtensionDesignViewConfigButtons(), new FlexboxExtensionDesignViewConfigButtons(), new ButtonSeperatorProvider(10), new InvisibleElementExtensionDesignViewConfigButtons(), new ButtonSeperatorProvider(10), new StylesheetServiceDesignViewConfigButtons(), new ButtonSeperatorProvider(10), new ToolbarExtensionsDesignViewConfigButtons(), new ButtonSeperatorProvider(30), new RoundPixelsDesignViewConfigButton());
|
|
202
|
+
serviceContainer.designViewToolbarButtons.push(new PointerToolButtonProvider(), new SeperatorToolProvider(22), new SelectorToolButtonProvider(), new SeperatorToolProvider(22), new ZoomToolButtonProvider(), new SeperatorToolProvider(22), new DrawToolButtonProvider(), new SeperatorToolProvider(22), new TextToolButtonProvider(), new SeperatorToolProvider(22), new TransformToolButtonProvider());
|
|
203
|
+
serviceContainer.designerContextMenuExtensions = [
|
|
204
|
+
new ChildContextMenu('edit', new CopyPasteContextMenu()),
|
|
205
|
+
new SeperatorContextMenu(),
|
|
206
|
+
new ChildContextMenu('modify', new RotateLeftAndRight(), new SeperatorContextMenu(), new ZMoveContextMenu(), new SeperatorContextMenu(), new AlignItemsContextMenu()),
|
|
207
|
+
new SeperatorContextMenu(),
|
|
208
|
+
new ChildContextMenu('view', new JumpToElementContextMenu(), new ZoomToElementContextMenu()),
|
|
209
|
+
new SeperatorContextMenu(),
|
|
210
|
+
new MultipleItemsSelectedContextMenu(),
|
|
211
|
+
new PathContextMenu(),
|
|
212
|
+
new RectContextMenu(),
|
|
213
|
+
new SeperatorContextMenu(),
|
|
214
|
+
new SelectAllChildrenContextMenu(),
|
|
215
|
+
new SeperatorContextMenu(),
|
|
216
|
+
new ItemsBelowContextMenu(),
|
|
217
|
+
];
|
|
218
|
+
return serviceContainer;
|
|
219
|
+
}
|
|
220
|
+
export default createDefaultServiceContainer;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IDesignItem } from "../../item/IDesignItem.js";
|
|
2
|
+
import { InstanceServiceContainer } from "../InstanceServiceContainer.js";
|
|
3
|
+
import { ServiceContainer } from "../ServiceContainer.js";
|
|
4
|
+
import { IDesignItemService } from "./IDesignItemService.js";
|
|
5
|
+
export declare class DesignItemService implements IDesignItemService {
|
|
6
|
+
createDesignItem(node: Node, parsedNode: any, serviceContainer: ServiceContainer, instanceServiceContainer: InstanceServiceContainer): IDesignItem;
|
|
7
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { IPoint } from '../../../interfaces/IPoint.js';
|
|
2
|
+
import type { IPlacementService } from './IPlacementService.js';
|
|
3
|
+
import type { IDesignItem } from '../../item/IDesignItem.js';
|
|
4
|
+
import { IDesignerCanvas } from '../../widgets/designerView/IDesignerCanvas.js';
|
|
5
|
+
export declare class AbsolutePlacementService implements IPlacementService {
|
|
6
|
+
serviceForContainer(container: IDesignItem, containerStyle: CSSStyleDeclaration, mode: 'normal' | 'drop', item?: IDesignItem, event?: MouseEvent): boolean;
|
|
7
|
+
isEnterableContainer(container: IDesignItem): boolean;
|
|
8
|
+
canEnter(container: IDesignItem, items: IDesignItem[]): boolean;
|
|
9
|
+
canLeave(container: IDesignItem, items: IDesignItem[]): boolean;
|
|
10
|
+
getElementOffset(container: IDesignItem, designItem?: IDesignItem): IPoint;
|
|
11
|
+
private calculateTrack;
|
|
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
|
+
moveElements(designItems: IDesignItem[], position: IPoint, absolute: boolean): void;
|
|
16
|
+
enterContainer(container: IDesignItem, items: IDesignItem[], mode: 'normal' | 'drop'): void;
|
|
17
|
+
leaveContainer(container: IDesignItem, items: IDesignItem[]): void;
|
|
18
|
+
finishPlace(event: MouseEvent, designerCanvas: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
|
|
19
|
+
}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { DomConverter } from '../../widgets/designerView/DomConverter.js';
|
|
2
|
+
import { combineTransforms, extractTranslationFromDOMMatrix, getResultingTransformationBetweenElementAndAllAncestors } from '../../helper/TransformHelper.js';
|
|
3
|
+
import { filterChildPlaceItems, getDesignItemCurrentPos, placeDesignItem } from '../../helper/LayoutHelper.js';
|
|
4
|
+
import { ExtensionType } from '../../widgets/designerView/extensions/ExtensionType.js';
|
|
5
|
+
import { straightenLine } from '../../helper/PathDataPolyfill.js';
|
|
6
|
+
export class AbsolutePlacementService {
|
|
7
|
+
serviceForContainer(container, containerStyle, mode, item, event) {
|
|
8
|
+
if (item != null && (item.getComputedStyle()?.position == 'absolute' || item.getComputedStyle()?.position == 'relative'))
|
|
9
|
+
return true;
|
|
10
|
+
/*if (containerStyle.display === 'grid' || containerStyle.display === 'inline-grid' ||
|
|
11
|
+
containerStyle.display === 'flex' || containerStyle.display === 'inline-flex')
|
|
12
|
+
return false;*/
|
|
13
|
+
return mode == 'drop' && event.ctrlKey;
|
|
14
|
+
}
|
|
15
|
+
isEnterableContainer(container) {
|
|
16
|
+
if (DomConverter.IsSelfClosingElement(container.element.localName))
|
|
17
|
+
return false;
|
|
18
|
+
if (!container.isRootItem && container.element.shadowRoot && container.element.shadowRoot.querySelector('slot') == null)
|
|
19
|
+
return false;
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
canEnter(container, items) {
|
|
23
|
+
if (!this.isEnterableContainer(container))
|
|
24
|
+
return false;
|
|
25
|
+
if (!items.every(x => !x.element.contains(container.element) && x !== container))
|
|
26
|
+
return false;
|
|
27
|
+
return true;
|
|
28
|
+
}
|
|
29
|
+
canLeave(container, items) {
|
|
30
|
+
return true;
|
|
31
|
+
}
|
|
32
|
+
getElementOffset(container, designItem) {
|
|
33
|
+
return container.instanceServiceContainer.designerCanvas.getNormalizedElementCoordinates(container.element);
|
|
34
|
+
}
|
|
35
|
+
calculateTrack(event, designerCanvas, startPoint, offsetInControl, newPoint, item) {
|
|
36
|
+
let trackX = newPoint.x - startPoint.x;
|
|
37
|
+
let trackY = newPoint.y - startPoint.y;
|
|
38
|
+
if (!event.ctrlKey) {
|
|
39
|
+
if (designerCanvas.alignOnGrid) {
|
|
40
|
+
let p = getDesignItemCurrentPos(item, 'position');
|
|
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;
|
|
45
|
+
}
|
|
46
|
+
else if (designerCanvas.alignOnSnap) {
|
|
47
|
+
let rect = item.element.getBoundingClientRect();
|
|
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 });
|
|
49
|
+
if (newPos.x !== null) {
|
|
50
|
+
trackX = newPos.x - Math.round(startPoint.x) + Math.round(offsetInControl.x);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
trackX = Math.round(trackX);
|
|
54
|
+
}
|
|
55
|
+
if (newPos.y !== null) {
|
|
56
|
+
trackY = newPos.y - Math.round(startPoint.y) + Math.round(offsetInControl.y);
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
trackY = Math.round(trackY);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return { x: trackX, y: trackY };
|
|
64
|
+
}
|
|
65
|
+
placePoint(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
|
|
66
|
+
let trackX = newPoint.x;
|
|
67
|
+
let trackY = newPoint.y;
|
|
68
|
+
if (!event.ctrlKey) {
|
|
69
|
+
if (designerCanvas.alignOnGrid) {
|
|
70
|
+
trackX = Math.round(trackX / designerCanvas.gridSize) * designerCanvas.gridSize;
|
|
71
|
+
trackY = Math.round(trackY / designerCanvas.gridSize) * designerCanvas.gridSize;
|
|
72
|
+
}
|
|
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 });
|
|
75
|
+
if (newPos.x !== null) {
|
|
76
|
+
trackX = newPos.x;
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
trackX = Math.round(trackX);
|
|
80
|
+
}
|
|
81
|
+
if (newPos.y !== null) {
|
|
82
|
+
trackY = newPos.y;
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
trackY = Math.round(trackY);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return { x: trackX, y: trackY };
|
|
90
|
+
}
|
|
91
|
+
startPlace(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
|
|
92
|
+
}
|
|
93
|
+
place(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
|
|
94
|
+
//TODO: this should revert all undo actions while active
|
|
95
|
+
//maybe a undo actions returns itself or an id so it could be changed?
|
|
96
|
+
let track = this.calculateTrack(event, designerCanvas, startPoint, offsetInControl, newPoint, items[0]);
|
|
97
|
+
if (event.shiftKey) {
|
|
98
|
+
track = straightenLine({ x: 0, y: 0 }, track, true);
|
|
99
|
+
}
|
|
100
|
+
let filteredItems = filterChildPlaceItems(items);
|
|
101
|
+
for (const designItem of filteredItems) {
|
|
102
|
+
const canvas = designItem.instanceServiceContainer.designerCanvas.rootDesignItem.element;
|
|
103
|
+
let originalElementAndAllAncestorsMultipliedMatrix = getResultingTransformationBetweenElementAndAllAncestors(designItem.parent.element, canvas, true);
|
|
104
|
+
let transformMatrixParentTransformsCompensated = null;
|
|
105
|
+
if (originalElementAndAllAncestorsMultipliedMatrix) {
|
|
106
|
+
transformMatrixParentTransformsCompensated = new DOMPoint(track.x, track.y, 0, 0).matrixTransform(originalElementAndAllAncestorsMultipliedMatrix.inverse());
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
transformMatrixParentTransformsCompensated = new DOMPoint(track.x, track.y, 0, 0);
|
|
110
|
+
}
|
|
111
|
+
const translationMatrix = new DOMMatrix().translate(transformMatrixParentTransformsCompensated.x, transformMatrixParentTransformsCompensated.y);
|
|
112
|
+
combineTransforms(designItem.element, designItem.getStyle('transform'), translationMatrix.toString());
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
moveElements(designItems, position, absolute) {
|
|
116
|
+
//TODO: Check if we set left or right
|
|
117
|
+
//TODO: Use CSS units
|
|
118
|
+
for (let d of designItems) {
|
|
119
|
+
if (position.x)
|
|
120
|
+
d.setStyle('left', parseInt(d.element.style.left) - position.x + 'px');
|
|
121
|
+
if (position.y)
|
|
122
|
+
d.setStyle('top', parseInt(d.element.style.top) - position.y + 'px');
|
|
123
|
+
}
|
|
124
|
+
designItems[0].instanceServiceContainer.designerCanvas.extensionManager.refreshExtensions(designItems);
|
|
125
|
+
}
|
|
126
|
+
enterContainer(container, items, mode) {
|
|
127
|
+
let filterdItems = filterChildPlaceItems(items);
|
|
128
|
+
for (let i of filterdItems) {
|
|
129
|
+
if (mode == 'drop')
|
|
130
|
+
i.setStyle('position', 'absolute');
|
|
131
|
+
container.insertChild(i);
|
|
132
|
+
if (i.lastContainerSize) {
|
|
133
|
+
if (!i.hasStyle('width'))
|
|
134
|
+
i.setStyle('width', i.lastContainerSize.width + 'px');
|
|
135
|
+
if (!i.hasStyle('height'))
|
|
136
|
+
i.setStyle('height', i.lastContainerSize.height + 'px');
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
leaveContainer(container, items) {
|
|
141
|
+
}
|
|
142
|
+
finishPlace(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
|
|
143
|
+
let filterdItems = filterChildPlaceItems(items);
|
|
144
|
+
for (const designItem of filterdItems) {
|
|
145
|
+
let translation = extractTranslationFromDOMMatrix(new DOMMatrix(designItem.element.style.transform));
|
|
146
|
+
const stylesMapOffset = extractTranslationFromDOMMatrix(new DOMMatrix(designItem.getStyle('transform') ?? ''));
|
|
147
|
+
designItem.element.style.transform = designItem.getStyle('transform') ?? '';
|
|
148
|
+
let track = { x: translation.x, y: translation.y };
|
|
149
|
+
placeDesignItem(container, designItem, { x: track.x - stylesMapOffset.x, y: track.y - stylesMapOffset.y }, 'position');
|
|
150
|
+
}
|
|
151
|
+
for (const item of items) {
|
|
152
|
+
designerCanvas.extensionManager.removeExtension(item, ExtensionType.Placement);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
@@ -106,6 +106,7 @@ export class AbsolutePlacementService {
|
|
|
106
106
|
const translationMatrix = new DOMMatrix().translate(transformedPoint.x, transformedPoint.y);
|
|
107
107
|
combineTransforms(designItem.element, designItem.getStyle('transform'), translationMatrix.toString());
|
|
108
108
|
}
|
|
109
|
+
items[0].instanceServiceContainer.designerCanvas?.designItemsChanged(filteredItems, 'place', false);
|
|
109
110
|
}
|
|
110
111
|
moveElements(designItems, position, absolute) {
|
|
111
112
|
//TODO: Check if we set left or right
|
|
@@ -117,10 +118,11 @@ export class AbsolutePlacementService {
|
|
|
117
118
|
d.setStyle('top', parseInt(d.element.style.top) - position.y + 'px');
|
|
118
119
|
}
|
|
119
120
|
designItems[0].instanceServiceContainer.designerCanvas.extensionManager.refreshExtensions(designItems);
|
|
121
|
+
designItems[0].instanceServiceContainer.designerCanvas?.designItemsChanged(designItems, 'place', true);
|
|
120
122
|
}
|
|
121
123
|
enterContainer(container, items, mode) {
|
|
122
|
-
let
|
|
123
|
-
for (let i of
|
|
124
|
+
let filteredItems = filterChildPlaceItems(items);
|
|
125
|
+
for (let i of filteredItems) {
|
|
124
126
|
if (mode == 'drop')
|
|
125
127
|
i.setStyle('position', 'absolute');
|
|
126
128
|
container.insertChild(i);
|
|
@@ -131,12 +133,15 @@ export class AbsolutePlacementService {
|
|
|
131
133
|
i.setStyle('height', i.lastContainerSize.height + 'px');
|
|
132
134
|
}
|
|
133
135
|
}
|
|
136
|
+
items[0].instanceServiceContainer.designerCanvas?.designItemsChanged(filteredItems, 'place', true);
|
|
134
137
|
}
|
|
135
138
|
leaveContainer(container, items) {
|
|
139
|
+
let filteredItems = filterChildPlaceItems(items);
|
|
140
|
+
items[0].instanceServiceContainer.designerCanvas?.designItemsChanged(filteredItems, 'place', true);
|
|
136
141
|
}
|
|
137
142
|
finishPlace(event, designerCanvas, container, startPoint, offsetInControl, newPoint, items) {
|
|
138
|
-
let
|
|
139
|
-
for (const designItem of
|
|
143
|
+
let filteredItems = filterChildPlaceItems(items);
|
|
144
|
+
for (const designItem of filteredItems) {
|
|
140
145
|
let translation = extractTranslationFromDOMMatrix(new DOMMatrix(designItem.element.style.transform));
|
|
141
146
|
const stylesMapOffset = extractTranslationFromDOMMatrix(new DOMMatrix(designItem.getStyle('transform') ?? ''));
|
|
142
147
|
designItem.element.style.transform = designItem.getStyle('transform') ?? '';
|
|
@@ -146,6 +151,7 @@ export class AbsolutePlacementService {
|
|
|
146
151
|
for (const item of items) {
|
|
147
152
|
designerCanvas.extensionManager.removeExtension(item, ExtensionType.Placement);
|
|
148
153
|
}
|
|
154
|
+
items[0].instanceServiceContainer.designerCanvas?.designItemsChanged(filteredItems, 'place', true);
|
|
149
155
|
}
|
|
150
156
|
}
|
|
151
157
|
//# sourceMappingURL=AbsolutePlacementService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbsolutePlacementService.js","sourceRoot":"","sources":["../../../../src/elements/services/placementService/AbsolutePlacementService.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AbsolutePlacementService.js","sourceRoot":"","sources":["../../../../src/elements/services/placementService/AbsolutePlacementService.ts"],"names":[],"mappings":"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"}
|
|
@@ -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 {
|
|
4
|
+
import { IDesignerCanvas } from '../../widgets/designerView/IDesignerCanvas.js';
|
|
5
5
|
export declare function filterNonElementItems(items: IDesignItem[]): IDesignItem[];
|
|
6
6
|
export declare class DefaultPlacementService implements IPlacementService {
|
|
7
7
|
serviceForContainer(container: IDesignItem, containerStyle: CSSStyleDeclaration, item?: IDesignItem): boolean;
|
|
@@ -10,11 +10,11 @@ export declare class DefaultPlacementService implements IPlacementService {
|
|
|
10
10
|
canLeave(container: IDesignItem, items: IDesignItem[]): boolean;
|
|
11
11
|
getElementOffset(container: IDesignItem, designItem?: IDesignItem): IPoint;
|
|
12
12
|
private calculateTrack;
|
|
13
|
-
placePoint(event: MouseEvent, placementView:
|
|
14
|
-
startPlace(event: MouseEvent, placementView:
|
|
15
|
-
place(event: MouseEvent, placementView:
|
|
13
|
+
placePoint(event: MouseEvent, placementView: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): IPoint;
|
|
14
|
+
startPlace(event: MouseEvent, placementView: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
|
|
15
|
+
place(event: MouseEvent, placementView: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
|
|
16
16
|
moveElements(designItems: IDesignItem[], position: IPoint, absolute: boolean): void;
|
|
17
17
|
enterContainer(container: IDesignItem, items: IDesignItem[], mode: 'normal' | 'drop'): void;
|
|
18
18
|
leaveContainer(container: IDesignItem, items: IDesignItem[]): void;
|
|
19
|
-
finishPlace(event: MouseEvent, placementView:
|
|
19
|
+
finishPlace(event: MouseEvent, placementView: IDesignerCanvas, container: IDesignItem, startPoint: IPoint, offsetInControl: IPoint, newPoint: IPoint, items: IDesignItem[]): void;
|
|
20
20
|
}
|
|
@@ -125,6 +125,7 @@ export class DefaultPlacementService {
|
|
|
125
125
|
const translationMatrix = new DOMMatrix().translate(transformedPoint.x, transformedPoint.y);
|
|
126
126
|
combineTransforms(designItem.element, designItem.getStyle('transform'), translationMatrix.toString());
|
|
127
127
|
}
|
|
128
|
+
items[0].instanceServiceContainer.designerCanvas?.designItemsChanged(filteredItems, 'place', false);
|
|
128
129
|
}
|
|
129
130
|
moveElements(designItems, position, absolute) {
|
|
130
131
|
//TODO: Check if we set left or right
|
|
@@ -136,10 +137,11 @@ export class DefaultPlacementService {
|
|
|
136
137
|
d.setStyle('top', parseInt(d.element.style.top) - position.y + 'px');
|
|
137
138
|
}
|
|
138
139
|
designItems[0].instanceServiceContainer.designerCanvas.extensionManager.refreshExtensions(designItems);
|
|
140
|
+
designItems[0].instanceServiceContainer.designerCanvas?.designItemsChanged(designItems, 'place', true);
|
|
139
141
|
}
|
|
140
142
|
enterContainer(container, items, mode) {
|
|
141
|
-
let
|
|
142
|
-
for (let i of
|
|
143
|
+
let filteredItems = filterChildPlaceItems(items);
|
|
144
|
+
for (let i of filteredItems) {
|
|
143
145
|
if (mode == 'drop')
|
|
144
146
|
i.setStyle('position', 'absolute');
|
|
145
147
|
container.insertChild(i);
|
|
@@ -150,12 +152,15 @@ export class DefaultPlacementService {
|
|
|
150
152
|
i.setStyle('height', i.lastContainerSize.height + 'px');
|
|
151
153
|
}
|
|
152
154
|
}
|
|
155
|
+
items[0].instanceServiceContainer.designerCanvas?.designItemsChanged(filteredItems, 'place', true);
|
|
153
156
|
}
|
|
154
157
|
leaveContainer(container, items) {
|
|
158
|
+
let filteredItems = filterChildPlaceItems(items);
|
|
159
|
+
items[0].instanceServiceContainer.designerCanvas?.designItemsChanged(filteredItems, 'place', true);
|
|
155
160
|
}
|
|
156
161
|
finishPlace(event, placementView, container, startPoint, offsetInControl, newPoint, items) {
|
|
157
|
-
let
|
|
158
|
-
for (const designItem of
|
|
162
|
+
let filteredItems = filterChildPlaceItems(items);
|
|
163
|
+
for (const designItem of filteredItems) {
|
|
159
164
|
let translation = extractTranslationFromDOMMatrix(new DOMMatrix(designItem.element.style.transform));
|
|
160
165
|
const stylesMapOffset = extractTranslationFromDOMMatrix(new DOMMatrix(designItem.getStyle('transform') ?? ''));
|
|
161
166
|
designItem.element.style.transform = designItem.getStyle('transform') ?? '';
|
|
@@ -174,6 +179,7 @@ export class DefaultPlacementService {
|
|
|
174
179
|
for (const item of items) {
|
|
175
180
|
placementView.extensionManager.removeExtension(item, ExtensionType.Placement);
|
|
176
181
|
}
|
|
182
|
+
items[0].instanceServiceContainer.designerCanvas?.designItemsChanged(filteredItems, 'place', true);
|
|
177
183
|
}
|
|
178
184
|
}
|
|
179
185
|
//# sourceMappingURL=DefaultPlacementService.js.map
|