nuxeo-development-framework 4.1.0 → 4.1.2

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 (89) hide show
  1. package/bundles/nuxeo-development-framework.umd.js +1025 -607
  2. package/bundles/nuxeo-development-framework.umd.js.map +1 -1
  3. package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-list/correspondence-relation-list.component.js +2 -2
  4. package/esm2015/lib/components/diagrams/components/circle-node/circle-node.component.js +6 -7
  5. package/esm2015/lib/components/diagrams/components/connection-label.component.js +92 -0
  6. package/esm2015/lib/components/diagrams/components/content-node/content-node.component.js +7 -8
  7. package/esm2015/lib/components/diagrams/components/custom-connection.component.js +68 -32
  8. package/esm2015/lib/components/diagrams/components/custom-socket.component.js +22 -19
  9. package/esm2015/lib/components/diagrams/components/gateway-node/gateway-node.component.js +18 -0
  10. package/esm2015/lib/components/diagrams/components/gateway-ports.component.js +118 -0
  11. package/esm2015/lib/components/diagrams/components/index.js +5 -1
  12. package/esm2015/lib/components/diagrams/components/node-inputs.component.js +34 -35
  13. package/esm2015/lib/components/diagrams/components/node-outputs.component.js +30 -31
  14. package/esm2015/lib/components/diagrams/components/node-ports.component.js +98 -0
  15. package/esm2015/lib/components/diagrams/components/remove-button.component.js +46 -43
  16. package/esm2015/lib/components/diagrams/components/template-node/template-node.component.js +6 -7
  17. package/esm2015/lib/components/diagrams/constants/node-type.js +2 -1
  18. package/esm2015/lib/components/diagrams/constants/sizes.js +2 -1
  19. package/esm2015/lib/components/diagrams/constants/status.js +4 -1
  20. package/esm2015/lib/components/diagrams/diagrams.module.js +14 -6
  21. package/esm2015/lib/components/diagrams/directive/diagram.directive.js +9 -6
  22. package/esm2015/lib/components/diagrams/editor/customize.js +16 -12
  23. package/esm2015/lib/components/diagrams/editor/editor.js +21 -19
  24. package/esm2015/lib/components/diagrams/editor/overrides/connection-path.transformers.js +32 -7
  25. package/esm2015/lib/components/diagrams/editor/path-plugin.js +10 -9
  26. package/esm2015/lib/components/diagrams/models/base-node.model.js +3 -2
  27. package/esm2015/lib/components/diagrams/models/connection.model.js +11 -4
  28. package/esm2015/lib/components/diagrams/models/gate-way.model.js +11 -0
  29. package/esm2015/lib/components/diagrams/models/index.js +2 -1
  30. package/esm2015/lib/components/diagrams/models/ports.model.js +14 -0
  31. package/esm2015/lib/components/diagrams/models/socket.model.js +5 -4
  32. package/esm2015/lib/components/diagrams/services/diagram.service.js +77 -29
  33. package/esm2015/lib/components/diagrams/services/workflow.service.js +14 -19
  34. package/esm2015/lib/components/diagrams/types/common.type.js +1 -1
  35. package/esm2015/lib/components/diagrams/types/connection-config.type.js +2 -0
  36. package/esm2015/lib/components/diagrams/types/connection-label.type.js +2 -0
  37. package/esm2015/lib/components/diagrams/types/diagram-config.type.js +1 -1
  38. package/esm2015/lib/components/diagrams/types/diagram-editor.type.js +1 -1
  39. package/esm2015/lib/components/diagrams/types/index.js +6 -2
  40. package/esm2015/lib/components/diagrams/types/node-definition.js +1 -1
  41. package/esm2015/lib/components/diagrams/types/path.type.js +1 -1
  42. package/esm2015/lib/components/diagrams/types/ports-config.type.js +2 -0
  43. package/esm2015/lib/components/diagrams/types/socket.type.js +2 -0
  44. package/esm2015/lib/components/diagrams/utilities/common.js +35 -0
  45. package/esm2015/lib/components/diagrams/utilities/index.js +3 -1
  46. package/esm2015/lib/components/diagrams/utilities/random.js +11 -0
  47. package/esm2015/lib/components/diagrams/utilities/remove.util.js +2 -2
  48. package/esm2015/lib/components/file-manger/components/create-modal/create-modal.component.js +238 -200
  49. package/esm2015/lib/components/file-manger/file-manger.module.js +10 -6
  50. package/esm2015/lib/shared/components/nuxeo-dialog/nuxeo.dialog.js +2 -2
  51. package/fesm2015/nuxeo-development-framework.js +1194 -640
  52. package/fesm2015/nuxeo-development-framework.js.map +1 -1
  53. package/lib/components/diagrams/components/base-node.component.d.ts +1 -0
  54. package/lib/components/diagrams/components/connection-label.component.d.ts +19 -0
  55. package/lib/components/diagrams/components/custom-connection.component.d.ts +5 -0
  56. package/lib/components/diagrams/components/gateway-node/gateway-node.component.d.ts +6 -0
  57. package/lib/components/diagrams/components/gateway-ports.component.d.ts +12 -0
  58. package/lib/components/diagrams/components/index.d.ts +4 -0
  59. package/lib/components/diagrams/components/node-ports.component.d.ts +13 -0
  60. package/lib/components/diagrams/constants/node-type.d.ts +1 -0
  61. package/lib/components/diagrams/constants/sizes.d.ts +1 -0
  62. package/lib/components/diagrams/constants/status.d.ts +3 -0
  63. package/lib/components/diagrams/diagrams.module.d.ts +12 -8
  64. package/lib/components/diagrams/editor/overrides/connection-path.transformers.d.ts +2 -7
  65. package/lib/components/diagrams/models/base-node.model.d.ts +3 -2
  66. package/lib/components/diagrams/models/connection.model.d.ts +9 -1
  67. package/lib/components/diagrams/models/gate-way.model.d.ts +8 -0
  68. package/lib/components/diagrams/models/index.d.ts +1 -0
  69. package/lib/components/diagrams/models/ports.model.d.ts +11 -0
  70. package/lib/components/diagrams/models/socket.model.d.ts +3 -1
  71. package/lib/components/diagrams/services/diagram.service.d.ts +20 -9
  72. package/lib/components/diagrams/services/workflow.service.d.ts +0 -1
  73. package/lib/components/diagrams/types/common.type.d.ts +5 -0
  74. package/lib/components/diagrams/types/connection-config.type.d.ts +11 -0
  75. package/lib/components/diagrams/types/connection-label.type.d.ts +4 -0
  76. package/lib/components/diagrams/types/diagram-config.type.d.ts +6 -0
  77. package/lib/components/diagrams/types/diagram-editor.type.d.ts +3 -2
  78. package/lib/components/diagrams/types/index.d.ts +5 -1
  79. package/lib/components/diagrams/types/node-definition.d.ts +1 -0
  80. package/lib/components/diagrams/types/path.type.d.ts +1 -0
  81. package/lib/components/diagrams/types/ports-config.type.d.ts +11 -0
  82. package/lib/components/diagrams/types/socket.type.d.ts +5 -0
  83. package/lib/components/diagrams/utilities/common.d.ts +19 -0
  84. package/lib/components/diagrams/utilities/index.d.ts +2 -0
  85. package/lib/components/diagrams/utilities/random.d.ts +1 -0
  86. package/lib/components/diagrams/utilities/remove.util.d.ts +1 -1
  87. package/lib/components/file-manger/components/create-modal/create-modal.component.d.ts +13 -19
  88. package/lib/components/file-manger/file-manger.module.d.ts +2 -1
  89. package/package.json +1 -1
@@ -1,11 +1,10 @@
1
1
  import { ChangeDetectionStrategy, Component } from '@angular/core';
2
2
  import { BaseNodeComponent } from '../base-node.component';
3
3
  import * as i0 from "@angular/core";
