ngx-vflow 0.13.0-0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) 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/node/node.component.mjs +8 -7
  4. package/esm2022/lib/vflow/components/vflow/vflow.component.mjs +23 -10
  5. package/esm2022/lib/vflow/directives/root-pointer.directive.mjs +1 -1
  6. package/esm2022/lib/vflow/directives/selectable.directive.mjs +5 -2
  7. package/esm2022/lib/vflow/models/minimap.model.mjs +7 -0
  8. package/esm2022/lib/vflow/public-components/minimap/minimap.component.mjs +119 -0
  9. package/esm2022/lib/vflow/public-components/resizable/resizable.component.mjs +124 -180
  10. package/esm2022/lib/vflow/services/draggable.service.mjs +40 -19
  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/services/keyboard.service.mjs +45 -0
  14. package/esm2022/lib/vflow/services/node-changes.service.mjs +6 -7
  15. package/esm2022/lib/vflow/services/selection.service.mjs +12 -5
  16. package/esm2022/lib/vflow/types/keyboard-action.type.mjs +2 -0
  17. package/esm2022/lib/vflow/utils/get-os.mjs +24 -0
  18. package/esm2022/lib/vflow/utils/transform-background.mjs +6 -0
  19. package/esm2022/lib/vflow/vflow.module.mjs +11 -3
  20. package/esm2022/public-api.mjs +3 -1
  21. package/fesm2022/ngx-vflow.mjs +423 -242
  22. package/fesm2022/ngx-vflow.mjs.map +1 -1
  23. package/lib/vflow/components/background/background.component.d.ts +3 -6
  24. package/lib/vflow/components/default-node/default-node.component.d.ts +6 -0
  25. package/lib/vflow/components/vflow/vflow.component.d.ts +6 -2
  26. package/lib/vflow/directives/root-pointer.directive.d.ts +10 -16
  27. package/lib/vflow/directives/space-point-context.directive.d.ts +1 -15
  28. package/lib/vflow/models/edge.model.d.ts +17 -1
  29. package/lib/vflow/models/minimap.model.d.ts +4 -0
  30. package/lib/vflow/public-components/minimap/minimap.component.d.ts +49 -0
  31. package/lib/vflow/public-components/resizable/resizable.component.d.ts +6 -11
  32. package/lib/vflow/services/draggable.service.d.ts +2 -0
  33. package/lib/vflow/services/flow-entities.service.d.ts +7 -5
  34. package/lib/vflow/services/flow-settings.service.d.ts +2 -0
  35. package/lib/vflow/services/keyboard.service.d.ts +11 -0
  36. package/lib/vflow/services/selection.service.d.ts +1 -0
  37. package/lib/vflow/types/keyboard-action.type.d.ts +2 -0
  38. package/lib/vflow/utils/get-os.d.ts +1 -0
  39. package/lib/vflow/utils/transform-background.d.ts +2 -0
  40. package/lib/vflow/vflow.module.d.ts +21 -19
  41. package/package.json +1 -1
  42. package/public-api.d.ts +2 -0
@@ -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,45 @@
1
+ import { Injectable, signal } from '@angular/core';
2
+ import { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';
3
+ import { fromEvent, merge, switchMap, tap } from 'rxjs';
4
+ import { getOS } from '../utils/get-os';
5
+ import * as i0 from "@angular/core";
6
+ export class KeyboardService {
7
+ constructor() {
8
+ this.actions = signal({
9
+ multiSelection: [
10
+ getOS() === 'macos' ? 'MetaLeft' : 'ControlLeft',
11
+ getOS() === 'macos' ? 'MetaRight' : 'ControlRight',
12
+ ]
13
+ });
14
+ this.actionsActive = {
15
+ multiSelection: false
16
+ };
17
+ toObservable(this.actions).pipe(switchMap(() => merge(fromEvent(document, 'keydown').pipe(tap(event => {
18
+ for (const action in this.actions()) {
19
+ const keyCodes = this.actions()[action] ?? [];
20
+ if (keyCodes.includes(event.code)) {
21
+ this.actionsActive[action] = true;
22
+ }
23
+ }
24
+ })), fromEvent(document, 'keyup').pipe(tap(event => {
25
+ for (const action in this.actions()) {
26
+ const keyCodes = this.actions()[action] ?? [];
27
+ if (keyCodes.includes(event.code)) {
28
+ this.actionsActive[action] = false;
29
+ }
30
+ }
31
+ })))), takeUntilDestroyed()).subscribe();
32
+ }
33
+ setShortcuts(newActions) {
34
+ this.actions.update((actions) => ({ ...actions, ...newActions }));
35
+ }
36
+ isActiveAction(action) {
37
+ return this.actionsActive[action];
38
+ }
39
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KeyboardService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
40
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KeyboardService }); }
41
+ }
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KeyboardService, decorators: [{
43
+ type: Injectable
44
+ }], ctorParameters: function () { return []; } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9zZXJ2aWNlcy9rZXlib2FyZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFrQixNQUFNLGVBQWUsQ0FBQztBQUVuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBR3hDLE1BQU0sT0FBTyxlQUFlO0lBWTFCO1FBWFEsWUFBTyxHQUFzQyxNQUFNLENBQUM7WUFDMUQsY0FBYyxFQUFFO2dCQUNkLEtBQUssRUFBRSxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxhQUFhO2dCQUNoRCxLQUFLLEVBQUUsS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsY0FBYzthQUNuRDtTQUNGLENBQUMsQ0FBQztRQUVLLGtCQUFhLEdBQW9DO1lBQ3ZELGNBQWMsRUFBRSxLQUFLO1NBQ3RCLENBQUM7UUFHQSxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDN0IsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUNiLEtBQUssQ0FDSCxTQUFTLENBQWdCLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQ2hELEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNWLEtBQUssTUFBTSxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFO2dCQUNuQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsTUFBd0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFFaEUsSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTtvQkFDakMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUF3QixDQUFDLEdBQUcsSUFBSSxDQUFDO2lCQUNyRDthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsRUFFRCxTQUFTLENBQWdCLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQzlDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNWLEtBQUssTUFBTSxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFO2dCQUNuQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsTUFBd0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFFaEUsSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTtvQkFDakMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUF3QixDQUFDLEdBQUcsS0FBSyxDQUFDO2lCQUN0RDthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FDRixDQUNGLEVBQ0Qsa0JBQWtCLEVBQUUsQ0FDckIsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRU0sWUFBWSxDQUFDLFVBQTZCO1FBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxPQUFPLEVBQUUsR0FBRyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVNLGNBQWMsQ0FBQyxNQUFzQjtRQUMxQyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDbkMsQ0FBQzsrR0FuRFUsZUFBZTttSEFBZixlQUFlOzs0RkFBZixlQUFlO2tCQUQzQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgc2lnbmFsLCBXcml0YWJsZVNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgS2V5Ym9hcmRBY3Rpb24sIEtleWJvYXJkU2hvcnRjdXRzIH0gZnJvbSAnLi4vdHlwZXMva2V5Ym9hcmQtYWN0aW9uLnR5cGUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkLCB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIG1lcmdlLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZ2V0T1MgfSBmcm9tICcuLi91dGlscy9nZXQtb3MnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgS2V5Ym9hcmRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBhY3Rpb25zOiBXcml0YWJsZVNpZ25hbDxLZXlib2FyZFNob3J0Y3V0cz4gPSBzaWduYWwoe1xuICAgIG11bHRpU2VsZWN0aW9uOiBbXG4gICAgICBnZXRPUygpID09PSAnbWFjb3MnID8gJ01ldGFMZWZ0JyA6ICdDb250cm9sTGVmdCcsXG4gICAgICBnZXRPUygpID09PSAnbWFjb3MnID8gJ01ldGFSaWdodCcgOiAnQ29udHJvbFJpZ2h0JyxcbiAgICBdXG4gIH0pO1xuXG4gIHByaXZhdGUgYWN0aW9uc0FjdGl2ZTogUmVjb3JkPEtleWJvYXJkQWN0aW9uLCBib29sZWFuPiA9IHtcbiAgICBtdWx0aVNlbGVjdGlvbjogZmFsc2VcbiAgfTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0b09ic2VydmFibGUodGhpcy5hY3Rpb25zKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCgpID0+XG4gICAgICAgIG1lcmdlKFxuICAgICAgICAgIGZyb21FdmVudDxLZXlib2FyZEV2ZW50Pihkb2N1bWVudCwgJ2tleWRvd24nKS5waXBlKFxuICAgICAgICAgICAgdGFwKGV2ZW50ID0+IHtcbiAgICAgICAgICAgICAgZm9yIChjb25zdCBhY3Rpb24gaW4gdGhpcy5hY3Rpb25zKCkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBrZXlDb2RlcyA9IHRoaXMuYWN0aW9ucygpW2FjdGlvbiBhcyBLZXlib2FyZEFjdGlvbl0gPz8gW107XG5cbiAgICAgICAgICAgICAgICBpZiAoa2V5Q29kZXMuaW5jbHVkZXMoZXZlbnQuY29kZSkpIHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuYWN0aW9uc0FjdGl2ZVthY3Rpb24gYXMgS2V5Ym9hcmRBY3Rpb25dID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKSxcblxuICAgICAgICAgIGZyb21FdmVudDxLZXlib2FyZEV2ZW50Pihkb2N1bWVudCwgJ2tleXVwJykucGlwZShcbiAgICAgICAgICAgIHRhcChldmVudCA9PiB7XG4gICAgICAgICAgICAgIGZvciAoY29uc3QgYWN0aW9uIGluIHRoaXMuYWN0aW9ucygpKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qga2V5Q29kZXMgPSB0aGlzLmFjdGlvbnMoKVthY3Rpb24gYXMgS2V5Ym9hcmRBY3Rpb25dID8/IFtdO1xuXG4gICAgICAgICAgICAgICAgaWYgKGtleUNvZGVzLmluY2x1ZGVzKGV2ZW50LmNvZGUpKSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLmFjdGlvbnNBY3RpdmVbYWN0aW9uIGFzIEtleWJvYXJkQWN0aW9uXSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgICksXG4gICAgICB0YWtlVW50aWxEZXN0cm95ZWQoKVxuICAgICkuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0U2hvcnRjdXRzKG5ld0FjdGlvbnM6IEtleWJvYXJkU2hvcnRjdXRzKSB7XG4gICAgdGhpcy5hY3Rpb25zLnVwZGF0ZSgoYWN0aW9ucykgPT4gKHsgLi4uYWN0aW9ucywgLi4ubmV3QWN0aW9ucyB9KSk7XG4gIH1cblxuICBwdWJsaWMgaXNBY3RpdmVBY3Rpb24oYWN0aW9uOiBLZXlib2FyZEFjdGlvbikge1xuICAgIHJldHVybiB0aGlzLmFjdGlvbnNBY3RpdmVbYWN0aW9uXVxuICB9XG59XG4iXX0=
@@ -14,12 +14,11 @@ export class NodesChangeService {
14
14
  // Check for nodes list change and watch for specific node from this list change its position
15
15
  switchMap((nodes) => merge(...nodes.map(node => node.point$.pipe(
16
16
  // skip initial position from signal
17
- skip(1), map(() => node))))),
18
- // For now it's a single node, later this list will also be filled
19
- // with child node position changes
20
- map(changedNode => [
21
- { type: 'position', id: changedNode.node.id, point: changedNode.point() }
22
- ]));
17
+ skip(1), map(() => node))))), map((changedNode) => {
18
+ return this.entitiesService.nodes()
19
+ .filter(node => node === changedNode || node.selected())
20
+ .map(node => ({ type: 'position', id: node.node.id, point: node.point() }));
21
+ }));
23
22
  this.nodeSizeChange$ = toObservable(this.entitiesService.nodes)
