@plait/draw 0.57.0 → 0.58.0

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 (145) hide show
  1. package/constants/draw.d.ts +1 -0
  2. package/constants/geometry.d.ts +78 -2
  3. package/constants/index.d.ts +1 -0
  4. package/constants/pointer.d.ts +4 -2
  5. package/engines/index.d.ts +3 -3
  6. package/engines/table/table.d.ts +15 -1
  7. package/engines/uml/actor.d.ts +2 -0
  8. package/engines/uml/combined-fragment.d.ts +3 -0
  9. package/engines/uml/container.d.ts +2 -0
  10. package/engines/uml/package.d.ts +3 -0
  11. package/esm2022/constants/draw.mjs +2 -0
  12. package/esm2022/constants/geometry.mjs +69 -4
  13. package/esm2022/constants/index.mjs +2 -1
  14. package/esm2022/constants/pointer.mjs +9 -3
  15. package/esm2022/engines/basic-shapes/cloud.mjs +1 -1
  16. package/esm2022/engines/basic-shapes/comment.mjs +1 -1
  17. package/esm2022/engines/basic-shapes/diamond.mjs +2 -2
  18. package/esm2022/engines/basic-shapes/parallelogram.mjs +2 -2
  19. package/esm2022/engines/basic-shapes/pentagon.mjs +1 -1
  20. package/esm2022/engines/basic-shapes/round-comment.mjs +2 -2
  21. package/esm2022/engines/basic-shapes/star.mjs +1 -1
  22. package/esm2022/engines/basic-shapes/trapezoid.mjs +2 -2
  23. package/esm2022/engines/basic-shapes/triangle.mjs +2 -2
  24. package/esm2022/engines/flowchart/database.mjs +2 -2
  25. package/esm2022/engines/flowchart/display.mjs +1 -1
  26. package/esm2022/engines/flowchart/document.mjs +1 -1
  27. package/esm2022/engines/flowchart/hard-disk.mjs +2 -2
  28. package/esm2022/engines/flowchart/internal-storage.mjs +2 -2
  29. package/esm2022/engines/flowchart/manual-input.mjs +2 -2
  30. package/esm2022/engines/flowchart/manual-loop.mjs +2 -2
  31. package/esm2022/engines/flowchart/merge.mjs +1 -1
  32. package/esm2022/engines/flowchart/multi-document.mjs +1 -1
  33. package/esm2022/engines/flowchart/note-curly-left.mjs +2 -2
  34. package/esm2022/engines/flowchart/note-curly-right.mjs +2 -2
  35. package/esm2022/engines/flowchart/note-square.mjs +1 -1
  36. package/esm2022/engines/flowchart/off-page.mjs +2 -2
  37. package/esm2022/engines/flowchart/or.mjs +1 -8
  38. package/esm2022/engines/flowchart/predefined-process.mjs +1 -1
  39. package/esm2022/engines/flowchart/summing-junction.mjs +1 -8
  40. package/esm2022/engines/index.mjs +14 -5
  41. package/esm2022/engines/table/table.mjs +58 -10
  42. package/esm2022/engines/uml/actor.mjs +102 -0
  43. package/esm2022/engines/uml/combined-fragment.mjs +66 -0
  44. package/esm2022/engines/uml/container.mjs +44 -0
  45. package/esm2022/engines/uml/package.mjs +75 -0
  46. package/esm2022/generators/geometry-shape.generator.mjs +3 -3
  47. package/esm2022/generators/index.mjs +7 -0
  48. package/esm2022/generators/line-active.generator.mjs +3 -3
  49. package/esm2022/generators/line-auto-complete.generator.mjs +1 -1
  50. package/esm2022/generators/single-text.generator.mjs +16 -0
  51. package/esm2022/generators/table.generator.mjs +20 -0
  52. package/esm2022/generators/text.generator.mjs +134 -0
  53. package/esm2022/geometry.component.mjs +63 -76
  54. package/esm2022/image.component.mjs +8 -25
  55. package/esm2022/interfaces/element.mjs +2 -1
  56. package/esm2022/interfaces/engine.mjs +2 -0
  57. package/esm2022/interfaces/geometry.mjs +14 -1
  58. package/esm2022/interfaces/image.mjs +1 -1
  59. package/esm2022/interfaces/index.mjs +27 -4
  60. package/esm2022/interfaces/line.mjs +1 -1
  61. package/esm2022/interfaces/table.mjs +9 -2
  62. package/esm2022/line.component.mjs +8 -25
  63. package/esm2022/plugins/with-draw-fragment.mjs +3 -1
  64. package/esm2022/plugins/with-draw-hotkey.mjs +12 -3
  65. package/esm2022/plugins/with-draw-resize.mjs +1 -1
  66. package/esm2022/plugins/with-draw.mjs +6 -2
  67. package/esm2022/plugins/with-geometry-create.mjs +2 -1
  68. package/esm2022/plugins/with-geometry-resize.mjs +1 -1
  69. package/esm2022/plugins/with-line-auto-complete-reaction.mjs +2 -2
  70. package/esm2022/plugins/with-line-bound-reaction.mjs +3 -4
  71. package/esm2022/plugins/with-line-create.mjs +3 -3
  72. package/esm2022/plugins/with-line-resize.mjs +3 -3
  73. package/esm2022/plugins/with-swimlane-create.mjs +132 -0
  74. package/esm2022/plugins/with-swimlane.mjs +21 -0
  75. package/esm2022/plugins/with-table-resize.mjs +130 -0
  76. package/esm2022/plugins/with-table.mjs +53 -7
  77. package/esm2022/public-api.mjs +2 -1
  78. package/esm2022/table.component.mjs +115 -24
  79. package/esm2022/transforms/geometry-text.mjs +6 -3
  80. package/esm2022/transforms/geometry.mjs +3 -2
  81. package/esm2022/transforms/index.mjs +11 -2
  82. package/esm2022/transforms/multi-text-geometry-text.mjs +15 -0
  83. package/esm2022/transforms/swimlane.mjs +97 -0
  84. package/esm2022/transforms/table-text.mjs +44 -0
  85. package/esm2022/utils/clipboard.mjs +15 -2
  86. package/esm2022/utils/common.mjs +130 -0
  87. package/esm2022/utils/geometry.mjs +49 -63
  88. package/esm2022/utils/hit.mjs +47 -18
  89. package/esm2022/utils/index.mjs +4 -1
  90. package/esm2022/utils/line/elbow.mjs +2 -2
  91. package/esm2022/utils/line/line-arrow.mjs +2 -2
  92. package/esm2022/utils/line/line-basic.mjs +4 -4
  93. package/esm2022/utils/line/line-common.mjs +2 -2
  94. package/esm2022/utils/memorize.mjs +7 -1
  95. package/esm2022/utils/multi-text-geometry.mjs +61 -0
  96. package/esm2022/utils/position/geometry.mjs +2 -40
  97. package/esm2022/utils/selected.mjs +14 -1
  98. package/esm2022/utils/shape.mjs +5 -2
  99. package/esm2022/utils/snap-resizing.mjs +7 -7
  100. package/esm2022/utils/style/stroke.mjs +4 -10
  101. package/esm2022/utils/swimlane.mjs +120 -0
  102. package/esm2022/utils/table.mjs +124 -0
  103. package/fesm2022/plait-draw.mjs +6158 -4642
  104. package/fesm2022/plait-draw.mjs.map +1 -1
  105. package/generators/index.d.ts +6 -0
  106. package/generators/line-auto-complete.generator.d.ts +2 -2
  107. package/generators/single-text.generator.d.ts +11 -0
  108. package/generators/table.generator.d.ts +9 -0
  109. package/generators/text.generator.d.ts +43 -0
  110. package/geometry.component.d.ts +11 -17
  111. package/image.component.d.ts +5 -11
  112. package/interfaces/element.d.ts +2 -1
  113. package/interfaces/engine.d.ts +16 -0
  114. package/interfaces/geometry.d.ts +23 -18
  115. package/interfaces/image.d.ts +4 -2
  116. package/interfaces/index.d.ts +12 -3
  117. package/interfaces/line.d.ts +4 -5
  118. package/interfaces/table.d.ts +14 -1
  119. package/line.component.d.ts +4 -10
  120. package/package.json +1 -1
  121. package/plugins/with-swimlane-create.d.ts +8 -0
  122. package/plugins/with-swimlane.d.ts +2 -0
  123. package/plugins/with-table-resize.d.ts +2 -0
  124. package/plugins/with-table.d.ts +5 -1
  125. package/public-api.d.ts +1 -0
  126. package/table.component.d.ts +17 -11
  127. package/transforms/geometry.d.ts +2 -2
  128. package/transforms/index.d.ts +8 -2
  129. package/transforms/multi-text-geometry-text.d.ts +4 -0
  130. package/transforms/swimlane.d.ts +6 -0
  131. package/transforms/table-text.d.ts +4 -0
  132. package/utils/clipboard.d.ts +2 -0
  133. package/utils/common.d.ts +27 -0
  134. package/utils/geometry.d.ts +34 -15
  135. package/utils/hit.d.ts +4 -2
  136. package/utils/index.d.ts +3 -0
  137. package/utils/line/line-common.d.ts +3 -3
  138. package/utils/memorize.d.ts +3 -1
  139. package/utils/multi-text-geometry.d.ts +14 -0
  140. package/utils/position/geometry.d.ts +8 -21
  141. package/utils/selected.d.ts +4 -0
  142. package/utils/shape.d.ts +2 -2
  143. package/utils/style/stroke.d.ts +4 -5
  144. package/utils/swimlane.d.ts +52 -0
  145. package/utils/table.d.ts +26 -0
