ngx-vflow 0.13.0 → 0.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/esm2022/lib/vflow/components/background/background.component.mjs +7 -16
  2. package/esm2022/lib/vflow/components/default-node/default-node.component.mjs +18 -0
  3. package/esm2022/lib/vflow/components/defs/defs.component.mjs +1 -1
  4. package/esm2022/lib/vflow/components/node/node.component.mjs +8 -7
  5. package/esm2022/lib/vflow/components/vflow/vflow.component.mjs +11 -7
  6. package/esm2022/lib/vflow/math/edge-path/bezier-path.mjs +14 -17
  7. package/esm2022/lib/vflow/math/edge-path/straigh-path.mjs +2 -6
  8. package/esm2022/lib/vflow/models/handle.model.mjs +3 -2
  9. package/esm2022/lib/vflow/models/minimap.model.mjs +7 -0
  10. package/esm2022/lib/vflow/public-components/minimap/minimap.component.mjs +119 -0
  11. package/esm2022/lib/vflow/services/flow-entities.service.mjs +6 -5
  12. package/esm2022/lib/vflow/services/flow-settings.service.mjs +2 -1
  13. package/esm2022/lib/vflow/utils/transform-background.mjs +6 -0
  14. package/esm2022/lib/vflow/vflow.module.mjs +15 -7
  15. package/esm2022/public-api.mjs +2 -1
  16. package/fesm2022/ngx-vflow.mjs +189 -56
  17. package/fesm2022/ngx-vflow.mjs.map +1 -1
  18. package/lib/vflow/components/background/background.component.d.ts +3 -6
  19. package/lib/vflow/components/default-node/default-node.component.d.ts +6 -0
  20. package/lib/vflow/components/vflow/vflow.component.d.ts +2 -1
  21. package/lib/vflow/models/handle.model.d.ts +1 -0
  22. package/lib/vflow/models/minimap.model.d.ts +4 -0
  23. package/lib/vflow/public-components/minimap/minimap.component.d.ts +49 -0
  24. package/lib/vflow/services/flow-entities.service.d.ts +7 -5
  25. package/lib/vflow/services/flow-settings.service.d.ts +2 -0
  26. package/lib/vflow/utils/transform-background.d.ts +2 -0
  27. package/lib/vflow/vflow.module.d.ts +21 -19
  28. package/package.json +1 -3
  29. package/public-api.d.ts +1 -0
@@ -1,13 +1,10 @@
1
- import { path as d3Path } from 'd3-path';
2
1
  import { getPointOnLineByRatio } from '../point-on-line-by-ratio';
3
2
  export function bezierPath(source, target, sourcePosition, targetPosition, usingPoints = [false, false, false]) {
4
- const path = d3Path();
5
- path.moveTo(source.x, source.y);
6
3
  const distanceVector = { x: source.x - target.x, y: source.y - target.y };
7
- const firstControl = calcControlPoint(source, sourcePosition, distanceVector);
8
- const secondControl = calcControlPoint(target, targetPosition, distanceVector);
9
- path.bezierCurveTo(firstControl.x, firstControl.y, secondControl.x, secondControl.y, target.x, target.y);
10
- return getPathData(path, source, target, firstControl, secondControl, usingPoints);
4
+ const sourceControl = calcControlPoint(source, sourcePosition, distanceVector);
5
+ const targetControl = calcControlPoint(target, targetPosition, distanceVector);
6
+ const path = `M${source.x},${source.y} C${sourceControl.x},${sourceControl.y} ${targetControl.x},${targetControl.y} ${target.x},${target.y}`;
7
+ return getPathData(path, source, target, sourceControl, targetControl, usingPoints);
11
8
  }
12
9
  /**
13
10
  * Calculate control point based on provided point
@@ -47,20 +44,20 @@ function calcControlPoint(point, pointPosition, distanceVector) {
47
44
  y: point.y - factorPoint.y * controlOffset,
48
45
  };
49
46
  }
50
- function getPathData(path, source, target, firstControl, secondControl, usingPoints) {
47
+ function getPathData(path, source, target, sourceControl, targetControl, usingPoints) {
51
48
  const [start, center, end] = usingPoints;
52
49
  const nullPoint = { x: 0, y: 0 };
53
50
  return {
54
- path: path.toString(),
51
+ path,
55
52
  points: {
56
53
  start: start
57
- ? getPointOnBezier(source, target, firstControl, secondControl, 0.1)
54
+ ? getPointOnBezier(source, target, sourceControl, targetControl, 0.1)
58
55
  : nullPoint,
59
56
  center: center
60
- ? getPointOnBezier(source, target, firstControl, secondControl, 0.5)
57
+ ? getPointOnBezier(source, target, sourceControl, targetControl, 0.5)
61
58
  : nullPoint,
62
59
  end: end
63
- ? getPointOnBezier(source, target, firstControl, secondControl, 0.9)
60
+ ? getPointOnBezier(source, target, sourceControl, targetControl, 0.9)
64
61
  : nullPoint,
65
62
  },
66
63
  };
@@ -68,10 +65,10 @@ function getPathData(path, source, target, firstControl, secondControl, usingPoi
68
65
  /**
69
66
  * Get point on bezier curve by ratio
70
67
  */
