@foblex/flow 1.5.3 → 1.5.5

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 (51) hide show
  1. package/domain/clear-selection/clear-selection.handler.d.ts +11 -0
  2. package/domain/clear-selection/clear-selection.request.d.ts +2 -0
  3. package/domain/clear-selection/index.d.ts +2 -0
  4. package/domain/get-selection/get-selection.handler.d.ts +11 -0
  5. package/domain/get-selection/get-selection.request.d.ts +2 -0
  6. package/domain/get-selection/index.d.ts +2 -0
  7. package/domain/index.d.ts +3 -1
  8. package/domain/providers.d.ts +4 -2
  9. package/domain/select-all/index.d.ts +2 -0
  10. package/domain/{select-all.handler.d.ts → select-all/select-all.handler.d.ts} +5 -4
  11. package/domain/select-all/select-all.request.d.ts +2 -0
  12. package/esm2022/domain/clear-selection/clear-selection.handler.mjs +28 -0
  13. package/esm2022/domain/clear-selection/clear-selection.request.mjs +3 -0
  14. package/esm2022/domain/clear-selection/index.mjs +3 -0
  15. package/esm2022/domain/get-selection/get-selection.handler.mjs +35 -0
  16. package/esm2022/domain/get-selection/get-selection.request.mjs +3 -0
  17. package/esm2022/domain/get-selection/index.mjs +3 -0
  18. package/esm2022/domain/index.mjs +4 -2
  19. package/esm2022/domain/providers.mjs +7 -3
  20. package/esm2022/domain/select-all/index.mjs +3 -0
  21. package/esm2022/domain/select-all/select-all.handler.mjs +38 -0
  22. package/esm2022/domain/select-all/select-all.request.mjs +3 -0
  23. package/esm2022/f-canvas/f-canvas.component.mjs +4 -8
  24. package/esm2022/f-connection/f-connection/f-connection.component.mjs +3 -3
  25. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +3 -3
  26. package/esm2022/f-draggable/external-item/external-item.drag-handler.mjs +1 -4
  27. package/esm2022/f-draggable/f-draggable-base.mjs +148 -7
  28. package/esm2022/f-draggable/f-draggable.directive.mjs +19 -24
  29. package/esm2022/f-draggable/f-selection-change-event.mjs +7 -0
  30. package/esm2022/f-draggable/index.mjs +2 -2
  31. package/esm2022/f-draggable/single-select/index.mjs +1 -2
  32. package/esm2022/f-draggable/single-select/single-select.on-pointer-down.mjs +2 -2
  33. package/esm2022/f-flow/f-flow.component.mjs +11 -2
  34. package/f-canvas/f-canvas.component.d.ts +2 -4
  35. package/f-draggable/connections/providers.d.ts +1 -1
  36. package/f-draggable/external-item/external-item.drag-handler.d.ts +1 -2
  37. package/f-draggable/external-item/providers.d.ts +1 -1
  38. package/f-draggable/f-draggable-base.d.ts +38 -8
  39. package/f-draggable/f-draggable.directive.d.ts +6 -4
  40. package/f-draggable/index.d.ts +1 -1
  41. package/f-draggable/node/providers.d.ts +1 -1
  42. package/f-draggable/single-select/index.d.ts +0 -1
  43. package/f-flow/f-flow.component.d.ts +4 -0
  44. package/fesm2022/foblex-flow.mjs +1650 -1598
  45. package/fesm2022/foblex-flow.mjs.map +1 -1
  46. package/package.json +1 -1
  47. package/esm2022/domain/select-all.handler.mjs +0 -31
  48. package/esm2022/f-draggable/i-drag-and-drop-base.mjs +0 -147
  49. package/esm2022/f-draggable/single-select/f-selection-change-event.mjs +0 -7
  50. package/f-draggable/i-drag-and-drop-base.d.ts +0 -34
  51. /package/f-draggable/{single-select/f-selection-change-event.d.ts → f-selection-change-event.d.ts} +0 -0
@@ -1,4 +1,4 @@
1
- import { IPoint, IRect } from '@foblex/core';
1
+ import { IPoint } from '@foblex/core';
2
2
  import { IDraggableItem } from '../i-draggable-item';
3
3
  import { EFDraggableType } from '../e-f-draggable-type';
4
4
  import { FExternalItemBase } from '../../f-external-item';
@@ -13,6 +13,5 @@ export declare class ExternalItemDragHandler implements IDraggableItem {
13
13
  initialize(): void;
14
14
  private getExternalItemRect;
15
15
  move(difference: IPoint): void;
16
- getPlaceholderRect(): IRect;
17
16
  complete(): void;
18
17
  }