24
23
  .pipe(switchMap((nodes) => merge(...nodes.map(node => node.size$.pipe(skip(1), map(() => node))))), map(changedNode => [
25
24
  { type: 'size', id: changedNode.node.id, size: changedNode.size() }
@@ -43,4 +42,4 @@ export class NodesChangeService {
43
42
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NodesChangeService, decorators: [{
44
43
  type: Injectable
45
44
  }] });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1jaGFuZ2VzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvc2VydmljZXMvbm9kZS1jaGFuZ2VzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksR0FBRyxNQUFNLDRCQUE0QixDQUFDO0FBQzNELE9BQU8sRUFBYyxjQUFjLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUdsSSxtREFBbUQ7QUFDbkQseUNBQXlDO0FBQ3pDLE1BQU0sbUJBQW1CLEdBQUcsRUFBRSxDQUFBO0FBRzlCLE1BQU0sT0FBTyxrQkFBa0I7SUFEL0I7UUFFWSxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBO1FBRTdDLHlCQUFvQixHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQzthQUN0RSxJQUFJO1FBQ0gsNkZBQTZGO1FBQzdGLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ2xCLEtBQUssQ0FDSCxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJO1FBQ2Qsb0NBQW9DO1FBQ3BDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFDUCxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQ2hCLENBQ0YsQ0FDRixDQUNGO1FBQ0Qsa0VBQWtFO1FBQ2xF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QUMsRUFDUCxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQ2hCLENBQ0YsQ0FDRixDQUNGLEVBQ0QsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztZQUNuQixFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxXQUFXLENBQUMsUUFBUSxFQUFFLEVBQUU7U0FDOUUsQ0FBQyxDQUNnQyxDQUFBO1FBRXRCLGFBQVEsR0FBNkIsS0FBSyxDQUN4RCxJQUFJLENBQUMsb0JBQW9CLEVBQ3pCLElBQUksQ0FBQyxlQUFlLEVBQ3BCLElBQUksQ0FBQyxjQUFjLEVBQ25CLElBQUksQ0FBQyxpQkFBaUIsRUFDdEIsSUFBSSxDQUFDLG1CQUFtQixDQUN6QixDQUFDLElBQUk7UUFDSixtREFBbUQ7UUFDbkQsNkNBQTZDO1FBQzdDLFNBQVMsQ0FBQyxjQUFjLEVBQUUsbUJBQW1CLENBQUMsQ0FDL0MsQ0FBQTtLQUNGOytHQTlGWSxrQkFBa0I7bUhBQWxCLGtCQUFrQjs7NEZBQWxCLGtCQUFrQjtrQkFEOUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmxvd0VudGl0aWVzU2VydmljZSB9IGZyb20gJy4vZmxvdy1lbnRpdGllcy5zZXJ2aWNlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBhc3luY1NjaGVkdWxlciwgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCBtZXJnZSwgb2JzZXJ2ZU9uLCBwYWlyd2lzZSwgc2tpcCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBOb2RlQ2hhbmdlIH0gZnJvbSAnLi4vdHlwZXMvbm9kZS1jaGFuZ2UudHlwZSc7XG5cbi8vIHRoaXMgZGVsYXkgZml4ZXMgdGhlIGNhc2VzIHdoZW4gY2hhbmdlIHRyaWdnZXJlZFxuLy8gYnV0IHRoZSBmbG93IG5vdCB5ZXQgZnlsbHkgcmUtcmVuZGVyZWRcbmNvbnN0IERFTEFZX0ZPUl9TQ0hFRFVMRVIgPSAyNVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTm9kZXNDaGFuZ2VTZXJ2aWNlIHtcbiAgcHJvdGVjdGVkIGVudGl0aWVzU2VydmljZSA9IGluamVjdChGbG93RW50aXRpZXNTZXJ2aWNlKVxuXG4gIHByb3RlY3RlZCBub2Rlc1Bvc2l0aW9uQ2hhbmdlJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmVudGl0aWVzU2VydmljZS5ub2RlcylcbiAgICAucGlwZShcbiAgICAgIC8vIENoZWNrIGZvciBub2RlcyBsaXN0IGNoYW5nZSBhbmQgd2F0Y2ggZm9yIHNwZWNpZmljIG5vZGUgZnJvbSB0aGlzIGxpc3QgY2hhbmdlIGl0cyBwb3NpdGlvblxuICAgICAgc3dpdGNoTWFwKChub2RlcykgPT5cbiAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgLi4ubm9kZXMubWFwKG5vZGUgPT5cbiAgICAgICAgICAgIG5vZGUucG9pbnQkLnBpcGUoXG4gICAgICAgICAgICAgIC8vIHNraXAgaW5pdGlhbCBwb3NpdGlvbiBmcm9tIHNpZ25hbFxuICAgICAgICAgICAgICBza2lwKDEpLFxuICAgICAgICAgICAgICBtYXAoKCkgPT4gbm9kZSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgICksXG4gICAgICAvLyBGb3Igbm93IGl0J3MgYSBzaW5nbGUgbm9kZSwgbGF0ZXIgdGhpcyBsaXN0IHdpbGwgYWxzbyBiZSBmaWxsZWRcbiAgICAgIC8vIHdpdGggY2hpbGQgbm9kZSBwb3NpdGlvbiBjaGFuZ2VzXG4gICAgICBtYXAoY2hhbmdlZE5vZGUgPT4gW1xuICAgICAgICB7IHR5cGU6ICdwb3NpdGlvbicsIGlkOiBjaGFuZ2VkTm9kZS5ub2RlLmlkLCBwb2ludDogY2hhbmdlZE5vZGUucG9pbnQoKSB9XG4gICAgICBdKVxuICAgICkgc2F0aXNmaWVzIE9ic2VydmFibGU8Tm9kZUNoYW5nZVtdPlxuXG4gIHByb3RlY3RlZCBub2RlU2l6ZUNoYW5nZSQgPSB0b09ic2VydmFibGUodGhpcy5lbnRpdGllc1NlcnZpY2Uubm9kZXMpXG4gICAgLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKG5vZGVzKSA9PlxuICAgICAgICBtZXJnZShcbiAgICAgICAgICAuLi5ub2Rlcy5tYXAobm9kZSA9PlxuICAgICAgICAgICAgbm9kZS5zaXplJC5waXBlKFxuICAgICAgICAgICAgICBza2lwKDEpLFxuICAgICAgICAgICAgICBtYXAoKCkgPT4gbm9kZSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgICksXG4gICAgICBtYXAoY2hhbmdlZE5vZGUgPT4gW1xuICAgICAgICB7IHR5cGU6ICdzaXplJywgaWQ6IGNoYW5nZWROb2RlLm5vZGUuaWQsIHNpemU6IGNoYW5nZWROb2RlLnNpemUoKSB9XG4gICAgICBdKVxuICAgICkgc2F0aXNmaWVzIE9ic2VydmFibGU8Tm9kZUNoYW5nZVtdPlxuXG4gIHByb3RlY3RlZCBub2RlQWRkQ2hhbmdlJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmVudGl0aWVzU2VydmljZS5ub2RlcylcbiAgICAucGlwZShcbiAgICAgIHBhaXJ3aXNlKCksXG4gICAgICBtYXAoKFtvbGRMaXN0LCBuZXdMaXN0XSkgPT5cbiAgICAgICAgbmV3TGlzdC5maWx0ZXIobm9kZSA9PiAhb2xkTGlzdC5pbmNsdWRlcyhub2RlKSlcbiAgICAgICksXG4gICAgICBmaWx0ZXIoKG5vZGVzKSA9PiAhIW5vZGVzLmxlbmd0aCksXG4gICAgICBtYXAoKG5vZGVzKSA9PlxuICAgICAgICBub2Rlcy5tYXAobm9kZSA9PiAoeyB0eXBlOiAnYWRkJywgaWQ6IG5vZGUubm9kZS5pZCB9KSlcbiAgICAgIClcbiAgICApIHNhdGlzZmllcyBPYnNlcnZhYmxlPE5vZGVDaGFuZ2VbXT5cblxuICBwcm90ZWN0ZWQgbm9kZVJlbW92ZUNoYW5nZSQgPSB0b09ic2VydmFibGUodGhpcy5lbnRpdGllc1NlcnZpY2Uubm9kZXMpXG4gICAgLnBpcGUoXG4gICAgICBwYWlyd2lzZSgpLFxuICAgICAgbWFwKChbb2xkTGlzdCwgbmV3TGlzdF0pID0+XG4gICAgICAgIG9sZExpc3QuZmlsdGVyKG5vZGUgPT4gIW5ld0xpc3QuaW5jbHVkZXMobm9kZSkpXG4gICAgICApLFxuICAgICAgZmlsdGVyKChub2RlcykgPT4gISFub2Rlcy5sZW5ndGgpLFxuICAgICAgbWFwKChub2RlcykgPT5cbiAgICAgICAgbm9kZXMubWFwKG5vZGUgPT4gKHsgdHlwZTogJ3JlbW92ZScsIGlkOiBub2RlLm5vZGUuaWQgfSkpXG4gICAgICApXG4gICAgKSBzYXRpc2ZpZXMgT2JzZXJ2YWJsZTxOb2RlQ2hhbmdlW10+XG5cbiAgcHJvdGVjdGVkIG5vZGVTZWxlY3RlZENoYW5nZSQgPSB0b09ic2VydmFibGUodGhpcy5lbnRpdGllc1NlcnZpY2Uubm9kZXMpXG4gICAgLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKG5vZGVzKSA9PlxuICAgICAgICBtZXJnZShcbiAgICAgICAgICAuLi5ub2Rlcy5tYXAobm9kZSA9PlxuICAgICAgICAgICAgbm9kZS5zZWxlY3RlZCQucGlwZShcbiAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICAgICAgc2tpcCgxKSxcbiAgICAgICAgICAgICAgbWFwKCgpID0+IG5vZGUpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKSxcbiAgICAgIG1hcCgoY2hhbmdlZE5vZGUpID0+IFtcbiAgICAgICAgeyB0eXBlOiAnc2VsZWN0JywgaWQ6IGNoYW5nZWROb2RlLm5vZGUuaWQsIHNlbGVjdGVkOiBjaGFuZ2VkTm9kZS5zZWxlY3RlZCgpIH1cbiAgICAgIF0pXG4gICAgKSBzYXRpc2ZpZXMgT2JzZXJ2YWJsZTxOb2RlQ2hhbmdlW10+XG5cbiAgcHVibGljIHJlYWRvbmx5IGNoYW5nZXMkOiBPYnNlcnZhYmxlPE5vZGVDaGFuZ2VbXT4gPSBtZXJnZShcbiAgICB0aGlzLm5vZGVzUG9zaXRpb25DaGFuZ2UkLFxuICAgIHRoaXMubm9kZVNpemVDaGFuZ2UkLFxuICAgIHRoaXMubm9kZUFkZENoYW5nZSQsXG4gICAgdGhpcy5ub2RlUmVtb3ZlQ2hhbmdlJCxcbiAgICB0aGlzLm5vZGVTZWxlY3RlZENoYW5nZSRcbiAgKS5waXBlKFxuICAgIC8vIHRoaXMgZml4ZXMgYSBidWcgd2hlbiBvbiBmaXJlIG5vZGUgZXZlbnQgY2hhbmdlLFxuICAgIC8vIHlvdSBjYW4ndCBnZXQgdmFsaWQgbGlzdCBvZiBkZXRhY2hlZCBlZGdlc1xuICAgIG9ic2VydmVPbihhc3luY1NjaGVkdWxlciwgREVMQVlfRk9SX1NDSEVEVUxFUiksXG4gIClcbn1cbiJdfQ==
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1jaGFuZ2VzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvc2VydmljZXMvbm9kZS1jaGFuZ2VzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksR0FBRyxNQUFNLDRCQUE0QixDQUFDO0FBQzNELE9BQU8sRUFBYyxjQUFjLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFPLE1BQU0sTUFBTSxDQUFDOztBQUd2SSxtREFBbUQ7QUFDbkQseUNBQXlDO0FBQ3pDLE1BQU0sbUJBQW1CLEdBQUcsRUFBRSxDQUFBO0FBRzlCLE1BQU0sT0FBTyxrQkFBa0I7SUFEL0I7UUFFWSxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBO1FBRTdDLHlCQUFvQixHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQzthQUN0RSxJQUFJO1FBQ0gsNkZBQTZGO1FBQzdGLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ2xCLEtBQUssQ0FDSCxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJO1FBQ2Qsb0NBQW9DO1FBQ3BDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFDUCxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQ2hCLENBQ0YsQ0FDRixDQUNGLEVBQ0QsR0FBRyxDQUFDLENB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Q0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ2xCLEtBQUssQ0FDSCxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FDbEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQ2pCLG9CQUFvQixFQUFFLEVBQ3RCLElBQUksQ0FBQyxDQUFDLENBQUMsRUFDUCxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQ2hCLENBQ0YsQ0FDRixDQUNGLEVBQ0QsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztZQUNuQixFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxXQUFXLENBQUMsUUFBUSxFQUFFLEVBQUU7U0FDOUUsQ0FBQyxDQUNnQyxDQUFBO1FBRXRCLGFBQVEsR0FBNkIsS0FBSyxDQUN4RCxJQUFJLENBQUMsb0JBQW9CLEVBQ3pCLElBQUksQ0FBQyxlQUFlLEVBQ3BCLElBQUksQ0FBQyxjQUFjLEVBQ25CLElBQUksQ0FBQyxpQkFBaUIsRUFDdEIsSUFBSSxDQUFDLG1CQUFtQixDQUN6QixDQUFDLElBQUk7UUFDSixtREFBbUQ7UUFDbkQsNkNBQTZDO1FBQzdDLFNBQVMsQ0FBQyxjQUFjLEVBQUUsbUJBQW1CLENBQUMsQ0FDL0MsQ0FBQTtLQUNGOytHQTlGWSxrQkFBa0I7bUhBQWxCLGtCQUFrQjs7NEZBQWxCLGtCQUFrQjtrQkFEOUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmxvd0VudGl0aWVzU2VydmljZSB9IGZyb20gJy4vZmxvdy1lbnRpdGllcy5zZXJ2aWNlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBhc3luY1NjaGVkdWxlciwgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCBtZXJnZSwgb2JzZXJ2ZU9uLCBwYWlyd2lzZSwgc2tpcCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE5vZGVDaGFuZ2UgfSBmcm9tICcuLi90eXBlcy9ub2RlLWNoYW5nZS50eXBlJztcblxuLy8gdGhpcyBkZWxheSBmaXhlcyB0aGUgY2FzZXMgd2hlbiBjaGFuZ2UgdHJpZ2dlcmVkXG4vLyBidXQgdGhlIGZsb3cgbm90IHlldCBmeWxseSByZS1yZW5kZXJlZFxuY29uc3QgREVMQVlfRk9SX1NDSEVEVUxFUiA9IDI1XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOb2Rlc0NoYW5nZVNlcnZpY2Uge1xuICBwcm90ZWN0ZWQgZW50aXRpZXNTZXJ2aWNlID0gaW5qZWN0KEZsb3dFbnRpdGllc1NlcnZpY2UpXG5cbiAgcHJvdGVjdGVkIG5vZGVzUG9zaXRpb25DaGFuZ2UkID0gdG9PYnNlcnZhYmxlKHRoaXMuZW50aXRpZXNTZXJ2aWNlLm5vZGVzKVxuICAgIC5waXBlKFxuICAgICAgLy8gQ2hlY2sgZm9yIG5vZGVzIGxpc3QgY2hhbmdlIGFuZCB3YXRjaCBmb3Igc3BlY2lmaWMgbm9kZSBmcm9tIHRoaXMgbGlzdCBjaGFuZ2UgaXRzIHBvc2l0aW9uXG4gICAgICBzd2l0Y2hNYXAoKG5vZGVzKSA9PlxuICAgICAgICBtZXJnZShcbiAgICAgICAgICAuLi5ub2Rlcy5tYXAobm9kZSA9PlxuICAgICAgICAgICAgbm9kZS5wb2ludCQucGlwZShcbiAgICAgICAgICAgICAgLy8gc2tpcCBpbml0aWFsIHBvc2l0aW9uIGZyb20gc2lnbmFsXG4gICAgICAgICAgICAgIHNraXAoMSksXG4gICAgICAgICAgICAgIG1hcCgoKSA9PiBub2RlKVxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKSxcbiAgICAgIG1hcCgoY2hhbmdlZE5vZGUpID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZW50aXRpZXNTZXJ2aWNlLm5vZGVzKClcbiAgICAgICAgICAuZmlsdGVyKG5vZGUgPT4gbm9kZSA9PT0gY2hhbmdlZE5vZGUgfHwgbm9kZS5zZWxlY3RlZCgpKVxuICAgICAgICAgIC5tYXAobm9kZSA9PiAoeyB0eXBlOiAncG9zaXRpb24nLCBpZDogbm9kZS5ub2RlLmlkLCBwb2ludDogbm9kZS5wb2ludCgpIH0pKVxuICAgICAgfSlcbiAgICApIHNhdGlzZmllcyBPYnNlcnZhYmxlPE5vZGVDaGFuZ2VbXT5cblxuICBwcm90ZWN0ZWQgbm9kZVNpemVDaGFuZ2UkID0gdG9PYnNlcnZhYmxlKHRoaXMuZW50aXRpZXNTZXJ2aWNlLm5vZGVzKVxuICAgIC5waXBlKFxuICAgICAgc3dpdGNoTWFwKChub2RlcykgPT5cbiAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgLi4ubm9kZXMubWFwKG5vZGUgPT5cbiAgICAgICAgICAgIG5vZGUuc2l6ZSQucGlwZShcbiAgICAgICAgICAgICAgc2tpcCgxKSxcbiAgICAgICAgICAgICAgbWFwKCgpID0+IG5vZGUpXG4gICAgICAgICAgICApXG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICApLFxuICAgICAgbWFwKGNoYW5nZWROb2RlID0+IFtcbiAgICAgICAgeyB0eXBlOiAnc2l6ZScsIGlkOiBjaGFuZ2VkTm9kZS5ub2RlLmlkLCBzaXplOiBjaGFuZ2VkTm9kZS5zaXplKCkgfVxuICAgICAgXSlcbiAgICApIHNhdGlzZmllcyBPYnNlcnZhYmxlPE5vZGVDaGFuZ2VbXT5cblxuICBwcm90ZWN0ZWQgbm9kZUFkZENoYW5nZSQgPSB0b09ic2VydmFibGUodGhpcy5lbnRpdGllc1NlcnZpY2Uubm9kZXMpXG4gICAgLnBpcGUoXG4gICAgICBwYWlyd2lzZSgpLFxuICAgICAgbWFwKChbb2xkTGlzdCwgbmV3TGlzdF0pID0+XG4gICAgICAgIG5ld0xpc3QuZmlsdGVyKG5vZGUgPT4gIW9sZExpc3QuaW5jbHVkZXMobm9kZSkpXG4gICAgICApLFxuICAgICAgZmlsdGVyKChub2RlcykgPT4gISFub2Rlcy5sZW5ndGgpLFxuICAgICAgbWFwKChub2RlcykgPT5cbiAgICAgICAgbm9kZXMubWFwKG5vZGUgPT4gKHsgdHlwZTogJ2FkZCcsIGlkOiBub2RlLm5vZGUuaWQgfSkpXG4gICAgICApXG4gICAgKSBzYXRpc2ZpZXMgT2JzZXJ2YWJsZTxOb2RlQ2hhbmdlW10+XG5cbiAgcHJvdGVjdGVkIG5vZGVSZW1vdmVDaGFuZ2UkID0gdG9PYnNlcnZhYmxlKHRoaXMuZW50aXRpZXNTZXJ2aWNlLm5vZGVzKVxuICAgIC5waXBlKFxuICAgICAgcGFpcndpc2UoKSxcbiAgICAgIG1hcCgoW29sZExpc3QsIG5ld0xpc3RdKSA9PlxuICAgICAgICBvbGRMaXN0LmZpbHRlcihub2RlID0+ICFuZXdMaXN0LmluY2x1ZGVzKG5vZGUpKVxuICAgICAgKSxcbiAgICAgIGZpbHRlcigobm9kZXMpID0+ICEhbm9kZXMubGVuZ3RoKSxcbiAgICAgIG1hcCgobm9kZXMpID0+XG4gICAgICAgIG5vZGVzLm1hcChub2RlID0+ICh7IHR5cGU6ICdyZW1vdmUnLCBpZDogbm9kZS5ub2RlLmlkIH0pKVxuICAgICAgKVxuICAgICkgc2F0aXNmaWVzIE9ic2VydmFibGU8Tm9kZUNoYW5nZVtdPlxuXG4gIHByb3RlY3RlZCBub2RlU2VsZWN0ZWRDaGFuZ2UkID0gdG9PYnNlcnZhYmxlKHRoaXMuZW50aXRpZXNTZXJ2aWNlLm5vZGVzKVxuICAgIC5waXBlKFxuICAgICAgc3dpdGNoTWFwKChub2RlcykgPT5cbiAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgLi4ubm9kZXMubWFwKG5vZGUgPT5cbiAgICAgICAgICAgIG5vZGUuc2VsZWN0ZWQkLnBpcGUoXG4gICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgICAgICAgIHNraXAoMSksXG4gICAgICAgICAgICAgIG1hcCgoKSA9PiBub2RlKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgICksXG4gICAgICBtYXAoKGNoYW5nZWROb2RlKSA9PiBbXG4gICAgICAgIHsgdHlwZTogJ3NlbGVjdCcsIGlkOiBjaGFuZ2VkTm9kZS5ub2RlLmlkLCBzZWxlY3RlZDogY2hhbmdlZE5vZGUuc2VsZWN0ZWQoKSB9XG4gICAgICBdKVxuICAgICkgc2F0aXNmaWVzIE9ic2VydmFibGU8Tm9kZUNoYW5nZVtdPlxuXG4gIHB1YmxpYyByZWFkb25seSBjaGFuZ2VzJDogT2JzZXJ2YWJsZTxOb2RlQ2hhbmdlW10+ID0gbWVyZ2UoXG4gICAgdGhpcy5ub2Rlc1Bvc2l0aW9uQ2hhbmdlJCxcbiAgICB0aGlzLm5vZGVTaXplQ2hhbmdlJCxcbiAgICB0aGlzLm5vZGVBZGRDaGFuZ2UkLFxuICAgIHRoaXMubm9kZVJlbW92ZUNoYW5nZSQsXG4gICAgdGhpcy5ub2RlU2VsZWN0ZWRDaGFuZ2UkXG4gICkucGlwZShcbiAgICAvLyB0aGlzIGZpeGVzIGEgYnVnIHdoZW4gb24gZmlyZSBub2RlIGV2ZW50IGNoYW5nZSxcbiAgICAvLyB5b3UgY2FuJ3QgZ2V0IHZhbGlkIGxpc3Qgb2YgZGV0YWNoZWQgZWRnZXNcbiAgICBvYnNlcnZlT24oYXN5bmNTY2hlZHVsZXIsIERFTEFZX0ZPUl9TQ0hFRFVMRVIpLFxuICApXG59XG4iXX0=
@@ -2,10 +2,12 @@ import { Injectable, inject } from '@angular/core';
2
2
  import { FlowEntitiesService } from './flow-entities.service';
3
3
  import { Subject, tap } from 'rxjs';
4
4
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
+ import { KeyboardService } from './keyboard.service';
5
6
  import * as i0 from "@angular/core";
6
7
  export class SelectionService {
7
8
  constructor() {
8
9
  this.flowEntitiesService = inject(FlowEntitiesService);
10
+ this.keyboardService = inject(KeyboardService);
9
11
  this.viewport$ = new Subject();
10
12
  this.resetSelection = this.viewport$.pipe(tap(({ start, end, target }) => {
11
13
  if (start && end && target) {
@@ -27,10 +29,15 @@ export class SelectionService {
27
29
  this.viewport$.next(viewport);
28
30
  }
29
31
  select(entity) {
30
- // undo select for previously selected nodes
31
- this.flowEntitiesService.entities()
32
- .filter(n => n.selected)
33
- .forEach(n => n.selected.set(false));
32
+ // ? May be not a responsibility of this method
33
+ // if entity already selected - do nothing
34
+ if (entity?.selected()) {
35
+ return;
36
+ }
37
+ if (!this.keyboardService.isActiveAction('multiSelection')) {
38
+ // undo select for previously selected nodes
39
+ this.flowEntitiesService.entities().forEach(n => n.selected.set(false));
40
+ }
34
41
  if (entity) {
35
42
  // select passed entity
36
43
  entity.selected.set(true);
@@ -42,4 +49,4 @@ export class SelectionService {
42
49
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectionService, decorators: [{
43
50
  type: Injectable
44
51
  }] });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvc2VydmljZXMvc2VsZWN0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRTlFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTlELE9BQU8sRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQVloRSxNQUFNLE9BQU8sZ0JBQWdCO0lBRDdCO1FBSVUsd0JBQW1CLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUE7UUFFL0MsY0FBUyxHQUFHLElBQUksT0FBTyxFQUF3QixDQUFBO1FBRS9DLG1CQUFjLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQzVDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFO1lBQzdCLElBQUksS0FBSyxJQUFJLEdBQUcsSUFBSSxNQUFNLEVBQUU7Z0JBQzFCLE1BQU0sS0FBSyxHQUFHLGdCQUFnQixDQUFDLEtBQUssQ0FBQTtnQkFFcEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQTtnQkFDdkMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQTtnQkFFdkMsbUJBQW1CO2dCQUNuQixNQUFNLE9BQU8sR0FBRyxLQUFLLEdBQUcsS0FBSyxJQUFJLEtBQUssR0FBRyxLQUFLLENBQUE7Z0JBQzlDLHdEQUF3RDtnQkFDeEQsTUFBTSxlQUFlLEdBQUcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFBO2dCQUV0RCxJQUFJLE9BQU8sSUFBSSxlQUFlLEVBQUU7b0JBQzlCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUE7aUJBQ2xCO2FBQ0Y7UUFDSCxDQUFDLENBQUMsRUFDRixrQkFBa0IsRUFBRSxDQUNyQixDQUFDLFNBQVMsRUFBRSxDQUFBO0tBa0JkO2FBM0NnQixVQUFLLEdBQUcsQ0FBQyxBQUFKLENBQUk7SUE0QmpCLFdBQVcsQ0FBQyxRQUE4QjtRQUMvQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUMvQixDQUFDO0lBRU0sTUFBTSxDQUFDLE1BQXlCO1FBQ3JDLDRDQUE0QztRQUM1QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFO2FBQ2hDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7YUFDdkIsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtRQUV0QyxJQUFJLE1BQU0sRUFBRTtZQUNWLHVCQUF1QjtZQUN2QixNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtTQUMxQjtJQUNILENBQUM7K0dBM0NVLGdCQUFnQjttSEFBaEIsZ0JBQWdCOzs0RkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgZWZmZWN0LCBpbmplY3QsIHNpZ25hbCwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWaWV3cG9ydFN0YXRlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy92aWV3cG9ydC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRmxvd0VudGl0aWVzU2VydmljZSB9IGZyb20gJy4vZmxvdy1lbnRpdGllcy5zZXJ2aWNlJztcbmltcG9ydCB7IEZsb3dFbnRpdHkgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2Zsb3ctZW50aXR5LmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuZXhwb3J0IGludGVyZmFjZSBWaWV3cG9ydEZvclNlbGVjdGlvbiB7XG4gIHN0YXJ0OiBWaWV3cG9ydFN0YXRlXG4gIGVuZDogVmlld3BvcnRTdGF0ZVxuICAvKipcbiAgICogVGFyZ2V0IG1heSBub3QgZXhpc3QgaWYgdmlld3BvcnQgY2hhbmdlIG1hZGUgcHJvZ3JhbW1hdGljYWxseVxuICAgKi9cbiAgdGFyZ2V0PzogRWxlbWVudFxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2VsZWN0aW9uU2VydmljZSB7XG4gIHByaXZhdGUgc3RhdGljIGRlbHRhID0gNlxuXG4gIHByaXZhdGUgZmxvd0VudGl0aWVzU2VydmljZSA9IGluamVjdChGbG93RW50aXRpZXNTZXJ2aWNlKVxuXG4gIHByb3RlY3RlZCB2aWV3cG9ydCQgPSBuZXcgU3ViamVjdDxWaWV3cG9ydEZvclNlbGVjdGlvbj4oKVxuXG4gIHByb3RlY3RlZCByZXNldFNlbGVjdGlvbiA9IHRoaXMudmlld3BvcnQkLnBpcGUoXG4gICAgdGFwKCh7IHN0YXJ0LCBlbmQsIHRhcmdldCB9KSA9PiB7XG4gICAgICBpZiAoc3RhcnQgJiYgZW5kICYmIHRhcmdldCkge1xuICAgICAgICBjb25zdCBkZWx0YSA9IFNlbGVjdGlvblNlcnZpY2UuZGVsdGFcblxuICAgICAgICBjb25zdCBkaWZmWCA9IE1hdGguYWJzKGVuZC54IC0gc3RhcnQueClcbiAgICAgICAgY29uc3QgZGlmZlkgPSBNYXRoLmFicyhlbmQueSAtIHN0YXJ0LnkpXG5cbiAgICAgICAgLy8gY2xpY2sgKG5vdCBkcmFnKVxuICAgICAgICBjb25zdCBpc0NsaWNrID0gZGlmZlggPCBkZWx0YSAmJiBkaWZmWSA8IGRlbHRhXG4gICAgICAgIC8vIGRvIG5vdCByZXNldCBpZiBldmVudCBjaGFpbiBjb250YWlucyBzZWxlY3RhYmxlIGVsZW1zXG4gICAgICAgIGNvbnN0IGlzTm90U2VsZWN0YWJsZSA9ICF0YXJnZXQuY2xvc2VzdCgnLnNlbGVjdGFibGUnKVxuXG4gICAgICAgIGlmIChpc0NsaWNrICYmIGlzTm90U2VsZWN0YWJsZSkge1xuICAgICAgICAgIHRoaXMuc2VsZWN0KG51bGwpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KSxcbiAgICB0YWtlVW50aWxEZXN0cm95ZWQoKVxuICApLnN1YnNjcmliZSgpXG5cblxuICBwdWJsaWMgc2V0Vmlld3BvcnQodmlld3BvcnQ6IFZpZXdwb3J0Rm9yU2VsZWN0aW9uKSB7XG4gICAgdGhpcy52aWV3cG9ydCQubmV4dCh2aWV3cG9ydClcbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3QoZW50aXR5OiBGbG93RW50aXR5IHwgbnVsbCkge1xuICAgIC8vIHVuZG8gc2VsZWN0IGZvciBwcmV2aW91c2x5IHNlbGVjdGVkIG5vZGVzXG4gICAgdGhpcy5mbG93RW50aXRpZXNTZXJ2aWNlLmVudGl0aWVzKClcbiAgICAgIC5maWx0ZXIobiA9PiBuLnNlbGVjdGVkKVxuICAgICAgLmZvckVhY2gobiA9PiBuLnNlbGVjdGVkLnNldChmYWxzZSkpXG5cbiAgICBpZiAoZW50aXR5KSB7XG4gICAgICAvLyBzZWxlY3QgcGFzc2VkIGVudGl0eVxuICAgICAgZW50aXR5LnNlbGVjdGVkLnNldCh0cnVlKVxuICAgIH1cbiAgfVxufVxuIl19
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvc2VydmljZXMvc2VsZWN0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRTlFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTlELE9BQU8sRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFZckQsTUFBTSxPQUFPLGdCQUFnQjtJQUQ3QjtRQUlVLHdCQUFtQixHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBO1FBQ2pELG9CQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRXhDLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBd0IsQ0FBQTtRQUUvQyxtQkFBYyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUM1QyxHQUFHLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRTtZQUM3QixJQUFJLEtBQUssSUFBSSxHQUFHLElBQUksTUFBTSxFQUFFO2dCQUMxQixNQUFNLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUE7Z0JBRXBDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUE7Z0JBQ3ZDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUE7Z0JBRXZDLG1CQUFtQjtnQkFDbkIsTUFBTSxPQUFPLEdBQUcsS0FBSyxHQUFHLEtBQUssSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFBO2dCQUM5Qyx3REFBd0Q7Z0JBQ3hELE1BQU0sZUFBZSxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQTtnQkFFdEQsSUFBSSxPQUFPLElBQUksZUFBZSxFQUFFO29CQUM5QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFBO2lCQUNsQjthQUNGO1FBQ0gsQ0FBQyxDQUFDLEVBQ0Ysa0JBQWtCLEVBQUUsQ0FDckIsQ0FBQyxTQUFTLEVBQUUsQ0FBQTtLQXdCZDthQWxEZ0IsVUFBSyxHQUFHLENBQUMsQUFBSixDQUFJO0lBNkJqQixXQUFXLENBQUMsUUFBOEI7UUFDL0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDL0IsQ0FBQztJQUVNLE1BQU0sQ0FBQyxNQUF5QjtRQUNyQywrQ0FBK0M7UUFDL0MsMENBQTBDO1FBQzFDLElBQUksTUFBTSxFQUFFLFFBQVEsRUFBRSxFQUFFO1lBQ3RCLE9BQU07U0FDUDtRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO1lBQzFELDRDQUE0QztZQUM1QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtTQUN4RTtRQUVELElBQUksTUFBTSxFQUFFO1lBQ1YsdUJBQXVCO1lBQ3ZCLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO1NBQzFCO0lBQ0gsQ0FBQzsrR0FsRFUsZ0JBQWdCO21IQUFoQixnQkFBZ0I7OzRGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBlZmZlY3QsIGluamVjdCwgc2lnbmFsLCB1bnRyYWNrZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZpZXdwb3J0U3RhdGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3ZpZXdwb3J0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBGbG93RW50aXRpZXNTZXJ2aWNlIH0gZnJvbSAnLi9mbG93LWVudGl0aWVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmxvd0VudGl0eSB9IGZyb20gJy4uL2ludGVyZmFjZXMvZmxvdy1lbnRpdHkuaW50ZXJmYWNlJztcbmltcG9ydCB7IFN1YmplY3QsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgS2V5Ym9hcmRTZXJ2aWNlIH0gZnJvbSAnLi9rZXlib2FyZC5zZXJ2aWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBWaWV3cG9ydEZvclNlbGVjdGlvbiB7XG4gIHN0YXJ0OiBWaWV3cG9ydFN0YXRlXG4gIGVuZDogVmlld3BvcnRTdGF0ZVxuICAvKipcbiAgICogVGFyZ2V0IG1heSBub3QgZXhpc3QgaWYgdmlld3BvcnQgY2hhbmdlIG1hZGUgcHJvZ3JhbW1hdGljYWxseVxuICAgKi9cbiAgdGFyZ2V0PzogRWxlbWVudFxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2VsZWN0aW9uU2VydmljZSB7XG4gIHByaXZhdGUgc3RhdGljIGRlbHRhID0gNlxuXG4gIHByaXZhdGUgZmxvd0VudGl0aWVzU2VydmljZSA9IGluamVjdChGbG93RW50aXRpZXNTZXJ2aWNlKVxuICBwcml2YXRlIGtleWJvYXJkU2VydmljZSA9IGluamVjdChLZXlib2FyZFNlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCB2aWV3cG9ydCQgPSBuZXcgU3ViamVjdDxWaWV3cG9ydEZvclNlbGVjdGlvbj4oKVxuXG4gIHByb3RlY3RlZCByZXNldFNlbGVjdGlvbiA9IHRoaXMudmlld3BvcnQkLnBpcGUoXG4gICAgdGFwKCh7IHN0YXJ0LCBlbmQsIHRhcmdldCB9KSA9PiB7XG4gICAgICBpZiAoc3RhcnQgJiYgZW5kICYmIHRhcmdldCkge1xuICAgICAgICBjb25zdCBkZWx0YSA9IFNlbGVjdGlvblNlcnZpY2UuZGVsdGFcblxuICAgICAgICBjb25zdCBkaWZmWCA9IE1hdGguYWJzKGVuZC54IC0gc3RhcnQueClcbiAgICAgICAgY29uc3QgZGlmZlkgPSBNYXRoLmFicyhlbmQueSAtIHN0YXJ0LnkpXG5cbiAgICAgICAgLy8gY2xpY2sgKG5vdCBkcmFnKVxuICAgICAgICBjb25zdCBpc0NsaWNrID0gZGlmZlggPCBkZWx0YSAmJiBkaWZmWSA8IGRlbHRhXG4gICAgICAgIC8vIGRvIG5vdCByZXNldCBpZiBldmVudCBjaGFpbiBjb250YWlucyBzZWxlY3RhYmxlIGVsZW1zXG4gICAgICAgIGNvbnN0IGlzTm90U2VsZWN0YWJsZSA9ICF0YXJnZXQuY2xvc2VzdCgnLnNlbGVjdGFibGUnKVxuXG4gICAgICAgIGlmIChpc0NsaWNrICYmIGlzTm90U2VsZWN0YWJsZSkge1xuICAgICAgICAgIHRoaXMuc2VsZWN0KG51bGwpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KSxcbiAgICB0YWtlVW50aWxEZXN0cm95ZWQoKVxuICApLnN1YnNjcmliZSgpXG5cblxuICBwdWJsaWMgc2V0Vmlld3BvcnQodmlld3BvcnQ6IFZpZXdwb3J0Rm9yU2VsZWN0aW9uKSB7XG4gICAgdGhpcy52aWV3cG9ydCQubmV4dCh2aWV3cG9ydClcbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3QoZW50aXR5OiBGbG93RW50aXR5IHwgbnVsbCkge1xuICAgIC8vID8gTWF5IGJlIG5vdCBhIHJlc3BvbnNpYmlsaXR5IG9mIHRoaXMgbWV0aG9kXG4gICAgLy8gaWYgZW50aXR5IGFscmVhZHkgc2VsZWN0ZWQgLSBkbyBub3RoaW5nXG4gICAgaWYgKGVudGl0eT8uc2VsZWN0ZWQoKSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmtleWJvYXJkU2VydmljZS5pc0FjdGl2ZUFjdGlvbignbXVsdGlTZWxlY3Rpb24nKSkge1xuICAgICAgLy8gdW5kbyBzZWxlY3QgZm9yIHByZXZpb3VzbHkgc2VsZWN0ZWQgbm9kZXNcbiAgICAgIHRoaXMuZmxvd0VudGl0aWVzU2VydmljZS5lbnRpdGllcygpLmZvckVhY2gobiA9PiBuLnNlbGVjdGVkLnNldChmYWxzZSkpXG4gICAgfVxuXG4gICAgaWYgKGVudGl0eSkge1xuICAgICAgLy8gc2VsZWN0IHBhc3NlZCBlbnRpdHlcbiAgICAgIGVudGl0eS5zZWxlY3RlZC5zZXQodHJ1ZSlcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtYWN0aW9uLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvdHlwZXMva2V5Ym9hcmQtYWN0aW9uLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIEtleWJvYXJkQWN0aW9uID0gJ211bHRpU2VsZWN0aW9uJ1xuXG5leHBvcnQgdHlwZSBLZXlib2FyZFNob3J0Y3V0cyA9IFJlY29yZDxLZXlib2FyZEFjdGlvbiwgbnVsbCB8IHN0cmluZ1tdPjtcbiJdfQ==
@@ -0,0 +1,24 @@
1
+ export function getOS() {
2
+ const userAgent = window.navigator.userAgent.toLowerCase();
3
+ const macosPlatforms = /(macintosh|macintel|macppc|mac68k|macos)/i;
4
+ const windowsPlatforms = /(win32|win64|windows|wince)/i;
5
+ const iosPlatforms = /(iphone|ipad|ipod)/i;
6
+ let os = null;
7
+ if (macosPlatforms.test(userAgent)) {
8
+ os = "macos";
9
+ }
10
+ else if (iosPlatforms.test(userAgent)) {
11
+ os = "ios";
12
+ }
13
+ else if (windowsPlatforms.test(userAgent)) {
14
+ os = "windows";
15
+ }
16
+ else if (/android/.test(userAgent)) {
17
+ os = "android";
18
+ }
19
+ else if (!os && /linux/.test(userAgent)) {
20
+ os = "linux";
21
+ }
22
+ return os;
23
+ }
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW9zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L3V0aWxzL2dldC1vcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsS0FBSztJQUNuQixNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQTtJQUMxRCxNQUFNLGNBQWMsR0FBRywyQ0FBMkMsQ0FBQTtJQUNsRSxNQUFNLGdCQUFnQixHQUFHLDhCQUE4QixDQUFBO0lBQ3ZELE1BQU0sWUFBWSxHQUFHLHFCQUFxQixDQUFBO0lBRTFDLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQTtJQUViLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtRQUNsQyxFQUFFLEdBQUcsT0FBZ0IsQ0FBQztLQUN2QjtTQUFNLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtRQUN2QyxFQUFFLEdBQUcsS0FBYyxDQUFDO0tBQ3JCO1NBQU0sSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7UUFDM0MsRUFBRSxHQUFHLFNBQWtCLENBQUM7S0FDekI7U0FBTSxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7UUFDcEMsRUFBRSxHQUFHLFNBQWtCLENBQUM7S0FDekI7U0FBTSxJQUFJLENBQUMsRUFBRSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7UUFDekMsRUFBRSxHQUFHLE9BQWdCLENBQUM7S0FDdkI7SUFFRCxPQUFPLEVBQUUsQ0FBQTtBQUNYLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gZ2V0T1MoKSB7XG4gIGNvbnN0IHVzZXJBZ2VudCA9IHdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKClcbiAgY29uc3QgbWFjb3NQbGF0Zm9ybXMgPSAvKG1hY2ludG9zaHxtYWNpbnRlbHxtYWNwcGN8bWFjNjhrfG1hY29zKS9pXG4gIGNvbnN0IHdpbmRvd3NQbGF0Zm9ybXMgPSAvKHdpbjMyfHdpbjY0fHdpbmRvd3N8d2luY2UpL2lcbiAgY29uc3QgaW9zUGxhdGZvcm1zID0gLyhpcGhvbmV8aXBhZHxpcG9kKS9pXG5cbiAgbGV0IG9zID0gbnVsbFxuXG4gIGlmIChtYWNvc1BsYXRmb3Jtcy50ZXN0KHVzZXJBZ2VudCkpIHtcbiAgICBvcyA9IFwibWFjb3NcIiBhcyBjb25zdDtcbiAgfSBlbHNlIGlmIChpb3NQbGF0Zm9ybXMudGVzdCh1c2VyQWdlbnQpKSB7XG4gICAgb3MgPSBcImlvc1wiIGFzIGNvbnN0O1xuICB9IGVsc2UgaWYgKHdpbmRvd3NQbGF0Zm9ybXMudGVzdCh1c2VyQWdlbnQpKSB7XG4gICAgb3MgPSBcIndpbmRvd3NcIiBhcyBjb25zdDtcbiAgfSBlbHNlIGlmICgvYW5kcm9pZC8udGVzdCh1c2VyQWdlbnQpKSB7XG4gICAgb3MgPSBcImFuZHJvaWRcIiBhcyBjb25zdDtcbiAgfSBlbHNlIGlmICghb3MgJiYgL2xpbnV4Ly50ZXN0KHVzZXJBZ2VudCkpIHtcbiAgICBvcyA9IFwibGludXhcIiBhcyBjb25zdDtcbiAgfVxuXG4gIHJldHVybiBvc1xufVxuIl19
@@ -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==
@@ -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,
@@ -76,7 +82,8 @@ export class VflowModule {
76
82
  HandleTemplateDirective], imports: [CommonModule], 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,
@@ -93,9 +100,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmZsb3cubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L3ZmbG93Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsOEJBQThCLEVBQUUscUJBQXFCLEVBQUUsMEJBQTBCLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyTixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNuRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUN4RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNsRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzlGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOztBQUV4RixNQUFNLFVBQVUsR0FBRztJQUNqQixjQUFjO0lBQ2QsYUFBYTtJQUNiLG9CQUFvQjtJQUNwQixhQUFhO0lBQ2Isa0JBQWtCO0lBQ2xCLG1CQUFtQjtJQUNuQixlQUFlO0lBQ2YsYUFBYTtJQUNiLG1CQUFtQjtJQUNuQixrQkFBa0I7SUFDbEIsZ0JBQWdCO0NBQ2pCLENBQUE7QUFFRCxNQUFNLFVBQVUsR0FBRztJQUNqQiwwQkFBMEI7SUFDMUIsbUJBQW1CO0lBQ25CLHlCQUF5QjtJQUN6Qix1QkFBdUI7SUFDdkIsNkJBQTZCO0lBQzdCLG1CQUFtQjtJQUNuQixnQkFBZ0I7SUFDaEIsb0JBQW9CO0lBQ3BCLDJCQUEyQjtDQUM1QixDQUFBO0FBRUQsTUFBTSxrQkFBa0IsR0FBRztJQUN6Qix5QkFBeUI7SUFDekIsMEJBQTBCO0lBQzFCLDhCQUE4QjtJQUM5QixxQkFBcUI7SUFDckIsMkJBQTJCO0lBQzNCLHVCQUF1QjtDQUN4QixDQUFBO0FBY0QsTUFBTSxPQUFPLFdBQVc7K0dBQVgsV0FBVztnSEFBWCxXQUFXLGlCQTlDdEIsY0FBYztZQUNkLGFBQWE7WUFDYixvQkFBb0I7WUFDcEIsYUFBYTtZQUNiLGtCQUFrQjtZQUNsQixtQkFBbUI7WUFDbkIsZUFBZTtZQUNmLGFBQWE7WUFDYixtQkFBbUI7WUFDbkIsa0JBQWtCO1lBQ2xCLGdCQUFnQixFQUloQiwwQkFBMEI7WUFDMUIsbUJBQW1CO1lBQ25CLHlCQUF5QjtZQUN6Qix1QkFBdUI7WUFDdkIsNkJBQTZCO1lBQzdCLG1CQUFtQjtZQUNuQixnQkFBZ0I7WUFDaEIsb0JBQW9CO1lBQ3BCLDJCQUEyQixFQUkzQix5QkFBeUI7WUFDekIsMEJBQTBCO1lBQzFCLDhCQUE4QjtZQUM5QixxQkFBcUI7WUFDckIsMkJBQTJCO1lBQzNCLHVCQUF1QixhQUliLFlBQVksYUFFcEIsY0FBYztZQUNkLGVBQWU7WUFDZixrQkFBa0I7WUFDbEIsbUJBQW1CO1lBQ25CLGdCQUFnQixFQWZsQix5QkFBeUI7WUFDekIsMEJBQTBCO1lBQzFCLDhCQUE4QjtZQUM5QixxQkFBcUI7WUFDckIsMkJBQTJCO1lBQzNCLHVCQUF1QjtnSEFlWixXQUFXLFlBWFosWUFBWTs7NEZBV1gsV0FBVztrQkFadkIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLE9BQU8sRUFBRTt3QkFDUCxjQUFjO3dCQUNkLGVBQWU7d0JBQ2Ysa0JBQWtCO3dCQUNsQixtQkFBbUI7d0JBQ25CLGdCQUFnQjt3QkFDaEIsR0FBRyxrQkFBa0I7cUJBQ3RCO29CQUNELFlBQVksRUFBRSxDQUFDLEdBQUcsVUFBVSxFQUFFLEdBQUcsVUFBVSxFQUFFLEdBQUcsa0JBQWtCLENBQUM7aUJBQ3BFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWZmxvd0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy92Zmxvdy92Zmxvdy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTm9kZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ub2RlL25vZGUuY29tcG9uZW50JztcbmltcG9ydCB7IE1hcENvbnRleHREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvbWFwLWNvbnRleHQuZGlyZWN0aXZlJztcbmltcG9ydCB7IEVkZ2VDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZWRnZS9lZGdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFZGdlTGFiZWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZWRnZS1sYWJlbC9lZGdlLWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb25uZWN0aW9uVGVtcGxhdGVEaXJlY3RpdmUsIEVkZ2VMYWJlbEh0bWxUZW1wbGF0ZURpcmVjdGl2ZSwgRWRnZVRlbXBsYXRlRGlyZWN0aXZlLCBHcm91cE5vZGVUZW1wbGF0ZURpcmVjdGl2ZSwgSGFuZGxlVGVtcGxhdGVEaXJlY3RpdmUsIE5vZGVIdG1sVGVtcGxhdGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvdGVtcGxhdGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbm5lY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY29ubmVjdGlvbi9jb25uZWN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTcGFjZVBvaW50Q29udGV4dERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9zcGFjZS1wb2ludC1jb250ZXh0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBSb290U3ZnUmVmZXJlbmNlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3JlZmVyZW5jZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUm9vdFN2Z0NvbnRleHREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvcm9vdC1zdmctY29udGV4dC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGVmc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9kZWZzL2RlZnMuY29tcG9uZW50JztcbmltcG9ydCB7IEhhbmRsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oYW5kbGUvaGFuZGxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIYW5kbGVTaXplQ29udHJvbGxlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9oYW5kbGUtc2l6ZS1jb250cm9sbGVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTZWxlY3RhYmxlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3NlbGVjdGFibGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IFBvaW50ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvcG9pbnRlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUm9vdFBvaW50ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvcm9vdC1wb2ludGVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCYWNrZ3JvdW5kQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2JhY2tncm91bmQvYmFja2dyb3VuZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmxvd1NpemVDb250cm9sbGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Zsb3ctc2l6ZS1jb250cm9sbGVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBSZXNpemFibGVDb21wb25lbnQgfSBmcm9tICcuL3B1YmxpYy1jb21wb25lbnRzL3Jlc2l6YWJsZS9yZXNpemFibGUuY29tcG9uZW50JztcbmltcG9ydCB7IE1pbmlNYXBDb21wb25lbnQgfSBmcm9tICcuL3B1YmxpYy1jb21wb25lbnRzL21pbmltYXAvbWluaW1hcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGVmYXVsdE5vZGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZGVmYXVsdC1ub2RlL2RlZmF1bHQtbm9kZS5jb21wb25lbnQnO1xuXG5jb25zdCBjb21wb25lbnRzID0gW1xuICBWZmxvd0NvbXBvbmVudCxcbiAgTm9kZUNvbXBvbmVudCxcbiAgRGVmYXVsdE5vZGVDb21wb25lbnQsXG4gIEVkZ2VDb21wb25lbnQsXG4gIEVkZ2VMYWJlbENvbXBvbmVudCxcbiAgQ29ubmVjdGlvbkNvbXBvbmVudCxcbiAgSGFuZGxlQ29tcG9uZW50LFxuICBEZWZzQ29tcG9uZW50LFxuICBCYWNrZ3JvdW5kQ29tcG9uZW50LFxuICBSZXNpemFibGVDb21wb25lbnQsXG4gIE1pbmlNYXBDb21wb25lbnRcbl1cblxuY29uc3QgZGlyZWN0aXZlcyA9IFtcbiAgU3BhY2VQb2ludENvbnRleHREaXJlY3RpdmUsXG4gIE1hcENvbnRleHREaXJlY3RpdmUsXG4gIFJvb3RTdmdSZWZlcmVuY2VEaXJlY3RpdmUsXG4gIFJvb3RTdmdDb250ZXh0RGlyZWN0aXZlLFxuICBIYW5kbGVTaXplQ29udHJvbGxlckRpcmVjdGl2ZSxcbiAgU2VsZWN0YWJsZURpcmVjdGl2ZSxcbiAgUG9pbnRlckRpcmVjdGl2ZSxcbiAgUm9vdFBvaW50ZXJEaXJlY3RpdmUsXG4gIEZsb3dTaXplQ29udHJvbGxlckRpcmVjdGl2ZSxcbl1cblxuY29uc3QgdGVtcGxhdGVEaXJlY3RpdmVzID0gW1xuICBOb2RlSHRtbFRlbXBsYXRlRGlyZWN0aXZlLFxuICBHcm91cE5vZGVUZW1wbGF0ZURpcmVjdGl2ZSxcbiAgRWRnZUxhYmVsSHRtbFRlbXBsYXRlRGlyZWN0aXZlLFxuICBFZGdlVGVtcGxhdGVEaXJlY3RpdmUsXG4gIENvbm5lY3Rpb25UZW1wbGF0ZURpcmVjdGl2ZSxcbiAgSGFuZGxlVGVtcGxhdGVEaXJlY3RpdmVcbl1cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtcbiAgICBWZmxvd0NvbXBvbmVudCxcbiAgICBIYW5kbGVDb21wb25lbnQsXG4gICAgUmVzaXphYmxlQ29tcG9uZW50LFxuICAgIFNlbGVjdGFibGVEaXJlY3RpdmUsXG4gICAgTWluaU1hcENvbXBvbmVudCxcbiAgICAuLi50ZW1wbGF0ZURpcmVjdGl2ZXNcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbLi4uY29tcG9uZW50cywgLi4uZGlyZWN0aXZlcywgLi4udGVtcGxhdGVEaXJlY3RpdmVzXSxcbn0pXG5leHBvcnQgY2xhc3MgVmZsb3dNb2R1bGUgeyB9XG4iXX0=
@@ -19,15 +19,17 @@ export * from './lib/vflow/types/edge-change.type';
19
19
  export * from './lib/vflow/types/position.type';
20
20
  export * from './lib/vflow/types/background.type';
21
21
  export * from './lib/vflow/types/connection-mode.type';
22
+ export * from './lib/vflow/types/keyboard-action.type';
22
23
  // Components
23
24
  export * from './lib/vflow/components/vflow/vflow.component';
24
25
  export * from './lib/vflow/components/handle/handle.component';
25
26
  export * from './lib/vflow/public-components/custom-node/custom-node.component';
26
27
  export * from './lib/vflow/public-components/custom-dynamic-node/custom-dynamic-node.component';
27
28
  export * from './lib/vflow/public-components/resizable/resizable.component';
29
+ export * from './lib/vflow/public-components/minimap/minimap.component';
28
30
  // Directives
29
31
  export * from './lib/vflow/directives/template.directive';
30
32
  export * from './lib/vflow/directives/connection-controller.directive';
31
33
  export * from './lib/vflow/directives/changes-controller.directive';
32
34
  export * from './lib/vflow/directives/selectable.directive';
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLGNBQWMsMEJBQTBCLENBQUM7QUFFekMsYUFBYTtBQUNiLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHlDQUF5QyxDQUFDO0FBRXhELGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLCtDQUErQyxDQUFDO0FBRTlELFFBQVE7QUFDUixjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsd0NBQXdDLENBQUM7QUFFdkQsYUFBYTtBQUNiLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLGlFQUFpRSxDQUFDO0FBQ2hGLGNBQWMsaUZBQWlGLENBQUM7QUFDaEcsY0FBYyw2REFBNkQsQ0FBQztBQUU1RSxhQUFhO0FBQ2IsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyw2Q0FBNkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIE1vZHVsZXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3ZmbG93Lm1vZHVsZSc7XG5cbi8vIEludGVyZmFjZXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvbm9kZS5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9wb2ludC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9lZGdlLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2VkZ2UtbGFiZWwuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvY29ubmVjdGlvbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9jb25uZWN0aW9uLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2Nvbm5lY3Rpb24tc2V0dGluZ3MuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvaGFuZGxlLXBvc2l0aW9ucy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9tYXJrZXIuaW50ZXJmYWNlJztcbmV4cG9ydCB7IFZpZXdwb3J0U3RhdGUgfSBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL3ZpZXdwb3J0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2NvbXBvbmVudC1ub2RlLWV2ZW50LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2ZpdC12aWV3LW9wdGlvbnMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvb3B0aW1pemF0aW9uLmludGVyZmFjZSc7XG5cbi8vIFR5cGVzXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy90eXBlcy9ub2RlLWNoYW5nZS50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL2VkZ2UtY2hhbmdlLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdHlwZXMvcG9zaXRpb24udHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy90eXBlcy9iYWNrZ3JvdW5kLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdHlwZXMvY29ubmVjdGlvbi1tb2RlLnR5cGUnO1xuXG4vLyBDb21wb25lbnRzXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9jb21wb25lbnRzL3ZmbG93L3ZmbG93LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9jb21wb25lbnRzL2hhbmRsZS9oYW5kbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3B1YmxpYy1jb21wb25lbnRzL2N1c3RvbS1ub2RlL2N1c3RvbS1ub2RlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9jdXN0b20tZHluYW1pYy1ub2RlL2N1c3RvbS1keW5hbWljLW5vZGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3B1YmxpYy1jb21wb25lbnRzL3Jlc2l6YWJsZS9yZXNpemFibGUuY29tcG9uZW50JztcblxuLy8gRGlyZWN0aXZlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvZGlyZWN0aXZlcy90ZW1wbGF0ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvZGlyZWN0aXZlcy9jb25uZWN0aW9uLWNvbnRyb2xsZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2RpcmVjdGl2ZXMvY2hhbmdlcy1jb250cm9sbGVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9kaXJlY3RpdmVzL3NlbGVjdGFibGUuZGlyZWN0aXZlJztcbiJdfQ==
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLGNBQWMsMEJBQTBCLENBQUM7QUFFekMsYUFBYTtBQUNiLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHlDQUF5QyxDQUFDO0FBRXhELGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLCtDQUErQyxDQUFDO0FBRTlELFFBQVE7QUFDUixjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx3Q0FBd0MsQ0FBQztBQUV2RCxhQUFhO0FBQ2IsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyxpRkFBaUYsQ0FBQztBQUNoRyxjQUFjLDZEQUE2RCxDQUFDO0FBQzVFLGNBQWMseURBQXlELENBQUE7QUFFdkUsYUFBYTtBQUNiLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsNkNBQTZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBNb2R1bGVzXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy92Zmxvdy5tb2R1bGUnO1xuXG4vLyBJbnRlcmZhY2VzXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL25vZGUuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvcG9pbnQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvZWRnZS5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9lZGdlLWxhYmVsLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2Nvbm5lY3Rpb24uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvY29ubmVjdGlvbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9jb25uZWN0aW9uLXNldHRpbmdzLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2hhbmRsZS1wb3NpdGlvbnMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvbWFya2VyLmludGVyZmFjZSc7XG5leHBvcnQgeyBWaWV3cG9ydFN0YXRlIH0gZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy92aWV3cG9ydC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9jb21wb25lbnQtbm9kZS1ldmVudC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9maXQtdmlldy1vcHRpb25zLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL29wdGltaXphdGlvbi5pbnRlcmZhY2UnO1xuXG4vLyBUeXBlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdHlwZXMvbm9kZS1jaGFuZ2UudHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy90eXBlcy9lZGdlLWNoYW5nZS50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL3Bvc2l0aW9uLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdHlwZXMvYmFja2dyb3VuZC50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL2Nvbm5lY3Rpb24tbW9kZS50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL2tleWJvYXJkLWFjdGlvbi50eXBlJztcblxuLy8gQ29tcG9uZW50c1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvY29tcG9uZW50cy92Zmxvdy92Zmxvdy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvY29tcG9uZW50cy9oYW5kbGUvaGFuZGxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9jdXN0b20tbm9kZS9jdXN0b20tbm9kZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvcHVibGljLWNvbXBvbmVudHMvY3VzdG9tLWR5bmFtaWMtbm9kZS9jdXN0b20tZHluYW1pYy1ub2RlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9yZXNpemFibGUvcmVzaXphYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9taW5pbWFwL21pbmltYXAuY29tcG9uZW50J1xuXG4vLyBEaXJlY3RpdmVzXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9kaXJlY3RpdmVzL3RlbXBsYXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9kaXJlY3RpdmVzL2Nvbm5lY3Rpb24tY29udHJvbGxlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvZGlyZWN0aXZlcy9jaGFuZ2VzLWNvbnRyb2xsZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2RpcmVjdGl2ZXMvc2VsZWN0YWJsZS5kaXJlY3RpdmUnO1xuIl19