@@ -1,27 +1,20 @@
1
1
  import { PlaitBoard, Point, RectangleClient, ThemeColorMode } from '@plait/core';
2
- import { GeometryShapes, BasicShapes, PlaitGeometry, FlowchartSymbols } from '../interfaces/geometry';
2
+ import { GeometryShapes, BasicShapes, PlaitGeometry, FlowchartSymbols, UMLSymbols } from '../interfaces/geometry';
3
3
  import { Alignment, CustomText } from '@plait/text';
4
4
  import { Element } from 'slate';
5
5
  import { DrawPointerType } from '../constants';
6
6
  import { Options } from 'roughjs/bin/core';
7
7
  import { PlaitShapeElement } from '../interfaces';
8
+ import { PlaitDrawShapeText } from '../generators/text.generator';
8
9
  export type GeometryStyleOptions = Pick<PlaitGeometry, 'fill' | 'strokeColor' | 'strokeWidth'>;
9
10
  export type TextProperties = Partial<CustomText> & {
10
11
  align?: Alignment;
11
12
  textHeight?: number;
12
13
  };
13
14
  export declare const createGeometryElement: (shape: GeometryShapes, points: [Point, Point], text: string | Element, options?: GeometryStyleOptions, textProperties?: TextProperties) => PlaitGeometry;
