@node-projects/web-component-designer 0.2.0 → 0.2.3

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.
Files changed (53) hide show
  1. package/dist/elements/controls/NumericStyleInput.js +16 -14
  2. package/dist/elements/controls/NumericStyleInput.js.map +1 -1
  3. package/dist/elements/controls/NumericStyleInputValueHelpers.d.ts +3 -0
  4. package/dist/elements/controls/NumericStyleInputValueHelpers.js +14 -0
  5. package/dist/elements/controls/NumericStyleInputValueHelpers.js.map +1 -1
  6. package/dist/elements/helper/ElementHelper.d.ts +1 -0
  7. package/dist/elements/helper/ElementHelper.js +11 -0
  8. package/dist/elements/helper/ElementHelper.js.map +1 -1
  9. package/dist/elements/helper/contextMenu/ContextMenu.js +3 -3
  10. package/dist/elements/helper/contextMenu/ContextMenu.js.map +1 -1
  11. package/dist/elements/helper/getBoxQuads.d.ts +4 -3
  12. package/dist/elements/helper/getBoxQuads.js +93 -18
  13. package/dist/elements/helper/getBoxQuads.js.map +1 -1
  14. package/dist/elements/services/DefaultServiceBootstrap.js +11 -5
  15. package/dist/elements/services/DefaultServiceBootstrap.js.map +1 -1
  16. package/dist/elements/services/copyPasteService/PasteFormatSnapshot.d.ts +2 -1
  17. package/dist/elements/services/copyPasteService/PasteFormatSnapshot.js +14 -3
  18. package/dist/elements/services/copyPasteService/PasteFormatSnapshot.js.map +1 -1
  19. package/dist/elements/services/placementService/AbsolutePlacementService.js +6 -1
  20. package/dist/elements/services/placementService/AbsolutePlacementService.js.map +1 -1
  21. package/dist/elements/services/placementService/DefaultPlacementService.js +6 -1
  22. package/dist/elements/services/placementService/DefaultPlacementService.js.map +1 -1
  23. package/dist/elements/services/propertiesService/propertyEditors/CssNumericPropertyEditorConfig.d.ts +1 -1
  24. package/dist/elements/services/propertiesService/propertyEditors/CssNumericPropertyEditorConfig.js +23 -3
  25. package/dist/elements/services/propertiesService/propertyEditors/CssNumericPropertyEditorConfig.js.map +1 -1
  26. package/dist/elements/widgets/designerView/DomConverter.d.ts +1 -1
  27. package/dist/elements/widgets/designerView/extensions/ExtensionManager.d.ts +1 -1
  28. package/dist/elements/widgets/designerView/extensions/ExtensionManager.js +2 -2
  29. package/dist/elements/widgets/designerView/extensions/ExtensionManager.js.map +1 -1
  30. package/dist/elements/widgets/designerView/extensions/ExtensionType.d.ts +5 -1
  31. package/dist/elements/widgets/designerView/extensions/ExtensionType.js +4 -0
  32. package/dist/elements/widgets/designerView/extensions/ExtensionType.js.map +1 -1
  33. package/dist/elements/widgets/designerView/extensions/IExtensionManger.d.ts +1 -1
  34. package/dist/elements/widgets/designerView/extensions/contextMenu/BasicContextMenu.d.ts +15 -0
  35. package/dist/elements/widgets/designerView/extensions/contextMenu/BasicContextMenu.js +15 -0
  36. package/dist/elements/widgets/designerView/extensions/contextMenu/BasicContextMenu.js.map +1 -0
  37. package/dist/elements/widgets/designerView/extensions/contextMenu/ChildContextMenu copy.d.ts +11 -0
  38. package/dist/elements/widgets/designerView/extensions/contextMenu/ChildContextMenu copy.js +16 -0
  39. package/dist/elements/widgets/designerView/extensions/contextMenu/ChildContextMenu copy.js.map +1 -0
  40. package/dist/elements/widgets/designerView/extensions/contextMenu/PasteFormatContextMenu.js +1 -0
  41. package/dist/elements/widgets/designerView/extensions/contextMenu/PasteFormatContextMenu.js.map +1 -1
  42. package/dist/elements/widgets/designerView/extensions/transforms/TransformOriginExtension.d.ts +1 -0
  43. package/dist/elements/widgets/designerView/extensions/transforms/TransformOriginExtension.js +9 -7
  44. package/dist/elements/widgets/designerView/extensions/transforms/TransformOriginExtension.js.map +1 -1
  45. package/dist/elements/widgets/designerView/tools/PointerTool.d.ts +5 -0
  46. package/dist/elements/widgets/designerView/tools/PointerTool.js +71 -5
  47. package/dist/elements/widgets/designerView/tools/PointerTool.js.map +1 -1
  48. package/dist/index-min.js +7 -7
  49. package/dist/index-min.js.map +4 -4
  50. package/dist/index.d.ts +1 -0
  51. package/dist/index.js +1 -0
  52. package/dist/index.js.map +1 -1
  53. package/package.json +1 -1