71
- function getPointOnBezier(sourcePoint, targetPoint, controlPoint1, controlPoint2, ratio) {
72
- const fromSourceToFirstControl = getPointOnLineByRatio(sourcePoint, controlPoint1, ratio);
73
- const fromFirstControlToSecond = getPointOnLineByRatio(controlPoint1, controlPoint2, ratio);
74
- const fromSecondControlToTarget = getPointOnLineByRatio(controlPoint2, targetPoint, ratio);
68
+ function getPointOnBezier(sourcePoint, targetPoint, sourceControl, targetControl, ratio) {
69
+ const fromSourceToFirstControl = getPointOnLineByRatio(sourcePoint, sourceControl, ratio);
70
+ const fromFirstControlToSecond = getPointOnLineByRatio(sourceControl, targetControl, ratio);
71
+ const fromSecondControlToTarget = getPointOnLineByRatio(targetControl, targetPoint, ratio);
75
72
  return getPointOnLineByRatio(getPointOnLineByRatio(fromSourceToFirstControl, fromFirstControlToSecond, ratio), getPointOnLineByRatio(fromFirstControlToSecond, fromSecondControlToTarget, ratio), ratio);
76
73
  }
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmV6aWVyLXBhdGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvbWF0aC9lZGdlLXBhdGgvYmV6aWVyLXBhdGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFRLElBQUksSUFBSSxNQUFNLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFHL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFbEUsTUFBTSxVQUFVLFVBQVUsQ0FDeEIsTUFBYSxFQUNiLE1BQWEsRUFDYixjQUF3QixFQUN4QixjQUF3QixFQUN4QixjQUEyQixDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDO0lBRWhELE1BQU0sSUFBSSxHQUFHLE1BQU0sRUFBRSxDQUFDO0lBRXRCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFaEMsTUFBTSxjQUFjLEdBQUcsRUFBRSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUUxRSxNQUFNLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsY0FBYyxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQzlFLE1BQU0sYUFBYSxHQUFHLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFFL0UsSUFBSSxDQUFDLGFBQWEsQ0FDaEIsWUFBWSxDQUFDLENBQUMsRUFDZCxZQUFZLENBQUMsQ0FBQyxFQUNkLGFBQWEsQ0FBQyxDQUFDLEVBQ2YsYUFBYSxDQUFDLENBQUMsRUFDZixNQUFNLENBQUMsQ0FBQyxFQUNSLE1BQU0sQ0FBQyxDQUFD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QUFvQixFQUNwQixhQUFvQixFQUNwQixLQUFhO0lBRWIsTUFBTSx3QkFBd0IsR0FBVSxxQkFBcUIsQ0FDM0QsV0FBVyxFQUNYLGFBQWEsRUFDYixLQUFLLENBQ04sQ0FBQztJQUNGLE1BQU0sd0JBQXdCLEdBQVUscUJBQXFCLENBQzNELGFBQWEsRUFDYixhQUFhLEVBQ2IsS0FBSyxDQUNOLENBQUM7SUFDRixNQUFNLHlCQUF5QixHQUFVLHFCQUFxQixDQUM1RCxhQUFhLEVBQ2IsV0FBVyxFQUNYLEtBQUssQ0FDTixDQUFDO0lBRUYsT0FBTyxxQkFBcUIsQ0FDMUIscUJBQXFCLENBQUMsd0JBQXdCLEVBQUUsd0JBQXdCLEVBQUUsS0FBSyxDQUFDLEVBQ2hGLHFCQUFxQixDQUFDLHdCQUF3QixFQUFFLHlCQUF5QixFQUFFLEtBQUssQ0FBQyxFQUNqRixLQUFLLENBQ04sQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYXRoRGF0YSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvcGF0aC1kYXRhLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQb2ludCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvcG9pbnQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFBhdGgsIHBhdGggYXMgZDNQYXRoIH0gZnJvbSAnZDMtcGF0aCc7XG5pbXBvcnQgeyBVc2luZ1BvaW50cyB9IGZyb20gJy4uLy4uL3R5cGVzL3VzaW5nLXBvaW50cy50eXBlJztcbmltcG9ydCB7IFBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vdHlwZXMvcG9zaXRpb24udHlwZSc7XG5pbXBvcnQgeyBnZXRQb2ludE9uTGluZUJ5UmF0aW8gfSBmcm9tICcuLi9wb2ludC1vbi1saW5lLWJ5LXJhdGlvJztcblxuZXhwb3J0IGZ1bmN0aW9uIGJlemllclBhdGgoXG4gIHNvdXJjZTogUG9pbnQsXG4gIHRhcmdldDogUG9pbnQsXG4gIHNvdXJjZVBvc2l0aW9uOiBQb3NpdGlvbixcbiAgdGFyZ2V0UG9zaXRpb246IFBvc2l0aW9uLFxuICB1c2luZ1BvaW50czogVXNpbmdQb2ludHMgPSBbZmFsc2UsIGZhbHNlLCBmYWxzZV1cbik6IFBhdGhEYXRhIHtcbiAgY29uc3QgcGF0aCA9IGQzUGF0aCgpO1xuXG4gIHBhdGgubW92ZVRvKHNvdXJjZS54LCBzb3VyY2UueSk7XG5cbiAgY29uc3QgZGlzdGFuY2VWZWN0b3IgPSB7IHg6IHNvdXJjZS54IC0gdGFyZ2V0LngsIHk6IHNvdXJjZS55IC0gdGFyZ2V0LnkgfTtcblxuICBjb25zdCBmaXJzdENvbnRyb2wgPSBjYWxjQ29udHJvbFBvaW50KHNvdXJjZSwgc291cmNlUG9zaXRpb24sIGRpc3RhbmNlVmVjdG9yKTtcbiAgY29uc3Qgc2Vjb25kQ29udHJvbCA9IGNhbGNDb250cm9sUG9pbnQodGFyZ2V0LCB0YXJnZXRQb3NpdGlvbiwgZGlzdGFuY2VWZWN0b3IpO1xuXG4gIHBhdGguYmV6aWVyQ3VydmVUbyhcbiAgICBmaXJzdENvbnRyb2wueCxcbiAgICBmaXJzdENvbnRyb2wueSxcbiAgICBzZWNvbmRDb250cm9sLngsXG4gICAgc2Vjb25kQ29udHJvbC55LFxuICAgIHRhcmdldC54LFxuICAgIHRhcmdldC55XG4gICk7XG5cbiAgcmV0dXJuIGdldFBhdGhEYXRhKFxuICAgIHBhdGgsXG4gICAgc291cmNlLFxuICAgIHRhcmdldCxcbiAgICBmaXJzdENvbnRyb2wsXG4gICAgc2Vjb25kQ29udHJvbCxcbiAgICB1c2luZ1BvaW50c1xuICApO1xufVxuXG4vKipcbiAqIENhbGN1bGF0ZSBjb250cm9sIHBvaW50IGJhc2VkIG9uIHByb3ZpZGVkIHBvaW50XG4gKlxuICogQHBhcmFtIHBvaW50IHJlbGF0aXZlIHRoaXMgcG9pbnQgY29udHJvbCBwb2ludCBpcyBnb25uYSBiZSBjb21wdXRlZCAodGhlIHNvdXJjZSBvciB0aGUgdGFyZ2V0KVxuICogQHBhcmFtIHBvaW50UG9zaXRpb24gcG9zaXRpb24gb2Yge3BvaW50fSBvbiBibG9ja1xuICogQHBhcmFtIGRpc3RhbmNlVmVjdG9yIHRyYW5zbWl0cyB0aGUgZGlzdGFuY2UgYmV0d2VlbiB0aGUgc291cmNlIGFuZCB0aGUgdGFyZ2V0IGFzIHggYW5kIHkgY29vcmRpbmF0ZXNcbiAqL1xuXG5mdW5jdGlvbiBjYWxjQ29udHJvbFBvaW50KFxuICBwb2ludDogUG9pbnQsXG4gIHBvaW50UG9zaXRpb246IFBvc2l0aW9uLFxuICBkaXN0YW5jZVZlY3RvcjogUG9pbnRcbikge1xuICBjb25zdCBmYWN0b3JQb2ludCA9IHsgeDogMCwgeTogMCB9O1xuXG4gIHN3aXRjaCAocG9pbnRQb3NpdGlvbikge1xuICAgIGNhc2UgJ3RvcCc6XG4gICAgICBmYWN0b3JQb2ludC55ID0gMTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ2JvdHRvbSc6XG4gICAgICBmYWN0b3JQb2ludC55ID0gLTE7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdyaWdodCc6XG4gICAgICBmYWN0b3JQb2ludC54ID0gMTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgZmFjdG9yUG9pbnQueCA9IC0xO1xuICAgICAgYnJlYWs7XG4gIH1cblxuICAvLyBUT0RPOiBleHBsYWluIG5hbWVcbiAgY29uc3QgZnVsbERpc3RhbmNlVmVjdG9yID0ge1xuICAgIHg6IGRpc3RhbmNlVmVjdG9yLnggKiBNYXRoLmFicyhmYWN0b3JQb2ludC54KSxcbiAgICB5OiBkaXN0YW5jZVZlY3Rvci55ICogTWF0aC5hYnMoZmFjdG9yUG9pbnQueSksXG4gIH07XG5cbiAgLy8gVE9ETzogcHJvYmFibHkgbmVlZCB0byBtYWtlIHRoaXMgY29uZmlndXJhYmxlXG4gIGNvbnN0IGN1cnZhdHVyZSA9IDAuMjU7XG4gIC8vIHRoYW5rcyBjb2xsZWFndWVzIGZyb20gcmVhY3Qvc3ZlbHRlIHdvcmxkXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS94eWZsb3cveHlmbG93L2Jsb2IvZjAxMTc5MzliYWU5MzQ0NDdmYTdmMjMyMDgxZjkzNzE2OWVlMjNiNS9wYWNrYWdlcy9zeXN0ZW0vc3JjL3V0aWxzL2VkZ2VzL2Jlemllci1lZGdlLnRzI0w1NlxuICBjb25zdCBjb250cm9sT2Zmc2V0ID1cbiAgICBjdXJ2YXR1cmUgKiAyNSAqIE1hdGguc3FydChNYXRoLmFicyhmdWxsRGlzdGFuY2VWZWN0b3IueCArIGZ1bGxEaXN0YW5jZVZlY3Rvci55KSk7XG5cbiAgcmV0dXJuIHtcbiAgICB4OiBwb2ludC54ICsgZmFjdG9yUG9pbnQueCAqIGNvbnRyb2xPZmZzZXQsXG4gICAgeTogcG9pbnQueSAtIGZhY3RvclBvaW50LnkgKiBjb250cm9sT2Zmc2V0LFxuICB9O1xufVxuXG5mdW5jdGlvbiBnZXRQYXRoRGF0YShcbiAgcGF0aDogUGF0aCxcbiAgc291cmNlOiBQb2ludCxcbiAgdGFyZ2V0OiBQb2ludCxcbiAgZmlyc3RDb250cm9sOiBQb2ludCxcbiAgc2Vjb25kQ29udHJvbDogUG9pbnQsXG4gIHVzaW5nUG9pbnRzOiBVc2luZ1BvaW50c1xuKTogUGF0aERhdGEge1xuICBjb25zdCBbc3RhcnQsIGNlbnRlciwgZW5kXSA9IHVzaW5nUG9pbnRzO1xuXG4gIGNvbnN0IG51bGxQb2ludCA9IHsgeDogMCwgeTogMCB9O1xuXG4gIHJldHVybiB7XG4gICAgcGF0aDogcGF0aC50b1N0cmluZygpLFxuICAgIHBvaW50czoge1xuICAgICAgc3RhcnQ6IHN0YXJ0XG4gICAgICAgID8gZ2V0UG9pbnRPbkJlemllcihzb3VyY2UsIHRhcmdldCwgZmlyc3RDb250cm9sLCBzZWNvbmRDb250cm9sLCAwLjEpXG4gICAgICAgIDogbnVsbFBvaW50LFxuICAgICAgY2VudGVyOiBjZW50ZXJcbiAgICAgICAgPyBnZXRQb2ludE9uQmV6aWVyKHNvdXJjZSwgdGFyZ2V0LCBmaXJzdENvbnRyb2wsIHNlY29uZENvbnRyb2wsIDAuNSlcbiAgICAgICAgOiBudWxsUG9pbnQsXG4gICAgICBlbmQ6IGVuZFxuICAgICAgICA/IGdldFBvaW50T25CZXppZXIoc291cmNlLCB0YXJnZXQsIGZpcnN0Q29udHJvbCwgc2Vjb25kQ29udHJvbCwgMC45KVxuICAgICAgICA6IG51bGxQb2ludCxcbiAgICB9LFxuICB9O1xufVxuXG4vKipcbiAqIEdldCBwb2ludCBvbiBiZXppZXIgY3VydmUgYnkgcmF0aW9cbiAqL1xuZnVuY3Rpb24gZ2V0UG9pbnRPbkJlemllcihcbiAgc291cmNlUG9pbnQ6IFBvaW50LFxuICB0YXJnZXRQb2ludDogUG9pbnQsXG4gIGNvbnRyb2xQb2ludDE6IFBvaW50LFxuICBjb250cm9sUG9pbnQyOiBQb2ludCxcbiAgcmF0aW86IG51bWJlclxuKTogUG9pbnQge1xuICBjb25zdCBmcm9tU291cmNlVG9GaXJzdENvbnRyb2w6IFBvaW50ID0gZ2V0UG9pbnRPbkxpbmVCeVJhdGlvKFxuICAgIHNvdXJjZVBvaW50LFxuICAgIGNvbnRyb2xQb2ludDEsXG4gICAgcmF0aW9cbiAgKTtcbiAgY29uc3QgZnJvbUZpcnN0Q29udHJvbFRvU2Vjb25kOiBQb2ludCA9IGdldFBvaW50T25MaW5lQnlSYXRpbyhcbiAgICBjb250cm9sUG9pbnQxLFxuICAgIGNvbnRyb2xQb2ludDIsXG4gICAgcmF0aW9cbiAgKTtcbiAgY29uc3QgZnJvbVNlY29uZENvbnRyb2xUb1RhcmdldDogUG9pbnQgPSBnZXRQb2ludE9uTGluZUJ5UmF0aW8oXG4gICAgY29udHJvbFBvaW50MixcbiAgICB0YXJnZXRQb2ludCxcbiAgICByYXRpb1xuICApO1xuXG4gIHJldHVybiBnZXRQb2ludE9uTGluZUJ5UmF0aW8oXG4gICAgZ2V0UG9pbnRPbkxpbmVCeVJhdGlvKGZyb21Tb3VyY2VUb0ZpcnN0Q29udHJvbCwgZnJvbUZpcnN0Q29udHJvbFRvU2Vjb25kLCByYXRpbyksXG4gICAgZ2V0UG9pbnRPbkxpbmVCeVJhdGlvKGZyb21GaXJzdENvbnRyb2xUb1NlY29uZCwgZnJvbVNlY29uZENvbnRyb2xUb1RhcmdldCwgcmF0aW8pLFxuICAgIHJhdGlvXG4gICk7XG59XG4iXX0=
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmV6aWVyLXBhdGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvbWF0aC9lZGdlLXBhdGgvYmV6aWVyLXBhdGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFbEUsTUFBTSxVQUFVLFVBQVUsQ0FDeEIsTUFBYSxFQUNiLE1BQWEsRUFDYixjQUF3QixFQUN4QixjQUF3QixFQUN4QixjQUEyQixDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDO0lBRWhELE1BQU0sY0FBYyxHQUFHLEVBQUUsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFFMUUsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLGNBQWMsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUMvRSxNQUFNLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsY0FBYyxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBRS9FLE1BQU0sSUFBSSxHQUNSLElBQUksTUFBTSxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsQ0FBQyxLQUFLLGFBQWEsQ0FBQyxDQUFDLElBQUksYUFBYSxDQUFDLENBQUMsSUFBSSxhQUFhLENBQUMsQ0FBQyxJQUFJLGFBQWEsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUE7SUFFakksT0FBTyxXQUFXLENBQ2hCLElBQUksRUFDSixNQUFNLEVBQ04sTUFBTSxFQUNOLGFBQWEsRUFDYixhQUFhLEVBQ2IsV0FBVyxDQUNaLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7OztH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QUFhLEVBQ2IsS0FBSyxDQUNOLENBQUM7SUFDRixNQUFNLHlCQUF5QixHQUFVLHFCQUFxQixDQUM1RCxhQUFhLEVBQ2IsV0FBVyxFQUNYLEtBQUssQ0FDTixDQUFDO0lBRUYsT0FBTyxxQkFBcUIsQ0FDMUIscUJBQXFCLENBQUMsd0JBQXdCLEVBQUUsd0JBQXdCLEVBQUUsS0FBSyxDQUFDLEVBQ2hGLHFCQUFxQixDQUFDLHdCQUF3QixFQUFFLHlCQUF5QixFQUFFLEtBQUssQ0FBQyxFQUNqRixLQUFLLENBQ04sQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYXRoRGF0YSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvcGF0aC1kYXRhLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQb2ludCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvcG9pbnQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFVzaW5nUG9pbnRzIH0gZnJvbSAnLi4vLi4vdHlwZXMvdXNpbmctcG9pbnRzLnR5cGUnO1xuaW1wb3J0IHsgUG9zaXRpb24gfSBmcm9tICcuLi8uLi90eXBlcy9wb3NpdGlvbi50eXBlJztcbmltcG9ydCB7IGdldFBvaW50T25MaW5lQnlSYXRpbyB9IGZyb20gJy4uL3BvaW50LW9uLWxpbmUtYnktcmF0aW8nO1xuXG5leHBvcnQgZnVuY3Rpb24gYmV6aWVyUGF0aChcbiAgc291cmNlOiBQb2ludCxcbiAgdGFyZ2V0OiBQb2ludCxcbiAgc291cmNlUG9zaXRpb246IFBvc2l0aW9uLFxuICB0YXJnZXRQb3NpdGlvbjogUG9zaXRpb24sXG4gIHVzaW5nUG9pbnRzOiBVc2luZ1BvaW50cyA9IFtmYWxzZSwgZmFsc2UsIGZhbHNlXVxuKTogUGF0aERhdGEge1xuICBjb25zdCBkaXN0YW5jZVZlY3RvciA9IHsgeDogc291cmNlLnggLSB0YXJnZXQueCwgeTogc291cmNlLnkgLSB0YXJnZXQueSB9O1xuXG4gIGNvbnN0IHNvdXJjZUNvbnRyb2wgPSBjYWxjQ29udHJvbFBvaW50KHNvdXJjZSwgc291cmNlUG9zaXRpb24sIGRpc3RhbmNlVmVjdG9yKTtcbiAgY29uc3QgdGFyZ2V0Q29udHJvbCA9IGNhbGNDb250cm9sUG9pbnQodGFyZ2V0LCB0YXJnZXRQb3NpdGlvbiwgZGlzdGFuY2VWZWN0b3IpO1xuXG4gIGNvbnN0IHBhdGggPVxuICAgIGBNJHtzb3VyY2UueH0sJHtzb3VyY2UueX0gQyR7c291cmNlQ29udHJvbC54fSwke3NvdXJjZUNvbnRyb2wueX0gJHt0YXJnZXRDb250cm9sLnh9LCR7dGFyZ2V0Q29udHJvbC55fSAke3RhcmdldC54fSwke3RhcmdldC55fWBcblxuICByZXR1cm4gZ2V0UGF0aERhdGEoXG4gICAgcGF0aCxcbiAgICBzb3VyY2UsXG4gICAgdGFyZ2V0LFxuICAgIHNvdXJjZUNvbnRyb2wsXG4gICAgdGFyZ2V0Q29udHJvbCxcbiAgICB1c2luZ1BvaW50c1xuICApO1xufVxuXG4vKipcbiAqIENhbGN1bGF0ZSBjb250cm9sIHBvaW50IGJhc2VkIG9uIHByb3ZpZGVkIHBvaW50XG4gKlxuICogQHBhcmFtIHBvaW50IHJlbGF0aXZlIHRoaXMgcG9pbnQgY29udHJvbCBwb2ludCBpcyBnb25uYSBiZSBjb21wdXRlZCAodGhlIHNvdXJjZSBvciB0aGUgdGFyZ2V0KVxuICogQHBhcmFtIHBvaW50UG9zaXRpb24gcG9zaXRpb24gb2Yge3BvaW50fSBvbiBibG9ja1xuICogQHBhcmFtIGRpc3RhbmNlVmVjdG9yIHRyYW5zbWl0cyB0aGUgZGlzdGFuY2UgYmV0d2VlbiB0aGUgc291cmNlIGFuZCB0aGUgdGFyZ2V0IGFzIHggYW5kIHkgY29vcmRpbmF0ZXNcbiAqL1xuXG5mdW5jdGlvbiBjYWxjQ29udHJvbFBvaW50KFxuICBwb2ludDogUG9pbnQsXG4gIHBvaW50UG9zaXRpb246IFBvc2l0aW9uLFxuICBkaXN0YW5jZVZlY3RvcjogUG9pbnRcbikge1xuICBjb25zdCBmYWN0b3JQb2ludCA9IHsgeDogMCwgeTogMCB9O1xuXG4gIHN3aXRjaCAocG9pbnRQb3NpdGlvbikge1xuICAgIGNhc2UgJ3RvcCc6XG4gICAgICBmYWN0b3JQb2ludC55ID0gMTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ2JvdHRvbSc6XG4gICAgICBmYWN0b3JQb2ludC55ID0gLTE7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdyaWdodCc6XG4gICAgICBmYWN0b3JQb2ludC54ID0gMTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgZmFjdG9yUG9pbnQueCA9IC0xO1xuICAgICAgYnJlYWs7XG4gIH1cblxuICAvLyBUT0RPOiBleHBsYWluIG5hbWVcbiAgY29uc3QgZnVsbERpc3RhbmNlVmVjdG9yID0ge1xuICAgIHg6IGRpc3RhbmNlVmVjdG9yLnggKiBNYXRoLmFicyhmYWN0b3JQb2ludC54KSxcbiAgICB5OiBkaXN0YW5jZVZlY3Rvci55ICogTWF0aC5hYnMoZmFjdG9yUG9pbnQueSksXG4gIH07XG5cbiAgLy8gVE9ETzogcHJvYmFibHkgbmVlZCB0byBtYWtlIHRoaXMgY29uZmlndXJhYmxlXG4gIGNvbnN0IGN1cnZhdHVyZSA9IDAuMjU7XG4gIC8vIHRoYW5rcyBjb2xsZWFndWVzIGZyb20gcmVhY3Qvc3ZlbHRlIHdvcmxkXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS94eWZsb3cveHlmbG93L2Jsb2IvZjAxMTc5MzliYWU5MzQ0NDdmYTdmMjMyMDgxZjkzNzE2OWVlMjNiNS9wYWNrYWdlcy9zeXN0ZW0vc3JjL3V0aWxzL2VkZ2VzL2Jlemllci1lZGdlLnRzI0w1NlxuICBjb25zdCBjb250cm9sT2Zmc2V0ID1cbiAgICBjdXJ2YXR1cmUgKiAyNSAqIE1hdGguc3FydChNYXRoLmFicyhmdWxsRGlzdGFuY2VWZWN0b3IueCArIGZ1bGxEaXN0YW5jZVZlY3Rvci55KSk7XG5cbiAgcmV0dXJuIHtcbiAgICB4OiBwb2ludC54ICsgZmFjdG9yUG9pbnQueCAqIGNvbnRyb2xPZmZzZXQsXG4gICAgeTogcG9pbnQueSAtIGZhY3RvclBvaW50LnkgKiBjb250cm9sT2Zmc2V0LFxuICB9O1xufVxuXG5mdW5jdGlvbiBnZXRQYXRoRGF0YShcbiAgcGF0aDogc3RyaW5nLFxuICBzb3VyY2U6IFBvaW50LFxuICB0YXJnZXQ6IFBvaW50LFxuICBzb3VyY2VDb250cm9sOiBQb2ludCxcbiAgdGFyZ2V0Q29udHJvbDogUG9pbnQsXG4gIHVzaW5nUG9pbnRzOiBVc2luZ1BvaW50c1xuKTogUGF0aERhdGEge1xuICBjb25zdCBbc3RhcnQsIGNlbnRlciwgZW5kXSA9IHVzaW5nUG9pbnRzO1xuXG4gIGNvbnN0IG51bGxQb2ludCA9IHsgeDogMCwgeTogMCB9O1xuXG4gIHJldHVybiB7XG4gICAgcGF0aCxcbiAgICBwb2ludHM6IHtcbiAgICAgIHN0YXJ0OiBzdGFydFxuICAgICAgICA/IGdldFBvaW50T25CZXppZXIoc291cmNlLCB0YXJnZXQsIHNvdXJjZUNvbnRyb2wsIHRhcmdldENvbnRyb2wsIDAuMSlcbiAgICAgICAgOiBudWxsUG9pbnQsXG4gICAgICBjZW50ZXI6IGNlbnRlclxuICAgICAgICA/IGdldFBvaW50T25CZXppZXIoc291cmNlLCB0YXJnZXQsIHNvdXJjZUNvbnRyb2wsIHRhcmdldENvbnRyb2wsIDAuNSlcbiAgICAgICAgOiBudWxsUG9pbnQsXG4gICAgICBlbmQ6IGVuZFxuICAgICAgICA/IGdldFBvaW50T25CZXppZXIoc291cmNlLCB0YXJnZXQsIHNvdXJjZUNvbnRyb2wsIHRhcmdldENvbnRyb2wsIDAuOSlcbiAgICAgICAgOiBudWxsUG9pbnQsXG4gICAgfSxcbiAgfTtcbn1cblxuLyoqXG4gKiBHZXQgcG9pbnQgb24gYmV6aWVyIGN1cnZlIGJ5IHJhdGlvXG4gKi9cbmZ1bmN0aW9uIGdldFBvaW50T25CZXppZXIoXG4gIHNvdXJjZVBvaW50OiBQb2ludCxcbiAgdGFyZ2V0UG9pbnQ6IFBvaW50LFxuICBzb3VyY2VDb250cm9sOiBQb2ludCxcbiAgdGFyZ2V0Q29udHJvbDogUG9pbnQsXG4gIHJhdGlvOiBudW1iZXJcbik6IFBvaW50IHtcbiAgY29uc3QgZnJvbVNvdXJjZVRvRmlyc3RDb250cm9sOiBQb2ludCA9IGdldFBvaW50T25MaW5lQnlSYXRpbyhcbiAgICBzb3VyY2VQb2ludCxcbiAgICBzb3VyY2VDb250cm9sLFxuICAgIHJhdGlvXG4gICk7XG4gIGNvbnN0IGZyb21GaXJzdENvbnRyb2xUb1NlY29uZDogUG9pbnQgPSBnZXRQb2ludE9uTGluZUJ5UmF0aW8oXG4gICAgc291cmNlQ29udHJvbCxcbiAgICB0YXJnZXRDb250cm9sLFxuICAgIHJhdGlvXG4gICk7XG4gIGNvbnN0IGZyb21TZWNvbmRDb250cm9sVG9UYXJnZXQ6IFBvaW50ID0gZ2V0UG9pbnRPbkxpbmVCeVJhdGlvKFxuICAgIHRhcmdldENvbnRyb2wsXG4gICAgdGFyZ2V0UG9pbnQsXG4gICAgcmF0aW9cbiAgKTtcblxuICByZXR1cm4gZ2V0UG9pbnRPbkxpbmVCeVJhdGlvKFxuICAgIGdldFBvaW50T25MaW5lQnlSYXRpbyhmcm9tU291cmNlVG9GaXJzdENvbnRyb2wsIGZyb21GaXJzdENvbnRyb2xUb1NlY29uZCwgcmF0aW8pLFxuICAgIGdldFBvaW50T25MaW5lQnlSYXRpbyhmcm9tRmlyc3RDb250cm9sVG9TZWNvbmQsIGZyb21TZWNvbmRDb250cm9sVG9UYXJnZXQsIHJhdGlvKSxcbiAgICByYXRpb1xuICApO1xufVxuIl19
@@ -1,13 +1,9 @@
1
- import { path as d3Path } from 'd3-path';
2
1
  import { getPointOnLineByRatio } from "../point-on-line-by-ratio";
3
2
  export function straightPath(source, target, usingPoints = [false, false, false]) {
4
3
  const [start, center, end] = usingPoints;
5
4
  const nullPoint = { x: 0, y: 0 };
6
- const path = d3Path();
7
- path.moveTo(source.x, source.y);
8
- path.lineTo(target.x, target.y);
9
5
  return {
10
- path: path.toString(),
6
+ path: `M ${source.x},${source.y}L ${target.x},${target.y}`,
11
7
  points: {
12
8
  start: start ? getPointOnLineByRatio(source, target, .15) : nullPoint,
13
9
  center: center ? getPointOnLineByRatio(source, target, .50) : nullPoint,
@@ -15,4 +11,4 @@ export function straightPath(source, target, usingPoints = [false, false, false]
15
11
  }
16
12
  };
17
13
  }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyYWlnaC1wYXRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L21hdGgvZWRnZS1wYXRoL3N0cmFpZ2gtcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsSUFBSSxJQUFJLE1BQU0sRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUV4QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVsRSxNQUFNLFVBQVUsWUFBWSxDQUMxQixNQUFhLEVBQ2IsTUFBYSxFQUNiLGNBQTJCLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUM7SUFFaEQsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLEdBQUcsV0FBVyxDQUFBO0lBQ3hDLE1BQU0sU0FBUyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUE7SUFFaEMsTUFBTSxJQUFJLEdBQUcsTUFBTSxFQUFFLENBQUE7SUFFckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBRS9CLE9BQU87UUFDTCxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtRQUNyQixNQUFNLEVBQUU7WUFDTixLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQ3JFLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDdkUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMscUJBQXFCLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUNsRTtLQUNGLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGF0aERhdGEgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9wYXRoLWRhdGEuaW50ZXJmYWNlXCI7XG5pbXBvcnQgeyBQb2ludCB9IGZyb20gXCIuLi8uLi9pbnRlcmZhY2VzL3BvaW50LmludGVyZmFjZVwiO1xuaW1wb3J0IHsgcGF0aCBhcyBkM1BhdGggfSBmcm9tICdkMy1wYXRoJ1xuaW1wb3J0IHsgVXNpbmdQb2ludHMgfSBmcm9tIFwiLi4vLi4vdHlwZXMvdXNpbmctcG9pbnRzLnR5cGVcIjtcbmltcG9ydCB7IGdldFBvaW50T25MaW5lQnlSYXRpbyB9IGZyb20gXCIuLi9wb2ludC1vbi1saW5lLWJ5LXJhdGlvXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBzdHJhaWdodFBhdGgoXG4gIHNvdXJjZTogUG9pbnQsXG4gIHRhcmdldDogUG9pbnQsXG4gIHVzaW5nUG9pbnRzOiBVc2luZ1BvaW50cyA9IFtmYWxzZSwgZmFsc2UsIGZhbHNlXVxuKTogUGF0aERhdGEge1xuICBjb25zdCBbc3RhcnQsIGNlbnRlciwgZW5kXSA9IHVzaW5nUG9pbnRzXG4gIGNvbnN0IG51bGxQb2ludCA9IHsgeDogMCwgeTogMCB9XG5cbiAgY29uc3QgcGF0aCA9IGQzUGF0aCgpXG5cbiAgcGF0aC5tb3ZlVG8oc291cmNlLngsIHNvdXJjZS55KVxuICBwYXRoLmxpbmVUbyh0YXJnZXQueCwgdGFyZ2V0LnkpXG5cbiAgcmV0dXJuIHtcbiAgICBwYXRoOiBwYXRoLnRvU3RyaW5nKCksXG4gICAgcG9pbnRzOiB7XG4gICAgICBzdGFydDogc3RhcnQgPyBnZXRQb2ludE9uTGluZUJ5UmF0aW8oc291cmNlLCB0YXJnZXQsIC4xNSkgOiBudWxsUG9pbnQsXG4gICAgICBjZW50ZXI6IGNlbnRlciA/IGdldFBvaW50T25MaW5lQnlSYXRpbyhzb3VyY2UsIHRhcmdldCwgLjUwKSA6IG51bGxQb2ludCxcbiAgICAgIGVuZDogZW5kID8gZ2V0UG9pbnRPbkxpbmVCeVJhdGlvKHNvdXJjZSwgdGFyZ2V0LCAuODUpIDogbnVsbFBvaW50LFxuICAgIH1cbiAgfVxufVxuIl19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyYWlnaC1wYXRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L21hdGgvZWRnZS1wYXRoL3N0cmFpZ2gtcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVsRSxNQUFNLFVBQVUsWUFBWSxDQUMxQixNQUFhLEVBQ2IsTUFBYSxFQUNiLGNBQTJCLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUM7SUFFaEQsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLEdBQUcsV0FBVyxDQUFBO0lBQ3hDLE1BQU0sU0FBUyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUE7SUFFaEMsT0FBTztRQUNMLElBQUksRUFBRSxLQUFLLE1BQU0sQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUMsS0FBSyxNQUFNLENBQUMsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDLEVBQUU7UUFDMUQsTUFBTSxFQUFFO1lBQ04sS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMscUJBQXFCLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztZQUNyRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQ3ZFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7U0FDbEU7S0FDRixDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhdGhEYXRhIH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXMvcGF0aC1kYXRhLmludGVyZmFjZVwiO1xuaW1wb3J0IHsgUG9pbnQgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9wb2ludC5pbnRlcmZhY2VcIjtcbmltcG9ydCB7IFVzaW5nUG9pbnRzIH0gZnJvbSBcIi4uLy4uL3R5cGVzL3VzaW5nLXBvaW50cy50eXBlXCI7XG5pbXBvcnQgeyBnZXRQb2ludE9uTGluZUJ5UmF0aW8gfSBmcm9tIFwiLi4vcG9pbnQtb24tbGluZS1ieS1yYXRpb1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gc3RyYWlnaHRQYXRoKFxuICBzb3VyY2U6IFBvaW50LFxuICB0YXJnZXQ6IFBvaW50LFxuICB1c2luZ1BvaW50czogVXNpbmdQb2ludHMgPSBbZmFsc2UsIGZhbHNlLCBmYWxzZV1cbik6IFBhdGhEYXRhIHtcbiAgY29uc3QgW3N0YXJ0LCBjZW50ZXIsIGVuZF0gPSB1c2luZ1BvaW50c1xuICBjb25zdCBudWxsUG9pbnQgPSB7IHg6IDAsIHk6IDAgfVxuXG4gIHJldHVybiB7XG4gICAgcGF0aDogYE0gJHtzb3VyY2UueH0sJHtzb3VyY2UueX1MICR7dGFyZ2V0Lnh9LCR7dGFyZ2V0Lnl9YCxcbiAgICBwb2ludHM6IHtcbiAgICAgIHN0YXJ0OiBzdGFydCA/IGdldFBvaW50T25MaW5lQnlSYXRpbyhzb3VyY2UsIHRhcmdldCwgLjE1KSA6IG51bGxQb2ludCxcbiAgICAgIGNlbnRlcjogY2VudGVyID8gZ2V0UG9pbnRPbkxpbmVCeVJhdGlvKHNvdXJjZSwgdGFyZ2V0LCAuNTApIDogbnVsbFBvaW50LFxuICAgICAgZW5kOiBlbmQgPyBnZXRQb2ludE9uTGluZUJ5UmF0aW8oc291cmNlLCB0YXJnZXQsIC44NSkgOiBudWxsUG9pbnQsXG4gICAgfVxuICB9XG59XG4iXX0=
@@ -68,7 +68,8 @@ export class HandleModel {
68
68
  this.templateContext = {
69
69
  $implicit: {
70
70
  point: this.offset,
71
- state: this.state
71
+ state: this.state,
72
+ node: this.parentNode.node
72
73
  }
73
74
  };
74
75
  }
@@ -88,4 +89,4 @@ export class HandleModel {
88
89
  return { width: 0, height: 0 };
89
90
  }
90
91
  }
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L21vZGVscy9oYW5kbGUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHakQsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBSXRELE1BQU0sT0FBTyxXQUFXO0lBeUZ0QixZQUNTLFNBQXFCLEVBQ3JCLFVBQXFCO1FBRHJCLGNBQVMsR0FBVCxTQUFTLENBQVk7UUFDckIsZUFBVSxHQUFWLFVBQVUsQ0FBVztRQTFGZCxnQkFBVyxHQUFHLENBQUMsQ0FBQTtRQUUvQjs7O1dBR0c7UUFDSSxTQUFJLEdBQUcsTUFBTSxDQUFDO1lBQ25CLEtBQUssRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztZQUNsQyxNQUFNLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7U0FDcEMsQ0FBQyxDQUFBO1FBRUssV0FBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDNUIsUUFBUSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRTtnQkFDL0IsS0FBSyxNQUFNLENBQUMsQ0FBQyxPQUFPO29CQUNsQixDQUFDLEVBQUUsQ0FBQztvQkFDSixDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2lCQUM1RCxDQUFBO2dCQUNELEtBQUssT0FBTyxDQUFDLENBQUMsT0FBTztvQkFDbkIs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QUVELE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQTtJQUNoQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21wdXRlZCwgc2lnbmFsIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5vZGVIYW5kbGUgfSBmcm9tIFwiLi4vc2VydmljZXMvaGFuZGxlLnNlcnZpY2VcIjtcbmltcG9ydCB7IE5vZGVNb2RlbCB9IGZyb20gXCIuL25vZGUubW9kZWxcIjtcbmltcG9ydCB7IFN1YmplY3QsIG1hcCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gXCJAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcFwiO1xuXG5leHBvcnQgdHlwZSBIYW5kbGVTdGF0ZSA9ICd2YWxpZCcgfCAnaW52YWxpZCcgfCAnaWRsZSdcblxuZXhwb3J0IGNsYXNzIEhhbmRsZU1vZGVsIHtcbiAgcHVibGljIHJlYWRvbmx5IHN0cm9rZVdpZHRoID0gMlxuXG4gIC8qKlxuICAgKiBQcmUtY29tcHV0ZWQgc2l6ZSBmb3IgZGVmYXVsdCBoYW5kbGUsIGNoYW5nZWQgZHluYW1pY2FsbHlcbiAgICogZm9yIGN1c3RvbSBoYW5kbGVzXG4gICAqL1xuICBwdWJsaWMgc2l6ZSA9IHNpZ25hbCh7XG4gICAgd2lkdGg6IDEwICsgKDIgKiB0aGlzLnN0cm9rZVdpZHRoKSxcbiAgICBoZWlnaHQ6IDEwICsgKDIgKiB0aGlzLnN0cm9rZVdpZHRoKVxuICB9KVxuXG4gIHB1YmxpYyBvZmZzZXQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgc3dpdGNoICh0aGlzLnJhd0hhbmRsZS5wb3NpdGlvbikge1xuICAgICAgY2FzZSAnbGVmdCc6IHJldHVybiB7XG4gICAgICAgIHg6IDAsXG4gICAgICAgIHk6IHRoaXMucGFyZW50UG9zaXRpb24oKS55ICsgKHRoaXMucGFyZW50U2l6ZSgpLmhlaWdodCAvIDIpXG4gICAgICB9XG4gICAgICBjYXNlICdyaWdodCc6IHJldHVybiB7XG4gICAgICAgIHg6IHRoaXMucGFyZW50Tm9kZS5zaXplKCkud2lkdGgsXG4gICAgICAgIHk6IHRoaXMucGFyZW50UG9zaXRpb24oKS55ICsgKHRoaXMucGFyZW50U2l6ZSgpLmhlaWdodCAvIDIpXG4gICAgICB9XG4gICAgICBjYXNlICd0b3AnOiByZXR1cm4ge1xuICAgICAgICB4OiB0aGlzLnBhcmVudFBvc2l0aW9uKCkueCArICh0aGlzLnBhcmVudFNpemUoKS53aWR0aCAvIDIpLFxuICAgICAgICB5OiAwXG4gICAgICB9XG4gICAgICBjYXNlICdib3R0b20nOiByZXR1cm4ge1xuICAgICAgICB4OiB0aGlzLnBhcmVudFBvc2l0aW9uKCkueCArIHRoaXMucGFyZW50U2l6ZSgpLndpZHRoIC8gMixcbiAgICAgICAgeTogdGhpcy5wYXJlbnROb2RlLnNpemUoKS5oZWlnaHRcbiAgICAgIH1cbiAgICB9XG4gIH0pXG5cbiAgcHVibGljIHNpemVPZmZzZXQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgc3dpdGNoICh0aGlzLnJhd0hhbmRsZS5wb3NpdGlvbikge1xuICAgICAgY2FzZSAnbGVmdCc6IHJldHVybiB7IHg6IC0odGhpcy5zaXplKCkud2lkdGggLyAyKSwgeTogMCB9XG4gICAgICBjYXNlICdyaWdodCc6IHJldHVybiB7IHg6IHRoaXMuc2l6ZSgpLndpZHRoIC8gMiwgeTogMCB9XG4gICAgICBjYXNlICd0b3AnOiByZXR1cm4geyB4OiAwLCB5OiAtKHRoaXMuc2l6ZSgpLmhlaWdodCAvIDIpIH1cbiAgICAgIGNhc2UgJ2JvdHRvbSc6IHJldHVybiB7IHg6IDAsIHk6IHRoaXMuc2l6ZSgpLmhlaWdodCAvIDIgfVxuICAgIH1cbiAgfSlcblxuICBwdWJsaWMgcG9pbnRBYnNvbHV0ZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4ge1xuICAgICAgeDogdGhpcy5wYXJlbnROb2RlLmdsb2JhbFBvaW50KCkueCArIHRoaXMub2Zmc2V0KCkueCArIHRoaXMuc2l6ZU9mZnNldCgpLngsXG4gICAgICB5OiB0aGlzLnBhcmVudE5vZGUuZ2xvYmFsUG9pbnQoKS55ICsgdGhpcy5vZmZzZXQoKS55ICsgdGhpcy5zaXplT2Zmc2V0KCkueSxcbiAgICB9XG4gIH0pXG5cbiAgcHVibGljIHN0YXRlID0gc2lnbmFsPEhhbmRsZVN0YXRlPignaWRsZScpXG5cbiAgcHJpdmF0ZSB1cGRhdGVQYXJlbnRTaXplQW5kUG9zaXRpb24kID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gIHB1YmxpYyBwYXJlbnRTaXplID0gdG9TaWduYWwoXG4gICAgdGhpcy51cGRhdGVQYXJlbnRTaXplQW5kUG9zaXRpb24kLnBpcGUoXG4gICAgICBtYXAoKCkgPT4gdGhpcy5nZXRQYXJlbnRTaXplKCkpXG4gICAgKSxcbiAgICB7XG4gICAgICBpbml0aWFsVmFsdWU6IHsgd2lkdGg6IDAsIGhlaWdodDogMCB9XG4gICAgfVxuICApXG5cbiAgcHVibGljIHBhcmVudFBvc2l0aW9uID0gdG9TaWduYWwoXG4gICAgdGhpcy51cGRhdGVQYXJlbnRTaXplQW5kUG9zaXRpb24kLnBpcGUoXG4gICAgICBtYXAoKCkgPT4gKHtcbiAgICAgICAgeDogdGhpcy5wYXJlbnRSZWZlcmVuY2UgaW5zdGFuY2VvZiBIVE1MRWxlbWVudFxuICAgICAgICAgID8gdGhpcy5wYXJlbnRSZWZlcmVuY2Uub2Zmc2V0TGVmdFxuICAgICAgICAgIDogMCwgLy8gZm9yIG5vdyBqdXN0IDAgZm9yIGdyb3VwIG5vZGVzXG4gICAgICAgIHk6IHRoaXMucGFyZW50UmVmZXJlbmNlIGluc3RhbmNlb2YgSFRNTEVsZW1lbnRcbiAgICAgICAgICA/IHRoaXMucGFyZW50UmVmZXJlbmNlLm9mZnNldFRvcFxuICAgICAgICAgIDogMCAvLyBmb3Igbm93IGp1c3QgMCBmb3IgZ3JvdXAgbm9kZXNcbiAgICAgIH0pKVxuICAgICksXG4gICAge1xuICAgICAgaW5pdGlhbFZhbHVlOiB7IHg6IDAsIHk6IDAgfVxuICAgIH1cbiAgKVxuXG4gIHB1YmxpYyBwYXJlbnRSZWZlcmVuY2UgPSB0aGlzLnJhd0hhbmRsZS5wYXJlbnRSZWZlcmVuY2UhXG5cbiAgcHVibGljIHRlbXBsYXRlID0gdGhpcy5yYXdIYW5kbGUudGVtcGxhdGVcblxuICBwdWJsaWMgdGVtcGxhdGVDb250ZXh0ID0ge1xuICAgICRpbXBsaWNpdDoge1xuICAgICAgcG9pbnQ6IHRoaXMub2Zmc2V0LFxuICAgICAgc3RhdGU6IHRoaXMuc3RhdGVcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmF3SGFuZGxlOiBOb2RlSGFuZGxlLFxuICAgIHB1YmxpYyBwYXJlbnROb2RlOiBOb2RlTW9kZWxcbiAgKSB7IH1cblxuICBwdWJsaWMgdXBkYXRlUGFyZW50KCkge1xuICAgIHRoaXMudXBkYXRlUGFyZW50U2l6ZUFuZFBvc2l0aW9uJC5uZXh0KClcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UGFyZW50U2l6ZSgpOiB7IHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyIH0ge1xuICAgIGlmICh0aGlzLnBhcmVudFJlZmVyZW5jZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB3aWR0aDogdGhpcy5wYXJlbnRSZWZlcmVuY2Uub2Zmc2V0V2lkdGgsXG4gICAgICAgIGhlaWdodDogdGhpcy5wYXJlbnRSZWZlcmVuY2Uub2Zmc2V0SGVpZ2h0XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0aGlzLnBhcmVudFJlZmVyZW5jZSBpbnN0YW5jZW9mIFNWR0dyYXBoaWNzRWxlbWVudCkge1xuICAgICAgcmV0dXJuIHRoaXMucGFyZW50UmVmZXJlbmNlLmdldEJCb3goKVxuICAgIH1cblxuICAgIHJldHVybiB7IHdpZHRoOiAwLCBoZWlnaHQ6IDAgfVxuICB9XG59XG4iXX0=
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L21vZGVscy9oYW5kbGUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHakQsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBSXRELE1BQU0sT0FBTyxXQUFXO0lBMEZ0QixZQUNTLFNBQXFCLEVBQ3JCLFVBQXFCO1FBRHJCLGNBQVMsR0FBVCxTQUFTLENBQVk7UUFDckIsZUFBVSxHQUFWLFVBQVUsQ0FBVztRQTNGZCxnQkFBVyxHQUFHLENBQUMsQ0FBQTtRQUUvQjs7O1dBR0c7UUFDSSxTQUFJLEdBQUcsTUFBTSxDQUFDO1lBQ25CLEtBQUssRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztZQUNsQyxNQUFNLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7U0FDcEMsQ0FBQyxDQUFBO1FBRUssV0FBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDNUIsUUFBUSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRTtnQkFDL0IsS0FBSyxNQUFNLENBQUMsQ0FBQyxPQUFPO29CQUNsQixDQUFDLEVBQUUsQ0FBQztvQkFDSixDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2lCQUM1RCxDQUFBO2dCQUNELEtBQUssT0FBTyxDQUFDLENBQUMsT0FBTztvQkFDbkIs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SUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtTQUN0QztRQUVELE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQTtJQUNoQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21wdXRlZCwgc2lnbmFsIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5vZGVIYW5kbGUgfSBmcm9tIFwiLi4vc2VydmljZXMvaGFuZGxlLnNlcnZpY2VcIjtcbmltcG9ydCB7IE5vZGVNb2RlbCB9IGZyb20gXCIuL25vZGUubW9kZWxcIjtcbmltcG9ydCB7IFN1YmplY3QsIG1hcCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gXCJAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcFwiO1xuXG5leHBvcnQgdHlwZSBIYW5kbGVTdGF0ZSA9ICd2YWxpZCcgfCAnaW52YWxpZCcgfCAnaWRsZSdcblxuZXhwb3J0IGNsYXNzIEhhbmRsZU1vZGVsIHtcbiAgcHVibGljIHJlYWRvbmx5IHN0cm9rZVdpZHRoID0gMlxuXG4gIC8qKlxuICAgKiBQcmUtY29tcHV0ZWQgc2l6ZSBmb3IgZGVmYXVsdCBoYW5kbGUsIGNoYW5nZWQgZHluYW1pY2FsbHlcbiAgICogZm9yIGN1c3RvbSBoYW5kbGVzXG4gICAqL1xuICBwdWJsaWMgc2l6ZSA9IHNpZ25hbCh7XG4gICAgd2lkdGg6IDEwICsgKDIgKiB0aGlzLnN0cm9rZVdpZHRoKSxcbiAgICBoZWlnaHQ6IDEwICsgKDIgKiB0aGlzLnN0cm9rZVdpZHRoKVxuICB9KVxuXG4gIHB1YmxpYyBvZmZzZXQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgc3dpdGNoICh0aGlzLnJhd0hhbmRsZS5wb3NpdGlvbikge1xuICAgICAgY2FzZSAnbGVmdCc6IHJldHVybiB7XG4gICAgICAgIHg6IDAsXG4gICAgICAgIHk6IHRoaXMucGFyZW50UG9zaXRpb24oKS55ICsgKHRoaXMucGFyZW50U2l6ZSgpLmhlaWdodCAvIDIpXG4gICAgICB9XG4gICAgICBjYXNlICdyaWdodCc6IHJldHVybiB7XG4gICAgICAgIHg6IHRoaXMucGFyZW50Tm9kZS5zaXplKCkud2lkdGgsXG4gICAgICAgIHk6IHRoaXMucGFyZW50UG9zaXRpb24oKS55ICsgKHRoaXMucGFyZW50U2l6ZSgpLmhlaWdodCAvIDIpXG4gICAgICB9XG4gICAgICBjYXNlICd0b3AnOiByZXR1cm4ge1xuICAgICAgICB4OiB0aGlzLnBhcmVudFBvc2l0aW9uKCkueCArICh0aGlzLnBhcmVudFNpemUoKS53aWR0aCAvIDIpLFxuICAgICAgICB5OiAwXG4gICAgICB9XG4gICAgICBjYXNlICdib3R0b20nOiByZXR1cm4ge1xuICAgICAgICB4OiB0aGlzLnBhcmVudFBvc2l0aW9uKCkueCArIHRoaXMucGFyZW50U2l6ZSgpLndpZHRoIC8gMixcbiAgICAgICAgeTogdGhpcy5wYXJlbnROb2RlLnNpemUoKS5oZWlnaHRcbiAgICAgIH1cbiAgICB9XG4gIH0pXG5cbiAgcHVibGljIHNpemVPZmZzZXQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgc3dpdGNoICh0aGlzLnJhd0hhbmRsZS5wb3NpdGlvbikge1xuICAgICAgY2FzZSAnbGVmdCc6IHJldHVybiB7IHg6IC0odGhpcy5zaXplKCkud2lkdGggLyAyKSwgeTogMCB9XG4gICAgICBjYXNlICdyaWdodCc6IHJldHVybiB7IHg6IHRoaXMuc2l6ZSgpLndpZHRoIC8gMiwgeTogMCB9XG4gICAgICBjYXNlICd0b3AnOiByZXR1cm4geyB4OiAwLCB5OiAtKHRoaXMuc2l6ZSgpLmhlaWdodCAvIDIpIH1cbiAgICAgIGNhc2UgJ2JvdHRvbSc6IHJldHVybiB7IHg6IDAsIHk6IHRoaXMuc2l6ZSgpLmhlaWdodCAvIDIgfVxuICAgIH1cbiAgfSlcblxuICBwdWJsaWMgcG9pbnRBYnNvbHV0ZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4ge1xuICAgICAgeDogdGhpcy5wYXJlbnROb2RlLmdsb2JhbFBvaW50KCkueCArIHRoaXMub2Zmc2V0KCkueCArIHRoaXMuc2l6ZU9mZnNldCgpLngsXG4gICAgICB5OiB0aGlzLnBhcmVudE5vZGUuZ2xvYmFsUG9pbnQoKS55ICsgdGhpcy5vZmZzZXQoKS55ICsgdGhpcy5zaXplT2Zmc2V0KCkueSxcbiAgICB9XG4gIH0pXG5cbiAgcHVibGljIHN0YXRlID0gc2lnbmFsPEhhbmRsZVN0YXRlPignaWRsZScpXG5cbiAgcHJpdmF0ZSB1cGRhdGVQYXJlbnRTaXplQW5kUG9zaXRpb24kID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gIHB1YmxpYyBwYXJlbnRTaXplID0gdG9TaWduYWwoXG4gICAgdGhpcy51cGRhdGVQYXJlbnRTaXplQW5kUG9zaXRpb24kLnBpcGUoXG4gICAgICBtYXAoKCkgPT4gdGhpcy5nZXRQYXJlbnRTaXplKCkpXG4gICAgKSxcbiAgICB7XG4gICAgICBpbml0aWFsVmFsdWU6IHsgd2lkdGg6IDAsIGhlaWdodDogMCB9XG4gICAgfVxuICApXG5cbiAgcHVibGljIHBhcmVudFBvc2l0aW9uID0gdG9TaWduYWwoXG4gICAgdGhpcy51cGRhdGVQYXJlbnRTaXplQW5kUG9zaXRpb24kLnBpcGUoXG4gICAgICBtYXAoKCkgPT4gKHtcbiAgICAgICAgeDogdGhpcy5wYXJlbnRSZWZlcmVuY2UgaW5zdGFuY2VvZiBIVE1MRWxlbWVudFxuICAgICAgICAgID8gdGhpcy5wYXJlbnRSZWZlcmVuY2Uub2Zmc2V0TGVmdFxuICAgICAgICAgIDogMCwgLy8gZm9yIG5vdyBqdXN0IDAgZm9yIGdyb3VwIG5vZGVzXG4gICAgICAgIHk6IHRoaXMucGFyZW50UmVmZXJlbmNlIGluc3RhbmNlb2YgSFRNTEVsZW1lbnRcbiAgICAgICAgICA/IHRoaXMucGFyZW50UmVmZXJlbmNlLm9mZnNldFRvcFxuICAgICAgICAgIDogMCAvLyBmb3Igbm93IGp1c3QgMCBmb3IgZ3JvdXAgbm9kZXNcbiAgICAgIH0pKVxuICAgICksXG4gICAge1xuICAgICAgaW5pdGlhbFZhbHVlOiB7IHg6IDAsIHk6IDAgfVxuICAgIH1cbiAgKVxuXG4gIHB1YmxpYyBwYXJlbnRSZWZlcmVuY2UgPSB0aGlzLnJhd0hhbmRsZS5wYXJlbnRSZWZlcmVuY2UhXG5cbiAgcHVibGljIHRlbXBsYXRlID0gdGhpcy5yYXdIYW5kbGUudGVtcGxhdGVcblxuICBwdWJsaWMgdGVtcGxhdGVDb250ZXh0ID0ge1xuICAgICRpbXBsaWNpdDoge1xuICAgICAgcG9pbnQ6IHRoaXMub2Zmc2V0LFxuICAgICAgc3RhdGU6IHRoaXMuc3RhdGUsXG4gICAgICBub2RlOiB0aGlzLnBhcmVudE5vZGUubm9kZVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByYXdIYW5kbGU6IE5vZGVIYW5kbGUsXG4gICAgcHVibGljIHBhcmVudE5vZGU6IE5vZGVNb2RlbFxuICApIHsgfVxuXG4gIHB1YmxpYyB1cGRhdGVQYXJlbnQoKSB7XG4gICAgdGhpcy51cGRhdGVQYXJlbnRTaXplQW5kUG9zaXRpb24kLm5leHQoKVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRQYXJlbnRTaXplKCk6IHsgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIgfSB7XG4gICAgaWYgKHRoaXMucGFyZW50UmVmZXJlbmNlIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHdpZHRoOiB0aGlzLnBhcmVudFJlZmVyZW5jZS5vZmZzZXRXaWR0aCxcbiAgICAgICAgaGVpZ2h0OiB0aGlzLnBhcmVudFJlZmVyZW5jZS5vZmZzZXRIZWlnaHRcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMucGFyZW50UmVmZXJlbmNlIGluc3RhbmNlb2YgU1ZHR3JhcGhpY3NFbGVtZW50KSB7XG4gICAgICByZXR1cm4gdGhpcy5wYXJlbnRSZWZlcmVuY2UuZ2V0QkJveCgpXG4gICAgfVxuXG4gICAgcmV0dXJuIHsgd2lkdGg6IDAsIGhlaWdodDogMCB9XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,7 @@
1
+ import { signal } from "@angular/core";
2
+ export class MinimapModel {
3
+ constructor() {
4
+ this.template = signal(null);
5
+ }
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaW1hcC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9tb2RlbHMvbWluaW1hcC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBRXBELE1BQU0sT0FBTyxZQUFZO0lBQXpCO1FBQ1MsYUFBUSxHQUFHLE1BQU0sQ0FBOEIsSUFBSSxDQUFDLENBQUE7SUFDN0QsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2lnbmFsLCBUZW1wbGF0ZVJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmV4cG9ydCBjbGFzcyBNaW5pbWFwTW9kZWwge1xuICBwdWJsaWMgdGVtcGxhdGUgPSBzaWduYWw8VGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsPihudWxsKVxufVxuIl19
@@ -0,0 +1,119 @@
1
+ import { Component, computed, inject, Injector, Input, signal, ViewChild } from '@angular/core';
2
+ import { FlowEntitiesService } from '../../services/flow-entities.service';
3
+ import { MinimapModel } from '../../models/minimap.model';
4
+ import { FlowSettingsService } from '../../services/flow-settings.service';
5
+ import { getViewportForBounds } from '../../utils/viewport';
6
+ import { getNodesBounds } from '../../utils/nodes';
7
+ import { ViewportService } from '../../services/viewport.service';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@angular/common";
10
+ import * as i2 from "../../components/default-node/default-node.component";
11
+ export class MiniMapComponent {
12
+ constructor() {
13
+ this.entitiesService = inject(FlowEntitiesService);
14
+ this.flowSettingsService = inject(FlowSettingsService);
15
+ this.viewportService = inject(ViewportService);
16
+ this.injector = inject(Injector);
17
+ /**
18
+ * The color outside the viewport (invisible area)
19
+ */
20
+ this.maskColor = `rgba(215, 215, 215, 0.6)`;
21
+ /**
22
+ * The minimap stroke color
23
+ */
24
+ this.strokeColor = `rgb(200, 200, 200)`;
25
+ this.minimapOffset = 10;
26
+ this.minimapScale = computed(() => {
27
+ if (this.scaleOnHoverSignal()) {
28
+ return this.hovered() ? 0.4 : 0.2;
29
+ }
30
+ return 0.2;
31
+ });
32
+ this.viewportColor = computed(() => this.flowSettingsService.background().color ?? '#fff');
33
+ this.hovered = signal(false);
34
+ this.minimapPoint = computed(() => {
35
+ switch (this.minimapPosition()) {
36
+ case 'top-left':
37
+ return { x: this.minimapOffset, y: this.minimapOffset };
38
+ case 'top-right':
39
+ return {
40
+ x: this.flowSettingsService.computedFlowWidth() - this.minimapWidth() - this.minimapOffset,
41
+ y: this.minimapOffset
42
+ };
43
+ case 'bottom-left':
44
+ return {
45
+ x: this.minimapOffset,
46
+ y: this.flowSettingsService.computedFlowHeight() - this.minimapHeight() - this.minimapOffset
47
+ };
48
+ case 'bottom-right':
49
+ return {
50
+ x: this.flowSettingsService.computedFlowWidth() - this.minimapWidth() - this.minimapOffset,
51
+ y: this.flowSettingsService.computedFlowHeight() - this.minimapHeight() - this.minimapOffset
52
+ };
53
+ }
54
+ });
55
+ this.minimapWidth = computed(() => this.flowSettingsService.computedFlowWidth() * this.minimapScale());
56
+ this.minimapHeight = computed(() => this.flowSettingsService.computedFlowHeight() * this.minimapScale());
57
+ this.viewportTransform = computed(() => {
58
+ const viewport = this.viewportService.readableViewport();
59
+ let scale = 1 / viewport.zoom;
60
+ let x = -(viewport.x * this.minimapScale()) * scale;
61
+ x /= this.minimapScale();
62
+ let y = -(viewport.y * this.minimapScale()) * scale;
63
+ y /= this.minimapScale();
64
+ scale /= this.minimapScale();
65
+ return `translate(${x}, ${y}) scale(${scale})`;
66
+ });
67
+ this.boundsViewport = computed(() => {
68
+ const nodes = this.entitiesService.nodes();
69
+ return getViewportForBounds(getNodesBounds(nodes), this.flowSettingsService.computedFlowWidth(), this.flowSettingsService.computedFlowHeight(), -Infinity, 1.5, 0);
70
+ });
71
+ this.minimapTransform = computed(() => {
72
+ const vport = this.boundsViewport();
73
+ const x = vport.x * this.minimapScale();
74
+ const y = vport.y * this.minimapScale();
75
+ const scale = vport.zoom * this.minimapScale();
76
+ return `translate(${x} ${y}) scale(${scale})`;
77
+ });
78
+ this.minimapPosition = signal('bottom-right');
79
+ this.scaleOnHoverSignal = signal(false);
80
+ }
81
+ /**
82
+ * The corner of the flow where to render a mini-map
83
+ */
84
+ set position(value) {
85
+ this.minimapPosition.set(value);
86
+ }
87
+ /**
88
+ * Make a minimap bigger on hover
89
+ */
90
+ set scaleOnHover(value) {
91
+ this.scaleOnHoverSignal.set(value);
92
+ }
93
+ ngOnInit() {
94
+ const model = new MinimapModel();
95
+ model.template.set(this.minimap);
96
+ this.entitiesService.minimap.set(model);
97
+ }
98
+ trackNodes(idx, { node }) {
99
+ return node;
100
+ }
101
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MiniMapComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
102
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MiniMapComponent, selector: "mini-map", inputs: { position: "position", maskColor: "maskColor", strokeColor: "strokeColor", scaleOnHover: "scaleOnHover" }, viewQueries: [{ propertyName: "minimap", first: true, predicate: ["minimap"], descendants: true, static: true }], ngImport: i0, template: "<ng-template #minimap>\n <svg:rect\n [attr.x]=\"minimapPoint().x\"\n [attr.y]=\"minimapPoint().y\"\n [attr.width]=\"minimapWidth()\"\n [attr.height]=\"minimapHeight()\"\n [attr.stroke]=\"strokeColor\"\n fill=\"none\"\n />\n\n <svg:svg\n [attr.x]=\"minimapPoint().x\"\n [attr.y]=\"minimapPoint().y\"\n [attr.width]=\"minimapWidth()\"\n [attr.height]=\"minimapHeight()\"\n (mouseover)=\"hovered.set(true)\"\n (mouseleave)=\"hovered.set(false)\"\n >\n <svg:rect\n [attr.width]=\"minimapWidth()\"\n [attr.height]=\"minimapHeight()\"\n [attr.fill]=\"maskColor\"\n />\n\n <svg:g [attr.transform]=\"minimapTransform()\">\n <svg:rect\n [attr.fill]=\"viewportColor()\"\n [attr.transform]=\"viewportTransform()\"\n [attr.width]=\"minimapWidth()\"\n [attr.height]=\"minimapHeight()\"\n />\n\n <ng-container\n *ngFor=\"let model of entitiesService.nodes(); trackBy: trackNodes\"\n >\n <svg:foreignObject\n *ngIf=\"model.node.type === 'default' || model.node.type === 'html-template' || model.isComponentType\"\n [attr.transform]=\"model.pointTransform()\"\n [attr.width]=\"model.size().width\"\n [attr.height]=\"model.size().height\"\n >\n <default-node\n [selected]=\"model.selected()\"\n [style.width.px]=\"model.size().width\"\n [style.height.px]=\"model.size().height\"\n [style.max-width.px]=\"model.size().width\"\n [style.max-height.px]=\"model.size().height\"\n >\n <div [outerHTML]=\"model.text()\"></div>\n </default-node>\n </svg:foreignObject>\n\n <svg:rect\n *ngIf=\"model.node.type === 'default-group' || model.node.type === 'template-group'\"\n class=\"default-group-node\"\n rx=\"5\"\n ry=\"5\"\n [attr.transform]=\"model.pointTransform()\"\n [class.default-group-node_selected]=\"model.selected()\"\n [attr.width]=\"model.size().width\"\n [attr.height]=\"model.size().height\"\n [style.stroke]=\"model.color()\"\n [style.fill]=\"model.color()\"\n />\n\n </ng-container>\n </svg:g>\n </svg:svg>\n</ng-template>\n", styles: [".default-group-node{stroke-width:1.5px;fill-opacity:.05}.default-group-node_selected{stroke-width:2px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.DefaultNodeComponent, selector: "default-node", inputs: ["selected"] }] }); }
103
+ }
104
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MiniMapComponent, decorators: [{
105
+ type: Component,
106
+ args: [{ selector: 'mini-map', template: "<ng-template #minimap>\n <svg:rect\n [attr.x]=\"minimapPoint().x\"\n [attr.y]=\"minimapPoint().y\"\n [attr.width]=\"minimapWidth()\"\n [attr.height]=\"minimapHeight()\"\n [attr.stroke]=\"strokeColor\"\n fill=\"none\"\n />\n\n <svg:svg\n [attr.x]=\"minimapPoint().x\"\n [attr.y]=\"minimapPoint().y\"\n [attr.width]=\"minimapWidth()\"\n [attr.height]=\"minimapHeight()\"\n (mouseover)=\"hovered.set(true)\"\n (mouseleave)=\"hovered.set(false)\"\n >\n <svg:rect\n [attr.width]=\"minimapWidth()\"\n [attr.height]=\"minimapHeight()\"\n [attr.fill]=\"maskColor\"\n />\n\n <svg:g [attr.transform]=\"minimapTransform()\">\n <svg:rect\n [attr.fill]=\"viewportColor()\"\n [attr.transform]=\"viewportTransform()\"\n [attr.width]=\"minimapWidth()\"\n [attr.height]=\"minimapHeight()\"\n />\n\n <ng-container\n *ngFor=\"let model of entitiesService.nodes(); trackBy: trackNodes\"\n >\n <svg:foreignObject\n *ngIf=\"model.node.type === 'default' || model.node.type === 'html-template' || model.isComponentType\"\n [attr.transform]=\"model.pointTransform()\"\n [attr.width]=\"model.size().width\"\n [attr.height]=\"model.size().height\"\n >\n <default-node\n [selected]=\"model.selected()\"\n [style.width.px]=\"model.size().width\"\n [style.height.px]=\"model.size().height\"\n [style.max-width.px]=\"model.size().width\"\n [style.max-height.px]=\"model.size().height\"\n >\n <div [outerHTML]=\"model.text()\"></div>\n </default-node>\n </svg:foreignObject>\n\n <svg:rect\n *ngIf=\"model.node.type === 'default-group' || model.node.type === 'template-group'\"\n class=\"default-group-node\"\n rx=\"5\"\n ry=\"5\"\n [attr.transform]=\"model.pointTransform()\"\n [class.default-group-node_selected]=\"model.selected()\"\n [attr.width]=\"model.size().width\"\n [attr.height]=\"model.size().height\"\n [style.stroke]=\"model.color()\"\n [style.fill]=\"model.color()\"\n />\n\n </ng-container>\n </svg:g>\n </svg:svg>\n</ng-template>\n", styles: [".default-group-node{stroke-width:1.5px;fill-opacity:.05}.default-group-node_selected{stroke-width:2px}\n"] }]
107
+ }], propDecorators: { position: [{
108
+ type: Input
109
+ }], maskColor: [{
110
+ type: Input
111
+ }], strokeColor: [{
112
+ type: Input
113
+ }], scaleOnHover: [{
114
+ type: Input
115
+ }], minimap: [{
116
+ type: ViewChild,
117
+ args: ['minimap', { static: true }]
118
+ }] } });
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaW1hcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvcHVibGljLWNvbXBvbmVudHMvbWluaW1hcC9taW5pbWFwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9taW5pbWFwL21pbmltYXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNySCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFMUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7OztBQVNsRSxNQUFNLE9BQU8sZ0JBQWdCO0lBTDdCO1FBTVksb0JBQWUsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQTtRQUM3Qyx3QkFBbUIsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQTtRQUNqRCxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQTtRQUN6QyxhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBVXJDOztXQUVHO1FBRUksY0FBUyxH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eEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDakMsQ0FBQztJQWNEOztPQUVHO0lBQ0gsSUFDVyxZQUFZLENBQUMsS0FBYztRQUNwQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ3BDLENBQUM7SUE0Rk0sUUFBUTtRQUNiLE1BQU0sS0FBSyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUE7UUFDaEMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBRWhDLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUN6QyxDQUFDO0lBRVMsVUFBVSxDQUFDLEdBQVcsRUFBRSxFQUFFLElBQUksRUFBYTtRQUNuRCxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7K0dBcklVLGdCQUFnQjttR0FBaEIsZ0JBQWdCLHNSQ2hCN0IsNHZFQXFFQTs7NEZEckRhLGdCQUFnQjtrQkFMNUIsU0FBUzsrQkFDRSxVQUFVOzhCQWNULFFBQVE7c0JBRGxCLEtBQUs7Z0JBU0MsU0FBUztzQkFEZixLQUFLO2dCQU9DLFdBQVc7c0JBRGpCLEtBQUs7Z0JBT0ssWUFBWTtzQkFEdEIsS0FBSztnQkFNRSxPQUFPO3NCQURkLFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGluamVjdCwgSW5qZWN0b3IsIElucHV0LCBPbkluaXQsIHNpZ25hbCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmxvd0VudGl0aWVzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2Zsb3ctZW50aXRpZXMuc2VydmljZSc7XG5pbXBvcnQgeyBNaW5pbWFwTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvbWluaW1hcC5tb2RlbCc7XG5pbXBvcnQgeyBOb2RlTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvbm9kZS5tb2RlbCc7XG5pbXBvcnQgeyBGbG93U2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZmxvdy1zZXR0aW5ncy5zZXJ2aWNlJztcbmltcG9ydCB7IGdldFZpZXdwb3J0Rm9yQm91bmRzIH0gZnJvbSAnLi4vLi4vdXRpbHMvdmlld3BvcnQnO1xuaW1wb3J0IHsgZ2V0Tm9kZXNCb3VuZHMgfSBmcm9tICcuLi8uLi91dGlscy9ub2Rlcyc7XG5pbXBvcnQgeyBWaWV3cG9ydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy92aWV3cG9ydC5zZXJ2aWNlJztcblxuZXhwb3J0IHR5cGUgTWluaU1hcFBvc2l0aW9uID0gJ3RvcC1sZWZ0JyB8ICd0b3AtcmlnaHQnIHwgJ2JvdHRvbS1sZWZ0JyB8ICdib3R0b20tcmlnaHQnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21pbmktbWFwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21pbmltYXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFtgLi9taW5pbWFwLmNvbXBvbmVudC5zY3NzYF1cbn0pXG5leHBvcnQgY2xhc3MgTWluaU1hcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByb3RlY3RlZCBlbnRpdGllc1NlcnZpY2UgPSBpbmplY3QoRmxvd0VudGl0aWVzU2VydmljZSlcbiAgcHJvdGVjdGVkIGZsb3dTZXR0aW5nc1NlcnZpY2UgPSBpbmplY3QoRmxvd1NldHRpbmdzU2VydmljZSlcbiAgcHJvdGVjdGVkIHZpZXdwb3J0U2VydmljZSA9IGluamVjdChWaWV3cG9ydFNlcnZpY2UpXG4gIHByb3RlY3RlZCBpbmplY3RvciA9IGluamVjdChJbmplY3RvcilcblxuICAvKipcbiAgICogVGhlIGNvcm5lciBvZiB0aGUgZmxvdyB3aGVyZSB0byByZW5kZXIgYSBtaW5pLW1hcFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBwb3NpdGlvbih2YWx1ZTogTWluaU1hcFBvc2l0aW9uKSB7XG4gICAgdGhpcy5taW5pbWFwUG9zaXRpb24uc2V0KHZhbHVlKVxuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBjb2xvciBvdXRzaWRlIHRoZSB2aWV3cG9ydCAoaW52aXNpYmxlIGFyZWEpXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgbWFza0NvbG9yID0gYHJnYmEoMjE1LCAyMTUsIDIxNSwgMC42KWBcblxuICAvKipcbiAgICogVGhlIG1pbmltYXAgc3Ryb2tlIGNvbG9yXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc3Ryb2tlQ29sb3IgPSBgcmdiKDIwMCwgMjAwLCAyMDApYFxuXG4gIC8qKlxuICAgKiBNYWtlIGEgbWluaW1hcCBiaWdnZXIgb24gaG92ZXJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2NhbGVPbkhvdmVyKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5zY2FsZU9uSG92ZXJTaWduYWwuc2V0KHZhbHVlKVxuICB9XG5cbiAgQFZpZXdDaGlsZCgnbWluaW1hcCcsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHByaXZhdGUgbWluaW1hcCE6IFRlbXBsYXRlUmVmPHVua25vd24+XG5cbiAgcHJpdmF0ZSByZWFkb25seSBtaW5pbWFwT2Zmc2V0ID0gMTBcblxuICBwcml2YXRlIHJlYWRvbmx5IG1pbmltYXBTY2FsZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBpZiAodGhpcy5zY2FsZU9uSG92ZXJTaWduYWwoKSkge1xuICAgICAgcmV0dXJuIHRoaXMuaG92ZXJlZCgpID8gMC40IDogMC4yXG4gICAgfVxuXG4gICAgcmV0dXJuIDAuMlxuICB9KVxuXG4gIHByb3RlY3RlZCB2aWV3cG9ydENvbG9yID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5mbG93U2V0dGluZ3NTZXJ2aWNlLmJhY2tncm91bmQoKS5jb2xvciA/PyAnI2ZmZicpXG5cbiAgcHJvdGVjdGVkIGhvdmVyZWQgPSBzaWduYWwoZmFsc2UpXG5cbiAgcHJvdGVjdGVkIG1pbmltYXBQb2ludCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBzd2l0Y2ggKHRoaXMubWluaW1hcFBvc2l0aW9uKCkpIHtcbiAgICAgIGNhc2UgJ3RvcC1sZWZ0JzpcbiAgICAgICAgcmV0dXJuIHsgeDogdGhpcy5taW5pbWFwT2Zmc2V0LCB5OiB0aGlzLm1pbmltYXBPZmZzZXQgfVxuICAgICAgY2FzZSAndG9wLXJpZ2h0JzpcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB4OiB0aGlzLmZsb3dTZXR0aW5nc1NlcnZpY2UuY29tcHV0ZWRGbG93V2lkdGgoKSAtIHRoaXMubWluaW1hcFdpZHRoKCkgLSB0aGlzLm1pbmltYXBPZmZzZXQsXG4gICAgICAgICAgeTogdGhpcy5taW5pbWFwT2Zmc2V0XG4gICAgICAgIH1cbiAgICAgIGNhc2UgJ2JvdHRvbS1sZWZ0JzpcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB4OiB0aGlzLm1pbmltYXBPZmZzZXQsXG4gICAgICAgICAgeTogdGhpcy5mbG93U2V0dGluZ3NTZXJ2aWNlLmNvbXB1dGVkRmxvd0hlaWdodCgpIC0gdGhpcy5taW5pbWFwSGVpZ2h0KCkgLSB0aGlzLm1pbmltYXBPZmZzZXRcbiAgICAgICAgfVxuICAgICAgY2FzZSAnYm90dG9tLXJpZ2h0JzpcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB4OiB0aGlzLmZsb3dTZXR0aW5nc1NlcnZpY2UuY29tcHV0ZWRGbG93V2lkdGgoKSAtIHRoaXMubWluaW1hcFdpZHRoKCkgLSB0aGlzLm1pbmltYXBPZmZzZXQsXG4gICAgICAgICAgeTogdGhpcy5mbG93U2V0dGluZ3NTZXJ2aWNlLmNvbXB1dGVkRmxvd0hlaWdodCgpIC0gdGhpcy5taW5pbWFwSGVpZ2h0KCkgLSB0aGlzLm1pbmltYXBPZmZzZXRcbiAgICAgICAgfVxuICAgIH1cbiAgfSlcblxuICBwcm90ZWN0ZWQgbWluaW1hcFdpZHRoID0gY29tcHV0ZWQoKCkgPT5cbiAgICB0aGlzLmZsb3dTZXR0aW5nc1NlcnZpY2UuY29tcHV0ZWRGbG93V2lkdGgoKSAqIHRoaXMubWluaW1hcFNjYWxlKClcbiAgKVxuICBwcm90ZWN0ZWQgbWluaW1hcEhlaWdodCA9IGNvbXB1dGVkKCgpID0+XG4gICAgdGhpcy5mbG93U2V0dGluZ3NTZXJ2aWNlLmNvbXB1dGVkRmxvd0hlaWdodCgpICogdGhpcy5taW5pbWFwU2NhbGUoKVxuICApXG5cbiAgcHJvdGVjdGVkIHZpZXdwb3J0VHJhbnNmb3JtID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IHZpZXdwb3J0ID0gdGhpcy52aWV3cG9ydFNlcnZpY2UucmVhZGFibGVWaWV3cG9ydCgpO1xuICAgIGxldCBzY2FsZSA9IDEgLyB2aWV3cG9ydC56b29tXG5cbiAgICBsZXQgeCA9IC0odmlld3BvcnQueCAqIHRoaXMubWluaW1hcFNjYWxlKCkpICogc2NhbGVcbiAgICB4IC89IHRoaXMubWluaW1hcFNjYWxlKClcblxuICAgIGxldCB5ID0gLSh2aWV3cG9ydC55ICogdGhpcy5taW5pbWFwU2NhbGUoKSkgKiBzY2FsZVxuICAgIHkgLz0gdGhpcy5taW5pbWFwU2NhbGUoKVxuXG4gICAgc2NhbGUgLz0gdGhpcy5taW5pbWFwU2NhbGUoKVxuXG4gICAgcmV0dXJuIGB0cmFuc2xhdGUoJHt4fSwgJHt5fSkgc2NhbGUoJHtzY2FsZX0pYDtcbiAgfSk7XG5cblxuICBwcm90ZWN0ZWQgYm91bmRzVmlld3BvcnQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgbm9kZXMgPSB0aGlzLmVudGl0aWVzU2VydmljZS5ub2RlcygpXG5cbiAgICByZXR1cm4gZ2V0Vmlld3BvcnRGb3JCb3VuZHMoXG4gICAgICBnZXROb2Rlc0JvdW5kcyhub2RlcyksXG4gICAgICB0aGlzLmZsb3dTZXR0aW5nc1NlcnZpY2UuY29tcHV0ZWRGbG93V2lkdGgoKSxcbiAgICAgIHRoaXMuZmxvd1NldHRpbmdzU2VydmljZS5jb21wdXRlZEZsb3dIZWlnaHQoKSxcbiAgICAgIC1JbmZpbml0eSxcbiAgICAgIDEuNSxcbiAgICAgIDBcbiAgICApXG5cbiAgfSlcblxuICBwcm90ZWN0ZWQgbWluaW1hcFRyYW5zZm9ybSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCB2cG9ydCA9IHRoaXMuYm91bmRzVmlld3BvcnQoKVxuXG4gICAgY29uc3QgeCA9IHZwb3J0LnggKiB0aGlzLm1pbmltYXBTY2FsZSgpXG4gICAgY29uc3QgeSA9IHZwb3J0LnkgKiB0aGlzLm1pbmltYXBTY2FsZSgpXG4gICAgY29uc3Qgc2NhbGUgPSB2cG9ydC56b29tICogdGhpcy5taW5pbWFwU2NhbGUoKVxuXG4gICAgcmV0dXJuIGB0cmFuc2xhdGUoJHt4fSAke3l9KSBzY2FsZSgke3NjYWxlfSlgXG4gIH0pXG5cbiAgcHJpdmF0ZSBtaW5pbWFwUG9zaXRpb24gPSBzaWduYWw8TWluaU1hcFBvc2l0aW9uPignYm90dG9tLXJpZ2h0JylcblxuICBwcml2YXRlIHNjYWxlT25Ib3ZlclNpZ25hbCA9IHNpZ25hbChmYWxzZSlcblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgbW9kZWwgPSBuZXcgTWluaW1hcE1vZGVsKClcbiAgICBtb2RlbC50ZW1wbGF0ZS5zZXQodGhpcy5taW5pbWFwKVxuXG4gICAgdGhpcy5lbnRpdGllc1NlcnZpY2UubWluaW1hcC5zZXQobW9kZWwpXG4gIH1cblxuICBwcm90ZWN0ZWQgdHJhY2tOb2RlcyhpZHg6IG51bWJlciwgeyBub2RlIH06IE5vZGVNb2RlbCkge1xuICAgIHJldHVybiBub2RlXG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSAjbWluaW1hcD5cbiAgPHN2ZzpyZWN0XG4gICAgW2F0dHIueF09XCJtaW5pbWFwUG9pbnQoKS54XCJcbiAgICBbYXR0ci55XT1cIm1pbmltYXBQb2ludCgpLnlcIlxuICAgIFthdHRyLndpZHRoXT1cIm1pbmltYXBXaWR0aCgpXCJcbiAgICBbYXR0ci5oZWlnaHRdPVwibWluaW1hcEhlaWdodCgpXCJcbiAgICBbYXR0ci5zdHJva2VdPVwic3Ryb2tlQ29sb3JcIlxuICAgIGZpbGw9XCJub25lXCJcbiAgLz5cblxuICA8c3ZnOnN2Z1xuICAgIFthdHRyLnhdPVwibWluaW1hcFBvaW50KCkueFwiXG4gICAgW2F0dHIueV09XCJtaW5pbWFwUG9pbnQoKS55XCJcbiAgICBbYXR0ci53aWR0aF09XCJtaW5pbWFwV2lkdGgoKVwiXG4gICAgW2F0dHIuaGVpZ2h0XT1cIm1pbmltYXBIZWlnaHQoKVwiXG4gICAgKG1vdXNlb3Zlcik9XCJob3ZlcmVkLnNldCh0cnVlKVwiXG4gICAgKG1vdXNlbGVhdmUpPVwiaG92ZXJlZC5zZXQoZmFsc2UpXCJcbiAgPlxuICAgIDxzdmc6cmVjdFxuICAgICAgW2F0dHIud2lkdGhdPVwibWluaW1hcFdpZHRoKClcIlxuICAgICAgW2F0dHIuaGVpZ2h0XT1cIm1pbmltYXBIZWlnaHQoKVwiXG4gICAgICBbYXR0ci5maWxsXT1cIm1hc2tDb2xvclwiXG4gICAgLz5cblxuICAgIDxzdmc6ZyBbYXR0ci50cmFuc2Zvcm1dPVwibWluaW1hcFRyYW5zZm9ybSgpXCI+XG4gICAgICA8c3ZnOnJlY3RcbiAgICAgICAgW2F0dHIuZmlsbF09XCJ2aWV3cG9ydENvbG9yKClcIlxuICAgICAgICBbYXR0ci50cmFuc2Zvcm1dPVwidmlld3BvcnRUcmFuc2Zvcm0oKVwiXG4gICAgICAgIFthdHRyLndpZHRoXT1cIm1pbmltYXBXaWR0aCgpXCJcbiAgICAgICAgW2F0dHIuaGVpZ2h0XT1cIm1pbmltYXBIZWlnaHQoKVwiXG4gICAgICAvPlxuXG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ0Zvcj1cImxldCBtb2RlbCBvZiBlbnRpdGllc1NlcnZpY2Uubm9kZXMoKTsgdHJhY2tCeTogdHJhY2tOb2Rlc1wiXG4gICAgICA+XG4gICAgICAgIDxzdmc6Zm9yZWlnbk9iamVjdFxuICAgICAgICAgICpuZ0lmPVwibW9kZWwubm9kZS50eXBlID09PSAnZGVmYXVsdCcgfHwgbW9kZWwubm9kZS50eXBlID09PSAnaHRtbC10ZW1wbGF0ZScgfHwgbW9kZWwuaXNDb21wb25lbnRUeXBlXCJcbiAgICAgICAgICBbYXR0ci50cmFuc2Zvcm1dPVwibW9kZWwucG9pbnRUcmFuc2Zvcm0oKVwiXG4gICAgICAgICAgW2F0dHIud2lkdGhdPVwibW9kZWwuc2l6ZSgpLndpZHRoXCJcbiAgICAgICAgICBbYXR0ci5oZWlnaHRdPVwibW9kZWwuc2l6ZSgpLmhlaWdodFwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGVmYXVsdC1ub2RlXG4gICAgICAgICAgICBbc2VsZWN0ZWRdPVwibW9kZWwuc2VsZWN0ZWQoKVwiXG4gICAgICAgICAgICBbc3R5bGUud2lkdGgucHhdPVwibW9kZWwuc2l6ZSgpLndpZHRoXCJcbiAgICAgICAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwibW9kZWwuc2l6ZSgpLmhlaWdodFwiXG4gICAgICAgICAgICBbc3R5bGUubWF4LXdpZHRoLnB4XT1cIm1vZGVsLnNpemUoKS53aWR0aFwiXG4gICAgICAgICAgICBbc3R5bGUubWF4LWhlaWdodC5weF09XCJtb2RlbC5zaXplKCkuaGVpZ2h0XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2IFtvdXRlckhUTUxdPVwibW9kZWwudGV4dCgpXCI+PC9kaXY+XG4gICAgICAgICAgPC9kZWZhdWx0LW5vZGU+XG4gICAgICAgIDwvc3ZnOmZvcmVpZ25PYmplY3Q+XG5cbiAgICAgICAgPHN2ZzpyZWN0XG4gICAgICAgICAgKm5nSWY9XCJtb2RlbC5ub2RlLnR5cGUgPT09ICdkZWZhdWx0LWdyb3VwJyB8fCBtb2RlbC5ub2RlLnR5cGUgPT09ICd0ZW1wbGF0ZS1ncm91cCdcIlxuICAgICAgICAgIGNsYXNzPVwiZGVmYXVsdC1ncm91cC1ub2RlXCJcbiAgICAgICAgICByeD1cIjVcIlxuICAgICAgICAgIHJ5PVwiNVwiXG4gICAgICAgICAgW2F0dHIudHJhbnNmb3JtXT1cIm1vZGVsLnBvaW50VHJhbnNmb3JtKClcIlxuICAgICAgICAgIFtjbGFzcy5kZWZhdWx0LWdyb3VwLW5vZGVfc2VsZWN0ZWRdPVwibW9kZWwuc2VsZWN0ZWQoKVwiXG4gICAgICAgICAgW2F0dHIud2lkdGhdPVwibW9kZWwuc2l6ZSgpLndpZHRoXCJcbiAgICAgICAgICBbYXR0ci5oZWlnaHRdPVwibW9kZWwuc2l6ZSgpLmhlaWdodFwiXG4gICAgICAgICAgW3N0eWxlLnN0cm9rZV09XCJtb2RlbC5jb2xvcigpXCJcbiAgICAgICAgICBbc3R5bGUuZmlsbF09XCJtb2RlbC5jb2xvcigpXCJcbiAgICAgICAgLz5cblxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9zdmc6Zz5cbiAgPC9zdmc6c3ZnPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -12,6 +12,10 @@ export class FlowEntitiesService {
12
12
  // empty arrays considered equal, other arrays may not be equal
13
13
  equal: (a, b) => !a.length && !b.length ? true : a === b
14
14
  });
