ngx-bimplus-components 0.0.83 → 0.0.84-draggable

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 (41) hide show
  1. package/assets/languages/strings_de.json +3 -36
  2. package/assets/languages/strings_en.json +2 -3
  3. package/assets/languages/strings_us.json +3 -62
  4. package/esm2022/lib/components/bimplus-floating-bar/bimplus-floating-bar.component.mjs +65 -9
  5. package/esm2022/lib/components/bimplus-floating-bar-body/bimplus-floating-bar-body.component.mjs +17 -6
  6. package/esm2022/lib/components/bimplus-floating-bar-dragger/bimplus-floating-bar-dragger.component.mjs +16 -12
  7. package/esm2022/lib/components/bimplus-floating-bar-header-content/bimplus-floating-bar-header-content.component.mjs +20 -12
  8. package/esm2022/lib/components/bimplus-floating-bar-header-logo/bimplus-floating-bar-header-logo.component.mjs +26 -16
  9. package/esm2022/lib/components/bimplus-floating-bar-hide-objects/bimplus-floating-bar-hide-objects.component.mjs +16 -51
  10. package/esm2022/lib/components/bimplus-floating-bar-isolation-objects/bimplus-floating-bar-isolation-objects.component.mjs +12 -36
  11. package/esm2022/lib/components/bimplus-floating-bar-project-navigator/bimplus-floating-bar-project-navigator.component.mjs +18 -37
  12. package/esm2022/lib/components/bimplus-main-menu/bimplus-main-menu.component.mjs +12 -3
  13. package/esm2022/lib/components/bimplus-navbar/bimplus-navbar.component.mjs +3 -3
  14. package/esm2022/lib/components/bimplus-project-menu/bimplus-project-menu.component.mjs +9 -7
  15. package/esm2022/lib/components/bimplus-tool-hub/bimplus-tool-hub.component.mjs +53 -36
  16. package/esm2022/lib/directives/draggable.directive.mjs +8 -2
  17. package/esm2022/lib/directives/resizable.directive.mjs +290 -0
  18. package/esm2022/lib/services/layout-manager.service.mjs +245 -43
  19. package/esm2022/lib/services/local-storage.service.mjs +70 -0
  20. package/esm2022/lib/services/resize-observer.service.mjs +34 -0
  21. package/esm2022/public-api.mjs +2 -1
  22. package/fesm2022/ngx-bimplus-components.mjs +954 -332
  23. package/fesm2022/ngx-bimplus-components.mjs.map +1 -1
  24. package/lib/components/bimplus-floating-bar/bimplus-floating-bar.component.d.ts +22 -4
  25. package/lib/components/bimplus-floating-bar-body/bimplus-floating-bar-body.component.d.ts +8 -3
  26. package/lib/components/bimplus-floating-bar-dragger/bimplus-floating-bar-dragger.component.d.ts +6 -3
  27. package/lib/components/bimplus-floating-bar-header-content/bimplus-floating-bar-header-content.component.d.ts +6 -3
  28. package/lib/components/bimplus-floating-bar-header-logo/bimplus-floating-bar-header-logo.component.d.ts +10 -6
  29. package/lib/components/bimplus-floating-bar-hide-objects/bimplus-floating-bar-hide-objects.component.d.ts +10 -12
  30. package/lib/components/bimplus-floating-bar-isolation-objects/bimplus-floating-bar-isolation-objects.component.d.ts +6 -9
  31. package/lib/components/bimplus-floating-bar-project-navigator/bimplus-floating-bar-project-navigator.component.d.ts +6 -8
  32. package/lib/components/bimplus-main-menu/bimplus-main-menu.component.d.ts +4 -1
  33. package/lib/components/bimplus-project-menu/bimplus-project-menu.component.d.ts +3 -3
  34. package/lib/components/bimplus-tool-hub/bimplus-tool-hub.component.d.ts +18 -11
  35. package/lib/directives/draggable.directive.d.ts +2 -1
  36. package/lib/directives/resizable.directive.d.ts +80 -0
  37. package/lib/services/layout-manager.service.d.ts +60 -3
  38. package/lib/services/local-storage.service.d.ts +18 -0
  39. package/lib/services/resize-observer.service.d.ts +12 -0
  40. package/package.json +2 -2
  41. package/public-api.d.ts +1 -0
@@ -1,15 +1,33 @@
1
+ import { ElementRef, AfterViewChecked, ChangeDetectorRef, OnInit, OnDestroy, AfterViewInit } from '@angular/core';
1
2
  import { TranslateService } from '@ngx-translate/core';
2
3
  import { BimplusLocalizedWidgetComponent } from "./../bimplus-localized-widget/bimplus-localized-widget.component";
4
+ import { LayoutManagerService } from '../../services/layout-manager.service';
5
+ import { ResizeObserverService } from '../../services/resize-observer.service';
3
6
  import * as i0 from "@angular/core";