@@ -33,5 +33,9 @@ export var ExtensionType;
33
33
  * Extension when the Primary Selection is refreshed, means clicked a second time
34
34
  */
35
35
  ExtensionType[ExtensionType["PrimarySelectionRefreshed"] = 15] = "PrimarySelectionRefreshed";
36
+ /**
37
+ * Extension manually applied by the user. But registered, caus we need the styles.
38
+ */
39
+ ExtensionType[ExtensionType["ManualApplied"] = 16] = "ManualApplied";
36
40
  })(ExtensionType || (ExtensionType = {}));
37
41
  //# sourceMappingURL=ExtensionType.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExtensionType.js","sourceRoot":"","sources":["../../../../../src/elements/widgets/designerView/extensions/ExtensionType.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,aAoCX;AApCD,WAAY,aAAa;IACvB,yDAAY,CAAA;IAEZ,2DAAa,CAAA;IACb,2DAAa,CAAA;IACb,yEAAoB,CAAA;IACpB,2FAA6B,CAAA;IAC7B,2DAAa,CAAA;IACb,+EAAuB,CAAA;IACvB,mFAAyB,CAAA;IACzB;;OAEG;IACH,yGAAoC,CAAA;IACpC;;MAEE;IACF,yHAA4C,CAAA;IAC5C;;OAEG;IACH,oEAAkB,CAAA;IAClB,gEAAgB,CAAA;IAChB,4DAAc,CAAA;IAEd;;;;OAIG;IACH,wGAAoC,CAAA;IACpC,0HAA6C,CAAA;IAC7C;;OAEG;IACH,4FAA8B,CAAA;AAChC,CAAC,EApCW,aAAa,KAAb,aAAa,QAoCxB"}