15
+ this.validEdges = computed(() => {
16
+ const nodes = this.nodes();
17
+ return this.edges().filter(e => nodes.includes(e.source()) && nodes.includes(e.target()));
18
+ });
15
19
  this.connection = signal(new ConnectionModel({}));
16
20
  this.markers = computed(() => {
17
21
  const markersMap = new Map();
@@ -32,14 +36,11 @@ export class FlowEntitiesService {
32
36
  }
33
37
  return markersMap;
34
38
  });
35
- this.validEdges = computed(() => {
36
- const nodes = this.nodes();
37
- return this.edges().filter(e => nodes.includes(e.source()) && nodes.includes(e.target()));
38
- });
39
39
  this.entities = computed(() => [
40
40
  ...this.nodes(),
41
41
  ...this.edges()
42
42
  ]);
43
+ this.minimap = signal(null);
43
44
  }
44
45
  getNode(id) {
45
46
  return this.nodes().find(({ node }) => node.id === id);
@@ -53,4 +54,4 @@ export class FlowEntitiesService {
53
54
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FlowEntitiesService, decorators: [{
54
55
  type: Injectable
55
56
  }] });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1lbnRpdGllcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L3NlcnZpY2VzL2Zsb3ctZW50aXRpZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFVLFFBQVEsRUFBVSxNQUFNLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFHeEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTdELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSXpDLE1BQU0sT0FBTyxtQkFBbUI7SUFEaEM7UUFFa0IsVUFBSyxHQUFHLE1BQU0sQ0FBYyxFQUFFLEVBQUU7WUFDOUMsK0RBQStEO1lBQy9ELEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7U0FDekQsQ0FBQyxDQUFBO1FBRWMsVUFBSyxHQUFHLE1BQU0sQ0FBYyxFQUFFLEVBQUU7WUFDOUMsK0RBQStEO1lBQy9ELEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7U0FDekQsQ0FBQyxDQUFBO1FBRWMsZUFBVSxHQUFHLE1BQU0sQ0FBa0IsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtRQUU3RCxZQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUN0QyxNQUFNLFVBQVUsR0FBRyxJQUFJLEdBQUcsRUFBa0IsQ0FBQTtZQUU1QyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUM1QixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRTtvQkFDekIsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtvQkFDM0QsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7aUJBQzNDO2dCQUVELElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFO29CQUN2QixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFBO29CQUN6RCxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQTtpQkFDekM7WUFDSCxDQUFDLENBQUMsQ0FBQTtZQUVGLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUE7WUFDMUQsSUFBSSxnQkFBZ0IsRUFBRTtnQkFDcEIsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFBO2dCQUN2RCxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFBO2FBQ3ZDO1lBRUQsT0FBTyxVQUFVLENBQUE7UUFDbkIsQ0FBQyxDQUFDLENBQUE7UUFFYyxlQUFVLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUN6QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7WUFFMUIsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFHLENBQUMsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUcsQ0FBQyxDQUFDLENBQUE7UUFDN0YsQ0FBQyxDQUFDLENBQUE7UUFFSyxhQUFRLEdBQXlCLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNyRCxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUU7U0FDaEIsQ0FBQyxDQUFBO0tBU0g7SUFQUSxPQUFPLENBQUksRUFBVTtRQUMxQixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBNkIsQ0FBQTtJQUNwRixDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFBO0lBQy9DLENBQUM7K0dBdERVLG1CQUFtQjttSEFBbkIsbUJBQW1COzs0RkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgU2lnbmFsLCBjb21wdXRlZCwgZWZmZWN0LCBzaWduYWwsIHVudHJhY2tlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTm9kZU1vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL25vZGUubW9kZWwnO1xuaW1wb3J0IHsgRWRnZU1vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL2VkZ2UubW9kZWwnO1xuaW1wb3J0IHsgQ29ubmVjdGlvbk1vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL2Nvbm5lY3Rpb24ubW9kZWwnO1xuaW1wb3J0IHsgTWFya2VyIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9tYXJrZXIuaW50ZXJmYWNlJztcbmltcG9ydCB7IGhhc2hDb2RlIH0gZnJvbSAnLi4vdXRpbHMvaGFzaCc7XG5pbXBvcnQgeyBGbG93RW50aXR5IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9mbG93LWVudGl0eS5pbnRlcmZhY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRmxvd0VudGl0aWVzU2VydmljZSB7XG4gIHB1YmxpYyByZWFkb25seSBub2RlcyA9IHNpZ25hbDxOb2RlTW9kZWxbXT4oW10sIHtcbiAgICAvLyBlbXB0eSBhcnJheXMgY29uc2lkZXJlZCBlcXVhbCwgb3RoZXIgYXJyYXlzIG1heSBub3QgYmUgZXF1YWxcbiAgICBlcXVhbDogKGEsIGIpID0+ICFhLmxlbmd0aCAmJiAhYi5sZW5ndGggPyB0cnVlIDogYSA9PT0gYlxuICB9KVxuXG4gIHB1YmxpYyByZWFkb25seSBlZGdlcyA9IHNpZ25hbDxFZGdlTW9kZWxbXT4oW10sIHtcbiAgICAvLyBlbXB0eSBhcnJheXMgY29uc2lkZXJlZCBlcXVhbCwgb3RoZXIgYXJyYXlzIG1heSBub3QgYmUgZXF1YWxcbiAgICBlcXVhbDogKGEsIGIpID0+ICFhLmxlbmd0aCAmJiAhYi5sZW5ndGggPyB0cnVlIDogYSA9PT0gYlxuICB9KVxuXG4gIHB1YmxpYyByZWFkb25seSBjb25uZWN0aW9uID0gc2lnbmFsPENvbm5lY3Rpb25Nb2RlbD4obmV3IENvbm5lY3Rpb25Nb2RlbCh7fSkpXG5cbiAgcHVibGljIHJlYWRvbmx5IG1hcmtlcnMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgbWFya2Vyc01hcCA9IG5ldyBNYXA8bnVtYmVyLCBNYXJrZXI+KClcblxuICAgIHRoaXMudmFsaWRFZGdlcygpLmZvckVhY2goZSA9PiB7XG4gICAgICBpZiAoZS5lZGdlLm1hcmtlcnM/LnN0YXJ0KSB7XG4gICAgICAgIGNvbnN0IGhhc2ggPSBoYXNoQ29kZShKU09OLnN0cmluZ2lmeShlLmVkZ2UubWFya2Vycy5zdGFydCkpXG4gICAgICAgIG1hcmtlcnNNYXAuc2V0KGhhc2gsIGUuZWRnZS5tYXJrZXJzLnN0YXJ0KVxuICAgICAgfVxuXG4gICAgICBpZiAoZS5lZGdlLm1hcmtlcnM/LmVuZCkge1xuICAgICAgICBjb25zdCBoYXNoID0gaGFzaENvZGUoSlNPTi5zdHJpbmdpZnkoZS5lZGdlLm1hcmtlcnMuZW5kKSlcbiAgICAgICAgbWFya2Vyc01hcC5zZXQoaGFzaCwgZS5lZGdlLm1hcmtlcnMuZW5kKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICBjb25zdCBjb25uZWN0aW9uTWFya2VyID0gdGhpcy5jb25uZWN0aW9uKCkuc2V0dGluZ3MubWFya2VyXG4gICAgaWYgKGNvbm5lY3Rpb25NYXJrZXIpIHtcbiAgICAgIGNvbnN0IGhhc2ggPSBoYXNoQ29kZShKU09OLnN0cmluZ2lmeShjb25uZWN0aW9uTWFya2VyKSlcbiAgICAgIG1hcmtlcnNNYXAuc2V0KGhhc2gsIGNvbm5lY3Rpb25NYXJrZXIpXG4gICAgfVxuXG4gICAgcmV0dXJuIG1hcmtlcnNNYXBcbiAgfSlcblxuICBwdWJsaWMgcmVhZG9ubHkgdmFsaWRFZGdlcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBub2RlcyA9IHRoaXMubm9kZXMoKVxuXG4gICAgcmV0dXJuIHRoaXMuZWRnZXMoKS5maWx0ZXIoZSA9PiBub2Rlcy5pbmNsdWRlcyhlLnNvdXJjZSgpISkgJiYgbm9kZXMuaW5jbHVkZXMoZS50YXJnZXQoKSEpKVxuICB9KVxuXG4gIHB1YmxpYyBlbnRpdGllczogU2lnbmFsPEZsb3dFbnRpdHlbXT4gPSBjb21wdXRlZCgoKSA9PiBbXG4gICAgLi4udGhpcy5ub2RlcygpLFxuICAgIC4uLnRoaXMuZWRnZXMoKVxuICBdKVxuXG4gIHB1YmxpYyBnZXROb2RlPFQ+KGlkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5ub2RlcygpLmZpbmQoKHsgbm9kZSB9KSA9PiBub2RlLmlkID09PSBpZCkgYXMgTm9kZU1vZGVsPFQ+IHwgdW5kZWZpbmVkXG4gIH1cblxuICBwdWJsaWMgZ2V0RGV0YWNoZWRFZGdlcygpIHtcbiAgICByZXR1cm4gdGhpcy5lZGdlcygpLmZpbHRlcihlID0+IGUuZGV0YWNoZWQoKSlcbiAgfVxufVxuIl19
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1lbnRpdGllcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L3NlcnZpY2VzL2Zsb3ctZW50aXRpZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUEwQixRQUFRLEVBQVUsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBR3hHLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUt6QyxNQUFNLE9BQU8sbUJBQW1CO0lBRGhDO1FBRWtCLFVBQUssR0FBRyxNQUFNLENBQWMsRUFBRSxFQUFFO1lBQzlDLCtEQUErRDtZQUMvRCxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1NBQ3pELENBQUMsQ0FBQTtRQUVjLFVBQUssR0FBRyxNQUFNLENBQWMsRUFBRSxFQUFFO1lBQzlDLCtEQUErRDtZQUMvRCxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1NBQ3pELENBQUMsQ0FBQTtRQUVjLGVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3pDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQTtZQUUxQixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUcsQ0FBQyxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRyxDQUFDLENBQUMsQ0FBQTtRQUM3RixDQUFDLENBQUMsQ0FBQTtRQUVjLGVBQVUsR0FBRyxNQUFNLENBQWtCLElBQUksZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFFN0QsWUFBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDdEMsTUFBTSxVQUFVLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUE7WUFFNUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDNUIsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUU7b0JBQ3pCLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUE7b0JBQzNELFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO2lCQUMzQztnQkFFRCxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRTtvQkFDdkIsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtvQkFDekQsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUE7aUJBQ3pDO1lBQ0gsQ0FBQyxDQUFDLENBQUE7WUFFRixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFBO1lBQzFELElBQUksZ0JBQWdCLEVBQUU7Z0JBQ3BCLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQTtnQkFDdkQsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQTthQUN2QztZQUVELE9BQU8sVUFBVSxDQUFBO1FBQ25CLENBQUMsQ0FBQyxDQUFBO1FBRUssYUFBUSxHQUF5QixRQUFRLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDckQsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFO1NBQ2hCLENBQUMsQ0FBQTtRQUVLLFlBQU8sR0FBd0MsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFBO0tBU25FO0lBUFEsT0FBTyxDQUFJLEVBQVU7UUFDMUIsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQTZCLENBQUE7SUFDcEYsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQTtJQUMvQyxDQUFDOytHQXhEVSxtQkFBbUI7bUhBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFEL0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFNpZ25hbCwgV3JpdGFibGVTaWduYWwsIGNvbXB1dGVkLCBlZmZlY3QsIHNpZ25hbCwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb2RlTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvbm9kZS5tb2RlbCc7XG5pbXBvcnQgeyBFZGdlTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvZWRnZS5tb2RlbCc7XG5pbXBvcnQgeyBDb25uZWN0aW9uTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvY29ubmVjdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBNYXJrZXIgfSBmcm9tICcuLi9pbnRlcmZhY2VzL21hcmtlci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgaGFzaENvZGUgfSBmcm9tICcuLi91dGlscy9oYXNoJztcbmltcG9ydCB7IEZsb3dFbnRpdHkgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2Zsb3ctZW50aXR5LmludGVyZmFjZSc7XG5pbXBvcnQgeyBNaW5pbWFwTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvbWluaW1hcC5tb2RlbCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGbG93RW50aXRpZXNTZXJ2aWNlIHtcbiAgcHVibGljIHJlYWRvbmx5IG5vZGVzID0gc2lnbmFsPE5vZGVNb2RlbFtdPihbXSwge1xuICAgIC8vIGVtcHR5IGFycmF5cyBjb25zaWRlcmVkIGVxdWFsLCBvdGhlciBhcnJheXMgbWF5IG5vdCBiZSBlcXVhbFxuICAgIGVxdWFsOiAoYSwgYikgPT4gIWEubGVuZ3RoICYmICFiLmxlbmd0aCA/IHRydWUgOiBhID09PSBiXG4gIH0pXG5cbiAgcHVibGljIHJlYWRvbmx5IGVkZ2VzID0gc2lnbmFsPEVkZ2VNb2RlbFtdPihbXSwge1xuICAgIC8vIGVtcHR5IGFycmF5cyBjb25zaWRlcmVkIGVxdWFsLCBvdGhlciBhcnJheXMgbWF5IG5vdCBiZSBlcXVhbFxuICAgIGVxdWFsOiAoYSwgYikgPT4gIWEubGVuZ3RoICYmICFiLmxlbmd0aCA/IHRydWUgOiBhID09PSBiXG4gIH0pXG5cbiAgcHVibGljIHJlYWRvbmx5IHZhbGlkRWRnZXMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgbm9kZXMgPSB0aGlzLm5vZGVzKClcblxuICAgIHJldHVybiB0aGlzLmVkZ2VzKCkuZmlsdGVyKGUgPT4gbm9kZXMuaW5jbHVkZXMoZS5zb3VyY2UoKSEpICYmIG5vZGVzLmluY2x1ZGVzKGUudGFyZ2V0KCkhKSlcbiAgfSlcblxuICBwdWJsaWMgcmVhZG9ubHkgY29ubmVjdGlvbiA9IHNpZ25hbDxDb25uZWN0aW9uTW9kZWw+KG5ldyBDb25uZWN0aW9uTW9kZWwoe30pKVxuXG4gIHB1YmxpYyByZWFkb25seSBtYXJrZXJzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IG1hcmtlcnNNYXAgPSBuZXcgTWFwPG51bWJlciwgTWFya2VyPigpXG5cbiAgICB0aGlzLnZhbGlkRWRnZXMoKS5mb3JFYWNoKGUgPT4ge1xuICAgICAgaWYgKGUuZWRnZS5tYXJrZXJzPy5zdGFydCkge1xuICAgICAgICBjb25zdCBoYXNoID0gaGFzaENvZGUoSlNPTi5zdHJpbmdpZnkoZS5lZGdlLm1hcmtlcnMuc3RhcnQpKVxuICAgICAgICBtYXJrZXJzTWFwLnNldChoYXNoLCBlLmVkZ2UubWFya2Vycy5zdGFydClcbiAgICAgIH1cblxuICAgICAgaWYgKGUuZWRnZS5tYXJrZXJzPy5lbmQpIHtcbiAgICAgICAgY29uc3QgaGFzaCA9IGhhc2hDb2RlKEpTT04uc3RyaW5naWZ5KGUuZWRnZS5tYXJrZXJzLmVuZCkpXG4gICAgICAgIG1hcmtlcnNNYXAuc2V0KGhhc2gsIGUuZWRnZS5tYXJrZXJzLmVuZClcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgY29uc3QgY29ubmVjdGlvbk1hcmtlciA9IHRoaXMuY29ubmVjdGlvbigpLnNldHRpbmdzLm1hcmtlclxuICAgIGlmIChjb25uZWN0aW9uTWFya2VyKSB7XG4gICAgICBjb25zdCBoYXNoID0gaGFzaENvZGUoSlNPTi5zdHJpbmdpZnkoY29ubmVjdGlvbk1hcmtlcikpXG4gICAgICBtYXJrZXJzTWFwLnNldChoYXNoLCBjb25uZWN0aW9uTWFya2VyKVxuICAgIH1cblxuICAgIHJldHVybiBtYXJrZXJzTWFwXG4gIH0pXG5cbiAgcHVibGljIGVudGl0aWVzOiBTaWduYWw8Rmxvd0VudGl0eVtdPiA9IGNvbXB1dGVkKCgpID0+IFtcbiAgICAuLi50aGlzLm5vZGVzKCksXG4gICAgLi4udGhpcy5lZGdlcygpXG4gIF0pXG5cbiAgcHVibGljIG1pbmltYXA6IFdyaXRhYmxlU2lnbmFsPE1pbmltYXBNb2RlbCB8IG51bGw+ID0gc2lnbmFsKG51bGwpXG5cbiAgcHVibGljIGdldE5vZGU8VD4oaWQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLm5vZGVzKCkuZmluZCgoeyBub2RlIH0pID0+IG5vZGUuaWQgPT09IGlkKSBhcyBOb2RlTW9kZWw8VD4gfCB1bmRlZmluZWRcbiAgfVxuXG4gIHB1YmxpYyBnZXREZXRhY2hlZEVkZ2VzKCkge1xuICAgIHJldHVybiB0aGlzLmVkZ2VzKCkuZmlsdGVyKGUgPT4gZS5kZXRhY2hlZCgpKVxuICB9XG59XG4iXX0=
@@ -23,6 +23,7 @@ export class FlowSettingsService {
23
23
  this.computedFlowHeight = signal(0);
24
24
  this.minZoom = signal(0.5);
25
25
  this.maxZoom = signal(3);
26
+ this.background = signal({ type: 'solid', color: '#fff' });
26
27
  }