@@ -1,3 +1,3 @@
1
1
  import { ExternalItemOnPointerUp } from './external-item.on-pointer-up';
2
2
  import { ExternalItemPrepareDragSequence } from './external-item.prepare-drag-sequence';
3
- export declare const EXTERNAL_ITEM_PROVIDERS: (typeof ExternalItemPrepareDragSequence | typeof ExternalItemOnPointerUp)[];
3
+ export declare const EXTERNAL_ITEM_PROVIDERS: (typeof ExternalItemOnPointerUp | typeof ExternalItemPrepareDragSequence)[];
@@ -1,19 +1,49 @@
1
- import { IHasHostElement } from '@foblex/core';
2
- import { EventEmitter, InjectionToken, NgZone } from '@angular/core';
1
+ import { IHasHostElement, IPointerEvent } from '@foblex/core';
2
+ import { EventEmitter, InjectionToken } from '@angular/core';
3
3
  import { FCreateNodeEvent } from './external-item';
4
- import { FReassignConnectionEvent } from './connections/reassign-connection/f-reassign-connection.event';
5
- import { FCreateConnectionEvent } from './connections/create-connection/f-create-connection.event';
6
- import { FSelectionChangeEvent } from './single-select';
7
- import { IDragAndDropBase } from './i-drag-and-drop-base';
4
+ import { FReassignConnectionEvent } from './connections';
5
+ import { FCreateConnectionEvent } from './connections';
6
+ import { FSelectionChangeEvent } from './f-selection-change-event';
7
+ import { ICanRunOutsideAngular } from '@foblex/core/drag-and-drop/i-can-run-outside-angular';
8
8
  import * as i0 from "@angular/core";
9
9
  export declare const F_DRAGGABLE: InjectionToken<FDraggableBase>;
