@plait/draw 0.62.0-next.5 → 0.62.0-next.7
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/arrow-line.component.d.ts +26 -0
- package/constants/pointer.d.ts +3 -3
- package/esm2022/arrow-line.component.mjs +157 -0
- package/esm2022/constants/geometry.mjs +3 -3
- package/esm2022/constants/pointer.mjs +4 -4
- package/esm2022/engines/flowchart/note-curly-left.mjs +2 -2
- package/esm2022/engines/flowchart/note-curly-right.mjs +7 -7
- package/esm2022/engines/flowchart/note-square.mjs +2 -2
- package/esm2022/engines/uml/required-interface.mjs +3 -2
- package/esm2022/generators/arrow-line-active.generator.mjs +81 -0
- package/esm2022/generators/arrow-line-auto-complete.generator.mjs +46 -0
- package/esm2022/generators/arrow-line.generator.mjs +13 -0
- package/esm2022/generators/index.mjs +3 -3
- package/esm2022/geometry.component.mjs +4 -4
- package/esm2022/image.component.mjs +4 -4
- package/esm2022/interfaces/arrow-line.mjs +70 -0
- package/esm2022/interfaces/element.mjs +2 -2
- package/esm2022/interfaces/index.mjs +14 -7
- package/esm2022/interfaces/vector-line.mjs +6 -0
- package/esm2022/plugins/with-arrow-line-auto-complete-reaction.mjs +41 -0
- package/esm2022/plugins/with-arrow-line-auto-complete.mjs +74 -0
- package/esm2022/plugins/with-arrow-line-bound-reaction.mjs +53 -0
- package/esm2022/plugins/with-arrow-line-create.mjs +53 -0
- package/esm2022/plugins/with-arrow-line-resize.mjs +158 -0
- package/esm2022/plugins/with-arrow-line-text-move.mjs +53 -0
- package/esm2022/plugins/with-arrow-line-text.mjs +63 -0
- package/esm2022/plugins/with-draw-fragment.mjs +13 -13
- package/esm2022/plugins/with-draw-resize.mjs +12 -5
- package/esm2022/plugins/with-draw.mjs +27 -20
- package/esm2022/plugins/with-geometry-resize.mjs +1 -1
- package/esm2022/plugins/with-swimlane.mjs +1 -20
- package/esm2022/plugins/with-table.mjs +21 -3
- package/esm2022/public-api.mjs +3 -3
- package/esm2022/table.component.mjs +6 -6
- package/esm2022/transforms/arrow-line.mjs +100 -0
- package/esm2022/transforms/geometry.mjs +4 -4
- package/esm2022/transforms/index.mjs +12 -11
- package/esm2022/transforms/swimlane.mjs +1 -29
- package/esm2022/transforms/table-text.mjs +5 -5
- package/esm2022/transforms/table.mjs +30 -0
- package/esm2022/utils/arrow-line/arrow-line-arrow.mjs +123 -0
- package/esm2022/utils/arrow-line/arrow-line-basic.mjs +257 -0
- package/esm2022/utils/arrow-line/arrow-line-common.mjs +127 -0
- package/esm2022/utils/arrow-line/arrow-line-resize.mjs +309 -0
- package/esm2022/utils/arrow-line/elbow.mjs +114 -0
- package/esm2022/utils/arrow-line/index.mjs +6 -0
- package/esm2022/utils/clipboard.mjs +10 -10
- package/esm2022/utils/common.mjs +3 -3
- package/esm2022/utils/geometry.mjs +13 -13
- package/esm2022/utils/hit.mjs +67 -44
- package/esm2022/utils/index.mjs +2 -2
- package/esm2022/utils/memorize.mjs +4 -5
- package/esm2022/utils/position/arrow-line.mjs +67 -0
- package/esm2022/utils/position/geometry.mjs +1 -1
- package/esm2022/utils/selected.mjs +3 -3
- package/esm2022/utils/swimlane.mjs +11 -5
- package/esm2022/utils/table-selected.mjs +3 -4
- package/esm2022/utils/table.mjs +16 -1
- package/fesm2022/plait-draw.mjs +448 -372
- package/fesm2022/plait-draw.mjs.map +1 -1
- package/generators/arrow-line-active.generator.d.ts +13 -0
- package/generators/{line-auto-complete.generator.d.ts → arrow-line-auto-complete.generator.d.ts} +1 -1
- package/generators/arrow-line.generator.d.ts +8 -0
- package/generators/index.d.ts +2 -2
- package/geometry.component.d.ts +2 -2
- package/image.component.d.ts +2 -2
- package/interfaces/arrow-line.d.ts +75 -0
- package/interfaces/element.d.ts +1 -1
- package/interfaces/index.d.ts +6 -4
- package/interfaces/vector-line.d.ts +16 -0
- package/package.json +1 -1
- package/plugins/with-arrow-line-auto-complete-reaction.d.ts +2 -0
- package/plugins/with-arrow-line-auto-complete.d.ts +7 -0
- package/plugins/with-arrow-line-bound-reaction.d.ts +2 -0
- package/plugins/with-arrow-line-create.d.ts +2 -0
- package/plugins/with-arrow-line-resize.d.ts +2 -0
- package/plugins/with-arrow-line-text-move.d.ts +2 -0
- package/plugins/with-arrow-line-text.d.ts +2 -0
- package/plugins/with-draw-fragment.d.ts +2 -2
- package/plugins/with-swimlane.d.ts +1 -2
- package/public-api.d.ts +2 -2
- package/table.component.d.ts +2 -2
- package/transforms/arrow-line.d.ts +12 -0
- package/transforms/index.d.ts +8 -8
- package/transforms/swimlane.d.ts +1 -3
- package/transforms/table-text.d.ts +2 -3
- package/transforms/table.d.ts +3 -0
- package/utils/arrow-line/arrow-line-arrow.d.ts +4 -0
- package/utils/arrow-line/arrow-line-basic.d.ts +13 -0
- package/utils/{line/line-common.d.ts → arrow-line/arrow-line-common.d.ts} +3 -3
- package/utils/{line/line-resize.d.ts → arrow-line/arrow-line-resize.d.ts} +3 -3
- package/utils/{line → arrow-line}/elbow.d.ts +7 -7
- package/utils/arrow-line/index.d.ts +5 -0
- package/utils/clipboard.d.ts +4 -4
- package/utils/geometry.d.ts +17 -17
- package/utils/hit.d.ts +7 -4
- package/utils/index.d.ts +1 -1
- package/utils/position/arrow-line.d.ts +16 -0
- package/utils/selected.d.ts +2 -2
- package/utils/swimlane.d.ts +1 -1
- package/utils/table.d.ts +2 -0
- package/esm2022/generators/line-active.generator.mjs +0 -81
- package/esm2022/generators/line-auto-complete.generator.mjs +0 -46
- package/esm2022/generators/line.generator.mjs +0 -13
- package/esm2022/interfaces/line.mjs +0 -70
- package/esm2022/line.component.mjs +0 -155
- package/esm2022/plugins/with-line-auto-complete-reaction.mjs +0 -41
- package/esm2022/plugins/with-line-auto-complete.mjs +0 -75
- package/esm2022/plugins/with-line-bound-reaction.mjs +0 -53
- package/esm2022/plugins/with-line-create.mjs +0 -53
- package/esm2022/plugins/with-line-resize.mjs +0 -158
- package/esm2022/plugins/with-line-text-move.mjs +0 -53
- package/esm2022/plugins/with-line-text.mjs +0 -62
- package/esm2022/transforms/line.mjs +0 -100
- package/esm2022/utils/line/elbow.mjs +0 -114
- package/esm2022/utils/line/index.mjs +0 -6
- package/esm2022/utils/line/line-arrow.mjs +0 -123
- package/esm2022/utils/line/line-basic.mjs +0 -257
- package/esm2022/utils/line/line-common.mjs +0 -123
- package/esm2022/utils/line/line-resize.mjs +0 -309
- package/esm2022/utils/position/line.mjs +0 -67
- package/generators/line-active.generator.d.ts +0 -13
- package/generators/line.generator.d.ts +0 -8
- package/interfaces/line.d.ts +0 -75
- package/line.component.d.ts +0 -26
- package/plugins/with-line-auto-complete-reaction.d.ts +0 -2
- package/plugins/with-line-auto-complete.d.ts +0 -7
- package/plugins/with-line-bound-reaction.d.ts +0 -2
- package/plugins/with-line-create.d.ts +0 -2
- package/plugins/with-line-resize.d.ts +0 -2
- package/plugins/with-line-text-move.d.ts +0 -2
- package/plugins/with-line-text.d.ts +0 -2
- package/transforms/line.d.ts +0 -12
- package/utils/line/index.d.ts +0 -5
- package/utils/line/line-arrow.d.ts +0 -4
- package/utils/line/line-basic.d.ts +0 -13
- package/utils/position/line.d.ts +0 -16
|
@@ -67,4 +67,4 @@ export const withGeometryResize = (board) => {
|
|
|
67
67
|
withResize(board, options);
|
|
68
68
|
return board;
|
|
69
69
|
};
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1nZW9tZXRyeS1yZXNpemUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9kcmF3L3NyYy9wbHVnaW5zL3dpdGgtZ2VvbWV0cnktcmVzaXplLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxVQUFVLEVBR1YsVUFBVSxFQUNWLG1CQUFtQixFQUNuQix5QkFBeUIsRUFDNUIsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUlILFNBQVMsRUFDVCxrQkFBa0IsRUFDbEIsc0JBQXNCLEVBQ3RCLGNBQWMsRUFDZCxvQkFBb0IsRUFDcEIsVUFBVSxFQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVFLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVqRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtJQUNwRCxJQUFJLEtBQXlCLENBQUM7SUFDOUIsTUFBTSxPQUFPLEdBQWtEO1FBQzNELEdBQUcsRUFBRSxlQUFlO1FBQ3BCLFNBQVMsRUFBRSxHQUFHLEVBQUU7WUFDWixPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUMsS0FBWSxFQUFFLEVBQUU7WUFDdEIsTUFBTSxnQkFBZ0IsR0FB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QUFjLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsQ0FBQyxJQUFZLENBQUMsQ0FBQztZQUNyRixDQUFDO2lCQUFNLENBQUM7Z0JBQ0osTUFBTSxHQUFHLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN0QyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLFNBQVMsQ0FBQyxJQUFZLENBQUMsQ0FBQztZQUNsRSxDQUFDO1FBQ0wsQ0FBQztRQUNELFdBQVcsRUFBRSxDQUFDLFNBQWdELEVBQUUsRUFBRTtZQUM5RCxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDaEIsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNqQixDQUFDO0tBQ0osQ0FBQztJQUVGLFVBQVUsQ0FBNkIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBRXZELE9BQU8sS0FBSyxDQUFDO0FBQ2pCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgUGF0aCxcbiAgICBQbGFpdEJvYXJkLFxuICAgIFBvaW50LFxuICAgIFJlY3RhbmdsZUNsaWVudCxcbiAgICBUcmFuc2Zvcm1zLFxuICAgIGdldFNlbGVjdGVkRWxlbWVudHMsXG4gICAgcm90YXRlQW50aVBvaW50c0J5RWxlbWVudFxufSBmcm9tICdAcGxhaXQvY29yZSc7XG5pbXBvcnQgeyBQbGFpdEdlb21ldHJ5IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9nZW9tZXRyeSc7XG5pbXBvcnQge1xuICAgIFJlc2l6ZVJlZixcbiAgICBSZXNpemVTdGF0ZSxcbiAgICBXaXRoUmVzaXplT3B0aW9ucyxcbiAgICBjYW5SZXNpemUsXG4gICAgZ2V0Rmlyc3RUZXh0TWFuYWdlLFxuICAgIGdldEluZGV4QnlSZXNpemVIYW5kbGUsXG4gICAgaXNDb3JuZXJIYW5kbGUsXG4gICAgbm9ybWFsaXplU2hhcGVQb2ludHMsXG4gICAgd2l0aFJlc2l6ZVxufSBmcm9tICdAcGxhaXQvY29tbW9uJztcbmltcG9ydCB7IGdldFNlbGVjdGVkR2VvbWV0cnlFbGVtZW50cywgZ2V0U2VsZWN0ZWRJbWFnZUVsZW1lbnRzIH0gZnJvbSAnLi4vdXRpbHMvc2VsZWN0ZWQnO1xuaW1wb3J0IHsgRHJhd1RyYW5zZm9ybXMgfSBmcm9tICcuLi90cmFuc2Zvcm1zJztcbmltcG9ydCB7IEdlb21ldHJ5Q29tcG9uZW50IH0gZnJvbSAnLi4vZ2VvbWV0cnkuY29tcG9uZW50JztcbmltcG9ydCB7IFBsYWl0SW1hZ2UgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2ltYWdlJztcbmltcG9ydCB7IFBsYWl0RHJhd0VsZW1lbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGdldEhpdFJlY3RhbmdsZVJlc2l6ZUhhbmRsZVJlZiB9IGZyb20gJy4uL3V0aWxzL3Bvc2l0aW9uL2dlb21ldHJ5JztcbmltcG9ydCB7IGdldFJlc2l6ZU9yaWdpblBvaW50QW5kSGFuZGxlUG9pbnQgfSBmcm9tICcuL3dpdGgtZHJhdy1yZXNpemUnO1xuaW1wb3J0IHsgZ2V0U25hcFJlc2l6aW5nUmVmT3B0aW9ucywgZ2V0U25hcFJlc2l6aW5nUmVmIH0gZnJvbSAnLi4vdXRpbHMvc25hcC1yZXNpemluZyc7XG5pbXBvcnQgeyBpc0dlb21ldHJ5SW5jbHVkZVRleHQgfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCB3aXRoR2VvbWV0cnlSZXNpemUgPSAoYm9hcmQ6IFBsYWl0Qm9hcmQpID0+IHtcbiAgICBsZXQgc25hcEc6IFNWR0dFbGVtZW50IHwgbnVsbDtcbiAgICBjb25zdCBvcHRpb25zOiBXaXRoUmVzaXplT3B0aW9uczxQbGFpdEdlb21ldHJ5IHwgUGxhaXRJbWFnZT4gPSB7XG4gICAgICAgIGtleTogJ2RyYXctZ2VvbWV0cnknLFxuICAgICAgICBjYW5SZXNpemU6ICgpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9LFxuICAgICAgICBoaXRUZXN0OiAocG9pbnQ6IFBvaW50KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzZWxlY3RlZEVsZW1lbnRzID0gWy4uLmdldFNlbGVjdGVkR2VvbWV0cnlFbGVtZW50cyhib2FyZCksIC4uLmdldFNlbGVjdGVkSW1hZ2VFbGVtZW50cyhib2FyZCldO1xuICAgICAgICAgICAgaWYgKHNlbGVjdGVkRWxlbWVudHMubGVuZ3RoICE9PSAxIHx8IGdldFNlbGVjdGVkRWxlbWVudHMoYm9hcmQpLmxlbmd0aCAhPT0gMSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgdGFyZ2V0ID0gc2VsZWN0ZWRFbGVtZW50c1swXTtcbiAgICAgICAgICAgIGlmIChjYW5SZXNpemUoYm9hcmQsIHRhcmdldCkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCByZWN0YW5nbGUgPSBib2FyZC5nZXRSZWN0YW5nbGUodGFyZ2V0KSBhcyBSZWN0YW5nbGVDbGllbnQ7XG4gICAgICAgICAgICAgICAgY29uc3QgaGFuZGxlUmVmID0gZ2V0SGl0UmVjdGFuZ2xlUmVzaXplSGFuZGxlUmVmKGJvYXJkLCByZWN0YW5nbGUsIHBvaW50LCB0YXJnZXQuYW5nbGUpO1xuICAgICAgICAgICAgICAgIGlmIChoYW5kbGVSZWYpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQ6IHRhcmdldCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZTogaGFuZGxlUmVmLmhhbmRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvckNsYXNzOiBoYW5kbGVSZWYuY3Vyc29yQ2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICByZWN0YW5nbGVcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfSxcbiAgICAgICAgb25SZXNpemU6IChyZXNpemVSZWY6IFJlc2l6ZVJlZjxQbGFpdEdlb21ldHJ5IHwgUGxhaXRJbWFnZT4sIHJlc2l6ZVN0YXRlOiBSZXNpemVTdGF0ZSkgPT4ge1xuICAgICAgICAgICAgcmVzaXplU3RhdGUuc3RhcnRQb2ludCA9IHJvdGF0ZUFudGlQb2ludHNCeUVsZW1lbnQocmVzaXplU3RhdGUuc3RhcnRQb2ludCwgcmVzaXplUmVmLmVsZW1lbnQpIHx8IHJlc2l6ZVN0YXRlLnN0YXJ0UG9pbnQ7XG4gICAgICAgICAgICByZXNpemVTdGF0ZS5lbmRQb2ludCA9IHJvdGF0ZUFudGlQb2ludHNCeUVsZW1lbnQocmVzaXplU3RhdGUuZW5kUG9pbnQsIHJlc2l6ZVJlZi5lbGVtZW50KSB8fCByZXNpemVTdGF0ZS5lbmRQb2ludDtcbiAgICAgICAgICAgIHNuYXBHPy5yZW1vdmUoKTtcbiAgICAgICAgICAgIGNvbnN0IGlzRnJvbUNvcm5lciA9IGlzQ29ybmVySGFuZGxlKGJvYXJkLCByZXNpemVSZWYuaGFuZGxlKTtcbiAgICAgICAgICAgIGNvbnN0IGlzQXNwZWN0UmF0aW8gPSByZXNpemVTdGF0ZS5pc1NoaWZ0IHx8IFBsYWl0RHJhd0VsZW1lbnQuaXNJbWFnZShyZXNpemVSZWYuZWxlbWVudCk7XG4gICAgICAgICAgICBjb25zdCBoYW5kbGVJbmRleCA9IGdldEluZGV4QnlSZXNpemVIYW5kbGUocmVzaXplUmVmLmhhbmRsZSk7XG4gICAgICAgICAgICBjb25zdCB7IG9yaWdpblBvaW50LCBoYW5kbGVQb2ludCB9ID0gZ2V0UmVzaXplT3JpZ2luUG9pbnRBbmRIYW5kbGVQb2ludChib2FyZCwgaGFuZGxlSW5kZXgsIHJlc2l6ZVJlZi5yZWN0YW5nbGUhKTtcbiAgICAgICAgICAgIGNvbnN0IHJlc2l6ZVNuYXBSZWZPcHRpb25zID0gZ2V0U25hcFJlc2l6aW5nUmVmT3B0aW9ucyhcbiAgICAgICAgICAgICAgICBib2FyZCxcbiAgICAgICAgICAgICAgICByZXNpemVSZWYsXG4gICAgICAgICAgICAgICAgcmVzaXplU3RhdGUsXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBvcmlnaW5Qb2ludCxcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlUG9pbnRcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGlzQXNwZWN0UmF0aW8sXG4gICAgICAgICAgICAgICAgaXNGcm9tQ29ybmVyXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgY29uc3QgcmVzaXplU25hcFJlZiA9IGdldFNuYXBSZXNpemluZ1JlZihib2FyZCwgW3Jlc2l6ZVJlZi5lbGVtZW50XSwgcmVzaXplU25hcFJlZk9wdGlvbnMpO1xuICAgICAgICAgICAgc25hcEcgPSByZXNpemVTbmFwUmVmLnNuYXBHO1xuICAgICAgICAgICAgUGxhaXRCb2FyZC5nZXRFbGVtZW50QWN0aXZlSG9zdChib2FyZCkuYXBwZW5kKHNuYXBHKTtcbiAgICAgICAgICAgIGxldCBwb2ludHMgPSByZXNpemVTbmFwUmVmLmFjdGl2ZVBvaW50cyBhcyBbUG9pbnQsIFBvaW50XTtcbiAgICAgICAgICAgIGlmIChQbGFpdERyYXdFbGVtZW50LmlzR2VvbWV0cnkocmVzaXplUmVmLmVsZW1lbnQpICYmIGlzR2VvbWV0cnlJbmNsdWRlVGV4dChyZXNpemVSZWYuZWxlbWVudCkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB7IGhlaWdodDogdGV4dEhlaWdodCB9ID0gZ2V0Rmlyc3RUZXh0TWFuYWdlKHJlc2l6ZVJlZi5lbGVtZW50KS5nZXRTaXplKCk7XG4gICAgICAgICAgICAgICAgRHJhd1RyYW5zZm9ybXMucmVzaXplR2VvbWV0cnkoYm9hcmQsIHBvaW50cywgdGV4dEhlaWdodCwgcmVzaXplUmVmLnBhdGggYXMgUGF0aCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHBvaW50cyA9IG5vcm1hbGl6ZVNoYXBlUG9pbnRzKHBvaW50cyk7XG4gICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlKGJvYXJkLCB7IHBvaW50cyB9LCByZXNpemVSZWYucGF0aCBhcyBQYXRoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgYWZ0ZXJSZXNpemU6IChyZXNpemVSZWY6IFJlc2l6ZVJlZjxQbGFpdEdlb21ldHJ5IHwgUGxhaXRJbWFnZT4pID0+IHtcbiAgICAgICAgICAgIHNuYXBHPy5yZW1vdmUoKTtcbiAgICAgICAgICAgIHNuYXBHID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICB3aXRoUmVzaXplPFBsYWl0R2VvbWV0cnkgfCBQbGFpdEltYWdlPihib2FyZCwgb3B0aW9ucyk7XG5cbiAgICByZXR1cm4gYm9hcmQ7XG59O1xuIl19
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1nZW9tZXRyeS1yZXNpemUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9kcmF3L3NyYy9wbHVnaW5zL3dpdGgtZ2VvbWV0cnktcmVzaXplLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBUSxVQUFVLEVBQTBCLFVBQVUsRUFBRSxtQkFBbUIsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVuSSxPQUFPLEVBSUgsU0FBUyxFQUNULGtCQUFrQixFQUNsQixzQkFBc0IsRUFDdEIsY0FBYyxFQUNkLG9CQUFvQixFQUNwQixVQUFVLEVBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLDJCQUEyQixFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUUsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRWpELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQUMsS0FBaUIsRUFBRSxFQUFFO0lBQ3BELElBQUksS0FBeUIsQ0FBQztJQUM5QixNQUFNLE9BQU8sR0FBa0Q7UUFDM0QsR0FBRyxFQUFFLGVBQWU7UUFDcEIsU0FBUyxFQUFFLEdBQUcsRUFBRTtZQUNaLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQyxLQUFZLEVBQUUsRUFBRTtZQUN0QixNQUFNLGdCQUFnQixHQUFH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QWMsQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLElBQVksQ0FBQyxDQUFDO1lBQ3JGLENBQUM7aUJBQU0sQ0FBQztnQkFDSixNQUFNLEdBQUcsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3RDLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxDQUFDLElBQVksQ0FBQyxDQUFDO1lBQ2xFLENBQUM7UUFDTCxDQUFDO1FBQ0QsV0FBVyxFQUFFLENBQUMsU0FBZ0QsRUFBRSxFQUFFO1lBQzlELEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUNoQixLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLENBQUM7S0FDSixDQUFDO0lBRUYsVUFBVSxDQUE2QixLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFFdkQsT0FBTyxLQUFLLENBQUM7QUFDakIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGF0aCwgUGxhaXRCb2FyZCwgUG9pbnQsIFJlY3RhbmdsZUNsaWVudCwgVHJhbnNmb3JtcywgZ2V0U2VsZWN0ZWRFbGVtZW50cywgcm90YXRlQW50aVBvaW50c0J5RWxlbWVudCB9IGZyb20gJ0BwbGFpdC9jb3JlJztcbmltcG9ydCB7IFBsYWl0R2VvbWV0cnkgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2dlb21ldHJ5JztcbmltcG9ydCB7XG4gICAgUmVzaXplUmVmLFxuICAgIFJlc2l6ZVN0YXRlLFxuICAgIFdpdGhSZXNpemVPcHRpb25zLFxuICAgIGNhblJlc2l6ZSxcbiAgICBnZXRGaXJzdFRleHRNYW5hZ2UsXG4gICAgZ2V0SW5kZXhCeVJlc2l6ZUhhbmRsZSxcbiAgICBpc0Nvcm5lckhhbmRsZSxcbiAgICBub3JtYWxpemVTaGFwZVBvaW50cyxcbiAgICB3aXRoUmVzaXplXG59IGZyb20gJ0BwbGFpdC9jb21tb24nO1xuaW1wb3J0IHsgZ2V0U2VsZWN0ZWRHZW9tZXRyeUVsZW1lbnRzLCBnZXRTZWxlY3RlZEltYWdlRWxlbWVudHMgfSBmcm9tICcuLi91dGlscy9zZWxlY3RlZCc7XG5pbXBvcnQgeyBEcmF3VHJhbnNmb3JtcyB9IGZyb20gJy4uL3RyYW5zZm9ybXMnO1xuaW1wb3J0IHsgR2VvbWV0cnlDb21wb25lbnQgfSBmcm9tICcuLi9nZW9tZXRyeS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhaXRJbWFnZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvaW1hZ2UnO1xuaW1wb3J0IHsgUGxhaXREcmF3RWxlbWVudCB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgZ2V0SGl0UmVjdGFuZ2xlUmVzaXplSGFuZGxlUmVmIH0gZnJvbSAnLi4vdXRpbHMvcG9zaXRpb24vZ2VvbWV0cnknO1xuaW1wb3J0IHsgZ2V0UmVzaXplT3JpZ2luUG9pbnRBbmRIYW5kbGVQb2ludCB9IGZyb20gJy4vd2l0aC1kcmF3LXJlc2l6ZSc7XG5pbXBvcnQgeyBnZXRTbmFwUmVzaXppbmdSZWZPcHRpb25zLCBnZXRTbmFwUmVzaXppbmdSZWYgfSBmcm9tICcuLi91dGlscy9zbmFwLXJlc2l6aW5nJztcbmltcG9ydCB7IGlzR2VvbWV0cnlJbmNsdWRlVGV4dCB9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IHdpdGhHZW9tZXRyeVJlc2l6ZSA9IChib2FyZDogUGxhaXRCb2FyZCkgPT4ge1xuICAgIGxldCBzbmFwRzogU1ZHR0VsZW1lbnQgfCBudWxsO1xuICAgIGNvbnN0IG9wdGlvbnM6IFdpdGhSZXNpemVPcHRpb25zPFBsYWl0R2VvbWV0cnkgfCBQbGFpdEltYWdlPiA9IHtcbiAgICAgICAga2V5OiAnZHJhdy1nZW9tZXRyeScsXG4gICAgICAgIGNhblJlc2l6ZTogKCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH0sXG4gICAgICAgIGhpdFRlc3Q6IChwb2ludDogUG9pbnQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHNlbGVjdGVkRWxlbWVudHMgPSBbLi4uZ2V0U2VsZWN0ZWRHZW9tZXRyeUVsZW1lbnRzKGJvYXJkKSwgLi4uZ2V0U2VsZWN0ZWRJbWFnZUVsZW1lbnRzKGJvYXJkKV07XG4gICAgICAgICAgICBpZiAoc2VsZWN0ZWRFbGVtZW50cy5sZW5ndGggIT09IDEgfHwgZ2V0U2VsZWN0ZWRFbGVtZW50cyhib2FyZCkubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCB0YXJnZXQgPSBzZWxlY3RlZEVsZW1lbnRzWzBdO1xuICAgICAgICAgICAgaWYgKGNhblJlc2l6ZShib2FyZCwgdGFyZ2V0KSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlY3RhbmdsZSA9IGJvYXJkLmdldFJlY3RhbmdsZSh0YXJnZXQpIGFzIFJlY3RhbmdsZUNsaWVudDtcbiAgICAgICAgICAgICAgICBjb25zdCBoYW5kbGVSZWYgPSBnZXRIaXRSZWN0YW5nbGVSZXNpemVIYW5kbGVSZWYoYm9hcmQsIHJlY3RhbmdsZSwgcG9pbnQsIHRhcmdldC5hbmdsZSk7XG4gICAgICAgICAgICAgICAgaWYgKGhhbmRsZVJlZikge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudDogdGFyZ2V0LFxuICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlOiBoYW5kbGVSZWYuaGFuZGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yQ2xhc3M6IGhhbmRsZVJlZi5jdXJzb3JDbGFzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlY3RhbmdsZVxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9LFxuICAgICAgICBvblJlc2l6ZTogKHJlc2l6ZVJlZjogUmVzaXplUmVmPFBsYWl0R2VvbWV0cnkgfCBQbGFpdEltYWdlPiwgcmVzaXplU3RhdGU6IFJlc2l6ZVN0YXRlKSA9PiB7XG4gICAgICAgICAgICByZXNpemVTdGF0ZS5zdGFydFBvaW50ID0gcm90YXRlQW50aVBvaW50c0J5RWxlbWVudChyZXNpemVTdGF0ZS5zdGFydFBvaW50LCByZXNpemVSZWYuZWxlbWVudCkgfHwgcmVzaXplU3RhdGUuc3RhcnRQb2ludDtcbiAgICAgICAgICAgIHJlc2l6ZVN0YXRlLmVuZFBvaW50ID0gcm90YXRlQW50aVBvaW50c0J5RWxlbWVudChyZXNpemVTdGF0ZS5lbmRQb2ludCwgcmVzaXplUmVmLmVsZW1lbnQpIHx8IHJlc2l6ZVN0YXRlLmVuZFBvaW50O1xuICAgICAgICAgICAgc25hcEc/LnJlbW92ZSgpO1xuICAgICAgICAgICAgY29uc3QgaXNGcm9tQ29ybmVyID0gaXNDb3JuZXJIYW5kbGUoYm9hcmQsIHJlc2l6ZVJlZi5oYW5kbGUpO1xuICAgICAgICAgICAgY29uc3QgaXNBc3BlY3RSYXRpbyA9IHJlc2l6ZVN0YXRlLmlzU2hpZnQgfHwgUGxhaXREcmF3RWxlbWVudC5pc0ltYWdlKHJlc2l6ZVJlZi5lbGVtZW50KTtcbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUluZGV4ID0gZ2V0SW5kZXhCeVJlc2l6ZUhhbmRsZShyZXNpemVSZWYuaGFuZGxlKTtcbiAgICAgICAgICAgIGNvbnN0IHsgb3JpZ2luUG9pbnQsIGhhbmRsZVBvaW50IH0gPSBnZXRSZXNpemVPcmlnaW5Qb2ludEFuZEhhbmRsZVBvaW50KGJvYXJkLCBoYW5kbGVJbmRleCwgcmVzaXplUmVmLnJlY3RhbmdsZSEpO1xuICAgICAgICAgICAgY29uc3QgcmVzaXplU25hcFJlZk9wdGlvbnMgPSBnZXRTbmFwUmVzaXppbmdSZWZPcHRpb25zKFxuICAgICAgICAgICAgICAgIGJvYXJkLFxuICAgICAgICAgICAgICAgIHJlc2l6ZVJlZixcbiAgICAgICAgICAgICAgICByZXNpemVTdGF0ZSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG9yaWdpblBvaW50LFxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVQb2ludFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgaXNBc3BlY3RSYXRpbyxcbiAgICAgICAgICAgICAgICBpc0Zyb21Db3JuZXJcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBjb25zdCByZXNpemVTbmFwUmVmID0gZ2V0U25hcFJlc2l6aW5nUmVmKGJvYXJkLCBbcmVzaXplUmVmLmVsZW1lbnRdLCByZXNpemVTbmFwUmVmT3B0aW9ucyk7XG4gICAgICAgICAgICBzbmFwRyA9IHJlc2l6ZVNuYXBSZWYuc25hcEc7XG4gICAgICAgICAgICBQbGFpdEJvYXJkLmdldEVsZW1lbnRBY3RpdmVIb3N0KGJvYXJkKS5hcHBlbmQoc25hcEcpO1xuICAgICAgICAgICAgbGV0IHBvaW50cyA9IHJlc2l6ZVNuYXBSZWYuYWN0aXZlUG9pbnRzIGFzIFtQb2ludCwgUG9pbnRdO1xuICAgICAgICAgICAgaWYgKFBsYWl0RHJhd0VsZW1lbnQuaXNHZW9tZXRyeShyZXNpemVSZWYuZWxlbWVudCkgJiYgaXNHZW9tZXRyeUluY2x1ZGVUZXh0KHJlc2l6ZVJlZi5lbGVtZW50KSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgaGVpZ2h0OiB0ZXh0SGVpZ2h0IH0gPSBnZXRGaXJzdFRleHRNYW5hZ2UocmVzaXplUmVmLmVsZW1lbnQpLmdldFNpemUoKTtcbiAgICAgICAgICAgICAgICBEcmF3VHJhbnNmb3Jtcy5yZXNpemVHZW9tZXRyeShib2FyZCwgcG9pbnRzLCB0ZXh0SGVpZ2h0LCByZXNpemVSZWYucGF0aCBhcyBQYXRoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcG9pbnRzID0gbm9ybWFsaXplU2hhcGVQb2ludHMocG9pbnRzKTtcbiAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGUoYm9hcmQsIHsgcG9pbnRzIH0sIHJlc2l6ZVJlZi5wYXRoIGFzIFBhdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBhZnRlclJlc2l6ZTogKHJlc2l6ZVJlZjogUmVzaXplUmVmPFBsYWl0R2VvbWV0cnkgfCBQbGFpdEltYWdlPikgPT4ge1xuICAgICAgICAgICAgc25hcEc/LnJlbW92ZSgpO1xuICAgICAgICAgICAgc25hcEcgPSBudWxsO1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIHdpdGhSZXNpemU8UGxhaXRHZW9tZXRyeSB8IFBsYWl0SW1hZ2U+KGJvYXJkLCBvcHRpb25zKTtcblxuICAgIHJldHVybiBib2FyZDtcbn07XG4iXX0=
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { isDragging, isMainPointer, PlaitBoard, PlaitPointerType, toHostPoint, toViewBoxPoint } from '@plait/core';
|
|
2
1
|
import { PlaitDrawElement } from '../interfaces';
|
|
3
2
|
import { buildSwimlaneTable } from '../utils/swimlane';
|
|
4
3
|
import { TableComponent } from '../table.component';
|
|
5
4
|
import { withSwimlaneCreateByDrag, withSwimlaneCreateByDrawing } from './with-swimlane-create';
|
|
6
|
-
import { getHitCell, setSelectedCells, isSingleSelectSwimlane, getSelectedSwimlane } from '../utils';
|
|
7
5
|
export const withSwimlane = (board) => {
|
|
8
6
|
const { drawElement, buildTable, pointerUp } = board;
|
|
9
7
|
board.drawElement = (context) => {
|
|
@@ -18,23 +16,6 @@ export const withSwimlane = (board) => {
|
|
|
18
16
|
}
|
|
19
17
|
return buildTable(element);
|
|
20
18
|
};
|
|
21
|
-
board.pointerUp = (event) => {
|
|
22
|
-
const isSetSelectionPointer = PlaitBoard.isPointer(board, PlaitPointerType.selection) || PlaitBoard.isPointer(board, PlaitPointerType.hand);
|
|
23
|
-
const isSkip = !isMainPointer(event) || isDragging(board) || !isSetSelectionPointer;
|
|
24
|
-
if (isSkip) {
|
|
25
|
-
pointerUp(event);
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
if (isSingleSelectSwimlane(board)) {
|
|
29
|
-
const point = toViewBoxPoint(board, toHostPoint(board, event.x, event.y));
|
|
30
|
-
const element = getSelectedSwimlane(board);
|
|
31
|
-
const hitCell = getHitCell(board, element, point);
|
|
32
|
-
if (hitCell && hitCell.text && hitCell.textHeight) {
|
|
33
|
-
setSelectedCells(element, [hitCell]);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
pointerUp(event);
|
|
37
|
-
};
|
|
38
19
|
return withSwimlaneCreateByDrawing(withSwimlaneCreateByDrag(board));
|
|
39
20
|
};
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1zd2ltbGFuZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2RyYXcvc3JjL3BsdWdpbnMvd2l0aC1zd2ltbGFuZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUcvRixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxLQUFzQixFQUFFLEVBQUU7SUFDbkQsTUFBTSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLEdBQUcsS0FBSyxDQUFDO0lBRXJELEtBQUssQ0FBQyxXQUFXLEdBQUcsQ0FBQyxPQUFrQyxFQUFFLEVBQUU7UUFDdkQsSUFBSSxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDL0MsT0FBTyxjQUFjLENBQUM7UUFDMUIsQ0FBQztRQUNELE9BQU8sV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2hDLENBQUMsQ0FBQztJQUVGLEtBQUssQ0FBQyxVQUFVLEdBQUcsQ0FBQyxPQUF1QixFQUFFLEVBQUU7UUFDM0MsSUFBSSxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUN2QyxPQUFPLGtCQUFrQixDQUFDLE9BQXdCLENBQUMsQ0FBQztRQUN4RCxDQUFDO1FBQ0QsT0FBTyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDL0IsQ0FBQyxDQUFDO0lBRUYsT0FBTywyQkFBMkIsQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQ3hFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBsYWl0UGx1Z2luRWxlbWVudENvbnRleHQgfSBmcm9tICdAcGxhaXQvY29yZSc7XG5pbXBvcnQgeyBQbGFpdERyYXdFbGVtZW50LCBQbGFpdFN3aW1sYW5lIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBidWlsZFN3aW1sYW5lVGFibGUgfSBmcm9tICcuLi91dGlscy9zd2ltbGFuZSc7XG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL3RhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyB3aXRoU3dpbWxhbmVDcmVhdGVCeURyYWcsIHdpdGhTd2ltbGFuZUNyZWF0ZUJ5RHJhd2luZyB9IGZyb20gJy4vd2l0aC1zd2ltbGFuZS1jcmVhdGUnO1xuaW1wb3J0IHsgUGxhaXRCYXNlVGFibGUsIFBsYWl0VGFibGVCb2FyZCB9IGZyb20gJy4uL2ludGVyZmFjZXMvdGFibGUnO1xuXG5leHBvcnQgY29uc3Qgd2l0aFN3aW1sYW5lID0gKGJvYXJkOiBQbGFpdFRhYmxlQm9hcmQpID0+IHtcbiAgICBjb25zdCB7IGRyYXdFbGVtZW50LCBidWlsZFRhYmxlLCBwb2ludGVyVXAgfSA9IGJvYXJkO1xuXG4gICAgYm9hcmQuZHJhd0VsZW1lbnQgPSAoY29udGV4dDogUGxhaXRQbHVnaW5FbGVtZW50Q29udGV4dCkgPT4ge1xuICAgICAgICBpZiAoUGxhaXREcmF3RWxlbWVudC5pc1N3aW1sYW5lKGNvbnRleHQuZWxlbWVudCkpIHtcbiAgICAgICAgICAgIHJldHVybiBUYWJsZUNvbXBvbmVudDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZHJhd0VsZW1lbnQoY29udGV4dCk7XG4gICAgfTtcblxuICAgIGJvYXJkLmJ1aWxkVGFibGUgPSAoZWxlbWVudDogUGxhaXRCYXNlVGFibGUpID0+IHtcbiAgICAgICAgaWYgKFBsYWl0RHJhd0VsZW1lbnQuaXNTd2ltbGFuZShlbGVtZW50KSkge1xuICAgICAgICAgICAgcmV0dXJuIGJ1aWxkU3dpbWxhbmVUYWJsZShlbGVtZW50IGFzIFBsYWl0U3dpbWxhbmUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBidWlsZFRhYmxlKGVsZW1lbnQpO1xuICAgIH07XG5cbiAgICByZXR1cm4gd2l0aFN3aW1sYW5lQ3JlYXRlQnlEcmF3aW5nKHdpdGhTd2ltbGFuZUNyZWF0ZUJ5RHJhZyhib2FyZCkpO1xufTtcbiJdfQ==
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { TableComponent } from '../table.component';
|
|
2
|
-
import { PlaitBoard, RectangleClient, isPolylineHitRectangle, toViewBoxPoint, toHostPoint, getHitElementByPoint, getSelectedElements } from '@plait/core';
|
|
2
|
+
import { PlaitBoard, RectangleClient, isPolylineHitRectangle, toViewBoxPoint, toHostPoint, getHitElementByPoint, getSelectedElements, PlaitPointerType, isDragging, isMainPointer } from '@plait/core';
|
|
3
3
|
import { editCell, getHitCell } from '../utils/table';
|
|
4
4
|
import { withTableResize } from './with-table-resize';
|
|
5
5
|
import { isVirtualKey, isDelete, isSpaceHotkey } from '@plait/common';
|
|
6
6
|
import { PlaitDrawElement } from '../interfaces';
|
|
7
|
+
import { getSelectedTableElements, isSingleSelectTable, setSelectedCells } from '../utils';
|
|
7
8
|
export const withTable = (board) => {
|
|
8
9
|
const tableBoard = board;
|
|
9
|
-
const { drawElement, getRectangle, isRectangleHit, isHit, isMovable, dblClick, keyDown } = tableBoard;
|
|
10
|
+
const { drawElement, getRectangle, isRectangleHit, isHit, isMovable, dblClick, keyDown, pointerUp } = tableBoard;
|
|
10
11
|
tableBoard.drawElement = (context) => {
|
|
11
12
|
if (PlaitDrawElement.isElementByTable(context.element)) {
|
|
12
13
|
return TableComponent;
|
|
@@ -70,9 +71,26 @@ export const withTable = (board) => {
|
|
|
70
71
|
}
|
|
71
72
|
dblClick(event);
|
|
72
73
|
};
|
|
74
|
+
tableBoard.pointerUp = (event) => {
|
|
75
|
+
const isSetSelectionPointer = PlaitBoard.isPointer(tableBoard, PlaitPointerType.selection) || PlaitBoard.isPointer(tableBoard, PlaitPointerType.hand);
|
|
76
|
+
const isSkip = !isMainPointer(event) || isDragging(tableBoard) || !isSetSelectionPointer;
|
|
77
|
+
if (isSkip) {
|
|
78
|
+
pointerUp(event);
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
if (isSingleSelectTable(tableBoard)) {
|
|
82
|
+
const point = toViewBoxPoint(tableBoard, toHostPoint(tableBoard, event.x, event.y));
|
|
83
|
+
const element = getSelectedTableElements(tableBoard)[0];
|
|
84
|
+
const hitCell = getHitCell(tableBoard, element, point);
|
|
85
|
+
if (hitCell && hitCell.text && hitCell.textHeight) {
|
|
86
|
+
setSelectedCells(element, [hitCell]);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
pointerUp(event);
|
|
90
|
+
};
|
|
73
91
|
tableBoard.buildTable = (element) => {
|
|
74
92
|
return element;
|
|
75
93
|
};
|
|
76
94
|
return withTableResize(tableBoard);
|
|
77
95
|
};
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC10YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2RyYXcvc3JjL3BsdWdpbnMvd2l0aC10YWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsT0FBTyxFQUNILFVBQVUsRUFHVixlQUFlLEVBRWYsc0JBQXNCLEVBQ3RCLGNBQWMsRUFDZCxXQUFXLEVBQ1gsb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUN0QixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtJQUMzQyxNQUFNLFVBQVUsR0FBRyxLQUF3QixDQUFDO0lBRTVDLE1BQU0sRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsR0FBRyxVQUFVLENBQUM7SUFFdEcsVUFBVSxDQUFDLFdBQVcsR0FBRyxDQUFDLE9BQWtDLEVBQUUsRUFBRTtRQUM1RCxJQUFJLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ3JELE9BQU8sY0FBYyxDQUFDO1FBQzFCLENBQUM7UUFDRCxPQUFPLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoQyxDQUFDLENBQUM7SUFFRixVQUFVLENBQUMsS0FBSyxHQUFHLENB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LEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2hDLE1BQU0sS0FBSyxHQUFHLGNBQWMsQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzFFLE1BQU0sVUFBVSxHQUFHLG9CQUFvQixDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztZQUN0RCxJQUFJLFVBQVUsSUFBSSxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO2dCQUM5RCxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDMUQsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLElBQUksSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7b0JBQ2hELFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDbEIsT0FBTztnQkFDWCxDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7UUFDRCxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEIsQ0FBQyxDQUFDO0lBRUYsVUFBVSxDQUFDLFVBQVUsR0FBRyxDQUFDLE9BQXVCLEVBQUUsRUFBRTtRQUNoRCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDLENBQUM7SUFFRixPQUFPLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUN2QyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL3RhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFpdEJhc2VUYWJsZSwgUGxhaXRUYWJsZUJvYXJkIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy90YWJsZSc7XG5pbXBvcnQge1xuICAgIFBsYWl0Qm9hcmQsXG4gICAgUGxhaXRQbHVnaW5FbGVtZW50Q29udGV4dCxcbiAgICBQbGFpdEVsZW1lbnQsXG4gICAgUmVjdGFuZ2xlQ2xpZW50LFxuICAgIFNlbGVjdGlvbixcbiAgICBpc1BvbHlsaW5lSGl0UmVjdGFuZ2xlLFxuICAgIHRvVmlld0JveFBvaW50LFxuICAgIHRvSG9zdFBvaW50LFxuICAgIGdldEhpdEVsZW1lbnRCeVBvaW50LFxuICAgIGdldFNlbGVjdGVkRWxlbWVudHNcbn0gZnJvbSAnQHBsYWl0L2NvcmUnO1xuaW1wb3J0IHsgZWRpdENlbGwsIGdldEhpdENlbGwgfSBmcm9tICcuLi91dGlscy90YWJsZSc7XG5pbXBvcnQgeyB3aXRoVGFibGVSZXNpemUgfSBmcm9tICcuL3dpdGgtdGFibGUtcmVzaXplJztcbmltcG9ydCB7IGlzVmlydHVhbEtleSwgaXNEZWxldGUsIGlzU3BhY2VIb3RrZXkgfSBmcm9tICdAcGxhaXQvY29tbW9uJztcbmltcG9ydCB7IFBsYWl0RHJhd0VsZW1lbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGNvbnN0IHdpdGhUYWJsZSA9IChib2FyZDogUGxhaXRCb2FyZCkgPT4ge1xuICAgIGNvbnN0IHRhYmxlQm9hcmQgPSBib2FyZCBhcyBQbGFpdFRhYmxlQm9hcmQ7XG5cbiAgICBjb25zdCB7IGRyYXdFbGVtZW50LCBnZXRSZWN0YW5nbGUsIGlzUmVjdGFuZ2xlSGl0LCBpc0hpdCwgaXNNb3ZhYmxlLCBkYmxDbGljaywga2V5RG93biB9ID0gdGFibGVCb2FyZDtcblxuICAgIHRhYmxlQm9hcmQuZHJhd0VsZW1lbnQgPSAoY29udGV4dDogUGxhaXRQbHVnaW5FbGVtZW50Q29udGV4dCkgPT4ge1xuICAgICAgICBpZiAoUGxhaXREcmF3RWxlbWVudC5pc0VsZW1lbnRCeVRhYmxlKGNvbnRleHQuZWxlbWVudCkpIHtcbiAgICAgICAgICAgIHJldHVybiBUYWJsZUNvbXBvbmVudDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZHJhd0VsZW1lbnQoY29udGV4dCk7XG4gICAgfTtcblxuICAgIHRhYmxlQm9hcmQuaXNIaXQgPSAoZWxlbWVudCwgcG9pbnQpID0+IHtcbiAgICAgICAgaWYgKFBsYWl0RHJhd0VsZW1lbnQuaXNFbGVtZW50QnlUYWJsZShlbGVtZW50KSkge1xuICAgICAgICAgICAgY29uc3QgY2xpZW50ID0gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGVsZW1lbnQucG9pbnRzKTtcbiAgICAgICAgICAgIHJldHVybiBSZWN0YW5nbGVDbGllbnQuaXNQb2ludEluUmVjdGFuZ2xlKGNsaWVudCwgcG9pbnQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpc0hpdChlbGVtZW50LCBwb2ludCk7XG4gICAgfTtcblxuICAgIHRhYmxlQm9hcmQuZ2V0UmVjdGFuZ2xlID0gKGVsZW1lbnQ6IFBsYWl0RWxlbWVudCkgPT4ge1xuICAgICAgICBpZiAoUGxhaXREcmF3RWxlbWVudC5pc0VsZW1lbnRCeVRhYmxlKGVsZW1lbnQpKSB7XG4gICAgICAgICAgICByZXR1cm4gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGVsZW1lbnQucG9pbnRzKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZ2V0UmVjdGFuZ2xlKGVsZW1lbnQpO1xuICAgIH07XG5cbiAgICB0YWJsZUJvYXJkLmlzTW92YWJsZSA9IChlbGVtZW50OiBQbGFpdEVsZW1lbnQpID0+IHtcbiAgICAgICAgaWYgKFBsYWl0RHJhd0VsZW1lbnQuaXNFbGVtZW50QnlUYWJsZShlbGVtZW50KSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXNNb3ZhYmxlKGVsZW1lbnQpO1xuICAgIH07XG5cbiAgICB0YWJsZUJvYXJkLmlzUmVjdGFuZ2xlSGl0ID0gKGVsZW1lbnQ6IFBsYWl0RWxlbWVudCwgc2VsZWN0aW9uOiBTZWxlY3Rpb24pID0+IHtcbiAgICAgICAgaWYgKFBsYWl0RHJhd0VsZW1lbnQuaXNFbGVtZW50QnlUYWJsZShlbGVtZW50KSkge1xuICAgICAgICAgICAgY29uc3QgcmFuZ2VSZWN0YW5nbGUgPSBSZWN0YW5nbGVDbGllbnQuZ2V0UmVjdGFuZ2xlQnlQb2ludHMoW3NlbGVjdGlvbi5hbmNob3IsIHNlbGVjdGlvbi5mb2N1c10pO1xuICAgICAgICAgICAgcmV0dXJuIGlzUG9seWxpbmVIaXRSZWN0YW5nbGUoZWxlbWVudC5wb2ludHMsIHJhbmdlUmVjdGFuZ2xlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaXNSZWN0YW5nbGVIaXQoZWxlbWVudCwgc2VsZWN0aW9uKTtcbiAgICB9O1xuXG4gICAgdGFibGVCb2FyZC5rZXlEb3duID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkRWxlbWVudHMgPSBnZXRTZWxlY3RlZEVsZW1lbnRzKGJvYXJkKTtcbiAgICAgICAgY29uc3QgaXNTaW5nbGVTZWxlY3Rpb24gPSBzZWxlY3RlZEVsZW1lbnRzLmxlbmd0aCA9PT0gMTtcbiAgICAgICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IHNlbGVjdGVkRWxlbWVudHNbMF07XG4gICAgICAgIGlmICghUGxhaXRCb2FyZC5pc1JlYWRvbmx5KGJvYXJkKSAmJiAhaXNWaXJ0dWFsS2V5KGV2ZW50KSAmJiAhaXNEZWxldGUoZXZlbnQpICYmICFpc1NwYWNlSG90a2V5KGV2ZW50KSAmJiBpc1NpbmdsZVNlbGVjdGlvbikge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGlmIChQbGFpdERyYXdFbGVtZW50LmlzRWxlbWVudEJ5VGFibGUodGFyZ2V0RWxlbWVudCkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaXJzdFRleHRDZWxsID0gdGFyZ2V0RWxlbWVudC5jZWxscy5maW5kKGl0ZW0gPT4gaXRlbS50ZXh0ICYmIGl0ZW0udGV4dEhlaWdodCk7XG4gICAgICAgICAgICAgICAgaWYgKGZpcnN0VGV4dENlbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZWRpdENlbGwoZmlyc3RUZXh0Q2VsbCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAga2V5RG93bihldmVudCk7XG4gICAgfTtcblxuICAgIHRhYmxlQm9hcmQuZGJsQ2xpY2sgPSAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgaWYgKCFQbGFpdEJvYXJkLmlzUmVhZG9ubHkoYm9hcmQpKSB7XG4gICAgICAgICAgICBjb25zdCBwb2ludCA9IHRvVmlld0JveFBvaW50KGJvYXJkLCB0b0hvc3RQb2ludChib2FyZCwgZXZlbnQueCwgZXZlbnQueSkpO1xuICAgICAgICAgICAgY29uc3QgaGl0RWxlbWVudCA9IGdldEhpdEVsZW1lbnRCeVBvaW50KGJvYXJkLCBwb2ludCk7XG4gICAgICAgICAgICBpZiAoaGl0RWxlbWVudCAmJiBQbGFpdERyYXdFbGVtZW50LmlzRWxlbWVudEJ5VGFibGUoaGl0RWxlbWVudCkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBoaXRDZWxsID0gZ2V0SGl0Q2VsbCh0YWJsZUJvYXJkLCBoaXRFbGVtZW50LCBwb2ludCk7XG4gICAgICAgICAgICAgICAgaWYgKGhpdENlbGwgJiYgaGl0Q2VsbC50ZXh0ICYmIGhpdENlbGwudGV4dEhlaWdodCkge1xuICAgICAgICAgICAgICAgICAgICBlZGl0Q2VsbChoaXRDZWxsKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBkYmxDbGljayhldmVudCk7XG4gICAgfTtcblxuICAgIHRhYmxlQm9hcmQuYnVpbGRUYWJsZSA9IChlbGVtZW50OiBQbGFpdEJhc2VUYWJsZSkgPT4ge1xuICAgICAgICByZXR1cm4gZWxlbWVudDtcbiAgICB9O1xuXG4gICAgcmV0dXJuIHdpdGhUYWJsZVJlc2l6ZSh0YWJsZUJvYXJkKTtcbn07XG4iXX0=
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC10YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2RyYXcvc3JjL3BsdWdpbnMvd2l0aC10YWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsT0FBTyxFQUNILFVBQVUsRUFHVixlQUFlLEVBRWYsc0JBQXNCLEVBQ3RCLGNBQWMsRUFDZCxXQUFXLEVBQ1gsb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUNuQixnQkFBZ0IsRUFDaEIsVUFBVSxFQUNWLGFBQWEsRUFDaEIsTUFBTSxhQUFhLENBQUM7QUFDckIsT0FBTyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFM0YsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLENBQUMsS0FBaUIsRUFBRSxFQUFFO0lBQzNDLE1BQU0sVUFBVSxHQUFHLEtBQXdCLENBQUM7SUFFNUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxVQUFVLENBQUM7SUFFakgsVUFBVSxDQUFDLFdBQVcsR0FBRyxDQUFDLE9BQWtDLEVBQUUsRUFBRTtRQUM1RCxJQUFJLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFD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SSxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztRQUN6RixJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1QsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2pCLE9BQU87UUFDWCxDQUFDO1FBQ0QsSUFBSSxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ2xDLE1BQU0sS0FBSyxHQUFHLGNBQWMsQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BGLE1BQU0sT0FBTyxHQUFHLHdCQUF3QixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hELE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3ZELElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNoRCxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQ3pDLENBQUM7UUFDTCxDQUFDO1FBQ0QsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JCLENBQUMsQ0FBQztJQUVGLFVBQVUsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxPQUF1QixFQUFFLEVBQUU7UUFDaEQsT0FBTyxPQUFPLENBQUM7SUFDbkIsQ0FBQyxDQUFDO0lBRUYsT0FBTyxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDdkMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFibGVDb21wb25lbnQgfSBmcm9tICcuLi90YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhaXRCYXNlVGFibGUsIFBsYWl0VGFibGVCb2FyZCB9IGZyb20gJy4uL2ludGVyZmFjZXMvdGFibGUnO1xuaW1wb3J0IHtcbiAgICBQbGFpdEJvYXJkLFxuICAgIFBsYWl0UGx1Z2luRWxlbWVudENvbnRleHQsXG4gICAgUGxhaXRFbGVtZW50LFxuICAgIFJlY3RhbmdsZUNsaWVudCxcbiAgICBTZWxlY3Rpb24sXG4gICAgaXNQb2x5bGluZUhpdFJlY3RhbmdsZSxcbiAgICB0b1ZpZXdCb3hQb2ludCxcbiAgICB0b0hvc3RQb2ludCxcbiAgICBnZXRIaXRFbGVtZW50QnlQb2ludCxcbiAgICBnZXRTZWxlY3RlZEVsZW1lbnRzLFxuICAgIFBsYWl0UG9pbnRlclR5cGUsXG4gICAgaXNEcmFnZ2luZyxcbiAgICBpc01haW5Qb2ludGVyXG59IGZyb20gJ0BwbGFpdC9jb3JlJztcbmltcG9ydCB7IGVkaXRDZWxsLCBnZXRIaXRDZWxsIH0gZnJvbSAnLi4vdXRpbHMvdGFibGUnO1xuaW1wb3J0IHsgd2l0aFRhYmxlUmVzaXplIH0gZnJvbSAnLi93aXRoLXRhYmxlLXJlc2l6ZSc7XG5pbXBvcnQgeyBpc1ZpcnR1YWxLZXksIGlzRGVsZXRlLCBpc1NwYWNlSG90a2V5IH0gZnJvbSAnQHBsYWl0L2NvbW1vbic7XG5pbXBvcnQgeyBQbGFpdERyYXdFbGVtZW50IH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBnZXRTZWxlY3RlZFRhYmxlRWxlbWVudHMsIGlzU2luZ2xlU2VsZWN0VGFibGUsIHNldFNlbGVjdGVkQ2VsbHMgfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCB3aXRoVGFibGUgPSAoYm9hcmQ6IFBsYWl0Qm9hcmQpID0+IHtcbiAgICBjb25zdCB0YWJsZUJvYXJkID0gYm9hcmQgYXMgUGxhaXRUYWJsZUJvYXJkO1xuXG4gICAgY29uc3QgeyBkcmF3RWxlbWVudCwgZ2V0UmVjdGFuZ2xlLCBpc1JlY3RhbmdsZUhpdCwgaXNIaXQsIGlzTW92YWJsZSwgZGJsQ2xpY2ssIGtleURvd24sIHBvaW50ZXJVcCB9ID0gdGFibGVCb2FyZDtcblxuICAgIHRhYmxlQm9hcmQuZHJhd0VsZW1lbnQgPSAoY29udGV4dDogUGxhaXRQbHVnaW5FbGVtZW50Q29udGV4dCkgPT4ge1xuICAgICAgICBpZiAoUGxhaXREcmF3RWxlbWVudC5pc0VsZW1lbnRCeVRhYmxlKGNvbnRleHQuZWxlbWVudCkpIHtcbiAgICAgICAgICAgIHJldHVybiBUYWJsZUNvbXBvbmVudDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZHJhd0VsZW1lbnQoY29udGV4dCk7XG4gICAgfTtcblxuICAgIHRhYmxlQm9hcmQuaXNIaXQgPSAoZWxlbWVudCwgcG9pbnQpID0+IHtcbiAgICAgICAgaWYgKFBsYWl0RHJhd0VsZW1lbnQuaXNFbGVtZW50QnlUYWJsZShlbGVtZW50KSkge1xuICAgICAgICAgICAgY29uc3QgY2xpZW50ID0gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGVsZW1lbnQucG9pbnRzKTtcbiAgICAgICAgICAgIHJldHVybiBSZWN0YW5nbGVDbGllbnQuaXNQb2ludEluUmVjdGFuZ2xlKGNsaWVudCwgcG9pbnQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpc0hpdChlbGVtZW50LCBwb2ludCk7XG4gICAgfTtcblxuICAgIHRhYmxlQm9hcmQuZ2V0UmVjdGFuZ2xlID0gKGVsZW1lbnQ6IFBsYWl0RWxlbWVudCkgPT4ge1xuICAgICAgICBpZiAoUGxhaXREcmF3RWxlbWVudC5pc0VsZW1lbnRCeVRhYmxlKGVsZW1lbnQpKSB7XG4gICAgICAgICAgICByZXR1cm4gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGVsZW1lbnQucG9pbnRzKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZ2V0UmVjdGFuZ2xlKGVsZW1lbnQpO1xuICAgIH07XG5cbiAgICB0YWJsZUJvYXJkLmlzTW92YWJsZSA9IChlbGVtZW50OiBQbGFpdEVsZW1lbnQpID0+IHtcbiAgICAgICAgaWYgKFBsYWl0RHJhd0VsZW1lbnQuaXNFbGVtZW50QnlUYWJsZShlbGVtZW50KSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXNNb3ZhYmxlKGVsZW1lbnQpO1xuICAgIH07XG5cbiAgICB0YWJsZUJvYXJkLmlzUmVjdGFuZ2xlSGl0ID0gKGVsZW1lbnQ6IFBsYWl0RWxlbWVudCwgc2VsZWN0aW9uOiBTZWxlY3Rpb24pID0+IHtcbiAgICAgICAgaWYgKFBsYWl0RHJhd0VsZW1lbnQuaXNFbGVtZW50QnlUYWJsZShlbGVtZW50KSkge1xuICAgICAgICAgICAgY29uc3QgcmFuZ2VSZWN0YW5nbGUgPSBSZWN0YW5nbGVDbGllbnQuZ2V0UmVjdGFuZ2xlQnlQb2ludHMoW3NlbGVjdGlvbi5hbmNob3IsIHNlbGVjdGlvbi5mb2N1c10pO1xuICAgICAgICAgICAgcmV0dXJuIGlzUG9seWxpbmVIaXRSZWN0YW5nbGUoZWxlbWVudC5wb2ludHMsIHJhbmdlUmVjdGFuZ2xlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaXNSZWN0YW5nbGVIaXQoZWxlbWVudCwgc2VsZWN0aW9uKTtcbiAgICB9O1xuXG4gICAgdGFibGVCb2FyZC5rZXlEb3duID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkRWxlbWVudHMgPSBnZXRTZWxlY3RlZEVsZW1lbnRzKGJvYXJkKTtcbiAgICAgICAgY29uc3QgaXNTaW5nbGVTZWxlY3Rpb24gPSBzZWxlY3RlZEVsZW1lbnRzLmxlbmd0aCA9PT0gMTtcbiAgICAgICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IHNlbGVjdGVkRWxlbWVudHNbMF07XG4gICAgICAgIGlmICghUGxhaXRCb2FyZC5pc1JlYWRvbmx5KGJvYXJkKSAmJiAhaXNWaXJ0dWFsS2V5KGV2ZW50KSAmJiAhaXNEZWxldGUoZXZlbnQpICYmICFpc1NwYWNlSG90a2V5KGV2ZW50KSAmJiBpc1NpbmdsZVNlbGVjdGlvbikge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGlmIChQbGFpdERyYXdFbGVtZW50LmlzRWxlbWVudEJ5VGFibGUodGFyZ2V0RWxlbWVudCkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaXJzdFRleHRDZWxsID0gdGFyZ2V0RWxlbWVudC5jZWxscy5maW5kKGl0ZW0gPT4gaXRlbS50ZXh0ICYmIGl0ZW0udGV4dEhlaWdodCk7XG4gICAgICAgICAgICAgICAgaWYgKGZpcnN0VGV4dENlbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZWRpdENlbGwoZmlyc3RUZXh0Q2VsbCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAga2V5RG93bihldmVudCk7XG4gICAgfTtcblxuICAgIHRhYmxlQm9hcmQuZGJsQ2xpY2sgPSAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgaWYgKCFQbGFpdEJvYXJkLmlzUmVhZG9ubHkoYm9hcmQpKSB7XG4gICAgICAgICAgICBjb25zdCBwb2ludCA9IHRvVmlld0JveFBvaW50KGJvYXJkLCB0b0hvc3RQb2ludChib2FyZCwgZXZlbnQueCwgZXZlbnQueSkpO1xuICAgICAgICAgICAgY29uc3QgaGl0RWxlbWVudCA9IGdldEhpdEVsZW1lbnRCeVBvaW50KGJvYXJkLCBwb2ludCk7XG4gICAgICAgICAgICBpZiAoaGl0RWxlbWVudCAmJiBQbGFpdERyYXdFbGVtZW50LmlzRWxlbWVudEJ5VGFibGUoaGl0RWxlbWVudCkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBoaXRDZWxsID0gZ2V0SGl0Q2VsbCh0YWJsZUJvYXJkLCBoaXRFbGVtZW50LCBwb2ludCk7XG4gICAgICAgICAgICAgICAgaWYgKGhpdENlbGwgJiYgaGl0Q2VsbC50ZXh0ICYmIGhpdENlbGwudGV4dEhlaWdodCkge1xuICAgICAgICAgICAgICAgICAgICBlZGl0Q2VsbChoaXRDZWxsKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBkYmxDbGljayhldmVudCk7XG4gICAgfTtcblxuICAgIHRhYmxlQm9hcmQucG9pbnRlclVwID0gKGV2ZW50OiBQb2ludGVyRXZlbnQpID0+IHtcbiAgICAgICAgY29uc3QgaXNTZXRTZWxlY3Rpb25Qb2ludGVyID1cbiAgICAgICAgICAgIFBsYWl0Qm9hcmQuaXNQb2ludGVyKHRhYmxlQm9hcmQsIFBsYWl0UG9pbnRlclR5cGUuc2VsZWN0aW9uKSB8fCBQbGFpdEJvYXJkLmlzUG9pbnRlcih0YWJsZUJvYXJkLCBQbGFpdFBvaW50ZXJUeXBlLmhhbmQpO1xuICAgICAgICBjb25zdCBpc1NraXAgPSAhaXNNYWluUG9pbnRlcihldmVudCkgfHwgaXNEcmFnZ2luZyh0YWJsZUJvYXJkKSB8fCAhaXNTZXRTZWxlY3Rpb25Qb2ludGVyO1xuICAgICAgICBpZiAoaXNTa2lwKSB7XG4gICAgICAgICAgICBwb2ludGVyVXAoZXZlbnQpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc1NpbmdsZVNlbGVjdFRhYmxlKHRhYmxlQm9hcmQpKSB7XG4gICAgICAgICAgICBjb25zdCBwb2ludCA9IHRvVmlld0JveFBvaW50KHRhYmxlQm9hcmQsIHRvSG9zdFBvaW50KHRhYmxlQm9hcmQsIGV2ZW50LngsIGV2ZW50LnkpKTtcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSBnZXRTZWxlY3RlZFRhYmxlRWxlbWVudHModGFibGVCb2FyZClbMF07XG4gICAgICAgICAgICBjb25zdCBoaXRDZWxsID0gZ2V0SGl0Q2VsbCh0YWJsZUJvYXJkLCBlbGVtZW50LCBwb2ludCk7XG4gICAgICAgICAgICBpZiAoaGl0Q2VsbCAmJiBoaXRDZWxsLnRleHQgJiYgaGl0Q2VsbC50ZXh0SGVpZ2h0KSB7XG4gICAgICAgICAgICAgICAgc2V0U2VsZWN0ZWRDZWxscyhlbGVtZW50LCBbaGl0Q2VsbF0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHBvaW50ZXJVcChldmVudCk7XG4gICAgfTtcblxuICAgIHRhYmxlQm9hcmQuYnVpbGRUYWJsZSA9IChlbGVtZW50OiBQbGFpdEJhc2VUYWJsZSkgPT4ge1xuICAgICAgICByZXR1cm4gZWxlbWVudDtcbiAgICB9O1xuXG4gICAgcmV0dXJuIHdpdGhUYWJsZVJlc2l6ZSh0YWJsZUJvYXJkKTtcbn07XG4iXX0=
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
export * from './interfaces';
|
|
2
2
|
export * from './plugins/with-draw';
|
|
3
|
-
export * from './plugins/with-line-auto-complete';
|
|
3
|
+
export * from './plugins/with-arrow-line-auto-complete';
|
|
4
4
|
export * from './constants';
|
|
5
5
|
export * from './utils';
|
|
6
6
|
export * from './geometry.component';
|
|
7
|
-
export * from './line.component';
|
|
7
|
+
export * from './arrow-line.component';
|
|
8
8
|
export * from './transforms';
|
|
9
9
|
export * from './generators/index';
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2RyYXcvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vcGx1Z2lucy93aXRoLWRyYXcnO1xuZXhwb3J0ICogZnJvbSAnLi9wbHVnaW5zL3dpdGgtYXJyb3ctbGluZS1hdXRvLWNvbXBsZXRlJztcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9nZW9tZXRyeS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hcnJvdy1saW5lLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RyYW5zZm9ybXMnO1xuZXhwb3J0ICogZnJvbSAnLi9nZW5lcmF0b3JzL2luZGV4JztcbiJdfQ==
|
|
@@ -10,7 +10,7 @@ import { getEngine } from './engines';
|
|
|
10
10
|
import { TableSymbols } from './interfaces';
|
|
11
11
|
import { getHorizontalTextRectangle } from './engines/table/table';
|
|
12
12
|
import { ShapeDefaultSpace } from './constants';
|
|
13
|
-
import {
|
|
13
|
+
import { ArrowLineAutoCompleteGenerator } from './generators/arrow-line-auto-complete.generator';
|
|
14
14
|
export class TableComponent extends CommonElementFlavour {
|
|
15
15
|
constructor() {
|
|
16
16
|
super();
|
|
@@ -40,8 +40,8 @@ export class TableComponent extends CommonElementFlavour {
|
|
|
40
40
|
});
|
|
41
41
|
this.tableGenerator = new TableGenerator(this.board);
|
|
42
42
|
this.initializeTextManage();
|
|
43
|
-
this.lineAutoCompleteGenerator = new
|
|
44
|
-
this.getRef().addGenerator(
|
|
43
|
+
this.lineAutoCompleteGenerator = new ArrowLineAutoCompleteGenerator(this.board);
|
|
44
|
+
this.getRef().addGenerator(ArrowLineAutoCompleteGenerator.key, this.lineAutoCompleteGenerator);
|
|
45
45
|
}
|
|
46
46
|
initialize() {
|
|
47
47
|
super.initialize();
|
|
@@ -87,9 +87,9 @@ export class TableComponent extends CommonElementFlavour {
|
|
|
87
87
|
this.textGenerator = new TextGenerator(this.board, this.element, texts, {
|
|
88
88
|
onChange: (value, data, text) => {
|
|
89
89
|
const height = data.height / this.board.viewport.zoom;
|
|
90
|
-
const
|
|
90
|
+
const path = PlaitBoard.findPath(this.board, value);
|
|
91
91
|
if (data.newText) {
|
|
92
|
-
DrawTransforms.setTableText(this.board,
|
|
92
|
+
DrawTransforms.setTableText(this.board, path, text.key, data.newText, height);
|
|
93
93
|
}
|
|
94
94
|
data.operations && memorizeLatestText(value, data.operations);
|
|
95
95
|
},
|
|
@@ -154,4 +154,4 @@ export class TableComponent extends CommonElementFlavour {
|
|
|
154
154
|
this.lineAutoCompleteGenerator.destroy();
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGFja2FnZXMvZHJhdy9zcmMvdGFibGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxVQUFVLEVBR1YsbUJBQW1CLEVBQ25CLGVBQWUsRUFDZixZQUFZLEVBQ1osZ0JBQWdCLEVBQ25CLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQXdCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RyxPQUFPLEVBQStDLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEcsT0FBTyxFQUFFLGFBQWEsRUFBc0IsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQix1QkFBdUIsRUFDdkIsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNuQixNQUFNLFNBQVMsQ0FBQztBQUNqQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDNUMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2hELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRXRGLE1BQU0sT0FBTyxjQUFxQyxTQUFRLG9CQUFtQztJQVN6RjtRQUNJLEtB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UUFBUTtpQkFDMUIsQ0FBQyxDQUFDO1lBQ1AsQ0FBQztZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN0QyxDQUFDO1FBQ0wsQ0FBQztRQUNELElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3JHLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtTQUMxQixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsT0FBTztRQUNILEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMseUJBQXlCLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDN0MsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBQbGFpdEJvYXJkLFxuICAgIFBsYWl0UGx1Z2luRWxlbWVudENvbnRleHQsXG4gICAgT25Db250ZXh0Q2hhbmdlZCxcbiAgICBBQ1RJVkVfU1RST0tFX1dJRFRILFxuICAgIFJlY3RhbmdsZUNsaWVudCxcbiAgICBzZXRBbmdsZUZvckcsXG4gICAgZGVncmVlc1RvUmFkaWFuc1xufSBmcm9tICdAcGxhaXQvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmVHZW5lcmF0b3IsIENvbW1vbkVsZW1lbnRGbGF2b3VyLCBUZXh0TWFuYWdlQ2hhbmdlRGF0YSwgY2FuUmVzaXplIH0gZnJvbSAnQHBsYWl0L2NvbW1vbic7XG5pbXBvcnQgeyBQbGFpdFRhYmxlLCBQbGFpdFRhYmxlQm9hcmQsIFBsYWl0VGFibGVDZWxsLCBQbGFpdFRhYmxlRWxlbWVudCB9IGZyb20gJy4vaW50ZXJmYWNlcy90YWJsZSc7XG5pbXBvcnQgeyBnZXRUZXh0TWFuYWdlLCBQbGFpdERyYXdTaGFwZVRleHQsIFRleHRHZW5lcmF0b3IgfSBmcm9tICcuL2dlbmVyYXRvcnMvdGV4dC5nZW5lcmF0b3InO1xuaW1wb3J0IHsgVGFibGVHZW5lcmF0b3IgfSBmcm9tICcuL2dlbmVyYXRvcnMvdGFibGUuZ2VuZXJhdG9yJztcbmltcG9ydCB7IERyYXdUcmFuc2Zvcm1zIH0gZnJvbSAnLi90cmFuc2Zvcm1zJztcbmltcG9ydCB7IGdldENlbGxXaXRoUG9pbnRzLCBpc0NlbGxJbmNsdWRlVGV4dCB9IGZyb20gJy4vdXRpbHMvdGFibGUnO1xuaW1wb3J0IHtcbiAgICBjbGVhclNlbGVjdGVkQ2VsbHMsXG4gICAgZ2V0Q2VsbHNSZWN0YW5nbGUsXG4gICAgZ2V0U2VsZWN0ZWRDZWxscyxcbiAgICBnZXRTdHJva2VXaWR0aEJ5RWxlbWVudCxcbiAgICBtZW1vcml6ZUxhdGVzdFRleHQsXG4gICAgc2V0U2VsZWN0ZWRDZWxsc1xufSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IGdldEVuZ2luZSB9IGZyb20gJy4vZW5naW5lcyc7XG5pbXBvcnQgeyBUYWJsZVN5bWJvbHMgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgZ2V0SG9yaXpvbnRhbFRleHRSZWN0YW5nbGUgfSBmcm9tICcuL2VuZ2luZXMvdGFibGUvdGFibGUnO1xuaW1wb3J0IHsgU2hhcGVEZWZhdWx0U3BhY2UgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBMaW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yIH0gZnJvbSAnLi9nZW5lcmF0b3JzL2xpbmUtYXV0by1jb21wbGV0ZS5nZW5lcmF0b3InO1xuXG5leHBvcnQgY2xhc3MgVGFibGVDb21wb25lbnQ8VCBleHRlbmRzIFBsYWl0VGFibGU+IGV4dGVuZHMgQ29tbW9uRWxlbWVudEZsYXZvdXI8VCwgUGxhaXRCb2FyZD4gaW1wbGVtZW50cyBPbkNvbnRleHRDaGFuZ2VkPFQsIFBsYWl0Qm9hcmQ+IHtcbiAgICBhY3RpdmVHZW5lcmF0b3IhOiBBY3RpdmVHZW5lcmF0b3I8VD47XG5cbiAgICB0YWJsZUdlbmVyYXRvciE6IFRhYmxlR2VuZXJhdG9yPFQ+O1xuXG4gICAgdGV4dEdlbmVyYXRvciE6IFRleHRHZW5lcmF0b3I8VD47XG5cbiAgICBsaW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yITogTGluZUF1dG9Db21wbGV0ZUdlbmVyYXRvcjxQbGFpdFRhYmxlPjtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIGluaXRpYWxpemVHZW5lcmF0b3IoKSB7XG4gICAgICAgIHRoaXMuYWN0aXZlR2VuZXJhdG9yID0gbmV3IEFjdGl2ZUdlbmVyYXRvcjxUPih0aGlzLmJvYXJkLCB7XG4gICAgICAgICAgICBnZXRTdHJva2VXaWR0aDogKCkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBBQ1RJVkVfU1RST0tFX1dJRFRIO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGdldFN0cm9rZU9wYWNpdHk6ICgpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBnZXRSZWN0YW5nbGU6ICh2YWx1ZTogVCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNlbGxzID0gZ2V0U2VsZWN0ZWRDZWxscyh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgaWYgKGNlbGxzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGdldENlbGxzUmVjdGFuZ2xlKHRoaXMuYm9hcmQgYXMgUGxhaXRUYWJsZUJvYXJkLCB0aGlzLmVsZW1lbnQsIGNlbGxzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIFJlY3RhbmdsZUNsaWVudC5nZXRSZWN0YW5nbGVCeVBvaW50cyh2YWx1ZS5wb2ludHMhKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBoYXNSZXNpemVIYW5kbGU6ICgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjZWxscyA9IGdldFNlbGVjdGVkQ2VsbHModGhpcy5lbGVtZW50KTtcbiAgICAgICAgICAgICAgICBpZiAoY2VsbHM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBjYW5SZXNpemUodGhpcy5ib2FyZCwgdGhpcy5lbGVtZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMudGFibGVHZW5lcmF0b3IgPSBuZXcgVGFibGVHZW5lcmF0b3I8VD4odGhpcy5ib2FyZCk7XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZVRleHRNYW5hZ2UoKTtcbiAgICAgICAgdGhpcy5saW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yID0gbmV3IExpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3IodGhpcy5ib2FyZCk7XG4gICAgICAgIHRoaXMuZ2V0UmVmKCkuYWRkR2VuZXJhdG9yKExpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3Iua2V5LCB0aGlzLmxpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3IpO1xuICAgIH1cblxuICAgIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLmluaXRpYWxpemUoKTtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplR2VuZXJhdG9yKCk7XG4gICAgICAgIHRoaXMuZHJhdygpO1xuICAgIH1cblxuICAgIGRyYXcoKSB7XG4gICAgICAgIHRoaXMudGFibGVHZW5lcmF0b3IucHJvY2Vzc0RyYXdpbmcodGhpcy5lbGVtZW50LCB0aGlzLmdldEVsZW1lbnRHKCkpO1xuICAgICAgICB0aGlzLnRleHRHZW5lcmF0b3IuZHJhdyh0aGlzLmdldEVsZW1lbnRHKCkpO1xuICAgICAgICB0aGlzLnJvdGF0ZVZlcnRpY2FsVGV4dCgpO1xuICAgICAgICB0aGlzLmxpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3IucHJvY2Vzc0RyYXdpbmcodGhpcy5lbGVtZW50LCBQbGFpdEJvYXJkLmdldEVsZW1lbnRBY3RpdmVIb3N0KHRoaXMuYm9hcmQpLCB7XG4gICAgICAgICAgICBzZWxlY3RlZDogdGhpcy5zZWxlY3RlZFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByb3RhdGVWZXJ0aWNhbFRleHQoKSB7XG4gICAgICAgIGNvbnN0IHRhYmxlID0gKHRoaXMuYm9hcmQgYXMgUGxhaXRUYWJsZUJvYXJkKS5idWlsZFRhYmxlKHRoaXMuZWxlbWVudCk7XG4gICAgICAgIHRhYmxlLmNlbGxzLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgICAgICBpZiAoUGxhaXRUYWJsZUVsZW1lbnQuaXNWZXJ0aWNhbFRleHQoaXRlbSkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0ZXh0TWFuYWdlID0gZ2V0VGV4dE1hbmFnZShpdGVtLmlkKTtcbiAgICAgICAgICAgICAgICBpZiAodGV4dE1hbmFnZSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlbmdpbmUgPSBnZXRFbmdpbmU8UGxhaXRUYWJsZT4oVGFibGVTeW1ib2xzLnRhYmxlKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVjdGFuZ2xlID0gZW5naW5lLmdldFRleHRSZWN0YW5nbGUhKHRoaXMuZWxlbWVudCwgeyBrZXk6IGl0ZW0uaWQsIGJvYXJkOiB0aGlzLmJvYXJkIH0pO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0TWFuYWdlLmcuY2xhc3NMaXN0LmFkZCgndmVydGljYWwtY2VsbC10ZXh0Jyk7XG4gICAgICAgICAgICAgICAgICAgIHNldEFuZ2xlRm9yRyh0ZXh0TWFuYWdlLmcsIFJlY3RhbmdsZUNsaWVudC5nZXRDZW50ZXJQb2ludChyZWN0YW5nbGUpLCBkZWdyZWVzVG9SYWRpYW5zKC05MCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0RHJhd1NoYXBlVGV4dHMoY2VsbHM6IFBsYWl0VGFibGVDZWxsW10pOiBQbGFpdERyYXdTaGFwZVRleHRbXSB7XG4gICAgICAgIHJldHVybiBjZWxsc1xuICAgICAgICAgICAgLmZpbHRlcihpdGVtID0+IGlzQ2VsbEluY2x1ZGVUZXh0KGl0ZW0pKVxuICAgICAgICAgICAgLm1hcChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBrZXk6IGl0ZW0uaWQsXG4gICAgICAgICAgICAgICAgICAgIHRleHQ6IGl0ZW0udGV4dCEsXG4gICAgICAgICAgICAgICAgICAgIHRleHRIZWlnaHQ6IGl0ZW0udGV4dEhlaWdodCEsXG4gICAgICAgICAgICAgICAgICAgIGJvYXJkOiB0aGlzLmJvYXJkXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGluaXRpYWxpemVUZXh0TWFuYWdlKCkge1xuICAgICAgICBjb25zdCB0ZXh0cyA9IHRoaXMuZ2V0RHJhd1NoYXBlVGV4dHModGhpcy5lbGVtZW50LmNlbGxzKTtcbiAgICAgICAgdGhpcy50ZXh0R2VuZXJhdG9yID0gbmV3IFRleHRHZW5lcmF0b3IodGhpcy5ib2FyZCwgdGhpcy5lbGVtZW50LCB0ZXh0cywge1xuICAgICAgICAgICAgb25DaGFuZ2U6ICh2YWx1ZTogUGxhaXRUYWJsZSwgZGF0YTogVGV4dE1hbmFnZUNoYW5nZURhdGEsIHRleHQ6IFBsYWl0RHJhd1NoYXBlVGV4dCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGhlaWdodCA9IGRhdGEuaGVpZ2h0IC8gdGhpcy5ib2FyZC52aWV3cG9ydC56b29tO1xuICAgICAgICAgICAgICAgIGNvbnN0IHdpZHRoID0gZGF0YS53aWR0aCAvIHRoaXMuYm9hcmQudmlld3BvcnQuem9vbTtcbiAgICAgICAgICAgICAgICBpZiAoZGF0YS5uZXdUZXh0KSB7XG4gICAgICAgICAgICAgICAgICAgIERyYXdUcmFuc2Zvcm1zLnNldFRhYmxlVGV4dCh0aGlzLmJvYXJkLCB2YWx1ZSwgdGV4dC5rZXksIGRhdGEubmV3VGV4dCwgd2lkdGgsIGhlaWdodCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGRhdGEub3BlcmF0aW9ucyAmJiBtZW1vcml6ZUxhdGVzdFRleHQodmFsdWUsIGRhdGEub3BlcmF0aW9ucyk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZ2V0UmVuZGVyUmVjdGFuZ2xlOiAodmFsdWU6IFBsYWl0VGFibGUsIHRleHQ6IFBsYWl0RHJhd1NoYXBlVGV4dCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNlbGwgPSBnZXRDZWxsV2l0aFBvaW50cyh0aGlzLmJvYXJkLCB2YWx1ZSwgdGV4dC5rZXkpO1xuICAgICAgICAgICAgICAgIGlmIChQbGFpdFRhYmxlRWxlbWVudC5pc1ZlcnRpY2FsVGV4dChjZWxsKSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjZWxsUmVjdGFuZ2xlID0gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGNlbGwucG9pbnRzKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3Ryb2tlV2lkdGggPSBnZXRTdHJva2VXaWR0aEJ5RWxlbWVudChjZWxsKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgd2lkdGggPSBjZWxsLnRleHRIZWlnaHQgfHwgMDtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaGVpZ2h0ID0gY2VsbFJlY3RhbmdsZS5oZWlnaHQgLSBTaGFwZURlZmF1bHRTcGFjZS5yZWN0YW5nbGVBbmRUZXh0ICogMiAtIHN0cm9rZVdpZHRoICogMjtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBoZWlnaHQgPiAwID8gaGVpZ2h0IDogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHg6IGNlbGxSZWN0YW5nbGUueCArIFNoYXBlRGVmYXVsdFNwYWNlLnJlY3RhbmdsZUFuZFRleHQgKyBzdHJva2VXaWR0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHk6IGNlbGxSZWN0YW5nbGUueSArIChjZWxsUmVjdGFuZ2xlLmhlaWdodCAtIGhlaWdodCkgLyAyXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGdldEhvcml6b250YWxUZXh0UmVjdGFuZ2xlKGNlbGwpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMudGV4dEdlbmVyYXRvci5pbml0aWFsaXplKCk7XG4gICAgfVxuXG4gICAgb25Db250ZXh0Q2hhbmdlZCh2YWx1ZTogUGxhaXRQbHVnaW5FbGVtZW50Q29udGV4dDxULCBQbGFpdEJvYXJkPiwgcHJldmlvdXM6IFBsYWl0UGx1Z2luRWxlbWVudENvbnRleHQ8VCwgUGxhaXRCb2FyZD4pIHtcbiAgICAgICAgY29uc3QgaXNDaGFuZ2VUaGVtZSA9IHRoaXMuYm9hcmQub3BlcmF0aW9ucy5maW5kKG9wID0+IG9wLnR5cGUgPT09ICdzZXRfdGhlbWUnKTtcbiAgICAgICAgaWYgKHZhbHVlLmVsZW1lbnQgIT09IHByZXZpb3VzLmVsZW1lbnQgfHwgaXNDaGFuZ2VUaGVtZSkge1xuICAgICAgICAgICAgY29uc3QgcHJldmlvdXNTZWxlY3RlZENlbGxzID0gZ2V0U2VsZWN0ZWRDZWxscyhwcmV2aW91cy5lbGVtZW50KTtcbiAgICAgICAgICAgIGlmIChwcmV2aW91c1NlbGVjdGVkQ2VsbHM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGNsZWFyU2VsZWN0ZWRDZWxscyhwcmV2aW91cy5lbGVtZW50KTtcbiAgICAgICAgICAgICAgICBzZXRTZWxlY3RlZENlbGxzKHZhbHVlLmVsZW1lbnQsIHByZXZpb3VzU2VsZWN0ZWRDZWxscyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnRhYmxlR2VuZXJhdG9yLnByb2Nlc3NEcmF3aW5nKHZhbHVlLmVsZW1lbnQsIHRoaXMuZ2V0RWxlbWVudEcoKSk7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZUdlbmVyYXRvci5wcm9jZXNzRHJhd2luZyh2YWx1ZS5lbGVtZW50LCBQbGFpdEJvYXJkLmdldEVsZW1lbnRBY3RpdmVIb3N0KHRoaXMuYm9hcmQpLCB7IHNlbGVjdGVkOiB0aGlzLnNlbGVjdGVkIH0pO1xuICAgICAgICAgICAgY29uc3QgcHJldmlvdXNUZXh0cyA9IHRoaXMuZ2V0RHJhd1NoYXBlVGV4dHMocHJldmlvdXMuZWxlbWVudC5jZWxscyk7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50VGV4dHMgPSB0aGlzLmdldERyYXdTaGFwZVRleHRzKHZhbHVlLmVsZW1lbnQuY2VsbHMpO1xuICAgICAgICAgICAgdGhpcy50ZXh0R2VuZXJhdG9yLnVwZGF0ZSh2YWx1ZS5lbGVtZW50LCBwcmV2aW91c1RleHRzLCBjdXJyZW50VGV4dHMsIHRoaXMuZ2V0RWxlbWVudEcoKSk7XG4gICAgICAgICAgICB0aGlzLnJvdGF0ZVZlcnRpY2FsVGV4dCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgaGFzU2FtZVNlbGVjdGVkID0gdmFsdWUuc2VsZWN0ZWQgPT09IHByZXZpb3VzLnNlbGVjdGVkO1xuICAgICAgICAgICAgY29uc3QgaGFzU2FtZUhhbmRsZVN0YXRlID0gdGhpcy5hY3RpdmVHZW5lcmF0b3Iub3B0aW9ucy5oYXNSZXNpemVIYW5kbGUoKSA9PT0gdGhpcy5hY3RpdmVHZW5lcmF0b3IuaGFzUmVzaXplSGFuZGxlO1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFNlbGVjdGVkQ2VsbHMgPSBnZXRTZWxlY3RlZENlbGxzKHZhbHVlLmVsZW1lbnQpO1xuICAgICAgICAgICAgaWYgKCFoYXNTYW1lU2VsZWN0ZWQgfHwgIWhhc1NhbWVIYW5kbGVTdGF0ZSB8fCBjdXJyZW50U2VsZWN0ZWRDZWxscz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5hY3RpdmVHZW5lcmF0b3IucHJvY2Vzc0RyYXdpbmcodmFsdWUuZWxlbWVudCwgUGxhaXRCb2FyZC5nZXRFbGVtZW50QWN0aXZlSG9zdCh0aGlzLmJvYXJkKSwge1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZDogdGhpcy5zZWxlY3RlZFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCF0aGlzLnNlbGVjdGVkKSB7XG4gICAgICAgICAgICAgICAgY2xlYXJTZWxlY3RlZENlbGxzKHZhbHVlLmVsZW1lbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoaXMubGluZUF1dG9Db21wbGV0ZUdlbmVyYXRvci5wcm9jZXNzRHJhd2luZyh0aGlzLmVsZW1lbnQsIFBsYWl0Qm9hcmQuZ2V0RWxlbWVudEFjdGl2ZUhvc3QodGhpcy5ib2FyZCksIHtcbiAgICAgICAgICAgIHNlbGVjdGVkOiB0aGlzLnNlbGVjdGVkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5hY3RpdmVHZW5lcmF0b3IuZGVzdHJveSgpO1xuICAgICAgICB0aGlzLnRhYmxlR2VuZXJhdG9yLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy50ZXh0R2VuZXJhdG9yLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5saW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yLmRlc3Ryb3koKTtcbiAgICB9XG59XG4iXX0=
|
|
157
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGFja2FnZXMvZHJhdy9zcmMvdGFibGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxVQUFVLEVBR1YsbUJBQW1CLEVBQ25CLGVBQWUsRUFDZixZQUFZLEVBQ1osZ0JBQWdCLEVBQ25CLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQXdCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RyxPQUFPLEVBQStDLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEcsT0FBTyxFQUFFLGFBQWEsRUFBc0IsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQix1QkFBdUIsRUFDdkIsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNuQixNQUFNLFNBQVMsQ0FBQztBQUNqQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDNUMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2hELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRWpHLE1BQU0sT0FBTyxjQUFxQyxTQUFRLG9CQUFtQztJQVN6RjtRQUNJLEtB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QyxDQUFDO1lBQ1AsQ0FBQztZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN0QyxDQUFDO1FBQ0wsQ0FBQztRQUNELElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3JHLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtTQUMxQixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsT0FBTztRQUNILEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMseUJBQXlCLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDN0MsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBQbGFpdEJvYXJkLFxuICAgIFBsYWl0UGx1Z2luRWxlbWVudENvbnRleHQsXG4gICAgT25Db250ZXh0Q2hhbmdlZCxcbiAgICBBQ1RJVkVfU1RST0tFX1dJRFRILFxuICAgIFJlY3RhbmdsZUNsaWVudCxcbiAgICBzZXRBbmdsZUZvckcsXG4gICAgZGVncmVlc1RvUmFkaWFuc1xufSBmcm9tICdAcGxhaXQvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmVHZW5lcmF0b3IsIENvbW1vbkVsZW1lbnRGbGF2b3VyLCBUZXh0TWFuYWdlQ2hhbmdlRGF0YSwgY2FuUmVzaXplIH0gZnJvbSAnQHBsYWl0L2NvbW1vbic7XG5pbXBvcnQgeyBQbGFpdFRhYmxlLCBQbGFpdFRhYmxlQm9hcmQsIFBsYWl0VGFibGVDZWxsLCBQbGFpdFRhYmxlRWxlbWVudCB9IGZyb20gJy4vaW50ZXJmYWNlcy90YWJsZSc7XG5pbXBvcnQgeyBnZXRUZXh0TWFuYWdlLCBQbGFpdERyYXdTaGFwZVRleHQsIFRleHRHZW5lcmF0b3IgfSBmcm9tICcuL2dlbmVyYXRvcnMvdGV4dC5nZW5lcmF0b3InO1xuaW1wb3J0IHsgVGFibGVHZW5lcmF0b3IgfSBmcm9tICcuL2dlbmVyYXRvcnMvdGFibGUuZ2VuZXJhdG9yJztcbmltcG9ydCB7IERyYXdUcmFuc2Zvcm1zIH0gZnJvbSAnLi90cmFuc2Zvcm1zJztcbmltcG9ydCB7IGdldENlbGxXaXRoUG9pbnRzLCBpc0NlbGxJbmNsdWRlVGV4dCB9IGZyb20gJy4vdXRpbHMvdGFibGUnO1xuaW1wb3J0IHtcbiAgICBjbGVhclNlbGVjdGVkQ2VsbHMsXG4gICAgZ2V0Q2VsbHNSZWN0YW5nbGUsXG4gICAgZ2V0U2VsZWN0ZWRDZWxscyxcbiAgICBnZXRTdHJva2VXaWR0aEJ5RWxlbWVudCxcbiAgICBtZW1vcml6ZUxhdGVzdFRleHQsXG4gICAgc2V0U2VsZWN0ZWRDZWxsc1xufSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IGdldEVuZ2luZSB9IGZyb20gJy4vZW5naW5lcyc7XG5pbXBvcnQgeyBUYWJsZVN5bWJvbHMgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgZ2V0SG9yaXpvbnRhbFRleHRSZWN0YW5nbGUgfSBmcm9tICcuL2VuZ2luZXMvdGFibGUvdGFibGUnO1xuaW1wb3J0IHsgU2hhcGVEZWZhdWx0U3BhY2UgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBcnJvd0xpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3IgfSBmcm9tICcuL2dlbmVyYXRvcnMvYXJyb3ctbGluZS1hdXRvLWNvbXBsZXRlLmdlbmVyYXRvcic7XG5cbmV4cG9ydCBjbGFzcyBUYWJsZUNvbXBvbmVudDxUIGV4dGVuZHMgUGxhaXRUYWJsZT4gZXh0ZW5kcyBDb21tb25FbGVtZW50Rmxhdm91cjxULCBQbGFpdEJvYXJkPiBpbXBsZW1lbnRzIE9uQ29udGV4dENoYW5nZWQ8VCwgUGxhaXRCb2FyZD4ge1xuICAgIGFjdGl2ZUdlbmVyYXRvciE6IEFjdGl2ZUdlbmVyYXRvcjxUPjtcblxuICAgIHRhYmxlR2VuZXJhdG9yITogVGFibGVHZW5lcmF0b3I8VD47XG5cbiAgICB0ZXh0R2VuZXJhdG9yITogVGV4dEdlbmVyYXRvcjxUPjtcblxuICAgIGxpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3IhOiBBcnJvd0xpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3I8UGxhaXRUYWJsZT47XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBpbml0aWFsaXplR2VuZXJhdG9yKCkge1xuICAgICAgICB0aGlzLmFjdGl2ZUdlbmVyYXRvciA9IG5ldyBBY3RpdmVHZW5lcmF0b3I8VD4odGhpcy5ib2FyZCwge1xuICAgICAgICAgICAgZ2V0U3Ryb2tlV2lkdGg6ICgpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gQUNUSVZFX1NUUk9LRV9XSURUSDtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBnZXRTdHJva2VPcGFjaXR5OiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZ2V0UmVjdGFuZ2xlOiAodmFsdWU6IFQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjZWxscyA9IGdldFNlbGVjdGVkQ2VsbHModmFsdWUpO1xuICAgICAgICAgICAgICAgIGlmIChjZWxscz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBnZXRDZWxsc1JlY3RhbmdsZSh0aGlzLmJvYXJkIGFzIFBsYWl0VGFibGVCb2FyZCwgdGhpcy5lbGVtZW50LCBjZWxscyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBSZWN0YW5nbGVDbGllbnQuZ2V0UmVjdGFuZ2xlQnlQb2ludHModmFsdWUucG9pbnRzISk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgaGFzUmVzaXplSGFuZGxlOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2VsbHMgPSBnZXRTZWxlY3RlZENlbGxzKHRoaXMuZWxlbWVudCk7XG4gICAgICAgICAgICAgICAgaWYgKGNlbGxzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gY2FuUmVzaXplKHRoaXMuYm9hcmQsIHRoaXMuZWxlbWVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnRhYmxlR2VuZXJhdG9yID0gbmV3IFRhYmxlR2VuZXJhdG9yPFQ+KHRoaXMuYm9hcmQpO1xuICAgICAgICB0aGlzLmluaXRpYWxpemVUZXh0TWFuYWdlKCk7XG4gICAgICAgIHRoaXMubGluZUF1dG9Db21wbGV0ZUdlbmVyYXRvciA9IG5ldyBBcnJvd0xpbmVBdXRvQ29tcGxldGVHZW5lcmF0b3IodGhpcy5ib2FyZCk7XG4gICAgICAgIHRoaXMuZ2V0UmVmKCkuYWRkR2VuZXJhdG9yKEFycm93TGluZUF1dG9Db21wbGV0ZUdlbmVyYXRvci5rZXksIHRoaXMubGluZUF1dG9Db21wbGV0ZUdlbmVyYXRvcik7XG4gICAgfVxuXG4gICAgaW5pdGlhbGl6ZSgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIuaW5pdGlhbGl6ZSgpO1xuICAgICAgICB0aGlzLmluaXRpYWxpemVHZW5lcmF0b3IoKTtcbiAgICAgICAgdGhpcy5kcmF3KCk7XG4gICAgfVxuXG4gICAgZHJhdygpIHtcbiAgICAgICAgdGhpcy50YWJsZUdlbmVyYXRvci5wcm9jZXNzRHJhd2luZyh0aGlzLmVsZW1lbnQsIHRoaXMuZ2V0RWxlbWVudEcoKSk7XG4gICAgICAgIHRoaXMudGV4dEdlbmVyYXRvci5kcmF3KHRoaXMuZ2V0RWxlbWVudEcoKSk7XG4gICAgICAgIHRoaXMucm90YXRlVmVydGljYWxUZXh0KCk7XG4gICAgICAgIHRoaXMubGluZUF1dG9Db21wbGV0ZUdlbmVyYXRvci5wcm9jZXNzRHJhd2luZyh0aGlzLmVsZW1lbnQsIFBsYWl0Qm9hcmQuZ2V0RWxlbWVudEFjdGl2ZUhvc3QodGhpcy5ib2FyZCksIHtcbiAgICAgICAgICAgIHNlbGVjdGVkOiB0aGlzLnNlbGVjdGVkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJvdGF0ZVZlcnRpY2FsVGV4dCgpIHtcbiAgICAgICAgY29uc3QgdGFibGUgPSAodGhpcy5ib2FyZCBhcyBQbGFpdFRhYmxlQm9hcmQpLmJ1aWxkVGFibGUodGhpcy5lbGVtZW50KTtcbiAgICAgICAgdGFibGUuY2VsbHMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgICAgIGlmIChQbGFpdFRhYmxlRWxlbWVudC5pc1ZlcnRpY2FsVGV4dChpdGVtKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRleHRNYW5hZ2UgPSBnZXRUZXh0TWFuYWdlKGl0ZW0uaWQpO1xuICAgICAgICAgICAgICAgIGlmICh0ZXh0TWFuYWdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGVuZ2luZSA9IGdldEVuZ2luZTxQbGFpdFRhYmxlPihUYWJsZVN5bWJvbHMudGFibGUpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZWN0YW5nbGUgPSBlbmdpbmUuZ2V0VGV4dFJlY3RhbmdsZSEodGhpcy5lbGVtZW50LCB7IGtleTogaXRlbS5pZCwgYm9hcmQ6IHRoaXMuYm9hcmQgfSk7XG4gICAgICAgICAgICAgICAgICAgIHRleHRNYW5hZ2UuZy5jbGFzc0xpc3QuYWRkKCd2ZXJ0aWNhbC1jZWxsLXRleHQnKTtcbiAgICAgICAgICAgICAgICAgICAgc2V0QW5nbGVGb3JHKHRleHRNYW5hZ2UuZywgUmVjdGFuZ2xlQ2xpZW50LmdldENlbnRlclBvaW50KHJlY3RhbmdsZSksIGRlZ3JlZXNUb1JhZGlhbnMoLTkwKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXREcmF3U2hhcGVUZXh0cyhjZWxsczogUGxhaXRUYWJsZUNlbGxbXSk6IFBsYWl0RHJhd1NoYXBlVGV4dFtdIHtcbiAgICAgICAgcmV0dXJuIGNlbGxzXG4gICAgICAgICAgICAuZmlsdGVyKGl0ZW0gPT4gaXNDZWxsSW5jbHVkZVRleHQoaXRlbSkpXG4gICAgICAgICAgICAubWFwKGl0ZW0gPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIGtleTogaXRlbS5pZCxcbiAgICAgICAgICAgICAgICAgICAgdGV4dDogaXRlbS50ZXh0ISxcbiAgICAgICAgICAgICAgICAgICAgdGV4dEhlaWdodDogaXRlbS50ZXh0SGVpZ2h0ISxcbiAgICAgICAgICAgICAgICAgICAgYm9hcmQ6IHRoaXMuYm9hcmRcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgaW5pdGlhbGl6ZVRleHRNYW5hZ2UoKSB7XG4gICAgICAgIGNvbnN0IHRleHRzID0gdGhpcy5nZXREcmF3U2hhcGVUZXh0cyh0aGlzLmVsZW1lbnQuY2VsbHMpO1xuICAgICAgICB0aGlzLnRleHRHZW5lcmF0b3IgPSBuZXcgVGV4dEdlbmVyYXRvcih0aGlzLmJvYXJkLCB0aGlzLmVsZW1lbnQsIHRleHRzLCB7XG4gICAgICAgICAgICBvbkNoYW5nZTogKHZhbHVlOiBQbGFpdFRhYmxlLCBkYXRhOiBUZXh0TWFuYWdlQ2hhbmdlRGF0YSwgdGV4dDogUGxhaXREcmF3U2hhcGVUZXh0KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgaGVpZ2h0ID0gZGF0YS5oZWlnaHQgLyB0aGlzLmJvYXJkLnZpZXdwb3J0Lnpvb207XG4gICAgICAgICAgICAgICAgY29uc3QgcGF0aCA9IFBsYWl0Qm9hcmQuZmluZFBhdGgodGhpcy5ib2FyZCwgdmFsdWUpO1xuICAgICAgICAgICAgICAgIGlmIChkYXRhLm5ld1RleHQpIHtcbiAgICAgICAgICAgICAgICAgICAgRHJhd1RyYW5zZm9ybXMuc2V0VGFibGVUZXh0KHRoaXMuYm9hcmQsIHBhdGgsIHRleHQua2V5LCBkYXRhLm5ld1RleHQsIGhlaWdodCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGRhdGEub3BlcmF0aW9ucyAmJiBtZW1vcml6ZUxhdGVzdFRleHQodmFsdWUsIGRhdGEub3BlcmF0aW9ucyk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZ2V0UmVuZGVyUmVjdGFuZ2xlOiAodmFsdWU6IFBsYWl0VGFibGUsIHRleHQ6IFBsYWl0RHJhd1NoYXBlVGV4dCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNlbGwgPSBnZXRDZWxsV2l0aFBvaW50cyh0aGlzLmJvYXJkLCB2YWx1ZSwgdGV4dC5rZXkpO1xuICAgICAgICAgICAgICAgIGlmIChQbGFpdFRhYmxlRWxlbWVudC5pc1ZlcnRpY2FsVGV4dChjZWxsKSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjZWxsUmVjdGFuZ2xlID0gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGNlbGwucG9pbnRzKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3Ryb2tlV2lkdGggPSBnZXRTdHJva2VXaWR0aEJ5RWxlbWVudChjZWxsKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgd2lkdGggPSBjZWxsLnRleHRIZWlnaHQgfHwgMDtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaGVpZ2h0ID0gY2VsbFJlY3RhbmdsZS5oZWlnaHQgLSBTaGFwZURlZmF1bHRTcGFjZS5yZWN0YW5nbGVBbmRUZXh0ICogMiAtIHN0cm9rZVdpZHRoICogMjtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBoZWlnaHQgPiAwID8gaGVpZ2h0IDogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHg6IGNlbGxSZWN0YW5nbGUueCArIFNoYXBlRGVmYXVsdFNwYWNlLnJlY3RhbmdsZUFuZFRleHQgKyBzdHJva2VXaWR0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHk6IGNlbGxSZWN0YW5nbGUueSArIChjZWxsUmVjdGFuZ2xlLmhlaWdodCAtIGhlaWdodCkgLyAyXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGdldEhvcml6b250YWxUZXh0UmVjdGFuZ2xlKGNlbGwpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMudGV4dEdlbmVyYXRvci5pbml0aWFsaXplKCk7XG4gICAgfVxuXG4gICAgb25Db250ZXh0Q2hhbmdlZCh2YWx1ZTogUGxhaXRQbHVnaW5FbGVtZW50Q29udGV4dDxULCBQbGFpdEJvYXJkPiwgcHJldmlvdXM6IFBsYWl0UGx1Z2luRWxlbWVudENvbnRleHQ8VCwgUGxhaXRCb2FyZD4pIHtcbiAgICAgICAgY29uc3QgaXNDaGFuZ2VUaGVtZSA9IHRoaXMuYm9hcmQub3BlcmF0aW9ucy5maW5kKG9wID0+IG9wLnR5cGUgPT09ICdzZXRfdGhlbWUnKTtcbiAgICAgICAgaWYgKHZhbHVlLmVsZW1lbnQgIT09IHByZXZpb3VzLmVsZW1lbnQgfHwgaXNDaGFuZ2VUaGVtZSkge1xuICAgICAgICAgICAgY29uc3QgcHJldmlvdXNTZWxlY3RlZENlbGxzID0gZ2V0U2VsZWN0ZWRDZWxscyhwcmV2aW91cy5lbGVtZW50KTtcbiAgICAgICAgICAgIGlmIChwcmV2aW91c1NlbGVjdGVkQ2VsbHM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGNsZWFyU2VsZWN0ZWRDZWxscyhwcmV2aW91cy5lbGVtZW50KTtcbiAgICAgICAgICAgICAgICBzZXRTZWxlY3RlZENlbGxzKHZhbHVlLmVsZW1lbnQsIHByZXZpb3VzU2VsZWN0ZWRDZWxscyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnRhYmxlR2VuZXJhdG9yLnByb2Nlc3NEcmF3aW5nKHZhbHVlLmVsZW1lbnQsIHRoaXMuZ2V0RWxlbWVudEcoKSk7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZUdlbmVyYXRvci5wcm9jZXNzRHJhd2luZyh2YWx1ZS5lbGVtZW50LCBQbGFpdEJvYXJkLmdldEVsZW1lbnRBY3RpdmVIb3N0KHRoaXMuYm9hcmQpLCB7IHNlbGVjdGVkOiB0aGlzLnNlbGVjdGVkIH0pO1xuICAgICAgICAgICAgY29uc3QgcHJldmlvdXNUZXh0cyA9IHRoaXMuZ2V0RHJhd1NoYXBlVGV4dHMocHJldmlvdXMuZWxlbWVudC5jZWxscyk7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50VGV4dHMgPSB0aGlzLmdldERyYXdTaGFwZVRleHRzKHZhbHVlLmVsZW1lbnQuY2VsbHMpO1xuICAgICAgICAgICAgdGhpcy50ZXh0R2VuZXJhdG9yLnVwZGF0ZSh2YWx1ZS5lbGVtZW50LCBwcmV2aW91c1RleHRzLCBjdXJyZW50VGV4dHMsIHRoaXMuZ2V0RWxlbWVudEcoKSk7XG4gICAgICAgICAgICB0aGlzLnJvdGF0ZVZlcnRpY2FsVGV4dCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgaGFzU2FtZVNlbGVjdGVkID0gdmFsdWUuc2VsZWN0ZWQgPT09IHByZXZpb3VzLnNlbGVjdGVkO1xuICAgICAgICAgICAgY29uc3QgaGFzU2FtZUhhbmRsZVN0YXRlID0gdGhpcy5hY3RpdmVHZW5lcmF0b3Iub3B0aW9ucy5oYXNSZXNpemVIYW5kbGUoKSA9PT0gdGhpcy5hY3RpdmVHZW5lcmF0b3IuaGFzUmVzaXplSGFuZGxlO1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFNlbGVjdGVkQ2VsbHMgPSBnZXRTZWxlY3RlZENlbGxzKHZhbHVlLmVsZW1lbnQpO1xuICAgICAgICAgICAgaWYgKCFoYXNTYW1lU2VsZWN0ZWQgfHwgIWhhc1NhbWVIYW5kbGVTdGF0ZSB8fCBjdXJyZW50U2VsZWN0ZWRDZWxscz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5hY3RpdmVHZW5lcmF0b3IucHJvY2Vzc0RyYXdpbmcodmFsdWUuZWxlbWVudCwgUGxhaXRCb2FyZC5nZXRFbGVtZW50QWN0aXZlSG9zdCh0aGlzLmJvYXJkKSwge1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZDogdGhpcy5zZWxlY3RlZFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCF0aGlzLnNlbGVjdGVkKSB7XG4gICAgICAgICAgICAgICAgY2xlYXJTZWxlY3RlZENlbGxzKHZhbHVlLmVsZW1lbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoaXMubGluZUF1dG9Db21wbGV0ZUdlbmVyYXRvci5wcm9jZXNzRHJhd2luZyh0aGlzLmVsZW1lbnQsIFBsYWl0Qm9hcmQuZ2V0RWxlbWVudEFjdGl2ZUhvc3QodGhpcy5ib2FyZCksIHtcbiAgICAgICAgICAgIHNlbGVjdGVkOiB0aGlzLnNlbGVjdGVkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5hY3RpdmVHZW5lcmF0b3IuZGVzdHJveSgpO1xuICAgICAgICB0aGlzLnRhYmxlR2VuZXJhdG9yLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy50ZXh0R2VuZXJhdG9yLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5saW5lQXV0b0NvbXBsZXRlR2VuZXJhdG9yLmRlc3Ryb3koKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { Path, PlaitBoard, Transforms, findElements } from '@plait/core';
|
|
2
|
+
import { ArrowLineHandleKey, MemorizeKey, PlaitArrowLine, PlaitDrawElement } from '../interfaces';
|
|
3
|
+
import { memorizeLatest } from '@plait/common';
|
|
4
|
+
import { getSelectedArrowLineElements } from '../utils/selected';
|
|
5
|
+
import { getHitConnection, getArrowLinePoints } from '../utils/arrow-line/arrow-line-basic';
|
|
6
|
+
export const resizeArrowLine = (board, options, path) => {
|
|
7
|
+
Transforms.setNode(board, options, path);
|
|
8
|
+
};
|
|
9
|
+
export const setArrowLineTexts = (board, element, texts) => {
|
|
10
|
+
const path = PlaitBoard.findPath(board, element);
|
|
11
|
+
Transforms.setNode(board, { texts }, path);
|
|
12
|
+
};
|
|
13
|
+
export const removeArrowLineText = (board, element, index) => {
|
|
14
|
+
const path = PlaitBoard.findPath(board, element);
|
|
15
|
+
const texts = element.texts?.length ? [...element.texts] : [];
|
|
16
|
+
const newTexts = [...texts];
|
|
17
|
+
newTexts.splice(index, 1);
|
|
18
|
+
Transforms.setNode(board, { texts: newTexts }, path);
|
|
19
|
+
};
|
|
20
|
+
export const setArrowLineMark = (board, handleKey, marker) => {
|
|
21
|
+
memorizeLatest(MemorizeKey.arrowLine, handleKey, marker);
|
|
22
|
+
const selectedElements = getSelectedArrowLineElements(board);
|
|
23
|
+
selectedElements.forEach((element) => {
|
|
24
|
+
const path = PlaitBoard.findPath(board, element);
|
|
25
|
+
let handle = handleKey === ArrowLineHandleKey.source ? element.source : element.target;
|
|
26
|
+
handle = { ...handle, marker };
|
|
27
|
+
Transforms.setNode(board, { [handleKey]: handle }, path);
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
export const setArrowLineShape = (board, newProperties) => {
|
|
31
|
+
const elements = getSelectedArrowLineElements(board);
|
|
32
|
+
elements.map(element => {
|
|
33
|
+
const _properties = { ...newProperties };
|
|
34
|
+
if (element.shape === newProperties.shape) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
const path = PlaitBoard.findPath(board, element);
|
|
38
|
+
Transforms.setNode(board, _properties, path);
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
export const collectArrowLineUpdatedRefsByGeometry = (board, geometry, refs) => {
|
|
42
|
+
const lines = findElements(board, {
|
|
43
|
+
match: (element) => {
|
|
44
|
+
if (PlaitDrawElement.isArrowLine(element)) {
|
|
45
|
+
return element.source.boundId === geometry.id || element.target.boundId === geometry.id;
|
|
46
|
+
}
|
|
47
|
+
return false;
|
|
48
|
+
},
|
|
49
|
+
recursion: element => true
|
|
50
|
+
});
|
|
51
|
+
if (lines.length) {
|
|
52
|
+
lines.forEach(line => {
|
|
53
|
+
const isSourceBound = line.source.boundId === geometry.id;
|
|
54
|
+
const handle = isSourceBound ? 'source' : 'target';
|
|
55
|
+
const object = { ...line[handle] };
|
|
56
|
+
const linePoints = getArrowLinePoints(board, line);
|
|
57
|
+
const point = isSourceBound ? linePoints[0] : linePoints[linePoints.length - 1];
|
|
58
|
+
object.connection = getHitConnection(board, point, geometry);
|
|
59
|
+
const path = PlaitBoard.findPath(board, line);
|
|
60
|
+
const index = refs.findIndex(obj => Path.equals(obj.path, path));
|
|
61
|
+
if (index === -1) {
|
|
62
|
+
refs.push({
|
|
63
|
+
property: {
|
|
64
|
+
[handle]: object
|
|
65
|
+
},
|
|
66
|
+
path
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
refs[index].property = { ...refs[index].property, [handle]: object };
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
export const connectArrowLineToGeometry = (board, lineElement, handle, geometryElement) => {
|
|
76
|
+
const linePoints = PlaitArrowLine.getPoints(board, lineElement);
|
|
77
|
+
const point = handle === ArrowLineHandleKey.source ? linePoints[0] : linePoints[linePoints.length - 1];
|
|
78
|
+
const connection = getHitConnection(board, point, geometryElement);
|
|
79
|
+
if (connection) {
|
|
80
|
+
let source = lineElement.source;
|
|
81
|
+
let target = lineElement.target;
|
|
82
|
+
if (handle === ArrowLineHandleKey.source) {
|
|
83
|
+
source = {
|
|
84
|
+
...source,
|
|
85
|
+
boundId: geometryElement.id,
|
|
86
|
+
connection
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
target = {
|
|
91
|
+
...target,
|
|
92
|
+
boundId: geometryElement.id,
|
|
93
|
+
connection
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
const path = PlaitBoard.findPath(board, lineElement);
|
|
97
|
+
resizeArrowLine(board, { source, target }, path);
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyb3ctbGluZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2RyYXcvc3JjL3RyYW5zZm9ybXMvYXJyb3ctbGluZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBa0MsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6RyxPQUFPLEVBRUgsa0JBQWtCLEVBR2xCLFdBQVcsRUFDWCxjQUFjLEVBQ2QsZ0JBQWdCLEVBRW5CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0MsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFNUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLENBQUMsS0FBaUIsRUFBRSxPQUFnQyxFQUFFLElBQVUsRUFBRSxFQUFFO0lBQy9GLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztBQUM3QyxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQWlCLEVBQUUsT0FBdUIsRUFBRSxLQUFzQixFQUFFLEVBQUU7SUFDcEcsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDakQsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUMvQyxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLEtBQWlCLEVBQUUsT0FBdUIsRUFBRSxLQUFhLEVBQUUsRUFBRTtJQUM3RixNQUFNLElB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O1FBQ0QsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDckQsZUFBZSxDQUFDLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyRCxDQUFDO0FBQ0wsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGF0aCwgUGxhaXRCb2FyZCwgUGxhaXRFbGVtZW50LCBQb2ludE9mUmVjdGFuZ2xlLCBUcmFuc2Zvcm1zLCBmaW5kRWxlbWVudHMgfSBmcm9tICdAcGxhaXQvY29yZSc7XG5pbXBvcnQge1xuICAgIEFycm93TGluZUhhbmRsZSxcbiAgICBBcnJvd0xpbmVIYW5kbGVLZXksXG4gICAgQXJyb3dMaW5lTWFya2VyVHlwZSxcbiAgICBBcnJvd0xpbmVUZXh0LFxuICAgIE1lbW9yaXplS2V5LFxuICAgIFBsYWl0QXJyb3dMaW5lLFxuICAgIFBsYWl0RHJhd0VsZW1lbnQsXG4gICAgUGxhaXRHZW9tZXRyeVxufSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IG1lbW9yaXplTGF0ZXN0IH0gZnJvbSAnQHBsYWl0L2NvbW1vbic7XG5pbXBvcnQgeyBnZXRTZWxlY3RlZEFycm93TGluZUVsZW1lbnRzIH0gZnJvbSAnLi4vdXRpbHMvc2VsZWN0ZWQnO1xuaW1wb3J0IHsgZ2V0SGl0Q29ubmVjdGlvbiwgZ2V0QXJyb3dMaW5lUG9pbnRzIH0gZnJvbSAnLi4vdXRpbHMvYXJyb3ctbGluZS9hcnJvdy1saW5lLWJhc2ljJztcblxuZXhwb3J0IGNvbnN0IHJlc2l6ZUFycm93TGluZSA9IChib2FyZDogUGxhaXRCb2FyZCwgb3B0aW9uczogUGFydGlhbDxQbGFpdEFycm93TGluZT4sIHBhdGg6IFBhdGgpID0+IHtcbiAgICBUcmFuc2Zvcm1zLnNldE5vZGUoYm9hcmQsIG9wdGlvbnMsIHBhdGgpO1xufTtcblxuZXhwb3J0IGNvbnN0IHNldEFycm93TGluZVRleHRzID0gKGJvYXJkOiBQbGFpdEJvYXJkLCBlbGVtZW50OiBQbGFpdEFycm93TGluZSwgdGV4dHM6IEFycm93TGluZVRleHRbXSkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBQbGFpdEJvYXJkLmZpbmRQYXRoKGJvYXJkLCBlbGVtZW50KTtcbiAgICBUcmFuc2Zvcm1zLnNldE5vZGUoYm9hcmQsIHsgdGV4dHMgfSwgcGF0aCk7XG59O1xuXG5leHBvcnQgY29uc3QgcmVtb3ZlQXJyb3dMaW5lVGV4dCA9IChib2FyZDogUGxhaXRCb2FyZCwgZWxlbWVudDogUGxhaXRBcnJvd0xpbmUsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICBjb25zdCBwYXRoID0gUGxhaXRCb2FyZC5maW5kUGF0aChib2FyZCwgZWxlbWVudCk7XG4gICAgY29uc3QgdGV4dHMgPSBlbGVtZW50LnRleHRzPy5sZW5ndGggPyBbLi4uZWxlbWVudC50ZXh0c10gOiBbXTtcbiAgICBjb25zdCBuZXdUZXh0cyA9IFsuLi50ZXh0c107XG4gICAgbmV3VGV4dHMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICBUcmFuc2Zvcm1zLnNldE5vZGUoYm9hcmQsIHsgdGV4dHM6IG5ld1RleHRzIH0sIHBhdGgpO1xufTtcblxuZXhwb3J0IGNvbnN0IHNldEFycm93TGluZU1hcmsgPSAoYm9hcmQ6IFBsYWl0Qm9hcmQsIGhhbmRsZUtleTogQXJyb3dMaW5lSGFuZGxlS2V5LCBtYXJrZXI6IEFycm93TGluZU1hcmtlclR5cGUpID0+IHtcbiAgICBtZW1vcml6ZUxhdGVzdChNZW1vcml6ZUtleS5hcnJvd0xpbmUsIGhhbmRsZUtleSwgbWFya2VyKTtcbiAgICBjb25zdCBzZWxlY3RlZEVsZW1lbnRzID0gZ2V0U2VsZWN0ZWRBcnJvd0xpbmVFbGVtZW50cyhib2FyZCk7XG4gICAgc2VsZWN0ZWRFbGVtZW50cy5mb3JFYWNoKChlbGVtZW50OiBQbGFpdEFycm93TGluZSkgPT4ge1xuICAgICAgICBjb25zdCBwYXRoID0gUGxhaXRCb2FyZC5maW5kUGF0aChib2FyZCwgZWxlbWVudCk7XG4gICAgICAgIGxldCBoYW5kbGUgPSBoYW5kbGVLZXkgPT09IEFycm93TGluZUhhbmRsZUtleS5zb3VyY2UgPyBlbGVtZW50LnNvdXJjZSA6IGVsZW1lbnQudGFyZ2V0O1xuICAgICAgICBoYW5kbGUgPSB7IC4uLmhhbmRsZSwgbWFya2VyIH07XG4gICAgICAgIFRyYW5zZm9ybXMuc2V0Tm9kZShib2FyZCwgeyBbaGFuZGxlS2V5XTogaGFuZGxlIH0sIHBhdGgpO1xuICAgIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IHNldEFycm93TGluZVNoYXBlID0gKGJvYXJkOiBQbGFpdEJvYXJkLCBuZXdQcm9wZXJ0aWVzOiBQYXJ0aWFsPFBsYWl0QXJyb3dMaW5lPikgPT4ge1xuICAgIGNvbnN0IGVsZW1lbnRzID0gZ2V0U2VsZWN0ZWRBcnJvd0xpbmVFbGVtZW50cyhib2FyZCk7XG4gICAgZWxlbWVudHMubWFwKGVsZW1lbnQgPT4ge1xuICAgICAgICBjb25zdCBfcHJvcGVydGllcyA9IHsgLi4ubmV3UHJvcGVydGllcyB9O1xuICAgICAgICBpZiAoZWxlbWVudC5zaGFwZSA9PT0gbmV3UHJvcGVydGllcy5zaGFwZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHBhdGggPSBQbGFpdEJvYXJkLmZpbmRQYXRoKGJvYXJkLCBlbGVtZW50KTtcbiAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlKGJvYXJkLCBfcHJvcGVydGllcywgcGF0aCk7XG4gICAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgY29sbGVjdEFycm93TGluZVVwZGF0ZWRSZWZzQnlHZW9tZXRyeSA9IChcbiAgICBib2FyZDogUGxhaXRCb2FyZCxcbiAgICBnZW9tZXRyeTogUGxhaXRHZW9tZXRyeSxcbiAgICByZWZzOiB7IHByb3BlcnR5OiBQYXJ0aWFsPFBsYWl0QXJyb3dMaW5lPjsgcGF0aDogUGF0aCB9W11cbikgPT4ge1xuICAgIGNvbnN0IGxpbmVzID0gZmluZEVsZW1lbnRzKGJvYXJkLCB7XG4gICAgICAgIG1hdGNoOiAoZWxlbWVudDogUGxhaXRFbGVtZW50KSA9PiB7XG4gICAgICAgICAgICBpZiAoUGxhaXREcmF3RWxlbWVudC5pc0Fycm93TGluZShlbGVtZW50KSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBlbGVtZW50LnNvdXJjZS5ib3VuZElkID09PSBnZW9tZXRyeS5pZCB8fCBlbGVtZW50LnRhcmdldC5ib3VuZElkID09PSBnZW9tZXRyeS5pZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVjdXJzaW9uOiBlbGVtZW50ID0+IHRydWVcbiAgICB9KSBhcyBQbGFpdEFycm93TGluZVtdO1xuICAgIGlmIChsaW5lcy5sZW5ndGgpIHtcbiAgICAgICAgbGluZXMuZm9yRWFjaChsaW5lID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzU291cmNlQm91bmQgPSBsaW5lLnNvdXJjZS5ib3VuZElkID09PSBnZW9tZXRyeS5pZDtcbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZSA9IGlzU291cmNlQm91bmQgPyAnc291cmNlJyA6ICd0YXJnZXQnO1xuICAgICAgICAgICAgY29uc3Qgb2JqZWN0ID0geyAuLi5saW5lW2hhbmRsZV0gfTtcbiAgICAgICAgICAgIGNvbnN0IGxpbmVQb2ludHMgPSBnZXRBcnJvd0xpbmVQb2ludHMoYm9hcmQsIGxpbmUpO1xuICAgICAgICAgICAgY29uc3QgcG9pbnQgPSBpc1NvdXJjZUJvdW5kID8gbGluZVBvaW50c1swXSA6IGxpbmVQb2ludHNbbGluZVBvaW50cy5sZW5ndGggLSAxXTtcbiAgICAgICAgICAgIG9iamVjdC5jb25uZWN0aW9uID0gZ2V0SGl0Q29ubmVjdGlvbihib2FyZCwgcG9pbnQsIGdlb21ldHJ5KTtcbiAgICAgICAgICAgIGNvbnN0IHBhdGggPSBQbGFpdEJvYXJkLmZpbmRQYXRoKGJvYXJkLCBsaW5lKTtcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gcmVmcy5maW5kSW5kZXgob2JqID0+IFBhdGguZXF1YWxzKG9iai5wYXRoLCBwYXRoKSk7XG4gICAgICAgICAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgcmVmcy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgcHJvcGVydHk6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFtoYW5kbGVdOiBvYmplY3RcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgcGF0aFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZWZzW2luZGV4XS5wcm9wZXJ0eSA9IHsgLi4ucmVmc1tpbmRleF0ucHJvcGVydHksIFtoYW5kbGVdOiBvYmplY3QgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGNvbm5lY3RBcnJvd0xpbmVUb0dlb21ldHJ5ID0gKFxuICAgIGJvYXJkOiBQbGFpdEJvYXJkLFxuICAgIGxpbmVFbGVtZW50OiBQbGFpdEFycm93TGluZSxcbiAgICBoYW5kbGU6IEFycm93TGluZUhhbmRsZUtleSxcbiAgICBnZW9tZXRyeUVsZW1lbnQ6IFBsYWl0R2VvbWV0cnlcbikgPT4ge1xuICAgIGNvbnN0IGxpbmVQb2ludHMgPSBQbGFpdEFycm93TGluZS5nZXRQb2ludHMoYm9hcmQsIGxpbmVFbGVtZW50KTtcbiAgICBjb25zdCBwb2ludCA9IGhhbmRsZSA9PT0gQXJyb3dMaW5lSGFuZGxlS2V5LnNvdXJjZSA/IGxpbmVQb2ludHNbMF0gOiBsaW5lUG9pbnRzW2xpbmVQb2ludHMubGVuZ3RoIC0gMV07XG4gICAgY29uc3QgY29ubmVjdGlvbjogUG9pbnRPZlJlY3RhbmdsZSA9IGdldEhpdENvbm5lY3Rpb24oYm9hcmQsIHBvaW50LCBnZW9tZXRyeUVsZW1lbnQpO1xuICAgIGlmIChjb25uZWN0aW9uKSB7XG4gICAgICAgIGxldCBzb3VyY2U6IEFycm93TGluZUhhbmRsZSA9IGxpbmVFbGVtZW50LnNvdXJjZTtcbiAgICAgICAgbGV0IHRhcmdldDogQXJyb3dMaW5lSGFuZGxlID0gbGluZUVsZW1lbnQudGFyZ2V0O1xuICAgICAgICBpZiAoaGFuZGxlID09PSBBcnJvd0xpbmVIYW5kbGVLZXkuc291cmNlKSB7XG4gICAgICAgICAgICBzb3VyY2UgPSB7XG4gICAgICAgICAgICAgICAgLi4uc291cmNlLFxuICAgICAgICAgICAgICAgIGJvdW5kSWQ6IGdlb21ldHJ5RWxlbWVudC5pZCxcbiAgICAgICAgICAgICAgICBjb25uZWN0aW9uXG4gICAgICAgICAgICB9O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGFyZ2V0ID0ge1xuICAgICAgICAgICAgICAgIC4uLnRhcmdldCxcbiAgICAgICAgICAgICAgICBib3VuZElkOiBnZW9tZXRyeUVsZW1lbnQuaWQsXG4gICAgICAgICAgICAgICAgY29ubmVjdGlvblxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwYXRoID0gUGxhaXRCb2FyZC5maW5kUGF0aChib2FyZCwgbGluZUVsZW1lbnQpO1xuICAgICAgICByZXNpemVBcnJvd0xpbmUoYm9hcmQsIHsgc291cmNlLCB0YXJnZXQgfSwgcGF0aCk7XG4gICAgfVxufTtcbiJdfQ==
|
|
@@ -3,7 +3,7 @@ import { PlaitDrawElement, BasicShapes } from '../interfaces';
|
|
|
3
3
|
import { createDefaultGeometry, createTextElement, getMemorizedLatestByPointer, getTextShapeProperty, insertElement } from '../utils';
|
|
4
4
|
import { getDirectionByVector, getPointByVectorComponent, normalizeShapePoints } from '@plait/common';
|
|
5
5
|
import { DrawTransforms } from '.';
|
|
6
|
-
import {
|
|
6
|
+
import { collectArrowLineUpdatedRefsByGeometry } from './arrow-line';
|
|
7
7
|
import { DefaultBasicShapeProperty, DefaultBasicShapePropertyMap, DefaultFlowchartPropertyMap, DefaultUMLPropertyMap } from '../constants';
|
|
8
8
|
export const insertGeometry = (board, points, shape) => {
|
|
9
9
|
const newElement = createDefaultGeometry(board, points, shape);
|
|
@@ -54,13 +54,13 @@ export const switchGeometryShape = (board, shape) => {
|
|
|
54
54
|
if (PlaitDrawElement.isGeometry(item) && !PlaitDrawElement.isText(item)) {
|
|
55
55
|
const path = PlaitBoard.findPath(board, item);
|
|
56
56
|
Transforms.setNode(board, { shape }, path);
|
|
57
|
-
|
|
57
|
+
collectArrowLineUpdatedRefsByGeometry(board, { ...item, shape }, refs);
|
|
58
58
|
}
|
|
59
59
|
});
|
|
60
60
|
if (refs.length) {
|
|
61
61
|
refs.forEach(ref => {
|
|
62
|
-
DrawTransforms.
|
|
62
|
+
DrawTransforms.resizeArrowLine(board, ref.property, ref.path);
|
|
63
63
|
});
|
|
64
64
|
}
|
|
65
65
|
};
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvbWV0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9kcmF3L3NyYy90cmFuc2Zvcm1zL2dlb21ldHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFlLFNBQVMsRUFBRSxtQkFBbUIsRUFBVSxTQUFTLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3RJLE9BQU8sRUFBRSxnQkFBZ0IsRUFBK0MsV0FBVyxFQUE4QixNQUFNLGVBQWUsQ0FBQztBQUN2SSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsaUJBQWlCLEVBQUUsMkJBQTJCLEVBQUUsb0JBQW9CLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXRJLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSx5QkFBeUIsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sR0FBRyxDQUFDO0FBQ25DLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNyRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsNEJBQTRCLEVBQUUsMkJBQTJCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFM0ksTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBaUIsRUFBRSxNQUFzQixFQUFFLEtBQXFCLEVBQUUsRUFBRTtJQUMvRixNQUFNLFVBQVUsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQy9ELGFBQWEsQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDakMsT0FBTyxVQUFVLENBQUM7QUFDdEIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsQ0FBQyxLQUFpQixFQUFFLEtBQVksRUFBRSxLQUFxQixFQUFFLE1BQWMs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QUFDLEtBQWlCLEVBQUUsS0FBcUIsRUFBRSxFQUFFO0lBQzVFLE1BQU0sZ0JBQWdCLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEQsTUFBTSxJQUFJLEdBQXdELEVBQUUsQ0FBQztJQUNyRSxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDNUIsSUFBSSxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUN0RSxNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztZQUM5QyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzNDLHFDQUFxQyxDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzNFLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUNILElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNmLGNBQWMsQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xFLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztBQUNMLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBsYWl0Qm9hcmQsIFRyYW5zZm9ybXMsIFBvaW50LCBQYXRoLCBQbGFpdE5vZGUsIGdldFNlbGVjdGVkRWxlbWVudHMsIFZlY3RvciwgRGlyZWN0aW9uLCBSZWN0YW5nbGVDbGllbnQgfSBmcm9tICdAcGxhaXQvY29yZSc7XG5pbXBvcnQgeyBQbGFpdERyYXdFbGVtZW50LCBHZW9tZXRyeVNoYXBlcywgUGxhaXRUZXh0LCBGbG93Y2hhcnRTeW1ib2xzLCBCYXNpY1NoYXBlcywgVU1MU3ltYm9scywgUGxhaXRBcnJvd0xpbmUgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGNyZWF0ZURlZmF1bHRHZW9tZXRyeSwgY3JlYXRlVGV4dEVsZW1lbnQsIGdldE1lbW9yaXplZExhdGVzdEJ5UG9pbnRlciwgZ2V0VGV4dFNoYXBlUHJvcGVydHksIGluc2VydEVsZW1lbnQgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgZ2V0RGlyZWN0aW9uQnlWZWN0b3IsIGdldFBvaW50QnlWZWN0b3JDb21wb25lbnQsIG5vcm1hbGl6ZVNoYXBlUG9pbnRzIH0gZnJvbSAnQHBsYWl0L2NvbW1vbic7XG5pbXBvcnQgeyBEcmF3VHJhbnNmb3JtcyB9IGZyb20gJy4nO1xuaW1wb3J0IHsgY29sbGVjdEFycm93TGluZVVwZGF0ZWRSZWZzQnlHZW9tZXRyeSB9IGZyb20gJy4vYXJyb3ctbGluZSc7XG5pbXBvcnQgeyBEZWZhdWx0QmFzaWNTaGFwZVByb3BlcnR5LCBEZWZhdWx0QmFzaWNTaGFwZVByb3BlcnR5TWFwLCBEZWZhdWx0Rmxvd2NoYXJ0UHJvcGVydHlNYXAsIERlZmF1bHRVTUxQcm9wZXJ0eU1hcCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBjb25zdCBpbnNlcnRHZW9tZXRyeSA9IChib2FyZDogUGxhaXRCb2FyZCwgcG9pbnRzOiBbUG9pbnQsIFBvaW50XSwgc2hhcGU6IEdlb21ldHJ5U2hhcGVzKSA9PiB7XG4gICAgY29uc3QgbmV3RWxlbWVudCA9IGNyZWF0ZURlZmF1bHRHZW9tZXRyeShib2FyZCwgcG9pbnRzLCBzaGFwZSk7XG4gICAgaW5zZXJ0RWxlbWVudChib2FyZCwgbmV3RWxlbWVudCk7XG4gICAgcmV0dXJuIG5ld0VsZW1lbnQ7XG59O1xuXG5leHBvcnQgY29uc3QgaW5zZXJ0R2VvbWV0cnlCeVZlY3RvciA9IChib2FyZDogUGxhaXRCb2FyZCwgcG9pbnQ6IFBvaW50LCBzaGFwZTogR2VvbWV0cnlTaGFwZXMsIHZlY3RvcjogVmVjdG9yKSA9PiB7XG4gICAgY29uc3Qgc2hhcGVQcm9wZXJ0eSA9XG4gICAgICAgIERlZmF1bHRGbG93Y2hhcnRQcm9wZXJ0eU1hcFtzaGFwZSBhcyBGbG93Y2hhcnRTeW1ib2xzXSB8fFxuICAgICAgICBEZWZhdWx0QmFzaWNTaGFwZVByb3BlcnR5TWFwW3NoYXBlIGFzIEJhc2ljU2hhcGVzXSB8fFxuICAgICAgICBEZWZhdWx0VU1MUHJvcGVydHlNYXBbc2hhcGUgYXMgVU1MU3ltYm9sc10gfHxcbiAgICAgICAgRGVmYXVsdEJhc2ljU2hhcGVQcm9wZXJ0eTtcbiAgICBjb25zdCBkaXJlY3Rpb24gPSBnZXREaXJlY3Rpb25CeVZlY3Rvcih2ZWN0b3IpO1xuICAgIGlmIChkaXJlY3Rpb24pIHtcbiAgICAgICAgbGV0IG9mZnNldCA9IDA7XG4gICAgICAgIGlmIChbRGlyZWN0aW9uLmxlZnQsIERpcmVjdGlvbi5yaWdodF0uaW5jbHVkZXMoZGlyZWN0aW9uKSkge1xuICAgICAgICAgICAgb2Zmc2V0ID0gLXNoYXBlUHJvcGVydHkud2lkdGggLyAyO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb2Zmc2V0ID0gLXNoYXBlUHJvcGVydHkuaGVpZ2h0IC8gMjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB2ZWN0b3JQb2ludCA9IGdldFBvaW50QnlWZWN0b3JDb21wb25lbnQocG9pbnQsIHZlY3Rvciwgb2Zmc2V0KTtcbiAgICAgICAgY29uc3QgcG9pbnRzID0gUmVjdGFuZ2xlQ2xpZW50LmdldFBvaW50cyhcbiAgICAgICAgICAgIFJlY3RhbmdsZUNsaWVudC5nZXRSZWN0YW5nbGVCeUNlbnRlclBvaW50KHZlY3RvclBvaW50LCBzaGFwZVByb3BlcnR5LndpZHRoLCBzaGFwZVByb3BlcnR5LmhlaWdodClcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIGluc2VydEdlb21ldHJ5KGJvYXJkLCBwb2ludHMsIHNoYXBlKTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG59O1xuXG5leHBvcnQgY29uc3QgaW5zZXJ0VGV4dCA9IChib2FyZDogUGxhaXRCb2FyZCwgcG9pbnQ6IFBvaW50LCB0ZXh0OiBzdHJpbmcgfCBFbGVtZW50KSA9PiB7XG4gICAgY29uc3QgbWVtb3JpemVkTGF0ZXN0ID0gZ2V0TWVtb3JpemVkTGF0ZXN0QnlQb2ludGVyKEJhc2ljU2hhcGVzLnRleHQpO1xuICAgIGNvbnN0IHByb3BlcnR5ID0gZ2V0VGV4dFNoYXBlUHJvcGVydHkoYm9hcmQsIHRleHQsIG1lbW9yaXplZExhdGVzdC50ZXh0UHJvcGVydGllc1snZm9udC1zaXplJ10pO1xuICAgIGNvbnN0IHBvaW50czogW1BvaW50LCBQb2ludF0gPSBbcG9pbnQsIFtwb2ludFswXSArIHByb3BlcnR5LndpZHRoLCBwb2ludFsxXSArIHByb3BlcnR5LmhlaWdodF1dO1xuICAgIGNvbnN0IG5ld0VsZW1lbnQgPSBjcmVhdGVUZXh0RWxlbWVudChib2FyZCwgcG9pbnRzLCB0ZXh0KTtcbiAgICBpbnNlcnRFbGVtZW50KGJvYXJkLCBuZXdFbGVtZW50KTtcbn07XG5cbmV4cG9ydCBjb25zdCByZXNpemVHZW9tZXRyeSA9IChib2FyZDogUGxhaXRCb2FyZCwgcG9pbnRzOiBbUG9pbnQsIFBvaW50XSwgdGV4dEhlaWdodDogbnVtYmVyLCBwYXRoOiBQYXRoKSA9PiB7XG4gICAgY29uc3Qgbm9ybWFsaXplUG9pbnRzID0gbm9ybWFsaXplU2hhcGVQb2ludHMocG9pbnRzKTtcbiAgICBjb25zdCBlbGVtZW50ID0gUGxhaXROb2RlLmdldChib2FyZCwgcGF0aCk7XG4gICAgY29uc3QgbmV3SGVpZ2h0ID0gdGV4dEhlaWdodCAvIGJvYXJkLnZpZXdwb3J0Lnpvb207XG4gICAgY29uc3QgbmV3UHJvcGVydGllcyA9IHsgcG9pbnRzOiBub3JtYWxpemVQb2ludHMsIHRleHRIZWlnaHQ6IG5ld0hlaWdodCB9O1xuICAgIGlmIChQbGFpdERyYXdFbGVtZW50LmlzVGV4dChlbGVtZW50KSAmJiBlbGVtZW50LmF1dG9TaXplKSB7XG4gICAgICAgIChuZXdQcm9wZXJ0aWVzIGFzIFBhcnRpYWw8UGxhaXRUZXh0PikuYXV0b1NpemUgPSBmYWxzZTtcbiAgICB9XG4gICAgVHJhbnNmb3Jtcy5zZXROb2RlKGJvYXJkLCBuZXdQcm9wZXJ0aWVzLCBwYXRoKTtcbn07XG5cbmV4cG9ydCBjb25zdCBzd2l0Y2hHZW9tZXRyeVNoYXBlID0gKGJvYXJkOiBQbGFpdEJvYXJkLCBzaGFwZTogR2VvbWV0cnlTaGFwZXMpID0+IHtcbiAgICBjb25zdCBzZWxlY3RlZEVsZW1lbnRzID0gZ2V0U2VsZWN0ZWRFbGVtZW50cyhib2FyZCk7XG4gICAgY29uc3QgcmVmczogeyBwcm9wZXJ0eTogUGFydGlhbDxQbGFpdEFycm93TGluZT47IHBhdGg6IFBhdGggfVtdID0gW107XG4gICAgc2VsZWN0ZWRFbGVtZW50cy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICBpZiAoUGxhaXREcmF3RWxlbWVudC5pc0dlb21ldHJ5KGl0ZW0pICYmICFQbGFpdERyYXdFbGVtZW50LmlzVGV4dChpdGVtKSkge1xuICAgICAgICAgICAgY29uc3QgcGF0aCA9IFBsYWl0Qm9hcmQuZmluZFBhdGgoYm9hcmQsIGl0ZW0pO1xuICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlKGJvYXJkLCB7IHNoYXBlIH0sIHBhdGgpO1xuICAgICAgICAgICAgY29sbGVjdEFycm93TGluZVVwZGF0ZWRSZWZzQnlHZW9tZXRyeShib2FyZCwgeyAuLi5pdGVtLCBzaGFwZSB9LCByZWZzKTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIGlmIChyZWZzLmxlbmd0aCkge1xuICAgICAgICByZWZzLmZvckVhY2gocmVmID0+IHtcbiAgICAgICAgICAgIERyYXdUcmFuc2Zvcm1zLnJlc2l6ZUFycm93TGluZShib2FyZCwgcmVmLnByb3BlcnR5LCByZWYucGF0aCk7XG4gICAgICAgIH0pO1xuICAgIH1cbn07XG4iXX0=
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { insertText, insertGeometry, resizeGeometry, switchGeometryShape, insertGeometryByVector } from './geometry';
|
|
2
2
|
import { setText, setTextSize } from './geometry-text';
|
|
3
3
|
import { insertImage } from './image';
|
|
4
|
-
import {
|
|
5
|
-
import { addSwimlaneColumn, addSwimlaneRow, removeSwimlaneColumn, removeSwimlaneRow,
|
|
4
|
+
import { connectArrowLineToGeometry, removeArrowLineText, resizeArrowLine, setArrowLineMark, setArrowLineShape, setArrowLineTexts } from './arrow-line';
|
|
5
|
+
import { addSwimlaneColumn, addSwimlaneRow, removeSwimlaneColumn, removeSwimlaneRow, updateSwimlaneCount } from './swimlane';
|
|
6
6
|
import { setDrawShapeText } from './multi-text-geometry-text';
|
|
7
7
|
import { setTableText } from './table-text';
|
|
8
|
+
import { setTableFill } from './table';
|
|
8
9
|
export const DrawTransforms = {
|
|
9
10
|
setText,
|
|
10
11
|
setDrawShapeText,
|
|
@@ -12,21 +13,21 @@ export const DrawTransforms = {
|
|
|
12
13
|
resizeGeometry,
|
|
13
14
|
insertText,
|
|
14
15
|
setTextSize,
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
resizeArrowLine,
|
|
17
|
+
setArrowLineTexts,
|
|
18
|
+
removeArrowLineText,
|
|
19
|
+
setArrowLineMark,
|
|
20
|
+
setArrowLineShape,
|
|
20
21
|
insertImage,
|
|
21
22
|
switchGeometryShape,
|
|
22
|
-
|
|
23
|
+
connectArrowLineToGeometry,
|
|
23
24
|
insertGeometryByVector,
|
|
24
25
|
setTableText,
|
|
25
26
|
addSwimlaneRow,
|
|
26
27
|
addSwimlaneColumn,
|
|
27
28
|
removeSwimlaneRow,
|
|
28
29
|
removeSwimlaneColumn,
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
updateSwimlaneCount,
|
|
31
|
+
setTableFill
|
|
31
32
|
};
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9kcmF3L3NyYy90cmFuc2Zvcm1zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNySCxPQUFPLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDdEMsT0FBTyxFQUNILDBCQUEwQixFQUMxQixtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ3BCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDN0gsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM1QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXZDLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJQUMxQixPQUFPO0lBQ1AsZ0JBQWdCO0lBQ2hCLGNBQWM7SUFDZCxjQUFjO0lBQ2QsVUFBVTtJQUNWLFdBQVc7SUFDWCxlQUFlO0lBQ2YsaUJBQWlCO0lBQ2pCLG1CQUFtQjtJQUNuQixnQkFBZ0I7SUFDaEIsaUJBQWlCO0lBQ2pCLFdBQVc7SUFDWCxtQkFBbUI7SUFDbkIsMEJBQTBCO0lBQzFCLHNCQUFzQjtJQUN0QixZQUFZO0lBQ1osY0FBYztJQUNkLGlCQUFpQjtJQUNqQixpQkFBaUI7SUFDakIsb0JBQW9CO0lBQ3BCLG1CQUFtQjtJQUNuQixZQUFZO0NBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluc2VydFRleHQsIGluc2VydEdlb21ldHJ5LCByZXNpemVHZW9tZXRyeSwgc3dpdGNoR2VvbWV0cnlTaGFwZSwgaW5zZXJ0R2VvbWV0cnlCeVZlY3RvciB9IGZyb20gJy4vZ2VvbWV0cnknO1xuaW1wb3J0IHsgc2V0VGV4dCwgc2V0VGV4dFNpemUgfSBmcm9tICcuL2dlb21ldHJ5LXRleHQnO1xuaW1wb3J0IHsgaW5zZXJ0SW1hZ2UgfSBmcm9tICcuL2ltYWdlJztcbmltcG9ydCB7XG4gICAgY29ubmVjdEFycm93TGluZVRvR2VvbWV0cnksXG4gICAgcmVtb3ZlQXJyb3dMaW5lVGV4dCxcbiAgICByZXNpemVBcnJvd0xpbmUsXG4gICAgc2V0QXJyb3dMaW5lTWFyayxcbiAgICBzZXRBcnJvd0xpbmVTaGFwZSxcbiAgICBzZXRBcnJvd0xpbmVUZXh0c1xufSBmcm9tICcuL2Fycm93LWxpbmUnO1xuaW1wb3J0IHsgYWRkU3dpbWxhbmVDb2x1bW4sIGFkZFN3aW1sYW5lUm93LCByZW1vdmVTd2ltbGFuZUNvbHVtbiwgcmVtb3ZlU3dpbWxhbmVSb3csIHVwZGF0ZVN3aW1sYW5lQ291bnQgfSBmcm9tICcuL3N3aW1sYW5lJztcbmltcG9ydCB7IHNldERyYXdTaGFwZVRleHQgfSBmcm9tICcuL211bHRpLXRleHQtZ2VvbWV0cnktdGV4dCc7XG5pbXBvcnQgeyBzZXRUYWJsZVRleHQgfSBmcm9tICcuL3RhYmxlLXRleHQnO1xuaW1wb3J0IHsgc2V0VGFibGVGaWxsIH0gZnJvbSAnLi90YWJsZSc7XG5cbmV4cG9ydCBjb25zdCBEcmF3VHJhbnNmb3JtcyA9IHtcbiAgICBzZXRUZXh0LFxuICAgIHNldERyYXdTaGFwZVRleHQsXG4gICAgaW5zZXJ0R2VvbWV0cnksXG4gICAgcmVzaXplR2VvbWV0cnksXG4gICAgaW5zZXJ0VGV4dCxcbiAgICBzZXRUZXh0U2l6ZSxcbiAgICByZXNpemVBcnJvd0xpbmUsXG4gICAgc2V0QXJyb3dMaW5lVGV4dHMsXG4gICAgcmVtb3ZlQXJyb3dMaW5lVGV4dCxcbiAgICBzZXRBcnJvd0xpbmVNYXJrLFxuICAgIHNldEFycm93TGluZVNoYXBlLFxuICAgIGluc2VydEltYWdlLFxuICAgIHN3aXRjaEdlb21ldHJ5U2hhcGUsXG4gICAgY29ubmVjdEFycm93TGluZVRvR2VvbWV0cnksXG4gICAgaW5zZXJ0R2VvbWV0cnlCeVZlY3RvcixcbiAgICBzZXRUYWJsZVRleHQsXG4gICAgYWRkU3dpbWxhbmVSb3csXG4gICAgYWRkU3dpbWxhbmVDb2x1bW4sXG4gICAgcmVtb3ZlU3dpbWxhbmVSb3csXG4gICAgcmVtb3ZlU3dpbWxhbmVDb2x1bW4sXG4gICAgdXBkYXRlU3dpbWxhbmVDb3VudCxcbiAgICBzZXRUYWJsZUZpbGxcbn07XG4iXX0=
|