27
28
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FlowSettingsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
28
29
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FlowSettingsService }); }
@@ -30,4 +31,4 @@ export class FlowSettingsService {
30
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FlowSettingsService, decorators: [{
31
32
  type: Injectable
32
33
  }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1zZXR0aW5ncy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L3NlcnZpY2VzL2Zsb3ctc2V0dGluZ3Muc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUE0QixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSTdFLE1BQU0sT0FBTyxtQkFBbUI7SUFEaEM7UUFFUyx1QkFBa0IsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUE7UUFFeEM7Ozs7V0FJRztRQUNJLG9CQUFlLEdBQW9DLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUE7UUFFckc7O1dBRUc7UUFDSSxTQUFJLEdBQThDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFBO1FBRTNFOztXQUVHO1FBQ0ksc0JBQWlCLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBRXBDOztXQUVHO1FBQ0ksdUJBQWtCLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBRTlCLFlBQU8sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7UUFFckIsWUFBTyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTtLQUMzQjsrR0E1QlksbUJBQW1CO21IQUFuQixtQkFBbUI7OzRGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBXcml0YWJsZVNpZ25hbCwgY29tcHV0ZWQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSGFuZGxlUG9zaXRpb25zIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9oYW5kbGUtcG9zaXRpb25zLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGbG93U2V0dGluZ3NTZXJ2aWNlIHtcbiAgcHVibGljIGVudGl0aWVzU2VsZWN0YWJsZSA9IHNpZ25hbCh0cnVlKVxuXG4gIC8qKlxuICAgKiBHbG9iYWwgc2V0dGluZyB3aXRoIGhhbmRsZSBwb3NpdGlvbnMuIE5vZGVzIGRlcml2ZSB0aGlzIHZhbHVlXG4gICAqXG4gICAqIEBkZXByZWNhdGVkXG4gICAqL1xuICBwdWJsaWMgaGFuZGxlUG9zaXRpb25zOiBXcml0YWJsZVNpZ25hbDxIYW5kbGVQb3NpdGlvbnM+ID0gc2lnbmFsKHsgc291cmNlOiAncmlnaHQnLCB0YXJnZXQ6ICdsZWZ0JyB9KVxuXG4gIC8qKlxuICAgKiBAc2VlIHtWZmxvd0NvbXBvbmVudC52aWV3fVxuICAgKi9cbiAgcHVibGljIHZpZXc6IFdyaXRhYmxlU2lnbmFsPFtudW1iZXIsIG51bWJlcl0gfCAnYXV0byc+ID0gc2lnbmFsKFs0MDAsIDQwMF0pXG5cbiAgLyoqXG4gICAqIFNldCBiYXNlZCBvbiB2aWV3IHByb3BlcnR5LiBNYXkgY2hhbmdlIGlmIHZpZXcgaXMgJ2F1dG8nXG4gICAqL1xuICBwdWJsaWMgY29tcHV0ZWRGbG93V2lkdGggPSBzaWduYWwoMClcblxuICAvKipcbiAgICogU2V0IGJhc2VkIG9uIHZpZXcgcHJvcGVydHkuIE1heSBjaGFuZ2UgaWYgdmlldyBpcyAnYXV0bydcbiAgICovXG4gIHB1YmxpYyBjb21wdXRlZEZsb3dIZWlnaHQgPSBzaWduYWwoMClcblxuICBwdWJsaWMgbWluWm9vbSA9IHNpZ25hbCgwLjUpXG5cbiAgcHVibGljIG1heFpvb20gPSBzaWduYWwoMylcbn1cbiJdfQ==
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1zZXR0aW5ncy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L3NlcnZpY2VzL2Zsb3ctc2V0dGluZ3Muc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFrQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBS25FLE1BQU0sT0FBTyxtQkFBbUI7SUFEaEM7UUFFUyx1QkFBa0IsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUE7UUFFeEM7Ozs7V0FJRztRQUNJLG9CQUFlLEdBQW9DLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUE7UUFFckc7O1dBRUc7UUFDSSxTQUFJLEdBQThDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFBO1FBRTNFOztXQUVHO1FBQ0ksc0JBQWlCLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBRXBDOztXQUVHO1FBQ0ksdUJBQWtCLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBRTlCLFlBQU8sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7UUFFckIsWUFBTyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUVuQixlQUFVLEdBQUcsTUFBTSxDQUFhLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQTtLQUN6RTsrR0E5QlksbUJBQW1CO21IQUFuQixtQkFBbUI7OzRGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBXcml0YWJsZVNpZ25hbCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIYW5kbGVQb3NpdGlvbnMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2hhbmRsZS1wb3NpdGlvbnMuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJhY2tncm91bmQgfSBmcm9tICcuLi90eXBlcy9iYWNrZ3JvdW5kLnR5cGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRmxvd1NldHRpbmdzU2VydmljZSB7XG4gIHB1YmxpYyBlbnRpdGllc1NlbGVjdGFibGUgPSBzaWduYWwodHJ1ZSlcblxuICAvKipcbiAgICogR2xvYmFsIHNldHRpbmcgd2l0aCBoYW5kbGUgcG9zaXRpb25zLiBOb2RlcyBkZXJpdmUgdGhpcyB2YWx1ZVxuICAgKlxuICAgKiBAZGVwcmVjYXRlZFxuICAgKi9cbiAgcHVibGljIGhhbmRsZVBvc2l0aW9uczogV3JpdGFibGVTaWduYWw8SGFuZGxlUG9zaXRpb25zPiA9IHNpZ25hbCh7IHNvdXJjZTogJ3JpZ2h0JywgdGFyZ2V0OiAnbGVmdCcgfSlcblxuICAvKipcbiAgICogQHNlZSB7VmZsb3dDb21wb25lbnQudmlld31cbiAgICovXG4gIHB1YmxpYyB2aWV3OiBXcml0YWJsZVNpZ25hbDxbbnVtYmVyLCBudW1iZXJdIHwgJ2F1dG8nPiA9IHNpZ25hbChbNDAwLCA0MDBdKVxuXG4gIC8qKlxuICAgKiBTZXQgYmFzZWQgb24gdmlldyBwcm9wZXJ0eS4gTWF5IGNoYW5nZSBpZiB2aWV3IGlzICdhdXRvJ1xuICAgKi9cbiAgcHVibGljIGNvbXB1dGVkRmxvd1dpZHRoID0gc2lnbmFsKDApXG5cbiAgLyoqXG4gICAqIFNldCBiYXNlZCBvbiB2aWV3IHByb3BlcnR5LiBNYXkgY2hhbmdlIGlmIHZpZXcgaXMgJ2F1dG8nXG4gICAqL1xuICBwdWJsaWMgY29tcHV0ZWRGbG93SGVpZ2h0ID0gc2lnbmFsKDApXG5cbiAgcHVibGljIG1pblpvb20gPSBzaWduYWwoMC41KVxuXG4gIHB1YmxpYyBtYXhab29tID0gc2lnbmFsKDMpXG5cbiAgcHVibGljIGJhY2tncm91bmQgPSBzaWduYWw8QmFja2dyb3VuZD4oeyB0eXBlOiAnc29saWQnLCBjb2xvcjogJyNmZmYnIH0pXG59XG4iXX0=
@@ -0,0 +1,6 @@
1
+ export function transformBackground(background) {
2
+ return typeof background === 'string'
3
+ ? { type: 'solid', color: background }
4
+ : background;
5
+ }
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3JtLWJhY2tncm91bmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvdXRpbHMvdHJhbnNmb3JtLWJhY2tncm91bmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLG1CQUFtQixDQUFDLFVBQStCO0lBQ2pFLE9BQU8sT0FBTyxVQUFVLEtBQUssUUFBUTtRQUNuQyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUU7UUFDdEMsQ0FBQyxDQUFDLFVBQVUsQ0FBQTtBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFja2dyb3VuZCB9IGZyb20gXCIuLi90eXBlcy9iYWNrZ3JvdW5kLnR5cGVcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUJhY2tncm91bmQoYmFja2dyb3VuZDogQmFja2dyb3VuZCB8IHN0cmluZyk6IEJhY2tncm91bmQge1xuICByZXR1cm4gdHlwZW9mIGJhY2tncm91bmQgPT09ICdzdHJpbmcnXG4gICAgPyB7IHR5cGU6ICdzb2xpZCcsIGNvbG9yOiBiYWNrZ3JvdW5kIH1cbiAgICA6IGJhY2tncm91bmRcbn1cbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { CommonModule } from '@angular/common';
1
+ import { KeyValuePipe, NgComponentOutlet, NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
2
2
  import { NgModule } from '@angular/core';
3
3
  import { VflowComponent } from './components/vflow/vflow.component';
4
4
  import { NodeComponent } from './components/node/node.component';
@@ -19,10 +19,13 @@ import { RootPointerDirective } from './directives/root-pointer.directive';
19
19
  import { BackgroundComponent } from './components/background/background.component';
20
20
  import { FlowSizeControllerDirective } from './directives/flow-size-controller.directive';
21
21
  import { ResizableComponent } from './public-components/resizable/resizable.component';
22
+ import { MiniMapComponent } from './public-components/minimap/minimap.component';
23
+ import { DefaultNodeComponent } from './components/default-node/default-node.component';
22
24
  import * as i0 from "@angular/core";
23
25
  const components = [
24
26
  VflowComponent,
25
27
  NodeComponent,
28
+ DefaultNodeComponent,
26
29
  EdgeComponent,
27
30
  EdgeLabelComponent,
28
31
  ConnectionComponent,
@@ -30,6 +33,7 @@ const components = [
30
33
  DefsComponent,
31
34
  BackgroundComponent,
32
35
  ResizableComponent,
36
+ MiniMapComponent
33
37
  ];
34
38
  const directives = [
35
39
  SpacePointContextDirective,
@@ -54,13 +58,15 @@ export class VflowModule {
54
58
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VflowModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
55
59
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: VflowModule, declarations: [VflowComponent,
56
60
  NodeComponent,
61
+ DefaultNodeComponent,
57
62
  EdgeComponent,
58
63
  EdgeLabelComponent,
59
64
  ConnectionComponent,
60
65
  HandleComponent,
61
66
  DefsComponent,
62
67
  BackgroundComponent,
63
- ResizableComponent, SpacePointContextDirective,
68
+ ResizableComponent,
69
+ MiniMapComponent, SpacePointContextDirective,
64
70
  MapContextDirective,
65
71
  RootSvgReferenceDirective,
66
72
  RootSvgContextDirective,
@@ -73,29 +79,31 @@ export class VflowModule {
73
79
  EdgeLabelHtmlTemplateDirective,
74
80
  EdgeTemplateDirective,
75
81
  ConnectionTemplateDirective,
76
- HandleTemplateDirective], imports: [CommonModule], exports: [VflowComponent,
82
+ HandleTemplateDirective], imports: [NgIf, NgFor, NgTemplateOutlet, NgComponentOutlet, KeyValuePipe], exports: [VflowComponent,
77
83
  HandleComponent,
78
84
  ResizableComponent,
79
- SelectableDirective, NodeHtmlTemplateDirective,
85
+ SelectableDirective,
86
+ MiniMapComponent, NodeHtmlTemplateDirective,
80
87
  GroupNodeTemplateDirective,
81
88
  EdgeLabelHtmlTemplateDirective,
82
89
  EdgeTemplateDirective,
83
90
  ConnectionTemplateDirective,
84
91
  HandleTemplateDirective] }); }
85
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VflowModule, imports: [CommonModule] }); }
92
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VflowModule }); }
86
93
  }
