@node-projects/web-component-designer 0.1.303 → 0.1.304
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/services/dragDropService/DragDropService.d.ts +2 -2
- package/dist/elements/services/dragDropService/DragDropService.js +18 -7
- package/dist/elements/services/dragDropService/DragDropService.js.map +1 -1
- package/dist/elements/services/dragDropService/IDragDropService.d.ts +1 -1
- package/dist/elements/widgets/designerView/DomConverter.d.ts +1 -1
- package/dist/index-min.js +45 -45
- package/package.json +1 -1
|
@@ -8,7 +8,7 @@ export declare class DragDropService implements IDragDropService {
|
|
|
8
8
|
private _oldY;
|
|
9
9
|
dragEnter(designerCanvas: IDesignerCanvas, event: DragEvent): void;
|
|
10
10
|
dragLeave(designerCanvas: IDesignerCanvas, event: DragEvent): void;
|
|
11
|
-
dragOver(designerCanvas: IDesignerCanvas, event: DragEvent): void
|
|
11
|
+
dragOver(designerCanvas: IDesignerCanvas, event: DragEvent): Promise<void>;
|
|
12
12
|
drop(designerCanvas: IDesignerCanvas, event: DragEvent): Promise<void>;
|
|
13
|
-
getPossibleContainerForDragDrop(designerCanvas: IDesignerCanvas, event: DragEvent): [newContainerElementDesignItem: IDesignItem, newContainerService: IPlacementService];
|
|
13
|
+
getPossibleContainerForDragDrop(designerCanvas: IDesignerCanvas, event: DragEvent, designItems?: IDesignItem[]): [newContainerElementDesignItem: IDesignItem, newContainerService: IPlacementService];
|
|
14
14
|
}
|
|
@@ -13,8 +13,16 @@ export class DragDropService {
|
|
|
13
13
|
this._dragOverExtensionItem = null;
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
|
-
dragOver(designerCanvas, event) {
|
|
17
|
-
let
|
|
16
|
+
async dragOver(designerCanvas, event) {
|
|
17
|
+
let di = null;
|
|
18
|
+
const transferData = event.dataTransfer.getData(dragDropFormatNameElementDefinition);
|
|
19
|
+
if (transferData) {
|
|
20
|
+
const elementDefinition = JSON.parse(transferData);
|
|
21
|
+
if (elementDefinition) {
|
|
22
|
+
di = await designerCanvas.serviceContainer.forSomeServicesTillResult("instanceService", (service) => service.getElement(elementDefinition, designerCanvas.serviceContainer, designerCanvas.instanceServiceContainer));
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
let [newContainer] = this.getPossibleContainerForDragDrop(designerCanvas, event, di ? [di] : null);
|
|
18
26
|
if (!newContainer)
|
|
19
27
|
newContainer = designerCanvas.rootDesignItem;
|
|
20
28
|
if (this._dragOverExtensionItem != newContainer) {
|
|
@@ -35,12 +43,12 @@ export class DragDropService {
|
|
|
35
43
|
designerCanvas.extensionManager.removeExtension(this._dragOverExtensionItem, ExtensionType.ContainerExternalDragOverAndCanBeEntered);
|
|
36
44
|
this._dragOverExtensionItem = null;
|
|
37
45
|
}
|
|
38
|
-
let [newContainer] = this.getPossibleContainerForDragDrop(designerCanvas, event);
|
|
39
|
-
if (!newContainer)
|
|
40
|
-
newContainer = designerCanvas.rootDesignItem;
|
|
41
46
|
const transferData = event.dataTransfer.getData(dragDropFormatNameElementDefinition);
|
|
42
47
|
const elementDefinition = JSON.parse(transferData);
|
|
43
48
|
const di = await designerCanvas.serviceContainer.forSomeServicesTillResult("instanceService", (service) => service.getElement(elementDefinition, designerCanvas.serviceContainer, designerCanvas.instanceServiceContainer));
|
|
49
|
+
let [newContainer] = this.getPossibleContainerForDragDrop(designerCanvas, event, [di]);
|
|
50
|
+
if (!newContainer)
|
|
51
|
+
newContainer = designerCanvas.rootDesignItem;
|
|
44
52
|
const grp = di.openGroup("Insert of <" + di.name + ">");
|
|
45
53
|
const containerService = designerCanvas.serviceContainer.getLastServiceWhere('containerService', x => x.serviceForContainer(newContainer, newContainer.getComputedStyle(), di));
|
|
46
54
|
containerService.enterContainer(newContainer, [di], 'drop');
|
|
@@ -57,7 +65,7 @@ export class DragDropService {
|
|
|
57
65
|
grp.commit();
|
|
58
66
|
});
|
|
59
67
|
}
|
|
60
|
-
getPossibleContainerForDragDrop(designerCanvas, event) {
|
|
68
|
+
getPossibleContainerForDragDrop(designerCanvas, event, designItems) {
|
|
61
69
|
let newContainerElementDesignItem = null;
|
|
62
70
|
let newContainerService = null;
|
|
63
71
|
const elementsFromPoint = designerCanvas.elementsFromPoint(event.clientX, event.clientY);
|
|
@@ -77,7 +85,10 @@ export class DragDropService {
|
|
|
77
85
|
newContainerService = designerCanvas.serviceContainer.getLastServiceWhere('containerService', x => x.serviceForContainer(newContainerElementDesignItem, containerStyle));
|
|
78
86
|
if (newContainerService) {
|
|
79
87
|
//TODO: Maybe the check for SVG Element should be in "canEnterByDrop"?
|
|
80
|
-
if (newContainerService.
|
|
88
|
+
if (designItems && newContainerService.canEnter(newContainerElementDesignItem, designItems) && !(newContainerElementDesignItem.element instanceof newContainerElementDesignItem.window.SVGElement)) {
|
|
89
|
+
break;
|
|
90
|
+
}
|
|
91
|
+
else if (!designItems && newContainerService.isEnterableContainer(newContainerElementDesignItem) && !(newContainerElementDesignItem.element instanceof newContainerElementDesignItem.window.SVGElement)) {
|
|
81
92
|
break;
|
|
82
93
|
}
|
|
83
94
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DragDropService.js","sourceRoot":"","sources":["../../../../src/elements/services/dragDropService/DragDropService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAKtD,OAAO,EAAE,aAAa,EAAE,MAAM,wDAAwD,CAAC;AACvF,OAAO,EAAE,mCAAmC,EAAE,MAAM,uBAAuB,CAAC;AAE5E,MAAM,OAAO,eAAe;IAClB,sBAAsB,CAAc;IACpC,KAAK,CAAS;IACd,KAAK,CAAS;IAEf,SAAS,CAAC,cAA+B,EAAE,KAAgB;IAClE,CAAC;IAEM,SAAS,CAAC,cAA+B,EAAE,KAAgB;QAChE,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChC,cAAc,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,sBAAsB,EAAE,aAAa,CAAC,wCAAwC,CAAC,CAAC;YACrI,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QACrC,CAAC;IACH,CAAC;IAEM,QAAQ,CAAC,cAA+B,EAAE,KAAgB;
|
|
1
|
+
{"version":3,"file":"DragDropService.js","sourceRoot":"","sources":["../../../../src/elements/services/dragDropService/DragDropService.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,5 +6,5 @@ export interface IDragDropService {
|
|
|
6
6
|
dragLeave(designerCanvas: IDesignerCanvas, event: DragEvent): any;
|
|
7
7
|
dragOver(designerCanvas: IDesignerCanvas, event: DragEvent): any;
|
|
8
8
|
drop(designerCanvas: IDesignerCanvas, event: DragEvent): any;
|
|
9
|
-
getPossibleContainerForDragDrop(designerCanvas: IDesignerCanvas, event: DragEvent): [newContainerElementDesignItem: IDesignItem, newContainerService: IPlacementService];
|
|
9
|
+
getPossibleContainerForDragDrop(designerCanvas: IDesignerCanvas, event: DragEvent, designItems?: IDesignItem[]): [newContainerElementDesignItem: IDesignItem, newContainerService: IPlacementService];
|
|
10
10
|
}
|
|
@@ -2,6 +2,6 @@ import { IDesignItem } from "../../item/IDesignItem.js";
|
|
|
2
2
|
export declare class DomConverter {
|
|
3
3
|
static normalizeAttributeValue(value: string | number, useSingleQuotes?: boolean): string;
|
|
4
4
|
static normalizeContentValue(value: string): string;
|
|
5
|
-
static IsSelfClosingElement(tag: string): tag is "
|
|
5
|
+
static IsSelfClosingElement(tag: string): tag is "area" | "base" | "br" | "col" | "embed" | "hr" | "img" | "input" | "keygen" | "link" | "meta" | "param" | "source" | "track" | "wbr";
|
|
6
6
|
static ConvertToString(designItems: IDesignItem[], beautifyOutput?: boolean, updatePositions?: boolean): string;
|
|
7
7
|
}
|