@plait/core 0.1.1 → 0.1.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 (60) hide show
  1. package/board/board.component.d.ts +8 -21
  2. package/board/board.component.interface.d.ts +0 -2
  3. package/constants/selection.d.ts +1 -0
  4. package/core/element/element.component.d.ts +1 -1
  5. package/core/element/plugin-element.d.ts +1 -1
  6. package/core/toolbar/toolbar.component.d.ts +1 -1
  7. package/esm2020/board/board.component.interface.mjs +1 -1
  8. package/esm2020/board/board.component.mjs +94 -279
  9. package/esm2020/constants/selection.mjs +2 -0
  10. package/esm2020/core/element/element.component.mjs +5 -5
  11. package/esm2020/core/element/plugin-element.mjs +9 -9
  12. package/esm2020/core/toolbar/toolbar.component.mjs +4 -4
  13. package/esm2020/interfaces/board.mjs +11 -2
  14. package/esm2020/interfaces/point.mjs +6 -2
  15. package/esm2020/interfaces/viewport.mjs +2 -2
  16. package/esm2020/plait.module.mjs +5 -5
  17. package/esm2020/plugins/create-board.mjs +2 -1
  18. package/esm2020/plugins/with-hand.mjs +6 -6
  19. package/esm2020/plugins/with-moving.mjs +91 -0
  20. package/esm2020/plugins/with-selection.mjs +48 -13
  21. package/esm2020/plugins/with-viewport.mjs +29 -0
  22. package/esm2020/public-api.mjs +2 -1
  23. package/esm2020/utils/board.mjs +7 -3
  24. package/esm2020/utils/common.mjs +15 -0
  25. package/esm2020/utils/element.mjs +3 -3
  26. package/esm2020/utils/helper.mjs +14 -1
  27. package/esm2020/utils/index.mjs +4 -2
  28. package/esm2020/utils/moving-element.mjs +15 -0
  29. package/esm2020/utils/selected-element.mjs +14 -1
  30. package/esm2020/utils/viewport.mjs +207 -0
  31. package/esm2020/utils/weak-maps.mjs +5 -1
  32. package/fesm2015/plait-core.mjs +689 -626
  33. package/fesm2015/plait-core.mjs.map +1 -1
  34. package/fesm2020/plait-core.mjs +710 -644
  35. package/fesm2020/plait-core.mjs.map +1 -1
  36. package/interfaces/board.d.ts +4 -10
  37. package/interfaces/custom-types.d.ts +2 -2
  38. package/interfaces/node.d.ts +1 -1
  39. package/interfaces/operation.d.ts +7 -7
  40. package/interfaces/path.d.ts +1 -1
  41. package/interfaces/plugin.d.ts +1 -1
  42. package/interfaces/point.d.ts +4 -1
  43. package/interfaces/viewport.d.ts +4 -3
  44. package/package.json +3 -3
  45. package/plugins/with-moving.d.ts +2 -0
  46. package/plugins/with-selection.d.ts +4 -1
  47. package/plugins/with-viewport.d.ts +2 -0
  48. package/public-api.d.ts +1 -0
  49. package/styles/styles.scss +3 -1
  50. package/utils/board.d.ts +2 -2
  51. package/utils/common.d.ts +1 -0
  52. package/utils/helper.d.ts +9 -0
  53. package/utils/index.d.ts +3 -1
  54. package/utils/moving-element.d.ts +5 -0
  55. package/utils/selected-element.d.ts +2 -0
  56. package/utils/viewport.d.ts +36 -0
  57. package/utils/weak-maps.d.ts +4 -0
  58. package/esm2020/utils/matrix.mjs +0 -170
  59. package/utils/matrix.d.ts +0 -82
  60. /package/{plait-core.d.ts → index.d.ts} +0 -0
@@ -1,22 +1,21 @@
1
- import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, OnDestroy, OnInit, Renderer2, SimpleChanges, TemplateRef } from '@angular/core';
1
+ import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, Renderer2, SimpleChanges, TemplateRef } from '@angular/core';
2
2
  import { RoughSVG } from 'roughjs/bin/svg';
3
3
  import { Subject } from 'rxjs';
4
- import { PlaitBoard, PlaitBoardChangeEvent, PlaitBoardOptions, PlaitBoardViewport } from '../interfaces/board';
4
+ import { PlaitBoard, PlaitBoardChangeEvent, PlaitBoardOptions } from '../interfaces/board';
5
5
  import { PlaitElement } from '../interfaces/element';