4
- import * as i1 from "../remove-button.component";
5
- import * as i2 from "../node-icon.component";
6
- import * as i3 from "../node-inputs.component";
7
- import * as i4 from "../node-outputs.component";
8
- import * as i5 from "@angular/common";
4
+ import * as i1 from "../node-ports.component";
5
+ import * as i2 from "../remove-button.component";
6
+ import * as i3 from "../node-icon.component";
7
+ import * as i4 from "@angular/common";
9
8
  export class TemplateNodeComponent extends BaseNodeComponent {
10
9
  ngOnInit() { }
11
10
  get templateOutletContext() {
@@ -22,7 +21,7 @@ export class TemplateNodeComponent extends BaseNodeComponent {
22
21
  }
23
22
  }
24
23
  TemplateNodeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TemplateNodeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
25
- TemplateNodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TemplateNodeComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"da-node da-node--{{ data.type }} {{\r\n data?.status ? ' da-node--' + data?.status : ''\r\n }} {{ data?.styleClass }}\"\r\n [style.--node-width]=\"data.width + 'px'\"\r\n [style.--node-height]=\"data.height + 'px'\"\r\n>\r\n <node-remove-button (remove)=\"removeNode()\" *ngIf=\"data?.config?.canRemove\">\r\n </node-remove-button>\r\n\r\n <node-icon\r\n *ngIf=\"data.content?.icon\"\r\n [icon]=\"data.content?.icon\"\r\n class=\"da-node__icon\"\r\n ></node-icon>\r\n\r\n <ng-container\r\n [ngTemplateOutlet]=\"data?.template || defaultTemplate\"\r\n [ngTemplateOutletContext]=\"templateOutletContext\"\r\n ></ng-container>\r\n\r\n <ng-template #defaultTemplate>\r\n <div class=\"da-node__title\">{{ data?.name }}</div>\r\n </ng-template>\r\n\r\n <node-inputs\r\n [direction]=\"data.directions.inputs\"\r\n [data]=\"data\"\r\n [seed]=\"seed\"\r\n [emit]=\"emit\"\r\n [sortByIndex]=\"sortByIndex\"\r\n ></node-inputs>\r\n\r\n <node-outputs\r\n [direction]=\"data.directions.outputs\"\r\n [data]=\"data\"\r\n [seed]=\"seed\"\r\n [emit]=\"emit\"\r\n [sortByIndex]=\"sortByIndex\"\r\n ></node-outputs>\r\n</div>\r\n", styles: [".da-node{--width: var(--node-width);--height: var(--node-height);--socket-offset-negative: 0;--socket-position-start: var(--socket-offset-negative) auto;--socket-position-end: auto var(--socket-offset-negative);width:var(--width);height:var(--height);display:var(--node-display, flex);justify-content:var(--node-justify, center);align-items:var(--node-items, center);flex-direction:var(--node-direction, column);border:var(--node-border, 1px solid #234990);border-radius:var(--node-radius, 10px);color:var(--node-color, #234990);background:var(--node-background, #fff);box-shadow:var(--node-shadow, unset);cursor:var(--node-cursor, pointer)}.da-node--draft{--node-color: var(--status-draft-color, #555);--node-background: var( --status-draft-background, #f5f5f5 );--node-border: var(--status-draft-border, 1px solid #555);--node-shadow: var(--status-draft-shadow, unset)}.da-node--upcoming{--node-color: var(--status-upcoming-color, var(--Primary-100, #234990));--node-background: var( --status-upcoming-background, #fff );--node-border: var(--status-upcoming-border, 1px solid var(--node-color, #234990));--node-shadow: var(--status-upcoming-shadow, unset)}.da-node--inProgress{--node-color: var(--status-progress-color, var(--orange-color, #f29339));--node-background: var( --status-progress-background, var(--light-orange-color, #fdf4dc) );--node-border: var(--status-progress-border, 1px solid var(--orange-color, #f29339));--node-shadow: var(--status-progress-shadow, var(--node-shadow, inset 0 0 0 2px var(--node-background), inset 0 0 0 3px var(--orange-color, #f29339)))}.da-node--completed{--node-color: var(--status-completed-color, var(--green-color, #05cd99));--node-background: var( --status-completed-background, var(--light-green-color, #f0fff0) );--node-border: var(--status-completed-border, 1px solid var(--green-color, #05cd99));--node-shadow: var(--status-completed-shadow, unset)}.da-node--approved{--node-color: var(--status-completed-color, var(--green-color, #05cd99));--node-background: var( --status-completed-background, var(--light-green-color, #f0fff0) );--node-border: var(--status-completed-border, 1px solid var(--green-color, #05cd99));--node-shadow: var(--status-completed-shadow, unset)}.da-node--rejected{--node-color: var(--status-rejected-color, var(--red-color, #bf0b30));--node-background: var( --status-rejected-background, var(--light-red-color, #ffe0e7) );--node-border: var(--status-rejected-border, 1px solid var(--red-color, #bf0b30));--node-shadow: var(--status-rejected-shadow, unset)}.da-node__check-status{position:absolute;position:var(--check-icon-position, absolute);inset:var(--check-icon-inset, -6px -6px auto auto);color:var(--check-icon-color)}.da-node__check-status--completed{--check-icon-color: var(--status-completed-color)}.da-node__check-status--rejected{--check-icon-color: var(--status-rejected-color)}.da-node__title{text-align:center;font-weight:600}.da-node__description,.da-node__title{color:var(--node-text-color, #28282d);font-size:var(--node-text-font-size, .8rem);text-align:var(--node-text-align, center);padding-inline:var(--node-text-inline, .4rem)}.da-node__icon{position:absolute;inset-inline-start:var(--node-icon-inset-inline, 5px);inset-block-start:var(--node-icon-inset-block, 5px)}.da-node__inputs,.da-node__outputs{position:var(--input-output-position, absolute);inset-inline:var(--in-out-inset-inline);inset-block:var(--in-out-inset-block);height:var(--socket-size, 16px)}.da-node__inputs__socket,.da-node__outputs__socket{height:var(--socket-size, 16px)}.da-node__inputs.inputs-top{--in-out-inset-block: var(--socket-position-start)}.da-node__inputs.inputs-bottom{--in-out-inset-block: var(--socket-position-end)}.da-node__inputs.inputs-start{--in-out-inset-inline: var(--socket-position-start)}.da-node__inputs.inputs-end{--in-out-inset-inline: var(--socket-position-end)}.da-node__outputs.outputs-top{--in-out-inset-block: var(--socket-offset-negative)}.da-node__outputs.outputs-bottom{--in-out-inset-block: var(--socket-position-end)}.da-node__outputs.outputs-start{--in-out-inset-inline: var(--socket-position-start)}.da-node__outputs.outputs-end{--in-out-inset-inline: var(--socket-position-end)}.da-node:hover{--remove-icon-inset: -8px -8px auto auto;--remove-icon-opacity: 1}\n", "\n :host {\n display: block;\n }\n "], components: [{ type: i1.RemoveButtonComponent, selector: "node-remove-button", outputs: ["remove"] }, { type: i2.NodeIconComponent, selector: "node-icon", inputs: ["icon"] }, { type: i3.NodeInputsComponent, selector: "node-inputs", inputs: ["direction", "data", "seed", "emit", "sortByIndex"] }, { type: i4.NodeOutputsComponent, selector: "node-outputs", inputs: ["direction", "data", "seed", "emit", "sortByIndex"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.Default });
24
+ TemplateNodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TemplateNodeComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div\r\n\tclass=\"da-node da-node--{{ data.type }} {{\r\n\t\tdata?.status ? ' da-node--' + data?.status : ''\r\n\t}} {{ data?.styleClass }}\"\r\n\t[style.--node-width]=\"data.width + 'px'\"\r\n\t[style.--node-height]=\"data.height + 'px'\"\r\n>\r\n\t<node-ports\r\n\t\t[inputsDirection]=\"data.directions.inputs\"\r\n\t\t[outputsDirection]=\"data.directions.outputs\"\r\n\t\t[data]=\"data\"\r\n\t\t[seed]=\"seed\"\r\n\t\t[emit]=\"emit\"\r\n\t\t[sortByIndex]=\"sortByIndex\"\r\n\t></node-ports>\r\n\t<div class=\"da-node__content\">\r\n\t\t<node-remove-button (remove)=\"removeNode()\" *ngIf=\"data?.config?.canRemove\">\r\n\t\t</node-remove-button>\r\n\r\n\t\t<node-icon\r\n\t\t\t*ngIf=\"data.content?.icon\"\r\n\t\t\t[icon]=\"data.content?.icon\"\r\n\t\t\tclass=\"da-node__icon\"\r\n\t\t></node-icon>\r\n\r\n\t\t<ng-container\r\n\t\t\t[ngTemplateOutlet]=\"data?.template || defaultTemplate\"\r\n\t\t\t[ngTemplateOutletContext]=\"templateOutletContext\"\r\n\t\t></ng-container>\r\n\r\n\t\t<ng-template #defaultTemplate>\r\n\t\t\t<div class=\"da-node__title\">{{ data?.name }}</div>\r\n\t\t</ng-template>\r\n\t</div>\r\n</div>\r\n", styles: [".da-node{--socket-size: 16px;--width: var(--node-width);--height: var(--node-height);width:var(--width);height:var(--height);display:var(--node-display, flex);justify-content:var(--node-justify, center);align-items:var(--node-items, center);flex-direction:var(--node-direction, column);border:var(--node-border, 1px solid #234990);border-radius:var(--node-radius, 10px);color:var(--node-color, #234990);background:var(--node-background, #fff);box-shadow:var(--node-shadow, unset);cursor:var(--node-cursor, pointer);z-index:var(--node-z-index, 1)}.da-node--draft{--node-color: var( --status-draft-color, #555 );--node-background: var( --status-draft-background, #f5f5f5 );--node-border: var( --status-draft-border, 1px solid #555 );--node-shadow: var( --status-draft-shadow, unset )}.da-node--upcoming{--node-color: var( --status-upcoming-color, var(--Primary-100, #234990) );--node-background: var( --status-upcoming-background, #fff );--node-border: var( --status-upcoming-border, 1px solid var(--node-color, #234990) );--node-shadow: var( --status-upcoming-shadow, unset )}.da-node--ready{--node-color: var( --status-ready-color, var(--Primary-100, #234990) );--node-background: var( --status-ready-background, #fff );--node-border: var( --status-ready-border, 1px solid var(--node-color, #234990) );--node-shadow: var( --status-ready-shadow, unset )}.da-node--suspended{--node-color: var( --status-suspended-color, var(--orange-color, #f29339) );--node-background: var( --status-suspended-background, var(--light-orange-color, #fdf4dc) );--node-border: var( --status-suspended-border, 1px solid var(--orange-color, #f29339) );--node-shadow: var( --status-suspended-shadow, var(--node-shadow, inset 0 0 0 2px var(--node-background), inset 0 0 0 3px var(--orange-color, #f29339)) )}.da-node--inProgress{--node-color: var( --status-progress-color, var(--orange-color, #f29339) );--node-background: var( --status-progress-background, var(--light-orange-color, #fdf4dc) );--node-border: var( --status-progress-border, 1px solid var(--orange-color, #f29339) );--node-shadow: var( --status-progress-shadow, var(--node-shadow, inset 0 0 0 2px var(--node-background), inset 0 0 0 3px var(--orange-color, #f29339)) )}.da-node--completed{--node-color: var( --status-completed-color, var(--green-color, #05cd99) );--node-background: var( --status-completed-background, var(--light-green-color, #f0fff0) );--node-border: var( --status-completed-border, 1px solid var(--green-color, #05cd99) );--node-shadow: var( --status-completed-shadow, unset )}.da-node--approved{--node-color: var( --status-completed-color, var(--green-color, #05cd99) );--node-background: var( --status-completed-background, var(--light-green-color, #f0fff0) );--node-border: var( --status-completed-border, 1px solid var(--green-color, #05cd99) );--node-shadow: var( --status-completed-shadow, unset )}.da-node--rejected{--node-color: var( --status-rejected-color, var(--red-color, #bf0b30) );--node-background: var( --status-rejected-background, var(--light-red-color, #ffe0e7) );--node-border: var( --status-rejected-border, 1px solid var(--red-color, #bf0b30) );--node-shadow: var( --status-rejected-shadow, unset )}.da-node--canceled{--node-color: var( --status-canceled-color, var(--red-color, #bf0b30) );--node-background: var( --status-canceled-background, var(--light-red-color, #ffe0e7) );--node-border: var( --status-canceled-border, 1px solid var(--red-color, #bf0b30) );--node-shadow: var( --status-canceled-shadow, unset )}.da-node__check-status{position:absolute;position:var(--check-icon-position, absolute);inset:var(--check-icon-inset, -6px -6px auto auto);color:var(--check-icon-color)}.da-node__check-status--completed{--check-icon-color: var(--status-completed-color)}.da-node__check-status--rejected{--check-icon-color: var(--status-rejected-color)}.da-node__content{width:calc(100% - var(--socket-size));height:calc(100% - var(--socket-size));display:var(--node-display, flex);justify-content:var(--node-justify, center);align-items:var(--node-items, center);flex-direction:var(--node-direction, column);z-index:var(--node-z-index, 1)}.da-node__title{text-align:center;font-weight:600}.da-node__description,.da-node__title{color:var(--node-text-color, #28282d);font-size:var(--node-text-font-size, .8rem);text-align:var(--node-text-align, center);padding-inline:var(--node-text-inline, .4rem)}.da-node__icon{position:absolute;inset-inline-start:var(--node-icon-inset-inline, 5px);inset-block-start:var(--node-icon-inset-block, 5px)}.da-node:hover{--remove-icon-inset: -8px -8px auto auto;--remove-icon-opacity: 1}\n", "\n :host {\n display: block;\n }\n "], components: [{ type: i1.NodePortsComponent, selector: "node-ports", inputs: ["inputsDirection", "outputsDirection", "data", "seed", "emit", "sortByIndex"] }, { type: i2.RemoveButtonComponent, selector: "node-remove-button", outputs: ["remove"] }, { type: i3.NodeIconComponent, selector: "node-icon", inputs: ["icon"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.Default });
26
25
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TemplateNodeComponent, decorators: [{
27
26
  type: Component,
28
27
  args: [{
@@ -38,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
38
37
  ],
39
38
  }]
40
39
  }] });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtbm9kZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2RpYWdyYW1zL2NvbXBvbmVudHMvdGVtcGxhdGUtbm9kZS90ZW1wbGF0ZS1ub2RlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZGlhZ3JhbXMvY29tcG9uZW50cy90ZW1wbGF0ZS1ub2RlL3RlbXBsYXRlLW5vZGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7OztBQWMzRCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsaUJBQStCO0lBQ3hFLFFBQVEsS0FBVSxDQUFDO0lBRW5CLElBQUkscUJBQXFCO1FBQ3ZCLE1BQU0sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUU3RCxPQUFPO1lBQ0wsU0FBUyxFQUFFO2dCQUNULE9BQU8sRUFBRSxPQUFPO2dCQUNoQixXQUFXO2dCQUNYLElBQUk7Z0JBQ0osTUFBTTtnQkFDTixFQUFFO2FBQ0g7U0FDRixDQUFDO0lBQ0osQ0FBQzs7bUhBZlUscUJBQXFCO3VHQUFyQixxQkFBcUIsMkVDaEJsQyw2cUNBeUNBOzRGRHpCYSxxQkFBcUI7a0JBWmpDLFNBQVM7bUJBQUM7b0JBQ1QsV0FBVyxFQUFFLGdDQUFnQztvQkFDN0MsU0FBUyxFQUFFLENBQUMsd0JBQXdCLENBQUM7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxPQUFPO29CQUNoRCxNQUFNLEVBQUU7d0JBQ047Ozs7S0FJQztxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVGVtcGxhdGVOb2RlIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcclxuaW1wb3J0IHsgQmFzZU5vZGVDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLW5vZGUuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlVXJsOiAnLi90ZW1wbGF0ZS1ub2RlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi4vLi4vc3R5bGVzL25vZGUuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdCxcclxuICBzdHlsZXM6IFtcclxuICAgIGBcclxuICAgICAgOmhvc3Qge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICBgLFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZW1wbGF0ZU5vZGVDb21wb25lbnQgZXh0ZW5kcyBCYXNlTm9kZUNvbXBvbmVudDxUZW1wbGF0ZU5vZGU+IHtcclxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XHJcblxyXG4gIGdldCB0ZW1wbGF0ZU91dGxldENvbnRleHQoKSB7XHJcbiAgICBjb25zdCB7IGNvbnRlbnQsIGRlc2NyaXB0aW9uLCBuYW1lLCBzdGF0dXMsIGlkIH0gPSB0aGlzLmRhdGE7XHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgJGltcGxpY2l0OiB7XHJcbiAgICAgICAgY29udGVudDogY29udGVudCxcclxuICAgICAgICBkZXNjcmlwdGlvbixcclxuICAgICAgICBuYW1lLFxyXG4gICAgICAgIHN0YXR1cyxcclxuICAgICAgICBpZCxcclxuICAgICAgfSxcclxuICAgIH07XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cImRhLW5vZGUgZGEtbm9kZS0te3sgZGF0YS50eXBlIH19IHt7XHJcbiAgICBkYXRhPy5zdGF0dXMgPyAnIGRhLW5vZGUtLScgKyBkYXRhPy5zdGF0dXMgOiAnJ1xyXG4gIH19IHt7IGRhdGE/LnN0eWxlQ2xhc3MgfX1cIlxyXG4gIFtzdHlsZS4tLW5vZGUtd2lkdGhdPVwiZGF0YS53aWR0aCArICdweCdcIlxyXG4gIFtzdHlsZS4tLW5vZGUtaGVpZ2h0XT1cImRhdGEuaGVpZ2h0ICsgJ3B4J1wiXHJcbj5cclxuICA8bm9kZS1yZW1vdmUtYnV0dG9uIChyZW1vdmUpPVwicmVtb3ZlTm9kZSgpXCIgKm5nSWY9XCJkYXRhPy5jb25maWc/LmNhblJlbW92ZVwiPlxyXG4gIDwvbm9kZS1yZW1vdmUtYnV0dG9uPlxyXG5cclxuICA8bm9kZS1pY29uXHJcbiAgICAqbmdJZj1cImRhdGEuY29udGVudD8uaWNvblwiXHJcbiAgICBbaWNvbl09XCJkYXRhLmNvbnRlbnQ/Lmljb25cIlxyXG4gICAgY2xhc3M9XCJkYS1ub2RlX19pY29uXCJcclxuICA+PC9ub2RlLWljb24+XHJcblxyXG4gIDxuZy1jb250YWluZXJcclxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImRhdGE/LnRlbXBsYXRlIHx8IGRlZmF1bHRUZW1wbGF0ZVwiXHJcbiAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwidGVtcGxhdGVPdXRsZXRDb250ZXh0XCJcclxuICA+PC9uZy1jb250YWluZXI+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdFRlbXBsYXRlPlxyXG4gICAgPGRpdiBjbGFzcz1cImRhLW5vZGVfX3RpdGxlXCI+e3sgZGF0YT8ubmFtZSB9fTwvZGl2PlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIDxub2RlLWlucHV0c1xyXG4gICAgW2RpcmVjdGlvbl09XCJkYXRhLmRpcmVjdGlvbnMuaW5wdXRzXCJcclxuICAgIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgW3NlZWRdPVwic2VlZFwiXHJcbiAgICBbZW1pdF09XCJlbWl0XCJcclxuICAgIFtzb3J0QnlJbmRleF09XCJzb3J0QnlJbmRleFwiXHJcbiAgPjwvbm9kZS1pbnB1dHM+XHJcblxyXG4gIDxub2RlLW91dHB1dHNcclxuICAgIFtkaXJlY3Rpb25dPVwiZGF0YS5kaXJlY3Rpb25zLm91dHB1dHNcIlxyXG4gICAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICBbc2VlZF09XCJzZWVkXCJcclxuICAgIFtlbWl0XT1cImVtaXRcIlxyXG4gICAgW3NvcnRCeUluZGV4XT1cInNvcnRCeUluZGV4XCJcclxuICA+PC9ub2RlLW91dHB1dHM+XHJcbjwvZGl2PlxyXG4iXX0=
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtbm9kZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2RpYWdyYW1zL2NvbXBvbmVudHMvdGVtcGxhdGUtbm9kZS90ZW1wbGF0ZS1ub2RlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZGlhZ3JhbXMvY29tcG9uZW50cy90ZW1wbGF0ZS1ub2RlL3RlbXBsYXRlLW5vZGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7O0FBYzNELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxpQkFBK0I7SUFDeEUsUUFBUSxLQUFVLENBQUM7SUFFbkIsSUFBSSxxQkFBcUI7UUFDdkIsTUFBTSxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBRTdELE9BQU87WUFDTCxTQUFTLEVBQUU7Z0JBQ1QsT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLFdBQVc7Z0JBQ1gsSUFBSTtnQkFDSixNQUFNO2dCQUNOLEVBQUU7YUFDSDtTQUNGLENBQUM7SUFDSixDQUFDOzttSEFmVSxxQkFBcUI7dUdBQXJCLHFCQUFxQiwyRUNoQmxDLDJtQ0FtQ0E7NEZEbkJhLHFCQUFxQjtrQkFaakMsU0FBUzttQkFBQztvQkFDVCxXQUFXLEVBQUUsZ0NBQWdDO29CQUM3QyxTQUFTLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztvQkFDckMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE9BQU87b0JBQ2hELE1BQU0sRUFBRTt3QkFDTjs7OztLQUlDO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUZW1wbGF0ZU5vZGUgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBCYXNlTm9kZUNvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2Utbm9kZS5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RlbXBsYXRlLW5vZGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuLi8uLi9zdHlsZXMvbm9kZS5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxyXG4gIHN0eWxlczogW1xyXG4gICAgYFxyXG4gICAgICA6aG9zdCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIGAsXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRlbXBsYXRlTm9kZUNvbXBvbmVudCBleHRlbmRzIEJhc2VOb2RlQ29tcG9uZW50PFRlbXBsYXRlTm9kZT4ge1xyXG4gIG5nT25Jbml0KCk6IHZvaWQge31cclxuXHJcbiAgZ2V0IHRlbXBsYXRlT3V0bGV0Q29udGV4dCgpIHtcclxuICAgIGNvbnN0IHsgY29udGVudCwgZGVzY3JpcHRpb24sIG5hbWUsIHN0YXR1cywgaWQgfSA9IHRoaXMuZGF0YTtcclxuXHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAkaW1wbGljaXQ6IHtcclxuICAgICAgICBjb250ZW50OiBjb250ZW50LFxyXG4gICAgICAgIGRlc2NyaXB0aW9uLFxyXG4gICAgICAgIG5hbWUsXHJcbiAgICAgICAgc3RhdHVzLFxyXG4gICAgICAgIGlkLFxyXG4gICAgICB9LFxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG5cdGNsYXNzPVwiZGEtbm9kZSBkYS1ub2RlLS17eyBkYXRhLnR5cGUgfX0ge3tcclxuXHRcdGRhdGE/LnN0YXR1cyA/ICcgZGEtbm9kZS0tJyArIGRhdGE/LnN0YXR1cyA6ICcnXHJcblx0fX0ge3sgZGF0YT8uc3R5bGVDbGFzcyB9fVwiXHJcblx0W3N0eWxlLi0tbm9kZS13aWR0aF09XCJkYXRhLndpZHRoICsgJ3B4J1wiXHJcblx0W3N0eWxlLi0tbm9kZS1oZWlnaHRdPVwiZGF0YS5oZWlnaHQgKyAncHgnXCJcclxuPlxyXG5cdDxub2RlLXBvcnRzXHJcblx0XHRbaW5wdXRzRGlyZWN0aW9uXT1cImRhdGEuZGlyZWN0aW9ucy5pbnB1dHNcIlxyXG5cdFx0W291dHB1dHNEaXJlY3Rpb25dPVwiZGF0YS5kaXJlY3Rpb25zLm91dHB1dHNcIlxyXG5cdFx0W2RhdGFdPVwiZGF0YVwiXHJcblx0XHRbc2VlZF09XCJzZWVkXCJcclxuXHRcdFtlbWl0XT1cImVtaXRcIlxyXG5cdFx0W3NvcnRCeUluZGV4XT1cInNvcnRCeUluZGV4XCJcclxuXHQ+PC9ub2RlLXBvcnRzPlxyXG5cdDxkaXYgY2xhc3M9XCJkYS1ub2RlX19jb250ZW50XCI+XHJcblx0XHQ8bm9kZS1yZW1vdmUtYnV0dG9uIChyZW1vdmUpPVwicmVtb3ZlTm9kZSgpXCIgKm5nSWY9XCJkYXRhPy5jb25maWc/LmNhblJlbW92ZVwiPlxyXG5cdFx0PC9ub2RlLXJlbW92ZS1idXR0b24+XHJcblxyXG5cdFx0PG5vZGUtaWNvblxyXG5cdFx0XHQqbmdJZj1cImRhdGEuY29udGVudD8uaWNvblwiXHJcblx0XHRcdFtpY29uXT1cImRhdGEuY29udGVudD8uaWNvblwiXHJcblx0XHRcdGNsYXNzPVwiZGEtbm9kZV9faWNvblwiXHJcblx0XHQ+PC9ub2RlLWljb24+XHJcblxyXG5cdFx0PG5nLWNvbnRhaW5lclxyXG5cdFx0XHRbbmdUZW1wbGF0ZU91dGxldF09XCJkYXRhPy50ZW1wbGF0ZSB8fCBkZWZhdWx0VGVtcGxhdGVcIlxyXG5cdFx0XHRbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwidGVtcGxhdGVPdXRsZXRDb250ZXh0XCJcclxuXHRcdD48L25nLWNvbnRhaW5lcj5cclxuXHJcblx0XHQ8bmctdGVtcGxhdGUgI2RlZmF1bHRUZW1wbGF0ZT5cclxuXHRcdFx0PGRpdiBjbGFzcz1cImRhLW5vZGVfX3RpdGxlXCI+e3sgZGF0YT8ubmFtZSB9fTwvZGl2PlxyXG5cdFx0PC9uZy10ZW1wbGF0ZT5cclxuXHQ8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -2,6 +2,7 @@ export const NODE_TYPE = {
2
2
  start: 'start',
3
3
  content: 'content',
4
4
  template: 'template',
5
+ gateway: 'gateway',
5
6
  end: 'end',
6
7
  };
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9kaWFncmFtcy9jb25zdGFudHMvbm9kZS10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRztJQUN2QixLQUFLLEVBQUUsT0FBTztJQUNkLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLFFBQVEsRUFBRSxVQUFVO0lBQ3BCLEdBQUcsRUFBRSxLQUFLO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBOT0RFX1RZUEUgPSB7XHJcbiAgc3RhcnQ6ICdzdGFydCcsXHJcbiAgY29udGVudDogJ2NvbnRlbnQnLFxyXG4gIHRlbXBsYXRlOiAndGVtcGxhdGUnLFxyXG4gIGVuZDogJ2VuZCcsXHJcbn0gYXMgY29uc3Q7XHJcbiJdfQ==
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9kaWFncmFtcy9jb25zdGFudHMvbm9kZS10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRztJQUN2QixLQUFLLEVBQUUsT0FBTztJQUNkLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLFFBQVEsRUFBRSxVQUFVO0lBQ3BCLE9BQU8sRUFBRyxTQUFTO0lBQ25CLEdBQUcsRUFBRSxLQUFLO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBOT0RFX1RZUEUgPSB7XHJcbiAgc3RhcnQ6ICdzdGFydCcsXHJcbiAgY29udGVudDogJ2NvbnRlbnQnLFxyXG4gIHRlbXBsYXRlOiAndGVtcGxhdGUnLFxyXG4gIGdhdGV3YXkgOiAnZ2F0ZXdheScsXHJcbiAgZW5kOiAnZW5kJyxcclxufSBhcyBjb25zdDtcclxuIl19
@@ -2,6 +2,7 @@ export const NODE_MARGIN = 60;
2
2
  export const NODE_WIDTH = 150;
3
3
  export const NODE_HEIGHT = 118;
4
4
  export const NODE_CIRCLE_SIZE = 72;
5
+ export const NODE_GATEWAY_SIZE = 60;
5
6
  export const DIAGRAM_HEIGHT = 600;