14
- export declare const getTextRectangle: (element: PlaitGeometry) => {
15
- height: number;
16
- width: number;
17
- x: number;
18
- y: number;
19
- };
20
- export declare const drawBoundReaction: (board: PlaitBoard, element: PlaitGeometry, options?: {
21
- hasMask: boolean;
22
- hasConnector: boolean;
23
- }) => SVGGElement;
24
- export declare const drawGeometry: (board: PlaitBoard, outerRectangle: RectangleClient, shape: GeometryShapes, options: Options) => SVGGElement;
15
+ export declare const createGeometryElementWithText: (shape: GeometryShapes, points: [Point, Point], text: string | Element, options?: GeometryStyleOptions, textProperties?: TextProperties) => PlaitGeometry;
16
+ export declare const createGeometryElementWithoutText: (shape: GeometryShapes, points: [Point, Point], options?: GeometryStyleOptions) => PlaitGeometry;
17
+ export declare const drawGeometry: (board: PlaitBoard, outerRectangle: RectangleClient, shape: GeometryShapes, roughOptions: Options) => SVGGElement;
25
18
  export declare const getNearestPoint: (element: PlaitShapeElement, point: Point) => Point;
26
19
  export declare const getCenterPointsOnPolygon: (points: Point[]) => Point[];