10
- export declare abstract class FDraggableBase extends IDragAndDropBase implements IHasHostElement {
10
+ export declare const MOUSE_EVENT_IGNORE_TIME = 800;
11
+ export declare abstract class FDraggableBase implements IHasHostElement {
12
+ protected ngZone: ICanRunOutsideAngular;
11
13
  abstract hostElement: HTMLElement;
12
14
  abstract fSelectionChange: EventEmitter<FSelectionChangeEvent>;
13
15
  abstract fCreateNode: EventEmitter<FCreateNodeEvent>;
14
16
  abstract fReassignConnection: EventEmitter<FReassignConnectionEvent>;
15
17
  abstract fCreateConnection: EventEmitter<FCreateConnectionEvent>;
16
- protected constructor(ngZone: NgZone);
18
+ private document;
19
+ private mouseListeners;
20
+ private touchListeners;
21
+ private startListeners;
22
+ isSyntheticEvent(event: MouseEvent): boolean;
23
+ private lastTouchEventTime;
24
+ isDragStarted: boolean;
25
+ private dragStartThreshold;
26
+ private dragStartDelay;
27
+ private dragStartTime;
28
+ private dragStartPosition;
29
+ abstract disabled: boolean;
30
+ private moveHandler;
31
+ protected constructor(ngZone: ICanRunOutsideAngular);
32
+ private onMouseDown;
33
+ private onTouchDown;
34
+ private onMouseMove;
35
+ private onTouchMove;
36
+ private checkDragSequenceToStart;
37
+ protected abstract prepareDragSequence(event: IPointerEvent): void;
38
+ private onMouseUp;
39
+ private onTouchUp;
40
+ private endDragSequence;
41
+ protected abstract finalizeDragSequence(): void;
42
+ abstract onPointerDown(event: IPointerEvent): boolean;
43
+ abstract onPointerMove(event: IPointerEvent): void;
44
+ abstract onPointerUp(event: IPointerEvent): void;
45
+ subscribe(document: Document): void;
46
+ unsubscribe(): void;
17
47
  static ɵfac: i0.ɵɵFactoryDeclaration<FDraggableBase, never>;
18
48
  static ɵdir: i0.ɵɵDirectiveDeclaration<FDraggableBase, never, never, {}, {}, never, never, false, never>;
19
49
  }
@@ -4,14 +4,17 @@ import { FComponentsStore } from '../f-components-store';
4
4
  import { FDraggableDataContext } from './f-draggable-data-context';
5
5
  import { FCreateNodeEvent } from './external-item';
6
6
  import { IPointerEvent } from '@foblex/core';
7
- import { FSelectionChangeEvent } from './single-select';
8
7
  import { FCreateConnectionEvent, FReassignConnectionEvent } from './connections';
8
+ import { FSelectionChangeEvent } from './f-selection-change-event';
9
+ import { FFlowMediator } from '../f-mediator';
9
10
  import * as i0 from "@angular/core";
10
11
  export declare class FDraggableDirective extends FDraggableBase implements OnInit, AfterViewInit, OnDestroy {
11
12
  private elementReference;
12
13
  private fDraggableDataContext;
13
14
  private injector;
14
15
  private fComponentsStore;
16
+ private fMediator;
17
+ private doc;
15
18
  private subscriptions$;
16
19
  disabled: boolean;
17
20
  get hostElement(): HTMLElement;
@@ -19,15 +22,14 @@ export declare class FDraggableDirective extends FDraggableBase implements OnIni
19
22
  fCreateNode: EventEmitter<FCreateNodeEvent>;
20
23
  fReassignConnection: EventEmitter<FReassignConnectionEvent>;
21
24
  fCreateConnection: EventEmitter<FCreateConnectionEvent>;
22
- private readonly document;
23
- private selectedItemsOnPointerDown;
24
- constructor(elementReference: ElementRef<HTMLElement>, fDraggableDataContext: FDraggableDataContext, ngZone: NgZone, injector: Injector, fComponentsStore: FComponentsStore, document: any);
25
+ constructor(elementReference: ElementRef<HTMLElement>, fDraggableDataContext: FDraggableDataContext, ngZone: NgZone, injector: Injector, fComponentsStore: FComponentsStore, fMediator: FFlowMediator, doc: Document);
25
26
  ngOnInit(): void;
26
27
  ngAfterViewInit(): void;
27
28
  onPointerDown(event: IPointerEvent): boolean;
28
29
  protected prepareDragSequence(event: IPointerEvent): void;
29
30
  onPointerMove(event: IPointerEvent): void;
30
31
  onPointerUp(event: IPointerEvent): void;
32
+ protected finalizeDragSequence(): void;
31
33
  private emitSelectionChangeEvent;
32
34
  ngOnDestroy(): void;
33
35
  static ɵfac: i0.ɵɵFactoryDeclaration<FDraggableDirective, never>;
@@ -8,5 +8,5 @@ export * from './e-f-draggable-type';
8
8
  export * from './f-draggable.directive';
9
9
  export * from './f-draggable-base';
10
10
  export * from './f-draggable-data-context';
11
- export * from './i-drag-and-drop-base';
11
+ export * from './f-selection-change-event';
12
12
  export * from './i-draggable-item';
@@ -1,4 +1,4 @@
1
1
  import { NodeOnPointerUp } from './node.on-pointer-up';
2
2
  import { NodePrepareDragSequence } from './node.prepare-drag-sequence';
3
3
  import { IsConnectionUnderNodeHandler } from './domain/is-connection-under-node';
4
- export declare const NODE_PROVIDERS: (typeof IsConnectionUnderNodeHandler | typeof NodeOnPointerUp | typeof NodePrepareDragSequence)[];
4
+ export declare const NODE_PROVIDERS: (typeof NodeOnPointerUp | typeof NodePrepareDragSequence | typeof IsConnectionUnderNodeHandler)[];
@@ -1,3 +1,2 @@
1
1
  export * from './providers';
2
- export * from './f-selection-change-event';
3
2
  export * from './single-select.on-pointer-down';
@@ -4,6 +4,7 @@ import { FComponentsStore } from '../f-components-store';
4
4
  import { GetAllNodesRectHandler } from '../domain';
5
5
  import { IRect } from '@foblex/core';
6
6
  import { FFlowMediator } from '../f-mediator';
7
+ import { FSelectionChangeEvent } from '../f-draggable';
7
8
  import * as i0 from "@angular/core";
8
9
  export declare class FFlowComponent extends FFlowBase implements OnInit, AfterContentInit, OnDestroy {
9
10
  private elementReference;
@@ -20,6 +21,9 @@ export declare class FFlowComponent extends FFlowBase implements OnInit, AfterCo
20
21
  ngAfterContentInit(): void;
21
22
  private subscribeOnElementsChanges;
22
23
  getNodesRect(): IRect;
24
+ getSelection(): FSelectionChangeEvent;
25
+ selectAll(): void;
26
+ clearSelection(): void;
23
27
  ngOnDestroy(): void;
24
28
  static ɵfac: i0.ɵɵFactoryDeclaration<FFlowComponent, never>;
25
29
  static ɵcmp: i0.ɵɵComponentDeclaration<FFlowComponent, "f-flow", never, { "fFlowId": { "alias": "fFlowId"; "required": false; }; }, { "fLoaded": "fLoaded"; }, never, ["[fDefinitions]", "f-background", "f-line-alignment", "f-canvas", "f-selection-area"], false, never>;