6
7
  export const SOCKET_WIDTH = 8;
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2RpYWdyYW1zL2NvbnN0YW50cy9zaXplcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDO0FBQzlCLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUM7QUFDOUIsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQztBQUMvQixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7QUFDbkMsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLEdBQUcsQ0FBQztBQUNsQyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IE5PREVfTUFSR0lOID0gNjA7XHJcbmV4cG9ydCBjb25zdCBOT0RFX1dJRFRIID0gMTUwO1xyXG5leHBvcnQgY29uc3QgTk9ERV9IRUlHSFQgPSAxMTg7XHJcbmV4cG9ydCBjb25zdCBOT0RFX0NJUkNMRV9TSVpFID0gNzI7XHJcbmV4cG9ydCBjb25zdCBESUFHUkFNX0hFSUdIVCA9IDYwMDtcclxuZXhwb3J0IGNvbnN0IFNPQ0tFVF9XSURUSCA9IDg7Il19
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2RpYWdyYW1zL2NvbnN0YW50cy9zaXplcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDO0FBQzlCLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUM7QUFDOUIsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQztBQUMvQixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7QUFDbkMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsRUFBRSxDQUFDO0FBQ3BDLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxHQUFHLENBQUM7QUFDbEMsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBOT0RFX01BUkdJTiA9IDYwO1xyXG5leHBvcnQgY29uc3QgTk9ERV9XSURUSCA9IDE1MDtcclxuZXhwb3J0IGNvbnN0IE5PREVfSEVJR0hUID0gMTE4O1xyXG5leHBvcnQgY29uc3QgTk9ERV9DSVJDTEVfU0laRSA9IDcyO1xyXG5leHBvcnQgY29uc3QgTk9ERV9HQVRFV0FZX1NJWkUgPSA2MDtcclxuZXhwb3J0IGNvbnN0IERJQUdSQU1fSEVJR0hUID0gNjAwO1xyXG5leHBvcnQgY29uc3QgU09DS0VUX1dJRFRIID0gODtcclxuIl19
@@ -5,5 +5,8 @@ export const NODE_STATUS = {
5
5
  inProgress: 'inProgress',
6
6
  upcoming: 'upcoming',
7
7
  approved: 'approved',
8
+ suspended: 'suspended',
9
+ ready: 'ready',
10
+ canceled: 'canceled'
8
11
  };
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9kaWFncmFtcy9jb25zdGFudHMvc3RhdHVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRztJQUN6QixLQUFLLEVBQUUsT0FBTztJQUNkLFNBQVMsRUFBRSxXQUFXO0lBQ3RCLFFBQVEsRUFBRSxVQUFVO0lBQ3BCLFVBQVUsRUFBRSxZQUFZO0lBQ3hCLFFBQVEsRUFBRSxVQUFVO0lBQ3BCLFFBQVEsRUFBRSxVQUFVO0NBQ1osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBOT0RFX1NUQVRVUyA9IHtcclxuICBkcmFmdDogJ2RyYWZ0JyxcclxuICBjb21wbGV0ZWQ6ICdjb21wbGV0ZWQnLFxyXG4gIHJlamVjdGVkOiAncmVqZWN0ZWQnLFxyXG4gIGluUHJvZ3Jlc3M6ICdpblByb2dyZXNzJyxcclxuICB1cGNvbWluZzogJ3VwY29taW5nJyxcclxuICBhcHByb3ZlZDogJ2FwcHJvdmVkJyxcclxufSBhcyBjb25zdDtcclxuIl19
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9kaWFncmFtcy9jb25zdGFudHMvc3RhdHVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRztJQUMxQixLQUFLLEVBQUUsT0FBTztJQUNkLFNBQVMsRUFBRSxXQUFXO0lBQ3RCLFFBQVEsRUFBRSxVQUFVO0lBQ3BCLFVBQVUsRUFBRSxZQUFZO0lBQ3hCLFFBQVEsRUFBRSxVQUFVO0lBQ3BCLFFBQVEsRUFBRSxVQUFVO0lBQ3BCLFNBQVMsRUFBRSxXQUFXO0lBQ3RCLEtBQUssRUFBRSxPQUFPO0lBQ2QsUUFBUSxFQUFFLFVBQVU7Q0FDWCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IE5PREVfU1RBVFVTID0ge1xyXG5cdGRyYWZ0OiAnZHJhZnQnLFxyXG5cdGNvbXBsZXRlZDogJ2NvbXBsZXRlZCcsXHJcblx0cmVqZWN0ZWQ6ICdyZWplY3RlZCcsXHJcblx0aW5Qcm9ncmVzczogJ2luUHJvZ3Jlc3MnLFxyXG5cdHVwY29taW5nOiAndXBjb21pbmcnLFxyXG5cdGFwcHJvdmVkOiAnYXBwcm92ZWQnLFxyXG5cdHN1c3BlbmRlZDogJ3N1c3BlbmRlZCcsXHJcblx0cmVhZHk6ICdyZWFkeScsXHJcblx0Y2FuY2VsZWQ6ICdjYW5jZWxlZCdcclxufSBhcyBjb25zdDtcclxuIl19
@@ -7,7 +7,7 @@ import { MatTooltipModule } from '@angular/material/tooltip';
7
7
  import { TranslateModule } from '@ngx-translate/core';
8
8
  import { ReteModule } from 'rete-angular-plugin';
9
9
  import { DiagramDirective } from './directive/diagram.directive';
10
- import { CircleNodeComponent, ContentNodeComponent, CustomConnectionComponent, CustomSocketComponent, NodeIconComponent, NodeInputsComponent, NodeOutputsComponent, RemoveButtonComponent, StatusIconComponent, TemplateNodeComponent, ZoomControlComponent, } from './components';
10
+ import { CircleNodeComponent, ConnectionLabelComponent, ContentNodeComponent, CustomConnectionComponent, CustomSocketComponent, GatewayNodeComponent, GatewayPortsComponent, NodeIconComponent, NodeInputsComponent, NodeOutputsComponent, NodePortsComponent, RemoveButtonComponent, StatusIconComponent, TemplateNodeComponent, ZoomControlComponent } from './components';
11
11
  import { DiagramPluginsService, DiagramService, WorkflowService } from './services';
12
12
  import * as i0 from "@angular/core";
13
13
  export class DiagramsModule {
@@ -24,7 +24,11 @@ DiagramsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
24
24
  NodeIconComponent,
25
25
  StatusIconComponent,
26
26
  NodeInputsComponent,
27
- NodeOutputsComponent], imports: [CommonModule,
27
+ NodeOutputsComponent,
28
+ GatewayNodeComponent,
29
+ ConnectionLabelComponent,
30
+ NodePortsComponent,
31
+ GatewayPortsComponent], imports: [CommonModule,
28
32
  ReteModule,
29
33
  MatButtonModule,
30
34
  MatIconModule,
@@ -38,7 +42,7 @@ DiagramsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
38
42
  MatIconModule,
39
43
  FormsModule,
40
44
  TranslateModule,
41
- MatTooltipModule,
45
+ MatTooltipModule
42
46
  ]] });
43
47
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DiagramsModule, decorators: [{
44
48
  type: NgModule,
@@ -56,6 +60,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
56
60
  StatusIconComponent,
57
61
  NodeInputsComponent,
58
62
  NodeOutputsComponent,
63
+ GatewayNodeComponent,
64
+ ConnectionLabelComponent,
65
+ NodePortsComponent,
66
+ GatewayPortsComponent
59
67
  ],
60
68
  imports: [
61
69
  CommonModule,
@@ -64,10 +72,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
64
72
  MatIconModule,
65
73
  FormsModule,
66
74
  TranslateModule,
67
- MatTooltipModule,
75
+ MatTooltipModule
68
76
  ],
69
77
  exports: [DiagramDirective, ZoomControlComponent],
70
- providers: [DiagramService, DiagramPluginsService, WorkflowService],
78
+ providers: [DiagramService, DiagramPluginsService, WorkflowService]
71
79
  }]
72
80
  }] });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ3JhbXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9kaWFncmFtcy9kaWFncmFtcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVqRSxPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQix5QkFBeUIsRUFDekIscUJBQXFCLEVBQ3JCLGlCQUFpQixFQUNqQixtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQixtQkFBbUIsRUFDbkIscUJBQXFCLEVBQ3JCLG9CQUFvQixHQUNyQixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxNQUFNLFlBQVksQ0FBQzs7QUE2QnBGLE1BQU0sT0FBTyxjQUFjOzs0R0FBZCxjQUFjOzZHQUFkLGNBQWMsaUJBekJ2QixtQkFBbUI7UUFDbkIsb0JBQW9CO1FBQ3BCLHlCQUF5QjtRQUN6QixxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLGdCQUFnQjtRQUNoQixxQkFBcUI7UUFDckIsb0JBQW9CO1FBQ3BCLGlCQUFpQjtRQUNqQixtQkFBbUI7UUFDbkIsbUJBQW1CO1FBQ25CLG9CQUFvQixhQUdwQixZQUFZO1FBQ1osVUFBVTtRQUNWLGVBQWU7UUFDZixhQUFhO1FBQ2IsV0FBVztRQUNYLGVBQWU7UUFDZixnQkFBZ0IsYUFFUixnQkFBZ0IsRUFBRSxvQkFBb0I7NkdBR3JDLGNBQWMsYUFGZCxDQUFDLGNBQWMsRUFBRSxxQkFBcUIsRUFBRSxlQUFlLENBQUMsWUFWMUQ7WUFDUCxZQUFZO1lBQ1osVUFBVTtZQUNWLGVBQWU7WUFDZixhQUFhO1lBQ2IsV0FBVztZQUNYLGVBQWU7WUFDZixnQkFBZ0I7U0FDakI7NEZBSVUsY0FBYztrQkEzQjFCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQix5QkFBeUI7d0JBQ3pCLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixnQkFBZ0I7d0JBQ2hCLHFCQUFxQjt3QkFDckIsb0JBQW9CO3dCQUNwQixpQkFBaUI7d0JBQ2pCLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixvQkFBb0I7cUJBQ3JCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFVBQVU7d0JBQ1YsZUFBZTt3QkFDZixhQUFhO3dCQUNiLFdBQVc7d0JBQ1gsZUFBZTt3QkFDZixnQkFBZ0I7cUJBQ2pCO29CQUNELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixFQUFFLG9CQUFvQixDQUFDO29CQUNqRCxTQUFTLEVBQUUsQ0FBQyxjQUFjLEVBQUUscUJBQXFCLEVBQUUsZUFBZSxDQUFDO2lCQUNwRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBSZXRlTW9kdWxlIH0gZnJvbSAncmV0ZS1hbmd1bGFyLXBsdWdpbic7XHJcbmltcG9ydCB7IERpYWdyYW1EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9kaWFncmFtLmRpcmVjdGl2ZSc7XHJcblxyXG5pbXBvcnQge1xyXG4gIENpcmNsZU5vZGVDb21wb25lbnQsXHJcbiAgQ29udGVudE5vZGVDb21wb25lbnQsXHJcbiAgQ3VzdG9tQ29ubmVjdGlvbkNvbXBvbmVudCxcclxuICBDdXN0b21Tb2NrZXRDb21wb25lbnQsXHJcbiAgTm9kZUljb25Db21wb25lbnQsXHJcbiAgTm9kZUlucHV0c0NvbXBvbmVudCxcclxuICBOb2RlT3V0cHV0c0NvbXBvbmVudCxcclxuICBSZW1vdmVCdXR0b25Db21wb25lbnQsXHJcbiAgU3RhdHVzSWNvbkNvbXBvbmVudCxcclxuICBUZW1wbGF0ZU5vZGVDb21wb25lbnQsXHJcbiAgWm9vbUNvbnRyb2xDb21wb25lbnQsXHJcbn0gZnJvbSAnLi9jb21wb25lbnRzJztcclxuXHJcbmltcG9ydCB7IERpYWdyYW1QbHVnaW5zU2VydmljZSwgRGlhZ3JhbVNlcnZpY2UsIFdvcmtmbG93U2VydmljZSB9IGZyb20gJy4vc2VydmljZXMnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIENpcmNsZU5vZGVDb21wb25lbnQsXHJcbiAgICBDb250ZW50Tm9kZUNvbXBvbmVudCxcclxuICAgIEN1c3RvbUNvbm5lY3Rpb25Db21wb25lbnQsXHJcbiAgICBDdXN0b21Tb2NrZXRDb21wb25lbnQsXHJcbiAgICBUZW1wbGF0ZU5vZGVDb21wb25lbnQsXHJcbiAgICBEaWFncmFtRGlyZWN0aXZlLFxyXG4gICAgUmVtb3ZlQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgWm9vbUNvbnRyb2xDb21wb25lbnQsXHJcbiAgICBOb2RlSWNvbkNvbXBvbmVudCxcclxuICAgIFN0YXR1c0ljb25Db21wb25lbnQsXHJcbiAgICBOb2RlSW5wdXRzQ29tcG9uZW50LFxyXG4gICAgTm9kZU91dHB1dHNDb21wb25lbnQsXHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBSZXRlTW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgTWF0SWNvbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxyXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtEaWFncmFtRGlyZWN0aXZlLCBab29tQ29udHJvbENvbXBvbmVudF0sXHJcbiAgcHJvdmlkZXJzOiBbRGlhZ3JhbVNlcnZpY2UsIERpYWdyYW1QbHVnaW5zU2VydmljZSwgV29ya2Zsb3dTZXJ2aWNlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIERpYWdyYW1zTW9kdWxlIHt9XHJcbiJdfQ==
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ3JhbXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9kaWFncmFtcy9kaWFncmFtcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVqRSxPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLHdCQUF3QixFQUN4QixvQkFBb0IsRUFDcEIseUJBQXlCLEVBQ3pCLHFCQUFxQixFQUNyQixvQkFBb0IsRUFDcEIscUJBQXFCLEVBQ3JCLGlCQUFpQixFQUNqQixtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLGtCQUFrQixFQUNsQixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLHFCQUFxQixFQUNyQixvQkFBb0IsRUFDckIsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUNMLHFCQUFxQixFQUNyQixjQUFjLEVBQ2QsZUFBZSxFQUNoQixNQUFNLFlBQVksQ0FBQzs7QUFtQ3BCLE1BQU0sT0FBTyxjQUFjOzs0R0FBZCxjQUFjOzZHQUFkLGNBQWMsaUJBN0J6QixtQkFBbUI7UUFDbkIsb0JBQW9CO1FBQ3BCLHlCQUF5QjtRQUN6QixxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLGdCQUFnQjtRQUNoQixxQkFBcUI7UUFDckIsb0JBQW9CO1FBQ3BCLGlCQUFpQjtRQUNqQixtQkFBbUI7UUFDbkIsbUJBQW1CO1FBQ25CLG9CQUFvQjtRQUNwQixvQkFBb0I7UUFDcEIsd0JBQXdCO1FBQ3hCLGtCQUFrQjtRQUNsQixxQkFBcUIsYUFHckIsWUFBWTtRQUNaLFVBQVU7UUFDVixlQUFlO1FBQ2YsYUFBYTtRQUNiLFdBQVc7UUFDWCxlQUFlO1FBQ2YsZ0JBQWdCLGFBRVAsZ0JBQWdCLEVBQUUsb0JBQW9COzZHQUdwQyxjQUFjLGFBRmYsQ0FBQyxjQUFjLEVBQUUscUJBQXFCLEVBQUUsZUFBZSxDQUFDLFlBVjFEO1lBQ1IsWUFBWTtZQUNaLFVBQVU7WUFDVixlQUFlO1lBQ2YsYUFBYTtZQUNiLFdBQVc7WUFDWCxlQUFlO1lBQ2YsZ0JBQWdCO1NBQ2hCOzRGQUlXLGNBQWM7a0JBL0IxQixRQUFRO21CQUFDO29CQUNULFlBQVksRUFBRTt3QkFDYixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIseUJBQXlCO3dCQUN6QixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLG9CQUFvQjt3QkFDcEIsaUJBQWlCO3dCQUNqQixtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQixvQkFBb0I7d0JBQ3BCLHdCQUF3Qjt3QkFDeEIsa0JBQWtCO3dCQUNsQixxQkFBcUI7cUJBQ3JCO29CQUNELE9BQU8sRUFBRTt3QkFDUixZQUFZO3dCQUNaLFVBQVU7d0JBQ1YsZUFBZTt3QkFDZixhQUFhO3dCQUNiLFdBQVc7d0JBQ1gsZUFBZTt3QkFDZixnQkFBZ0I7cUJBQ2hCO29CQUNELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixFQUFFLG9CQUFvQixDQUFDO29CQUNqRCxTQUFTLEVBQUUsQ0FBQyxjQUFjLEVBQUUscUJBQXFCLEVBQUUsZUFBZSxDQUFDO2lCQUNuRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBSZXRlTW9kdWxlIH0gZnJvbSAncmV0ZS1hbmd1bGFyLXBsdWdpbic7XHJcbmltcG9ydCB7IERpYWdyYW1EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9kaWFncmFtLmRpcmVjdGl2ZSc7XHJcblxyXG5pbXBvcnQge1xyXG4gIENpcmNsZU5vZGVDb21wb25lbnQsXHJcbiAgQ29ubmVjdGlvbkxhYmVsQ29tcG9uZW50LFxyXG4gIENvbnRlbnROb2RlQ29tcG9uZW50LFxyXG4gIEN1c3RvbUNvbm5lY3Rpb25Db21wb25lbnQsXHJcbiAgQ3VzdG9tU29ja2V0Q29tcG9uZW50LFxyXG4gIEdhdGV3YXlOb2RlQ29tcG9uZW50LFxyXG4gIEdhdGV3YXlQb3J0c0NvbXBvbmVudCxcclxuICBOb2RlSWNvbkNvbXBvbmVudCxcclxuICBOb2RlSW5wdXRzQ29tcG9uZW50LFxyXG4gIE5vZGVPdXRwdXRzQ29tcG9uZW50LFxyXG4gIE5vZGVQb3J0c0NvbXBvbmVudCxcclxuICBSZW1vdmVCdXR0b25Db21wb25lbnQsXHJcbiAgU3RhdHVzSWNvbkNvbXBvbmVudCxcclxuICBUZW1wbGF0ZU5vZGVDb21wb25lbnQsXHJcbiAgWm9vbUNvbnRyb2xDb21wb25lbnRcclxufSBmcm9tICcuL2NvbXBvbmVudHMnO1xyXG5cclxuaW1wb3J0IHtcclxuICBEaWFncmFtUGx1Z2luc1NlcnZpY2UsXHJcbiAgRGlhZ3JhbVNlcnZpY2UsXHJcbiAgV29ya2Zsb3dTZXJ2aWNlXHJcbn0gZnJvbSAnLi9zZXJ2aWNlcyc7XHJcblxyXG5cclxuXHJcbkBOZ01vZHVsZSh7XHJcblx0ZGVjbGFyYXRpb25zOiBbXHJcblx0XHRDaXJjbGVOb2RlQ29tcG9uZW50LFxyXG5cdFx0Q29udGVudE5vZGVDb21wb25lbnQsXHJcblx0XHRDdXN0b21Db25uZWN0aW9uQ29tcG9uZW50LFxyXG5cdFx0Q3VzdG9tU29ja2V0Q29tcG9uZW50LFxyXG5cdFx0VGVtcGxhdGVOb2RlQ29tcG9uZW50LFxyXG5cdFx0RGlhZ3JhbURpcmVjdGl2ZSxcclxuXHRcdFJlbW92ZUJ1dHRvbkNvbXBvbmVudCxcclxuXHRcdFpvb21Db250cm9sQ29tcG9uZW50LFxyXG5cdFx0Tm9kZUljb25Db21wb25lbnQsXHJcblx0XHRTdGF0dXNJY29uQ29tcG9uZW50LFxyXG5cdFx0Tm9kZUlucHV0c0NvbXBvbmVudCxcclxuXHRcdE5vZGVPdXRwdXRzQ29tcG9uZW50LFxyXG5cdFx0R2F0ZXdheU5vZGVDb21wb25lbnQsXHJcblx0XHRDb25uZWN0aW9uTGFiZWxDb21wb25lbnQsXHJcblx0XHROb2RlUG9ydHNDb21wb25lbnQsXHJcblx0XHRHYXRld2F5UG9ydHNDb21wb25lbnRcclxuXHRdLFxyXG5cdGltcG9ydHM6IFtcclxuXHRcdENvbW1vbk1vZHVsZSxcclxuXHRcdFJldGVNb2R1bGUsXHJcblx0XHRNYXRCdXR0b25Nb2R1bGUsXHJcblx0XHRNYXRJY29uTW9kdWxlLFxyXG5cdFx0Rm9ybXNNb2R1bGUsXHJcblx0XHRUcmFuc2xhdGVNb2R1bGUsXHJcblx0XHRNYXRUb29sdGlwTW9kdWxlXHJcblx0XSxcclxuXHRleHBvcnRzOiBbRGlhZ3JhbURpcmVjdGl2ZSwgWm9vbUNvbnRyb2xDb21wb25lbnRdLFxyXG5cdHByb3ZpZGVyczogW0RpYWdyYW1TZXJ2aWNlLCBEaWFncmFtUGx1Z2luc1NlcnZpY2UsIFdvcmtmbG93U2VydmljZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIERpYWdyYW1zTW9kdWxlIHt9XHJcbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { __awaiter } from "tslib";
2
- import { Directive, EventEmitter, Input, Output, } from '@angular/core';
2
+ import { Directive, EventEmitter, Input, Output } from '@angular/core';
3
3
  import { DIAGRAM_HEIGHT } from '../constants';
