@plait/draw 0.60.0 → 0.62.0-next.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.
- package/constants/geometry.d.ts +41 -13
- package/constants/index.d.ts +2 -1
- package/constants/line.d.ts +1 -0
- package/constants/pointer.d.ts +2 -2
- package/constants/swimlane.d.ts +21 -0
- package/constants/text.d.ts +1 -0
- package/engines/uml/assembly.d.ts +2 -0
- package/engines/uml/component-box.d.ts +2 -0
- package/engines/uml/component.d.ts +2 -0
- package/engines/uml/provided-interface.d.ts +2 -0
- package/engines/uml/required-interface.d.ts +2 -0
- package/engines/uml/template.d.ts +2 -0
- package/esm2022/constants/geometry.mjs +30 -17
- package/esm2022/constants/index.mjs +3 -2
- package/esm2022/constants/line.mjs +2 -1
- package/esm2022/constants/pointer.mjs +3 -3
- package/esm2022/constants/swimlane.mjs +25 -0
- package/esm2022/constants/text.mjs +2 -0
- package/esm2022/engines/index.mjs +14 -2
- package/esm2022/engines/table/table.mjs +9 -3
- package/esm2022/engines/uml/assembly.mjs +56 -0
- package/esm2022/engines/uml/component-box.mjs +61 -0
- package/esm2022/engines/uml/component.mjs +72 -0
- package/esm2022/engines/uml/provided-interface.mjs +47 -0
- package/esm2022/engines/uml/required-interface.mjs +36 -0
- package/esm2022/engines/uml/template.mjs +47 -0
- package/esm2022/generators/single-text.generator.mjs +3 -3
- package/esm2022/generators/table.generator.mjs +1 -1
- package/esm2022/generators/text.generator.mjs +10 -13
- package/esm2022/geometry.component.mjs +12 -14
- package/esm2022/image.component.mjs +6 -8
- package/esm2022/interfaces/geometry.mjs +7 -10
- package/esm2022/interfaces/index.mjs +18 -8
- package/esm2022/interfaces/swimlane.mjs +13 -0
- package/esm2022/interfaces/table.mjs +5 -1
- package/esm2022/line.component.mjs +12 -13
- package/esm2022/plugins/with-draw-fragment.mjs +5 -2
- package/esm2022/plugins/with-draw.mjs +1 -1
- package/esm2022/plugins/with-geometry-create.mjs +4 -10
- package/esm2022/plugins/with-line-text.mjs +7 -8
- package/esm2022/plugins/with-swimlane-create.mjs +4 -4
- package/esm2022/plugins/with-swimlane.mjs +21 -2
- package/esm2022/plugins/with-table-resize.mjs +6 -5
- package/esm2022/plugins/with-table.mjs +28 -10
- package/esm2022/table.component.mjs +31 -12
- package/esm2022/transforms/geometry-text.mjs +8 -6
- package/esm2022/transforms/image.mjs +3 -3
- package/esm2022/transforms/index.mjs +5 -3
- package/esm2022/transforms/line.mjs +1 -1
- package/esm2022/transforms/multi-text-geometry-text.mjs +1 -1
- package/esm2022/transforms/swimlane.mjs +129 -37
- package/esm2022/utils/clipboard.mjs +27 -21
- package/esm2022/utils/common.mjs +6 -7
- package/esm2022/utils/geometry.mjs +4 -4
- package/esm2022/utils/hit.mjs +2 -2
- package/esm2022/utils/index.mjs +4 -1
- package/esm2022/utils/multi-text-geometry.mjs +2 -2
- package/esm2022/utils/selected.mjs +3 -8
- package/esm2022/utils/swimlane.mjs +66 -77
- package/esm2022/utils/table-selected.mjs +26 -0
- package/esm2022/utils/table.mjs +26 -1
- package/esm2022/utils/uml.mjs +2 -2
- package/fesm2022/plait-draw.mjs +848 -309
- package/fesm2022/plait-draw.mjs.map +1 -1
- package/generators/single-text.generator.d.ts +3 -4
- package/generators/table.generator.d.ts +2 -2
- package/generators/text.generator.d.ts +3 -6
- package/image.component.d.ts +0 -1
- package/interfaces/geometry.d.ts +15 -24
- package/interfaces/index.d.ts +11 -6
- package/interfaces/swimlane.d.ts +22 -0
- package/interfaces/table.d.ts +13 -4
- package/line.component.d.ts +1 -2
- package/package.json +1 -3
- package/plugins/with-geometry-create.d.ts +1 -1
- package/plugins/with-swimlane-create.d.ts +1 -1
- package/plugins/with-swimlane.d.ts +3 -2
- package/plugins/with-table-resize.d.ts +1 -1
- package/plugins/with-table.d.ts +1 -4
- package/transforms/index.d.ts +7 -5
- package/transforms/swimlane.d.ts +8 -5
- package/utils/clipboard.d.ts +4 -3
- package/utils/common.d.ts +5 -5
- package/utils/geometry.d.ts +16 -1
- package/utils/index.d.ts +3 -0
- package/utils/selected.d.ts +2 -4
- package/utils/shape.d.ts +1 -1
- package/utils/swimlane.d.ts +11 -26
- package/utils/table-selected.d.ts +9 -0
- package/utils/table.d.ts +10 -9
- package/constants/draw.d.ts +0 -1
- package/esm2022/constants/draw.mjs +0 -2
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { getHitElementByPoint, PlaitBoard, RectangleClient, Transforms, isSelectedElement } from '@plait/core';
|
|
2
|
-
import { PlaitTableElement } from '../interfaces/table';
|
|
3
2
|
import { getIndexByResizeHandle, isCornerHandle, withResize, normalizeShapePoints } from '@plait/common';
|
|
4
3
|
import { getCellsWithPoints, updateColumns, updateRows } from '../utils/table';
|
|
5
4
|
import { getHitRectangleResizeHandleRef } from '../utils/position/geometry';
|
|
6
5
|
import { getResizeOriginPointAndHandlePoint, getResizeZoom, movePointByZoomAndOriginPoint } from './with-draw-resize';
|
|
7
|
-
import { isSingleSelectTable } from '../utils';
|
|
8
6
|
import { getSnapResizingRef, getSnapResizingRefOptions } from '../utils/snap-resizing';
|
|
7
|
+
import { PlaitDrawElement } from '../interfaces';
|
|
8
|
+
import { isSingleSelectElementByTable } from '../utils';
|
|
9
9
|
const MIN_CELL_SIZE = 20;
|
|
10
10
|
export function withTableResize(board) {
|
|
11
11
|
let snapG;
|
|
@@ -16,12 +16,13 @@ export function withTableResize(board) {
|
|
|
16
16
|
},
|
|
17
17
|
hitTest: (point) => {
|
|
18
18
|
const hitElement = getHitElementByPoint(board, point);
|
|
19
|
-
if (hitElement &&
|
|
19
|
+
if (hitElement && PlaitDrawElement.isElementByTable(hitElement)) {
|
|
20
20
|
let rectangle = board.getRectangle(hitElement);
|
|
21
21
|
let handleRef = getHitRectangleResizeHandleRef(board, rectangle, point, hitElement.angle);
|
|
22
22
|
if (handleRef) {
|
|
23
23
|
const selectElement = isSelectedElement(board, hitElement);
|
|
24
|
-
if ((selectElement &&
|
|
24
|
+
if ((selectElement && isSingleSelectElementByTable(board)) ||
|
|
25
|
+
(!selectElement && !isCornerHandle(board, handleRef.handle))) {
|
|
25
26
|
return {
|
|
26
27
|
element: hitElement,
|
|
27
28
|
handle: handleRef.handle,
|
|
@@ -127,4 +128,4 @@ export function withTableResize(board) {
|
|
|
127
128
|
withResize(board, options);
|
|
128
129
|
return board;
|
|
129
130
|
}
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC10YWJsZS1yZXNpemUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9kcmF3L3NyYy9wbHVnaW5zL3dpdGgtdGFibGUtcmVzaXplLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxVQUFVLEVBQVMsZUFBZSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN0SCxPQUFPLEVBQXdDLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDOUYsT0FBTyxFQUNILHNCQUFzQixFQUN0QixjQUFjLEVBS2QsVUFBVSxFQUVWLG9CQUFvQixFQUN2QixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9FLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTVFLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxhQUFhLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0SCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFNdkYsTUFBTSxhQUFhLEdBQUcsRUFBRSxDQUFDO0FBRXpCLE1BQU0sVUFBVSxlQUFlLENBQUMsS0FBc0I7SUFDbEQsSUFBSSxLQUF5QixDQUFDO0lBRTlCLE1BQU0sT0FBTyxHQUFvRTtRQUM3RSxHQUFHLEVBQUUsWUFBWTtRQUNqQixTQUFTLEVBQUUsR0FBRyxFQUFFO1lBQ1osT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDLEtBQVksRUFBRSxFQUFFO1lBQ3RCLE1BQU0sVUFBVSxHQUFHLG9CQUFvQixDQUFDLEtBQUssRUFB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QUNILEdBQUcsSUFBSTtnQ0FDUCxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sR0FBRyxZQUFZLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUM7NkJBQ3pFLENBQUM7d0JBQ04sQ0FBQzt3QkFDRCxPQUFPLElBQUksQ0FBQztvQkFDaEIsQ0FBQyxDQUFDLENBQUM7Z0JBQ1AsQ0FBQztnQkFDRCxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDN0YsQ0FBQztRQUNMLENBQUM7UUFDRCxXQUFXLEVBQUUsQ0FBQyxTQUFrRSxFQUFFLEVBQUU7WUFDaEYsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDakIsQ0FBQztLQUNKLENBQUM7SUFFRixVQUFVLENBQStDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUV6RSxPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0SGl0RWxlbWVudEJ5UG9pbnQsIFBsYWl0Qm9hcmQsIFBvaW50LCBSZWN0YW5nbGVDbGllbnQsIFRyYW5zZm9ybXMsIGlzU2VsZWN0ZWRFbGVtZW50IH0gZnJvbSAnQHBsYWl0L2NvcmUnO1xuaW1wb3J0IHsgUGxhaXRUYWJsZSwgUGxhaXRUYWJsZUNlbGxXaXRoUG9pbnRzLCBQbGFpdFRhYmxlRWxlbWVudCB9IGZyb20gJy4uL2ludGVyZmFjZXMvdGFibGUnO1xuaW1wb3J0IHtcbiAgICBnZXRJbmRleEJ5UmVzaXplSGFuZGxlLFxuICAgIGlzQ29ybmVySGFuZGxlLFxuICAgIFJlc2l6ZU9wdGlvbnMsXG4gICAgUmVzaXplSGFuZGxlLFxuICAgIFJlc2l6ZVJlZixcbiAgICBSZXNpemVTdGF0ZSxcbiAgICB3aXRoUmVzaXplLFxuICAgIFdpdGhSZXNpemVPcHRpb25zLFxuICAgIG5vcm1hbGl6ZVNoYXBlUG9pbnRzXG59IGZyb20gJ0BwbGFpdC9jb21tb24nO1xuaW1wb3J0IHsgZ2V0Q2VsbHNXaXRoUG9pbnRzLCB1cGRhdGVDb2x1bW5zLCB1cGRhdGVSb3dzIH0gZnJvbSAnLi4vdXRpbHMvdGFibGUnO1xuaW1wb3J0IHsgZ2V0SGl0UmVjdGFuZ2xlUmVzaXplSGFuZGxlUmVmIH0gZnJvbSAnLi4vdXRpbHMvcG9zaXRpb24vZ2VvbWV0cnknO1xuaW1wb3J0IHsgUGxhaXRUYWJsZUJvYXJkIH0gZnJvbSAnLi93aXRoLXRhYmxlJztcbmltcG9ydCB7IGdldFJlc2l6ZU9yaWdpblBvaW50QW5kSGFuZGxlUG9pbnQsIGdldFJlc2l6ZVpvb20sIG1vdmVQb2ludEJ5Wm9vbUFuZE9yaWdpblBvaW50IH0gZnJvbSAnLi93aXRoLWRyYXctcmVzaXplJztcbmltcG9ydCB7IGlzU2luZ2xlU2VsZWN0VGFibGUgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBnZXRTbmFwUmVzaXppbmdSZWYsIGdldFNuYXBSZXNpemluZ1JlZk9wdGlvbnMgfSBmcm9tICcuLi91dGlscy9zbmFwLXJlc2l6aW5nJztcblxuaW50ZXJmYWNlIFRhYmxlUmVzaXplT3B0aW9ucyBleHRlbmRzIFJlc2l6ZU9wdGlvbnMge1xuICAgIGNlbGw6IFBsYWl0VGFibGVDZWxsV2l0aFBvaW50cztcbn1cblxuY29uc3QgTUlOX0NFTExfU0laRSA9IDIwO1xuXG5leHBvcnQgZnVuY3Rpb24gd2l0aFRhYmxlUmVzaXplKGJvYXJkOiBQbGFpdFRhYmxlQm9hcmQpIHtcbiAgICBsZXQgc25hcEc6IFNWR0dFbGVtZW50IHwgbnVsbDtcblxuICAgIGNvbnN0IG9wdGlvbnM6IFdpdGhSZXNpemVPcHRpb25zPFBsYWl0VGFibGUsIFJlc2l6ZUhhbmRsZSwgVGFibGVSZXNpemVPcHRpb25zPiA9IHtcbiAgICAgICAga2V5OiAnZHJhdy10YWJsZScsXG4gICAgICAgIGNhblJlc2l6ZTogKCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH0sXG4gICAgICAgIGhpdFRlc3Q6IChwb2ludDogUG9pbnQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGhpdEVsZW1lbnQgPSBnZXRIaXRFbGVtZW50QnlQb2ludChib2FyZCwgcG9pbnQpO1xuICAgICAgICAgICAgaWYgKGhpdEVsZW1lbnQgJiYgUGxhaXRUYWJsZUVsZW1lbnQuaXNUYWJsZShoaXRFbGVtZW50KSkge1xuICAgICAgICAgICAgICAgIGxldCByZWN0YW5nbGUgPSBib2FyZC5nZXRSZWN0YW5nbGUoaGl0RWxlbWVudCkgYXMgUmVjdGFuZ2xlQ2xpZW50O1xuICAgICAgICAgICAgICAgIGxldCBoYW5kbGVSZWYgPSBnZXRIaXRSZWN0YW5nbGVSZXNpemVIYW5kbGVSZWYoYm9hcmQsIHJlY3RhbmdsZSwgcG9pbnQsIGhpdEVsZW1lbnQuYW5nbGUpO1xuICAgICAgICAgICAgICAgIGlmIChoYW5kbGVSZWYpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2VsZWN0RWxlbWVudCA9IGlzU2VsZWN0ZWRFbGVtZW50KGJvYXJkLCBoaXRFbGVtZW50KTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKChzZWxlY3RFbGVtZW50ICYmIGlzU2luZ2xlU2VsZWN0VGFibGUoYm9hcmQpKSB8fCAoIXNlbGVjdEVsZW1lbnQgJiYgIWlzQ29ybmVySGFuZGxlKGJvYXJkLCBoYW5kbGVSZWYuaGFuZGxlKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudDogaGl0RWxlbWVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGU6IGhhbmRsZVJlZi5oYW5kbGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yQ2xhc3M6IGhhbmRsZVJlZi5jdXJzb3JDbGFzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWN0YW5nbGVcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgY2VsbHMgPSBnZXRDZWxsc1dpdGhQb2ludHMoYm9hcmQsIGhpdEVsZW1lbnQpO1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY2VsbHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgcmVjdGFuZ2xlID0gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGNlbGxzW2ldLnBvaW50cyk7XG4gICAgICAgICAgICAgICAgICAgIGhhbmRsZVJlZiA9IGdldEhpdFJlY3RhbmdsZVJlc2l6ZUhhbmRsZVJlZihib2FyZCwgcmVjdGFuZ2xlLCBwb2ludCwgMCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChoYW5kbGVSZWYgJiYgIWlzQ29ybmVySGFuZGxlKGJvYXJkLCBoYW5kbGVSZWYuaGFuZGxlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50OiBoaXRFbGVtZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZTogaGFuZGxlUmVmLmhhbmRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3JDbGFzczogaGFuZGxlUmVmLmN1cnNvckNsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY3RhbmdsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlbGw6IGNlbGxzW2ldXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9LFxuICAgICAgICBvblJlc2l6ZTogKHJlc2l6ZVJlZjogUmVzaXplUmVmPFBsYWl0VGFibGUsIFJlc2l6ZUhhbmRsZSwgVGFibGVSZXNpemVPcHRpb25zPiwgcmVzaXplU3RhdGU6IFJlc2l6ZVN0YXRlKSA9PiB7XG4gICAgICAgICAgICBzbmFwRz8ucmVtb3ZlKCk7XG4gICAgICAgICAgICBjb25zdCBwYXRoID0gUGxhaXRCb2FyZC5maW5kUGF0aChib2FyZCwgcmVzaXplUmVmLmVsZW1lbnQpO1xuICAgICAgICAgICAgaWYgKHJlc2l6ZVJlZi5vcHRpb25zPy5jZWxsICYmIHJlc2l6ZVJlZi5yZWN0YW5nbGUpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBoYW5kbGVJbmRleCA9IGdldEluZGV4QnlSZXNpemVIYW5kbGUocmVzaXplUmVmLmhhbmRsZSk7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBvcmlnaW5Qb2ludCwgaGFuZGxlUG9pbnQgfSA9IGdldFJlc2l6ZU9yaWdpblBvaW50QW5kSGFuZGxlUG9pbnQoYm9hcmQsIGhhbmRsZUluZGV4LCByZXNpemVSZWYucmVjdGFuZ2xlISk7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzaXplUG9pbnRzOiBbUG9pbnQsIFBvaW50XSA9IFtyZXNpemVTdGF0ZS5zdGFydFBvaW50LCByZXNpemVTdGF0ZS5lbmRQb2ludF07XG4gICAgICAgICAgICAgICAgY29uc3QgeyB4Wm9vbSwgeVpvb20gfSA9IGdldFJlc2l6ZVpvb20ocmVzaXplUG9pbnRzLCBvcmlnaW5Qb2ludCwgaGFuZGxlUG9pbnQsIGZhbHNlLCBmYWxzZSk7XG4gICAgICAgICAgICAgICAgY29uc3Qgb3JpZ2luUG9pbnRzID0gcmVzaXplUmVmLm9wdGlvbnM/LmNlbGwucG9pbnRzO1xuICAgICAgICAgICAgICAgIGNvbnN0IHRhcmdldFBvaW50cyA9IG9yaWdpblBvaW50cy5tYXAocCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBtb3ZlUG9pbnRCeVpvb21BbmRPcmlnaW5Qb2ludChwLCBvcmlnaW5Qb2ludCwgeFpvb20sIHlab29tKTtcbiAgICAgICAgICAgICAgICB9KSBhcyBbUG9pbnQsIFBvaW50XTtcbiAgICAgICAgICAgICAgICBjb25zdCBvZmZzZXRYID0gdGFyZ2V0UG9pbnRzWzFdWzBdIC0gb3JpZ2luUG9pbnRzWzFdWzBdO1xuICAgICAgICAgICAgICAgIGNvbnN0IG9mZnNldFkgPSB0YXJnZXRQb2ludHNbMV1bMV0gLSBvcmlnaW5Qb2ludHNbMV1bMV07XG4gICAgICAgICAgICAgICAgY29uc3Qgd2lkdGggPSB0YXJnZXRQb2ludHNbMV1bMF0gLSB0YXJnZXRQb2ludHNbMF1bMF07XG4gICAgICAgICAgICAgICAgY29uc3QgaGVpZ2h0ID0gdGFyZ2V0UG9pbnRzWzFdWzFdIC0gdGFyZ2V0UG9pbnRzWzBdWzFdO1xuICAgICAgICAgICAgICAgIGlmIChvZmZzZXRYICE9PSAwICYmIHdpZHRoID49IE1JTl9DRUxMX1NJWkUpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBjb2x1bW5zLCBwb2ludHMgfSA9IHVwZGF0ZUNvbHVtbnMocmVzaXplUmVmLmVsZW1lbnQsIHJlc2l6ZVJlZi5vcHRpb25zPy5jZWxsLmNvbHVtbklkLCB3aWR0aCwgb2Zmc2V0WCk7XG4gICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuc2V0Tm9kZShib2FyZCwgeyBjb2x1bW5zLCBwb2ludHMgfSwgcGF0aCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChvZmZzZXRZICE9PSAwICYmIGhlaWdodCA+PSBNSU5fQ0VMTF9TSVpFKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgcm93cywgcG9pbnRzIH0gPSB1cGRhdGVSb3dzKHJlc2l6ZVJlZi5lbGVtZW50LCByZXNpemVSZWYub3B0aW9ucz8uY2VsbC5yb3dJZCwgaGVpZ2h0LCBvZmZzZXRZKTtcbiAgICAgICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlKGJvYXJkLCB7IHJvd3MsIHBvaW50cyB9LCBwYXRoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IGlzRnJvbUNvcm5lciA9IGlzQ29ybmVySGFuZGxlKGJvYXJkLCByZXNpemVSZWYuaGFuZGxlKTtcbiAgICAgICAgICAgICAgICBjb25zdCBpc0FzcGVjdFJhdGlvID0gcmVzaXplU3RhdGUuaXNTaGlmdDtcbiAgICAgICAgICAgICAgICBjb25zdCBoYW5kbGVJbmRleCA9IGdldEluZGV4QnlSZXNpemVIYW5kbGUocmVzaXplUmVmLmhhbmRsZSk7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBvcmlnaW5Qb2ludCwgaGFuZGxlUG9pbnQgfSA9IGdldFJlc2l6ZU9yaWdpblBvaW50QW5kSGFuZGxlUG9pbnQoYm9hcmQsIGhhbmRsZUluZGV4LCByZXNpemVSZWYucmVjdGFuZ2xlISk7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzaXplU25hcFJlZk9wdGlvbnMgPSBnZXRTbmFwUmVzaXppbmdSZWZPcHRpb25zKFxuICAgICAgICAgICAgICAgICAgICBib2FyZCxcbiAgICAgICAgICAgICAgICAgICAgcmVzaXplUmVmLFxuICAgICAgICAgICAgICAgICAgICByZXNpemVTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JpZ2luUG9pbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVQb2ludFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBpc0FzcGVjdFJhdGlvLFxuICAgICAgICAgICAgICAgICAgICBpc0Zyb21Db3JuZXJcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc2l6ZVNuYXBSZWYgPSBnZXRTbmFwUmVzaXppbmdSZWYoYm9hcmQsIFtyZXNpemVSZWYuZWxlbWVudF0sIHJlc2l6ZVNuYXBSZWZPcHRpb25zKTtcbiAgICAgICAgICAgICAgICBzbmFwRyA9IHJlc2l6ZVNuYXBSZWYuc25hcEc7XG4gICAgICAgICAgICAgICAgUGxhaXRCb2FyZC5nZXRFbGVtZW50QWN0aXZlSG9zdChib2FyZCkuYXBwZW5kKHNuYXBHKTtcbiAgICAgICAgICAgICAgICBjb25zdCBwb2ludHMgPSByZXNpemVTbmFwUmVmLmFjdGl2ZVBvaW50cyBhcyBbUG9pbnQsIFBvaW50XTtcbiAgICAgICAgICAgICAgICBjb25zdCBvcmlnaW5Qb2ludHMgPSByZXNpemVSZWYuZWxlbWVudC5wb2ludHM7XG4gICAgICAgICAgICAgICAgY29uc3Qgb3JpZ2luUmVjdCA9IFJlY3RhbmdsZUNsaWVudC5nZXRSZWN0YW5nbGVCeVBvaW50cyhvcmlnaW5Qb2ludHMpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHRhcmdldFJlY3QgPSBSZWN0YW5nbGVDbGllbnQuZ2V0UmVjdGFuZ2xlQnlQb2ludHMocG9pbnRzKTtcbiAgICAgICAgICAgICAgICBjb25zdCBvZmZzZXRXaWR0aCA9IHRhcmdldFJlY3Qud2lkdGggLSBvcmlnaW5SZWN0LndpZHRoO1xuICAgICAgICAgICAgICAgIGNvbnN0IG9mZnNldEhlaWdodCA9IHRhcmdldFJlY3QuaGVpZ2h0IC0gb3JpZ2luUmVjdC5oZWlnaHQ7XG4gICAgICAgICAgICAgICAgbGV0IGNvbHVtbnMgPSBbLi4ucmVzaXplUmVmLmVsZW1lbnQuY29sdW1uc107XG4gICAgICAgICAgICAgICAgbGV0IHJvd3MgPSBbLi4ucmVzaXplUmVmLmVsZW1lbnQucm93c107XG4gICAgICAgICAgICAgICAgaWYgKG9mZnNldFdpZHRoICE9PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbnMgPSBjb2x1bW5zLm1hcChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpdGVtLndpZHRoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGl0ZW0ud2lkdGggKyBvZmZzZXRXaWR0aCAqIChpdGVtLndpZHRoIC8gb3JpZ2luUmVjdC53aWR0aClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW07XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAob2Zmc2V0SGVpZ2h0ICE9PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHJvd3MgPSByb3dzLm1hcChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpdGVtLmhlaWdodCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogaXRlbS5oZWlnaHQgKyBvZmZzZXRIZWlnaHQgKiAoaXRlbS5oZWlnaHQgLyBvcmlnaW5SZWN0LmhlaWdodClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW07XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGUoYm9hcmQsIHsgcG9pbnRzOiBub3JtYWxpemVTaGFwZVBvaW50cyhwb2ludHMpLCBjb2x1bW5zLCByb3dzIH0sIHBhdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBhZnRlclJlc2l6ZTogKHJlc2l6ZVJlZjogUmVzaXplUmVmPFBsYWl0VGFibGUsIFJlc2l6ZUhhbmRsZSwgVGFibGVSZXNpemVPcHRpb25zPikgPT4ge1xuICAgICAgICAgICAgc25hcEc/LnJlbW92ZSgpO1xuICAgICAgICAgICAgc25hcEcgPSBudWxsO1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIHdpdGhSZXNpemU8UGxhaXRUYWJsZSwgUmVzaXplSGFuZGxlLCBUYWJsZVJlc2l6ZU9wdGlvbnM+KGJvYXJkLCBvcHRpb25zKTtcblxuICAgIHJldHVybiBib2FyZDtcbn1cbiJdfQ==
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC10YWJsZS1yZXNpemUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9kcmF3L3NyYy9wbHVnaW5zL3dpdGgtdGFibGUtcmVzaXplLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxVQUFVLEVBQVMsZUFBZSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUV0SCxPQUFPLEVBQ0gsc0JBQXNCLEVBQ3RCLGNBQWMsRUFLZCxVQUFVLEVBRVYsb0JBQW9CLEVBQ3ZCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0UsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUUsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLGFBQWEsRUFBRSw2QkFBNkIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFNeEQsTUFBTSxhQUFhLEdBQUcsRUFBRSxDQUFDO0FBRXpCLE1BQU0sVUFBVSxlQUFlLENBQUMsS0FBc0I7SUFDbEQsSUFBSSxLQUF5QixDQUFDO0lBRTlCLE1BQU0sT0FBTyxHQUF3RTtRQUNqRixHQUFHLEVBQUUsWUFBWTtRQUNqQixTQUFTLEVBQUUsR0FBRyxFQUFFO1lBQ1osT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDLEtBQVksRUFBRSxFQUFFO1lBQ3RCLE1BQU0sVUFBVSxHQUFHLG9CQUFvQixDQUFDLEtBQUssRUFBRSxL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Q0FDSCxHQUFHLElBQUk7Z0NBQ1AsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLEdBQUcsWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDOzZCQUN6RSxDQUFDO3dCQUNOLENBQUM7d0JBQ0QsT0FBTyxJQUFJLENBQUM7b0JBQ2hCLENBQUMsQ0FBQyxDQUFDO2dCQUNQLENBQUM7Z0JBQ0QsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsb0JBQW9CLENBQUMsTUFBTSxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzdGLENBQUM7UUFDTCxDQUFDO1FBQ0QsV0FBVyxFQUFFLENBQUMsU0FBc0UsRUFBRSxFQUFFO1lBQ3BGLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUNoQixLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLENBQUM7S0FDSixDQUFDO0lBRUYsVUFBVSxDQUFtRCxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFFN0UsT0FBTyxLQUFLLENBQUM7QUFDakIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldEhpdEVsZW1lbnRCeVBvaW50LCBQbGFpdEJvYXJkLCBQb2ludCwgUmVjdGFuZ2xlQ2xpZW50LCBUcmFuc2Zvcm1zLCBpc1NlbGVjdGVkRWxlbWVudCB9IGZyb20gJ0BwbGFpdC9jb3JlJztcbmltcG9ydCB7IFBsYWl0QmFzZVRhYmxlLCBQbGFpdFRhYmxlQm9hcmQsIFBsYWl0VGFibGVDZWxsV2l0aFBvaW50cyB9IGZyb20gJy4uL2ludGVyZmFjZXMvdGFibGUnO1xuaW1wb3J0IHtcbiAgICBnZXRJbmRleEJ5UmVzaXplSGFuZGxlLFxuICAgIGlzQ29ybmVySGFuZGxlLFxuICAgIFJlc2l6ZU9wdGlvbnMsXG4gICAgUmVzaXplSGFuZGxlLFxuICAgIFJlc2l6ZVJlZixcbiAgICBSZXNpemVTdGF0ZSxcbiAgICB3aXRoUmVzaXplLFxuICAgIFdpdGhSZXNpemVPcHRpb25zLFxuICAgIG5vcm1hbGl6ZVNoYXBlUG9pbnRzXG59IGZyb20gJ0BwbGFpdC9jb21tb24nO1xuaW1wb3J0IHsgZ2V0Q2VsbHNXaXRoUG9pbnRzLCB1cGRhdGVDb2x1bW5zLCB1cGRhdGVSb3dzIH0gZnJvbSAnLi4vdXRpbHMvdGFibGUnO1xuaW1wb3J0IHsgZ2V0SGl0UmVjdGFuZ2xlUmVzaXplSGFuZGxlUmVmIH0gZnJvbSAnLi4vdXRpbHMvcG9zaXRpb24vZ2VvbWV0cnknO1xuaW1wb3J0IHsgZ2V0UmVzaXplT3JpZ2luUG9pbnRBbmRIYW5kbGVQb2ludCwgZ2V0UmVzaXplWm9vbSwgbW92ZVBvaW50Qnlab29tQW5kT3JpZ2luUG9pbnQgfSBmcm9tICcuL3dpdGgtZHJhdy1yZXNpemUnO1xuaW1wb3J0IHsgZ2V0U25hcFJlc2l6aW5nUmVmLCBnZXRTbmFwUmVzaXppbmdSZWZPcHRpb25zIH0gZnJvbSAnLi4vdXRpbHMvc25hcC1yZXNpemluZyc7XG5pbXBvcnQgeyBQbGFpdERyYXdFbGVtZW50IH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBpc1NpbmdsZVNlbGVjdEVsZW1lbnRCeVRhYmxlIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5pbnRlcmZhY2UgVGFibGVSZXNpemVPcHRpb25zIGV4dGVuZHMgUmVzaXplT3B0aW9ucyB7XG4gICAgY2VsbDogUGxhaXRUYWJsZUNlbGxXaXRoUG9pbnRzO1xufVxuXG5jb25zdCBNSU5fQ0VMTF9TSVpFID0gMjA7XG5cbmV4cG9ydCBmdW5jdGlvbiB3aXRoVGFibGVSZXNpemUoYm9hcmQ6IFBsYWl0VGFibGVCb2FyZCkge1xuICAgIGxldCBzbmFwRzogU1ZHR0VsZW1lbnQgfCBudWxsO1xuXG4gICAgY29uc3Qgb3B0aW9uczogV2l0aFJlc2l6ZU9wdGlvbnM8UGxhaXRCYXNlVGFibGUsIFJlc2l6ZUhhbmRsZSwgVGFibGVSZXNpemVPcHRpb25zPiA9IHtcbiAgICAgICAga2V5OiAnZHJhdy10YWJsZScsXG4gICAgICAgIGNhblJlc2l6ZTogKCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH0sXG4gICAgICAgIGhpdFRlc3Q6IChwb2ludDogUG9pbnQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGhpdEVsZW1lbnQgPSBnZXRIaXRFbGVtZW50QnlQb2ludChib2FyZCwgcG9pbnQpO1xuICAgICAgICAgICAgaWYgKGhpdEVsZW1lbnQgJiYgUGxhaXREcmF3RWxlbWVudC5pc0VsZW1lbnRCeVRhYmxlKGhpdEVsZW1lbnQpKSB7XG4gICAgICAgICAgICAgICAgbGV0IHJlY3RhbmdsZSA9IGJvYXJkLmdldFJlY3RhbmdsZShoaXRFbGVtZW50KSBhcyBSZWN0YW5nbGVDbGllbnQ7XG4gICAgICAgICAgICAgICAgbGV0IGhhbmRsZVJlZiA9IGdldEhpdFJlY3RhbmdsZVJlc2l6ZUhhbmRsZVJlZihib2FyZCwgcmVjdGFuZ2xlLCBwb2ludCwgaGl0RWxlbWVudC5hbmdsZSk7XG4gICAgICAgICAgICAgICAgaWYgKGhhbmRsZVJlZikge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzZWxlY3RFbGVtZW50ID0gaXNTZWxlY3RlZEVsZW1lbnQoYm9hcmQsIGhpdEVsZW1lbnQpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAoc2VsZWN0RWxlbWVudCAmJiBpc1NpbmdsZVNlbGVjdEVsZW1lbnRCeVRhYmxlKGJvYXJkKSkgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICghc2VsZWN0RWxlbWVudCAmJiAhaXNDb3JuZXJIYW5kbGUoYm9hcmQsIGhhbmRsZVJlZi5oYW5kbGUpKVxuICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudDogaGl0RWxlbWVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGU6IGhhbmRsZVJlZi5oYW5kbGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yQ2xhc3M6IGhhbmRsZVJlZi5jdXJzb3JDbGFzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWN0YW5nbGVcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgY2VsbHMgPSBnZXRDZWxsc1dpdGhQb2ludHMoYm9hcmQsIGhpdEVsZW1lbnQpO1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY2VsbHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgcmVjdGFuZ2xlID0gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGNlbGxzW2ldLnBvaW50cyk7XG4gICAgICAgICAgICAgICAgICAgIGhhbmRsZVJlZiA9IGdldEhpdFJlY3RhbmdsZVJlc2l6ZUhhbmRsZVJlZihib2FyZCwgcmVjdGFuZ2xlLCBwb2ludCwgMCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChoYW5kbGVSZWYgJiYgIWlzQ29ybmVySGFuZGxlKGJvYXJkLCBoYW5kbGVSZWYuaGFuZGxlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50OiBoaXRFbGVtZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZTogaGFuZGxlUmVmLmhhbmRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3JDbGFzczogaGFuZGxlUmVmLmN1cnNvckNsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY3RhbmdsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlbGw6IGNlbGxzW2ldXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9LFxuICAgICAgICBvblJlc2l6ZTogKHJlc2l6ZVJlZjogUmVzaXplUmVmPFBsYWl0QmFzZVRhYmxlLCBSZXNpemVIYW5kbGUsIFRhYmxlUmVzaXplT3B0aW9ucz4sIHJlc2l6ZVN0YXRlOiBSZXNpemVTdGF0ZSkgPT4ge1xuICAgICAgICAgICAgc25hcEc/LnJlbW92ZSgpO1xuICAgICAgICAgICAgY29uc3QgcGF0aCA9IFBsYWl0Qm9hcmQuZmluZFBhdGgoYm9hcmQsIHJlc2l6ZVJlZi5lbGVtZW50KTtcbiAgICAgICAgICAgIGlmIChyZXNpemVSZWYub3B0aW9ucz8uY2VsbCAmJiByZXNpemVSZWYucmVjdGFuZ2xlKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaGFuZGxlSW5kZXggPSBnZXRJbmRleEJ5UmVzaXplSGFuZGxlKHJlc2l6ZVJlZi5oYW5kbGUpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgb3JpZ2luUG9pbnQsIGhhbmRsZVBvaW50IH0gPSBnZXRSZXNpemVPcmlnaW5Qb2ludEFuZEhhbmRsZVBvaW50KGJvYXJkLCBoYW5kbGVJbmRleCwgcmVzaXplUmVmLnJlY3RhbmdsZSEpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc2l6ZVBvaW50czogW1BvaW50LCBQb2ludF0gPSBbcmVzaXplU3RhdGUuc3RhcnRQb2ludCwgcmVzaXplU3RhdGUuZW5kUG9pbnRdO1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgeFpvb20sIHlab29tIH0gPSBnZXRSZXNpemVab29tKHJlc2l6ZVBvaW50cywgb3JpZ2luUG9pbnQsIGhhbmRsZVBvaW50LCBmYWxzZSwgZmFsc2UpO1xuICAgICAgICAgICAgICAgIGNvbnN0IG9yaWdpblBvaW50cyA9IHJlc2l6ZVJlZi5vcHRpb25zPy5jZWxsLnBvaW50cztcbiAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXRQb2ludHMgPSBvcmlnaW5Qb2ludHMubWFwKHAgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbW92ZVBvaW50Qnlab29tQW5kT3JpZ2luUG9pbnQocCwgb3JpZ2luUG9pbnQsIHhab29tLCB5Wm9vbSk7XG4gICAgICAgICAgICAgICAgfSkgYXMgW1BvaW50LCBQb2ludF07XG4gICAgICAgICAgICAgICAgY29uc3Qgb2Zmc2V0WCA9IHRhcmdldFBvaW50c1sxXVswXSAtIG9yaWdpblBvaW50c1sxXVswXTtcbiAgICAgICAgICAgICAgICBjb25zdCBvZmZzZXRZID0gdGFyZ2V0UG9pbnRzWzFdWzFdIC0gb3JpZ2luUG9pbnRzWzFdWzFdO1xuICAgICAgICAgICAgICAgIGNvbnN0IHdpZHRoID0gdGFyZ2V0UG9pbnRzWzFdWzBdIC0gdGFyZ2V0UG9pbnRzWzBdWzBdO1xuICAgICAgICAgICAgICAgIGNvbnN0IGhlaWdodCA9IHRhcmdldFBvaW50c1sxXVsxXSAtIHRhcmdldFBvaW50c1swXVsxXTtcbiAgICAgICAgICAgICAgICBpZiAob2Zmc2V0WCAhPT0gMCAmJiB3aWR0aCA+PSBNSU5fQ0VMTF9TSVpFKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgY29sdW1ucywgcG9pbnRzIH0gPSB1cGRhdGVDb2x1bW5zKHJlc2l6ZVJlZi5lbGVtZW50LCByZXNpemVSZWYub3B0aW9ucz8uY2VsbC5jb2x1bW5JZCwgd2lkdGgsIG9mZnNldFgpO1xuICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGUoYm9hcmQsIHsgY29sdW1ucywgcG9pbnRzIH0sIHBhdGgpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAob2Zmc2V0WSAhPT0gMCAmJiBoZWlnaHQgPj0gTUlOX0NFTExfU0laRSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB7IHJvd3MsIHBvaW50cyB9ID0gdXBkYXRlUm93cyhyZXNpemVSZWYuZWxlbWVudCwgcmVzaXplUmVmLm9wdGlvbnM/LmNlbGwucm93SWQsIGhlaWdodCwgb2Zmc2V0WSk7XG4gICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuc2V0Tm9kZShib2FyZCwgeyByb3dzLCBwb2ludHMgfSwgcGF0aCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpc0Zyb21Db3JuZXIgPSBpc0Nvcm5lckhhbmRsZShib2FyZCwgcmVzaXplUmVmLmhhbmRsZSk7XG4gICAgICAgICAgICAgICAgY29uc3QgaXNBc3BlY3RSYXRpbyA9IHJlc2l6ZVN0YXRlLmlzU2hpZnQ7XG4gICAgICAgICAgICAgICAgY29uc3QgaGFuZGxlSW5kZXggPSBnZXRJbmRleEJ5UmVzaXplSGFuZGxlKHJlc2l6ZVJlZi5oYW5kbGUpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgb3JpZ2luUG9pbnQsIGhhbmRsZVBvaW50IH0gPSBnZXRSZXNpemVPcmlnaW5Qb2ludEFuZEhhbmRsZVBvaW50KGJvYXJkLCBoYW5kbGVJbmRleCwgcmVzaXplUmVmLnJlY3RhbmdsZSEpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc2l6ZVNuYXBSZWZPcHRpb25zID0gZ2V0U25hcFJlc2l6aW5nUmVmT3B0aW9ucyhcbiAgICAgICAgICAgICAgICAgICAgYm9hcmQsXG4gICAgICAgICAgICAgICAgICAgIHJlc2l6ZVJlZixcbiAgICAgICAgICAgICAgICAgICAgcmVzaXplU3RhdGUsXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yaWdpblBvaW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlUG9pbnRcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgaXNBc3BlY3RSYXRpbyxcbiAgICAgICAgICAgICAgICAgICAgaXNGcm9tQ29ybmVyXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBjb25zdCByZXNpemVTbmFwUmVmID0gZ2V0U25hcFJlc2l6aW5nUmVmKGJvYXJkLCBbcmVzaXplUmVmLmVsZW1lbnRdLCByZXNpemVTbmFwUmVmT3B0aW9ucyk7XG4gICAgICAgICAgICAgICAgc25hcEcgPSByZXNpemVTbmFwUmVmLnNuYXBHO1xuICAgICAgICAgICAgICAgIFBsYWl0Qm9hcmQuZ2V0RWxlbWVudEFjdGl2ZUhvc3QoYm9hcmQpLmFwcGVuZChzbmFwRyk7XG4gICAgICAgICAgICAgICAgY29uc3QgcG9pbnRzID0gcmVzaXplU25hcFJlZi5hY3RpdmVQb2ludHMgYXMgW1BvaW50LCBQb2ludF07XG4gICAgICAgICAgICAgICAgY29uc3Qgb3JpZ2luUG9pbnRzID0gcmVzaXplUmVmLmVsZW1lbnQucG9pbnRzO1xuICAgICAgICAgICAgICAgIGNvbnN0IG9yaWdpblJlY3QgPSBSZWN0YW5nbGVDbGllbnQuZ2V0UmVjdGFuZ2xlQnlQb2ludHMob3JpZ2luUG9pbnRzKTtcbiAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXRSZWN0ID0gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKHBvaW50cyk7XG4gICAgICAgICAgICAgICAgY29uc3Qgb2Zmc2V0V2lkdGggPSB0YXJnZXRSZWN0LndpZHRoIC0gb3JpZ2luUmVjdC53aWR0aDtcbiAgICAgICAgICAgICAgICBjb25zdCBvZmZzZXRIZWlnaHQgPSB0YXJnZXRSZWN0LmhlaWdodCAtIG9yaWdpblJlY3QuaGVpZ2h0O1xuICAgICAgICAgICAgICAgIGxldCBjb2x1bW5zID0gWy4uLnJlc2l6ZVJlZi5lbGVtZW50LmNvbHVtbnNdO1xuICAgICAgICAgICAgICAgIGxldCByb3dzID0gWy4uLnJlc2l6ZVJlZi5lbGVtZW50LnJvd3NdO1xuICAgICAgICAgICAgICAgIGlmIChvZmZzZXRXaWR0aCAhPT0gMCkge1xuICAgICAgICAgICAgICAgICAgICBjb2x1bW5zID0gY29sdW1ucy5tYXAoaXRlbSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbS53aWR0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBpdGVtLndpZHRoICsgb2Zmc2V0V2lkdGggKiAoaXRlbS53aWR0aCAvIG9yaWdpblJlY3Qud2lkdGgpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKG9mZnNldEhlaWdodCAhPT0gMCkge1xuICAgICAgICAgICAgICAgICAgICByb3dzID0gcm93cy5tYXAoaXRlbSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbS5oZWlnaHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGl0ZW0uaGVpZ2h0ICsgb2Zmc2V0SGVpZ2h0ICogKGl0ZW0uaGVpZ2h0IC8gb3JpZ2luUmVjdC5oZWlnaHQpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlKGJvYXJkLCB7IHBvaW50czogbm9ybWFsaXplU2hhcGVQb2ludHMocG9pbnRzKSwgY29sdW1ucywgcm93cyB9LCBwYXRoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgYWZ0ZXJSZXNpemU6IChyZXNpemVSZWY6IFJlc2l6ZVJlZjxQbGFpdEJhc2VUYWJsZSwgUmVzaXplSGFuZGxlLCBUYWJsZVJlc2l6ZU9wdGlvbnM+KSA9PiB7XG4gICAgICAgICAgICBzbmFwRz8ucmVtb3ZlKCk7XG4gICAgICAgICAgICBzbmFwRyA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgd2l0aFJlc2l6ZTxQbGFpdEJhc2VUYWJsZSwgUmVzaXplSGFuZGxlLCBUYWJsZVJlc2l6ZU9wdGlvbnM+KGJvYXJkLCBvcHRpb25zKTtcblxuICAgIHJldHVybiBib2FyZDtcbn1cbiJdfQ==
|
|
@@ -1,52 +1,70 @@
|
|
|
1
1
|
import { TableComponent } from '../table.component';
|
|
2
|
-
import {
|
|
3
|
-
import { PlaitBoard, RectangleClient, isPolylineHitRectangle, toViewBoxPoint, toHostPoint, getHitElementByPoint } from '@plait/core';
|
|
2
|
+
import { PlaitBoard, RectangleClient, isPolylineHitRectangle, toViewBoxPoint, toHostPoint, getHitElementByPoint, getSelectedElements } from '@plait/core';
|
|
4
3
|
import { editCell, getHitCell } from '../utils/table';
|
|
5
4
|
import { withTableResize } from './with-table-resize';
|
|
5
|
+
import { isVirtualKey, isDelete, isSpaceHotkey } from '@plait/common';
|
|
6
|
+
import { PlaitDrawElement } from '../interfaces';
|
|
6
7
|
export const withTable = (board) => {
|
|
7
8
|
const tableBoard = board;
|
|
8
|
-
const { drawElement, getRectangle, isRectangleHit, isHit, isMovable, dblClick } = tableBoard;
|
|
9
|
+
const { drawElement, getRectangle, isRectangleHit, isHit, isMovable, dblClick, keyDown } = tableBoard;
|
|
9
10
|
tableBoard.drawElement = (context) => {
|
|
10
|
-
if (
|
|
11
|
+
if (PlaitDrawElement.isElementByTable(context.element)) {
|
|
11
12
|
return TableComponent;
|
|
12
13
|
}
|
|
13
14
|
return drawElement(context);
|
|
14
15
|
};
|
|
15
16
|
tableBoard.isHit = (element, point) => {
|
|
16
|
-
if (
|
|
17
|
+
if (PlaitDrawElement.isElementByTable(element)) {
|
|
17
18
|
const client = RectangleClient.getRectangleByPoints(element.points);
|
|
18
19
|
return RectangleClient.isPointInRectangle(client, point);
|
|
19
20
|
}
|
|
20
21
|
return isHit(element, point);
|
|
21
22
|
};
|
|
22
23
|
tableBoard.getRectangle = (element) => {
|
|
23
|
-
if (
|
|
24
|
+
if (PlaitDrawElement.isElementByTable(element)) {
|
|
24
25
|
return RectangleClient.getRectangleByPoints(element.points);
|
|
25
26
|
}
|
|
26
27
|
return getRectangle(element);
|
|
27
28
|
};
|
|
28
29
|
tableBoard.isMovable = (element) => {
|
|
29
|
-
if (
|
|
30
|
+
if (PlaitDrawElement.isElementByTable(element)) {
|
|
30
31
|
return true;
|
|
31
32
|
}
|
|
32
33
|
return isMovable(element);
|
|
33
34
|
};
|
|
34
35
|
tableBoard.isRectangleHit = (element, selection) => {
|
|
35
|
-
if (
|
|
36
|
+
if (PlaitDrawElement.isElementByTable(element)) {
|
|
36
37
|
const rangeRectangle = RectangleClient.getRectangleByPoints([selection.anchor, selection.focus]);
|
|
37
38
|
return isPolylineHitRectangle(element.points, rangeRectangle);
|
|
38
39
|
}
|
|
39
40
|
return isRectangleHit(element, selection);
|
|
40
41
|
};
|
|
42
|
+
tableBoard.keyDown = (event) => {
|
|
43
|
+
const selectedElements = getSelectedElements(board);
|
|
44
|
+
const isSingleSelection = selectedElements.length === 1;
|
|
45
|
+
const targetElement = selectedElements[0];
|
|
46
|
+
if (!PlaitBoard.isReadonly(board) && !isVirtualKey(event) && !isDelete(event) && !isSpaceHotkey(event) && isSingleSelection) {
|
|
47
|
+
event.preventDefault();
|
|
48
|
+
if (PlaitDrawElement.isElementByTable(targetElement)) {
|
|
49
|
+
const firstTextCell = targetElement.cells.find(item => item.text && item.textHeight);
|
|
50
|
+
if (firstTextCell) {
|
|
51
|
+
editCell(firstTextCell);
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
keyDown(event);
|
|
57
|
+
};
|
|
41
58
|
tableBoard.dblClick = (event) => {
|
|
42
59
|
event.preventDefault();
|
|
43
60
|
if (!PlaitBoard.isReadonly(board)) {
|
|
44
61
|
const point = toViewBoxPoint(board, toHostPoint(board, event.x, event.y));
|
|
45
62
|
const hitElement = getHitElementByPoint(board, point);
|
|
46
|
-
if (hitElement &&
|
|
63
|
+
if (hitElement && PlaitDrawElement.isElementByTable(hitElement)) {
|
|
47
64
|
const hitCell = getHitCell(tableBoard, hitElement, point);
|
|
48
65
|
if (hitCell && hitCell.text && hitCell.textHeight) {
|
|
49
66
|
editCell(hitCell);
|
|
67
|
+
return;
|
|
50
68
|
}
|
|
51
69
|
}
|
|
52
70
|
}
|
|
@@ -57,4 +75,4 @@ export const withTable = (board) => {
|
|
|
57
75
|
};
|
|
58
76
|
return withTableResize(tableBoard);
|
|
59
77
|
};
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC10YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2RyYXcvc3JjL3BsdWdpbnMvd2l0aC10YWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsT0FBTyxFQUNILFVBQVUsRUFHVixlQUFlLEVBRWYsc0JBQXNCLEVBQ3RCLGNBQWMsRUFDZCxXQUFXLEVBQ1gsb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUN0QixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtJQUMzQyxNQUFNLFVBQVUsR0FBRyxLQUF3QixDQUFDO0lBRTVDLE1BQU0sRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsR0FBRyxVQUFVLENBQUM7SUFFdEcsVUFBVSxDQUFDLFdBQVcsR0FBRyxDQUFDLE9BQWtDLEVBQUUsRUFBRTtRQUM1RCxJQUFJLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ3JELE9BQU8sY0FBYyxDQUFDO1FBQzFCLENBQUM7UUFDRCxPQUFPLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoQyxDQUFDLENBQUM7SUFFRixVQUFVLENBQUMsS0FBSyxHQUFHLENB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LEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2hDLE1BQU0sS0FBSyxHQUFHLGNBQWMsQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzFFLE1BQU0sVUFBVSxHQUFHLG9CQUFvQixDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztZQUN0RCxJQUFJLFVBQVUsSUFBSSxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO2dCQUM5RCxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDMUQsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLElBQUksSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7b0JBQ2hELFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDbEIsT0FBTztnQkFDWCxDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7UUFDRCxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEIsQ0FBQyxDQUFDO0lBRUYsVUFBVSxDQUFDLFVBQVUsR0FBRyxDQUFDLE9BQXVCLEVBQUUsRUFBRTtRQUNoRCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDLENBQUM7SUFFRixPQUFPLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUN2QyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL3RhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFpdEJhc2VUYWJsZSwgUGxhaXRUYWJsZUJvYXJkIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy90YWJsZSc7XG5pbXBvcnQge1xuICAgIFBsYWl0Qm9hcmQsXG4gICAgUGxhaXRQbHVnaW5FbGVtZW50Q29udGV4dCxcbiAgICBQbGFpdEVsZW1lbnQsXG4gICAgUmVjdGFuZ2xlQ2xpZW50LFxuICAgIFNlbGVjdGlvbixcbiAgICBpc1BvbHlsaW5lSGl0UmVjdGFuZ2xlLFxuICAgIHRvVmlld0JveFBvaW50LFxuICAgIHRvSG9zdFBvaW50LFxuICAgIGdldEhpdEVsZW1lbnRCeVBvaW50LFxuICAgIGdldFNlbGVjdGVkRWxlbWVudHNcbn0gZnJvbSAnQHBsYWl0L2NvcmUnO1xuaW1wb3J0IHsgZWRpdENlbGwsIGdldEhpdENlbGwgfSBmcm9tICcuLi91dGlscy90YWJsZSc7XG5pbXBvcnQgeyB3aXRoVGFibGVSZXNpemUgfSBmcm9tICcuL3dpdGgtdGFibGUtcmVzaXplJztcbmltcG9ydCB7IGlzVmlydHVhbEtleSwgaXNEZWxldGUsIGlzU3BhY2VIb3RrZXkgfSBmcm9tICdAcGxhaXQvY29tbW9uJztcbmltcG9ydCB7IFBsYWl0RHJhd0VsZW1lbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGNvbnN0IHdpdGhUYWJsZSA9IChib2FyZDogUGxhaXRCb2FyZCkgPT4ge1xuICAgIGNvbnN0IHRhYmxlQm9hcmQgPSBib2FyZCBhcyBQbGFpdFRhYmxlQm9hcmQ7XG5cbiAgICBjb25zdCB7IGRyYXdFbGVtZW50LCBnZXRSZWN0YW5nbGUsIGlzUmVjdGFuZ2xlSGl0LCBpc0hpdCwgaXNNb3ZhYmxlLCBkYmxDbGljaywga2V5RG93biB9ID0gdGFibGVCb2FyZDtcblxuICAgIHRhYmxlQm9hcmQuZHJhd0VsZW1lbnQgPSAoY29udGV4dDogUGxhaXRQbHVnaW5FbGVtZW50Q29udGV4dCkgPT4ge1xuICAgICAgICBpZiAoUGxhaXREcmF3RWxlbWVudC5pc0VsZW1lbnRCeVRhYmxlKGNvbnRleHQuZWxlbWVudCkpIHtcbiAgICAgICAgICAgIHJldHVybiBUYWJsZUNvbXBvbmVudDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZHJhd0VsZW1lbnQoY29udGV4dCk7XG4gICAgfTtcblxuICAgIHRhYmxlQm9hcmQuaXNIaXQgPSAoZWxlbWVudCwgcG9pbnQpID0+IHtcbiAgICAgICAgaWYgKFBsYWl0RHJhd0VsZW1lbnQuaXNFbGVtZW50QnlUYWJsZShlbGVtZW50KSkge1xuICAgICAgICAgICAgY29uc3QgY2xpZW50ID0gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGVsZW1lbnQucG9pbnRzKTtcbiAgICAgICAgICAgIHJldHVybiBSZWN0YW5nbGVDbGllbnQuaXNQb2ludEluUmVjdGFuZ2xlKGNsaWVudCwgcG9pbnQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpc0hpdChlbGVtZW50LCBwb2ludCk7XG4gICAgfTtcblxuICAgIHRhYmxlQm9hcmQuZ2V0UmVjdGFuZ2xlID0gKGVsZW1lbnQ6IFBsYWl0RWxlbWVudCkgPT4ge1xuICAgICAgICBpZiAoUGxhaXREcmF3RWxlbWVudC5pc0VsZW1lbnRCeVRhYmxlKGVsZW1lbnQpKSB7XG4gICAgICAgICAgICByZXR1cm4gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGVsZW1lbnQucG9pbnRzKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZ2V0UmVjdGFuZ2xlKGVsZW1lbnQpO1xuICAgIH07XG5cbiAgICB0YWJsZUJvYXJkLmlzTW92YWJsZSA9IChlbGVtZW50OiBQbGFpdEVsZW1lbnQpID0+IHtcbiAgICAgICAgaWYgKFBsYWl0RHJhd0VsZW1lbnQuaXNFbGVtZW50QnlUYWJsZShlbGVtZW50KSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXNNb3ZhYmxlKGVsZW1lbnQpO1xuICAgIH07XG5cbiAgICB0YWJsZUJvYXJkLmlzUmVjdGFuZ2xlSGl0ID0gKGVsZW1lbnQ6IFBsYWl0RWxlbWVudCwgc2VsZWN0aW9uOiBTZWxlY3Rpb24pID0+IHtcbiAgICAgICAgaWYgKFBsYWl0RHJhd0VsZW1lbnQuaXNFbGVtZW50QnlUYWJsZShlbGVtZW50KSkge1xuICAgICAgICAgICAgY29uc3QgcmFuZ2VSZWN0YW5nbGUgPSBSZWN0YW5nbGVDbGllbnQuZ2V0UmVjdGFuZ2xlQnlQb2ludHMoW3NlbGVjdGlvbi5hbmNob3IsIHNlbGVjdGlvbi5mb2N1c10pO1xuICAgICAgICAgICAgcmV0dXJuIGlzUG9seWxpbmVIaXRSZWN0YW5nbGUoZWxlbWVudC5wb2ludHMsIHJhbmdlUmVjdGFuZ2xlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaXNSZWN0YW5nbGVIaXQoZWxlbWVudCwgc2VsZWN0aW9uKTtcbiAgICB9O1xuXG4gICAgdGFibGVCb2FyZC5rZXlEb3duID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkRWxlbWVudHMgPSBnZXRTZWxlY3RlZEVsZW1lbnRzKGJvYXJkKTtcbiAgICAgICAgY29uc3QgaXNTaW5nbGVTZWxlY3Rpb24gPSBzZWxlY3RlZEVsZW1lbnRzLmxlbmd0aCA9PT0gMTtcbiAgICAgICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IHNlbGVjdGVkRWxlbWVudHNbMF07XG4gICAgICAgIGlmICghUGxhaXRCb2FyZC5pc1JlYWRvbmx5KGJvYXJkKSAmJiAhaXNWaXJ0dWFsS2V5KGV2ZW50KSAmJiAhaXNEZWxldGUoZXZlbnQpICYmICFpc1NwYWNlSG90a2V5KGV2ZW50KSAmJiBpc1NpbmdsZVNlbGVjdGlvbikge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGlmIChQbGFpdERyYXdFbGVtZW50LmlzRWxlbWVudEJ5VGFibGUodGFyZ2V0RWxlbWVudCkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaXJzdFRleHRDZWxsID0gdGFyZ2V0RWxlbWVudC5jZWxscy5maW5kKGl0ZW0gPT4gaXRlbS50ZXh0ICYmIGl0ZW0udGV4dEhlaWdodCk7XG4gICAgICAgICAgICAgICAgaWYgKGZpcnN0VGV4dENlbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZWRpdENlbGwoZmlyc3RUZXh0Q2VsbCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAga2V5RG93bihldmVudCk7XG4gICAgfTtcblxuICAgIHRhYmxlQm9hcmQuZGJsQ2xpY2sgPSAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgaWYgKCFQbGFpdEJvYXJkLmlzUmVhZG9ubHkoYm9hcmQpKSB7XG4gICAgICAgICAgICBjb25zdCBwb2ludCA9IHRvVmlld0JveFBvaW50KGJvYXJkLCB0b0hvc3RQb2ludChib2FyZCwgZXZlbnQueCwgZXZlbnQueSkpO1xuICAgICAgICAgICAgY29uc3QgaGl0RWxlbWVudCA9IGdldEhpdEVsZW1lbnRCeVBvaW50KGJvYXJkLCBwb2ludCk7XG4gICAgICAgICAgICBpZiAoaGl0RWxlbWVudCAmJiBQbGFpdERyYXdFbGVtZW50LmlzRWxlbWVudEJ5VGFibGUoaGl0RWxlbWVudCkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBoaXRDZWxsID0gZ2V0SGl0Q2VsbCh0YWJsZUJvYXJkLCBoaXRFbGVtZW50LCBwb2ludCk7XG4gICAgICAgICAgICAgICAgaWYgKGhpdENlbGwgJiYgaGl0Q2VsbC50ZXh0ICYmIGhpdENlbGwudGV4dEhlaWdodCkge1xuICAgICAgICAgICAgICAgICAgICBlZGl0Q2VsbChoaXRDZWxsKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBkYmxDbGljayhldmVudCk7XG4gICAgfTtcblxuICAgIHRhYmxlQm9hcmQuYnVpbGRUYWJsZSA9IChlbGVtZW50OiBQbGFpdEJhc2VUYWJsZSkgPT4ge1xuICAgICAgICByZXR1cm4gZWxlbWVudDtcbiAgICB9O1xuXG4gICAgcmV0dXJuIHdpdGhUYWJsZVJlc2l6ZSh0YWJsZUJvYXJkKTtcbn07XG4iXX0=
|
|
@@ -5,7 +5,7 @@ import { getTextManage, TextGenerator } from './generators/text.generator';
|
|
|
5
5
|
import { TableGenerator } from './generators/table.generator';
|
|
6
6
|
import { DrawTransforms } from './transforms';
|
|
7
7
|
import { getCellWithPoints, isCellIncludeText } from './utils/table';
|
|
8
|
-
import { getStrokeWidthByElement, memorizeLatestText } from './utils';
|
|
8
|
+
import { clearSelectedCells, getCellsRectangle, getSelectedCells, getStrokeWidthByElement, memorizeLatestText, setSelectedCells } from './utils';
|
|
9
9
|
import { getEngine } from './engines';
|
|
10
10
|
import { TableSymbols } from './interfaces';
|
|
11
11
|
import { getHorizontalTextRectangle } from './engines/table/table';
|
|
@@ -24,9 +24,17 @@ export class TableComponent extends CommonElementFlavour {
|
|
|
24
24
|
return 1;
|
|
25
25
|
},
|
|
26
26
|
getRectangle: (value) => {
|
|
27
|
+
const cells = getSelectedCells(value);
|
|
28
|
+
if (cells?.length) {
|
|
29
|
+
return getCellsRectangle(this.board, this.element, cells);
|
|
30
|
+
}
|
|
27
31
|
return RectangleClient.getRectangleByPoints(value.points);
|
|
28
32
|
},
|
|
29
33
|
hasResizeHandle: () => {
|
|
34
|
+
const cells = getSelectedCells(this.element);
|
|
35
|
+
if (cells?.length) {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
30
38
|
return canResize(this.board, this.element);
|
|
31
39
|
}
|
|
32
40
|
});
|
|
@@ -49,7 +57,8 @@ export class TableComponent extends CommonElementFlavour {
|
|
|
49
57
|
});
|
|
50
58
|
}
|
|
51
59
|
rotateVerticalText() {
|
|
52
|
-
this.
|
|
60
|
+
const table = this.board.buildTable(this.element);
|
|
61
|
+
table.cells.forEach(item => {
|
|
53
62
|
if (PlaitTableElement.isVerticalText(item)) {
|
|
54
63
|
const textManage = getTextManage(item.id);
|
|
55
64
|
if (textManage) {
|
|
@@ -75,14 +84,14 @@ export class TableComponent extends CommonElementFlavour {
|
|
|
75
84
|
}
|
|
76
85
|
initializeTextManage() {
|
|
77
86
|
const texts = this.getDrawShapeTexts(this.element.cells);
|
|
78
|
-
this.textGenerator = new TextGenerator(this.board, this.element, texts,
|
|
79
|
-
|
|
80
|
-
const height =
|
|
81
|
-
const width =
|
|
82
|
-
if (
|
|
83
|
-
DrawTransforms.setTableText(this.board, value, text.key,
|
|
87
|
+
this.textGenerator = new TextGenerator(this.board, this.element, texts, {
|
|
88
|
+
onChange: (value, data, text) => {
|
|
89
|
+
const height = data.height / this.board.viewport.zoom;
|
|
90
|
+
const width = data.width / this.board.viewport.zoom;
|
|
91
|
+
if (data.newText) {
|
|
92
|
+
DrawTransforms.setTableText(this.board, value, text.key, data.newText, width, height);
|
|
84
93
|
}
|
|
85
|
-
|
|
94
|
+
data.operations && memorizeLatestText(value, data.operations);
|
|
86
95
|
},
|
|
87
96
|
getRenderRectangle: (value, text) => {
|
|
88
97
|
const cell = getCellWithPoints(this.board, value, text.key);
|
|
@@ -106,7 +115,13 @@ export class TableComponent extends CommonElementFlavour {
|
|
|
106
115
|
this.textGenerator.initialize();
|
|
107
116
|
}
|
|
108
117
|
onContextChanged(value, previous) {
|
|
109
|
-
|
|
118
|
+
const isChangeTheme = this.board.operations.find(op => op.type === 'set_theme');
|
|
119
|
+
if (value.element !== previous.element || isChangeTheme) {
|
|
120
|
+
const previousSelectedCells = getSelectedCells(previous.element);
|
|
121
|
+
if (previousSelectedCells?.length) {
|
|
122
|
+
clearSelectedCells(previous.element);
|
|
123
|
+
setSelectedCells(value.element, previousSelectedCells);
|
|
124
|
+
}
|
|
110
125
|
this.tableGenerator.processDrawing(value.element, this.getElementG());
|
|
111
126
|
this.activeGenerator.processDrawing(value.element, PlaitBoard.getElementActiveHost(this.board), { selected: this.selected });
|
|
112
127
|
const previousTexts = this.getDrawShapeTexts(previous.element.cells);
|
|
@@ -117,11 +132,15 @@ export class TableComponent extends CommonElementFlavour {
|
|
|
117
132
|
else {
|
|
118
133
|
const hasSameSelected = value.selected === previous.selected;
|
|
119
134
|
const hasSameHandleState = this.activeGenerator.options.hasResizeHandle() === this.activeGenerator.hasResizeHandle;
|
|
120
|
-
|
|
135
|
+
const currentSelectedCells = getSelectedCells(value.element);
|
|
136
|
+
if (!hasSameSelected || !hasSameHandleState || currentSelectedCells?.length) {
|
|
121
137
|
this.activeGenerator.processDrawing(value.element, PlaitBoard.getElementActiveHost(this.board), {
|
|
122
138
|
selected: this.selected
|
|
123
139
|
});
|
|
124
140
|
}
|
|
141
|
+
if (!this.selected) {
|
|
142
|
+
clearSelectedCells(value.element);
|
|
143
|
+
}
|
|
125
144
|
}
|
|
126
145
|
this.lineAutoCompleteGenerator.processDrawing(this.element, PlaitBoard.getElementActiveHost(this.board), {
|
|
127
146
|
selected: this.selected
|
|
@@ -135,4 +154,4 @@ export class TableComponent extends CommonElementFlavour {
|
|
|
135
154
|
this.lineAutoCompleteGenerator.destroy();
|
|
136
155
|
}
|
|
137
156
|
}
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGFja2FnZXMvZHJhdy9zcmMvdGFibGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxVQUFVLEVBR1YsbUJBQW1CLEVBQ25CLGVBQWUsRUFDZixZQUFZLEVBQ1osZ0JBQWdCLEVBQ25CLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pGLE9BQU8sRUFBOEIsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRixPQUFPLEVBQUUsYUFBYSxFQUFzQixhQUFhLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM5QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGtCQUFrQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDdEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM1QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDaEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFdEYsTUFBTSxPQUFPLGNBQXFDLFNBQVEsb0JBQW1DO0lBU3pGO1FBQ0ksS0FBSyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsbUJBQW1CO1FBQ2YsSUFBSSxDQUFDLGVBQWUs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QyxjQUFjLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO29CQUM1RixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7aUJBQzFCLENBQUMsQ0FBQztZQUNQLENBQUM7UUFDTCxDQUFDO1FBQ0QsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDckcsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQzFCLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxPQUFPO1FBQ0gsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDL0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIFBsYWl0Qm9hcmQsXG4gICAgUGxhaXRQbHVnaW5FbGVtZW50Q29udGV4dCxcbiAgICBPbkNvbnRleHRDaGFuZ2VkLFxuICAgIEFDVElWRV9TVFJPS0VfV0lEVEgsXG4gICAgUmVjdGFuZ2xlQ2xpZW50LFxuICAgIHNldEFuZ2xlRm9yRyxcbiAgICBkZWdyZWVzVG9SYWRpYW5zXG59IGZyb20gJ0BwbGFpdC9jb3JlJztcbmltcG9ydCB7IEFjdGl2ZUdlbmVyYXRvciwgQ29tbW9uRWxlbWVudEZsYXZvdXIsIGNhblJlc2l6ZSB9IGZyb20gJ0BwbGFpdC9jb21tb24nO1xuaW1wb3J0IHsgUGxhaXRUYWJsZSwgUGxhaXRUYWJsZUNlbGwsIFBsYWl0VGFibGVFbGVtZW50IH0gZnJvbSAnLi9pbnRlcmZhY2VzL3RhYmxlJztcbmltcG9ydCB7IGdldFRleHRNYW5hZ2UsIFBsYWl0RHJhd1NoYXBlVGV4dCwgVGV4dEdlbmVyYXRvciB9IGZyb20gJy4vZ2VuZXJhdG9ycy90ZXh0LmdlbmVyYXRvcic7XG5pbXBvcnQgeyBUYWJsZUdlbmVyYXRvciB9IGZyb20gJy4vZ2VuZXJhdG9ycy90YWJsZS5nZW5lcmF0b3InO1xuaW1wb3J0IHsgVGV4dE1hbmFnZVJlZiB9IGZyb20gJ0BwbGFpdC90ZXh0JztcbmltcG9ydCB7IERyYXdUcmFuc2Zvcm1zIH0gZnJvbSAnLi90cmFuc2Zvcm1zJztcbmltcG9ydCB7IGdldENlbGxXaXRoUG9pbnRzLCBpc0NlbGxJbmNsdWRlVGV4dCB9IGZyb20gJy4vdXRpbHMvdGFibGUnO1xuaW1wb3J0IHsgZ2V0U3Ryb2tlV2lkdGhCeUVsZW1lbnQsIG1lbW9yaXplTGF0ZXN0VGV4dCB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgZ2V0RW5naW5lIH0gZnJvbSAnLi9lbmdpbmVzJztcbmltcG9ydCB7IFRhYmxlU3ltYm9scyB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBnZXRIb3Jpem9udGFsVGV4dFJlY3RhbmdsZSB9IGZyb20gJy4vZW5naW5lcy90YWJsZS90YWJsZSc7XG5pbXBvcnQgeyBTaGFwZURlZmF1bHRTcGFjZSB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IExpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3IgfSBmcm9tICcuL2dlbmVyYXRvcnMvbGluZS1hdXRvLWNvbXBsZXRlLmdlbmVyYXRvcic7XG5cbmV4cG9ydCBjbGFzcyBUYWJsZUNvbXBvbmVudDxUIGV4dGVuZHMgUGxhaXRUYWJsZT4gZXh0ZW5kcyBDb21tb25FbGVtZW50Rmxhdm91cjxULCBQbGFpdEJvYXJkPiBpbXBsZW1lbnRzIE9uQ29udGV4dENoYW5nZWQ8VCwgUGxhaXRCb2FyZD4ge1xuICAgIGFjdGl2ZUdlbmVyYXRvciE6IEFjdGl2ZUdlbmVyYXRvcjxUPjtcblxuICAgIHRhYmxlR2VuZXJhdG9yITogVGFibGVHZW5lcmF0b3I8VD47XG5cbiAgICB0ZXh0R2VuZXJhdG9yITogVGV4dEdlbmVyYXRvcjxUPjtcblxuICAgIGxpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3IhOiBMaW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yPFBsYWl0VGFibGU+O1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgaW5pdGlhbGl6ZUdlbmVyYXRvcigpIHtcbiAgICAgICAgdGhpcy5hY3RpdmVHZW5lcmF0b3IgPSBuZXcgQWN0aXZlR2VuZXJhdG9yPFQ+KHRoaXMuYm9hcmQsIHtcbiAgICAgICAgICAgIGdldFN0cm9rZVdpZHRoOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIEFDVElWRV9TVFJPS0VfV0lEVEg7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZ2V0U3Ryb2tlT3BhY2l0eTogKCkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiAxO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGdldFJlY3RhbmdsZTogKHZhbHVlOiBUKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFJlY3RhbmdsZUNsaWVudC5nZXRSZWN0YW5nbGVCeVBvaW50cyh2YWx1ZS5wb2ludHMhKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBoYXNSZXNpemVIYW5kbGU6ICgpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY2FuUmVzaXplKHRoaXMuYm9hcmQsIHRoaXMuZWxlbWVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnRhYmxlR2VuZXJhdG9yID0gbmV3IFRhYmxlR2VuZXJhdG9yPFQ+KHRoaXMuYm9hcmQpO1xuICAgICAgICB0aGlzLmluaXRpYWxpemVUZXh0TWFuYWdlKCk7XG4gICAgICAgIHRoaXMubGluZUF1dG9Db21wbGV0ZUdlbmVyYXRvciA9IG5ldyBMaW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yKHRoaXMuYm9hcmQpO1xuICAgICAgICB0aGlzLmdldFJlZigpLmFkZEdlbmVyYXRvcihMaW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yLmtleSwgdGhpcy5saW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yKTtcbiAgICB9XG5cbiAgICBpbml0aWFsaXplKCk6IHZvaWQge1xuICAgICAgICBzdXBlci5pbml0aWFsaXplKCk7XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZUdlbmVyYXRvcigpO1xuICAgICAgICB0aGlzLmRyYXcoKTtcbiAgICB9XG5cbiAgICBkcmF3KCkge1xuICAgICAgICB0aGlzLnRhYmxlR2VuZXJhdG9yLnByb2Nlc3NEcmF3aW5nKHRoaXMuZWxlbWVudCwgdGhpcy5nZXRFbGVtZW50RygpKTtcbiAgICAgICAgdGhpcy50ZXh0R2VuZXJhdG9yLmRyYXcodGhpcy5nZXRFbGVtZW50RygpKTtcbiAgICAgICAgdGhpcy5yb3RhdGVWZXJ0aWNhbFRleHQoKTtcbiAgICAgICAgdGhpcy5saW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yLnByb2Nlc3NEcmF3aW5nKHRoaXMuZWxlbWVudCwgUGxhaXRCb2FyZC5nZXRFbGVtZW50QWN0aXZlSG9zdCh0aGlzLmJvYXJkKSwge1xuICAgICAgICAgICAgc2VsZWN0ZWQ6IHRoaXMuc2VsZWN0ZWRcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcm90YXRlVmVydGljYWxUZXh0KCkge1xuICAgICAgICB0aGlzLmVsZW1lbnQuY2VsbHMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgICAgIGlmIChQbGFpdFRhYmxlRWxlbWVudC5pc1ZlcnRpY2FsVGV4dChpdGVtKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRleHRNYW5hZ2UgPSBnZXRUZXh0TWFuYWdlKGl0ZW0uaWQpO1xuICAgICAgICAgICAgICAgIGlmICh0ZXh0TWFuYWdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGVuZ2luZSA9IGdldEVuZ2luZTxQbGFpdFRhYmxlPihUYWJsZVN5bWJvbHMudGFibGUpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZWN0YW5nbGUgPSBlbmdpbmUuZ2V0VGV4dFJlY3RhbmdsZSEodGhpcy5lbGVtZW50LCB7IGtleTogaXRlbS5pZCwgYm9hcmQ6IHRoaXMuYm9hcmQgfSk7XG4gICAgICAgICAgICAgICAgICAgIHRleHRNYW5hZ2UuZy5jbGFzc0xpc3QuYWRkKCd2ZXJ0aWNhbC1jZWxsLXRleHQnKTtcbiAgICAgICAgICAgICAgICAgICAgc2V0QW5nbGVGb3JHKHRleHRNYW5hZ2UuZywgUmVjdGFuZ2xlQ2xpZW50LmdldENlbnRlclBvaW50KHJlY3RhbmdsZSksIGRlZ3JlZXNUb1JhZGlhbnMoLTkwKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXREcmF3U2hhcGVUZXh0cyhjZWxsczogUGxhaXRUYWJsZUNlbGxbXSk6IFBsYWl0RHJhd1NoYXBlVGV4dFtdIHtcbiAgICAgICAgcmV0dXJuIGNlbGxzXG4gICAgICAgICAgICAuZmlsdGVyKGl0ZW0gPT4gaXNDZWxsSW5jbHVkZVRleHQoaXRlbSkpXG4gICAgICAgICAgICAubWFwKGl0ZW0gPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIGtleTogaXRlbS5pZCxcbiAgICAgICAgICAgICAgICAgICAgdGV4dDogaXRlbS50ZXh0ISxcbiAgICAgICAgICAgICAgICAgICAgdGV4dEhlaWdodDogaXRlbS50ZXh0SGVpZ2h0ISxcbiAgICAgICAgICAgICAgICAgICAgYm9hcmQ6IHRoaXMuYm9hcmRcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgaW5pdGlhbGl6ZVRleHRNYW5hZ2UoKSB7XG4gICAgICAgIGNvbnN0IHRleHRzID0gdGhpcy5nZXREcmF3U2hhcGVUZXh0cyh0aGlzLmVsZW1lbnQuY2VsbHMpO1xuICAgICAgICB0aGlzLnRleHRHZW5lcmF0b3IgPSBuZXcgVGV4dEdlbmVyYXRvcih0aGlzLmJvYXJkLCB0aGlzLmVsZW1lbnQsIHRleHRzLCBQbGFpdEJvYXJkLmdldFZpZXdDb250YWluZXJSZWYodGhpcy5ib2FyZCksIHtcbiAgICAgICAgICAgIG9uVmFsdWVDaGFuZ2VIYW5kbGU6ICh2YWx1ZTogUGxhaXRUYWJsZSwgdGV4dE1hbmFnZVJlZjogVGV4dE1hbmFnZVJlZiwgdGV4dDogUGxhaXREcmF3U2hhcGVUZXh0KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgaGVpZ2h0ID0gdGV4dE1hbmFnZVJlZi5oZWlnaHQgLyB0aGlzLmJvYXJkLnZpZXdwb3J0Lnpvb207XG4gICAgICAgICAgICAgICAgY29uc3Qgd2lkdGggPSB0ZXh0TWFuYWdlUmVmLndpZHRoIC8gdGhpcy5ib2FyZC52aWV3cG9ydC56b29tO1xuICAgICAgICAgICAgICAgIGlmICh0ZXh0TWFuYWdlUmVmLm5ld1ZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgIERyYXdUcmFuc2Zvcm1zLnNldFRhYmxlVGV4dCh0aGlzLmJvYXJkLCB2YWx1ZSwgdGV4dC5rZXksIHRleHRNYW5hZ2VSZWYubmV3VmFsdWUsIHdpZHRoLCBoZWlnaHQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0ZXh0TWFuYWdlUmVmLm9wZXJhdGlvbnMgJiYgbWVtb3JpemVMYXRlc3RUZXh0KHZhbHVlLCB0ZXh0TWFuYWdlUmVmLm9wZXJhdGlvbnMpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGdldFJlbmRlclJlY3RhbmdsZTogKHZhbHVlOiBQbGFpdFRhYmxlLCB0ZXh0OiBQbGFpdERyYXdTaGFwZVRleHQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjZWxsID0gZ2V0Q2VsbFdpdGhQb2ludHModGhpcy5ib2FyZCwgdmFsdWUsIHRleHQua2V5KTtcbiAgICAgICAgICAgICAgICBpZiAoUGxhaXRUYWJsZUVsZW1lbnQuaXNWZXJ0aWNhbFRleHQoY2VsbCkpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2VsbFJlY3RhbmdsZSA9IFJlY3RhbmdsZUNsaWVudC5nZXRSZWN0YW5nbGVCeVBvaW50cyhjZWxsLnBvaW50cyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cm9rZVdpZHRoID0gZ2V0U3Ryb2tlV2lkdGhCeUVsZW1lbnQoY2VsbCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHdpZHRoID0gY2VsbC50ZXh0SGVpZ2h0IHx8IDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGhlaWdodCA9IGNlbGxSZWN0YW5nbGUuaGVpZ2h0IC0gU2hhcGVEZWZhdWx0U3BhY2UucmVjdGFuZ2xlQW5kVGV4dCAqIDIgLSBzdHJva2VXaWR0aCAqIDI7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogaGVpZ2h0ID4gMCA/IGhlaWdodCA6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICB4OiBjZWxsUmVjdGFuZ2xlLnggKyBTaGFwZURlZmF1bHRTcGFjZS5yZWN0YW5nbGVBbmRUZXh0ICsgc3Ryb2tlV2lkdGgsXG4gICAgICAgICAgICAgICAgICAgICAgICB5OiBjZWxsUmVjdGFuZ2xlLnkgKyAoY2VsbFJlY3RhbmdsZS5oZWlnaHQgLSBoZWlnaHQpIC8gMlxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBnZXRIb3Jpem9udGFsVGV4dFJlY3RhbmdsZShjZWxsKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnRleHRHZW5lcmF0b3IuaW5pdGlhbGl6ZSgpO1xuICAgIH1cblxuICAgIG9uQ29udGV4dENoYW5nZWQodmFsdWU6IFBsYWl0UGx1Z2luRWxlbWVudENvbnRleHQ8VCwgUGxhaXRCb2FyZD4sIHByZXZpb3VzOiBQbGFpdFBsdWdpbkVsZW1lbnRDb250ZXh0PFQsIFBsYWl0Qm9hcmQ+KSB7XG4gICAgICAgIGlmICh2YWx1ZS5lbGVtZW50ICE9PSBwcmV2aW91cy5lbGVtZW50KSB7XG4gICAgICAgICAgICB0aGlzLnRhYmxlR2VuZXJhdG9yLnByb2Nlc3NEcmF3aW5nKHZhbHVlLmVsZW1lbnQsIHRoaXMuZ2V0RWxlbWVudEcoKSk7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZUdlbmVyYXRvci5wcm9jZXNzRHJhd2luZyh2YWx1ZS5lbGVtZW50LCBQbGFpdEJvYXJkLmdldEVsZW1lbnRBY3RpdmVIb3N0KHRoaXMuYm9hcmQpLCB7IHNlbGVjdGVkOiB0aGlzLnNlbGVjdGVkIH0pO1xuICAgICAgICAgICAgY29uc3QgcHJldmlvdXNUZXh0cyA9IHRoaXMuZ2V0RHJhd1NoYXBlVGV4dHMocHJldmlvdXMuZWxlbWVudC5jZWxscyk7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50VGV4dHMgPSB0aGlzLmdldERyYXdTaGFwZVRleHRzKHZhbHVlLmVsZW1lbnQuY2VsbHMpO1xuICAgICAgICAgICAgdGhpcy50ZXh0R2VuZXJhdG9yLnVwZGF0ZSh2YWx1ZS5lbGVtZW50LCBwcmV2aW91c1RleHRzLCBjdXJyZW50VGV4dHMsIHRoaXMuZ2V0RWxlbWVudEcoKSk7XG4gICAgICAgICAgICB0aGlzLnJvdGF0ZVZlcnRpY2FsVGV4dCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgaGFzU2FtZVNlbGVjdGVkID0gdmFsdWUuc2VsZWN0ZWQgPT09IHByZXZpb3VzLnNlbGVjdGVkO1xuICAgICAgICAgICAgY29uc3QgaGFzU2FtZUhhbmRsZVN0YXRlID0gdGhpcy5hY3RpdmVHZW5lcmF0b3Iub3B0aW9ucy5oYXNSZXNpemVIYW5kbGUoKSA9PT0gdGhpcy5hY3RpdmVHZW5lcmF0b3IuaGFzUmVzaXplSGFuZGxlO1xuICAgICAgICAgICAgaWYgKCFoYXNTYW1lU2VsZWN0ZWQgfHwgIWhhc1NhbWVIYW5kbGVTdGF0ZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuYWN0aXZlR2VuZXJhdG9yLnByb2Nlc3NEcmF3aW5nKHZhbHVlLmVsZW1lbnQsIFBsYWl0Qm9hcmQuZ2V0RWxlbWVudEFjdGl2ZUhvc3QodGhpcy5ib2FyZCksIHtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWQ6IHRoaXMuc2VsZWN0ZWRcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLmxpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3IucHJvY2Vzc0RyYXdpbmcodGhpcy5lbGVtZW50LCBQbGFpdEJvYXJkLmdldEVsZW1lbnRBY3RpdmVIb3N0KHRoaXMuYm9hcmQpLCB7XG4gICAgICAgICAgICBzZWxlY3RlZDogdGhpcy5zZWxlY3RlZFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBkZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5kZXN0cm95KCk7XG4gICAgICAgIHRoaXMuYWN0aXZlR2VuZXJhdG9yLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy50YWJsZUdlbmVyYXRvci5kZXN0cm95KCk7XG4gICAgICAgIHRoaXMudGV4dEdlbmVyYXRvci5kZXN0cm95KCk7XG4gICAgICAgIHRoaXMubGluZUF1dG9Db21wbGV0ZUdlbmVyYXRvci5kZXN0cm95KCk7XG4gICAgfVxufVxuIl19
|
|
157
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGFja2FnZXMvZHJhdy9zcmMvdGFibGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxVQUFVLEVBR1YsbUJBQW1CLEVBQ25CLGVBQWUsRUFDZixZQUFZLEVBQ1osZ0JBQWdCLEVBQ25CLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQXdCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RyxPQUFPLEVBQStDLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEcsT0FBTyxFQUFFLGFBQWEsRUFBc0IsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQix1QkFBdUIsRUFDdkIsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNuQixNQUFNLFNBQVMsQ0FBQztBQUNqQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDNUMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2hELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRXRGLE1BQU0sT0FBTyxjQUFxQyxTQUFRLG9CQUFtQztJQVN6RjtRQUNJLEtBQUssRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELG1CQUFtQjtRQUNmLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxlQUFlLENBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUN0RCxjQUFjLEVBQUUsR0FBRyxFQUFFO2dCQUNqQixPQUFPLG1CQUFtQixDQUFDO1lBQy9CLENBQUM7WUFDRCxnQkFBZ0IsRUFBRSxHQUFHLEVBQUU7Z0JBQ25CLE9BQU8sQ0FBQyxDQUFDO1lBQ2IsQ0FBQztZQUNELFlBQVksRUFBRSxDQUFDLEtBQVEsRUFBRSxFQUFFO2dCQUN2QixNQUFNLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDdEMsSUFBSSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUM7b0JBQ2hCLE9BQU8saUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQXdCLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDakYsQ0FBQztnQkFDRCxPQUFPLGVBQWUsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsTUFBTyxDQUFDLENBQUM7WUFDL0QsQ0FBQztZQUNELGVBQWUsRUFBRSxHQUFHLEVBQUU7Z0JBQ2xCLE1BQU0sS0FBSyxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDN0MsSUFBSSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUM7b0JBQ2hCLE9BQU8sS0FBSyxDQUFDO2dCQUNqQixDQUFDO2dCQUNELE9BQU8sU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQy9DLENBQUM7U0FDSixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksY0FBYyxDQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0UsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFlBQVksQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVELFVBQVU7UUFDTixLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxJQUFJO1FBQ0EsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUNyRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMseUJBQXlCLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNyRyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDMUIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGtCQUFrQjtRQUNkLE1BQU0sS0FBSyxHQUFJLElBQUksQ0FBQyxLQUF5QixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkUsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDdkIsSUFBSSxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDekMsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDMUMsSUFBSSxVQUFVLEVBQUUsQ0FBQztvQkFDYixNQUFNLE1BQU0sR0FBRyxTQUFTLENBQWEsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUN6RCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsZ0JBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztvQkFDOUYsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLENBQUM7b0JBQ2pELFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLGVBQWUsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNqRyxDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGlCQUFpQixDQUFDLEtBQXVCO1FBQ3JDLE9BQU8sS0FBSzthQUNQLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3ZDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNSLE9BQU87Z0JBQ0gsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFO2dCQUNaLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSztnQkFDaEIsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFXO2dCQUM1QixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7YUFDcEIsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELG9CQUFvQjtRQUNoQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUU7WUFDcEUsUUFBUSxFQUFFLENBQUMsS0FBaUIsRUFBRSxJQUEwQixFQUFFLElBQXdCLEVBQUUsRUFBRTtnQkFDbEYsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7Z0JBQ3RELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO2dCQUNwRCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDZixjQUFjLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQzFGLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLFVBQVUsSUFBSSxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ2xFLENBQUM7WUFDRCxrQkFBa0IsRUFBRSxDQUFDLEtBQWlCLEVBQUUsSUFBd0IsRUFBRSxFQUFFO2dCQUNoRSxNQUFNLElBQUksR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzVELElBQUksaUJBQWlCLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7b0JBQ3pDLE1BQU0sYUFBYSxHQUFHLGVBQWUsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ3hFLE1BQU0sV0FBVyxHQUFHLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNsRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsQ0FBQztvQkFDbkMsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLE1BQU0sR0FBRyxpQkFBaUIsQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLEdBQUcsV0FBVyxHQUFHLENBQUMsQ0FBQztvQkFDL0YsT0FBTzt3QkFDSCxLQUFLO3dCQUNMLE1BQU0sRUFBRSxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7d0JBQy9CLENBQUMsRUFBRSxhQUFhLENBQUMsQ0FBQyxHQUFHLGlCQUFpQixDQUFDLGdCQUFnQixHQUFHLFdBQVc7d0JBQ3JFLENBQUMsRUFBRSxhQUFhLENBQUMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDO3FCQUMzRCxDQUFDO2dCQUNOLENBQUM7cUJBQU0sQ0FBQztvQkFDSixPQUFPLDBCQUEwQixDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM1QyxDQUFDO1lBQ0wsQ0FBQztTQUNKLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQStDLEVBQUUsUUFBa0Q7UUFDaEgsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksS0FBSyxXQUFXLENBQUMsQ0FBQztRQUNoRixJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssUUFBUSxDQUFDLE9BQU8sSUFBSSxhQUFhLEVBQUUsQ0FBQztZQUN0RCxNQUFNLHFCQUFxQixHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNqRSxJQUFJLHFCQUFxQixFQUFFLE1BQU0sRUFBRSxDQUFDO2dCQUNoQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3JDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUscUJBQXFCLENBQUMsQ0FBQztZQUMzRCxDQUFDO1lBQ0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUN0RSxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFDN0gsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckUsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1lBQzFGLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQzlCLENBQUM7YUFBTSxDQUFDO1lBQ0osTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUMsUUFBUSxDQUFDO1lBQzdELE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLEtBQUssSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUM7WUFDbkgsTUFBTSxvQkFBb0IsR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDN0QsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLGtCQUFrQixJQUFJLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxDQUFDO2dCQUMxRSxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7b0JBQzVGLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtpQkFDMUIsQ0FBQyxDQUFDO1lBQ1AsQ0FBQztZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN0QyxDQUFDO1FBQ0wsQ0FBQztRQUNELElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3JHLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtTQUMxQixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsT0FBTztRQUNILEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMseUJBQXlCLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDN0MsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBQbGFpdEJvYXJkLFxuICAgIFBsYWl0UGx1Z2luRWxlbWVudENvbnRleHQsXG4gICAgT25Db250ZXh0Q2hhbmdlZCxcbiAgICBBQ1RJVkVfU1RST0tFX1dJRFRILFxuICAgIFJlY3RhbmdsZUNsaWVudCxcbiAgICBzZXRBbmdsZUZvckcsXG4gICAgZGVncmVlc1RvUmFkaWFuc1xufSBmcm9tICdAcGxhaXQvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmVHZW5lcmF0b3IsIENvbW1vbkVsZW1lbnRGbGF2b3VyLCBUZXh0TWFuYWdlQ2hhbmdlRGF0YSwgY2FuUmVzaXplIH0gZnJvbSAnQHBsYWl0L2NvbW1vbic7XG5pbXBvcnQgeyBQbGFpdFRhYmxlLCBQbGFpdFRhYmxlQm9hcmQsIFBsYWl0VGFibGVDZWxsLCBQbGFpdFRhYmxlRWxlbWVudCB9IGZyb20gJy4vaW50ZXJmYWNlcy90YWJsZSc7XG5pbXBvcnQgeyBnZXRUZXh0TWFuYWdlLCBQbGFpdERyYXdTaGFwZVRleHQsIFRleHRHZW5lcmF0b3IgfSBmcm9tICcuL2dlbmVyYXRvcnMvdGV4dC5nZW5lcmF0b3InO1xuaW1wb3J0IHsgVGFibGVHZW5lcmF0b3IgfSBmcm9tICcuL2dlbmVyYXRvcnMvdGFibGUuZ2VuZXJhdG9yJztcbmltcG9ydCB7IERyYXdUcmFuc2Zvcm1zIH0gZnJvbSAnLi90cmFuc2Zvcm1zJztcbmltcG9ydCB7IGdldENlbGxXaXRoUG9pbnRzLCBpc0NlbGxJbmNsdWRlVGV4dCB9IGZyb20gJy4vdXRpbHMvdGFibGUnO1xuaW1wb3J0IHtcbiAgICBjbGVhclNlbGVjdGVkQ2VsbHMsXG4gICAgZ2V0Q2VsbHNSZWN0YW5nbGUsXG4gICAgZ2V0U2VsZWN0ZWRDZWxscyxcbiAgICBnZXRTdHJva2VXaWR0aEJ5RWxlbWVudCxcbiAgICBtZW1vcml6ZUxhdGVzdFRleHQsXG4gICAgc2V0U2VsZWN0ZWRDZWxsc1xufSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IGdldEVuZ2luZSB9IGZyb20gJy4vZW5naW5lcyc7XG5pbXBvcnQgeyBUYWJsZVN5bWJvbHMgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgZ2V0SG9yaXpvbnRhbFRleHRSZWN0YW5nbGUgfSBmcm9tICcuL2VuZ2luZXMvdGFibGUvdGFibGUnO1xuaW1wb3J0IHsgU2hhcGVEZWZhdWx0U3BhY2UgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBMaW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yIH0gZnJvbSAnLi9nZW5lcmF0b3JzL2xpbmUtYXV0by1jb21wbGV0ZS5nZW5lcmF0b3InO1xuXG5leHBvcnQgY2xhc3MgVGFibGVDb21wb25lbnQ8VCBleHRlbmRzIFBsYWl0VGFibGU+IGV4dGVuZHMgQ29tbW9uRWxlbWVudEZsYXZvdXI8VCwgUGxhaXRCb2FyZD4gaW1wbGVtZW50cyBPbkNvbnRleHRDaGFuZ2VkPFQsIFBsYWl0Qm9hcmQ+IHtcbiAgICBhY3RpdmVHZW5lcmF0b3IhOiBBY3RpdmVHZW5lcmF0b3I8VD47XG5cbiAgICB0YWJsZUdlbmVyYXRvciE6IFRhYmxlR2VuZXJhdG9yPFQ+O1xuXG4gICAgdGV4dEdlbmVyYXRvciE6IFRleHRHZW5lcmF0b3I8VD47XG5cbiAgICBsaW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yITogTGluZUF1dG9Db21wbGV0ZUdlbmVyYXRvcjxQbGFpdFRhYmxlPjtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIGluaXRpYWxpemVHZW5lcmF0b3IoKSB7XG4gICAgICAgIHRoaXMuYWN0aXZlR2VuZXJhdG9yID0gbmV3IEFjdGl2ZUdlbmVyYXRvcjxUPih0aGlzLmJvYXJkLCB7XG4gICAgICAgICAgICBnZXRTdHJva2VXaWR0aDogKCkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBBQ1RJVkVfU1RST0tFX1dJRFRIO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGdldFN0cm9rZU9wYWNpdHk6ICgpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBnZXRSZWN0YW5nbGU6ICh2YWx1ZTogVCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNlbGxzID0gZ2V0U2VsZWN0ZWRDZWxscyh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgaWYgKGNlbGxzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGdldENlbGxzUmVjdGFuZ2xlKHRoaXMuYm9hcmQgYXMgUGxhaXRUYWJsZUJvYXJkLCB0aGlzLmVsZW1lbnQsIGNlbGxzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIFJlY3RhbmdsZUNsaWVudC5nZXRSZWN0YW5nbGVCeVBvaW50cyh2YWx1ZS5wb2ludHMhKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBoYXNSZXNpemVIYW5kbGU6ICgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjZWxscyA9IGdldFNlbGVjdGVkQ2VsbHModGhpcy5lbGVtZW50KTtcbiAgICAgICAgICAgICAgICBpZiAoY2VsbHM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBjYW5SZXNpemUodGhpcy5ib2FyZCwgdGhpcy5lbGVtZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMudGFibGVHZW5lcmF0b3IgPSBuZXcgVGFibGVHZW5lcmF0b3I8VD4odGhpcy5ib2FyZCk7XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZVRleHRNYW5hZ2UoKTtcbiAgICAgICAgdGhpcy5saW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yID0gbmV3IExpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3IodGhpcy5ib2FyZCk7XG4gICAgICAgIHRoaXMuZ2V0UmVmKCkuYWRkR2VuZXJhdG9yKExpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3Iua2V5LCB0aGlzLmxpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3IpO1xuICAgIH1cblxuICAgIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLmluaXRpYWxpemUoKTtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplR2VuZXJhdG9yKCk7XG4gICAgICAgIHRoaXMuZHJhdygpO1xuICAgIH1cblxuICAgIGRyYXcoKSB7XG4gICAgICAgIHRoaXMudGFibGVHZW5lcmF0b3IucHJvY2Vzc0RyYXdpbmcodGhpcy5lbGVtZW50LCB0aGlzLmdldEVsZW1lbnRHKCkpO1xuICAgICAgICB0aGlzLnRleHRHZW5lcmF0b3IuZHJhdyh0aGlzLmdldEVsZW1lbnRHKCkpO1xuICAgICAgICB0aGlzLnJvdGF0ZVZlcnRpY2FsVGV4dCgpO1xuICAgICAgICB0aGlzLmxpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3IucHJvY2Vzc0RyYXdpbmcodGhpcy5lbGVtZW50LCBQbGFpdEJvYXJkLmdldEVsZW1lbnRBY3RpdmVIb3N0KHRoaXMuYm9hcmQpLCB7XG4gICAgICAgICAgICBzZWxlY3RlZDogdGhpcy5zZWxlY3RlZFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByb3RhdGVWZXJ0aWNhbFRleHQoKSB7XG4gICAgICAgIGNvbnN0IHRhYmxlID0gKHRoaXMuYm9hcmQgYXMgUGxhaXRUYWJsZUJvYXJkKS5idWlsZFRhYmxlKHRoaXMuZWxlbWVudCk7XG4gICAgICAgIHRhYmxlLmNlbGxzLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgICAgICBpZiAoUGxhaXRUYWJsZUVsZW1lbnQuaXNWZXJ0aWNhbFRleHQoaXRlbSkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0ZXh0TWFuYWdlID0gZ2V0VGV4dE1hbmFnZShpdGVtLmlkKTtcbiAgICAgICAgICAgICAgICBpZiAodGV4dE1hbmFnZSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlbmdpbmUgPSBnZXRFbmdpbmU8UGxhaXRUYWJsZT4oVGFibGVTeW1ib2xzLnRhYmxlKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVjdGFuZ2xlID0gZW5naW5lLmdldFRleHRSZWN0YW5nbGUhKHRoaXMuZWxlbWVudCwgeyBrZXk6IGl0ZW0uaWQsIGJvYXJkOiB0aGlzLmJvYXJkIH0pO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0TWFuYWdlLmcuY2xhc3NMaXN0LmFkZCgndmVydGljYWwtY2VsbC10ZXh0Jyk7XG4gICAgICAgICAgICAgICAgICAgIHNldEFuZ2xlRm9yRyh0ZXh0TWFuYWdlLmcsIFJlY3RhbmdsZUNsaWVudC5nZXRDZW50ZXJQb2ludChyZWN0YW5nbGUpLCBkZWdyZWVzVG9SYWRpYW5zKC05MCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0RHJhd1NoYXBlVGV4dHMoY2VsbHM6IFBsYWl0VGFibGVDZWxsW10pOiBQbGFpdERyYXdTaGFwZVRleHRbXSB7XG4gICAgICAgIHJldHVybiBjZWxsc1xuICAgICAgICAgICAgLmZpbHRlcihpdGVtID0+IGlzQ2VsbEluY2x1ZGVUZXh0KGl0ZW0pKVxuICAgICAgICAgICAgLm1hcChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBrZXk6IGl0ZW0uaWQsXG4gICAgICAgICAgICAgICAgICAgIHRleHQ6IGl0ZW0udGV4dCEsXG4gICAgICAgICAgICAgICAgICAgIHRleHRIZWlnaHQ6IGl0ZW0udGV4dEhlaWdodCEsXG4gICAgICAgICAgICAgICAgICAgIGJvYXJkOiB0aGlzLmJvYXJkXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGluaXRpYWxpemVUZXh0TWFuYWdlKCkge1xuICAgICAgICBjb25zdCB0ZXh0cyA9IHRoaXMuZ2V0RHJhd1NoYXBlVGV4dHModGhpcy5lbGVtZW50LmNlbGxzKTtcbiAgICAgICAgdGhpcy50ZXh0R2VuZXJhdG9yID0gbmV3IFRleHRHZW5lcmF0b3IodGhpcy5ib2FyZCwgdGhpcy5lbGVtZW50LCB0ZXh0cywge1xuICAgICAgICAgICAgb25DaGFuZ2U6ICh2YWx1ZTogUGxhaXRUYWJsZSwgZGF0YTogVGV4dE1hbmFnZUNoYW5nZURhdGEsIHRleHQ6IFBsYWl0RHJhd1NoYXBlVGV4dCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGhlaWdodCA9IGRhdGEuaGVpZ2h0IC8gdGhpcy5ib2FyZC52aWV3cG9ydC56b29tO1xuICAgICAgICAgICAgICAgIGNvbnN0IHdpZHRoID0gZGF0YS53aWR0aCAvIHRoaXMuYm9hcmQudmlld3BvcnQuem9vbTtcbiAgICAgICAgICAgICAgICBpZiAoZGF0YS5uZXdUZXh0KSB7XG4gICAgICAgICAgICAgICAgICAgIERyYXdUcmFuc2Zvcm1zLnNldFRhYmxlVGV4dCh0aGlzLmJvYXJkLCB2YWx1ZSwgdGV4dC5rZXksIGRhdGEubmV3VGV4dCwgd2lkdGgsIGhlaWdodCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGRhdGEub3BlcmF0aW9ucyAmJiBtZW1vcml6ZUxhdGVzdFRleHQodmFsdWUsIGRhdGEub3BlcmF0aW9ucyk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZ2V0UmVuZGVyUmVjdGFuZ2xlOiAodmFsdWU6IFBsYWl0VGFibGUsIHRleHQ6IFBsYWl0RHJhd1NoYXBlVGV4dCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNlbGwgPSBnZXRDZWxsV2l0aFBvaW50cyh0aGlzLmJvYXJkLCB2YWx1ZSwgdGV4dC5rZXkpO1xuICAgICAgICAgICAgICAgIGlmIChQbGFpdFRhYmxlRWxlbWVudC5pc1ZlcnRpY2FsVGV4dChjZWxsKSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjZWxsUmVjdGFuZ2xlID0gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGNlbGwucG9pbnRzKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3Ryb2tlV2lkdGggPSBnZXRTdHJva2VXaWR0aEJ5RWxlbWVudChjZWxsKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgd2lkdGggPSBjZWxsLnRleHRIZWlnaHQgfHwgMDtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaGVpZ2h0ID0gY2VsbFJlY3RhbmdsZS5oZWlnaHQgLSBTaGFwZURlZmF1bHRTcGFjZS5yZWN0YW5nbGVBbmRUZXh0ICogMiAtIHN0cm9rZVdpZHRoICogMjtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBoZWlnaHQgPiAwID8gaGVpZ2h0IDogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHg6IGNlbGxSZWN0YW5nbGUueCArIFNoYXBlRGVmYXVsdFNwYWNlLnJlY3RhbmdsZUFuZFRleHQgKyBzdHJva2VXaWR0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHk6IGNlbGxSZWN0YW5nbGUueSArIChjZWxsUmVjdGFuZ2xlLmhlaWdodCAtIGhlaWdodCkgLyAyXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGdldEhvcml6b250YWxUZXh0UmVjdGFuZ2xlKGNlbGwpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMudGV4dEdlbmVyYXRvci5pbml0aWFsaXplKCk7XG4gICAgfVxuXG4gICAgb25Db250ZXh0Q2hhbmdlZCh2YWx1ZTogUGxhaXRQbHVnaW5FbGVtZW50Q29udGV4dDxULCBQbGFpdEJvYXJkPiwgcHJldmlvdXM6IFBsYWl0UGx1Z2luRWxlbWVudENvbnRleHQ8VCwgUGxhaXRCb2FyZD4pIHtcbiAgICAgICAgY29uc3QgaXNDaGFuZ2VUaGVtZSA9IHRoaXMuYm9hcmQub3BlcmF0aW9ucy5maW5kKG9wID0+IG9wLnR5cGUgPT09ICdzZXRfdGhlbWUnKTtcbiAgICAgICAgaWYgKHZhbHVlLmVsZW1lbnQgIT09IHByZXZpb3VzLmVsZW1lbnQgfHwgaXNDaGFuZ2VUaGVtZSkge1xuICAgICAgICAgICAgY29uc3QgcHJldmlvdXNTZWxlY3RlZENlbGxzID0gZ2V0U2VsZWN0ZWRDZWxscyhwcmV2aW91cy5lbGVtZW50KTtcbiAgICAgICAgICAgIGlmIChwcmV2aW91c1NlbGVjdGVkQ2VsbHM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGNsZWFyU2VsZWN0ZWRDZWxscyhwcmV2aW91cy5lbGVtZW50KTtcbiAgICAgICAgICAgICAgICBzZXRTZWxlY3RlZENlbGxzKHZhbHVlLmVsZW1lbnQsIHByZXZpb3VzU2VsZWN0ZWRDZWxscyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnRhYmxlR2VuZXJhdG9yLnByb2Nlc3NEcmF3aW5nKHZhbHVlLmVsZW1lbnQsIHRoaXMuZ2V0RWxlbWVudEcoKSk7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZUdlbmVyYXRvci5wcm9jZXNzRHJhd2luZyh2YWx1ZS5lbGVtZW50LCBQbGFpdEJvYXJkLmdldEVsZW1lbnRBY3RpdmVIb3N0KHRoaXMuYm9hcmQpLCB7IHNlbGVjdGVkOiB0aGlzLnNlbGVjdGVkIH0pO1xuICAgICAgICAgICAgY29uc3QgcHJldmlvdXNUZXh0cyA9IHRoaXMuZ2V0RHJhd1NoYXBlVGV4dHMocHJldmlvdXMuZWxlbWVudC5jZWxscyk7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50VGV4dHMgPSB0aGlzLmdldERyYXdTaGFwZVRleHRzKHZhbHVlLmVsZW1lbnQuY2VsbHMpO1xuICAgICAgICAgICAgdGhpcy50ZXh0R2VuZXJhdG9yLnVwZGF0ZSh2YWx1ZS5lbGVtZW50LCBwcmV2aW91c1RleHRzLCBjdXJyZW50VGV4dHMsIHRoaXMuZ2V0RWxlbWVudEcoKSk7XG4gICAgICAgICAgICB0aGlzLnJvdGF0ZVZlcnRpY2FsVGV4dCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgaGFzU2FtZVNlbGVjdGVkID0gdmFsdWUuc2VsZWN0ZWQgPT09IHByZXZpb3VzLnNlbGVjdGVkO1xuICAgICAgICAgICAgY29uc3QgaGFzU2FtZUhhbmRsZVN0YXRlID0gdGhpcy5hY3RpdmVHZW5lcmF0b3Iub3B0aW9ucy5oYXNSZXNpemVIYW5kbGUoKSA9PT0gdGhpcy5hY3RpdmVHZW5lcmF0b3IuaGFzUmVzaXplSGFuZGxlO1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFNlbGVjdGVkQ2VsbHMgPSBnZXRTZWxlY3RlZENlbGxzKHZhbHVlLmVsZW1lbnQpO1xuICAgICAgICAgICAgaWYgKCFoYXNTYW1lU2VsZWN0ZWQgfHwgIWhhc1NhbWVIYW5kbGVTdGF0ZSB8fCBjdXJyZW50U2VsZWN0ZWRDZWxscz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5hY3RpdmVHZW5lcmF0b3IucHJvY2Vzc0RyYXdpbmcodmFsdWUuZWxlbWVudCwgUGxhaXRCb2FyZC5nZXRFbGVtZW50QWN0aXZlSG9zdCh0aGlzLmJvYXJkKSwge1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZDogdGhpcy5zZWxlY3RlZFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCF0aGlzLnNlbGVjdGVkKSB7XG4gICAgICAgICAgICAgICAgY2xlYXJTZWxlY3RlZENlbGxzKHZhbHVlLmVsZW1lbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoaXMubGluZUF1dG9Db21wbGV0ZUdlbmVyYXRvci5wcm9jZXNzRHJhd2luZyh0aGlzLmVsZW1lbnQsIFBsYWl0Qm9hcmQuZ2V0RWxlbWVudEFjdGl2ZUhvc3QodGhpcy5ib2FyZCksIHtcbiAgICAgICAgICAgIHNlbGVjdGVkOiB0aGlzLnNlbGVjdGVkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5hY3RpdmVHZW5lcmF0b3IuZGVzdHJveSgpO1xuICAgICAgICB0aGlzLnRhYmxlR2VuZXJhdG9yLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy50ZXh0R2VuZXJhdG9yLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5saW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yLmRlc3Ryb3koKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,29 +1,31 @@
|
|
|
1
1
|
import { Point, Transforms, hasValidAngle, RectangleClient } from '@plait/core';
|
|
2
2
|
import { ShapeDefaultSpace } from '../constants';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { Alignment, getFirstTextEditor, resetPointsAfterResize } from '@plait/common';
|
|
4
|
+
import { AlignEditor } from '@plait/text-plugins';
|
|
5
|
+
import { MIN_TEXT_WIDTH } from '../constants/text';
|
|
5
6
|
const normalizePoints = (board, element, width, textHeight) => {
|
|
6
7
|
let points = element.points;
|
|
7
8
|
let autoSize = element.autoSize;
|
|
8
9
|
const defaultSpace = ShapeDefaultSpace.rectangleAndText;
|
|
9
10
|
if (autoSize) {
|
|
11
|
+
const newWidth = width < MIN_TEXT_WIDTH ? MIN_TEXT_WIDTH : width;
|
|
10
12
|
const editor = getFirstTextEditor(element);
|
|
11
13
|
if (AlignEditor.isActive(editor, Alignment.right)) {
|
|
12
14
|
points = [
|
|
13
|
-
[points[1][0] - (
|
|
15
|
+
[points[1][0] - (newWidth + defaultSpace * 2), points[0][1]],
|
|
14
16
|
[points[1][0], points[0][1] + textHeight]
|
|
15
17
|
];
|
|
16
18
|
}
|
|
17
19
|
else if (AlignEditor.isActive(editor, Alignment.center)) {
|
|
18
20
|
const oldWidth = Math.abs(points[0][0] - points[1][0]);
|
|
19
|
-
const offset = (
|
|
21
|
+
const offset = (newWidth - oldWidth) / 2;
|
|
20
22
|
points = [
|
|
21
23
|
[points[0][0] - offset - defaultSpace, points[0][1]],
|
|
22
24
|
[points[1][0] + offset + defaultSpace, points[0][1] + textHeight]
|
|
23
25
|
];
|
|
24
26
|
}
|
|
25
27
|
else {
|
|
26
|
-
points = [points[0], [points[0][0] +
|
|
28
|
+
points = [points[0], [points[0][0] + newWidth + defaultSpace * 2, points[0][1] + textHeight]];
|
|
27
29
|
}
|
|
28
30
|
if (hasValidAngle(element)) {
|
|
29
31
|
points = resetPointsAfterResize(RectangleClient.getRectangleByPoints(element.points), RectangleClient.getRectangleByPoints(points), RectangleClient.getCenterPoint(RectangleClient.getRectangleByPoints(element.points)), RectangleClient.getCenterPoint(RectangleClient.getRectangleByPoints(points)), element.angle);
|
|
@@ -54,4 +56,4 @@ export const setTextSize = (board, element, textWidth, textHeight) => {
|
|
|
54
56
|
}
|
|
55
57
|
}
|
|
56
58
|
};
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvbWV0cnktdGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2RyYXcvc3JjL3RyYW5zZm9ybXMvZ2VvbWV0cnktdGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsS0FBSyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRzVGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLGtCQUFrQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkQsTUFBTSxlQUFlLEdBQUcsQ0FBQyxLQUFpQixFQUFFLE9BQXNCLEVBQUUsS0FBYSxFQUFFLFVBQWtCLEVBQUUsRUFBRTtJQUNyRyxJQUFJLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO0lBQzVCLElBQUksUUFBUSxHQUFJLE9BQXFCLENBQUMsUUFBUSxDQUFDO0lBQy9DLE1BQU0sWUFBWSxHQUFHLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDO0lBRXhELElBQUksUUFBUSxFQUFFLENBQUM7UUFDWCxNQUFNLFFBQVEsR0FBRyxLQUFLLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUNqRSxNQUFNLE1BQU0sR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzQyxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2hELE1BQU0sR0FBRztnQkFDTCxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsR0FBRyxZQUFZLEdBQUcsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUM1RCxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDO2FBQzVDLENBQUM7UUFDTixDQUFDO2FBQU0sSUFBSSxXQUFXLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUN4RCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2RCxNQUFNLE1BQU0sR0FBRyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDekMsTUFBTSxHQUFHO2dCQUNMLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sR0FBRyxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNwRCxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLEdBQUcsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUM7YUFDcEUsQ0FBQztRQUNOLENBQUM7YUFBTSxDQUFDO1lBQ0osTUFBTSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsR0FBRyxZQUFZLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQ2xHLENBQUM7UUFDRCxJQUFJLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ3pCLE1BQU0sR0FBRyxzQkFBc0IsQ0FDM0IsZUFBZSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFDcEQsZUFBZSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxFQUM1QyxlQUFlLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsRUFDcEYsZUFBZSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUMsRUFDNUUsT0FBTyxDQUFDLEtBQU0sQ0FDakIsQ0FBQztRQUNOLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDO0FBQ3RCLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxDQUFDLEtBQWlCLEVBQUUsT0FBc0IsRUFBRSxJQUFhLEVBQUUsS0FBYSxFQUFFLFVBQWtCLEVBQUUsRUFBRTtJQUNuSCxNQUFNLFVBQVUsR0FBRztRQUNmLElBQUk7UUFDSixVQUFVO1FBQ1YsR0FBRyxlQUFlLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxDQUFDO0tBQ3hELENBQUM7SUFFRixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssS0FBSyxPQUFPLENBQUMsQ0FBQztJQUVsRSxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ2xELENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLEtBQWlCLEVBQUUsT0FBc0IsRUFBRSxTQUFpQixFQUFFLFVBQWtCLEVBQUUsRUFBRTtJQUM1RyxJQUFLLE9BQXFCLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDbEMsTUFBTSxVQUFVLEdBQUc7WUFDZixVQUFVO1lBQ1YsR0FBRyxlQUFlLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDO1NBQzVELENBQUM7UUFDRixNQUFNLGFBQWEsR0FDZixLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkgsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVcsQ0FBQyxDQUFDO1FBQ3JGLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3ZDLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxLQUFLLE9BQU8sQ0FBQyxDQUFDO1lBQ2xFLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDbEQsQ0FBQztJQUNMLENBQUM7QUFDTCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQbGFpdEJvYXJkLCBQb2ludCwgVHJhbnNmb3JtcywgaGFzVmFsaWRBbmdsZSwgUmVjdGFuZ2xlQ2xpZW50IH0gZnJvbSAnQHBsYWl0L2NvcmUnO1xuaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IFBsYWl0R2VvbWV0cnksIFBsYWl0VGV4dCB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgU2hhcGVEZWZhdWx0U3BhY2UgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgQWxpZ25tZW50LCBnZXRGaXJzdFRleHRFZGl0b3IsIHJlc2V0UG9pbnRzQWZ0ZXJSZXNpemUgfSBmcm9tICdAcGxhaXQvY29tbW9uJztcbmltcG9ydCB7IEFsaWduRWRpdG9yIH0gZnJvbSAnQHBsYWl0L3RleHQtcGx1Z2lucyc7XG5pbXBvcnQgeyBNSU5fVEVYVF9XSURUSCB9IGZyb20gJy4uL2NvbnN0YW50cy90ZXh0JztcblxuY29uc3Qgbm9ybWFsaXplUG9pbnRzID0gKGJvYXJkOiBQbGFpdEJvYXJkLCBlbGVtZW50OiBQbGFpdEdlb21ldHJ5LCB3aWR0aDogbnVtYmVyLCB0ZXh0SGVpZ2h0OiBudW1iZXIpID0+IHtcbiAgICBsZXQgcG9pbnRzID0gZWxlbWVudC5wb2ludHM7XG4gICAgbGV0IGF1dG9TaXplID0gKGVsZW1lbnQgYXMgUGxhaXRUZXh0KS5hdXRvU2l6ZTtcbiAgICBjb25zdCBkZWZhdWx0U3BhY2UgPSBTaGFwZURlZmF1bHRTcGFjZS5yZWN0YW5nbGVBbmRUZXh0O1xuXG4gICAgaWYgKGF1dG9TaXplKSB7XG4gICAgICAgIGNvbnN0IG5ld1dpZHRoID0gd2lkdGggPCBNSU5fVEVYVF9XSURUSCA/IE1JTl9URVhUX1dJRFRIIDogd2lkdGg7XG4gICAgICAgIGNvbnN0IGVkaXRvciA9IGdldEZpcnN0VGV4dEVkaXRvcihlbGVtZW50KTtcbiAgICAgICAgaWYgKEFsaWduRWRpdG9yLmlzQWN0aXZlKGVkaXRvciwgQWxpZ25tZW50LnJpZ2h0KSkge1xuICAgICAgICAgICAgcG9pbnRzID0gW1xuICAgICAgICAgICAgICAgIFtwb2ludHNbMV1bMF0gLSAobmV3V2lkdGggKyBkZWZhdWx0U3BhY2UgKiAyKSwgcG9pbnRzWzBdWzFdXSxcbiAgICAgICAgICAgICAgICBbcG9pbnRzWzFdWzBdLCBwb2ludHNbMF1bMV0gKyB0ZXh0SGVpZ2h0XVxuICAgICAgICAgICAgXTtcbiAgICAgICAgfSBlbHNlIGlmIChBbGlnbkVkaXRvci5pc0FjdGl2ZShlZGl0b3IsIEFsaWdubWVudC5jZW50ZXIpKSB7XG4gICAgICAgICAgICBjb25zdCBvbGRXaWR0aCA9IE1hdGguYWJzKHBvaW50c1swXVswXSAtIHBvaW50c1sxXVswXSk7XG4gICAgICAgICAgICBjb25zdCBvZmZzZXQgPSAobmV3V2lkdGggLSBvbGRXaWR0aCkgLyAyO1xuICAgICAgICAgICAgcG9pbnRzID0gW1xuICAgICAgICAgICAgICAgIFtwb2ludHNbMF1bMF0gLSBvZmZzZXQgLSBkZWZhdWx0U3BhY2UsIHBvaW50c1swXVsxXV0sXG4gICAgICAgICAgICAgICAgW3BvaW50c1sxXVswXSArIG9mZnNldCArIGRlZmF1bHRTcGFjZSwgcG9pbnRzWzBdWzFdICsgdGV4dEhlaWdodF1cbiAgICAgICAgICAgIF07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwb2ludHMgPSBbcG9pbnRzWzBdLCBbcG9pbnRzWzBdWzBdICsgbmV3V2lkdGggKyBkZWZhdWx0U3BhY2UgKiAyLCBwb2ludHNbMF1bMV0gKyB0ZXh0SGVpZ2h0XV07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGhhc1ZhbGlkQW5nbGUoZWxlbWVudCkpIHtcbiAgICAgICAgICAgIHBvaW50cyA9IHJlc2V0UG9pbnRzQWZ0ZXJSZXNpemUoXG4gICAgICAgICAgICAgICAgUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGVsZW1lbnQucG9pbnRzKSxcbiAgICAgICAgICAgICAgICBSZWN0YW5nbGVDbGllbnQuZ2V0UmVjdGFuZ2xlQnlQb2ludHMocG9pbnRzKSxcbiAgICAgICAgICAgICAgICBSZWN0YW5nbGVDbGllbnQuZ2V0Q2VudGVyUG9pbnQoUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGVsZW1lbnQucG9pbnRzKSksXG4gICAgICAgICAgICAgICAgUmVjdGFuZ2xlQ2xpZW50LmdldENlbnRlclBvaW50KFJlY3RhbmdsZUNsaWVudC5nZXRSZWN0YW5nbGVCeVBvaW50cyhwb2ludHMpKSxcbiAgICAgICAgICAgICAgICBlbGVtZW50LmFuZ2xlIVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7IHBvaW50cyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IHNldFRleHQgPSAoYm9hcmQ6IFBsYWl0Qm9hcmQsIGVsZW1lbnQ6IFBsYWl0R2VvbWV0cnksIHRleHQ6IEVsZW1lbnQsIHdpZHRoOiBudW1iZXIsIHRleHRIZWlnaHQ6IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IG5ld0VsZW1lbnQgPSB7XG4gICAgICAgIHRleHQsXG4gICAgICAgIHRleHRIZWlnaHQsXG4gICAgICAgIC4uLm5vcm1hbGl6ZVBvaW50cyhib2FyZCwgZWxlbWVudCwgd2lkdGgsIHRleHRIZWlnaHQpXG4gICAgfTtcblxuICAgIGNvbnN0IHBhdGggPSBib2FyZC5jaGlsZHJlbi5maW5kSW5kZXgoY2hpbGQgPT4gY2hpbGQgPT09IGVsZW1lbnQpO1xuXG4gICAgVHJhbnNmb3Jtcy5zZXROb2RlKGJvYXJkLCBuZXdFbGVtZW50LCBbcGF0aF0pO1xufTtcblxuZXhwb3J0IGNvbnN0IHNldFRleHRTaXplID0gKGJvYXJkOiBQbGFpdEJvYXJkLCBlbGVtZW50OiBQbGFpdEdlb21ldHJ5LCB0ZXh0V2lkdGg6IG51bWJlciwgdGV4dEhlaWdodDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKChlbGVtZW50IGFzIFBsYWl0VGV4dCkuYXV0b1NpemUpIHtcbiAgICAgICAgY29uc3QgbmV3RWxlbWVudCA9IHtcbiAgICAgICAgICAgIHRleHRIZWlnaHQsXG4gICAgICAgICAgICAuLi5ub3JtYWxpemVQb2ludHMoYm9hcmQsIGVsZW1lbnQsIHRleHRXaWR0aCwgdGV4dEhlaWdodClcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgaXNQb2ludHNFcXVhbCA9XG4gICAgICAgICAgICBQb2ludC5pc0VxdWFscyhlbGVtZW50LnBvaW50c1swXSwgbmV3RWxlbWVudC5wb2ludHNbMF0pICYmIFBvaW50LmlzRXF1YWxzKGVsZW1lbnQucG9pbnRzWzFdLCBuZXdFbGVtZW50LnBvaW50c1sxXSk7XG4gICAgICAgIGNvbnN0IGlzVGV4dEhlaWdodEVxdWFsID0gTWF0aC5yb3VuZCh0ZXh0SGVpZ2h0KSA9PT0gTWF0aC5yb3VuZChlbGVtZW50LnRleHRIZWlnaHQhKTtcbiAgICAgICAgaWYgKCFpc1BvaW50c0VxdWFsIHx8ICFpc1RleHRIZWlnaHRFcXVhbCkge1xuICAgICAgICAgICAgY29uc3QgcGF0aCA9IGJvYXJkLmNoaWxkcmVuLmZpbmRJbmRleChjaGlsZCA9PiBjaGlsZCA9PT0gZWxlbWVudCk7XG4gICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGUoYm9hcmQsIG5ld0VsZW1lbnQsIFtwYXRoXSk7XG4gICAgICAgIH1cbiAgICB9XG59O1xuIl19
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { PlaitBoard, Transforms, idCreator, toHostPoint, toViewBoxPoint } from '@plait/core';
|
|
2
2
|
export const insertImage = (board, imageItem, startPoint) => {
|
|
3
3
|
const { width, height, url } = imageItem;
|
|
4
|
-
const viewportWidth = PlaitBoard.
|
|
5
|
-
const viewportHeight = PlaitBoard.
|
|
4
|
+
const viewportWidth = PlaitBoard.getBoardContainer(board).clientWidth;
|
|
5
|
+
const viewportHeight = PlaitBoard.getBoardContainer(board).clientHeight;
|
|
6
6
|
const point = toViewBoxPoint(board, toHostPoint(board, viewportWidth / 2, viewportHeight / 2));
|
|
7
7
|
const points = startPoint
|
|
8
8
|
? [startPoint, [startPoint[0] + width, startPoint[1] + height]]
|
|
@@ -19,4 +19,4 @@ export const insertImage = (board, imageItem, startPoint) => {
|
|
|
19
19
|
Transforms.insertNode(board, imageElement, [board.children.length]);
|
|
20
20
|
Transforms.addSelectionWithTemporaryElements(board, [imageElement]);
|
|
21
21
|
};
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9kcmF3L3NyYy90cmFuc2Zvcm1zL2ltYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQVMsVUFBVSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXBHLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLEtBQWlCLEVBQUUsU0FBMEIsRUFBRSxVQUFrQixFQUFFLEVBQUU7SUFDN0YsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsU0FBUyxDQUFDO0lBQ3pDLE1BQU0sYUFBYSxHQUFHLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxXQUFXLENBQUM7SUFDdEUsTUFBTSxjQUFjLEdBQUcsVUFBVSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDLFlBQVksQ0FBQztJQUN4RSxNQUFNLEtBQUssR0FBRyxjQUFjLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxLQUFLLEVBQUUsYUFBYSxHQUFHLENBQUMsRUFBRSxjQUFjLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvRixNQUFNLE1BQU0sR0FBWSxVQUFVO1FBQzlCLENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDO1FBQy9ELENBQUMsQ0FBQztZQUNJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDN0MsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxHQUFHLENBQUMsQ0FBQztTQUNoRCxDQUFDO0lBQ1IsTUFBTSxZQUFZLEdBQUc7UUFDakIsRUFBRSxFQUFFLFNBQVMsRUFBRTtRQUNmLElBQUksRUFBRSxPQUFPO1FBQ2IsTUFBTTtRQUNOLEdBQUc7S0FDTixDQUFDO0lBQ0YsVUFBVSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLFVBQVUsQ0FBQyxpQ0FBaUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0FBQ3hFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbkltYWdlSXRlbSB9IGZyb20gJ0BwbGFpdC9jb21tb24nO1xuaW1wb3J0IHsgUGxhaXRCb2FyZCwgUG9pbnQsIFRyYW5zZm9ybXMsIGlkQ3JlYXRvciwgdG9Ib3N0UG9pbnQsIHRvVmlld0JveFBvaW50IH0gZnJvbSAnQHBsYWl0L2NvcmUnO1xuXG5leHBvcnQgY29uc3QgaW5zZXJ0SW1hZ2UgPSAoYm9hcmQ6IFBsYWl0Qm9hcmQsIGltYWdlSXRlbTogQ29tbW9uSW1hZ2VJdGVtLCBzdGFydFBvaW50PzogUG9pbnQpID0+IHtcbiAgICBjb25zdCB7IHdpZHRoLCBoZWlnaHQsIHVybCB9ID0gaW1hZ2VJdGVtO1xuICAgIGNvbnN0IHZpZXdwb3J0V2lkdGggPSBQbGFpdEJvYXJkLmdldEJvYXJkQ29udGFpbmVyKGJvYXJkKS5jbGllbnRXaWR0aDtcbiAgICBjb25zdCB2aWV3cG9ydEhlaWdodCA9IFBsYWl0Qm9hcmQuZ2V0Qm9hcmRDb250YWluZXIoYm9hcmQpLmNsaWVudEhlaWdodDtcbiAgICBjb25zdCBwb2ludCA9IHRvVmlld0JveFBvaW50KGJvYXJkLCB0b0hvc3RQb2ludChib2FyZCwgdmlld3BvcnRXaWR0aCAvIDIsIHZpZXdwb3J0SGVpZ2h0IC8gMikpO1xuICAgIGNvbnN0IHBvaW50czogUG9pbnRbXSA9IHN0YXJ0UG9pbnRcbiAgICAgICAgPyBbc3RhcnRQb2ludCwgW3N0YXJ0UG9pbnRbMF0gKyB3aWR0aCwgc3RhcnRQb2ludFsxXSArIGhlaWdodF1dXG4gICAgICAgIDogW1xuICAgICAgICAgICAgICBbcG9pbnRbMF0gLSB3aWR0aCAvIDIsIHBvaW50WzFdIC0gaGVpZ2h0IC8gMl0sXG4gICAgICAgICAgICAgIFtwb2ludFswXSArIHdpZHRoIC8gMiwgcG9pbnRbMV0gKyBoZWlnaHQgLyAyXVxuICAgICAgICAgIF07XG4gICAgY29uc3QgaW1hZ2VFbGVtZW50ID0ge1xuICAgICAgICBpZDogaWRDcmVhdG9yKCksXG4gICAgICAgIHR5cGU6ICdpbWFnZScsXG4gICAgICAgIHBvaW50cyxcbiAgICAgICAgdXJsXG4gICAgfTtcbiAgICBUcmFuc2Zvcm1zLmluc2VydE5vZGUoYm9hcmQsIGltYWdlRWxlbWVudCwgW2JvYXJkLmNoaWxkcmVuLmxlbmd0aF0pO1xuICAgIFRyYW5zZm9ybXMuYWRkU2VsZWN0aW9uV2l0aFRlbXBvcmFyeUVsZW1lbnRzKGJvYXJkLCBbaW1hZ2VFbGVtZW50XSk7XG59O1xuIl19
|
|
@@ -2,7 +2,7 @@ import { insertText, insertGeometry, resizeGeometry, switchGeometryShape, insert
|
|
|
2
2
|
import { setText, setTextSize } from './geometry-text';
|
|
3
3
|
import { insertImage } from './image';
|
|
4
4
|
import { connectLineToGeometry, removeLineText, resizeLine, setLineMark, setLineShape, setLineTexts } from './line';
|
|
5
|
-
import { addSwimlaneColumn, addSwimlaneRow, removeSwimlaneColumn, removeSwimlaneRow } from './swimlane';
|
|
5
|
+
import { addSwimlaneColumn, addSwimlaneRow, removeSwimlaneColumn, removeSwimlaneRow, setSwimlaneFill, updateSwimlaneCount } from './swimlane';
|
|
6
6
|
import { setDrawShapeText } from './multi-text-geometry-text';
|
|
7
7
|
import { setTableText } from './table-text';
|
|
8
8
|
export const DrawTransforms = {
|
|
@@ -25,6 +25,8 @@ export const DrawTransforms = {
|
|
|
25
25
|
addSwimlaneRow,
|
|
26
26
|
addSwimlaneColumn,
|
|
27
27
|
removeSwimlaneRow,
|
|
28
|
-
removeSwimlaneColumn
|
|
28
|
+
removeSwimlaneColumn,
|
|
29
|
+
setSwimlaneFill,
|
|
30
|
+
updateSwimlaneCount
|
|
29
31
|
};
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9kcmF3L3NyYy90cmFuc2Zvcm1zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNySCxPQUFPLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDdEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDcEgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDOUksT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU1QyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDMUIsT0FBTztJQUNQLGdCQUFnQjtJQUNoQixjQUFjO0lBQ2QsY0FBYztJQUNkLFVBQVU7SUFDVixXQUFXO0lBQ1gsVUFBVTtJQUNWLFlBQVk7SUFDWixjQUFjO0lBQ2QsV0FBVztJQUNYLFlBQVk7SUFDWixXQUFXO0lBQ1gsbUJBQW1CO0lBQ25CLHFCQUFxQjtJQUNyQixzQkFBc0I7SUFDdEIsWUFBWTtJQUNaLGNBQWM7SUFDZCxpQkFBaUI7SUFDakIsaUJBQWlCO0lBQ2pCLG9CQUFvQjtJQUNwQixlQUFlO0lBQ2YsbUJBQW1CO0NBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbnNlcnRUZXh0LCBpbnNlcnRHZW9tZXRyeSwgcmVzaXplR2VvbWV0cnksIHN3aXRjaEdlb21ldHJ5U2hhcGUsIGluc2VydEdlb21ldHJ5QnlWZWN0b3IgfSBmcm9tICcuL2dlb21ldHJ5JztcbmltcG9ydCB7IHNldFRleHQsIHNldFRleHRTaXplIH0gZnJvbSAnLi9nZW9tZXRyeS10ZXh0JztcbmltcG9ydCB7IGluc2VydEltYWdlIH0gZnJvbSAnLi9pbWFnZSc7XG5pbXBvcnQgeyBjb25uZWN0TGluZVRvR2VvbWV0cnksIHJlbW92ZUxpbmVUZXh0LCByZXNpemVMaW5lLCBzZXRMaW5lTWFyaywgc2V0TGluZVNoYXBlLCBzZXRMaW5lVGV4dHMgfSBmcm9tICcuL2xpbmUnO1xuaW1wb3J0IHsgYWRkU3dpbWxhbmVDb2x1bW4sIGFkZFN3aW1sYW5lUm93LCByZW1vdmVTd2ltbGFuZUNvbHVtbiwgcmVtb3ZlU3dpbWxhbmVSb3csIHNldFN3aW1sYW5lRmlsbCwgdXBkYXRlU3dpbWxhbmVDb3VudCB9IGZyb20gJy4vc3dpbWxhbmUnO1xuaW1wb3J0IHsgc2V0RHJhd1NoYXBlVGV4dCB9IGZyb20gJy4vbXVsdGktdGV4dC1nZW9tZXRyeS10ZXh0JztcbmltcG9ydCB7IHNldFRhYmxlVGV4dCB9IGZyb20gJy4vdGFibGUtdGV4dCc7XG5cbmV4cG9ydCBjb25zdCBEcmF3VHJhbnNmb3JtcyA9IHtcbiAgICBzZXRUZXh0LFxuICAgIHNldERyYXdTaGFwZVRleHQsXG4gICAgaW5zZXJ0R2VvbWV0cnksXG4gICAgcmVzaXplR2VvbWV0cnksXG4gICAgaW5zZXJ0VGV4dCxcbiAgICBzZXRUZXh0U2l6ZSxcbiAgICByZXNpemVMaW5lLFxuICAgIHNldExpbmVUZXh0cyxcbiAgICByZW1vdmVMaW5lVGV4dCxcbiAgICBzZXRMaW5lTWFyayxcbiAgICBzZXRMaW5lU2hhcGUsXG4gICAgaW5zZXJ0SW1hZ2UsXG4gICAgc3dpdGNoR2VvbWV0cnlTaGFwZSxcbiAgICBjb25uZWN0TGluZVRvR2VvbWV0cnksXG4gICAgaW5zZXJ0R2VvbWV0cnlCeVZlY3RvcixcbiAgICBzZXRUYWJsZVRleHQsXG4gICAgYWRkU3dpbWxhbmVSb3csXG4gICAgYWRkU3dpbWxhbmVDb2x1bW4sXG4gICAgcmVtb3ZlU3dpbWxhbmVSb3csXG4gICAgcmVtb3ZlU3dpbWxhbmVDb2x1bW4sXG4gICAgc2V0U3dpbWxhbmVGaWxsLFxuICAgIHVwZGF0ZVN3aW1sYW5lQ291bnRcbn07XG4iXX0=
|