87
94
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VflowModule, decorators: [{
88
95
  type: NgModule,
89
96
  args: [{
90
- imports: [CommonModule],
97
+ imports: [NgIf, NgFor, NgTemplateOutlet, NgComponentOutlet, KeyValuePipe],
91
98
  exports: [
92
99
  VflowComponent,
93
100
  HandleComponent,
94
101
  ResizableComponent,
95
102
  SelectableDirective,
103
+ MiniMapComponent,
96
104
  ...templateDirectives
97
105
  ],
98
106
  declarations: [...components, ...directives, ...templateDirectives],
99
107
  }]
100
108
  }] });
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmZsb3cubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L3ZmbG93Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsOEJBQThCLEVBQUUscUJBQXFCLEVBQUUsMEJBQTBCLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyTixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNuRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUN4RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNsRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzlGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDOztBQUV2RixNQUFNLFVBQVUsR0FBRztJQUNqQixjQUFjO0lBQ2QsYUFBYTtJQUNiLGFBQWE7SUFDYixrQkFBa0I7SUFDbEIsbUJBQW1CO0lBQ25CLGVBQWU7SUFDZixhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLGtCQUFrQjtDQUNuQixDQUFBO0FBRUQsTUFBTSxVQUFVLEdBQUc7SUFDakIsMEJBQTBCO0lBQzFCLG1CQUFtQjtJQUNuQix5QkFBeUI7SUFDekIsdUJBQXVCO0lBQ3ZCLDZCQUE2QjtJQUM3QixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBQ2hCLG9CQUFvQjtJQUNwQiwyQkFBMkI7Q0FDNUIsQ0FBQTtBQUVELE1BQU0sa0JBQWtCLEdBQUc7SUFDekIseUJBQXlCO0lBQ3pCLDBCQUEwQjtJQUMxQiw4QkFBOEI7SUFDOUIscUJBQXFCO0lBQ3JCLDJCQUEyQjtJQUMzQix1QkFBdUI7Q0FDeEIsQ0FBQTtBQWFELE1BQU0sT0FBTyxXQUFXOytHQUFYLFdBQVc7Z0hBQVgsV0FBVyxpQkEzQ3RCLGNBQWM7WUFDZCxhQUFhO1lBQ2IsYUFBYTtZQUNiLGtCQUFrQjtZQUNsQixtQkFBbUI7WUFDbkIsZUFBZTtZQUNmLGFBQWE7WUFDYixtQkFBbUI7WUFDbkIsa0JBQWtCLEVBSWxCLDBCQUEwQjtZQUMxQixtQkFBbUI7WUFDbkIseUJBQXlCO1lBQ3pCLHVCQUF1QjtZQUN2Qiw2QkFBNkI7WUFDN0IsbUJBQW1CO1lBQ25CLGdCQUFnQjtZQUNoQixvQkFBb0I7WUFDcEIsMkJBQTJCLEVBSTNCLHlCQUF5QjtZQUN6QiwwQkFBMEI7WUFDMUIsOEJBQThCO1lBQzlCLHFCQUFxQjtZQUNyQiwyQkFBMkI7WUFDM0IsdUJBQXVCLGFBSWIsWUFBWSxhQUVwQixjQUFjO1lBQ2QsZUFBZTtZQUNmLGtCQUFrQjtZQUNsQixtQkFBbUIsRUFkckIseUJBQXlCO1lBQ3pCLDBCQUEwQjtZQUMxQiw4QkFBOEI7WUFDOUIscUJBQXFCO1lBQ3JCLDJCQUEyQjtZQUMzQix1QkFBdUI7Z0hBY1osV0FBVyxZQVZaLFlBQVk7OzRGQVVYLFdBQVc7a0JBWHZCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixPQUFPLEVBQUU7d0JBQ1AsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQixHQUFHLGtCQUFrQjtxQkFDdEI7b0JBQ0QsWUFBWSxFQUFFLENBQUMsR0FBRyxVQUFVLEVBQUUsR0FBRyxVQUFVLEVBQUUsR0FBRyxrQkFBa0IsQ0FBQztpQkFDcEUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZmbG93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ZmbG93L3ZmbG93LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb2RlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL25vZGUvbm9kZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWFwQ29udGV4dERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9tYXAtY29udGV4dC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWRnZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9lZGdlL2VkZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEVkZ2VMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9lZGdlLWxhYmVsL2VkZ2UtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IENvbm5lY3Rpb25UZW1wbGF0ZURpcmVjdGl2ZSwgRWRnZUxhYmVsSHRtbFRlbXBsYXRlRGlyZWN0aXZlLCBFZGdlVGVtcGxhdGVEaXJlY3RpdmUsIEdyb3VwTm9kZVRlbXBsYXRlRGlyZWN0aXZlLCBIYW5kbGVUZW1wbGF0ZURpcmVjdGl2ZSwgTm9kZUh0bWxUZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy90ZW1wbGF0ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29ubmVjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb25uZWN0aW9uL2Nvbm5lY3Rpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFNwYWNlUG9pbnRDb250ZXh0RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3NwYWNlLXBvaW50LWNvbnRleHQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFJvb3RTdmdSZWZlcmVuY2VEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvcmVmZXJlbmNlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBSb290U3ZnQ29udGV4dERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9yb290LXN2Zy1jb250ZXh0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBEZWZzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2RlZnMvZGVmcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGFuZGxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hhbmRsZS9oYW5kbGUuY29tcG9uZW50JztcbmltcG9ydCB7IEhhbmRsZVNpemVDb250cm9sbGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2hhbmRsZS1zaXplLWNvbnRyb2xsZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IFNlbGVjdGFibGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvc2VsZWN0YWJsZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUG9pbnRlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9wb2ludGVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBSb290UG9pbnRlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9yb290LXBvaW50ZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IEJhY2tncm91bmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYmFja2dyb3VuZC9iYWNrZ3JvdW5kLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGbG93U2l6ZUNvbnRyb2xsZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZmxvdy1zaXplLWNvbnRyb2xsZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IFJlc2l6YWJsZUNvbXBvbmVudCB9IGZyb20gJy4vcHVibGljLWNvbXBvbmVudHMvcmVzaXphYmxlL3Jlc2l6YWJsZS5jb21wb25lbnQnO1xuXG5jb25zdCBjb21wb25lbnRzID0gW1xuICBWZmxvd0NvbXBvbmVudCxcbiAgTm9kZUNvbXBvbmVudCxcbiAgRWRnZUNvbXBvbmVudCxcbiAgRWRnZUxhYmVsQ29tcG9uZW50LFxuICBDb25uZWN0aW9uQ29tcG9uZW50LFxuICBIYW5kbGVDb21wb25lbnQsXG4gIERlZnNDb21wb25lbnQsXG4gIEJhY2tncm91bmRDb21wb25lbnQsXG4gIFJlc2l6YWJsZUNvbXBvbmVudCxcbl1cblxuY29uc3QgZGlyZWN0aXZlcyA9IFtcbiAgU3BhY2VQb2ludENvbnRleHREaXJlY3RpdmUsXG4gIE1hcENvbnRleHREaXJlY3RpdmUsXG4gIFJvb3RTdmdSZWZlcmVuY2VEaXJlY3RpdmUsXG4gIFJvb3RTdmdDb250ZXh0RGlyZWN0aXZlLFxuICBIYW5kbGVTaXplQ29udHJvbGxlckRpcmVjdGl2ZSxcbiAgU2VsZWN0YWJsZURpcmVjdGl2ZSxcbiAgUG9pbnRlckRpcmVjdGl2ZSxcbiAgUm9vdFBvaW50ZXJEaXJlY3RpdmUsXG4gIEZsb3dTaXplQ29udHJvbGxlckRpcmVjdGl2ZSxcbl1cblxuY29uc3QgdGVtcGxhdGVEaXJlY3RpdmVzID0gW1xuICBOb2RlSHRtbFRlbXBsYXRlRGlyZWN0aXZlLFxuICBHcm91cE5vZGVUZW1wbGF0ZURpcmVjdGl2ZSxcbiAgRWRnZUxhYmVsSHRtbFRlbXBsYXRlRGlyZWN0aXZlLFxuICBFZGdlVGVtcGxhdGVEaXJlY3RpdmUsXG4gIENvbm5lY3Rpb25UZW1wbGF0ZURpcmVjdGl2ZSxcbiAgSGFuZGxlVGVtcGxhdGVEaXJlY3RpdmVcbl1cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtcbiAgICBWZmxvd0NvbXBvbmVudCxcbiAgICBIYW5kbGVDb21wb25lbnQsXG4gICAgUmVzaXphYmxlQ29tcG9uZW50LFxuICAgIFNlbGVjdGFibGVEaXJlY3RpdmUsXG4gICAgLi4udGVtcGxhdGVEaXJlY3RpdmVzXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogWy4uLmNvbXBvbmVudHMsIC4uLmRpcmVjdGl2ZXMsIC4uLnRlbXBsYXRlRGlyZWN0aXZlc10sXG59KVxuZXhwb3J0IGNsYXNzIFZmbG93TW9kdWxlIHsgfVxuIl19
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmZsb3cubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L3ZmbG93Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDekUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSw4QkFBOEIsRUFBRSxxQkFBcUIsRUFBRSwwQkFBMEIsRUFBRSx1QkFBdUIsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JOLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdkUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDOUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbkYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDMUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDdkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDakYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7O0FBRXhGLE1BQU0sVUFBVSxHQUFHO0lBQ2pCLGNBQWM7SUFDZCxhQUFhO0lBQ2Isb0JBQW9CO0lBQ3BCLGFBQWE7SUFDYixrQkFBa0I7SUFDbEIsbUJBQW1CO0lBQ25CLGVBQWU7SUFDZixhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLGtCQUFrQjtJQUNsQixnQkFBZ0I7Q0FDakIsQ0FBQTtBQUVELE1BQU0sVUFBVSxHQUFHO0lBQ2pCLDBCQUEwQjtJQUMxQixtQkFBbUI7SUFDbkIseUJBQXlCO0lBQ3pCLHVCQUF1QjtJQUN2Qiw2QkFBNkI7SUFDN0IsbUJBQW1CO0lBQ25CLGdCQUFnQjtJQUNoQixvQkFBb0I7SUFDcEIsMkJBQTJCO0NBQzVCLENBQUE7QUFFRCxNQUFNLGtCQUFrQixHQUFHO0lBQ3pCLHlCQUF5QjtJQUN6QiwwQkFBMEI7SUFDMUIsOEJBQThCO0lBQzlCLHFCQUFxQjtJQUNyQiwyQkFBMkI7SUFDM0IsdUJBQXVCO0NBQ3hCLENBQUE7QUFjRCxNQUFNLE9BQU8sV0FBVzsrR0FBWCxXQUFXO2dIQUFYLFdBQVcsaUJBOUN0QixjQUFjO1lBQ2QsYUFBYTtZQUNiLG9CQUFvQjtZQUNwQixhQUFhO1lBQ2Isa0JBQWtCO1lBQ2xCLG1CQUFtQjtZQUNuQixlQUFlO1lBQ2YsYUFBYTtZQUNiLG1CQUFtQjtZQUNuQixrQkFBa0I7WUFDbEIsZ0JBQWdCLEVBSWhCLDBCQUEwQjtZQUMxQixtQkFBbUI7WUFDbkIseUJBQXlCO1lBQ3pCLHVCQUF1QjtZQUN2Qiw2QkFBNkI7WUFDN0IsbUJBQW1CO1lBQ25CLGdCQUFnQjtZQUNoQixvQkFBb0I7WUFDcEIsMkJBQTJCLEVBSTNCLHlCQUF5QjtZQUN6QiwwQkFBMEI7WUFDMUIsOEJBQThCO1lBQzlCLHFCQUFxQjtZQUNyQiwyQkFBMkI7WUFDM0IsdUJBQXVCLGFBSWIsSUFBSSxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxZQUFZLGFBRXRFLGNBQWM7WUFDZCxlQUFlO1lBQ2Ysa0JBQWtCO1lBQ2xCLG1CQUFtQjtZQUNuQixnQkFBZ0IsRUFmbEIseUJBQXlCO1lBQ3pCLDBCQUEwQjtZQUMxQiw4QkFBOEI7WUFDOUIscUJBQXFCO1lBQ3JCLDJCQUEyQjtZQUMzQix1QkFBdUI7Z0hBZVosV0FBVzs7NEZBQVgsV0FBVztrQkFadkIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLFlBQVksQ0FBQztvQkFDekUsT0FBTyxFQUFFO3dCQUNQLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3dCQUNoQixHQUFHLGtCQUFrQjtxQkFDdEI7b0JBQ0QsWUFBWSxFQUFFLENBQUMsR0FBRyxVQUFVLEVBQUUsR0FBRyxVQUFVLEVBQUUsR0FBRyxrQkFBa0IsQ0FBQztpQkFDcEUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBLZXlWYWx1ZVBpcGUsIE5nQ29tcG9uZW50T3V0bGV0LCBOZ0ZvciwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVmZsb3dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdmZsb3cvdmZsb3cuY29tcG9uZW50JztcbmltcG9ydCB7IE5vZGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbm9kZS9ub2RlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXBDb250ZXh0RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL21hcC1jb250ZXh0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFZGdlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2VkZ2UvZWRnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWRnZUxhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2VkZ2UtbGFiZWwvZWRnZS1sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29ubmVjdGlvblRlbXBsYXRlRGlyZWN0aXZlLCBFZGdlTGFiZWxIdG1sVGVtcGxhdGVEaXJlY3RpdmUsIEVkZ2VUZW1wbGF0ZURpcmVjdGl2ZSwgR3JvdXBOb2RlVGVtcGxhdGVEaXJlY3RpdmUsIEhhbmRsZVRlbXBsYXRlRGlyZWN0aXZlLCBOb2RlSHRtbFRlbXBsYXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3RlbXBsYXRlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb25uZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Nvbm5lY3Rpb24vY29ubmVjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3BhY2VQb2ludENvbnRleHREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvc3BhY2UtcG9pbnQtY29udGV4dC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUm9vdFN2Z1JlZmVyZW5jZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9yZWZlcmVuY2UuZGlyZWN0aXZlJztcbmltcG9ydCB7IFJvb3RTdmdDb250ZXh0RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3Jvb3Qtc3ZnLWNvbnRleHQuZGlyZWN0aXZlJztcbmltcG9ydCB7IERlZnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZGVmcy9kZWZzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIYW5kbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGFuZGxlL2hhbmRsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGFuZGxlU2l6ZUNvbnRyb2xsZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvaGFuZGxlLXNpemUtY29udHJvbGxlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU2VsZWN0YWJsZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9zZWxlY3RhYmxlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQb2ludGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3BvaW50ZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IFJvb3RQb2ludGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3Jvb3QtcG9pbnRlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFja2dyb3VuZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9iYWNrZ3JvdW5kL2JhY2tncm91bmQuY29tcG9uZW50JztcbmltcG9ydCB7IEZsb3dTaXplQ29udHJvbGxlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9mbG93LXNpemUtY29udHJvbGxlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUmVzaXphYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9wdWJsaWMtY29tcG9uZW50cy9yZXNpemFibGUvcmVzaXphYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaW5pTWFwQ29tcG9uZW50IH0gZnJvbSAnLi9wdWJsaWMtY29tcG9uZW50cy9taW5pbWFwL21pbmltYXAuY29tcG9uZW50JztcbmltcG9ydCB7IERlZmF1bHROb2RlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2RlZmF1bHQtbm9kZS9kZWZhdWx0LW5vZGUuY29tcG9uZW50JztcblxuY29uc3QgY29tcG9uZW50cyA9IFtcbiAgVmZsb3dDb21wb25lbnQsXG4gIE5vZGVDb21wb25lbnQsXG4gIERlZmF1bHROb2RlQ29tcG9uZW50LFxuICBFZGdlQ29tcG9uZW50LFxuICBFZGdlTGFiZWxDb21wb25lbnQsXG4gIENvbm5lY3Rpb25Db21wb25lbnQsXG4gIEhhbmRsZUNvbXBvbmVudCxcbiAgRGVmc0NvbXBvbmVudCxcbiAgQmFja2dyb3VuZENvbXBvbmVudCxcbiAgUmVzaXphYmxlQ29tcG9uZW50LFxuICBNaW5pTWFwQ29tcG9uZW50XG5dXG5cbmNvbnN0IGRpcmVjdGl2ZXMgPSBbXG4gIFNwYWNlUG9pbnRDb250ZXh0RGlyZWN0aXZlLFxuICBNYXBDb250ZXh0RGlyZWN0aXZlLFxuICBSb290U3ZnUmVmZXJlbmNlRGlyZWN0aXZlLFxuICBSb290U3ZnQ29udGV4dERpcmVjdGl2ZSxcbiAgSGFuZGxlU2l6ZUNvbnRyb2xsZXJEaXJlY3RpdmUsXG4gIFNlbGVjdGFibGVEaXJlY3RpdmUsXG4gIFBvaW50ZXJEaXJlY3RpdmUsXG4gIFJvb3RQb2ludGVyRGlyZWN0aXZlLFxuICBGbG93U2l6ZUNvbnRyb2xsZXJEaXJlY3RpdmUsXG5dXG5cbmNvbnN0IHRlbXBsYXRlRGlyZWN0aXZlcyA9IFtcbiAgTm9kZUh0bWxUZW1wbGF0ZURpcmVjdGl2ZSxcbiAgR3JvdXBOb2RlVGVtcGxhdGVEaXJlY3RpdmUsXG4gIEVkZ2VMYWJlbEh0bWxUZW1wbGF0ZURpcmVjdGl2ZSxcbiAgRWRnZVRlbXBsYXRlRGlyZWN0aXZlLFxuICBDb25uZWN0aW9uVGVtcGxhdGVEaXJlY3RpdmUsXG4gIEhhbmRsZVRlbXBsYXRlRGlyZWN0aXZlXG5dXG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtOZ0lmLCBOZ0ZvciwgTmdUZW1wbGF0ZU91dGxldCwgTmdDb21wb25lbnRPdXRsZXQsIEtleVZhbHVlUGlwZV0sXG4gIGV4cG9ydHM6IFtcbiAgICBWZmxvd0NvbXBvbmVudCxcbiAgICBIYW5kbGVDb21wb25lbnQsXG4gICAgUmVzaXphYmxlQ29tcG9uZW50LFxuICAgIFNlbGVjdGFibGVEaXJlY3RpdmUsXG4gICAgTWluaU1hcENvbXBvbmVudCxcbiAgICAuLi50ZW1wbGF0ZURpcmVjdGl2ZXNcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbLi4uY29tcG9uZW50cywgLi4uZGlyZWN0aXZlcywgLi4udGVtcGxhdGVEaXJlY3RpdmVzXSxcbn0pXG5leHBvcnQgY2xhc3MgVmZsb3dNb2R1bGUgeyB9XG4iXX0=
@@ -26,9 +26,10 @@ export * from './lib/vflow/components/handle/handle.component';
26
26
  export * from './lib/vflow/public-components/custom-node/custom-node.component';