1
+ {"version":3,"file":"ExtensionType.js","sourceRoot":"","sources":["../../../../../src/elements/widgets/designerView/extensions/ExtensionType.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,aAwCX;AAxCD,WAAY,aAAa;IACvB,yDAAY,CAAA;IAEZ,2DAAa,CAAA;IACb,2DAAa,CAAA;IACb,yEAAoB,CAAA;IACpB,2FAA6B,CAAA;IAC7B,2DAAa,CAAA;IACb,+EAAuB,CAAA;IACvB,mFAAyB,CAAA;IACzB;;OAEG;IACH,yGAAoC,CAAA;IACpC;;MAEE;IACF,yHAA4C,CAAA;IAC5C;;OAEG;IACH,oEAAkB,CAAA;IAClB,gEAAgB,CAAA;IAChB,4DAAc,CAAA;IAEd;;;;OAIG;IACH,wGAAoC,CAAA;IACpC,0HAA6C,CAAA;IAC7C;;OAEG;IACH,4FAA8B,CAAA;IAC9B;;OAEG;IACH,oEAAkB,CAAA;AACpB,CAAC,EAxCW,aAAa,KAAb,aAAa,QAwCxB"}
@@ -4,7 +4,7 @@ import { IDesignerExtension } from './IDesignerExtension.js';
4
4
  export interface IExtensionManager {
5
5
  applyExtension(designItem: IDesignItem, extensionType: ExtensionType, event?: Event, recursive?: boolean): IDesignerExtension[];
6
6
  applyExtensions(designItems: IDesignItem[], extensionType: ExtensionType, event?: Event, recursive?: boolean): any;
7
- applyExtensionInstance(designItem: IDesignItem, extension: IDesignerExtension): any;
7
+ applyExtensionInstance(designItem: IDesignItem, extension: IDesignerExtension, extensionType?: ExtensionType): any;
8
8
  removeExtension(designItem: IDesignItem, extensionType?: ExtensionType): any;
9
9
  removeExtensions(designItems: IDesignItem[], recursive: boolean, extensionType?: ExtensionType): any;
10
10
  removeExtensionInstance(designItem: IDesignItem, extension: IDesignerExtension): any;
@@ -0,0 +1,15 @@
1
+ import { IContextMenuItem } from '../../../../helper/contextMenu/IContextMenuItem.js';
2
+ import { IDesignItem } from '../../../../item/IDesignItem.js';
3
+ import { IDesignerCanvas } from '../../IDesignerCanvas.js';
4
+ import { ContextmenuInitiator, IContextMenuExtension } from './IContextMenuExtension.js';
5
+ type BasicContextMenuItem = Omit<IContextMenuItem, 'action'> & {
6
+ action?: (event: MouseEvent, designerCanvas: IDesignerCanvas, designItem: IDesignItem, initiator: ContextmenuInitiator) => void;
7
+ };
8
+ export declare class BasicContextMenu implements IContextMenuExtension {
9
+ private _item;
10
+ private _shouldProvide;
11
+ constructor(item: BasicContextMenuItem, shouldProvide?: (event: MouseEvent, designerCanvas: IDesignerCanvas, designItem: IDesignItem, initiator: ContextmenuInitiator) => boolean);
12
+ shouldProvideContextmenu(event: MouseEvent, designerCanvas: IDesignerCanvas, designItem: IDesignItem, initiator: ContextmenuInitiator): boolean;
13
+ provideContextMenuItems(event: MouseEvent, designerCanvas: IDesignerCanvas, designItem: IDesignItem, initiator: ContextmenuInitiator): IContextMenuItem[];
14
+ }
15
+ export {};
@@ -0,0 +1,15 @@
1
+ export class BasicContextMenu {
2
+ _item;
3
+ _shouldProvide;
4
+ constructor(item, shouldProvide) {
5
+ this._item = item;
6
+ this._shouldProvide = shouldProvide || (() => true);
7
+ }
8
+ shouldProvideContextmenu(event, designerCanvas, designItem, initiator) {
9
+ return this._shouldProvide(event, designerCanvas, designItem, initiator);
10
+ }
11
+ provideContextMenuItems(event, designerCanvas, designItem, initiator) {
12
+ return [{ ...this._item, action: (e) => this._item.action?.(e, designerCanvas, designItem, initiator) }];
13
+ }
14
+ }
15
+ //# sourceMappingURL=BasicContextMenu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BasicContextMenu.js","sourceRoot":"","sources":["../../../../../../src/elements/widgets/designerView/extensions/contextMenu/BasicContextMenu.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,gBAAgB;IACjB,KAAK,CAAuB;IAC5B,cAAc,CAA4H;IAElJ,YAAY,IAA0B,EAAE,aAAyI;QAC7K,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,cAAc,GAAG,aAAa,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACxD,CAAC;IACM,wBAAwB,CAAC,KAAiB,EAAE,cAA+B,EAAE,UAAuB,EAAE,SAA+B;QACxI,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IAC7E,CAAC;IAEM,uBAAuB,CAAC,KAAiB,EAAE,cAA+B,EAAE,UAAuB,EAAE,SAA+B;QACvI,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,CAAC,EAAC,CAAC,CAAC;IAC5G,CAAC;CACJ"}
@@ -0,0 +1,11 @@
1
+ import { IContextMenuItem } from '../../../../helper/contextMenu/IContextMenuItem.js';
2
+ import { IDesignItem } from '../../../../item/IDesignItem.js';
3
+ import { IDesignerCanvas } from '../../IDesignerCanvas.js';
4
+ import { ContextmenuInitiator, IContextMenuExtension } from './IContextMenuExtension.js';
5
+ export declare class ChildContextMenu implements IContextMenuExtension {
6
+ private _title;
7
+ private _contextMenus;
8
+ constructor(title: string, ...contextMenus: IContextMenuExtension[]);
9
+ shouldProvideContextmenu(event: MouseEvent, designerView: IDesignerCanvas, designItem: IDesignItem, initiator: ContextmenuInitiator): boolean;
10
+ provideContextMenuItems(event: MouseEvent, designerView: IDesignerCanvas, designItem: IDesignItem, initiator: ContextmenuInitiator): IContextMenuItem[];
11
+ }
@@ -0,0 +1,16 @@
1
+ import { SeperatorContextMenu } from './SeperatorContextMenu.js';
2
+ export class ChildContextMenu {
3
+ _title;
4
+ _contextMenus;
5
+ constructor(title, ...contextMenus) {
6
+ this._title = title;
7
+ this._contextMenus = contextMenus;
8
+ }
9
+ shouldProvideContextmenu(event, designerView, designItem, initiator) {
10
+ return this._contextMenus.some(x => !(x instanceof SeperatorContextMenu) && x.shouldProvideContextmenu(event, designerView, designItem, initiator));
11
+ }
12
+ provideContextMenuItems(event, designerView, designItem, initiator) {
13
+ return [{ title: this._title, children: this._contextMenus.map(x => x.shouldProvideContextmenu(event, designerView, designItem, initiator) ? x.provideContextMenuItems(event, designerView, designItem, initiator) : []).flat() }];
14
+ }
15
+ }
16
+ //# sourceMappingURL=ChildContextMenu%20copy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChildContextMenu copy.js","sourceRoot":"","sources":["../../../../../../src/elements/widgets/designerView/extensions/contextMenu/ChildContextMenu copy.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,OAAO,gBAAgB;IACjB,MAAM,CAAS;IACf,aAAa,CAA0B;IAE/C,YAAY,KAAa,EAAE,GAAG,YAAqC;QAC/D,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IACtC,CAAC;IACM,wBAAwB,CAAC,KAAiB,EAAE,YAA6B,EAAE,UAAuB,EAAE,SAA+B;QACtI,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,oBAAoB,CAAC,IAAI,CAAC,CAAC,wBAAwB,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;IACxJ,CAAC;IAEM,uBAAuB,CAAC,KAAiB,EAAE,YAA6B,EAAE,UAAuB,EAAE,SAA+B;QACrI,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,wBAAwB,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACvO,CAAC;CACJ"}
@@ -13,6 +13,7 @@ export class PasteFormatContextMenu {
13
13
  { title: '-' },
14
14
  this._createPasteFormatItem(designerCanvas, 'border'),
15
15
  this._createPasteFormatItem(designerCanvas, 'background'),
16
+ this._createPasteFormatItem(designerCanvas, 'transform'),
16
17
  this._createPasteFormatItem(designerCanvas, 'text')
17
18
  ]
18
19
  }];