4
4
  import { createDiagramEditor } from '../editor';
5
5
  import { ZoomControlComponent } from '../components';
@@ -37,8 +37,7 @@ export class DiagramDirective {
37
37
  return __awaiter(this, void 0, void 0, function* () {
38
38
  this._appendZoomComponent();
39
39
  try {
40
- const editor = yield createDiagramEditor(this._elementRef.nativeElement, this._injector, this.config //TODO it's Should be merged with DIAGRAM_DEFAULT_OPTIONS
41
- );
40
+ const editor = yield createDiagramEditor(this._elementRef.nativeElement, this._injector, this.config);
42
41
  this._pluginsService.setPlugins(editor);
43
42
  this._diagramService.setEditor(editor);
44
43
  this.diagramEditor = editor;
@@ -50,12 +49,16 @@ export class DiagramDirective {
50
49
  });
51
50
  }
52
51
  _appendStyles() {
52
+ var _a, _b;
53
53
  const _requiredStyles = {
54
54
  position: 'var(--diagram-position, relative)',
55
55
  width: `var(--diagram-width, ${this.width})`,
56
56
  height: `var(--diagram-height, ${this.height})`,
57
- direction: 'ltr',
57
+ direction: 'ltr'
58
58
  };
59
+ if ((_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.readonly) === null || _b === void 0 ? void 0 : _b.active) {
60
+ this._elementRef.nativeElement.style.setProperty('--port-offset', 'var(--custom-diagram-port-offset , calc(50% - 8px))');
61
+ }
59
62
  Object.entries(_requiredStyles).forEach(([key, value]) => {
60
63
  this._renderer.setStyle(this._elementRef.nativeElement, key, value);
61
64
  });
@@ -67,7 +70,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
67
70
  type: Directive,
68
71
  args: [{
69
72
  selector: '[appDiagram]',
70
- exportAs: 'diagram',
73
+ exportAs: 'diagram'
71
74
  }]
72
75
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.Injector }, { type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }, { type: i1.DiagramService }, { type: i1.DiagramPluginsService }]; }, propDecorators: { height: [{
73
76
  type: Input
@@ -80,4 +83,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
80
83
  }], onDiagramReady: [{
81
84
  type: Output
82
85
  }] } });
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ3JhbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2RpYWdyYW1zL2RpcmVjdGl2ZS9kaWFncmFtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUdMLFNBQVMsRUFFVCxZQUFZLEVBRVosS0FBSyxFQUVMLE1BQU0sR0FHUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzlDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVoRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVFyRCxNQUFNLE9BQU8sZ0JBQWdCO0lBTzNCLFlBQ1UsV0FBdUIsRUFDdkIsU0FBb0IsRUFDcEIsU0FBbUIsRUFDbkIsaUJBQW1DLEVBQ25DLFNBQW1DLEVBQ25DLGVBQStCLEVBQy9CLGVBQXNDO1FBTnRDLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNuQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQ25DLGNBQVMsR0FBVCxTQUFTLENBQTBCO1FBQ25DLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixvQkFBZSxHQUFmLGVBQWUsQ0FBdUI7UUFidkMsV0FBTSxHQUFXLEdBQUcsY0FBYyxJQUFJLENBQUM7UUFDdkMsVUFBSyxHQUFXLE1BQU0sQ0FBQztRQUN2QixXQUFNLEdBQWtCLEVBQUUsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7UUFDeEQsYUFBUSxHQUFHLElBQUksQ0FBQztRQUNmLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQTRCLENBQUM7SUFVckUsQ0FBQztJQUVKLElBQUksVUFBVTtRQUNaLE9BQVEsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUE2QixDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDakYsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixPQUFPO1NBQ1I7UUFDRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDN0UsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUssZUFBZTs7WUFDbkIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFDNUIsSUFBSTtnQkFDRixNQUFNLE1BQU0sR0FBRyxNQUFNLG1CQUFtQixDQUN0QyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFDOUIsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLHlEQUF5RDtpQkFDdEUsQ0FBQztnQkFFRixJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDeEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDO2dCQUM1QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUNsQztZQUFDLE9BQU8sS0FBSyxFQUFFO2dCQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDcEI7UUFDSCxDQUFDO0tBQUE7SUFFTyxhQUFhO1FBQ25CLE1BQU0sZUFBZSxHQUFHO1lBQ3RCLFFBQVEsRUFBRSxtQ0FBbUM7WUFDN0MsS0FBSyxFQUFFLHdCQUF3QixJQUFJLENBQUMsS0FBSyxHQUFHO1lBQzVDLE1BQU0sRUFBRSx5QkFBeUIsSUFBSSxDQUFDLE1BQU0sR0FBRztZQUMvQyxTQUFTLEVBQUUsS0FBSztTQUNqQixDQUFDO1FBQ0YsTUFBTSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1lBQ3ZELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN0RSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OzhHQTdEVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQjs0RkFBaEIsZ0JBQWdCO2tCQUo1QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxjQUFjO29CQUN4QixRQUFRLEVBQUUsU0FBUztpQkFDcEI7dVJBRVUsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDSSxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuICBEaXJlY3RpdmUsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5qZWN0b3IsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBSZW5kZXJlcjIsXHJcbiAgVmlld0NvbnRhaW5lclJlZixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRElBR1JBTV9IRUlHSFQgfSBmcm9tICcuLi9jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBjcmVhdGVEaWFncmFtRWRpdG9yIH0gZnJvbSAnLi4vZWRpdG9yJztcclxuXHJcbmltcG9ydCB7IFpvb21Db250cm9sQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IERpYWdyYW1QbHVnaW5zU2VydmljZSwgRGlhZ3JhbVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IERpYWdyYW1Db25maWcsIERpYWdyYW1FZGl0b3JXaXRoUGx1Z2lucyB9IGZyb20gJy4uL3R5cGVzJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2FwcERpYWdyYW1dJyxcclxuICBleHBvcnRBczogJ2RpYWdyYW0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGlhZ3JhbURpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgaGVpZ2h0OiBzdHJpbmcgPSBgJHtESUFHUkFNX0hFSUdIVH1weGA7XHJcbiAgQElucHV0KCkgd2lkdGg6IHN0cmluZyA9ICcxMDAlJztcclxuICBASW5wdXQoKSBjb25maWc6IERpYWdyYW1Db25maWcgPSB7IHJlYWRvbmx5OiB7IGFjdGl2ZTogZmFsc2UgfSB9O1xyXG4gIEBJbnB1dCgpIHpvb21DdHJsID0gdHJ1ZTtcclxuICBAT3V0cHV0KCkgb25EaWFncmFtUmVhZHkgPSBuZXcgRXZlbnRFbWl0dGVyPERpYWdyYW1FZGl0b3JXaXRoUGx1Z2lucz4oKTtcclxuICBwdWJsaWMgZGlhZ3JhbUVkaXRvciE6IERpYWdyYW1FZGl0b3JXaXRoUGx1Z2lucztcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIF9yZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHJpdmF0ZSBfaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcHJpdmF0ZSBfdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcclxuICAgIHByaXZhdGUgX3Jlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICBwcml2YXRlIF9kaWFncmFtU2VydmljZTogRGlhZ3JhbVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9wbHVnaW5zU2VydmljZTogRGlhZ3JhbVBsdWdpbnNTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBnZXQgY2xpZW50UmVjdCgpIHtcclxuICAgIHJldHVybiAodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fYXBwZW5kU3R5bGVzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9hcHBlbmRab29tQ29tcG9uZW50KCkge1xyXG4gICAgaWYgKCF0aGlzLnpvb21DdHJsKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLl9yZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShab29tQ29udHJvbENvbXBvbmVudCk7XHJcbiAgICB0aGlzLl92aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcclxuICB9XHJcblxyXG4gIGFzeW5jIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuX2FwcGVuZFpvb21Db21wb25lbnQoKTtcclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IGVkaXRvciA9IGF3YWl0IGNyZWF0ZURpYWdyYW1FZGl0b3IoXHJcbiAgICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxyXG4gICAgICAgIHRoaXMuX2luamVjdG9yLFxyXG4gICAgICAgIHRoaXMuY29uZmlnIC8vVE9ETyBpdCdzIFNob3VsZCBiZSBtZXJnZWQgd2l0aCBESUFHUkFNX0RFRkFVTFRfT1BUSU9OU1xyXG4gICAgICApO1xyXG5cclxuICAgICAgdGhpcy5fcGx1Z2luc1NlcnZpY2Uuc2V0UGx1Z2lucyhlZGl0b3IpO1xyXG4gICAgICB0aGlzLl9kaWFncmFtU2VydmljZS5zZXRFZGl0b3IoZWRpdG9yKTtcclxuICAgICAgdGhpcy5kaWFncmFtRWRpdG9yID0gZWRpdG9yO1xyXG4gICAgICB0aGlzLm9uRGlhZ3JhbVJlYWR5LmVtaXQoZWRpdG9yKTtcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKGVycm9yKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2FwcGVuZFN0eWxlcygpIHtcclxuICAgIGNvbnN0IF9yZXF1aXJlZFN0eWxlcyA9IHtcclxuICAgICAgcG9zaXRpb246ICd2YXIoLS1kaWFncmFtLXBvc2l0aW9uLCByZWxhdGl2ZSknLFxyXG4gICAgICB3aWR0aDogYHZhcigtLWRpYWdyYW0td2lkdGgsICR7dGhpcy53aWR0aH0pYCxcclxuICAgICAgaGVpZ2h0OiBgdmFyKC0tZGlhZ3JhbS1oZWlnaHQsICR7dGhpcy5oZWlnaHR9KWAsXHJcbiAgICAgIGRpcmVjdGlvbjogJ2x0cicsXHJcbiAgICB9O1xyXG4gICAgT2JqZWN0LmVudHJpZXMoX3JlcXVpcmVkU3R5bGVzKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcclxuICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCBrZXksIHZhbHVlKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ3JhbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2RpYWdyYW1zL2RpcmVjdGl2ZS9kaWFncmFtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUdOLFNBQVMsRUFFVCxZQUFZLEVBRVosS0FBSyxFQUVMLE1BQU0sRUFHTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzlDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVoRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVFyRCxNQUFNLE9BQU8sZ0JBQWdCO0lBTzVCLFlBQ1MsV0FBdUIsRUFDdkIsU0FBb0IsRUFDcEIsU0FBbUIsRUFDbkIsaUJBQW1DLEVBQ25DLFNBQW1DLEVBQ25DLGVBQStCLEVBQy9CLGVBQXNDO1FBTnRDLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNuQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQ25DLGNBQVMsR0FBVCxTQUFTLENBQTBCO1FBQ25DLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixvQkFBZSxHQUFmLGVBQWUsQ0FBdUI7UUFidEMsV0FBTSxHQUFXLEdBQUcsY0FBYyxJQUFJLENBQUM7UUFDdkMsVUFBSyxHQUFXLE1BQU0sQ0FBQztRQUN2QixXQUFNLEdBQWtCLEVBQUUsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7UUFDeEQsYUFBUSxHQUFHLElBQUksQ0FBQztRQUNmLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQTRCLENBQUM7SUFVckUsQ0FBQztJQUVKLElBQUksVUFBVTtRQUNiLE9BQ0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUNqQixDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELFFBQVE7UUFDUCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVPLG9CQUFvQjtRQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNuQixPQUFPO1NBQ1A7UUFDRCxNQUFNLE9BQU8sR0FDWixJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUssZUFBZTs7WUFDcEIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFDNUIsSUFBSTtnQkFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLG1CQUFtQixDQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFDOUIsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsTUFBTSxDQUNYLENBQUM7Z0JBRUYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN2QyxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQztnQkFDNUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDakM7WUFBQyxPQUFPLEtBQUssRUFBRTtnQkFDZixPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ25CO1FBQ0YsQ0FBQztLQUFBO0lBRU8sYUFBYTs7UUFDcEIsTUFBTSxlQUFlLEdBQUc7WUFDdkIsUUFBUSxFQUFFLG1DQUFtQztZQUM3QyxLQUFLLEVBQUUsd0JBQXdCLElBQUksQ0FBQyxLQUFLLEdBQUc7WUFDNUMsTUFBTSxFQUFFLHlCQUF5QixJQUFJLENBQUMsTUFBTSxHQUFHO1lBQy9DLFNBQVMsRUFBRSxLQUFLO1NBQ2hCLENBQUM7UUFDRixJQUFJLE1BQUEsTUFBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSxRQUFRLDBDQUFFLE1BQU0sRUFBRTtZQUNsQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUMvQyxlQUFlLEVBQ2YscURBQXFELENBQ3JELENBQUM7U0FDRjtRQUNELE1BQU0sQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtZQUN4RCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDckUsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDOzs4R0F0RVcsZ0JBQWdCO2tHQUFoQixnQkFBZ0I7NEZBQWhCLGdCQUFnQjtrQkFKNUIsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsY0FBYztvQkFDeEIsUUFBUSxFQUFFLFNBQVM7aUJBQ25CO3VSQUVTLE1BQU07c0JBQWQsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksY0FBYztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcblx0QWZ0ZXJWaWV3SW5pdCxcclxuXHRDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcblx0RGlyZWN0aXZlLFxyXG5cdEVsZW1lbnRSZWYsXHJcblx0RXZlbnRFbWl0dGVyLFxyXG5cdEluamVjdG9yLFxyXG5cdElucHV0LFxyXG5cdE9uSW5pdCxcclxuXHRPdXRwdXQsXHJcblx0UmVuZGVyZXIyLFxyXG5cdFZpZXdDb250YWluZXJSZWZcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRElBR1JBTV9IRUlHSFQgfSBmcm9tICcuLi9jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBjcmVhdGVEaWFncmFtRWRpdG9yIH0gZnJvbSAnLi4vZWRpdG9yJztcclxuXHJcbmltcG9ydCB7IFpvb21Db250cm9sQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IERpYWdyYW1QbHVnaW5zU2VydmljZSwgRGlhZ3JhbVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IERpYWdyYW1Db25maWcsIERpYWdyYW1FZGl0b3JXaXRoUGx1Z2lucyB9IGZyb20gJy4uL3R5cGVzJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG5cdHNlbGVjdG9yOiAnW2FwcERpYWdyYW1dJyxcclxuXHRleHBvcnRBczogJ2RpYWdyYW0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEaWFncmFtRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25Jbml0IHtcclxuXHRASW5wdXQoKSBoZWlnaHQ6IHN0cmluZyA9IGAke0RJQUdSQU1fSEVJR0hUfXB4YDtcclxuXHRASW5wdXQoKSB3aWR0aDogc3RyaW5nID0gJzEwMCUnO1xyXG5cdEBJbnB1dCgpIGNvbmZpZzogRGlhZ3JhbUNvbmZpZyA9IHsgcmVhZG9ubHk6IHsgYWN0aXZlOiBmYWxzZSB9IH07XHJcblx0QElucHV0KCkgem9vbUN0cmwgPSB0cnVlO1xyXG5cdEBPdXRwdXQoKSBvbkRpYWdyYW1SZWFkeSA9IG5ldyBFdmVudEVtaXR0ZXI8RGlhZ3JhbUVkaXRvcldpdGhQbHVnaW5zPigpO1xyXG5cdHB1YmxpYyBkaWFncmFtRWRpdG9yITogRGlhZ3JhbUVkaXRvcldpdGhQbHVnaW5zO1xyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuXHRcdHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIsXHJcblx0XHRwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsXHJcblx0XHRwcml2YXRlIF92aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG5cdFx0cHJpdmF0ZSBfcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuXHRcdHByaXZhdGUgX2RpYWdyYW1TZXJ2aWNlOiBEaWFncmFtU2VydmljZSxcclxuXHRcdHByaXZhdGUgX3BsdWdpbnNTZXJ2aWNlOiBEaWFncmFtUGx1Z2luc1NlcnZpY2VcclxuXHQpIHt9XHJcblxyXG5cdGdldCBjbGllbnRSZWN0KCkge1xyXG5cdFx0cmV0dXJuIChcclxuXHRcdFx0dGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50XHJcblx0XHQpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLl9hcHBlbmRTdHlsZXMoKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX2FwcGVuZFpvb21Db21wb25lbnQoKSB7XHJcblx0XHRpZiAoIXRoaXMuem9vbUN0cmwpIHtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgZmFjdG9yeSA9XHJcblx0XHRcdHRoaXMuX3Jlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFpvb21Db250cm9sQ29tcG9uZW50KTtcclxuXHRcdHRoaXMuX3ZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xyXG5cdH1cclxuXHJcblx0YXN5bmMgbmdBZnRlclZpZXdJbml0KCkge1xyXG5cdFx0dGhpcy5fYXBwZW5kWm9vbUNvbXBvbmVudCgpO1xyXG5cdFx0dHJ5IHtcclxuXHRcdFx0Y29uc3QgZWRpdG9yID0gYXdhaXQgY3JlYXRlRGlhZ3JhbUVkaXRvcihcclxuXHRcdFx0XHR0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsXHJcblx0XHRcdFx0dGhpcy5faW5qZWN0b3IsXHJcblx0XHRcdFx0dGhpcy5jb25maWdcclxuXHRcdFx0KTtcclxuXHJcblx0XHRcdHRoaXMuX3BsdWdpbnNTZXJ2aWNlLnNldFBsdWdpbnMoZWRpdG9yKTtcclxuXHRcdFx0dGhpcy5fZGlhZ3JhbVNlcnZpY2Uuc2V0RWRpdG9yKGVkaXRvcik7XHJcblx0XHRcdHRoaXMuZGlhZ3JhbUVkaXRvciA9IGVkaXRvcjtcclxuXHRcdFx0dGhpcy5vbkRpYWdyYW1SZWFkeS5lbWl0KGVkaXRvcik7XHJcblx0XHR9IGNhdGNoIChlcnJvcikge1xyXG5cdFx0XHRjb25zb2xlLmxvZyhlcnJvcik7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF9hcHBlbmRTdHlsZXMoKSB7XHJcblx0XHRjb25zdCBfcmVxdWlyZWRTdHlsZXMgPSB7XHJcblx0XHRcdHBvc2l0aW9uOiAndmFyKC0tZGlhZ3JhbS1wb3NpdGlvbiwgcmVsYXRpdmUpJyxcclxuXHRcdFx0d2lkdGg6IGB2YXIoLS1kaWFncmFtLXdpZHRoLCAke3RoaXMud2lkdGh9KWAsXHJcblx0XHRcdGhlaWdodDogYHZhcigtLWRpYWdyYW0taGVpZ2h0LCAke3RoaXMuaGVpZ2h0fSlgLFxyXG5cdFx0XHRkaXJlY3Rpb246ICdsdHInXHJcblx0XHR9O1xyXG5cdFx0aWYgKHRoaXMuY29uZmlnPy5yZWFkb25seT8uYWN0aXZlKSB7XHJcblx0XHRcdHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuXHRcdFx0XHQnLS1wb3J0LW9mZnNldCcsXHJcblx0XHRcdFx0J3ZhcigtLWN1c3RvbS1kaWFncmFtLXBvcnQtb2Zmc2V0ICwgY2FsYyg1MCUgLSA4cHgpKSdcclxuXHRcdFx0KTtcclxuXHRcdH1cclxuXHRcdE9iamVjdC5lbnRyaWVzKF9yZXF1aXJlZFN0eWxlcykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XHJcblx0XHRcdHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwga2V5LCB2YWx1ZSk7XHJcblx0XHR9KTtcclxuXHR9XHJcbn1cclxuIl19
@@ -1,6 +1,8 @@
1
- import { ConnectionComponent, NodeComponent, SocketComponent, } from 'rete-angular-plugin';
2
- import { CircleNodeComponent, ContentNodeComponent, CustomConnectionComponent, CustomSocketComponent, TemplateNodeComponent, } from '../components';
3
- import { CircleNode, ContentNode, TemplateNode, } from '../models';
1
+ import { ConnectionComponent, NodeComponent, SocketComponent } from 'rete-angular-plugin';
2
+ import { CircleNodeComponent, ContentNodeComponent, CustomConnectionComponent, CustomSocketComponent, GatewayNodeComponent, TemplateNodeComponent } from '../components';
3
+ import { NODE_TYPE } from '../constants';
4
+ import { CircleNode, ContentNode, TemplateNode } from '../models';
5
+ import { GateWayNode } from '../models/gate-way.model';
4
6
  /**
5
7
  *
6
8
  * @param config
@@ -39,20 +41,22 @@ export const customizeConnection = (config) => (data) => {
39
41
  };
40
42
  export const initNodeByType = (type, config) => {
41
43
  const _nodes = {
42
- start: CircleNode,
43
- content: ContentNode,
44
- template: TemplateNode,
45
- end: CircleNode,
44
+ [NODE_TYPE.start]: CircleNode,
45
+ [NODE_TYPE.content]: ContentNode,
46
+ [NODE_TYPE.template]: TemplateNode,
47
+ [NODE_TYPE.end]: CircleNode,
48
+ [NODE_TYPE.gateway]: GateWayNode
46
49
  };
47
50
  return new _nodes[type](config) || new ContentNode(config);
48
51
  };
49
52
  export const initAngularComponentByType = (type) => {
50
53
  const _components = {
51
- content: ContentNodeComponent,
52
- start: CircleNodeComponent,
53
- end: CircleNodeComponent,
54
- template: TemplateNodeComponent,
54
+ [NODE_TYPE.content]: ContentNodeComponent,
55
+ [NODE_TYPE.start]: CircleNodeComponent,
56
+ [NODE_TYPE.end]: CircleNodeComponent,
57
+ [NODE_TYPE.template]: TemplateNodeComponent,
58
+ [NODE_TYPE.gateway]: GatewayNodeComponent
55
59
  };
56
60
  return _components[type] || NodeComponent;
57
61
  };
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9taXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9kaWFncmFtcy9lZGl0b3IvY3VzdG9taXplLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsYUFBYSxFQUNiLGVBQWUsR0FDaEIsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQix5QkFBeUIsRUFDekIscUJBQXFCLEVBQ3JCLHFCQUFxQixHQUN0QixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBRUwsVUFBVSxFQUVWLFdBQVcsRUFFWCxZQUFZLEdBQ2IsTUFBTSxXQUFXLENBQUM7QUFTbkI7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FHMUIsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7SUFDbkIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQWlCLENBQUM7SUFDdkMsSUFBSSxPQUFPLENBQUMsVUFBVSxLQUFLLFFBQVEsSUFBSSxNQUFNLENBQUMsVUFBVSxLQUFLLFFBQVEsRUFBRTtRQUNyRSxPQUFPLHFCQUFxQixDQUFDO0tBQzlCO0lBQ0QsT0FBTyxlQUFlLENBQUM7QUFDekIsQ0FBQyxDQUFDO0FBRUo7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBSXhCLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTs7SUFDM0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQXdCLENBQUM7SUFDM0MsTUFBQSxJQUFJLENBQUMsTUFBTSxvQ0FBWCxJQUFJLENBQUMsTUFBTSxHQUFLLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBQztJQUMvQixPQUFPLDBCQUEwQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUMvQyxDQUFDLENBQUM7QUFFSjs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBRzlCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO0lBQ25CLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFxQixDQUFDO0lBRTNDLElBQUksT0FBTyxDQUFDLFVBQVUsS0FBSyxRQUFRLElBQUksTUFBTSxDQUFDLGNBQWMsSUFBSSxRQUFRLEVBQUU7UUFDeEUsT0FBTyx5QkFBeUIsQ0FBQztLQUNsQztJQUVELE9BQU8sbUJBQW1CLENBQUM7QUFDN0IsQ0FBQyxDQUFDO0FBRUosTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsSUFBYyxFQUFFLE1BQTBCLEVBQUUsRUFBRTtJQUMzRSxNQUFNLE1BQU0sR0FBeUM7UUFDbkQsS0FBSyxFQUFFLFVBQVU7UUFDakIsT0FBTyxFQUFFLFdBQVc7UUFDcEIsUUFBUSxFQUFFLFlBQVk7UUFDdEIsR0FBRyxFQUFFLFVBQVU7S0FDaEIsQ0FBQztJQUNGLE9BQU8sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDN0QsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsQ0FBQyxJQUFjLEVBQUUsRUFBRTtJQUMzRCxNQUFNLFdBQVcsR0FBdUM7UUFDdEQsT0FBTyxFQUFFLG9CQUFvQjtRQUM3QixLQUFLLEVBQUUsbUJBQW1CO1FBQzFCLEdBQUcsRUFBRSxtQkFBbUI7UUFDeEIsUUFBUSxFQUFFLHFCQUFxQjtLQUNoQyxDQUFDO0lBRUYsT0FBTyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksYUFBYSxDQUFDO0FBQzVDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vZGVFZGl0b3IgfSBmcm9tICdyZXRlJztcclxuaW1wb3J0IHtcclxuICBDb25uZWN0aW9uQ29tcG9uZW50LFxyXG4gIE5vZGVDb21wb25lbnQsXHJcbiAgU29ja2V0Q29tcG9uZW50LFxyXG59IGZyb20gJ3JldGUtYW5ndWxhci1wbHVnaW4nO1xyXG5pbXBvcnQgeyBFeHRyYWN0UGF5bG9hZCB9IGZyb20gJ3JldGUtYW5ndWxhci1wbHVnaW4vcHJlc2V0cy9jbGFzc2ljL3R5cGVzJztcclxuaW1wb3J0IHtcclxuICBDaXJjbGVOb2RlQ29tcG9uZW50LFxyXG4gIENvbnRlbnROb2RlQ29tcG9uZW50LFxyXG4gIEN1c3RvbUNvbm5lY3Rpb25Db21wb25lbnQsXHJcbiAgQ3VzdG9tU29ja2V0Q29tcG9uZW50LFxyXG4gIFRlbXBsYXRlTm9kZUNvbXBvbmVudCxcclxufSBmcm9tICcuLi9jb21wb25lbnRzJztcclxuaW1wb3J0IHtcclxuICBCYXNlTm9kZUNsYXNzLFxyXG4gIENpcmNsZU5vZGUsXHJcbiAgQ29ubmVjdGlvbixcclxuICBDb250ZW50Tm9kZSxcclxuICBTb2NrZXQsXHJcbiAgVGVtcGxhdGVOb2RlLFxyXG59IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7XHJcbiAgQW5ndWxhckNvbXBvbmVudCxcclxuICBEaWFncmFtQ29uZmlnLFxyXG4gIE5vZGVEZWZpbml0aW9uRGF0YSxcclxuICBOb2RlVHlwZSxcclxuICBTY2hlbWVzLFxyXG59IGZyb20gJy4uL3R5cGVzJztcclxuXHJcbi8qKlxyXG4gKlxyXG4gKiBAcGFyYW0gY29uZmlnXHJcbiAqIEByZXR1cm5zXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgY3VzdG9taXplU29ja2V0OiAoXHJcbiAgY29uZmlnOiBEaWFncmFtQ29uZmlnXHJcbikgPT4gKGRhdGE6IEV4dHJhY3RQYXlsb2FkPFNjaGVtZXMsICdzb2NrZXQnPikgPT4gQW5ndWxhckNvbXBvbmVudCB8IG51bGwgPVxyXG4gIChjb25maWcpID0+IChkYXRhKSA9PiB7XHJcbiAgICBjb25zdCBwYXlsb2FkID0gZGF0YS5wYXlsb2FkIGFzIFNvY2tldDtcclxuICAgIGlmIChwYXlsb2FkLnJlbmRlclR5cGUgPT09ICdjdXN0b20nIHx8IGNvbmZpZy5zb2NrZXRUeXBlID09PSAnY3VzdG9tJykge1xyXG4gICAgICByZXR1cm4gQ3VzdG9tU29ja2V0Q29tcG9uZW50O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIFNvY2tldENvbXBvbmVudDtcclxuICB9O1xyXG5cclxuLyoqXHJcbiAqXHJcbiAqIEBwYXJhbSBjb25maWdcclxuICogQHBhcmFtIGVkaXRvclxyXG4gKiBAcmV0dXJuc1xyXG4gKi9cclxuZXhwb3J0IGNvbnN0IGN1c3RvbWl6ZU5vZGU6IChcclxuICBjb25maWc6IERpYWdyYW1Db25maWcsXHJcbiAgZWRpdG9yOiBOb2RlRWRpdG9yPFNjaGVtZXM+XHJcbikgPT4gKGRhdGE6IEV4dHJhY3RQYXlsb2FkPFNjaGVtZXMsICdub2RlJz4pID0+IEFuZ3VsYXJDb21wb25lbnQgfCBudWxsID1cclxuICAoY29uZmlnLCBlZGl0b3IpID0+IChkYXRhKSA9PiB7XHJcbiAgICBjb25zdCBub2RlID0gZGF0YS5wYXlsb2FkIGFzIEJhc2VOb2RlQ2xhc3M7XHJcbiAgICBub2RlLmNvbmZpZyA/Pz0gY29uZmlnWydub2RlJ107XHJcbiAgICByZXR1cm4gaW5pdEFuZ3VsYXJDb21wb25lbnRCeVR5cGUobm9kZS50eXBlKTtcclxuICB9O1xyXG5cclxuLyoqXHJcbiAqXHJcbiAqIEBwYXJhbSBjb25maWdcclxuICogQHJldHVybnNcclxuICovXHJcbmV4cG9ydCBjb25zdCBjdXN0b21pemVDb25uZWN0aW9uOiAoXHJcbiAgY29uZmlnOiBEaWFncmFtQ29uZmlnXHJcbikgPT4gKGRhdGE6IEV4dHJhY3RQYXlsb2FkPFNjaGVtZXMsICdjb25uZWN0aW9uJz4pID0+IEFuZ3VsYXJDb21wb25lbnQgfCBudWxsID1cclxuICAoY29uZmlnKSA9PiAoZGF0YSkgPT4ge1xyXG4gICAgY29uc3QgcGF5bG9hZCA9IGRhdGEucGF5bG9hZCBhcyBDb25uZWN0aW9uO1xyXG5cclxuICAgIGlmIChwYXlsb2FkLnJlbmRlclR5cGUgPT09ICdjdXN0b20nIHx8IGNvbmZpZy5jb25uZWN0aW9uVHlwZSA9PSAnY3VzdG9tJykge1xyXG4gICAgICByZXR1cm4gQ3VzdG9tQ29ubmVjdGlvbkNvbXBvbmVudDtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gQ29ubmVjdGlvbkNvbXBvbmVudDtcclxuICB9O1xyXG5cclxuZXhwb3J0IGNvbnN0IGluaXROb2RlQnlUeXBlID0gKHR5cGU6IE5vZGVUeXBlLCBjb25maWc6IE5vZGVEZWZpbml0aW9uRGF0YSkgPT4ge1xyXG4gIGNvbnN0IF9ub2RlczogUmVjb3JkPE5vZGVUeXBlLCB0eXBlb2YgQ29udGVudE5vZGU+ID0ge1xyXG4gICAgc3RhcnQ6IENpcmNsZU5vZGUsXHJcbiAgICBjb250ZW50OiBDb250ZW50Tm9kZSxcclxuICAgIHRlbXBsYXRlOiBUZW1wbGF0ZU5vZGUsXHJcbiAgICBlbmQ6IENpcmNsZU5vZGUsXHJcbiAgfTtcclxuICByZXR1cm4gbmV3IF9ub2Rlc1t0eXBlXShjb25maWcpIHx8IG5ldyBDb250ZW50Tm9kZShjb25maWcpO1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IGluaXRBbmd1bGFyQ29tcG9uZW50QnlUeXBlID0gKHR5cGU6IE5vZGVUeXBlKSA9PiB7XHJcbiAgY29uc3QgX2NvbXBvbmVudHM6IFJlY29yZDxOb2RlVHlwZSwgQW5ndWxhckNvbXBvbmVudD4gPSB7XHJcbiAgICBjb250ZW50OiBDb250ZW50Tm9kZUNvbXBvbmVudCxcclxuICAgIHN0YXJ0OiBDaXJjbGVOb2RlQ29tcG9uZW50LFxyXG4gICAgZW5kOiBDaXJjbGVOb2RlQ29tcG9uZW50LFxyXG4gICAgdGVtcGxhdGU6IFRlbXBsYXRlTm9kZUNvbXBvbmVudCxcclxuICB9O1xyXG5cclxuICByZXR1cm4gX2NvbXBvbmVudHNbdHlwZV0gfHwgTm9kZUNvbXBvbmVudDtcclxufTtcclxuIl19
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9taXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9kaWFncmFtcy9lZGl0b3IvY3VzdG9taXplLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsYUFBYSxFQUNiLGVBQWUsRUFDaEIsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQix5QkFBeUIsRUFDekIscUJBQXFCLEVBQ3JCLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDdEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN6QyxPQUFPLEVBRUwsVUFBVSxFQUVWLFdBQVcsRUFFWCxZQUFZLEVBQ2IsTUFBTSxXQUFXLENBQUM7QUFDbkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBU3ZEOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBRzNCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO0lBQ3BCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFpQixDQUFDO0lBQ3ZDLElBQUksT0FBTyxDQUFDLFVBQVUsS0FBSyxRQUFRLElBQUksTUFBTSxDQUFDLFVBQVUsS0FBSyxRQUFRLEVBQUU7UUFDdEUsT0FBTyxxQkFBcUIsQ0FBQztLQUM3QjtJQUNELE9BQU8sZUFBZSxDQUFDO0FBQ3hCLENBQUMsQ0FBQztBQUVIOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUl6QixDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7O0lBQzVCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUF3QixDQUFDO0lBQzNDLE1BQUEsSUFBSSxDQUFDLE1BQU0sb0NBQVgsSUFBSSxDQUFDLE1BQU0sR0FBSyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUM7SUFFL0IsT0FBTywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDOUMsQ0FBQyxDQUFDO0FBRUg7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUcvQixDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtJQUNwQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBcUIsQ0FBQztJQUUzQyxJQUFJLE9BQU8sQ0FBQyxVQUFVLEtBQUssUUFBUSxJQUFJLE1BQU0sQ0FBQyxjQUFjLElBQUksUUFBUSxFQUFFO1FBQ3pFLE9BQU8seUJBQXlCLENBQUM7S0FDakM7SUFFRCxPQUFPLG1CQUFtQixDQUFDO0FBQzVCLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLElBQWMsRUFBRSxNQUEwQixFQUFFLEVBQUU7SUFDNUUsTUFBTSxNQUFNLEdBQXlDO1FBQ3BELENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLFVBQVU7UUFDN0IsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsV0FBVztRQUNoQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxZQUFZO1FBQ2xDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFVBQVU7UUFDM0IsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsV0FBVztLQUNoQyxDQUFDO0lBQ0YsT0FBTyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUM1RCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxDQUFDLElBQWMsRUFBRSxFQUFFO0lBQzVELE1BQU0sV0FBVyxHQUF1QztRQUN2RCxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxvQkFBb0I7UUFDekMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsbUJBQW1CO1FBQ3RDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLG1CQUFtQjtRQUNwQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxxQkFBcUI7UUFDM0MsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsb0JBQW9CO0tBQ3pDLENBQUM7SUFFRixPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxhQUFhLENBQUM7QUFDM0MsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTm9kZUVkaXRvciB9IGZyb20gJ3JldGUnO1xyXG5pbXBvcnQge1xyXG4gIENvbm5lY3Rpb25Db21wb25lbnQsXHJcbiAgTm9kZUNvbXBvbmVudCxcclxuICBTb2NrZXRDb21wb25lbnRcclxufSBmcm9tICdyZXRlLWFuZ3VsYXItcGx1Z2luJztcclxuaW1wb3J0IHsgRXh0cmFjdFBheWxvYWQgfSBmcm9tICdyZXRlLWFuZ3VsYXItcGx1Z2luL3ByZXNldHMvY2xhc3NpYy90eXBlcyc7XHJcbmltcG9ydCB7XHJcbiAgQ2lyY2xlTm9kZUNvbXBvbmVudCxcclxuICBDb250ZW50Tm9kZUNvbXBvbmVudCxcclxuICBDdXN0b21Db25uZWN0aW9uQ29tcG9uZW50LFxyXG4gIEN1c3RvbVNvY2tldENvbXBvbmVudCxcclxuICBHYXRld2F5Tm9kZUNvbXBvbmVudCxcclxuICBUZW1wbGF0ZU5vZGVDb21wb25lbnRcclxufSBmcm9tICcuLi9jb21wb25lbnRzJztcclxuaW1wb3J0IHsgTk9ERV9UWVBFIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcclxuaW1wb3J0IHtcclxuICBCYXNlTm9kZUNsYXNzLFxyXG4gIENpcmNsZU5vZGUsXHJcbiAgQ29ubmVjdGlvbixcclxuICBDb250ZW50Tm9kZSxcclxuICBTb2NrZXQsXHJcbiAgVGVtcGxhdGVOb2RlXHJcbn0gZnJvbSAnLi4vbW9kZWxzJztcclxuaW1wb3J0IHsgR2F0ZVdheU5vZGUgfSBmcm9tICcuLi9tb2RlbHMvZ2F0ZS13YXkubW9kZWwnO1xyXG5pbXBvcnQge1xyXG4gIEFuZ3VsYXJDb21wb25lbnQsXHJcbiAgRGlhZ3JhbUNvbmZpZyxcclxuICBOb2RlRGVmaW5pdGlvbkRhdGEsXHJcbiAgTm9kZVR5cGUsXHJcbiAgU2NoZW1lc1xyXG59IGZyb20gJy4uL3R5cGVzJztcclxuXHJcbi8qKlxyXG4gKlxyXG4gKiBAcGFyYW0gY29uZmlnXHJcbiAqIEByZXR1cm5zXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgY3VzdG9taXplU29ja2V0OiAoXHJcblx0Y29uZmlnOiBEaWFncmFtQ29uZmlnXHJcbikgPT4gKGRhdGE6IEV4dHJhY3RQYXlsb2FkPFNjaGVtZXMsICdzb2NrZXQnPikgPT4gQW5ndWxhckNvbXBvbmVudCB8IG51bGwgPVxyXG5cdChjb25maWcpID0+IChkYXRhKSA9PiB7XHJcblx0XHRjb25zdCBwYXlsb2FkID0gZGF0YS5wYXlsb2FkIGFzIFNvY2tldDtcclxuXHRcdGlmIChwYXlsb2FkLnJlbmRlclR5cGUgPT09ICdjdXN0b20nIHx8IGNvbmZpZy5zb2NrZXRUeXBlID09PSAnY3VzdG9tJykge1xyXG5cdFx0XHRyZXR1cm4gQ3VzdG9tU29ja2V0Q29tcG9uZW50O1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIFNvY2tldENvbXBvbmVudDtcclxuXHR9O1xyXG5cclxuLyoqXHJcbiAqXHJcbiAqIEBwYXJhbSBjb25maWdcclxuICogQHBhcmFtIGVkaXRvclxyXG4gKiBAcmV0dXJuc1xyXG4gKi9cclxuZXhwb3J0IGNvbnN0IGN1c3RvbWl6ZU5vZGU6IChcclxuXHRjb25maWc6IERpYWdyYW1Db25maWcsXHJcblx0ZWRpdG9yOiBOb2RlRWRpdG9yPFNjaGVtZXM+XHJcbikgPT4gKGRhdGE6IEV4dHJhY3RQYXlsb2FkPFNjaGVtZXMsICdub2RlJz4pID0+IEFuZ3VsYXJDb21wb25lbnQgfCBudWxsID1cclxuXHQoY29uZmlnLCBlZGl0b3IpID0+IChkYXRhKSA9PiB7XHJcblx0XHRjb25zdCBub2RlID0gZGF0YS5wYXlsb2FkIGFzIEJhc2VOb2RlQ2xhc3M7XHJcblx0XHRub2RlLmNvbmZpZyA/Pz0gY29uZmlnWydub2RlJ107XHJcblxyXG5cdFx0cmV0dXJuIGluaXRBbmd1bGFyQ29tcG9uZW50QnlUeXBlKG5vZGUudHlwZSk7XHJcblx0fTtcclxuXHJcbi8qKlxyXG4gKlxyXG4gKiBAcGFyYW0gY29uZmlnXHJcbiAqIEByZXR1cm5zXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgY3VzdG9taXplQ29ubmVjdGlvbjogKFxyXG5cdGNvbmZpZzogRGlhZ3JhbUNvbmZpZ1xyXG4pID0+IChkYXRhOiBFeHRyYWN0UGF5bG9hZDxTY2hlbWVzLCAnY29ubmVjdGlvbic+KSA9PiBBbmd1bGFyQ29tcG9uZW50IHwgbnVsbCA9XHJcblx0KGNvbmZpZykgPT4gKGRhdGEpID0+IHtcclxuXHRcdGNvbnN0IHBheWxvYWQgPSBkYXRhLnBheWxvYWQgYXMgQ29ubmVjdGlvbjtcclxuXHJcblx0XHRpZiAocGF5bG9hZC5yZW5kZXJUeXBlID09PSAnY3VzdG9tJyB8fCBjb25maWcuY29ubmVjdGlvblR5cGUgPT0gJ2N1c3RvbScpIHtcclxuXHRcdFx0cmV0dXJuIEN1c3RvbUNvbm5lY3Rpb25Db21wb25lbnQ7XHJcblx0XHR9XHJcblxyXG5cdFx0cmV0dXJuIENvbm5lY3Rpb25Db21wb25lbnQ7XHJcblx0fTtcclxuXHJcbmV4cG9ydCBjb25zdCBpbml0Tm9kZUJ5VHlwZSA9ICh0eXBlOiBOb2RlVHlwZSwgY29uZmlnOiBOb2RlRGVmaW5pdGlvbkRhdGEpID0+IHtcclxuXHRjb25zdCBfbm9kZXM6IFJlY29yZDxOb2RlVHlwZSwgdHlwZW9mIENvbnRlbnROb2RlPiA9IHtcclxuXHRcdFtOT0RFX1RZUEUuc3RhcnRdOiBDaXJjbGVOb2RlLFxyXG5cdFx0W05PREVfVFlQRS5jb250ZW50XTogQ29udGVudE5vZGUsXHJcblx0XHRbTk9ERV9UWVBFLnRlbXBsYXRlXTogVGVtcGxhdGVOb2RlLFxyXG5cdFx0W05PREVfVFlQRS5lbmRdOiBDaXJjbGVOb2RlLFxyXG5cdFx0W05PREVfVFlQRS5nYXRld2F5XTogR2F0ZVdheU5vZGVcclxuXHR9O1xyXG5cdHJldHVybiBuZXcgX25vZGVzW3R5cGVdKGNvbmZpZykgfHwgbmV3IENvbnRlbnROb2RlKGNvbmZpZyk7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgaW5pdEFuZ3VsYXJDb21wb25lbnRCeVR5cGUgPSAodHlwZTogTm9kZVR5cGUpID0+IHtcclxuXHRjb25zdCBfY29tcG9uZW50czogUmVjb3JkPE5vZGVUeXBlLCBBbmd1bGFyQ29tcG9uZW50PiA9IHtcclxuXHRcdFtOT0RFX1RZUEUuY29udGVudF06IENvbnRlbnROb2RlQ29tcG9uZW50LFxyXG5cdFx0W05PREVfVFlQRS5zdGFydF06IENpcmNsZU5vZGVDb21wb25lbnQsXHJcblx0XHRbTk9ERV9UWVBFLmVuZF06IENpcmNsZU5vZGVDb21wb25lbnQsXHJcblx0XHRbTk9ERV9UWVBFLnRlbXBsYXRlXTogVGVtcGxhdGVOb2RlQ29tcG9uZW50LFxyXG5cdFx0W05PREVfVFlQRS5nYXRld2F5XTogR2F0ZXdheU5vZGVDb21wb25lbnRcclxuXHR9O1xyXG5cclxuXHRyZXR1cm4gX2NvbXBvbmVudHNbdHlwZV0gfHwgTm9kZUNvbXBvbmVudDtcclxufTtcclxuIl19
@@ -2,19 +2,19 @@ import { __awaiter } from "tslib";
2
2
  import { NodeEditor } from 'rete';
3
3
  import { AreaExtensions, AreaPlugin } from 'rete-area-plugin';
4
4
  import { AngularPlugin, Presets as AngularPresets } from 'rete-angular-plugin';
5
- import { Presets as ArrangePresets, AutoArrangePlugin, } from 'rete-auto-arrange-plugin';
6
- import { ConnectionPlugin, Presets as ConnectionPresets, } from 'rete-connection-plugin';
7
- import { RerouteExtensions, ReroutePlugin, } from 'rete-connection-reroute-plugin';
5
+ import { Presets as ArrangePresets, AutoArrangePlugin } from 'rete-auto-arrange-plugin';
6
+ import { ConnectionPlugin, Presets as ConnectionPresets } from 'rete-connection-plugin';
7
+ import { RerouteExtensions, ReroutePlugin } from 'rete-connection-reroute-plugin';
8
8
  import { ReadonlyPlugin } from 'rete-readonly-plugin';
9
9
  import { Socket } from '../models';
10
10
  import { MinimapPlugin } from 'rete-minimap-plugin';
11
- import { customizeConnection, customizeNode, customizeSocket, } from './customize';
11
+ import { customizeConnection, customizeNode, customizeSocket } from './customize';
12
12
  import { initPathPlugin } from './path-plugin';
13
13
  import { socketPositionWatcher } from './socket-position-watcher';
14
14
  export const createDiagramEditor = (container, injector, config) => __awaiter(void 0, void 0, void 0, function* () {
15
- var _a, _b, _c, _d, _e, _f, _g;
15
+ var _a, _b, _c, _d, _e, _f, _g, _h;
16
16
  //#region PLUGINS
17
- const socket = new Socket('', config === null || config === void 0 ? void 0 : config.socketType);
17
+ const socket = new Socket({ name: '', renderType: config === null || config === void 0 ? void 0 : config.socketType });
18
18
  const editor = new NodeEditor();
19
19
  const area = new AreaPlugin(container);
20
20
  const connection = new ConnectionPlugin();
@@ -32,31 +32,33 @@ export const createDiagramEditor = (container, injector, config) => __awaiter(vo
32
32
  RerouteExtensions.selectablePins(reroute, selector, accumulating);
33
33
  //#endregion
34
34
  //#region PRESETS
35
- arrange.addPreset(ArrangePresets.classic.setup());
35
+ arrange.addPreset(((_b = config === null || config === void 0 ? void 0 : config.presets) === null || _b === void 0 ? void 0 : _b.arrange)
36
+ ? config === null || config === void 0 ? void 0 : config.presets.arrange(editor)
37
+ : ArrangePresets.classic.setup());
36
38
  angularRender.addPreset(AngularPresets.classic.setup({
37
- socketPositionWatcher: socketPositionWatcher(0, (_b = config === null || config === void 0 ? void 0 : config.path) === null || _b === void 0 ? void 0 : _b.vertical, editor),
39
+ socketPositionWatcher: socketPositionWatcher(0, (_c = config === null || config === void 0 ? void 0 : config.path) === null || _c === void 0 ? void 0 : _c.vertical, editor),
38
40
  customize: {
39
41
  node: customizeNode(config, editor),
40
42
  connection: customizeConnection(config),
41
- socket: customizeSocket(config),
42
- },
43
+ socket: customizeSocket(config)
44
+ }
43
45
  }));
44
- angularRender.addPreset(AngularPresets.minimap.setup({ size: ((_c = config === null || config === void 0 ? void 0 : config.minimap) === null || _c === void 0 ? void 0 : _c.size) || 150 }));
46
+ angularRender.addPreset(AngularPresets.minimap.setup({ size: ((_d = config === null || config === void 0 ? void 0 : config.minimap) === null || _d === void 0 ? void 0 : _d.size) || 150 }));
45
47
  connection.addPreset(ConnectionPresets.classic.setup());
46
- if ((_d = config === null || config === void 0 ? void 0 : config.area) === null || _d === void 0 ? void 0 : _d.restrict) {
48
+ if ((_e = config === null || config === void 0 ? void 0 : config.area) === null || _e === void 0 ? void 0 : _e.restrict) {
47
49
  const _scaling = (config === null || config === void 0 ? void 0 : config.area.scaling) || { min: 0.5, max: 1.5 };
48
50
  AreaExtensions.restrictor(area, {
49
- scaling: () => _scaling,
51
+ scaling: () => _scaling
50
52
  });
51
53
  }
52
54
  //#endregion
53
55
  //#region USE
54
- if ((_e = config === null || config === void 0 ? void 0 : config.readonly) === null || _e === void 0 ? void 0 : _e.active) {
56
+ if ((_f = config === null || config === void 0 ? void 0 : config.readonly) === null || _f === void 0 ? void 0 : _f.active) {
55
57
  editor.use(readonly.root);
56
58
  area.use(readonly.area);
57
59
  }
58
60
  editor.use(area);
59
- if (!((_f = config === null || config === void 0 ? void 0 : config.readonly) === null || _f === void 0 ? void 0 : _f.active)) {
61
+ if (!((_g = config === null || config === void 0 ? void 0 : config.readonly) === null || _g === void 0 ? void 0 : _g.active)) {
60
62
  // Don't use the connection plugin in readonly mode
61
63
  area.use(connection);
62
64
  }
@@ -69,7 +71,7 @@ export const createDiagramEditor = (container, injector, config) => __awaiter(vo
69
71
  //@ts-ignore
70
72
  angularRender.use(reroute);
71
73
  }
72
- if ((_g = config === null || config === void 0 ? void 0 : config.minimap) === null || _g === void 0 ? void 0 : _g.active) {
74
+ if ((_h = config === null || config === void 0 ? void 0 : config.minimap) === null || _h === void 0 ? void 0 : _h.active) {
73
75
  area.use(minimap);
74
76
  }
75
77
  // Render Diagram
@@ -83,13 +85,13 @@ export const createDiagramEditor = (container, injector, config) => __awaiter(vo
83
85
  connection,
84
86
  arrange,
85
87
  reroute,
86
- readonly,
88
+ readonly
87
89
  },
88
90
  destroy: () => area.destroy(),
89
91
  layout: (props) => arrange.layout(props),
90
92
  fitToZoom: () => {
91
93
  AreaExtensions.zoomAt(area, editor.getNodes());
92
- },
94
+ }
93
95
  };
94
96
  });
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9kaWFncmFtcy9lZGl0b3IvZWRpdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFFQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFTOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxPQUFPLElBQUksY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFL0UsT0FBTyxFQUNMLE9BQU8sSUFBSSxjQUFjLEVBQ3pCLGlCQUFpQixHQUNsQixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsT0FBTyxJQUFJLGlCQUFpQixHQUM3QixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsYUFBYSxHQUNkLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFbkMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsYUFBYSxFQUNiLGVBQWUsR0FDaEIsTUFBTSxhQUFhLENBQUM7QUFDckIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVsRSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUNqQyxTQUFzQixFQUN0QixRQUFrQixFQUNsQixNQUFxQixFQUNjLEVBQUU7O0lBQ3JD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LElBQUksQ0FBQyxPQUFPLEVBQUU7UUFDN0IsTUFBTSxFQUFFLENBQUMsS0FBb0IsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDdkQsU0FBUyxFQUFFLEdBQUcsRUFBRTtZQUNkLGNBQWMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFBLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvL0B0cy1ub2NoZWNrXHJcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5vZGVFZGl0b3IgfSBmcm9tICdyZXRlJztcclxuaW1wb3J0IHsgQXJlYUV4dGVuc2lvbnMsIEFyZWFQbHVnaW4gfSBmcm9tICdyZXRlLWFyZWEtcGx1Z2luJztcclxuaW1wb3J0IHtcclxuICBBcmVhRXh0cmEsXHJcbiAgQXJyYW5nZVByb3BzLFxyXG4gIERpYWdyYW1Db25maWcsXHJcbiAgRGlhZ3JhbUVkaXRvcldpdGhQbHVnaW5zLFxyXG4gIFNjaGVtZXMsXHJcbn0gZnJvbSAnLi4vdHlwZXMnO1xyXG5cclxuaW1wb3J0IHsgQW5ndWxhclBsdWdpbiwgUHJlc2V0cyBhcyBBbmd1bGFyUHJlc2V0cyB9IGZyb20gJ3JldGUtYW5ndWxhci1wbHVnaW4nO1xyXG5cclxuaW1wb3J0IHtcclxuICBQcmVzZXRzIGFzIEFycmFuZ2VQcmVzZXRzLFxyXG4gIEF1dG9BcnJhbmdlUGx1Z2luLFxyXG59IGZyb20gJ3JldGUtYXV0by1hcnJhbmdlLXBsdWdpbic7XHJcbmltcG9ydCB7XHJcbiAgQ29ubmVjdGlvblBsdWdpbixcclxuICBQcmVzZXRzIGFzIENvbm5lY3Rpb25QcmVzZXRzLFxyXG59IGZyb20gJ3JldGUtY29ubmVjdGlvbi1wbHVnaW4nO1xyXG5pbXBvcnQge1xyXG4gIFJlcm91dGVFeHRlbnNpb25zLFxyXG4gIFJlcm91dGVQbHVnaW4sXHJcbn0gZnJvbSAncmV0ZS1jb25uZWN0aW9uLXJlcm91dGUtcGx1Z2luJztcclxuaW1wb3J0IHsgUmVhZG9ubHlQbHVnaW4gfSBmcm9tICdyZXRlLXJlYWRvbmx5LXBsdWdpbic7XHJcbmltcG9ydCB7IFNvY2tldCB9IGZyb20gJy4uL21vZGVscyc7XHJcblxyXG5pbXBvcnQgeyBNaW5pbWFwUGx1Z2luIH0gZnJvbSAncmV0ZS1taW5pbWFwLXBsdWdpbic7XHJcbmltcG9ydCB7XHJcbiAgY3VzdG9taXplQ29ubmVjdGlvbixcclxuICBjdXN0b21pemVOb2RlLFxyXG4gIGN1c3RvbWl6ZVNvY2tldCxcclxufSBmcm9tICcuL2N1c3RvbWl6ZSc7XHJcbmltcG9ydCB7IGluaXRQYXRoUGx1Z2luIH0gZnJvbSAnLi9wYXRoLXBsdWdpbic7XHJcbmltcG9ydCB7IHNvY2tldFBvc2l0aW9uV2F0Y2hlciB9IGZyb20gJy4vc29ja2V0LXBvc2l0aW9uLXdhdGNoZXInO1xyXG5cclxuZXhwb3J0IGNvbnN0IGNyZWF0ZURpYWdyYW1FZGl0b3IgPSBhc3luYyAoXHJcbiAgY29udGFpbmVyOiBIVE1MRWxlbWVudCxcclxuICBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgY29uZmlnOiBEaWFncmFtQ29uZmlnXHJcbik6IFByb21pc2U8RGlhZ3JhbUVkaXRvcldpdGhQbHVnaW5zPiA9PiB7XHJcbiAgLy8jcmVnaW9uIFBMVUdJTlNcclxuICBjb25zdCBzb2NrZXQgPSBuZXcgU29ja2V0KCcnLCBjb25maWc/LnNvY2tldFR5cGUpO1xyXG4gIGNvbnN0IGVkaXRvciA9IG5ldyBOb2RlRWRpdG9yPFNjaGVtZXM+KCk7XHJcbiAgY29uc3QgYXJlYSA9IG5ldyBBcmVhUGx1Z2luPFNjaGVtZXMsIEFyZWFFeHRyYT4oY29udGFpbmVyKTtcclxuICBjb25zdCBjb25uZWN0aW9uID0gbmV3IENvbm5lY3Rpb25QbHVnaW48U2NoZW1lcywgQXJlYUV4dHJhPigpO1xyXG4gIGNvbnN0IHBhdGhQbHVnaW4gPSBpbml0UGF0aFBsdWdpbihjb25maWc/LnBhdGgpO1xyXG4gIGNvbnN0IGFuZ3VsYXJSZW5kZXIgPSBuZXcgQW5ndWxhclBsdWdpbjxTY2hlbWVzLCBBcmVhRXh0cmE+KHsgaW5qZWN0b3IgfSk7XHJcbiAgY29uc3QgcmVhZG9ubHkgPSBuZXcgUmVhZG9ubHlQbHVnaW48U2NoZW1lcz4oKTtcclxuICBjb25zdCBhcnJhbmdlID0gbmV3IEF1dG9BcnJhbmdlUGx1Z2luPFNjaGVtZXM+KCk7XHJcbiAgY29uc3QgcmVyb3V0ZSA9IG5ldyBSZXJvdXRlUGx1Z2luPFNjaGVtZXM+KCk7XHJcbiAgY29uc3QgbWluaW1hcCA9IG5ldyBNaW5pbWFwUGx1Z2luPFNjaGVtZXM+KGNvbmZpZz8ubWluaW1hcD8ub3B0aW9ucyk7XHJcblxyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuICAvLyNyZWdpb24gU0VMRUNUT1JTXHJcbiAgY29uc3Qgc2VsZWN0b3IgPSBBcmVhRXh0ZW5zaW9ucy5zZWxlY3RvcigpO1xyXG4gIGNvbnN0IGFjY3VtdWxhdGluZyA9IEFyZWFFeHRlbnNpb25zLmFjY3VtdWxhdGVPbkN0cmwoKTtcclxuICBBcmVhRXh0ZW5zaW9ucy5zZWxlY3RhYmxlTm9kZXMoYXJlYSwgc2VsZWN0b3IsIHsgYWNjdW11bGF0aW5nIH0pO1xyXG4gIFJlcm91dGVFeHRlbnNpb25zLnNlbGVjdGFibGVQaW5zKHJlcm91dGUsIHNlbGVjdG9yLCBhY2N1bXVsYXRpbmcpO1xyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuICAvLyNyZWdpb24gUFJFU0VUU1xyXG5cclxuICBhcnJhbmdlLmFkZFByZXNldChBcnJhbmdlUHJlc2V0cy5jbGFzc2ljLnNldHVwKCkpO1xyXG5cclxuICBhbmd1bGFyUmVuZGVyLmFkZFByZXNldChcclxuICAgIEFuZ3VsYXJQcmVzZXRzLmNsYXNzaWMuc2V0dXAoe1xyXG4gICAgICBzb2NrZXRQb3NpdGlvbldhdGNoZXI6IHNvY2tldFBvc2l0aW9uV2F0Y2hlcihcclxuICAgICAgICAwLFxyXG4gICAgICAgIGNvbmZpZz8ucGF0aD8udmVydGljYWwsXHJcbiAgICAgICAgZWRpdG9yXHJcbiAgICAgICksXHJcbiAgICAgIGN1c3RvbWl6ZToge1xyXG4gICAgICAgIG5vZGU6IGN1c3RvbWl6ZU5vZGUoY29uZmlnLCBlZGl0b3IpLFxyXG4gICAgICAgIGNvbm5lY3Rpb246IGN1c3RvbWl6ZUNvbm5lY3Rpb24oY29uZmlnKSxcclxuICAgICAgICBzb2NrZXQ6IGN1c3RvbWl6ZVNvY2tldChjb25maWcpLFxyXG4gICAgICB9LFxyXG4gICAgfSlcclxuICApO1xyXG5cclxuICBhbmd1bGFyUmVuZGVyLmFkZFByZXNldChcclxuICAgIEFuZ3VsYXJQcmVzZXRzLm1pbmltYXAuc2V0dXAoeyBzaXplOiBjb25maWc/Lm1pbmltYXA/LnNpemUgfHwgMTUwIH0pXHJcbiAgKTtcclxuXHJcbiAgY29ubmVjdGlvbi5hZGRQcmVzZXQoQ29ubmVjdGlvblByZXNldHMuY2xhc3NpYy5zZXR1cCgpKTtcclxuXHJcbiAgaWYgKGNvbmZpZz8uYXJlYT8ucmVzdHJpY3QpIHtcclxuICAgIGNvbnN0IF9zY2FsaW5nID0gY29uZmlnPy5hcmVhLnNjYWxpbmcgfHwgeyBtaW46IDAuNSwgbWF4OiAxLjUgfTtcclxuICAgIEFyZWFFeHRlbnNpb25zLnJlc3RyaWN0b3IoYXJlYSwge1xyXG4gICAgICBzY2FsaW5nOiAoKSA9PiBfc2NhbGluZyxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy8jZW5kcmVnaW9uXHJcblxyXG4gIC8vI3JlZ2lvbiBVU0VcclxuXHJcbiAgaWYgKGNvbmZpZz8ucmVhZG9ubHk/LmFjdGl2ZSkge1xyXG4gICAgZWRpdG9yLnVzZShyZWFkb25seS5yb290KTtcclxuICAgIGFyZWEudXNlKHJlYWRvbmx5LmFyZWEpO1xyXG4gIH1cclxuXHJcbiAgZWRpdG9yLnVzZShhcmVhKTtcclxuXHJcbiAgaWYgKCFjb25maWc/LnJlYWRvbmx5Py5hY3RpdmUpIHtcclxuICAgIC8vIERvbid0IHVzZSB0aGUgY29ubmVjdGlvbiBwbHVnaW4gaW4gcmVhZG9ubHkgbW9kZVxyXG4gICAgYXJlYS51c2UoY29ubmVjdGlvbik7XHJcbiAgfVxyXG5cclxuICBpZiAoY29uZmlnPy5lbmFibGVBcnJhbmdlKSB7XHJcbiAgICBhcmVhLnVzZShhcnJhbmdlKTtcclxuICB9XHJcblxyXG4gIC8vQHRzLWlnbm9yZVxyXG4gIGFuZ3VsYXJSZW5kZXIudXNlKHBhdGhQbHVnaW4pO1xyXG5cclxuICBpZiAoY29uZmlnLnJlcm91dGUpIHtcclxuICAgIC8vQHRzLWlnbm9yZVxyXG4gICAgYW5ndWxhclJlbmRlci51c2UocmVyb3V0ZSk7XHJcbiAgfVxyXG4gIGlmIChjb25maWc/Lm1pbmltYXA/LmFjdGl2ZSkge1xyXG4gICAgYXJlYS51c2UobWluaW1hcCk7XHJcbiAgfVxyXG5cclxuICAvLyBSZW5kZXIgRGlhZ3JhbVxyXG4gIGFyZWEudXNlKGFuZ3VsYXJSZW5kZXIpO1xyXG5cclxuICAvLyNlbmRyZWdpb25cclxuICByZXR1cm4ge1xyXG4gICAgZWRpdG9yLFxyXG4gICAgc29ja2V0LFxyXG4gICAgcGx1Z2luczoge1xyXG4gICAgICBhcmVhLFxyXG4gICAgICBjb25uZWN0aW9uLFxyXG4gICAgICBhcnJhbmdlLFxyXG4gICAgICByZXJvdXRlLFxyXG4gICAgICByZWFkb25seSxcclxuICAgIH0sXHJcbiAgICBkZXN0cm95OiAoKSA9PiBhcmVhLmRlc3Ryb3koKSxcclxuICAgIGxheW91dDogKHByb3BzPzogQXJyYW5nZVByb3BzKSA9PiBhcnJhbmdlLmxheW91dChwcm9wcyksXHJcbiAgICBmaXRUb1pvb206ICgpID0+IHtcclxuICAgICAgQXJlYUV4dGVuc2lvbnMuem9vbUF0KGFyZWEsIGVkaXRvci5nZXROb2RlcygpKTtcclxuICAgIH0sXHJcbiAgfTtcclxufTtcclxuIl19
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9kaWFncmFtcy9lZGl0b3IvZWRpdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFFQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFTOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxPQUFPLElBQUksY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFL0UsT0FBTyxFQUNMLE9BQU8sSUFBSSxjQUFjLEVBQ3pCLGlCQUFpQixFQUNsQixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsT0FBTyxJQUFJLGlCQUFpQixFQUM3QixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsYUFBYSxFQUNkLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFbkMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsYUFBYSxFQUNiLGVBQWUsRUFDaEIsTUFBTSxhQUFhLENBQUM7QUFDckIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVsRSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUNsQyxTQUFzQixFQUN0QixRQUFrQixFQUNsQixNQUFxQixFQUNlLEVBQUU7O0lBQ3RD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SUFDakIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUV4QixZQUFZO0lBQ1osT0FBTztRQUNOLE1BQU07UUFDTixNQUFNO1FBQ04sT0FBTyxFQUFFO1lBQ1IsSUFBSTtZQUNKLFVBQVU7WUFDVixPQUFPO1lBQ1AsT0FBTztZQUNQLFFBQVE7U0FDUjtRQUNELE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1FBQzdCLE1BQU0sRUFBRSxDQUFDLEtBQW9CLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQ3ZELFNBQVMsRUFBRSxHQUFHLEVBQUU7WUFDZixjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNoRCxDQUFDO0tBQ0QsQ0FBQztBQUNILENBQUMsQ0FBQSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy9AdHMtbm9jaGVja1xyXG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOb2RlRWRpdG9yIH0gZnJvbSAncmV0ZSc7XHJcbmltcG9ydCB7IEFyZWFFeHRlbnNpb25zLCBBcmVhUGx1Z2luIH0gZnJvbSAncmV0ZS1hcmVhLXBsdWdpbic7XHJcbmltcG9ydCB7XHJcbiAgQXJlYUV4dHJhLFxyXG4gIEFycmFuZ2VQcm9wcyxcclxuICBEaWFncmFtQ29uZmlnLFxyXG4gIERpYWdyYW1FZGl0b3JXaXRoUGx1Z2lucyxcclxuICBTY2hlbWVzXHJcbn0gZnJvbSAnLi4vdHlwZXMnO1xyXG5cclxuaW1wb3J0IHsgQW5ndWxhclBsdWdpbiwgUHJlc2V0cyBhcyBBbmd1bGFyUHJlc2V0cyB9IGZyb20gJ3JldGUtYW5ndWxhci1wbHVnaW4nO1xyXG5cclxuaW1wb3J0IHtcclxuICBQcmVzZXRzIGFzIEFycmFuZ2VQcmVzZXRzLFxyXG4gIEF1dG9BcnJhbmdlUGx1Z2luXHJcbn0gZnJvbSAncmV0ZS1hdXRvLWFycmFuZ2UtcGx1Z2luJztcclxuaW1wb3J0IHtcclxuICBDb25uZWN0aW9uUGx1Z2luLFxyXG4gIFByZXNldHMgYXMgQ29ubmVjdGlvblByZXNldHNcclxufSBmcm9tICdyZXRlLWNvbm5lY3Rpb24tcGx1Z2luJztcclxuaW1wb3J0IHtcclxuICBSZXJvdXRlRXh0ZW5zaW9ucyxcclxuICBSZXJvdXRlUGx1Z2luXHJcbn0gZnJvbSAncmV0ZS1jb25uZWN0aW9uLXJlcm91dGUtcGx1Z2luJztcclxuaW1wb3J0IHsgUmVhZG9ubHlQbHVnaW4gfSBmcm9tICdyZXRlLXJlYWRvbmx5LXBsdWdpbic7XHJcbmltcG9ydCB7IFNvY2tldCB9IGZyb20gJy4uL21vZGVscyc7XHJcblxyXG5pbXBvcnQgeyBNaW5pbWFwUGx1Z2luIH0gZnJvbSAncmV0ZS1taW5pbWFwLXBsdWdpbic7XHJcbmltcG9ydCB7XHJcbiAgY3VzdG9taXplQ29ubmVjdGlvbixcclxuICBjdXN0b21pemVOb2RlLFxyXG4gIGN1c3RvbWl6ZVNvY2tldFxyXG59IGZyb20gJy4vY3VzdG9taXplJztcclxuaW1wb3J0IHsgaW5pdFBhdGhQbHVnaW4gfSBmcm9tICcuL3BhdGgtcGx1Z2luJztcclxuaW1wb3J0IHsgc29ja2V0UG9zaXRpb25XYXRjaGVyIH0gZnJvbSAnLi9zb2NrZXQtcG9zaXRpb24td2F0Y2hlcic7XHJcblxyXG5leHBvcnQgY29uc3QgY3JlYXRlRGlhZ3JhbUVkaXRvciA9IGFzeW5jIChcclxuXHRjb250YWluZXI6IEhUTUxFbGVtZW50LFxyXG5cdGluamVjdG9yOiBJbmplY3RvcixcclxuXHRjb25maWc6IERpYWdyYW1Db25maWdcclxuKTogUHJvbWlzZTxEaWFncmFtRWRpdG9yV2l0aFBsdWdpbnM+ID0+IHtcclxuXHQvLyNyZWdpb24gUExVR0lOU1xyXG5cdGNvbnN0IHNvY2tldCA9IG5ldyBTb2NrZXQoeyBuYW1lOiAnJywgcmVuZGVyVHlwZTogY29uZmlnPy5zb2NrZXRUeXBlIH0pO1xyXG5cdGNvbnN0IGVkaXRvciA9IG5ldyBOb2RlRWRpdG9yPFNjaGVtZXM+KCk7XHJcblx0Y29uc3QgYXJlYSA9IG5ldyBBcmVhUGx1Z2luPFNjaGVtZXMsIEFyZWFFeHRyYT4oY29udGFpbmVyKTtcclxuXHRjb25zdCBjb25uZWN0aW9uID0gbmV3IENvbm5lY3Rpb25QbHVnaW48U2NoZW1lcywgQXJlYUV4dHJhPigpO1xyXG5cdGNvbnN0IHBhdGhQbHVnaW4gPSBpbml0UGF0aFBsdWdpbihjb25maWc/LnBhdGgpO1xyXG5cdGNvbnN0IGFuZ3VsYXJSZW5kZXIgPSBuZXcgQW5ndWxhclBsdWdpbjxTY2hlbWVzLCBBcmVhRXh0cmE+KHsgaW5qZWN0b3IgfSk7XHJcblx0Y29uc3QgcmVhZG9ubHkgPSBuZXcgUmVhZG9ubHlQbHVnaW48U2NoZW1lcz4oKTtcclxuXHRjb25zdCBhcnJhbmdlID0gbmV3IEF1dG9BcnJhbmdlUGx1Z2luPFNjaGVtZXM+KCk7XHJcblx0Y29uc3QgcmVyb3V0ZSA9IG5ldyBSZXJvdXRlUGx1Z2luPFNjaGVtZXM+KCk7XHJcblx0Y29uc3QgbWluaW1hcCA9IG5ldyBNaW5pbWFwUGx1Z2luPFNjaGVtZXM+KGNvbmZpZz8ubWluaW1hcD8ub3B0aW9ucyk7XHJcblxyXG5cdC8vI2VuZHJlZ2lvblxyXG5cclxuXHQvLyNyZWdpb24gU0VMRUNUT1JTXHJcblx0Y29uc3Qgc2VsZWN0b3IgPSBBcmVhRXh0ZW5zaW9ucy5zZWxlY3RvcigpO1xyXG5cdGNvbnN0IGFjY3VtdWxhdGluZyA9IEFyZWFFeHRlbnNpb25zLmFjY3VtdWxhdGVPbkN0cmwoKTtcclxuXHRBcmVhRXh0ZW5zaW9ucy5zZWxlY3RhYmxlTm9kZXMoYXJlYSwgc2VsZWN0b3IsIHsgYWNjdW11bGF0aW5nIH0pO1xyXG5cdFJlcm91dGVFeHRlbnNpb25zLnNlbGVjdGFibGVQaW5zKHJlcm91dGUsIHNlbGVjdG9yLCBhY2N1bXVsYXRpbmcpO1xyXG5cdC8vI2VuZHJlZ2lvblxyXG5cclxuXHQvLyNyZWdpb24gUFJFU0VUU1xyXG5cclxuXHRhcnJhbmdlLmFkZFByZXNldChcclxuXHRcdGNvbmZpZz8ucHJlc2V0cz8uYXJyYW5nZVxyXG5cdFx0XHQ/IGNvbmZpZz8ucHJlc2V0cy5hcnJhbmdlKGVkaXRvcilcclxuXHRcdFx0OiBBcnJhbmdlUHJlc2V0cy5jbGFzc2ljLnNldHVwKClcclxuXHQpO1xyXG5cclxuXHRhbmd1bGFyUmVuZGVyLmFkZFByZXNldChcclxuXHRcdEFuZ3VsYXJQcmVzZXRzLmNsYXNzaWMuc2V0dXAoe1xyXG5cdFx0XHRzb2NrZXRQb3NpdGlvbldhdGNoZXI6IHNvY2tldFBvc2l0aW9uV2F0Y2hlcihcclxuXHRcdFx0XHQwLFxyXG5cdFx0XHRcdGNvbmZpZz8ucGF0aD8udmVydGljYWwsXHJcblx0XHRcdFx0ZWRpdG9yXHJcblx0XHRcdCksXHJcblx0XHRcdGN1c3RvbWl6ZToge1xyXG5cdFx0XHRcdG5vZGU6IGN1c3RvbWl6ZU5vZGUoY29uZmlnLCBlZGl0b3IpLFxyXG5cdFx0XHRcdGNvbm5lY3Rpb246IGN1c3RvbWl6ZUNvbm5lY3Rpb24oY29uZmlnKSxcclxuXHRcdFx0XHRzb2NrZXQ6IGN1c3RvbWl6ZVNvY2tldChjb25maWcpXHJcblx0XHRcdH1cclxuXHRcdH0pXHJcblx0KTtcclxuXHJcblx0YW5ndWxhclJlbmRlci5hZGRQcmVzZXQoXHJcblx0XHRBbmd1bGFyUHJlc2V0cy5taW5pbWFwLnNldHVwKHsgc2l6ZTogY29uZmlnPy5taW5pbWFwPy5zaXplIHx8IDE1MCB9KVxyXG5cdCk7XHJcblxyXG5cdGNvbm5lY3Rpb24uYWRkUHJlc2V0KENvbm5lY3Rpb25QcmVzZXRzLmNsYXNzaWMuc2V0dXAoKSk7XHJcblxyXG5cdGlmIChjb25maWc/LmFyZWE/LnJlc3RyaWN0KSB7XHJcblx0XHRjb25zdCBfc2NhbGluZyA9IGNvbmZpZz8uYXJlYS5zY2FsaW5nIHx8IHsgbWluOiAwLjUsIG1heDogMS41IH07XHJcblx0XHRBcmVhRXh0ZW5zaW9ucy5yZXN0cmljdG9yKGFyZWEsIHtcclxuXHRcdFx0c2NhbGluZzogKCkgPT4gX3NjYWxpbmdcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0Ly8jZW5kcmVnaW9uXHJcblxyXG5cdC8vI3JlZ2lvbiBVU0VcclxuXHJcblx0aWYgKGNvbmZpZz8ucmVhZG9ubHk/LmFjdGl2ZSkge1xyXG5cdFx0ZWRpdG9yLnVzZShyZWFkb25seS5yb290KTtcclxuXHRcdGFyZWEudXNlKHJlYWRvbmx5LmFyZWEpO1xyXG5cdH1cclxuXHJcblx0ZWRpdG9yLnVzZShhcmVhKTtcclxuXHJcblx0aWYgKCFjb25maWc/LnJlYWRvbmx5Py5hY3RpdmUpIHtcclxuXHRcdC8vIERvbid0IHVzZSB0aGUgY29ubmVjdGlvbiBwbHVnaW4gaW4gcmVhZG9ubHkgbW9kZVxyXG5cdFx0YXJlYS51c2UoY29ubmVjdGlvbik7XHJcblx0fVxyXG5cclxuXHRpZiAoY29uZmlnPy5lbmFibGVBcnJhbmdlKSB7XHJcblx0XHRhcmVhLnVzZShhcnJhbmdlKTtcclxuXHR9XHJcblxyXG5cdC8vQHRzLWlnbm9yZVxyXG5cdGFuZ3VsYXJSZW5kZXIudXNlKHBhdGhQbHVnaW4pO1xyXG5cclxuXHRpZiAoY29uZmlnLnJlcm91dGUpIHtcclxuXHRcdC8vQHRzLWlnbm9yZVxyXG5cdFx0YW5ndWxhclJlbmRlci51c2UocmVyb3V0ZSk7XHJcblx0fVxyXG5cdGlmIChjb25maWc/Lm1pbmltYXA/LmFjdGl2ZSkge1xyXG5cdFx0YXJlYS51c2UobWluaW1hcCk7XHJcblx0fVxyXG5cclxuXHQvLyBSZW5kZXIgRGlhZ3JhbVxyXG5cdGFyZWEudXNlKGFuZ3VsYXJSZW5kZXIpO1xyXG5cclxuXHQvLyNlbmRyZWdpb25cclxuXHRyZXR1cm4ge1xyXG5cdFx0ZWRpdG9yLFxyXG5cdFx0c29ja2V0LFxyXG5cdFx0cGx1Z2luczoge1xyXG5cdFx0XHRhcmVhLFxyXG5cdFx0XHRjb25uZWN0aW9uLFxyXG5cdFx0XHRhcnJhbmdlLFxyXG5cdFx0XHRyZXJvdXRlLFxyXG5cdFx0XHRyZWFkb25seVxyXG5cdFx0fSxcclxuXHRcdGRlc3Ryb3k6ICgpID0+IGFyZWEuZGVzdHJveSgpLFxyXG5cdFx0bGF5b3V0OiAocHJvcHM/OiBBcnJhbmdlUHJvcHMpID0+IGFycmFuZ2UubGF5b3V0KHByb3BzKSxcclxuXHRcdGZpdFRvWm9vbTogKCkgPT4ge1xyXG5cdFx0XHRBcmVhRXh0ZW5zaW9ucy56b29tQXQoYXJlYSwgZWRpdG9yLmdldE5vZGVzKCkpO1xyXG5cdFx0fVxyXG5cdH07XHJcbn07XHJcbiJdfQ==
@@ -1,25 +1,50 @@
1
+ import { getRandomNumber } from '../../utilities';
1
2
  export const createSegmentedPath = (connection, options) => {
2
- const { multiPoints = true, offset = 0 } = options || {};
3
+ var _a;
4
+ const { multiPoints = true, offset = 0 } = ((_a = options === null || options === void 0 ? void 0 : options.transform) === null || _a === void 0 ? void 0 : _a.options) || {};
5
+ const isVertical = !!(options === null || options === void 0 ? void 0 : options.vertical);
6
+ const direction = connection.direction;
3
7
  return (points) => {
4
8
  if (points.length !== 2) {
5
9
  throw new Error('Exactly two points are required to create a linear path.');
6
10
  }
7
11
  const [start, end] = points;
12
+ if (!isVertical) {
13
+ switch (direction) {
14
+ case 'down': {
15
+ const offset = getRandomNumber(start.x, start.y, 10, 50, 150);
16
+ const _points = [
17
+ { x: start.x, y: start.y + offset },
18
+ { x: end.x, y: end.y + offset }
19
+ ];
20
+ return [start, ..._points, end];
21
+ }
22
+ case 'backward': {
23
+ const _points = [{ x: end.x, y: start.y }];
24
+ return [start, ..._points, end];
25
+ }
26
+ case 'forward': {
27
+ if (end.y < start.y) {
28
+ const _points = [{ x: start.x, y: end.y }];
29
+ return [start, ..._points, end];
30
+ }
31
+ break;
32
+ }
33
+ }
34
+ }
8
35
  if (multiPoints) {
9
36
  const midpointY = (end.y - start.y) / 2 + start.y;
10
37
  const intermediatePoints = [
11
38
  { x: start.x, y: midpointY - offset },
12
- { x: end.x, y: midpointY + offset },
39
+ { x: end.x, y: midpointY + offset }
13
40
  ];
14
- // Use bezier curves between points to smooth corners
15
41
  return [
16
42
  Object.assign(Object.assign({}, start), { controlOut: { x: start.x, y: midpointY - offset } }),
17
- intermediatePoints[0],
18
- intermediatePoints[1],
19
- Object.assign(Object.assign({}, end), { controlIn: { x: end.x, y: midpointY + offset } }),
43
+ ...intermediatePoints,
44
+ Object.assign(Object.assign({}, end), { controlIn: { x: end.x, y: midpointY + offset } })
20
45
  ];
21
46
  }
22
47
  return [start, end];
23
48
  };
24
49
  };
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi1wYXRoLnRyYW5zZm9ybWVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZGlhZ3JhbXMvZWRpdG9yL292ZXJyaWRlcy9jb25uZWN0aW9uLXBhdGgudHJhbnNmb3JtZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQ2pDLFVBQXNCLEVBQ3RCLE9BQW1ELEVBQ3RDLEVBQUU7SUFDZixNQUFNLEVBQUUsV0FBVyxHQUFHLElBQUksRUFBRSxNQUFNLEdBQUcsQ0FBQyxFQUFFLEdBQUcsT0FBTyxJQUFJLEVBQUUsQ0FBQztJQUV6RCxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUU7UUFDaEIsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN2QixNQUFNLElBQUksS0FBSyxDQUNiLDBEQUEwRCxDQUMzRCxDQUFDO1NBQ0g7UUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUU1QixJQUFJLFdBQVcsRUFBRTtZQUNmLE1BQU0sU0FBUyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFFbEQsTUFBTSxrQkFBa0IsR0FBRztnQkFDekIsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsU0FBUyxHQUFHLE1BQU0sRUFBRTtnQkFDckMsRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsU0FBUyxHQUFHLE1BQU0sRUFBRTthQUNwQyxDQUFDO1lBRUYscURBQXFEO1lBQ3JELE9BQU87Z0RBQ0EsS0FBSyxLQUFFLFVBQVUsRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxTQUFTLEdBQUcsTUFBTSxFQUFFO2dCQUM3RCxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7Z0JBQ3JCLGtCQUFrQixDQUFDLENBQUMsQ0FBQztnREFDaEIsR0FBRyxLQUFFLFNBQVMsRUFBRSxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxTQUFTLEdBQUcsTUFBTSxFQUFFO2FBQ3pELENBQUM7U0FDSDtRQUVELE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdEIsQ0FBQyxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9zaXRpb24gfSBmcm9tICdyZXRlLWNvbm5lY3Rpb24tcGx1Z2luL190eXBlcy90eXBlcyc7XHJcbmltcG9ydCB7IENvbm5lY3Rpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xyXG5cclxuZXhwb3J0IHR5cGUgVHJhbnNmb3JtZXIgPSAocG9pbnRzOiBQb3NpdGlvbltdKSA9PiBQb3NpdGlvbltdO1xyXG5cclxuZXhwb3J0IGNvbnN0IGNyZWF0ZVNlZ21lbnRlZFBhdGggPSAoXHJcbiAgY29ubmVjdGlvbjogQ29ubmVjdGlvbixcclxuICBvcHRpb25zOiB7IG11bHRpUG9pbnRzPzogYm9vbGVhbjsgb2Zmc2V0PzogbnVtYmVyIH1cclxuKTogVHJhbnNmb3JtZXIgPT4ge1xyXG4gIGNvbnN0IHsgbXVsdGlQb2ludHMgPSB0cnVlLCBvZmZzZXQgPSAwIH0gPSBvcHRpb25zIHx8IHt9O1xyXG5cclxuICByZXR1cm4gKHBvaW50cykgPT4ge1xyXG4gICAgaWYgKHBvaW50cy5sZW5ndGggIT09IDIpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKFxyXG4gICAgICAgICdFeGFjdGx5IHR3byBwb2ludHMgYXJlIHJlcXVpcmVkIHRvIGNyZWF0ZSBhIGxpbmVhciBwYXRoLidcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBbc3RhcnQsIGVuZF0gPSBwb2ludHM7XHJcblxyXG4gICAgaWYgKG11bHRpUG9pbnRzKSB7XHJcbiAgICAgIGNvbnN0IG1pZHBvaW50WSA9IChlbmQueSAtIHN0YXJ0LnkpIC8gMiArIHN0YXJ0Lnk7XHJcblxyXG4gICAgICBjb25zdCBpbnRlcm1lZGlhdGVQb2ludHMgPSBbXHJcbiAgICAgICAgeyB4OiBzdGFydC54LCB5OiBtaWRwb2ludFkgLSBvZmZzZXQgfSxcclxuICAgICAgICB7IHg6IGVuZC54LCB5OiBtaWRwb2ludFkgKyBvZmZzZXQgfSxcclxuICAgICAgXTtcclxuXHJcbiAgICAgIC8vIFVzZSBiZXppZXIgY3VydmVzIGJldHdlZW4gcG9pbnRzIHRvIHNtb290aCBjb3JuZXJzXHJcbiAgICAgIHJldHVybiBbXHJcbiAgICAgICAgeyAuLi5zdGFydCwgY29udHJvbE91dDogeyB4OiBzdGFydC54LCB5OiBtaWRwb2ludFkgLSBvZmZzZXQgfSB9LFxyXG4gICAgICAgIGludGVybWVkaWF0ZVBvaW50c1swXSxcclxuICAgICAgICBpbnRlcm1lZGlhdGVQb2ludHNbMV0sXHJcbiAgICAgICAgeyAuLi5lbmQsIGNvbnRyb2xJbjogeyB4OiBlbmQueCwgeTogbWlkcG9pbnRZICsgb2Zmc2V0IH0gfSxcclxuICAgICAgXTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gW3N0YXJ0LCBlbmRdO1xyXG4gIH07XHJcbn07XHJcbiJdfQ==
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi1wYXRoLnRyYW5zZm9ybWVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZGlhZ3JhbXMvZWRpdG9yL292ZXJyaWRlcy9jb25uZWN0aW9uLXBhdGgudHJhbnNmb3JtZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVsRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBdUIsQ0FDdEQsVUFBVSxFQUNWLE9BQU8sRUFDTixFQUFFOztJQUNILE1BQU0sRUFBRSxXQUFXLEdBQUcsSUFBSSxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUUsR0FBRyxDQUFBLE1BQUEsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLFNBQVMsMENBQUUsT0FBTyxLQUFJLEVBQUUsQ0FBQztJQUM3RSxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsUUFBUSxDQUFBLENBQUM7SUFDdkMsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQztJQUN2QyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUU7UUFDakIsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN4QixNQUFNLElBQUksS0FBSyxDQUNkLDBEQUEwRCxDQUMxRCxDQUFDO1NBQ0Y7UUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUU1QixJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2hCLFFBQVEsU0FBUyxFQUFFO2dCQUNsQixLQUFLLE1BQU0sQ0FBQyxDQUFDO29CQUNaLE1BQU0sTUFBTSxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztvQkFDOUQsTUFBTSxPQUFPLEdBQUc7d0JBQ2YsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxNQUFNLEVBQUU7d0JBQ25DLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsTUFBTSxFQUFFO3FCQUMvQixDQUFDO29CQUNGLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7aUJBQ2hDO2dCQUVELEtBQUssVUFBVSxDQUFDLENBQUM7b0JBQ2hCLE1BQU0sT0FBTyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQzNDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7aUJBQ2hDO2dCQUVELEtBQUssU0FBUyxDQUFDLENBQUM7b0JBQ2YsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLEVBQUU7d0JBQ3BCLE1BQU0sT0FBTyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7d0JBQzNDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7cUJBQ2hDO29CQUNELE1BQU07aUJBQ047YUFDRDtTQUNEO1FBRUQsSUFBSSxXQUFXLEVBQUU7WUFDaEIsTUFBTSxTQUFTLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUVsRCxNQUFNLGtCQUFrQixHQUFHO2dCQUMxQixFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxTQUFTLEdBQUcsTUFBTSxFQUFFO2dCQUNyQyxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxTQUFTLEdBQUcsTUFBTSxFQUFFO2FBQ25DLENBQUM7WUFFRixPQUFPO2dEQUNELEtBQUssS0FBRSxVQUFVLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsU0FBUyxHQUFHLE1BQU0sRUFBRTtnQkFDN0QsR0FBRyxrQkFBa0I7Z0RBQ2hCLEdBQUcsS0FBRSxTQUFTLEVBQUUsRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsU0FBUyxHQUFHLE1BQU0sRUFBRTthQUN4RCxDQUFDO1NBQ0Y7UUFFRCxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3JCLENBQUMsQ0FBQztBQUNILENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zZm9ybWVyRmFjdG9yeSB9IGZyb20gJy4uLy4uL3R5cGVzJztcclxuaW1wb3J0IHsgZ2V0UmFuZG9tTnVtYmVyIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzJztcclxuXHJcbmV4cG9ydCBjb25zdCBjcmVhdGVTZWdtZW50ZWRQYXRoOiBUcmFuc2Zvcm1lckZhY3RvcnkgPSAoXHJcblx0Y29ubmVjdGlvbixcclxuXHRvcHRpb25zXHJcbikgPT4ge1xyXG5cdGNvbnN0IHsgbXVsdGlQb2ludHMgPSB0cnVlLCBvZmZzZXQgPSAwIH0gPSBvcHRpb25zPy50cmFuc2Zvcm0/Lm9wdGlvbnMgfHwge307XHJcblx0Y29uc3QgaXNWZXJ0aWNhbCA9ICEhb3B0aW9ucz8udmVydGljYWw7XHJcblx0Y29uc3QgZGlyZWN0aW9uID0gY29ubmVjdGlvbi5kaXJlY3Rpb247XHJcblx0cmV0dXJuIChwb2ludHMpID0+IHtcclxuXHRcdGlmIChwb2ludHMubGVuZ3RoICE9PSAyKSB7XHJcblx0XHRcdHRocm93IG5ldyBFcnJvcihcclxuXHRcdFx0XHQnRXhhY3RseSB0d28gcG9pbnRzIGFyZSByZXF1aXJlZCB0byBjcmVhdGUgYSBsaW5lYXIgcGF0aC4nXHJcblx0XHRcdCk7XHJcblx0XHR9XHJcblxyXG5cdFx0Y29uc3QgW3N0YXJ0LCBlbmRdID0gcG9pbnRzO1xyXG5cclxuXHRcdGlmICghaXNWZXJ0aWNhbCkge1xyXG5cdFx0XHRzd2l0Y2ggKGRpcmVjdGlvbikge1xyXG5cdFx0XHRcdGNhc2UgJ2Rvd24nOiB7XHJcblx0XHRcdFx0XHRjb25zdCBvZmZzZXQgPSBnZXRSYW5kb21OdW1iZXIoc3RhcnQueCwgc3RhcnQueSwgMTAsIDUwLCAxNTApO1xyXG5cdFx0XHRcdFx0Y29uc3QgX3BvaW50cyA9IFtcclxuXHRcdFx0XHRcdFx0eyB4OiBzdGFydC54LCB5OiBzdGFydC55ICsgb2Zmc2V0IH0sXHJcblx0XHRcdFx0XHRcdHsgeDogZW5kLngsIHk6IGVuZC55ICsgb2Zmc2V0IH1cclxuXHRcdFx0XHRcdF07XHJcblx0XHRcdFx0XHRyZXR1cm4gW3N0YXJ0LCAuLi5fcG9pbnRzLCBlbmRdO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Y2FzZSAnYmFja3dhcmQnOiB7XHJcblx0XHRcdFx0XHRjb25zdCBfcG9pbnRzID0gW3sgeDogZW5kLngsIHk6IHN0YXJ0LnkgfV07XHJcblx0XHRcdFx0XHRyZXR1cm4gW3N0YXJ0LCAuLi5fcG9pbnRzLCBlbmRdO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Y2FzZSAnZm9yd2FyZCc6IHtcclxuXHRcdFx0XHRcdGlmIChlbmQueSA8IHN0YXJ0LnkpIHtcclxuXHRcdFx0XHRcdFx0Y29uc3QgX3BvaW50cyA9IFt7IHg6IHN0YXJ0LngsIHk6IGVuZC55IH1dO1xyXG5cdFx0XHRcdFx0XHRyZXR1cm4gW3N0YXJ0LCAuLi5fcG9pbnRzLCBlbmRdO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0aWYgKG11bHRpUG9pbnRzKSB7XHJcblx0XHRcdGNvbnN0IG1pZHBvaW50WSA9IChlbmQueSAtIHN0YXJ0LnkpIC8gMiArIHN0YXJ0Lnk7XHJcblxyXG5cdFx0XHRjb25zdCBpbnRlcm1lZGlhdGVQb2ludHMgPSBbXHJcblx0XHRcdFx0eyB4OiBzdGFydC54LCB5OiBtaWRwb2ludFkgLSBvZmZzZXQgfSxcclxuXHRcdFx0XHR7IHg6IGVuZC54LCB5OiBtaWRwb2ludFkgKyBvZmZzZXQgfVxyXG5cdFx0XHRdO1xyXG5cclxuXHRcdFx0cmV0dXJuIFtcclxuXHRcdFx0XHR7IC4uLnN0YXJ0LCBjb250cm9sT3V0OiB7IHg6IHN0YXJ0LngsIHk6IG1pZHBvaW50WSAtIG9mZnNldCB9IH0sXHJcblx0XHRcdFx0Li4uaW50ZXJtZWRpYXRlUG9pbnRzLFxyXG5cdFx0XHRcdHsgLi4uZW5kLCBjb250cm9sSW46IHsgeDogZW5kLngsIHk6IG1pZHBvaW50WSArIG9mZnNldCB9IH1cclxuXHRcdFx0XTtcclxuXHRcdH1cclxuXHJcblx0XHRyZXR1cm4gW3N0YXJ0LCBlbmRdO1xyXG5cdH07XHJcbn07XHJcbiJdfQ==