27
27
  export * from './lib/vflow/public-components/custom-dynamic-node/custom-dynamic-node.component';
28
28
  export * from './lib/vflow/public-components/resizable/resizable.component';
29
+ export * from './lib/vflow/public-components/minimap/minimap.component';
29
30
  // Directives
30
31
  export * from './lib/vflow/directives/template.directive';
31
32
  export * from './lib/vflow/directives/connection-controller.directive';
32
33
  export * from './lib/vflow/directives/changes-controller.directive';
33
34
  export * from './lib/vflow/directives/selectable.directive';
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLGNBQWMsMEJBQTBCLENBQUM7QUFFekMsYUFBYTtBQUNiLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHlDQUF5QyxDQUFDO0FBRXhELGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLCtDQUErQyxDQUFDO0FBRTlELFFBQVE7QUFDUixjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx3Q0FBd0MsQ0FBQztBQUV2RCxhQUFhO0FBQ2IsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyxpRkFBaUYsQ0FBQztBQUNoRyxjQUFjLDZEQUE2RCxDQUFDO0FBRTVFLGFBQWE7QUFDYixjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLDZDQUE2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gTW9kdWxlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdmZsb3cubW9kdWxlJztcblxuLy8gSW50ZXJmYWNlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9ub2RlLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL3BvaW50LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2VkZ2UuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvZWRnZS1sYWJlbC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9jb25uZWN0aW9uLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2Nvbm5lY3Rpb24uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvY29ubmVjdGlvbi1zZXR0aW5ncy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9oYW5kbGUtcG9zaXRpb25zLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL21hcmtlci5pbnRlcmZhY2UnO1xuZXhwb3J0IHsgVmlld3BvcnRTdGF0ZSB9IGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvdmlld3BvcnQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvY29tcG9uZW50LW5vZGUtZXZlbnQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvZml0LXZpZXctb3B0aW9ucy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9vcHRpbWl6YXRpb24uaW50ZXJmYWNlJztcblxuLy8gVHlwZXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL25vZGUtY2hhbmdlLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdHlwZXMvZWRnZS1jaGFuZ2UudHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy90eXBlcy9wb3NpdGlvbi50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL2JhY2tncm91bmQudHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy90eXBlcy9jb25uZWN0aW9uLW1vZGUudHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy90eXBlcy9rZXlib2FyZC1hY3Rpb24udHlwZSc7XG5cbi8vIENvbXBvbmVudHNcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2NvbXBvbmVudHMvdmZsb3cvdmZsb3cuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2NvbXBvbmVudHMvaGFuZGxlL2hhbmRsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvcHVibGljLWNvbXBvbmVudHMvY3VzdG9tLW5vZGUvY3VzdG9tLW5vZGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3B1YmxpYy1jb21wb25lbnRzL2N1c3RvbS1keW5hbWljLW5vZGUvY3VzdG9tLWR5bmFtaWMtbm9kZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvcHVibGljLWNvbXBvbmVudHMvcmVzaXphYmxlL3Jlc2l6YWJsZS5jb21wb25lbnQnO1xuXG4vLyBEaXJlY3RpdmVzXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9kaXJlY3RpdmVzL3RlbXBsYXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9kaXJlY3RpdmVzL2Nvbm5lY3Rpb24tY29udHJvbGxlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvZGlyZWN0aXZlcy9jaGFuZ2VzLWNvbnRyb2xsZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2RpcmVjdGl2ZXMvc2VsZWN0YWJsZS5kaXJlY3RpdmUnO1xuIl19
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLGNBQWMsMEJBQTBCLENBQUM7QUFFekMsYUFBYTtBQUNiLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHlDQUF5QyxDQUFDO0FBRXhELGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLCtDQUErQyxDQUFDO0FBRTlELFFBQVE7QUFDUixjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx3Q0FBd0MsQ0FBQztBQUV2RCxhQUFhO0FBQ2IsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyxpRkFBaUYsQ0FBQztBQUNoRyxjQUFjLDZEQUE2RCxDQUFDO0FBQzVFLGNBQWMseURBQXlELENBQUE7QUFFdkUsYUFBYTtBQUNiLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsNkNBQTZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBNb2R1bGVzXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy92Zmxvdy5tb2R1bGUnO1xuXG4vLyBJbnRlcmZhY2VzXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL25vZGUuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvcG9pbnQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvZWRnZS5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9lZGdlLWxhYmVsLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2Nvbm5lY3Rpb24uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvY29ubmVjdGlvbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9jb25uZWN0aW9uLXNldHRpbmdzLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2hhbmRsZS1wb3NpdGlvbnMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvbWFya2VyLmludGVyZmFjZSc7XG5leHBvcnQgeyBWaWV3cG9ydFN0YXRlIH0gZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy92aWV3cG9ydC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9jb21wb25lbnQtbm9kZS1ldmVudC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9maXQtdmlldy1vcHRpb25zLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL29wdGltaXphdGlvbi5pbnRlcmZhY2UnO1xuXG4vLyBUeXBlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdHlwZXMvbm9kZS1jaGFuZ2UudHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy90eXBlcy9lZGdlLWNoYW5nZS50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL3Bvc2l0aW9uLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdHlwZXMvYmFja2dyb3VuZC50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL2Nvbm5lY3Rpb24tbW9kZS50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL2tleWJvYXJkLWFjdGlvbi50eXBlJztcblxuLy8gQ29tcG9uZW50c1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvY29tcG9uZW50cy92Zmxvdy92Zmxvdy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvY29tcG9uZW50cy9oYW5kbGUvaGFuZGxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9jdXN0b20tbm9kZS9jdXN0b20tbm9kZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvcHVibGljLWNvbXBvbmVudHMvY3VzdG9tLWR5bmFtaWMtbm9kZS9jdXN0b20tZHluYW1pYy1ub2RlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9yZXNpemFibGUvcmVzaXphYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9taW5pbWFwL21pbmltYXAuY29tcG9uZW50J1xuXG4vLyBEaXJlY3RpdmVzXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9kaXJlY3RpdmVzL3RlbXBsYXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9kaXJlY3RpdmVzL2Nvbm5lY3Rpb24tY29udHJvbGxlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvZGlyZWN0aXZlcy9jaGFuZ2VzLWNvbnRyb2xsZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2RpcmVjdGl2ZXMvc2VsZWN0YWJsZS5kaXJlY3RpdmUnO1xuIl19