6
6
  import { PlaitPlugin } from '../interfaces/plugin';
7
7
  import { Viewport } from '../interfaces/viewport';
8
8
  import { BoardComponentInterface } from './board.component.interface';
9
- import { RectangleClient } from '../interfaces/rectangle-client';
10
9
  import * as i0 from "@angular/core";
11
10
  export declare class PlaitBoardComponent implements BoardComponentInterface, OnInit, OnChanges, AfterViewInit, OnDestroy {
12
11
  cdr: ChangeDetectorRef;
13
12
  private renderer2;
14
13
  private elementRef;
14
+ private ngZone;
15
15
  hasInitialized: boolean;
16
16
  board: PlaitBoard;
17
17
  roughSVG: RoughSVG;
18
18
  destroy$: Subject<void>;
19
- viewportState: PlaitBoardViewport;
20
19
  private resizeObserver;
21
20
  plaitValue: PlaitElement[];
22
21
  plaitViewport: Viewport;
@@ -24,42 +23,30 @@ export declare class PlaitBoardComponent implements BoardComponentInterface, OnI
24
23
  plaitOptions: PlaitBoardOptions;
25
24
  plaitChange: EventEmitter<PlaitBoardChangeEvent>;
26
25
  plaitBoardInitialized: EventEmitter<PlaitBoard>;
27
- get isFocused(): import("@plait/core").Selection | null;
28
26
  get host(): SVGSVGElement;
29
27
  get hostClass(): string;
30
28
  get readonly(): boolean;
31
- get focused(): import("@plait/core").Selection | null;
29
+ get isFocused(): boolean;
32
30
  get nativeElement(): HTMLElement;
33
31
  svg: ElementRef;
34
32
  toolbarTemplateRef: TemplateRef<any>;
35
33
  viewportContainer: ElementRef;
36
- constructor(cdr: ChangeDetectorRef, renderer2: Renderer2, elementRef: ElementRef<HTMLElement>);
34
+ constructor(cdr: ChangeDetectorRef, renderer2: Renderer2, elementRef: ElementRef<HTMLElement>, ngZone: NgZone);
37
35
  ngOnInit(): void;
36
+ mouseLeaveListener(): void;
38
37
  ngOnChanges(changes: SimpleChanges): void;
39
38
  ngAfterViewInit(): void;
40
39
  private initializePlugins;
41
40
  private initializeEvents;
42
41
  private viewportScrollListener;
43
42
  private elementResizeListener;
44
- private updateViewportState;
45
- initViewportContainer(): void;
46
- initViewport(viewport?: import("../interfaces/viewport").BaseViewport): void;
47
- calcViewBox(zoom?: number): void;
48
- getMatrix(): number[];
49
- setScrollLeft(left: number): void;
50
- setScrollTop(top: number): void;
51
- setScroll(left: number, top: number): void;
52
- private updateViewBoxStyles;
53
- private updateViewportScrolling;
54
- setViewport(): void;
55
43
  trackBy: (index: number, element: PlaitElement) => number;
56
44
  adaptHandle(): void;
57
- zoomInHandle(): void;
45
+ zoomInHandle(isCenter?: boolean): void;
58
46
  zoomOutHandle(): void;
59
47
  resetZoomHandel(): void;
60
48
  ngOnDestroy(): void;
61
49
  markForCheck(): void;
62
- scrollToRectangle(client: RectangleClient): void;
63
50
  static ɵfac: i0.ɵɵFactoryDeclaration<PlaitBoardComponent, never>;
64
- static ɵcmp: i0.ɵɵComponentDeclaration<PlaitBoardComponent, "plait-board", never, { "plaitValue": "plaitValue"; "plaitViewport": "plaitViewport"; "plaitPlugins": "plaitPlugins"; "plaitOptions": "plaitOptions"; }, { "plaitChange": "plaitChange"; "plaitBoardInitialized": "plaitBoardInitialized"; }, ["toolbarTemplateRef"], ["*"]>;
51
+ static ɵcmp: i0.ɵɵComponentDeclaration<PlaitBoardComponent, "plait-board", never, { "plaitValue": "plaitValue"; "plaitViewport": "plaitViewport"; "plaitPlugins": "plaitPlugins"; "plaitOptions": "plaitOptions"; }, { "plaitChange": "plaitChange"; "plaitBoardInitialized": "plaitBoardInitialized"; }, ["toolbarTemplateRef"], ["*"], false, never>;
65
52
  }
@@ -1,8 +1,6 @@
1
1
  import { ChangeDetectorRef } from '@angular/core';