27
20
  export declare const getDefaultFlowchartProperty: (symbol: FlowchartSymbols) => {
@@ -62,6 +55,32 @@ export declare const getDefaultBasicShapeProperty: (shape: BasicShapes) => {
62
55
  width: number;
63
56
  height: number;
64
57
  };
58
+ export declare const getDefaultUMLProperty: (shape: UMLSymbols) => {
59
+ width: number;
60
+ height: number;
61
+ } | {
62
+ width: number;
63
+ height: number;
64
+ } | {
65
+ width: number;
66
+ height: number;
67
+ } | {
68
+ width: number;
69
+ height: number;
70
+ texts: {
71
+ key: import("../interfaces").MultipleTextGeometryCommonTextKeys;
72
+ text: string;
73
+ align: Alignment;
74
+ }[];
75
+ } | {
76
+ width: number;
77
+ height: number;
78
+ texts: {
79
+ key: import("../interfaces").MultipleTextGeometryCommonTextKeys;
80
+ text: string;
81
+ align: Alignment;
82
+ }[];
83
+ };
65
84
  export declare const createDefaultFlowchart: (point: Point) => (PlaitGeometry | import("../interfaces").PlaitLine)[];
66
85
  export declare const getAutoCompletePoints: (element: PlaitShapeElement) => [Point, Point, Point, Point];
67
86
  export declare const getHitIndexOfAutoCompletePoint: (movingPoint: Point, points: Point[]) => number;
@@ -77,8 +96,8 @@ export declare const getDefaultGeometryProperty: (pointer: DrawPointerType) => {
77
96
  height: number;
78
97
  };
79
98
  export declare const getDefaultTextPoints: (board: PlaitBoard, centerPoint: Point, fontSize?: number | string) => [Point, Point];
80
- export declare const insertElement: (board: PlaitBoard, element: PlaitGeometry) => void;
81
99
  export declare const createTextElement: (board: PlaitBoard, points: [Point, Point], text?: string | Element, textHeight?: number) => PlaitGeometry;
82
- export declare const createDefaultGeometry: (board: PlaitBoard, points: [Point, Point], shape: GeometryShapes) => PlaitGeometry;
83
- export declare const editText: (board: PlaitBoard, element: PlaitGeometry) => void;
100
+ export declare const createDefaultGeometry: (board: PlaitBoard, points: [Point, Point], shape: GeometryShapes) => PlaitGeometry | import("../interfaces").PlaitMultipleTextGeometry;
101
+ export declare const editText: (board: PlaitBoard, element: PlaitGeometry, text?: PlaitDrawShapeText) => void;
84
102
  export declare const rerenderGeometryActive: (board: PlaitBoard, element: PlaitGeometry) => void;
103
+ export declare const isGeometryIncludeText: (element: PlaitGeometry) => boolean | 0 | undefined;
package/utils/hit.d.ts CHANGED
@@ -1,9 +1,11 @@
1
- import { PlaitElement, Selection, PlaitBoard, Point } from '@plait/core';
2
- import { PlaitGeometry, PlaitLine, PlaitShapeElement } from '../interfaces';
1
+ import { PlaitElement, RectangleClient, Selection, PlaitBoard, Point } from '@plait/core';
2
+ import { PlaitCommonGeometry, PlaitGeometry, PlaitLine, PlaitShapeElement } from '../interfaces';
3
3
  export declare const isTextExceedingBounds: (geometry: PlaitGeometry) => boolean;
4
4
  export declare const isHitLineText: (board: PlaitBoard, element: PlaitLine, point: Point) => boolean;
5
5
  export declare const isHitPolyLine: (pathPoints: Point[], point: Point) => boolean;
6
6
  export declare const isHitLine: (board: PlaitBoard, element: PlaitLine, point: Point) => boolean;
7
+ export declare const isHitElementText: (element: PlaitCommonGeometry, point: Point) => boolean;
8
+ export declare const isRectangleHitElementText: (element: PlaitCommonGeometry, rectangle: RectangleClient) => boolean;
7
9
  export declare const isRectangleHitDrawElement: (board: PlaitBoard, element: PlaitElement, selection: Selection) => boolean | null;
8
10
  export declare const isHitDrawElement: (board: PlaitBoard, element: PlaitElement, point: Point) => boolean | null;
9
11
  export declare const isHitEdgeOfShape: (board: PlaitBoard, element: PlaitShapeElement, point: Point, hitDistanceBuffer: number) => boolean;
package/utils/index.d.ts CHANGED
@@ -1,6 +1,9 @@
1
1
  export * from './line/index';
2
2
  export * from './geometry';
3
+ export * from './multi-text-geometry';
3
4
  export * from './selected';
4
5
  export * from './style';
5
6
  export * from './hit';
6
7
  export * from './memorize';
8
+ export * from './common';
9
+ export * from './snap-resizing';
@@ -1,8 +1,8 @@
1
1
  import { Point, PlaitBoard, RectangleClient, PointOfRectangle, Direction, Vector } from '@plait/core';
2
- import { LineHandleRefPair, PlaitGeometry, PlaitLine } from '../../interfaces';
2
+ import { LineHandleRefPair, PlaitLine, PlaitShapeElement } from '../../interfaces';
3
3
  export declare const getLineHandleRefPair: (board: PlaitBoard, element: PlaitLine) => LineHandleRefPair;
4
- export declare const getConnectionPoint: (geometry: PlaitGeometry, connection: Point, direction?: Direction, delta?: number) => Point;
5
- export declare const getVectorByConnection: (boundElement: PlaitGeometry, connection: PointOfRectangle) => Vector;
4
+ export declare const getConnectionPoint: (geometry: PlaitShapeElement, connection: Point, direction?: Direction, delta?: number) => Point;
5
+ export declare const getVectorByConnection: (boundElement: PlaitShapeElement, connection: PointOfRectangle) => Vector;
6
6
  export declare const getElbowLineRouteOptions: (board: PlaitBoard, element: PlaitLine, handleRefPair?: LineHandleRefPair) => {
7
7
  sourcePoint: PointOfRectangle;
8
8
  nextSourcePoint: Point;
@@ -10,6 +10,7 @@ export declare const getLineMemorizedLatest: () => {
10
10
  points?: import("@plait/core").Point[] | undefined;
11
11
  type?: string | undefined;
12
12
  groupId?: string | undefined;
13
+ angle?: number | undefined;
13
14
  };
14
15
  export declare const getMemorizedLatestByPointer: (pointer: DrawPointerType) => {
15
16
  textProperties: any;
@@ -20,8 +21,9 @@ export declare const getMemorizedLatestByPointer: (pointer: DrawPointerType) =>
20
21
  points?: import("@plait/core").Point[] | undefined;
21
22
  type?: string | undefined;
22
23
  groupId?: string | undefined;
24
+ angle?: number | undefined;
23
25
  };
24
26
  };
25
- export declare const memorizeLatestText: (element: PlaitDrawElement, operations: BaseOperation[]) => void;
27
+ export declare const memorizeLatestText: <T extends PlaitElement = PlaitDrawElement>(element: T, operations: BaseOperation[]) => void;
26
28
  export declare const memorizeLatestShape: (board: PlaitBoard, shape: GeometryShapes) => void;
27
29
  export declare const getMemorizedLatestShape: (board: PlaitBoard) => GeometryShapes[] | undefined;
@@ -0,0 +1,14 @@
1
+ import { Point } from '@plait/core';
2
+ import { GeometryShapes, PlaitMultipleTextGeometry, PlaitCommonGeometry } from '../interfaces/geometry';
3
+ import { PlaitDrawShapeText } from '../generators/text.generator';
4
+ import { GeometryStyleOptions } from './geometry';
5
+ export declare const isMultipleTextShape: (shape: GeometryShapes) => boolean;
6
+ export declare const isMultipleTextGeometry: (geometry: PlaitCommonGeometry) => geometry is PlaitMultipleTextGeometry;
7
+ export declare const getMultipleTextGeometryTextKeys: (shape: GeometryShapes) => string[] | undefined;
8
+ export declare const createMultipleTextGeometryElement: (shape: GeometryShapes, points: [Point, Point], options?: GeometryStyleOptions) => PlaitMultipleTextGeometry;
9
+ export declare const buildDefaultTextsByShape: (shape: GeometryShapes, elementId: string) => {
10
+ key: string;
11
+ text: import("slate").BaseElement;
12
+ textHeight: any;
13
+ }[];
14
+ export declare const getHitText: (element: PlaitMultipleTextGeometry, point: Point) => PlaitDrawShapeText | undefined;
@@ -1,24 +1,11 @@
1
- import { PlaitBoard, Point, RectangleClient } from '@plait/core';
2
- import { PlaitGeometry, PlaitShapeElement } from '../../interfaces';
3
- export declare const getHitRectangleResizeHandleRef: (board: PlaitBoard, rectangle: RectangleClient, point: Point, angle?: number) => {
4
- rectangle: {
5
- x: number;
6
- y: number;
7
- width: number;
8
- height: number;
9
- };
10
- handle: import("@plait/common").ResizeHandle;
11
- cursorClass: import("@plait/core").ResizeCursorClass;
12
- } | undefined;
13
- export declare const getSnappingGeometry: (board: PlaitBoard, point: Point) => PlaitGeometry | null;
14
- export declare const getSnappingRef: (board: PlaitBoard, hitElement: PlaitShapeElement, point: Point) => {
15
- isHitEdge: boolean;
16
- isHitConnector: boolean;
17
- connectorPoint: Point | undefined;
18
- edgePoint: Point;
19
- };
20
- export declare const getHitGeometry: (board: PlaitBoard, point: Point, offset?: number) => PlaitGeometry | null;
21
- export declare const traverseDrawShapes: (board: PlaitBoard, callback: (element: PlaitShapeElement) => void) => void;
1
+ import { PlaitBoard, Point, RectangleClient, ResizeCursorClass } from '@plait/core';
2
+ import { ResizeHandle } from '@plait/common';
3
+ export interface ResizeHandleRef {
4
+ rectangle: RectangleClient;
5
+ handle: ResizeHandle;
6
+ cursorClass: ResizeCursorClass;
7
+ }
8
+ export declare const getHitRectangleResizeHandleRef: (board: PlaitBoard, rectangle: RectangleClient, point: Point, angle?: number) => ResizeHandleRef | undefined;
22
9
  export declare const getRotateHandleRectangle: (rectangle: RectangleClient) => {
23
10
  x: number;
24
11
  y: number;
@@ -1,7 +1,11 @@
1
1
  import { PlaitBoard, PlaitElement } from '@plait/core';
2
2
  import { PlaitDrawElement, PlaitGeometry, PlaitLine } from '../interfaces';
3
3
  import { PlaitImage } from '../interfaces/image';
4
+ import { PlaitTable } from '../interfaces/table';
4
5
  export declare const getSelectedDrawElements: (board: PlaitBoard, elements?: PlaitElement[]) => PlaitDrawElement[];
5
6
  export declare const getSelectedGeometryElements: (board: PlaitBoard) => PlaitGeometry[];
6
7
  export declare const getSelectedLineElements: (board: PlaitBoard) => PlaitLine[];
7
8
  export declare const getSelectedImageElements: (board: PlaitBoard) => PlaitImage[];
9
+ export declare const isSingleSelectSwimlane: (board: PlaitBoard) => boolean;
10
+ export declare const isSingleSelectTable: (board: PlaitBoard) => boolean;
11
+ export declare const getSelectedTableElements: (board: PlaitBoard, elements?: PlaitElement[]) => PlaitTable[];
package/utils/shape.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- import { PlaitShapeElement } from '../interfaces';
2
- export declare const getElementShape: (value: PlaitShapeElement) => import("../interfaces").GeometryShapes;
1
+ import { PlaitShapeElement, TableSymbols } from '../interfaces';
2
+ export declare const getElementShape: (value: PlaitShapeElement) => import("../interfaces").GeometryShapes | TableSymbols.table;
@@ -1,7 +1,6 @@
1
- import { PlaitGeometry, PlaitLine, StrokeStyle } from '../../interfaces';
2
- import { PlaitBoard } from '@plait/core';
3
- export declare const getStrokeWidthByElement: (element: PlaitGeometry | PlaitLine) => number;
1
+ import { PlaitGeometry, PlaitLine } from '../../interfaces';
2
+ import { PlaitBoard, PlaitElement } from '@plait/core';
4
3
  export declare const getStrokeColorByElement: (board: PlaitBoard, element: PlaitGeometry | PlaitLine) => string;
5
4
  export declare const getFillByElement: (board: PlaitBoard, element: PlaitGeometry | PlaitLine) => any;
6
- export declare const getLineDashByElement: (element: PlaitGeometry | PlaitLine) => number[] | undefined;
7
- export declare const getStrokeStyleByElement: (element: PlaitGeometry | PlaitLine) => StrokeStyle;
5
+ export declare const getLineDashByElement: (element: PlaitGeometry | PlaitLine) => any[] | undefined;
6
+ export declare const getStrokeStyleByElement: (element: PlaitElement) => any;
@@ -0,0 +1,52 @@
1
+ import { Point } from '@plait/core';
2
+ import { DrawPointerType } from '../constants';
3
+ import { PlaitSwimlane, SwimlaneSymbols } from '../interfaces';
4
+ export declare function buildSwimlaneTable(element: PlaitSwimlane): {
5
+ [x: string]: any;
6
+ shape: SwimlaneSymbols;
7
+ id: string;
8
+ points: Point[];
9
+ type: "table";
10
+ rows: {
11
+ id: string;
12
+ height?: number | undefined;
13
+ }[];
14
+ columns: {
15
+ id: string;
16
+ width?: number | undefined;
17
+ }[];
18
+ cells: import("../interfaces/table").PlaitTableCell[];
19
+ groupId?: string | undefined;
20
+ children?: import("@plait/core").PlaitElement[] | undefined;
21
+ angle?: number | undefined;
22
+ };
23
+ export declare const getDefaultSWimlanePoints: (pointer: DrawPointerType, centerPoint: Point) => [Point, Point];
24
+ export declare const createDefaultSwimlane: (shape: SwimlaneSymbols, points: [Point, Point]) => {
25
+ [x: string]: any;
26
+ shape: SwimlaneSymbols;
27
+ id: string;
28
+ points: Point[];
29
+ type: "table";
30
+ rows: {
31
+ id: string;
32
+ height?: number | undefined;
33
+ }[];
34
+ columns: {
35
+ id: string;
36
+ width?: number | undefined;
37
+ }[];
38
+ cells: import("../interfaces/table").PlaitTableCell[];
39
+ groupId?: string | undefined;
40
+ children?: import("@plait/core").PlaitElement[] | undefined;
41
+ angle?: number | undefined;
42
+ };
43
+ export declare const createDefaultRowsOrColumns: (shape: SwimlaneSymbols, type: 'row' | 'column') => {
44
+ id: string;
45
+ }[];
46
+ export declare const createDefaultCells: (shape: SwimlaneSymbols, rows: {
47
+ id: string;
48
+ height?: number;
49
+ }[], columns: {
50
+ id: string;
51
+ width?: number;
52
+ }[]) => any[];
@@ -0,0 +1,26 @@
1
+ import { PlaitBoard, Point } from '@plait/core';
2
+ import { PlaitTable, PlaitTableCell, PlaitTableCellWithPoints } from '../interfaces/table';
3
+ import { PlaitTableBoard } from '../plugins/with-table';
4
+ export declare function getCellsWithPoints(board: PlaitBoard, element: PlaitTable): PlaitTableCellWithPoints[];
5
+ export declare function getCellWithPoints(board: PlaitBoard, table: PlaitTable, cellId: string): PlaitTableCellWithPoints;
6
+ export declare function getHitCell(board: PlaitTableBoard, element: PlaitTable, point: Point): PlaitTableCell | null | undefined;
7
+ export declare function editCell(cell: PlaitTableCell): void;
8
+ export declare function getTextManageByCell(cell: PlaitTableCell): import("@plait/text").TextManage | undefined;
9
+ export declare const updateColumns: (table: PlaitTable, columnId: string, width: number, offset: number) => {
10
+ columns: {
11
+ id: string;
12
+ width?: number | undefined;
13
+ }[];
14
+ points: Point[];
15
+ };
16
+ export declare const updateRows: (table: PlaitTable, rowId: string, height: number, offset: number) => {
17
+ rows: {
18
+ id: string;
19
+ height?: number | undefined;
20
+ }[];
21
+ points: Point[];
22
+ };
23
+ export declare function updateCellIdsByRowOrColumn(cells: PlaitTableCell[], oldId: string, newId: string, type: 'row' | 'column'): void;
24
+ export declare function updateRowOrColumnIds(element: PlaitTable, type: 'row' | 'column'): void;
25
+ export declare function updateCellIds(cells: PlaitTableCell[]): void;
26
+ export declare function isCellIncludeText(cell: PlaitTableCell): number | undefined;