4
- export declare class BimplusFloatingBarComponent extends BimplusLocalizedWidgetComponent {
5
- constructor(translateService: TranslateService);
7
+ export declare class BimplusFloatingBarComponent extends BimplusLocalizedWidgetComponent implements OnInit, OnDestroy, AfterViewChecked, AfterViewInit {
8
+ private layoutManagerService;
9
+ private element;
10
+ private cdr;
11
+ private resizeObserverService;
12
+ constructor(translateService: TranslateService, layoutManagerService: LayoutManagerService, element: ElementRef, cdr: ChangeDetectorRef, resizeObserverService: ResizeObserverService);
6
13
  noBody: boolean;
7
- isCollapsed: boolean;
8
14
  isFocused: boolean;
9
15
  resizeEnabled: boolean;
10
16
  autoCollapse: boolean;
11
17
  focusSelector: string;
12
18
  isVisible: boolean;
19
+ id: string;
20
+ private subscription;
21
+ private hasViewChecked;
22
+ isCollapsed: boolean;
23
+ get canNotResize(): boolean;
24
+ ngOnInit(): void;
25
+ ngOnDestroy(): void;
26
+ ngAfterViewInit(): void;
27
+ ngAfterViewChecked(): void;
28
+ handleParentAppRectSizeChange(parentRect: DOMRect | undefined): void;
29
+ dragBaseElement(event: [number, number]): void;
30
+ onResizedEnd(): void;
13
31
  static ɵfac: i0.ɵɵFactoryDeclaration<BimplusFloatingBarComponent, never>;
14
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarComponent, "lib-bimplus-floating-bar", never, { "noBody": { "alias": "noBody"; "required": false; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "isFocused": { "alias": "isFocused"; "required": false; }; "resizeEnabled": { "alias": "resizeEnabled"; "required": false; }; "autoCollapse": { "alias": "autoCollapse"; "required": false; }; "focusSelector": { "alias": "focusSelector"; "required": false; }; "isVisible": { "alias": "isVisible"; "required": false; }; }, {}, never, [".floating-bar-header-logo", ".floating-bar-header-content", ".floating-bar-dragger", ".floating-bar-body"], true, never>;
32
+ static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarComponent, "lib-bimplus-floating-bar", never, { "noBody": { "alias": "noBody"; "required": false; }; "isFocused": { "alias": "isFocused"; "required": false; }; "resizeEnabled": { "alias": "resizeEnabled"; "required": false; }; "autoCollapse": { "alias": "autoCollapse"; "required": false; }; "focusSelector": { "alias": "focusSelector"; "required": false; }; "isVisible": { "alias": "isVisible"; "required": false; }; "id": { "alias": "id"; "required": false; }; }, {}, never, [".floating-bar-header-logo", ".floating-bar-header-content", ".floating-bar-dragger", ".floating-bar-body"], true, never>;
15
33
  }
@@ -1,9 +1,14 @@
1
+ import { OnInit } from '@angular/core';
1
2
  import { TranslateService } from '@ngx-translate/core';
2
3
  import { BimplusLocalizedWidgetComponent } from "./../bimplus-localized-widget/bimplus-localized-widget.component";
4
+ import { LayoutManagerService } from '../../services/layout-manager.service';
3
5
  import * as i0 from "@angular/core";
4
- export declare class BimplusFloatingBarBodyComponent extends BimplusLocalizedWidgetComponent {
5
- constructor(translateService: TranslateService);
6
+ export declare class BimplusFloatingBarBodyComponent extends BimplusLocalizedWidgetComponent implements OnInit {
7
+ private layoutManagerService;
8
+ constructor(translateService: TranslateService, layoutManagerService: LayoutManagerService);
6
9
  isCollapsed: boolean;
10
+ parentId: string;
11
+ ngOnInit(): void;
7
12
  static ɵfac: i0.ɵɵFactoryDeclaration<BimplusFloatingBarBodyComponent, never>;
8
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarBodyComponent, "lib-bimplus-floating-bar-body", never, { "isCollapsed": { "alias": "isCollapsed"; "required": false; }; }, {}, never, ["*"], true, never>;
13
+ static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarBodyComponent, "lib-bimplus-floating-bar-body", never, { "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "parentId": { "alias": "parentId"; "required": false; }; }, {}, never, ["*"], true, never>;
9
14
  }
@@ -1,9 +1,12 @@
1
- import { EventEmitter } from '@angular/core';
1
+ import { LayoutManagerService } from '../../services/layout-manager.service';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class BimplusFloatingBarDraggerComponent {
4
+ private layoutManagerService;
5
+ constructor(layoutManagerService: LayoutManagerService);
4
6
  isCollapsed: boolean;
5
- dragElement: EventEmitter<[number, number]>;
7
+ parentId: string;
6
8
  draggerIcon: string;
9
+ onDragEnd(): void;
7
10
  static ɵfac: i0.ɵɵFactoryDeclaration<BimplusFloatingBarDraggerComponent, never>;
8
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarDraggerComponent, "lib-bimplus-floating-bar-dragger", never, { "isCollapsed": { "alias": "isCollapsed"; "required": false; }; }, { "dragElement": "dragElement"; }, never, never, true, never>;
11
+ static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarDraggerComponent, "lib-bimplus-floating-bar-dragger", never, { "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "parentId": { "alias": "parentId"; "required": false; }; }, {}, never, never, true, never>;
9
12
  }
@@ -2,17 +2,20 @@ import { EventEmitter } from '@angular/core';
2
2
  import { TranslateService } from '@ngx-translate/core';
3
3
  import { BimplusLocalizedWidgetComponent } from "./../bimplus-localized-widget/bimplus-localized-widget.component";
4
4
  import { FloatingBarItem } from '../bimplus-floating-bar/bimplus-floating-bar.interface';
5
+ import { LayoutManagerService } from '../../services/layout-manager.service';
5
6
  import * as i0 from "@angular/core";
6
7
  export declare class BimplusFloatingBarHeaderContentComponent extends BimplusLocalizedWidgetComponent {
7
- constructor(translateService: TranslateService);
8
+ private layoutManagerService;
9
+ constructor(translateService: TranslateService, layoutManagerService: LayoutManagerService);
8
10
  isCollapsed: boolean;
11
+ parentId: string;
9
12
  actionClicked: EventEmitter<string>;
10
- dragElement: EventEmitter<[number, number]>;
11
13
  private _items;
12
14
  get items(): Array<FloatingBarItem>;
13
15
  set items(value: Array<FloatingBarItem>);
14
16
  findItemById(id: string): FloatingBarItem | undefined;
15
17
  onItemClicked(action: string): void;
18
+ onDragEnd(): void;
16
19
  static ɵfac: i0.ɵɵFactoryDeclaration<BimplusFloatingBarHeaderContentComponent, never>;
17
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarHeaderContentComponent, "lib-bimplus-floating-bar-header-content", never, { "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "items": { "alias": "items"; "required": false; }; }, { "actionClicked": "actionClicked"; "dragElement": "dragElement"; }, never, never, true, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarHeaderContentComponent, "lib-bimplus-floating-bar-header-content", never, { "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "parentId": { "alias": "parentId"; "required": false; }; "items": { "alias": "items"; "required": false; }; }, { "actionClicked": "actionClicked"; }, never, never, true, never>;
18
21
  }
@@ -1,14 +1,18 @@
1
- import { EventEmitter } from '@angular/core';
1
+ import { OnInit } from '@angular/core';
2
2
  import { TranslateService } from '@ngx-translate/core';
3
3
  import { BimplusLocalizedWidgetComponent } from '../bimplus-localized-widget/bimplus-localized-widget.component';
4
+ import { LayoutManagerService } from '../../services/layout-manager.service';
4
5
  import * as i0 from "@angular/core";
5
- export declare class BimplusFloatingBarHeaderLogoComponent extends BimplusLocalizedWidgetComponent {
6
- constructor(translateService: TranslateService);
6
+ export declare class BimplusFloatingBarHeaderLogoComponent extends BimplusLocalizedWidgetComponent implements OnInit {
7
+ private layoutManagerService;
8
+ constructor(translateService: TranslateService, layoutManagerService: LayoutManagerService);
7
9
  icon: string;
8
10
  isCollapsed: boolean;
11
+ parentId: string;
9
12
  title: string;
10
- logoClicked: EventEmitter<MouseEvent>;
11
- dragElement: EventEmitter<[number, number]>;
13
+ ngOnInit(): void;
14
+ onLogoClicked(): void;
15
+ onDragEnd(): void;
12
16
  static ɵfac: i0.ɵɵFactoryDeclaration<BimplusFloatingBarHeaderLogoComponent, never>;
13
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarHeaderLogoComponent, "lib-bimplus-floating-bar-header-logo", never, { "icon": { "alias": "icon"; "required": false; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "title": { "alias": "title"; "required": false; }; }, { "logoClicked": "logoClicked"; "dragElement": "dragElement"; }, never, never, true, never>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarHeaderLogoComponent, "lib-bimplus-floating-bar-header-logo", never, { "icon": { "alias": "icon"; "required": false; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "parentId": { "alias": "parentId"; "required": false; }; "title": { "alias": "title"; "required": false; }; }, {}, never, never, true, never>;
14
18
  }
@@ -1,28 +1,26 @@
1
- import { EventEmitter, ElementRef, AfterViewChecked, ChangeDetectorRef } from '@angular/core';
1
+ import { EventEmitter, ElementRef, ChangeDetectorRef, OnInit } from '@angular/core';
2
2
  import { TranslateService } from '@ngx-translate/core';
3
3
  import { BimplusLocalizedWidgetComponent } from "./../bimplus-localized-widget/bimplus-localized-widget.component";
4
4
  import { FloatingBarItem } from '../bimplus-floating-bar/bimplus-floating-bar.interface';
5
5
  import { LayoutManagerService } from '../../services/layout-manager.service';
6
+ import { ResizeObserverService } from '../../services/resize-observer.service';
6
7
  import * as i0 from "@angular/core";
7
- export declare class BimplusFloatingBarHideObjectsComponent extends BimplusLocalizedWidgetComponent implements AfterViewChecked {
8
+ export declare class BimplusFloatingBarHideObjectsComponent extends BimplusLocalizedWidgetComponent implements OnInit {
8
9
  private element;
9
10
  private cdr;
10
- constructor(translateService: TranslateService, layoutManagerService: LayoutManagerService, element: ElementRef, cdr: ChangeDetectorRef);
11
- private hasViewChecked;
12
- protected layoutManagerService: LayoutManagerService;
11
+ private resizeObserverService;
13
12
  actionClicked: EventEmitter<string>;
14
13
  noBody: boolean;
15
- isCollapsed: boolean;
16
14
  isFocused: boolean;
17
15
  items: Array<FloatingBarItem>;
16
+ private hasViewChecked;
17
+ protected layoutManagerService: LayoutManagerService;
18
+ componentId: string;
18
19
  icon: string;
19
20
  title: string;
20
21
  focusSelectorId: string;
21
- left: number;
22
- top: number;
23
- onLogoClicked(event: MouseEvent): void;
24
- ngAfterViewChecked(): void;
25
- onDragElement(event: [number, number]): void;
22
+ constructor(translateService: TranslateService, layoutManagerService: LayoutManagerService, element: ElementRef, cdr: ChangeDetectorRef, resizeObserverService: ResizeObserverService);
23
+ ngOnInit(): void;
26
24
  static ɵfac: i0.ɵɵFactoryDeclaration<BimplusFloatingBarHideObjectsComponent, never>;
27
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarHideObjectsComponent, "lib-bimplus-floating-bar-hide-objects", never, { "noBody": { "alias": "noBody"; "required": false; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "isFocused": { "alias": "isFocused"; "required": false; }; "items": { "alias": "items"; "required": false; }; "left": { "alias": "left"; "required": false; }; "top": { "alias": "top"; "required": false; }; }, { "actionClicked": "actionClicked"; }, never, never, true, never>;
25
+ static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarHideObjectsComponent, "lib-bimplus-floating-bar-hide-objects", never, { "noBody": { "alias": "noBody"; "required": false; }; "isFocused": { "alias": "isFocused"; "required": false; }; "items": { "alias": "items"; "required": false; }; }, { "actionClicked": "actionClicked"; }, never, never, true, never>;
28
26
  }
@@ -1,28 +1,25 @@
1
- import { EventEmitter, ElementRef, AfterViewChecked, ChangeDetectorRef } from '@angular/core';
1
+ import { EventEmitter, ElementRef, AfterViewChecked, ChangeDetectorRef, OnInit } from '@angular/core';
2
2
  import { TranslateService } from '@ngx-translate/core';
3
3
  import { BimplusLocalizedWidgetComponent } from "./../bimplus-localized-widget/bimplus-localized-widget.component";
4
4
  import { FloatingBarItem } from '../bimplus-floating-bar/bimplus-floating-bar.interface';
5
5
  import { LayoutManagerService } from '../../services/layout-manager.service';
6
6
  import * as i0 from "@angular/core";
7
- export declare class BimplusFloatingBarIsolationObjectsComponent extends BimplusLocalizedWidgetComponent implements AfterViewChecked {
7
+ export declare class BimplusFloatingBarIsolationObjectsComponent extends BimplusLocalizedWidgetComponent implements OnInit, AfterViewChecked {
8
+ private layoutManagerService;
8
9
  private element;
9
10
  private cdr;
10
11
  constructor(translateService: TranslateService, layoutManagerService: LayoutManagerService, element: ElementRef, cdr: ChangeDetectorRef);
11
12
  private hasViewChecked;
12
- protected layoutManagerService: LayoutManagerService;
13
13
  actionClicked: EventEmitter<string>;
14
14
  noBody: boolean;
15
- isCollapsed: boolean;
16
15
  isFocused: boolean;
17
16
  items: Array<FloatingBarItem>;
18
- left: number;
19
- top: number;
20
17
  icon: string;
21
18
  title: string;
22
19
  focusSelectorId: string;
23
- onLogoClicked(event: MouseEvent): void;
20
+ componentId: string;
21
+ ngOnInit(): void;
24
22
  ngAfterViewChecked(): void;
25
- onDragElement(event: [number, number]): void;
26
23
  static ɵfac: i0.ɵɵFactoryDeclaration<BimplusFloatingBarIsolationObjectsComponent, never>;
27
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarIsolationObjectsComponent, "lib-bimplus-floating-bar-isolation-objects", never, { "noBody": { "alias": "noBody"; "required": false; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "isFocused": { "alias": "isFocused"; "required": false; }; "items": { "alias": "items"; "required": false; }; "left": { "alias": "left"; "required": false; }; "top": { "alias": "top"; "required": false; }; }, { "actionClicked": "actionClicked"; }, never, never, true, never>;
24
+ static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarIsolationObjectsComponent, "lib-bimplus-floating-bar-isolation-objects", never, { "noBody": { "alias": "noBody"; "required": false; }; "isFocused": { "alias": "isFocused"; "required": false; }; "items": { "alias": "items"; "required": false; }; }, { "actionClicked": "actionClicked"; }, never, never, true, never>;
28
25
  }
@@ -1,25 +1,24 @@
1
- import { EventEmitter, ElementRef, AfterViewChecked, ChangeDetectorRef } from '@angular/core';
1
+ import { EventEmitter, ElementRef, AfterViewChecked, AfterViewInit, ChangeDetectorRef } from '@angular/core';
2
2
  import { TranslateService } from '@ngx-translate/core';
3
3
  import { BimplusLocalizedWidgetComponent } from "./../bimplus-localized-widget/bimplus-localized-widget.component";
4
4
  import { FloatingBarItem } from '../bimplus-floating-bar/bimplus-floating-bar.interface';
5
5
  import { ProjectNavigatorModel, ProjectNavigatorLayer, ProjectNavigatorProject } from '../project-models/project-models.interface';
6
6
  import { LayoutManagerService } from '../../services/layout-manager.service';
7
7
  import * as i0 from "@angular/core";
8
- export declare class BimplusFloatingBarProjectNavigatorComponent extends BimplusLocalizedWidgetComponent implements AfterViewChecked {
8
+ export declare class BimplusFloatingBarProjectNavigatorComponent extends BimplusLocalizedWidgetComponent implements AfterViewInit, AfterViewChecked {
9
+ private layoutManagerService;
9
10
  private element;
10
11
  private cdr;
11
12
  constructor(translateService: TranslateService, layoutManagerService: LayoutManagerService, element: ElementRef, cdr: ChangeDetectorRef);
12
13
  private hasViewChecked;
13
- protected layoutManagerService: LayoutManagerService;
14
14
  noBody: boolean;
15
15
  isCollapsed: boolean;
16
16
  noModelsMessage: string | undefined;
17
17
  isLoading: boolean;
18
18
  loadingDataMessage: string | undefined;
19
- left: number;
20
- top: number;
21
19
  icon: string;
22
20
  title: string;
21
+ componentId: string;
23
22
  items: Array<FloatingBarItem>;
24
23
  actionClicked: EventEmitter<string>;
25
24
  isPanelToolbarVisible: boolean;
@@ -32,9 +31,8 @@ export declare class BimplusFloatingBarProjectNavigatorComponent extends Bimplus
32
31
  toggleVisibilityOfModel: EventEmitter<ProjectNavigatorModel>;
33
32
  toggleVisibilityOfLayer: EventEmitter<ProjectNavigatorLayer>;
34
33
  logoClicked: EventEmitter<MouseEvent>;
35
- onLogoClicked(event: MouseEvent): void;
34
+ ngAfterViewInit(): void;
36
35
  ngAfterViewChecked(): void;
37
- onDragElement(event: [number, number]): void;
38
36
  static ɵfac: i0.ɵɵFactoryDeclaration<BimplusFloatingBarProjectNavigatorComponent, never>;
39
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarProjectNavigatorComponent, "lib-bimplus-floating-bar-project-navigator", never, { "noBody": { "alias": "noBody"; "required": false; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "noModelsMessage": { "alias": "noModelsMessage"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; "loadingDataMessage": { "alias": "loadingDataMessage"; "required": false; }; "left": { "alias": "left"; "required": false; }; "top": { "alias": "top"; "required": false; }; "items": { "alias": "items"; "required": false; }; "isPanelToolbarVisible": { "alias": "isPanelToolbarVisible"; "required": false; }; "expandedModelTree": { "alias": "expandedModelTree"; "required": false; }; "project": { "alias": "project"; "required": false; }; }, { "actionClicked": "actionClicked"; "clickedModel": "clickedModel"; "clickedLayer": "clickedLayer"; "toggleOpacityOfModel": "toggleOpacityOfModel"; "toggleOpacityOfLayer": "toggleOpacityOfLayer"; "toggleVisibilityOfModel": "toggleVisibilityOfModel"; "toggleVisibilityOfLayer": "toggleVisibilityOfLayer"; "logoClicked": "logoClicked"; }, never, never, true, never>;
37
+ static ɵcmp: i0.ɵɵComponentDeclaration<BimplusFloatingBarProjectNavigatorComponent, "lib-bimplus-floating-bar-project-navigator", never, { "noBody": { "alias": "noBody"; "required": false; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "noModelsMessage": { "alias": "noModelsMessage"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; "loadingDataMessage": { "alias": "loadingDataMessage"; "required": false; }; "items": { "alias": "items"; "required": false; }; "isPanelToolbarVisible": { "alias": "isPanelToolbarVisible"; "required": false; }; "expandedModelTree": { "alias": "expandedModelTree"; "required": false; }; "project": { "alias": "project"; "required": false; }; }, { "actionClicked": "actionClicked"; "clickedModel": "clickedModel"; "clickedLayer": "clickedLayer"; "toggleOpacityOfModel": "toggleOpacityOfModel"; "toggleOpacityOfLayer": "toggleOpacityOfLayer"; "toggleVisibilityOfModel": "toggleVisibilityOfModel"; "toggleVisibilityOfLayer": "toggleVisibilityOfLayer"; "logoClicked": "logoClicked"; }, never, never, true, never>;
40
38
  }
@@ -57,12 +57,15 @@ export declare class BimplusMainMenuComponent extends BimplusLocalizedWidgetComp
57
57
  dividerprojectmanagementVisible: boolean;
58
58
  dividerappsVisible: boolean;
59
59
  appsWithInfo: string[];
60
+ appsOrder: string[];
61
+ menuItemsOrder: string[];
60
62
  bimplusMainMenuClicked: EventEmitter<{
61
63
  action: string;
62
64
  type: string;
63
65
  }>;
64
66
  bimplusMainMenuOverlayClicked: EventEmitter<void>;
65
67
  ngOnChanges(changes: SimpleChanges): void;
68
+ get apps(): MenuListType[];
66
69
  get footerList(): MenuListType[];
67
70
  /**--------------------------------------------------------------------------
68
71
  * check if app is subscribed
@@ -101,7 +104,7 @@ export declare class BimplusMainMenuComponent extends BimplusLocalizedWidgetComp
101
104
  _overlayClicked(): void;
102
105
  _mainMenuItemClicked(item: MenuListType, type: string, event: Event | undefined): void;
103
106
  static ɵfac: i0.ɵɵFactoryDeclaration<BimplusMainMenuComponent, never>;
104
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusMainMenuComponent, "lib-bimplus-main-menu", never, { "isEmbedded": { "alias": "isEmbedded"; "required": false; }; "isTouch": { "alias": "isTouch"; "required": false; }; "isIpadApp": { "alias": "isIpadApp"; "required": false; }; "isDev": { "alias": "isDev"; "required": false; }; "isStage": { "alias": "isStage"; "required": false; }; "hideProjectMenuIcons": { "alias": "hideProjectMenuIcons"; "required": false; }; "showHorizontalMenuIcons": { "alias": "showHorizontalMenuIcons"; "required": false; }; "projectName": { "alias": "projectName"; "required": false; }; "projectImageUrl": { "alias": "projectImageUrl"; "required": false; }; "projectExplorerUrl": { "alias": "projectExplorerUrl"; "required": false; }; "projectActiveItem": { "alias": "projectActiveItem"; "required": false; }; "projectmembersDisabled": { "alias": "projectmembersDisabled"; "required": false; }; "modelsDisabled": { "alias": "modelsDisabled"; "required": false; }; "documentsDisabled": { "alias": "documentsDisabled"; "required": false; }; "projectsettingsDisabled": { "alias": "projectsettingsDisabled"; "required": false; }; "processesDisabled": { "alias": "processesDisabled"; "required": false; }; "footerActiveItem": { "alias": "footerActiveItem"; "required": false; }; "menuActiveItem": { "alias": "menuActiveItem"; "required": false; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "showOverlay": { "alias": "showOverlay"; "required": false; }; "teammembersSubscribed": { "alias": "teammembersSubscribed"; "required": false; }; "propertymanagerSubscribed": { "alias": "propertymanagerSubscribed"; "required": false; }; "autoconverterSubscribed": { "alias": "autoconverterSubscribed"; "required": false; }; "connexisSubscribed": { "alias": "connexisSubscribed"; "required": false; }; "openProjectDisabled": { "alias": "openProjectDisabled"; "required": false; }; "bimexplorerDisabled": { "alias": "bimexplorerDisabled"; "required": false; }; "autoconverterDisabled": { "alias": "autoconverterDisabled"; "required": false; }; "connexisDisabled": { "alias": "connexisDisabled"; "required": false; }; "teammembersDisabled": { "alias": "teammembersDisabled"; "required": false; }; "propertymanagerDisabled": { "alias": "propertymanagerDisabled"; "required": false; }; "shopDisabled": { "alias": "shopDisabled"; "required": false; }; "addinsDisabled": { "alias": "addinsDisabled"; "required": false; }; "openProjectVisible": { "alias": "openProjectVisible"; "required": false; }; "bimplusProjectMenuVisible": { "alias": "bimplusProjectMenuVisible"; "required": false; }; "projectmembersVisible": { "alias": "projectmembersVisible"; "required": false; }; "modelsVisible": { "alias": "modelsVisible"; "required": false; }; "documentsVisible": { "alias": "documentsVisible"; "required": false; }; "projectsettingsVisible": { "alias": "projectsettingsVisible"; "required": false; }; "processesVisible": { "alias": "processesVisible"; "required": false; }; "bimexplorerVisible": { "alias": "bimexplorerVisible"; "required": false; }; "autoconverterVisible": { "alias": "autoconverterVisible"; "required": false; }; "connexisVisible": { "alias": "connexisVisible"; "required": false; }; "teammembersVisible": { "alias": "teammembersVisible"; "required": false; }; "propertymanagerVisible": { "alias": "propertymanagerVisible"; "required": false; }; "shopVisible": { "alias": "shopVisible"; "required": false; }; "addinsVisible": { "alias": "addinsVisible"; "required": false; }; "dividerprojectmanagementVisible": { "alias": "dividerprojectmanagementVisible"; "required": false; }; "dividerappsVisible": { "alias": "dividerappsVisible"; "required": false; }; "appsWithInfo": { "alias": "appsWithInfo"; "required": false; }; }, { "bimplusMainMenuClicked": "bimplusMainMenuClicked"; "bimplusMainMenuOverlayClicked": "bimplusMainMenuOverlayClicked"; }, never, never, true, never>;
107
+ static ɵcmp: i0.ɵɵComponentDeclaration<BimplusMainMenuComponent, "lib-bimplus-main-menu", never, { "isEmbedded": { "alias": "isEmbedded"; "required": false; }; "isTouch": { "alias": "isTouch"; "required": false; }; "isIpadApp": { "alias": "isIpadApp"; "required": false; }; "isDev": { "alias": "isDev"; "required": false; }; "isStage": { "alias": "isStage"; "required": false; }; "hideProjectMenuIcons": { "alias": "hideProjectMenuIcons"; "required": false; }; "showHorizontalMenuIcons": { "alias": "showHorizontalMenuIcons"; "required": false; }; "projectName": { "alias": "projectName"; "required": false; }; "projectImageUrl": { "alias": "projectImageUrl"; "required": false; }; "projectExplorerUrl": { "alias": "projectExplorerUrl"; "required": false; }; "projectActiveItem": { "alias": "projectActiveItem"; "required": false; }; "projectmembersDisabled": { "alias": "projectmembersDisabled"; "required": false; }; "modelsDisabled": { "alias": "modelsDisabled"; "required": false; }; "documentsDisabled": { "alias": "documentsDisabled"; "required": false; }; "projectsettingsDisabled": { "alias": "projectsettingsDisabled"; "required": false; }; "processesDisabled": { "alias": "processesDisabled"; "required": false; }; "footerActiveItem": { "alias": "footerActiveItem"; "required": false; }; "menuActiveItem": { "alias": "menuActiveItem"; "required": false; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "showOverlay": { "alias": "showOverlay"; "required": false; }; "teammembersSubscribed": { "alias": "teammembersSubscribed"; "required": false; }; "propertymanagerSubscribed": { "alias": "propertymanagerSubscribed"; "required": false; }; "autoconverterSubscribed": { "alias": "autoconverterSubscribed"; "required": false; }; "connexisSubscribed": { "alias": "connexisSubscribed"; "required": false; }; "openProjectDisabled": { "alias": "openProjectDisabled"; "required": false; }; "bimexplorerDisabled": { "alias": "bimexplorerDisabled"; "required": false; }; "autoconverterDisabled": { "alias": "autoconverterDisabled"; "required": false; }; "connexisDisabled": { "alias": "connexisDisabled"; "required": false; }; "teammembersDisabled": { "alias": "teammembersDisabled"; "required": false; }; "propertymanagerDisabled": { "alias": "propertymanagerDisabled"; "required": false; }; "shopDisabled": { "alias": "shopDisabled"; "required": false; }; "addinsDisabled": { "alias": "addinsDisabled"; "required": false; }; "openProjectVisible": { "alias": "openProjectVisible"; "required": false; }; "bimplusProjectMenuVisible": { "alias": "bimplusProjectMenuVisible"; "required": false; }; "projectmembersVisible": { "alias": "projectmembersVisible"; "required": false; }; "modelsVisible": { "alias": "modelsVisible"; "required": false; }; "documentsVisible": { "alias": "documentsVisible"; "required": false; }; "projectsettingsVisible": { "alias": "projectsettingsVisible"; "required": false; }; "processesVisible": { "alias": "processesVisible"; "required": false; }; "bimexplorerVisible": { "alias": "bimexplorerVisible"; "required": false; }; "autoconverterVisible": { "alias": "autoconverterVisible"; "required": false; }; "connexisVisible": { "alias": "connexisVisible"; "required": false; }; "teammembersVisible": { "alias": "teammembersVisible"; "required": false; }; "propertymanagerVisible": { "alias": "propertymanagerVisible"; "required": false; }; "shopVisible": { "alias": "shopVisible"; "required": false; }; "addinsVisible": { "alias": "addinsVisible"; "required": false; }; "dividerprojectmanagementVisible": { "alias": "dividerprojectmanagementVisible"; "required": false; }; "dividerappsVisible": { "alias": "dividerappsVisible"; "required": false; }; "appsWithInfo": { "alias": "appsWithInfo"; "required": false; }; "appsOrder": { "alias": "appsOrder"; "required": false; }; "menuItemsOrder": { "alias": "menuItemsOrder"; "required": false; }; }, { "bimplusMainMenuClicked": "bimplusMainMenuClicked"; "bimplusMainMenuOverlayClicked": "bimplusMainMenuOverlayClicked"; }, never, never, true, never>;
105
108
  static ngAcceptInputType_isEmbedded: unknown;
106
109
  static ngAcceptInputType_isTouch: unknown;
107
110
  static ngAcceptInputType_isIpadApp: unknown;
@@ -26,8 +26,7 @@ export declare class BimplusProjectMenuComponent extends BimplusLocalizedWidgetC
26
26
  isTouch: boolean;
27
27
  hideMenuIcons: boolean;
28
28
  showHorizontalMenuIcons: boolean;
29
- prjListThumbnail: never[];
30
- prjList: never[];
29
+ menuItemsOrder: string[];
31
30
  get prjImgUrl(): string;
32
31
  get backgroundValue(): string;
33
32
  get prjImageOverlayStyle(): {
@@ -42,6 +41,7 @@ export declare class BimplusProjectMenuComponent extends BimplusLocalizedWidgetC
42
41
  * and also it serves as info topic id
43
42
  --------------------------------------------------------------------------*/
44
43
  _menuPrjList: MenuListType[];
44
+ get menuItems(): MenuListType[];
45
45
  /**--------------------------------------------------------------------------
46
46
  * check if app is subscribed/visible
47
47
  --------------------------------------------------------------------------*/
@@ -59,7 +59,7 @@ export declare class BimplusProjectMenuComponent extends BimplusLocalizedWidgetC
59
59
  _getPrjItemClassAttributes(item: MenuListType, isTouch: boolean): string;
60
60
  _getPrjIconClassAttributes(item: MenuListType): string;
61
61
  static ɵfac: i0.ɵɵFactoryDeclaration<BimplusProjectMenuComponent, never>;
62
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusProjectMenuComponent, "lib-bimplus-project-menu", never, { "projectName": { "alias": "projectName"; "required": false; }; "projectImageUrl": { "alias": "projectImageUrl"; "required": false; }; "projectExplorerUrl": { "alias": "projectExplorerUrl"; "required": false; }; "projectActiveItem": { "alias": "projectActiveItem"; "required": false; }; "projectmembersDisabled": { "alias": "projectmembersDisabled"; "required": false; }; "modelsDisabled": { "alias": "modelsDisabled"; "required": false; }; "documentsDisabled": { "alias": "documentsDisabled"; "required": false; }; "projectsettingsDisabled": { "alias": "projectsettingsDisabled"; "required": false; }; "processesDisabled": { "alias": "processesDisabled"; "required": false; }; "projectmembersVisible": { "alias": "projectmembersVisible"; "required": false; }; "modelsVisible": { "alias": "modelsVisible"; "required": false; }; "documentsVisible": { "alias": "documentsVisible"; "required": false; }; "projectsettingsVisible": { "alias": "projectsettingsVisible"; "required": false; }; "processesVisible": { "alias": "processesVisible"; "required": false; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "isMiniMode": { "alias": "isMiniMode"; "required": false; }; "isTouch": { "alias": "isTouch"; "required": false; }; "hideMenuIcons": { "alias": "hideMenuIcons"; "required": false; }; "showHorizontalMenuIcons": { "alias": "showHorizontalMenuIcons"; "required": false; }; }, {}, never, never, true, never>;
62
+ static ɵcmp: i0.ɵɵComponentDeclaration<BimplusProjectMenuComponent, "lib-bimplus-project-menu", never, { "projectName": { "alias": "projectName"; "required": false; }; "projectImageUrl": { "alias": "projectImageUrl"; "required": false; }; "projectExplorerUrl": { "alias": "projectExplorerUrl"; "required": false; }; "projectActiveItem": { "alias": "projectActiveItem"; "required": false; }; "projectmembersDisabled": { "alias": "projectmembersDisabled"; "required": false; }; "modelsDisabled": { "alias": "modelsDisabled"; "required": false; }; "documentsDisabled": { "alias": "documentsDisabled"; "required": false; }; "projectsettingsDisabled": { "alias": "projectsettingsDisabled"; "required": false; }; "processesDisabled": { "alias": "processesDisabled"; "required": false; }; "projectmembersVisible": { "alias": "projectmembersVisible"; "required": false; }; "modelsVisible": { "alias": "modelsVisible"; "required": false; }; "documentsVisible": { "alias": "documentsVisible"; "required": false; }; "projectsettingsVisible": { "alias": "projectsettingsVisible"; "required": false; }; "processesVisible": { "alias": "processesVisible"; "required": false; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "isMiniMode": { "alias": "isMiniMode"; "required": false; }; "isTouch": { "alias": "isTouch"; "required": false; }; "hideMenuIcons": { "alias": "hideMenuIcons"; "required": false; }; "showHorizontalMenuIcons": { "alias": "showHorizontalMenuIcons"; "required": false; }; "menuItemsOrder": { "alias": "menuItemsOrder"; "required": false; }; }, {}, never, never, true, never>;
63
63
  static ngAcceptInputType_projectmembersDisabled: unknown;
64
64
  static ngAcceptInputType_modelsDisabled: unknown;
65
65
  static ngAcceptInputType_documentsDisabled: unknown;
@@ -1,23 +1,23 @@
1
- import { EventEmitter, ElementRef } from '@angular/core';
1
+ import { EventEmitter, ElementRef, OnInit, AfterViewInit } from '@angular/core';
2
2
  import { BimplusLocalizedWidgetComponent } from "./../bimplus-localized-widget/bimplus-localized-widget.component";
3
3
  import { TranslateService } from '@ngx-translate/core';
4
4
  import { ToolHubItem, ToolHubSubItem, ToolHubItemUnits, ToolHubItemStates } from './bimplus-tool-hub.interface';
5
5
  import { LayoutManagerService } from '../../services/layout-manager.service';
6
+ import { ResizeObserverService } from '../../services/resize-observer.service';
6
7
  import * as i0 from "@angular/core";
7
- export declare class BimplusToolHubComponent extends BimplusLocalizedWidgetComponent {
8
+ export declare class BimplusToolHubComponent extends BimplusLocalizedWidgetComponent implements OnInit, AfterViewInit {
9
+ private layoutManagerService;
10
+ private resizeObserverService;
8
11
  private element;
9
- constructor(translateService: TranslateService, layoutManagerService: LayoutManagerService, element: ElementRef);
10
- protected layoutManagerService: LayoutManagerService;
11
- left: number;
12
- top: number;
12
+ constructor(translateService: TranslateService, layoutManagerService: LayoutManagerService, resizeObserverService: ResizeObserverService, element: ElementRef);
13
13
  get itemStates(): Array<ToolHubItemStates>;
14
14
  set itemStates(value: Array<ToolHubItemStates>);
15
15
  setItemStates(itemStates: Array<ToolHubItemStates>): void;
16
16
  get items(): Array<ToolHubItem>;
17
17
  set items(value: Array<ToolHubItem>);
18
18
  get activeSubItems(): Array<ToolHubSubItem> | null;
19
- get isOpened(): boolean;
20
- set isOpened(value: boolean);
19
+ get isCollapsed(): boolean;
20
+ set isCollapsed(value: boolean);
21
21
  get units(): ToolHubItemUnits;
22
22
  get subMenuUnits(): ToolHubItemUnits;
23
23
  get annularSector(): string;
@@ -28,6 +28,10 @@ export declare class BimplusToolHubComponent extends BimplusLocalizedWidgetCompo
28
28
  isActive: boolean;
29
29
  itemClicked: EventEmitter<string>;
30
30
  subItemClicked: EventEmitter<string>;
31
+ private componentId;
32
+ private subscription;
33
+ ngOnInit(): void;
34
+ ngAfterViewInit(): void;
31
35
  getSVGViewBox(): string;
32
36
  getSVGCenterMenuPath(): string;
33
37
  getSVGCenterMenuItemPath(): string;
@@ -40,8 +44,10 @@ export declare class BimplusToolHubComponent extends BimplusLocalizedWidgetCompo
40
44
  toggleSubItemsView(buttonId: string): void;
41
45
  closeActiveSubItemsView(): void;
42
46
  setHoveredState(element: string, hovered: boolean): void;
47
+ private getSelector;
43
48
  dragElement(event: [number, number]): void;
44
- private _isOpened;
49
+ onDragEnd(): void;
50
+ private _isCollapsed;
45
51
  private _itemStates;
46
52
  private _items;
47
53
  private _activeSubItemsView;
@@ -55,9 +61,10 @@ export declare class BimplusToolHubComponent extends BimplusLocalizedWidgetCompo
55
61
  private _hoveredElements;
56
62
  private calculateCurrentMenuItemUnits;
57
63
  private calculateCurrentSubMenuItemUnits;
64
+ private handleParentAppRectSizeChange;
58
65
  static ɵfac: i0.ɵɵFactoryDeclaration<BimplusToolHubComponent, never>;
59
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusToolHubComponent, "lib-bimplus-tool-hub", never, { "left": { "alias": "left"; "required": false; }; "top": { "alias": "top"; "required": false; }; "itemStates": { "alias": "itemStates"; "required": false; }; "items": { "alias": "items"; "required": false; }; "isOpened": { "alias": "isOpened"; "required": false; }; "isEmbedded": { "alias": "isEmbedded"; "required": false; }; "isFocused": { "alias": "isFocused"; "required": false; }; "isActive": { "alias": "isActive"; "required": false; }; }, { "itemClicked": "itemClicked"; "subItemClicked": "subItemClicked"; }, never, never, true, never>;
60
- static ngAcceptInputType_isOpened: unknown;
66
+ static ɵcmp: i0.ɵɵComponentDeclaration<BimplusToolHubComponent, "lib-bimplus-tool-hub", never, { "itemStates": { "alias": "itemStates"; "required": false; }; "items": { "alias": "items"; "required": false; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; }; "isEmbedded": { "alias": "isEmbedded"; "required": false; }; "isFocused": { "alias": "isFocused"; "required": false; }; "isActive": { "alias": "isActive"; "required": false; }; }, { "itemClicked": "itemClicked"; "subItemClicked": "subItemClicked"; }, never, never, true, never>;
67
+ static ngAcceptInputType_isCollapsed: unknown;
61
68
  static ngAcceptInputType_isEmbedded: unknown;
62
69
  static ngAcceptInputType_isFocused: unknown;
63
70
  static ngAcceptInputType_isActive: unknown;
@@ -7,11 +7,12 @@ export declare class DraggableDirective {
7
7
  wasDragging: boolean;
8
8
  isMouseDown: boolean;
9
9
  dragging: EventEmitter<[number, number]>;
10
+ dragEnd: EventEmitter<MouseEvent>;
10
11
  clicked: EventEmitter<MouseEvent>;
11
12
  onMouseMove(event: MouseEvent): void;
12
13
  onMouseUp(): void;
13
14
  onMouseDown(event: MouseEvent): void;
14
15
  onMouseClick(event: MouseEvent): void;
15
16
  static ɵfac: i0.ɵɵFactoryDeclaration<DraggableDirective, never>;
16
- static ɵdir: i0.ɵɵDirectiveDeclaration<DraggableDirective, "[libDraggable]", never, {}, { "dragging": "dragging"; "clicked": "clicked"; }, never, never, true, never>;
17
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DraggableDirective, "[libDraggable]", never, {}, { "dragging": "dragging"; "dragEnd": "dragEnd"; "clicked": "clicked"; }, never, never, true, never>;
17
18
  }
@@ -0,0 +1,80 @@
1
+ import { ElementRef, EventEmitter, OnInit, OnDestroy } from '@angular/core';
2
+ import { LayoutManagerService } from '../services/layout-manager.service';
3
+ import { ResizeObserverService } from '../services/resize-observer.service';
4
+ import * as i0 from "@angular/core";
5
+ interface ResizerItem {
6
+ 'className': string;
7
+ 'resizeStrategy': string;
8
+ }
9
+ interface ResizableElement extends HTMLElement {
10
+ resizeStrategy?: string;
11
+ }
12
+ export declare class ResizableDirective implements OnDestroy, OnInit {
13
+ private elementRef;
14
+ private layoutManagerService;
15
+ private resizeObserverService;
16
+ resizeContactPointX: number;
17
+ resizeContactPointY: number;
18
+ resizableElements: ResizableElement[];
19
+ resizeEnabled: boolean;
20
+ resizeStarted: boolean;
21
+ resizeStart: (event: MouseEvent | TouchEvent) => void;
22
+ resizeInProgress: (event: MouseEvent | TouchEvent) => void;
23
+ boundResizeStart: (event: MouseEvent | TouchEvent) => void;
24
+ boundResizeInProgress: (event: MouseEvent | TouchEvent) => void;
25
+ boundResizeEnd: (event: MouseEvent | TouchEvent) => void;
26
+ _element: HTMLElement;
27
+ actResizeStrategy: string;
28
+ resizedEnd: EventEmitter<MouseEvent>;
29
+ resizersList: ResizerItem[];
30
+ constructor(elementRef: ElementRef, layoutManagerService: LayoutManagerService, resizeObserverService: ResizeObserverService);
31
+ ngOnInit(): void;
32
+ ngOnDestroy(): void;
33
+ resizeEnd(): void;
34
+ _getViewRect(): DOMRect;
35
+ /**--------------------------------------------------------------------------
36
+ * find if rectangle 1 is inside rectangle 2
37
+ --------------------------------------------------------------------------*/
38
+ isInsideRect(rect1: DOMRect, rect2: DOMRect): boolean;
39
+ /**--------------------------------------------------------------------------
40
+ * resize rectangle by x, y
41
+ --------------------------------------------------------------------------*/
42
+ _resizeRectangle(rect: DOMRect, resizeX: number, resizeY: number, resizeStrategy: string): DOMRect | undefined;
43
+ _maxHeightReset(obj: HTMLElement, elementRect: DOMRect): void;
44
+ resizeFromTo(obj: HTMLElement, fromX: number, fromY: number, toX: number, toY: number, resizeStrategy: string): boolean;
45
+ /**--------------------------------------------------------------------------
46
+ * resize start at the layout managaer
47
+ * open document listeners
48
+ --------------------------------------------------------------------------*/
49
+ /**--------------------------------------------------------------------------
50
+ * set the elements used for resizing
51
+ --------------------------------------------------------------------------*/
52
+ setResizers(element: HTMLElement): void;
53
+ /**--------------------------------------------------------------------------
54
+ * open mousedown, touchstart listeners on all elements allowed for resizing
55
+ --------------------------------------------------------------------------*/
56
+ openElementListenersResize(): void;
57
+ /**--------------------------------------------------------------------------
58
+ * open mouseup, touchend and mousemove, touchmove on document
59
+ --------------------------------------------------------------------------*/
60
+ openDocumentListenersResize(): void;
61
+ /**--------------------------------------------------------------------------
62
+ * close mouseup, touchend and mousemove, touchmove on document
63
+ --------------------------------------------------------------------------*/
64
+ closeDocumentListenersResize(): void;
65
+ /**--------------------------------------------------------------------------
66
+ * close mousedown, touchstart listeners on all elements allowed for resizing
67
+ --------------------------------------------------------------------------*/
68
+ closeElementListenersResize(): void;
69
+ /**--------------------------------------------------------------------------
70
+ * close all listeners
71
+ --------------------------------------------------------------------------*/
72
+ closeAllListenersResize(): void;
73
+ /**--------------------------------------------------------------------------
74
+ * setup actual resize strategy
75
+ --------------------------------------------------------------------------*/
76
+ setupResizeStrategy(event: MouseEvent | TouchEvent): void;
77
+ static ɵfac: i0.ɵɵFactoryDeclaration<ResizableDirective, never>;
78
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ResizableDirective, "[libResizable]", never, {}, { "resizedEnd": "resizedEnd"; }, never, never, true, never>;
79
+ }
80
+ export {};
@@ -1,11 +1,61 @@
1
1
  import { ElementRef } from '@angular/core';
2
+ import { ResizeObserverService } from './resize-observer.service';
3
+ import { LocalStorageService } from './local-storage.service';
4
+ import { BehaviorSubject } from 'rxjs';
2
5
  import * as i0 from "@angular/core";
6
+ export interface LayoutManagerItem {
7
+ element: ElementRef;
8
+ id: string;
9
+ selector?: string;
10
+ isCollapsed: boolean;
11
+ rememberPosition?: boolean;
12
+ left?: number;
13
+ top?: number;
14
+ width?: number;
15
+ height?: number;
16
+ }
17
+ export interface LayoutManagerConfigItem {
18
+ id: string;
19
+ isCollapsed: boolean;
20
+ left?: number;
21
+ top?: number;
22
+ width?: number;
23
+ height?: number;
24
+ }
3
25
  export declare class LayoutManagerService {
4
- constructor();
5
- checkPosition(elementRef: ElementRef, selector: string, left: number, top: number, deltaX: number, deltaY: number, forceCheck?: boolean): {
26
+ private resizeObserverService;
27
+ private localStorageService;
28
+ registeredItems$: BehaviorSubject<LayoutManagerItem[]>;
29
+ constructor(resizeObserverService: ResizeObserverService, localStorageService: LocalStorageService);
30
+ private registeredItems;
31
+ get RegisteredItems(): LayoutManagerItem[];
32
+ CONFIG: string;
33
+ /**--------------------------------------------------------------------------
34
+ * register object. object must have unique id or elementId
35
+ --------------------------------------------------------------------------*/
36
+ registerObject(obj: ElementRef, id: string, selector: string | undefined, rememberPosition: boolean, left?: number, top?: number, width?: number, height?: number): void;
37
+ _initObject(obj: LayoutManagerItem): void;
38
+ /**--------------------------------------------------------------------------
39
+ * get object configuration
40
+ * return {left, top, width, heigth}
41
+ --------------------------------------------------------------------------*/
42
+ _getObjectConfig(obj: LayoutManagerItem): LayoutManagerConfigItem | null;
43
+ _adjustObjectByConfig(obj: LayoutManagerItem): void;
44
+ _adjustObjectByWindowSize(obj: LayoutManagerItem): void;
45
+ /**--------------------------------------------------------------------------
46
+ * returns object registered in the layout manager
47
+ --------------------------------------------------------------------------*/
48
+ getItem(id: string): LayoutManagerItem | null;
49
+ /**--------------------------------------------------------------------------
50
+ * set object configuration
51
+ --------------------------------------------------------------------------*/
52
+ _setObjectConfig(obj: LayoutManagerItem, left: number, top: number, width: number, height: number): void;
53
+ _getDomElement(item: LayoutManagerItem, selector: string | undefined): HTMLElement | null;
54
+ _getElementRect(item: LayoutManagerItem, selector: string | undefined, parentRectangle: DOMRect | undefined): DOMRect | null;
55
+ checkPosition(id: string, selector: string, parentRectangle: DOMRect | undefined, deltaX: number, deltaY: number, forceCheck?: boolean): {
6
56
  deltaX: number;
7
57
  deltaY: number;
8
- };
58
+ } | undefined;
9
59
  /**--------------------------------------------------------------------------
10
60
  * find if rectangle 1 is inside rectangle 2
11
61
  --------------------------------------------------------------------------*/
@@ -32,6 +82,13 @@ export declare class LayoutManagerService {
32
82
  * translate rectangle by x, y
33
83
  --------------------------------------------------------------------------*/
34
84
  _translateRectangle(rect: DOMRect, translateX: number, translateY: number): DOMRect | undefined;
85
+ updateCollapsed(value: boolean, id?: string): void;
86
+ handleDragEnd(id: string): void;
87
+ /**--------------------------------------------------------------------------
88
+ * finalize object changes (position). object must be registered in the layout manager
89
+ * object: object to finalize
90
+ --------------------------------------------------------------------------*/
91
+ finalizeObjectChanges(id: string): void;
35
92
  static ɵfac: i0.ɵɵFactoryDeclaration<LayoutManagerService, never>;
36
93
  static ɵprov: i0.ɵɵInjectableDeclaration<LayoutManagerService>;
37
94
  }
@@ -0,0 +1,18 @@
1
+ import { Observable } from 'rxjs';
2
+ import * as i0 from "@angular/core";
3
+ export declare class LocalStorageService {
4
+ private storageSubject;
5
+ constructor();
6
+ setItem(key: string, value: string): void;
7
+ getItem(key: string): string | null;
8
+ removeItem(key: string): void;
9
+ clear(): void;
10
+ setObject(key: string, value: unknown): void;
11
+ getObject(key: string): unknown;
12
+ watchStorage(): Observable<{
13
+ key: string;
14
+ value: unknown;
15
+ } | null>;
16
+ static ɵfac: i0.ɵɵFactoryDeclaration<LocalStorageService, never>;
17
+ static ɵprov: i0.ɵɵInjectableDeclaration<LocalStorageService>;
18
+ }
@@ -0,0 +1,12 @@
1
+ import { Observable } from 'rxjs';
2
+ import * as i0 from "@angular/core";
3
+ export declare class ResizeObserverService {
4
+ private rectSize$;
5
+ private internalRectSize;
6
+ parentAppRect$: Observable<DOMRect | undefined>;
7
+ constructor();
8
+ setSize(newValue: DOMRect): void;
9
+ getParentAppRect(): DOMRect;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<ResizeObserverService, never>;
11
+ static ɵprov: i0.ɵɵInjectableDeclaration<ResizeObserverService>;
12
+ }