2
- import { RectangleClient } from '../interfaces/rectangle-client';
3
2
  export interface BoardComponentInterface {
4
3
  markForCheck: () => void;
5
- scrollToRectangle: (client: RectangleClient) => void;
6
4
  cdr: ChangeDetectorRef;
7
5
  nativeElement: HTMLElement;
8
6
  }
@@ -0,0 +1 @@
1
+ export declare const ATTACHED_ELEMENT_CLASS_NAME = "plait-board-attached";
@@ -29,5 +29,5 @@ export declare class PlaitElementComponent implements OnInit, OnChanges, OnDestr
29
29
  };
30
30
  ngOnDestroy(): void;
31
31
  static ɵfac: i0.ɵɵFactoryDeclaration<PlaitElementComponent, never>;
32
- static ɵcmp: i0.ɵɵComponentDeclaration<PlaitElementComponent, "plait-element", never, { "index": "index"; "element": "element"; "board": "board"; "viewport": "viewport"; "selection": "selection"; }, {}, never, never>;
32
+ static ɵcmp: i0.ɵɵComponentDeclaration<PlaitElementComponent, "plait-element", never, { "index": "index"; "element": "element"; "board": "board"; "viewport": "viewport"; "selection": "selection"; }, {}, never, never, false, never>;
33
33
  }
@@ -16,6 +16,6 @@ export declare abstract class PlaitPluginElementComponent<T extends PlaitElement
16
16
  ngOnInit(): void;
17
17
  ngOnDestroy(): void;
18
18
  static ɵfac: i0.ɵɵFactoryDeclaration<PlaitPluginElementComponent<any>, never>;
19
- static ɵdir: i0.ɵɵDirectiveDeclaration<PlaitPluginElementComponent<any>, never, never, { "context": "context"; }, {}, never>;
19
+ static ɵdir: i0.ɵɵDirectiveDeclaration<PlaitPluginElementComponent<any>, never, never, { "context": "context"; }, {}, never, never, false, never>;
20
20
  }
21
21
  export declare const ELEMENT_TO_PLUGIN_COMPONENT: WeakMap<PlaitElement, PlaitPluginElementComponent<PlaitElement>>;
@@ -17,5 +17,5 @@ export declare class PlaitToolbarComponent {
17
17
  zoomOut(): void;
18
18
  resetZoom(): void;
19
19
  static ɵfac: i0.ɵɵFactoryDeclaration<PlaitToolbarComponent, never>;
20
- static ɵcmp: i0.ɵɵComponentDeclaration<PlaitToolbarComponent, "plait-toolbar", never, { "board": "board"; }, { "adaptHandle": "adaptHandle"; "zoomInHandle": "zoomInHandle"; "zoomOutHandle": "zoomOutHandle"; "resetZoomHandel": "resetZoomHandel"; }, never, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<PlaitToolbarComponent, "plait-toolbar", never, { "board": "board"; }, { "adaptHandle": "adaptHandle"; "zoomInHandle": "zoomInHandle"; "zoomOutHandle": "zoomOutHandle"; "resetZoomHandel": "resetZoomHandel"; }, never, never, false, never>;
21
21
  }
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9hcmQuY29tcG9uZW50LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3BsYWl0L3NyYy9ib2FyZC9ib2FyZC5jb21wb25lbnQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVjdGFuZ2xlQ2xpZW50IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9yZWN0YW5nbGUtY2xpZW50JztcblxuZXhwb3J0IGludGVyZmFjZSBCb2FyZENvbXBvbmVudEludGVyZmFjZSB7XG4gICAgbWFya0ZvckNoZWNrOiAoKSA9PiB2b2lkO1xuICAgIHNjcm9sbFRvUmVjdGFuZ2xlOiAoY2xpZW50OiBSZWN0YW5nbGVDbGllbnQpID0+IHZvaWQ7XG4gICAgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZjtcbiAgICBuYXRpdmVFbGVtZW50OiBIVE1MRWxlbWVudDtcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9hcmQuY29tcG9uZW50LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3BsYWl0L3NyYy9ib2FyZC9ib2FyZC5jb21wb25lbnQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJvYXJkQ29tcG9uZW50SW50ZXJmYWNlIHtcbiAgICBtYXJrRm9yQ2hlY2s6ICgpID0+IHZvaWQ7XG4gICAgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZjtcbiAgICBuYXRpdmVFbGVtZW50OiBIVE1MRWxlbWVudDtcbn1cbiJdfQ==