@@ -1 +1 @@
1
- {"version":3,"file":"PasteFormatContextMenu.js","sourceRoot":"","sources":["../../../../../../src/elements/widgets/designerView/extensions/contextMenu/PasteFormatContextMenu.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PasteFormatContextMenu.js","sourceRoot":"","sources":["../../../../../../src/elements/widgets/designerView/extensions/contextMenu/PasteFormatContextMenu.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ export declare class TransformOriginExtension extends AbstractExtension {
9
9
  private _oldValue;
10
10
  private _offsetInControl;
11
11
  constructor(extensionManager: IExtensionManager, designerView: IDesignerCanvas, extendedItem: IDesignItem);
12
+ private _getTransformOriginCanvasPoint;
12
13
  refresh(cache: Record<string | symbol, any>, event?: Event): void;
13
14
  extend(cache: Record<string | symbol, any>, event?: Event): void;
14
15
  pointerEvent(event: PointerEvent): void;
@@ -1,7 +1,7 @@
1
1
  import { EventNames } from '../../../../../enums/EventNames.js';
2
2
  import { convertCssUnit, getCssUnit } from '../../../../helper/CssUnitConverter.js';
3
3
  import { getBoundingClientRectAlsoForDisplayContents } from '../../../../helper/ElementHelper.js';
4
- import { clearCache } from '../../../../helper/getBoxQuads.js';
4
+ import { clearCache, getResultingTransformationBetweenElementAndAllAncestors } from '../../../../helper/getBoxQuads.js';
5
5
  import { roundValue } from '../../../../helper/LayoutHelper.js';
6
6
  import { AbstractExtension } from '../AbstractExtension.js';
7
7
  export class TransformOriginExtension extends AbstractExtension {
@@ -13,10 +13,14 @@ export class TransformOriginExtension extends AbstractExtension {
13
13
  constructor(extensionManager, designerView, extendedItem) {
14
14
  super(extensionManager, designerView, extendedItem);
15
15
  }
16
- refresh(cache, event) {
16
+ _getTransformOriginCanvasPoint() {
17
17
  const computed = getComputedStyle(this.extendedItem.element);
18
18
  const to = computed.transformOrigin.split(' ');
19
- const toDOMPoint = this.designerCanvas.canvas.convertPointFromNode({ x: parseFloat(to[0]), y: parseFloat(to[1]) }, this.extendedItem.element);
19
+ const transform = getResultingTransformationBetweenElementAndAllAncestors(this.extendedItem.element, this.designerCanvas.canvas, this.designerCanvas.iframes);
20
+ return transform.transformPoint(new DOMPoint(parseFloat(to[0]), parseFloat(to[1])));
21
+ }
22
+ refresh(cache, event) {
23
+ const toDOMPoint = this._getTransformOriginCanvasPoint();
20
24
  if (this._valuesHaveChanges(toDOMPoint.x, toDOMPoint.y, this.designerCanvas.zoomFactor)) {
21
25
  this._removeAllOverlays();
22
26
  this._circle = this._drawCircle(toDOMPoint.x, toDOMPoint.y, 5 / this.designerCanvas.zoomFactor, 'svg-transform-origin');
@@ -31,9 +35,7 @@ export class TransformOriginExtension extends AbstractExtension {
31
35
  }
32
36
  }
33
37
  extend(cache, event) {
34
- const computed = getComputedStyle(this.extendedItem.element);
35
- const to = computed.transformOrigin.split(' ');
36
- const toDOMPoint = this.designerCanvas.canvas.convertPointFromNode({ x: parseFloat(to[0]), y: parseFloat(to[1]) }, this.extendedItem.element);
38
+ const toDOMPoint = this._getTransformOriginCanvasPoint();
37
39
  if (isNaN(toDOMPoint.x) || isNaN(toDOMPoint.y)) {
38
40
  this.remove();
39
41
  return;
@@ -53,7 +55,7 @@ export class TransformOriginExtension extends AbstractExtension {
53
55
  const toInPercentage = [];
54
56
  toInPercentage[0] = parseFloat(to[0]) / parseFloat(this.extendedItem.element.style.width);
55
57
  toInPercentage[1] = parseFloat(to[1]) / parseFloat(this.extendedItem.element.style.height);
56
- const toDOMPoint = this.designerCanvas.canvas.convertPointFromNode({ x: parseFloat(to[0]), y: parseFloat(to[1]) }, this.extendedItem.element);
58
+ const toDOMPoint = this._getTransformOriginCanvasPoint();
57
59
  const mp = this.designerCanvas.getNormalizedEventCoordinates(event);
58
60
  const evPoint = this.extendedItem.element.convertPointFromNode(mp, this.designerCanvas.canvas);
59
61
  const normalized = this.designerCanvas.getNormalizedEventCoordinates(event);
@@ -1 +1 @@
1
- {"version":3,"file":"TransformOriginExtension.js","sourceRoot":"","sources":["../../../../../../src/elements/widgets/designerView/extensions/transforms/TransformOriginExtension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TransformOriginExtension.js","sourceRoot":"","sources":["../../../../../../src/elements/widgets/designerView/extensions/transforms/TransformOriginExtension.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ export declare class PointerTool implements ITool {
11
11
  private _initialPoint;
12
12
  private _actionType?;
13
13
  private _actionStartedDesignItem?;
14
+ private _actionStartedClickDesignItem?;
14
15
  private _actionStartedDesignItems?;
15
16
  private _clonedItems?;
16
17
  private _copiedItemsInserted;
@@ -32,6 +33,10 @@ export declare class PointerTool implements ITool {
32
33
  private _resetTool;
33
34
  private _pointerActionTypeDrawSelection;
34
35
  private _pointerActionTypeDragOrSelect;
36
+ private _getDesignItemToStartDrag;
37
+ private _isPointInsideDesignItemQuad;
38
+ private _isPointInsideQuad;
39
+ private _isPointOnSegment;
35
40
  private checkSelectElement;
36
41
  static FindPossibleContainer(designItem: IDesignItem, designItems: IDesignItem[], event: IPoint): [newContainerElementDesignItem: IDesignItem, newContainerService: IPlacementService];
37
42
  keyboardEventHandler(designerCanvas: IDesignerCanvas, event: KeyboardEvent, currentElement: Element): void;
@@ -11,6 +11,7 @@ export class PointerTool {
11
11
  _initialPoint;
12
12
  _actionType;
13
13
  _actionStartedDesignItem;
14
+ _actionStartedClickDesignItem;
14
15
  _actionStartedDesignItems;
15
16
  _clonedItems;
16
17
  _copiedItemsInserted = false;
@@ -103,7 +104,6 @@ export class PointerTool {
103
104
  const currentDesignItem = DesignItem.GetOrCreateDesignItem(currentElement, currentElement, designerCanvas.serviceContainer, designerCanvas.instanceServiceContainer);
104
105
  if (this._actionType == null) {
105
106
  this._initialPoint = currentPoint;
106
- this._initialOffset = designerCanvas.getNormalizedOffsetInElement(event, currentElement);
107
107
  if (event.shiftKey) {
108
108
  event.preventDefault();
109
109
  this._actionType = PointerActionType.DrawSelection;
@@ -149,9 +149,11 @@ export class PointerTool {
149
149
  _resetTool() {
150
150
  this._actionType = null;
151
151
  this._actionStartedDesignItem = null;
152
+ this._actionStartedClickDesignItem = null;
152
153
  this._actionStartedDesignItems = null;
153
154
  this._movedSinceStartedAction = false;
154
155
  this._initialPoint = null;
156
+ this._initialOffset = null;
155
157
  }
156
158
  _pointerActionTypeDrawSelection(designerView, event, currentElement) {
157
159
  const drawSelectionTool = designerView.serviceContainer.designerTools.get(NamedTools.DrawSelection);
@@ -165,6 +167,7 @@ export class PointerTool {
165
167
  clearTimeout(this._holdTimeout);
166
168
  this._holdTimeout = null;
167
169
  }
170
+ let clickDesignItem = currentDesignItem;
168
171
  if (event.altKey) {
169
172
  if (event.type == EventNames.PointerDown) {
170
173
  const currentSelection = designerCanvas.instanceServiceContainer.selectionService.primarySelection;
@@ -179,11 +182,17 @@ export class PointerTool {
179
182
  currentDesignItem = DesignItem.GetOrCreateDesignItem(currentElement, currentElement, designerCanvas.serviceContainer, designerCanvas.instanceServiceContainer);
180
183
  }
181
184
  }
185
+ clickDesignItem = currentDesignItem;
186
+ }
187
+ else if (event.type == EventNames.PointerDown) {
188
+ currentDesignItem = this._getDesignItemToStartDrag(designerCanvas, currentDesignItem, currentPoint);
182
189
  }
183
190
  switch (event.type) {
184
191
  case EventNames.PointerDown:
185
192
  {
193
+ this._actionStartedClickDesignItem = clickDesignItem;
186
194
  this._actionStartedDesignItem = currentDesignItem;
195
+ this._initialOffset = designerCanvas.getNormalizedOffsetInElement(event, this._actionStartedDesignItem.element);
187
196
  this._moveItemsOffset = { x: 0, y: 0 };
188
197
  this._actionStartedDesignItems = [...designerCanvas.instanceServiceContainer.selectionService.selectedElements];
189
198
  if (designerCanvas.alignOnSnap)
@@ -196,11 +205,12 @@ export class PointerTool {
196
205
  return;
197
206
  }
198
207
  if (this._firstTimeInMove) {
199
- if (!currentDesignItem.instanceServiceContainer.selectionService.selectedElements.includes(currentDesignItem)) {
208
+ const dragDesignItem = this._actionStartedDesignItem ?? currentDesignItem;
209
+ if (!dragDesignItem.instanceServiceContainer.selectionService.selectedElements.includes(dragDesignItem)) {
200
210
  if (hasCommandKey(event))
201
- currentDesignItem.instanceServiceContainer.selectionService.setSelectedElements([...currentDesignItem.instanceServiceContainer.selectionService.selectedElements, currentDesignItem], event);
211
+ dragDesignItem.instanceServiceContainer.selectionService.setSelectedElements([...dragDesignItem.instanceServiceContainer.selectionService.selectedElements, dragDesignItem], event);
202
212
  else
203
- currentDesignItem.instanceServiceContainer.selectionService.setSelectedElements([currentDesignItem], event);
213
+ dragDesignItem.instanceServiceContainer.selectionService.setSelectedElements([dragDesignItem], event);
204
214
  this._actionStartedDesignItems = [...designerCanvas.instanceServiceContainer.selectionService.selectedElements];
205
215
  if (designerCanvas.alignOnSnap)
206
216
  designerCanvas.snapLines.calculateSnaplines(designerCanvas.instanceServiceContainer.selectionService.selectedElements);
@@ -328,7 +338,7 @@ export class PointerTool {
328
338
  this._started = false;
329
339
  if (!this._movedSinceStartedAction || this._actionType == PointerActionType.DragOrSelect) {
330
340
  if (this._previousEventName == EventNames.PointerDown && !hasCommandKey(event)) {
331
- designerCanvas.instanceServiceContainer.selectionService.setSelectedElements([this._actionStartedDesignItem], event);
341
+ designerCanvas.instanceServiceContainer.selectionService.setSelectedElements([this._actionStartedClickDesignItem ?? this._actionStartedDesignItem], event);
332
342
  }
333
343
  else {
334
344
  this.checkSelectElement(event, designerCanvas, currentDesignItem);
@@ -379,6 +389,62 @@ export class PointerTool {
379
389
  }
380
390
  }
381
391
  }
392
+ _getDesignItemToStartDrag(designerCanvas, currentDesignItem, currentPoint) {
393
+ const selectedElements = designerCanvas.instanceServiceContainer.selectionService.selectedElements;
394
+ if (!selectedElements?.length || currentDesignItem.isRootItem || selectedElements.includes(currentDesignItem)) {
395
+ return currentDesignItem;
396
+ }
397
+ for (const designItem of selectedElements) {
398
+ if (!designItem || designItem.isRootItem || designItem === currentDesignItem) {
399
+ continue;
400
+ }
401
+ if (this._isPointInsideDesignItemQuad(designerCanvas, designItem, currentPoint)) {
402
+ return designItem;
403
+ }
404
+ }
405
+ return currentDesignItem;
406
+ }
407
+ _isPointInsideDesignItemQuad(designerCanvas, designItem, point) {
408
+ const quad = designItem.element.getBoxQuads({ box: 'border', relativeTo: designerCanvas.canvas, iframes: designerCanvas.iframes })[0];
409
+ if (!quad) {
410
+ return false;
411
+ }
412
+ return this._isPointInsideQuad(point, quad);
413
+ }
414
+ _isPointInsideQuad(point, quad) {
415
+ const points = [quad.p1, quad.p2, quad.p3, quad.p4];
416
+ for (let i = 0; i < points.length; i++) {
417
+ const start = points[i];
418
+ const end = points[(i + 1) % points.length];
419
+ if (this._isPointOnSegment(point, start, end)) {
420
+ return true;
421
+ }
422
+ }
423
+ let inside = false;
424
+ for (let i = 0, j = points.length - 1; i < points.length; j = i++) {
425
+ const start = points[i];
426
+ const end = points[j];
427
+ const intersects = ((start.y > point.y) !== (end.y > point.y)) &&
428
+ (point.x < ((end.x - start.x) * (point.y - start.y)) / ((end.y - start.y) || Number.EPSILON) + start.x);
429
+ if (intersects) {
430
+ inside = !inside;
431
+ }
432
+ }
433
+ return inside;
434
+ }
435
+ _isPointOnSegment(point, start, end) {
436
+ const epsilon = 0.0001;
437
+ const crossProduct = (point.y - start.y) * (end.x - start.x) - (point.x - start.x) * (end.y - start.y);
438
+ if (Math.abs(crossProduct) > epsilon) {
439
+ return false;
440
+ }
441
+ const dotProduct = (point.x - start.x) * (end.x - start.x) + (point.y - start.y) * (end.y - start.y);
442
+ if (dotProduct < -epsilon) {
443
+ return false;
444
+ }
445
+ const squaredLength = (end.x - start.x) * (end.x - start.x) + (end.y - start.y) * (end.y - start.y);
446
+ return dotProduct <= squaredLength + epsilon;
447
+ }
382
448
  checkSelectElement(event, designerCanvas, currentDesignItem) {
383
449
  if (hasCommandKey(event)) {
384
450
  const index = designerCanvas.instanceServiceContainer.selectionService.selectedElements.indexOf(currentDesignItem);
@@ -1 +1 @@
1
- {"version":3,"file":"PointerTool.js","sourceRoot":"","sources":["../../../../../src/elements/widgets/designerView/tools/PointerTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PointerTool.js","sourceRoot":"","sources":["../../../../../src/elements/widgets/designerView/tools/PointerTool.ts"],"names":[],"mappings":"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"}