nuxeo-development-framework 4.0.2 → 4.0.3

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 (132) hide show
  1. package/bundles/nuxeo-development-framework.umd.js +1637 -80
  2. package/bundles/nuxeo-development-framework.umd.js.map +1 -1
  3. package/esm2015/lib/components/diagrams/components/base-node.component.js +41 -0
  4. package/esm2015/lib/components/diagrams/components/circle-node/circle-node.component.js +20 -0
  5. package/esm2015/lib/components/diagrams/components/content-node/content-node.component.js +21 -0
  6. package/esm2015/lib/components/diagrams/components/custom-connection.component.js +48 -0
  7. package/esm2015/lib/components/diagrams/components/custom-socket.component.js +34 -0
  8. package/esm2015/lib/components/diagrams/components/index.js +12 -0
  9. package/esm2015/lib/components/diagrams/components/node-icon.component.js +35 -0
  10. package/esm2015/lib/components/diagrams/components/node-inputs.component.js +62 -0
  11. package/esm2015/lib/components/diagrams/components/node-outputs.component.js +58 -0
  12. package/esm2015/lib/components/diagrams/components/remove-button.component.js +65 -0
  13. package/esm2015/lib/components/diagrams/components/status-icon.component.js +37 -0
  14. package/esm2015/lib/components/diagrams/components/template-node/template-node.component.js +41 -0
  15. package/esm2015/lib/components/diagrams/components/zoom-control.component.js +62 -0
  16. package/esm2015/lib/components/diagrams/constants/defaults.js +19 -0
  17. package/esm2015/lib/components/diagrams/constants/direction.js +7 -0
  18. package/esm2015/lib/components/diagrams/constants/index.js +8 -0
  19. package/esm2015/lib/components/diagrams/constants/message-type.js +5 -0
  20. package/esm2015/lib/components/diagrams/constants/node-type.js +7 -0
  21. package/esm2015/lib/components/diagrams/constants/notify-events.js +4 -0
  22. package/esm2015/lib/components/diagrams/constants/sizes.js +7 -0
  23. package/esm2015/lib/components/diagrams/constants/status.js +9 -0
  24. package/esm2015/lib/components/diagrams/diagrams.module.js +73 -0
  25. package/esm2015/lib/components/diagrams/directive/diagram.directive.js +83 -0
  26. package/esm2015/lib/components/diagrams/directive/index.js +2 -0
  27. package/esm2015/lib/components/diagrams/editor/customize.js +58 -0
  28. package/esm2015/lib/components/diagrams/editor/editor.js +95 -0
  29. package/esm2015/lib/components/diagrams/editor/index.js +5 -0
  30. package/esm2015/lib/components/diagrams/editor/overrides/connection-path.transformers.js +25 -0
  31. package/esm2015/lib/components/diagrams/editor/overrides/index.js +2 -0
  32. package/esm2015/lib/components/diagrams/editor/path-plugin.js +17 -0
  33. package/esm2015/lib/components/diagrams/editor/socket-position-watcher.js +7 -0
  34. package/esm2015/lib/components/diagrams/index.js +2 -0
  35. package/esm2015/lib/components/diagrams/models/base-node.model.js +25 -0
  36. package/esm2015/lib/components/diagrams/models/circle-node.model.js +10 -0
  37. package/esm2015/lib/components/diagrams/models/connection.model.js +8 -0
  38. package/esm2015/lib/components/diagrams/models/content-node.model.js +7 -0
  39. package/esm2015/lib/components/diagrams/models/index.js +7 -0
  40. package/esm2015/lib/components/diagrams/models/socket.model.js +8 -0
  41. package/esm2015/lib/components/diagrams/models/template-node.model.js +12 -0
  42. package/esm2015/lib/components/diagrams/public-api.js +9 -0
  43. package/esm2015/lib/components/diagrams/services/diagram-plugins.service.js +19 -0
  44. package/esm2015/lib/components/diagrams/services/diagram.service.js +174 -0
  45. package/esm2015/lib/components/diagrams/services/index.js +5 -0
  46. package/esm2015/lib/components/diagrams/services/message.service.js +24 -0
  47. package/esm2015/lib/components/diagrams/services/workflow.service.js +244 -0
  48. package/esm2015/lib/components/diagrams/types/common.type.js +2 -0
  49. package/esm2015/lib/components/diagrams/types/customization.type.js +2 -0
  50. package/esm2015/lib/components/diagrams/types/diagram-config.type.js +2 -0
  51. package/esm2015/lib/components/diagrams/types/diagram-editor.type.js +2 -0
  52. package/esm2015/lib/components/diagrams/types/emitter-type.js +2 -0
  53. package/esm2015/lib/components/diagrams/types/index.js +14 -0
  54. package/esm2015/lib/components/diagrams/types/layout.type.js +2 -0
  55. package/esm2015/lib/components/diagrams/types/node-content.js +2 -0
  56. package/esm2015/lib/components/diagrams/types/node-definition.js +2 -0
  57. package/esm2015/lib/components/diagrams/types/node-status.type.js +2 -0
  58. package/esm2015/lib/components/diagrams/types/node.type.js +2 -0
  59. package/esm2015/lib/components/diagrams/types/notify-event.type.js +2 -0
  60. package/esm2015/lib/components/diagrams/types/path.type.js +2 -0
  61. package/esm2015/lib/components/diagrams/types/schemes.type.js +2 -0
  62. package/esm2015/lib/components/diagrams/utilities/index.js +3 -0
  63. package/esm2015/lib/components/diagrams/utilities/remove.util.js +95 -0
  64. package/esm2015/lib/components/diagrams/utilities/serialize.js +23 -0
  65. package/esm2015/lib/components/documents/components/document-scan/document-scan.component.js +2 -1
  66. package/esm2015/public-api.js +3 -2
  67. package/fesm2015/nuxeo-development-framework.js +1537 -74
  68. package/fesm2015/nuxeo-development-framework.js.map +1 -1
  69. package/lib/components/diagrams/components/base-node.component.d.ts +29 -0
  70. package/lib/components/diagrams/components/circle-node/circle-node.component.d.ts +7 -0
  71. package/lib/components/diagrams/components/content-node/content-node.component.d.ts +8 -0
  72. package/lib/components/diagrams/components/custom-connection.component.d.ts +8 -0
  73. package/lib/components/diagrams/components/custom-socket.component.d.ts +6 -0
  74. package/lib/components/diagrams/components/index.d.ts +11 -0
  75. package/lib/components/diagrams/components/node-icon.component.d.ts +8 -0
  76. package/lib/components/diagrams/components/node-inputs.component.d.ts +12 -0
  77. package/lib/components/diagrams/components/node-outputs.component.d.ts +12 -0
  78. package/lib/components/diagrams/components/remove-button.component.d.ts +7 -0
  79. package/lib/components/diagrams/components/status-icon.component.d.ts +8 -0
  80. package/lib/components/diagrams/components/template-node/template-node.component.d.ts +17 -0
  81. package/lib/components/diagrams/components/zoom-control.component.d.ts +11 -0
  82. package/lib/components/diagrams/constants/defaults.d.ts +2 -0
  83. package/lib/components/diagrams/constants/direction.d.ts +6 -0
  84. package/lib/components/diagrams/constants/index.d.ts +7 -0
  85. package/lib/components/diagrams/constants/message-type.d.ts +4 -0
  86. package/lib/components/diagrams/constants/node-type.d.ts +6 -0
  87. package/lib/components/diagrams/constants/notify-events.d.ts +3 -0
  88. package/lib/components/diagrams/constants/sizes.d.ts +6 -0
  89. package/lib/components/diagrams/constants/status.d.ts +8 -0
  90. package/lib/components/diagrams/diagrams.module.d.ts +25 -0
  91. package/lib/components/diagrams/directive/diagram.directive.d.ts +27 -0
  92. package/lib/components/diagrams/directive/index.d.ts +1 -0
  93. package/lib/components/diagrams/editor/customize.d.ts +25 -0
  94. package/lib/components/diagrams/editor/editor.d.ts +3 -0
  95. package/lib/components/diagrams/editor/index.d.ts +4 -0
  96. package/lib/components/diagrams/editor/overrides/connection-path.transformers.d.ts +7 -0
  97. package/lib/components/diagrams/editor/overrides/index.d.ts +1 -0
  98. package/lib/components/diagrams/editor/path-plugin.d.ts +4 -0
  99. package/lib/components/diagrams/editor/socket-position-watcher.d.ts +3 -0
  100. package/lib/components/diagrams/index.d.ts +1 -0
  101. package/lib/components/diagrams/models/base-node.model.d.ts +21 -0
  102. package/lib/components/diagrams/models/circle-node.model.d.ts +7 -0
  103. package/lib/components/diagrams/models/connection.model.d.ts +8 -0
  104. package/lib/components/diagrams/models/content-node.model.d.ts +5 -0
  105. package/lib/components/diagrams/models/index.d.ts +6 -0
  106. package/lib/components/diagrams/models/socket.model.d.ts +5 -0
  107. package/lib/components/diagrams/models/template-node.model.d.ts +8 -0
  108. package/lib/components/diagrams/public-api.d.ts +8 -0
  109. package/lib/components/diagrams/services/diagram-plugins.service.d.ts +16 -0
  110. package/lib/components/diagrams/services/diagram.service.d.ts +42 -0
  111. package/lib/components/diagrams/services/index.d.ts +4 -0
  112. package/lib/components/diagrams/services/message.service.d.ts +10 -0
  113. package/lib/components/diagrams/services/workflow.service.d.ts +81 -0
  114. package/lib/components/diagrams/types/common.type.d.ts +4 -0
  115. package/lib/components/diagrams/types/customization.type.d.ts +10 -0
  116. package/lib/components/diagrams/types/diagram-config.type.d.ts +36 -0
  117. package/lib/components/diagrams/types/diagram-editor.type.d.ts +25 -0
  118. package/lib/components/diagrams/types/emitter-type.d.ts +5 -0
  119. package/lib/components/diagrams/types/index.d.ts +13 -0
  120. package/lib/components/diagrams/types/layout.type.d.ts +13 -0
  121. package/lib/components/diagrams/types/node-content.d.ts +9 -0
  122. package/lib/components/diagrams/types/node-definition.d.ts +19 -0
  123. package/lib/components/diagrams/types/node-status.type.d.ts +2 -0
  124. package/lib/components/diagrams/types/node.type.d.ts +2 -0
  125. package/lib/components/diagrams/types/notify-event.type.d.ts +2 -0
  126. package/lib/components/diagrams/types/path.type.d.ts +17 -0
  127. package/lib/components/diagrams/types/schemes.type.d.ts +3 -0
  128. package/lib/components/diagrams/utilities/index.d.ts +2 -0
  129. package/lib/components/diagrams/utilities/remove.util.d.ts +30 -0
  130. package/lib/components/diagrams/utilities/serialize.d.ts +15 -0
  131. package/package.json +14 -2
  132. package/public-api.d.ts +2 -1
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/common/http'), require('@angular/forms'), require('rxjs/operators'), require('@angular/platform-browser'), require('rxjs'), require('crypto-js'), require('@ngx-translate/core'), require('moment-es6'), require('keycloak-angular'), require('ngx-cookie-service'), require('moment-hijri'), require('@angular/material/icon'), require('@angular/material/progress-spinner'), require('@angular/material/tooltip'), require('ngx-infinite-scroll'), require('@angular/router'), require('@angular/material/list'), require('@angular/material/menu'), require('angular-ng-autocomplete'), require('@angular/material/core'), require('@angular/material/dialog'), require('ngx-toastr'), require('@angular/animations'), require('@angular/cdk/bidi'), require('ts-cacheable'), require('@ng-select/ng-select'), require('@angular/material/form-field'), require('@angular/material/chips'), require('@angular/material/expansion'), require('@angular/material/button'), require('@angular/material/checkbox'), require('@angular/material/datepicker'), require('@angular/material/input'), require('@angular/material/radio'), require('@angular/material/slide-toggle'), require('@busacca/ng-pick-datetime'), require('@mat-datetimepicker/core'), require('angular-formio'), require('ngx-treeview'), require('@ng-bootstrap/ng-bootstrap'), require('moment'), require('formiojs'), require('lodash'), require('lodash/find'), require('lodash/isEqual'), require('@swimlane/ngx-datatable'), require('@angular/cdk/layout'), require('@angular/material/autocomplete'), require('dwt'), require('@angular/material/progress-bar'), require('chart.js'), require('chartjs-plugin-piechart-outlabels'), require('chartjs-plugin-labels'), require('devextreme-angular'), require('file-saver'), require('devextreme-angular/ui/nested'), require('devextreme-angular/core'), require('@pdftron/webviewer'), require('@angular/material/tabs'), require('@angular/material/divider'), require('@angular/common/locales/ar'), require('@angular/common/locales/en'), require('@rxweb/reactive-form-validators'), require('@angular/material/badge'), require('@angular/material/toolbar')) :
3
- typeof define === 'function' && define.amd ? define('nuxeo-development-framework', ['exports', '@angular/core', '@angular/common', '@angular/common/http', '@angular/forms', 'rxjs/operators', '@angular/platform-browser', 'rxjs', 'crypto-js', '@ngx-translate/core', 'moment-es6', 'keycloak-angular', 'ngx-cookie-service', 'moment-hijri', '@angular/material/icon', '@angular/material/progress-spinner', '@angular/material/tooltip', 'ngx-infinite-scroll', '@angular/router', '@angular/material/list', '@angular/material/menu', 'angular-ng-autocomplete', '@angular/material/core', '@angular/material/dialog', 'ngx-toastr', '@angular/animations', '@angular/cdk/bidi', 'ts-cacheable', '@ng-select/ng-select', '@angular/material/form-field', '@angular/material/chips', '@angular/material/expansion', '@angular/material/button', '@angular/material/checkbox', '@angular/material/datepicker', '@angular/material/input', '@angular/material/radio', '@angular/material/slide-toggle', '@busacca/ng-pick-datetime', '@mat-datetimepicker/core', 'angular-formio', 'ngx-treeview', '@ng-bootstrap/ng-bootstrap', 'moment', 'formiojs', 'lodash', 'lodash/find', 'lodash/isEqual', '@swimlane/ngx-datatable', '@angular/cdk/layout', '@angular/material/autocomplete', 'dwt', '@angular/material/progress-bar', 'chart.js', 'chartjs-plugin-piechart-outlabels', 'chartjs-plugin-labels', 'devextreme-angular', 'file-saver', 'devextreme-angular/ui/nested', 'devextreme-angular/core', '@pdftron/webviewer', '@angular/material/tabs', '@angular/material/divider', '@angular/common/locales/ar', '@angular/common/locales/en', '@rxweb/reactive-form-validators', '@angular/material/badge', '@angular/material/toolbar'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["nuxeo-development-framework"] = {}, global.ng.core, global.ng.common, global.ng.common.http, global.ng.forms, global.rxjs.operators, global.ng.platformBrowser, global.rxjs, global.CryptoJS, global.i1$1, global.moment$4, global.i2$1, global.i3, global.moment_, global.ng.material.icon, global.ng.material.progressSpinner, global.ng.material.tooltip, global.i9, global.ng.router, global.ng.material.list, global.ng.material.menu, global.i6$1, global.ng.material.core, global.ng.material.dialog, global.i1$4, global.ng.animations, global.ng.cdk.bidi, global.tsCacheable, global.i5, global.ng.material.formField, global.ng.material.chips, global.ng.material.expansion, global.ng.material.button, global.ng.material.checkbox, global.ng.material.datepicker, global.ng.material.input, global.ng.material.radio, global.ng.material.slideToggle, global.i6$4, global.core, global.i3$2, global.i1$6, global.i1$5, global.moment$5, global.formiojs, global._, global._find, global._isEqual, global.i4$2, global.ng.cdk.layout, global.ng.material.autocomplete, global.Dynamsoft, global.ng.material.progressBar, global.chart_js, null, null, global.i3$3, global.FileSaver, global.i4$4, global.i5$3, global.WebViewer, global.ng.material.tabs, global.ng.material.divider, global.ng.common.locales.ar, global.ng.common.locales.en, global.reactiveFormValidators, global.ng.material.badge, global.ng.material.toolbar));
5
- })(this, (function (exports, i0, i4, i1, i6, operators, i2, rxjs, CryptoJS, i1$1, moment$4, i2$1, i3, moment_, i2$3, i8, i2$5, i9, i1$2, i2$2, i3$1, i6$1, i2$4, i1$3, i1$4, animations, i4$1, tsCacheable, i5, i6$2, i7, i6$3, i1$7, i7$1, datepicker, i5$1, i2$7, i2$6, i6$4, core, i3$2, i1$6, i1$5, moment$5, formiojs, _, _find, _isEqual, i4$2, i5$2, i7$2, Dynamsoft, i4$3, chart_js, chartjsPluginPiechartOutlabels, chartjsPluginLabels, i3$3, FileSaver, i4$4, i5$3, WebViewer, i1$8, i8$1, localeAr, localeEn, reactiveFormValidators, i7$3, toolbar) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/common/http'), require('@angular/forms'), require('rxjs/operators'), require('@angular/platform-browser'), require('rxjs'), require('crypto-js'), require('@ngx-translate/core'), require('moment-es6'), require('keycloak-angular'), require('ngx-cookie-service'), require('moment-hijri'), require('@angular/material/icon'), require('@angular/material/progress-spinner'), require('@angular/material/tooltip'), require('ngx-infinite-scroll'), require('@angular/router'), require('@angular/material/list'), require('@angular/material/menu'), require('angular-ng-autocomplete'), require('@angular/material/core'), require('@angular/material/dialog'), require('ngx-toastr'), require('@angular/animations'), require('@angular/cdk/bidi'), require('ts-cacheable'), require('@ng-select/ng-select'), require('@angular/material/form-field'), require('@angular/material/chips'), require('@angular/material/expansion'), require('@angular/material/button'), require('@angular/material/checkbox'), require('@angular/material/datepicker'), require('@angular/material/input'), require('@angular/material/radio'), require('@angular/material/slide-toggle'), require('@busacca/ng-pick-datetime'), require('@mat-datetimepicker/core'), require('angular-formio'), require('ngx-treeview'), require('@ng-bootstrap/ng-bootstrap'), require('moment'), require('formiojs'), require('lodash'), require('lodash/find'), require('lodash/isEqual'), require('@swimlane/ngx-datatable'), require('@angular/cdk/layout'), require('@angular/material/autocomplete'), require('dwt'), require('@angular/material/progress-bar'), require('chart.js'), require('chartjs-plugin-piechart-outlabels'), require('chartjs-plugin-labels'), require('devextreme-angular'), require('file-saver'), require('devextreme-angular/ui/nested'), require('devextreme-angular/core'), require('@pdftron/webviewer'), require('@angular/material/tabs'), require('@angular/material/divider'), require('@angular/common/locales/ar'), require('@angular/common/locales/en'), require('@rxweb/reactive-form-validators'), require('rete-angular-plugin'), require('rete'), require('rete-area-plugin'), require('rete-auto-arrange-plugin'), require('rete-connection-plugin'), require('rete-connection-reroute-plugin'), require('rete-readonly-plugin'), require('rete-minimap-plugin'), require('d3-shape'), require('rete-connection-path-plugin'), require('rete-render-utils'), require('@angular/material/badge'), require('@angular/material/toolbar')) :
3
+ typeof define === 'function' && define.amd ? define('nuxeo-development-framework', ['exports', '@angular/core', '@angular/common', '@angular/common/http', '@angular/forms', 'rxjs/operators', '@angular/platform-browser', 'rxjs', 'crypto-js', '@ngx-translate/core', 'moment-es6', 'keycloak-angular', 'ngx-cookie-service', 'moment-hijri', '@angular/material/icon', '@angular/material/progress-spinner', '@angular/material/tooltip', 'ngx-infinite-scroll', '@angular/router', '@angular/material/list', '@angular/material/menu', 'angular-ng-autocomplete', '@angular/material/core', '@angular/material/dialog', 'ngx-toastr', '@angular/animations', '@angular/cdk/bidi', 'ts-cacheable', '@ng-select/ng-select', '@angular/material/form-field', '@angular/material/chips', '@angular/material/expansion', '@angular/material/button', '@angular/material/checkbox', '@angular/material/datepicker', '@angular/material/input', '@angular/material/radio', '@angular/material/slide-toggle', '@busacca/ng-pick-datetime', '@mat-datetimepicker/core', 'angular-formio', 'ngx-treeview', '@ng-bootstrap/ng-bootstrap', 'moment', 'formiojs', 'lodash', 'lodash/find', 'lodash/isEqual', '@swimlane/ngx-datatable', '@angular/cdk/layout', '@angular/material/autocomplete', 'dwt', '@angular/material/progress-bar', 'chart.js', 'chartjs-plugin-piechart-outlabels', 'chartjs-plugin-labels', 'devextreme-angular', 'file-saver', 'devextreme-angular/ui/nested', 'devextreme-angular/core', '@pdftron/webviewer', '@angular/material/tabs', '@angular/material/divider', '@angular/common/locales/ar', '@angular/common/locales/en', '@rxweb/reactive-form-validators', 'rete-angular-plugin', 'rete', 'rete-area-plugin', 'rete-auto-arrange-plugin', 'rete-connection-plugin', 'rete-connection-reroute-plugin', 'rete-readonly-plugin', 'rete-minimap-plugin', 'd3-shape', 'rete-connection-path-plugin', 'rete-render-utils', '@angular/material/badge', '@angular/material/toolbar'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["nuxeo-development-framework"] = {}, global.ng.core, global.ng.common, global.ng.common.http, global.ng.forms, global.rxjs.operators, global.ng.platformBrowser, global.rxjs, global.CryptoJS, global.i1$1, global.moment$4, global.i2$1, global.i3, global.moment_, global.ng.material.icon, global.ng.material.progressSpinner, global.ng.material.tooltip, global.i9, global.ng.router, global.ng.material.list, global.ng.material.menu, global.i6$1, global.ng.material.core, global.ng.material.dialog, global.i1$4, global.ng.animations, global.ng.cdk.bidi, global.tsCacheable, global.i5, global.ng.material.formField, global.ng.material.chips, global.ng.material.expansion, global.ng.material.button, global.ng.material.checkbox, global.ng.material.datepicker, global.ng.material.input, global.ng.material.radio, global.ng.material.slideToggle, global.i6$4, global.core, global.i3$2, global.i1$6, global.i1$5, global.moment$5, global.formiojs, global._, global._find, global._isEqual, global.i4$2, global.ng.cdk.layout, global.ng.material.autocomplete, global.Dynamsoft, global.ng.material.progressBar, global.chart_js, null, null, global.i3$3, global.FileSaver, global.i4$4, global.i5$3, global.WebViewer, global.ng.material.tabs, global.ng.material.divider, global.ng.common.locales.ar, global.ng.common.locales.en, global.reactiveFormValidators, global.i2$8, global.rete, global.reteAreaPlugin, global.reteAutoArrangePlugin, global.reteConnectionPlugin, global.reteConnectionReroutePlugin, global.reteReadonlyPlugin, global.reteMinimapPlugin, global.d3Shape, global.reteConnectionPathPlugin, global.reteRenderUtils, global.ng.material.badge, global.ng.material.toolbar));
5
+ })(this, (function (exports, i0, i4, i1, i6, operators, i2, rxjs, CryptoJS, i1$1, moment$4, i2$1, i3, moment_, i2$3, i8, i2$5, i9, i1$2, i2$2, i3$1, i6$1, i2$4, i1$3, i1$4, animations, i4$1, tsCacheable, i5, i6$2, i7, i6$3, i1$7, i7$1, datepicker, i5$1, i2$7, i2$6, i6$4, core, i3$2, i1$6, i1$5, moment$5, formiojs, _, _find, _isEqual, i4$2, i5$2, i7$2, Dynamsoft, i4$3, chart_js, chartjsPluginPiechartOutlabels, chartjsPluginLabels, i3$3, FileSaver, i4$4, i5$3, WebViewer, i1$8, i8$1, localeAr, localeEn, reactiveFormValidators, i2$8, rete, reteAreaPlugin, reteAutoArrangePlugin, reteConnectionPlugin, reteConnectionReroutePlugin, reteReadonlyPlugin, reteMinimapPlugin, d3Shape, reteConnectionPathPlugin, reteRenderUtils, i7$3, toolbar) { 'use strict';
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
@@ -79,6 +79,7 @@
79
79
  var i8__namespace$1 = /*#__PURE__*/_interopNamespace(i8$1);
80
80
  var localeAr__default = /*#__PURE__*/_interopDefaultLegacy(localeAr);
81
81
  var localeEn__default = /*#__PURE__*/_interopDefaultLegacy(localeEn);
82
+ var i2__namespace$8 = /*#__PURE__*/_interopNamespace(i2$8);
82
83
  var i7__namespace$3 = /*#__PURE__*/_interopNamespace(i7$3);
83
84
 
84
85
  var NuxeoDevelopmentFrameworkComponent = /** @class */ (function () {
@@ -15313,6 +15314,7 @@
15313
15314
  allinputs[i].value = '';
15314
15315
  }
15315
15316
  }
15317
+ //@ts-ignore
15316
15318
  if (Dynamsoft__default["default"].Lib.env.bIE === true && Dynamsoft__default["default"].Lib.env.bWin64 === true) {
15317
15319
  var o = document.getElementById('samplesource64bit');
15318
15320
  if (o) {
@@ -25071,6 +25073,82 @@
25071
25073
  type: i0.Input
25072
25074
  }] } });
25073
25075
 
25076
+ var _FileGridInfiniteScrollDirective_instances, _FileGridInfiniteScrollDirective_scrollSubject, _FileGridInfiniteScrollDirective_scrollHandler, _FileGridInfiniteScrollDirective_isNodeChanging, _FileGridInfiniteScrollDirective_handleViewModeChanged, _FileGridInfiniteScrollDirective_removeListener;
25077
+ var FileGridInfiniteScrollDirective = /** @class */ (function () {
25078
+ function FileGridInfiniteScrollDirective() {
25079
+ _FileGridInfiniteScrollDirective_instances.add(this);
25080
+ this.infiniteScrollDistance = 5;
25081
+ this.scrolled = new i0.EventEmitter();
25082
+ _FileGridInfiniteScrollDirective_scrollSubject.set(this, new rxjs.Subject());
25083
+ _FileGridInfiniteScrollDirective_scrollHandler.set(this, void 0);
25084
+ _FileGridInfiniteScrollDirective_isNodeChanging.set(this, false);
25085
+ }
25086
+ FileGridInfiniteScrollDirective.prototype.ngAfterViewInit = function () {
25087
+ var _this = this;
25088
+ this.fileManager.instance.on('contentReady', function (e) {
25089
+ __classPrivateFieldGet(_this, _FileGridInfiniteScrollDirective_instances, "m", _FileGridInfiniteScrollDirective_handleViewModeChanged).call(_this);
25090
+ });
25091
+ this.fileManager.instance.on('optionChanged', function (e) {
25092
+ if (e.fullName === 'itemView.mode') {
25093
+ __classPrivateFieldGet(_this, _FileGridInfiniteScrollDirective_instances, "m", _FileGridInfiniteScrollDirective_handleViewModeChanged).call(_this);
25094
+ }
25095
+ else if (e.fullName === 'currentPath') {
25096
+ __classPrivateFieldSet(_this, _FileGridInfiniteScrollDirective_isNodeChanging, true, "f");
25097
+ __classPrivateFieldGet(_this, _FileGridInfiniteScrollDirective_instances, "m", _FileGridInfiniteScrollDirective_handleViewModeChanged).call(_this);
25098
+ setTimeout(function () { __classPrivateFieldSet(_this, _FileGridInfiniteScrollDirective_isNodeChanging, false, "f"); }, 1000);
25099
+ }
25100
+ });
25101
+ __classPrivateFieldGet(this, _FileGridInfiniteScrollDirective_scrollSubject, "f").pipe(operators.debounceTime(500)).subscribe(function () {
25102
+ _this.scrolled.emit();
25103
+ console.log('scroll trigered');
25104
+ });
25105
+ };
25106
+ return FileGridInfiniteScrollDirective;
25107
+ }());
25108
+ _FileGridInfiniteScrollDirective_scrollSubject = new WeakMap(), _FileGridInfiniteScrollDirective_scrollHandler = new WeakMap(), _FileGridInfiniteScrollDirective_isNodeChanging = new WeakMap(), _FileGridInfiniteScrollDirective_instances = new WeakSet(), _FileGridInfiniteScrollDirective_handleViewModeChanged = function _FileGridInfiniteScrollDirective_handleViewModeChanged() {
25109
+ var _this = this;
25110
+ try {
25111
+ __classPrivateFieldGet(this, _FileGridInfiniteScrollDirective_instances, "m", _FileGridInfiniteScrollDirective_removeListener).call(this);
25112
+ setTimeout(function () {
25113
+ var scrollableElement = _this.fileManager.instance._itemView._$element[0].getElementsByClassName('dx-scrollable-container')[0];
25114
+ // Define the event handler function
25115
+ var onScroll = function () {
25116
+ if (__classPrivateFieldGet(_this, _FileGridInfiniteScrollDirective_isNodeChanging, "f"))
25117
+ return;
25118
+ var scrollTop = scrollableElement.scrollTop;
25119
+ var scrollHeight = scrollableElement.scrollHeight;
25120
+ var clientHeight = scrollableElement.clientHeight;
25121
+ if (scrollTop + clientHeight >= scrollHeight - _this.infiniteScrollDistance) {
25122
+ __classPrivateFieldGet(_this, _FileGridInfiniteScrollDirective_scrollSubject, "f").next();
25123
+ }
25124
+ };
25125
+ __classPrivateFieldSet(_this, _FileGridInfiniteScrollDirective_scrollHandler, onScroll, "f");
25126
+ scrollableElement.addEventListener('scroll', onScroll);
25127
+ }, 100);
25128
+ }
25129
+ catch (e) { }
25130
+ }, _FileGridInfiniteScrollDirective_removeListener = function _FileGridInfiniteScrollDirective_removeListener() {
25131
+ var scrollableElement = this.fileManager.instance._itemView._$element[0].getElementsByClassName('dx-scrollable-container')[0];
25132
+ if (__classPrivateFieldGet(this, _FileGridInfiniteScrollDirective_scrollHandler, "f")) {
25133
+ scrollableElement.removeEventListener('scroll', __classPrivateFieldGet(this, _FileGridInfiniteScrollDirective_scrollHandler, "f"));
25134
+ }
25135
+ };
25136
+ FileGridInfiniteScrollDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: FileGridInfiniteScrollDirective, deps: [], target: i0__namespace.ɵɵFactoryTarget.Directive });
25137
+ FileGridInfiniteScrollDirective.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: FileGridInfiniteScrollDirective, selector: "[ndfFileGridInfiniteScroll]", inputs: { fileManager: ["ndfFileGridInfiniteScroll", "fileManager"], infiniteScrollDistance: "infiniteScrollDistance" }, outputs: { scrolled: "scrolled" }, ngImport: i0__namespace });
25138
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: FileGridInfiniteScrollDirective, decorators: [{
25139
+ type: i0.Directive,
25140
+ args: [{
25141
+ selector: '[ndfFileGridInfiniteScroll]'
25142
+ }]
25143
+ }], propDecorators: { fileManager: [{
25144
+ type: i0.Input,
25145
+ args: ['ndfFileGridInfiniteScroll']
25146
+ }], infiniteScrollDistance: [{
25147
+ type: i0.Input
25148
+ }], scrolled: [{
25149
+ type: i0.Output
25150
+ }] } });
25151
+
25074
25152
  var _FileManagerAbstract_instances, _FileManagerAbstract_foldersSubscription$, _FileManagerAbstract_loadMore, _FileManagerAbstract_resetPagination, _FileManagerAbstract_initPagination, _FileManagerAbstract_getNode, _FileManagerAbstract_addOrReplace;
25075
25153
  //
25076
25154
  var FileManagerAbstract = /** @class */ (function () {
@@ -27193,82 +27271,6 @@
27193
27271
  }]
27194
27272
  }] });
27195
27273
 
27196
- var _FileGridInfiniteScrollDirective_instances, _FileGridInfiniteScrollDirective_scrollSubject, _FileGridInfiniteScrollDirective_scrollHandler, _FileGridInfiniteScrollDirective_isNodeChanging, _FileGridInfiniteScrollDirective_handleViewModeChanged, _FileGridInfiniteScrollDirective_removeListener;
27197
- var FileGridInfiniteScrollDirective = /** @class */ (function () {
27198
- function FileGridInfiniteScrollDirective() {
27199
- _FileGridInfiniteScrollDirective_instances.add(this);
27200
- this.infiniteScrollDistance = 5;
27201
- this.scrolled = new i0.EventEmitter();
27202
- _FileGridInfiniteScrollDirective_scrollSubject.set(this, new rxjs.Subject());
27203
- _FileGridInfiniteScrollDirective_scrollHandler.set(this, void 0);
27204
- _FileGridInfiniteScrollDirective_isNodeChanging.set(this, false);
27205
- }
27206
- FileGridInfiniteScrollDirective.prototype.ngAfterViewInit = function () {
27207
- var _this = this;
27208
- this.fileManager.instance.on('contentReady', function (e) {
27209
- __classPrivateFieldGet(_this, _FileGridInfiniteScrollDirective_instances, "m", _FileGridInfiniteScrollDirective_handleViewModeChanged).call(_this);
27210
- });
27211
- this.fileManager.instance.on('optionChanged', function (e) {
27212
- if (e.fullName === 'itemView.mode') {
27213
- __classPrivateFieldGet(_this, _FileGridInfiniteScrollDirective_instances, "m", _FileGridInfiniteScrollDirective_handleViewModeChanged).call(_this);
27214
- }
27215
- else if (e.fullName === 'currentPath') {
27216
- __classPrivateFieldSet(_this, _FileGridInfiniteScrollDirective_isNodeChanging, true, "f");
27217
- __classPrivateFieldGet(_this, _FileGridInfiniteScrollDirective_instances, "m", _FileGridInfiniteScrollDirective_handleViewModeChanged).call(_this);
27218
- setTimeout(function () { __classPrivateFieldSet(_this, _FileGridInfiniteScrollDirective_isNodeChanging, false, "f"); }, 1000);
27219
- }
27220
- });
27221
- __classPrivateFieldGet(this, _FileGridInfiniteScrollDirective_scrollSubject, "f").pipe(operators.debounceTime(500)).subscribe(function () {
27222
- _this.scrolled.emit();
27223
- console.log('scroll trigered');
27224
- });
27225
- };
27226
- return FileGridInfiniteScrollDirective;
27227
- }());
27228
- _FileGridInfiniteScrollDirective_scrollSubject = new WeakMap(), _FileGridInfiniteScrollDirective_scrollHandler = new WeakMap(), _FileGridInfiniteScrollDirective_isNodeChanging = new WeakMap(), _FileGridInfiniteScrollDirective_instances = new WeakSet(), _FileGridInfiniteScrollDirective_handleViewModeChanged = function _FileGridInfiniteScrollDirective_handleViewModeChanged() {
27229
- var _this = this;
27230
- try {
27231
- __classPrivateFieldGet(this, _FileGridInfiniteScrollDirective_instances, "m", _FileGridInfiniteScrollDirective_removeListener).call(this);
27232
- setTimeout(function () {
27233
- var scrollableElement = _this.fileManager.instance._itemView._$element[0].getElementsByClassName('dx-scrollable-container')[0];
27234
- // Define the event handler function
27235
- var onScroll = function () {
27236
- if (__classPrivateFieldGet(_this, _FileGridInfiniteScrollDirective_isNodeChanging, "f"))
27237
- return;
27238
- var scrollTop = scrollableElement.scrollTop;
27239
- var scrollHeight = scrollableElement.scrollHeight;
27240
- var clientHeight = scrollableElement.clientHeight;
27241
- if (scrollTop + clientHeight >= scrollHeight - _this.infiniteScrollDistance) {
27242
- __classPrivateFieldGet(_this, _FileGridInfiniteScrollDirective_scrollSubject, "f").next();
27243
- }
27244
- };
27245
- __classPrivateFieldSet(_this, _FileGridInfiniteScrollDirective_scrollHandler, onScroll, "f");
27246
- scrollableElement.addEventListener('scroll', onScroll);
27247
- }, 100);
27248
- }
27249
- catch (e) { }
27250
- }, _FileGridInfiniteScrollDirective_removeListener = function _FileGridInfiniteScrollDirective_removeListener() {
27251
- var scrollableElement = this.fileManager.instance._itemView._$element[0].getElementsByClassName('dx-scrollable-container')[0];
27252
- if (__classPrivateFieldGet(this, _FileGridInfiniteScrollDirective_scrollHandler, "f")) {
27253
- scrollableElement.removeEventListener('scroll', __classPrivateFieldGet(this, _FileGridInfiniteScrollDirective_scrollHandler, "f"));
27254
- }
27255
- };
27256
- FileGridInfiniteScrollDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: FileGridInfiniteScrollDirective, deps: [], target: i0__namespace.ɵɵFactoryTarget.Directive });
27257
- FileGridInfiniteScrollDirective.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: FileGridInfiniteScrollDirective, selector: "[ndfFileGridInfiniteScroll]", inputs: { fileManager: ["ndfFileGridInfiniteScroll", "fileManager"], infiniteScrollDistance: "infiniteScrollDistance" }, outputs: { scrolled: "scrolled" }, ngImport: i0__namespace });
27258
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: FileGridInfiniteScrollDirective, decorators: [{
27259
- type: i0.Directive,
27260
- args: [{
27261
- selector: '[ndfFileGridInfiniteScroll]'
27262
- }]
27263
- }], propDecorators: { fileManager: [{
27264
- type: i0.Input,
27265
- args: ['ndfFileGridInfiniteScroll']
27266
- }], infiniteScrollDistance: [{
27267
- type: i0.Input
27268
- }], scrolled: [{
27269
- type: i0.Output
27270
- }] } });
27271
-
27272
27274
  var FileMangerModule = /** @class */ (function () {
27273
27275
  function FileMangerModule() {
27274
27276
  }
@@ -29048,6 +29050,1520 @@
29048
29050
  }]
29049
29051
  }] });
29050
29052
 
29053
+ var DIAGRAM_DEFAULT_OPTIONS = {
29054
+ socketType: 'custom',
29055
+ connectionType: 'custom',
29056
+ fitToView: true,
29057
+ area: {
29058
+ restrict: true,
29059
+ scaling: { min: 0.5, max: 1.3 },
29060
+ },
29061
+ path: {
29062
+ arrow: {
29063
+ color: 'var(--path-color , #5d6481)',
29064
+ marker: 'M-3,-6 L-3,6 L10,0 Z',
29065
+ },
29066
+ transform: {
29067
+ active: true,
29068
+ },
29069
+ },
29070
+ };
29071
+
29072
+ var IN_OUT_DIRECTION = {
29073
+ start: 'start',
29074
+ end: 'end',
29075
+ top: 'top',
29076
+ bottom: 'bottom',
29077
+ };
29078
+
29079
+ var MESSAGE_TYPE = {
29080
+ configUpdated: 'configUpdated',
29081
+ refresh: 'refresh',
29082
+ };
29083
+
29084
+ var NODE_TYPE = {
29085
+ start: 'start',
29086
+ content: 'content',
29087
+ template: 'template',
29088
+ end: 'end',
29089
+ };
29090
+
29091
+ var NOTIFY_EVENT = {
29092
+ remove: 'remove',
29093
+ };
29094
+
29095
+ var NODE_MARGIN = 60;
29096
+ var NODE_WIDTH = 150;
29097
+ var NODE_HEIGHT = 118;
29098
+ var NODE_CIRCLE_SIZE = 72;
29099
+ var DIAGRAM_HEIGHT = 600;
29100
+ var SOCKET_WIDTH = 8;
29101
+
29102
+ var NODE_STATUS = {
29103
+ draft: 'draft',
29104
+ completed: 'completed',
29105
+ rejected: 'rejected',
29106
+ inProgress: 'inProgress',
29107
+ upcoming: 'upcoming',
29108
+ approved: 'approved',
29109
+ };
29110
+
29111
+ var DiagramPluginsService = /** @class */ (function () {
29112
+ function DiagramPluginsService() {
29113
+ }
29114
+ DiagramPluginsService.prototype.setPlugins = function (_a) {
29115
+ var plugins = _a.plugins, layout = _a.layout;
29116
+ this.area = plugins.area;
29117
+ this.readonly = plugins.readonly;
29118
+ this.arrange = plugins.arrange;
29119
+ this.reroute = plugins.reroute;
29120
+ };
29121
+ DiagramPluginsService.prototype.destroy = function () {
29122
+ this.area.destroy();
29123
+ };
29124
+ return DiagramPluginsService;
29125
+ }());
29126
+ DiagramPluginsService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: DiagramPluginsService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
29127
+ DiagramPluginsService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: DiagramPluginsService });
29128
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: DiagramPluginsService, decorators: [{
29129
+ type: i0.Injectable
29130
+ }] });
29131
+
29132
+ var BaseNodeClass = /** @class */ (function (_super) {
29133
+ __extends(BaseNodeClass, _super);
29134
+ function BaseNodeClass(config) {
29135
+ var _this = _super.call(this, config.label) || this;
29136
+ _this.type = NODE_TYPE.content;
29137
+ _this.width = NODE_WIDTH;
29138
+ _this.height = NODE_HEIGHT;
29139
+ _this.directions = {
29140
+ inputs: IN_OUT_DIRECTION.start,
29141
+ outputs: IN_OUT_DIRECTION.end,
29142
+ };
29143
+ _this.name = config === null || config === void 0 ? void 0 : config.name;
29144
+ _this.directions = (config === null || config === void 0 ? void 0 : config.directions) || _this.directions;
29145
+ _this.type = config.type || NODE_TYPE.content;
29146
+ _this.description = config === null || config === void 0 ? void 0 : config.description;
29147
+ _this.status = config === null || config === void 0 ? void 0 : config.status;
29148
+ _this.width = (config === null || config === void 0 ? void 0 : config.width) || NODE_WIDTH;
29149
+ _this.height = (config === null || config === void 0 ? void 0 : config.height) || NODE_HEIGHT;
29150
+ _this.content = config === null || config === void 0 ? void 0 : config.content;
29151
+ _this.config = config === null || config === void 0 ? void 0 : config.config;
29152
+ _this.styleClass = config === null || config === void 0 ? void 0 : config.styleClass;
29153
+ return _this;
29154
+ }
29155
+ return BaseNodeClass;
29156
+ }(rete.ClassicPreset.Node));
29157
+
29158
+ var CircleNode = /** @class */ (function (_super) {
29159
+ __extends(CircleNode, _super);
29160
+ function CircleNode(config) {
29161
+ var _this = _super.call(this, config) || this;
29162
+ _this.width = NODE_CIRCLE_SIZE;
29163
+ _this.height = NODE_CIRCLE_SIZE;
29164
+ return _this;
29165
+ }
29166
+ return CircleNode;
29167
+ }(BaseNodeClass));
29168
+
29169
+ var Connection = /** @class */ (function (_super) {
29170
+ __extends(Connection, _super);
29171
+ function Connection() {
29172
+ var _this = _super.apply(this, __spreadArray([], __read(arguments))) || this;
29173
+ _this.renderType = 'default';
29174
+ return _this;
29175
+ }
29176
+ return Connection;
29177
+ }(rete.ClassicPreset.Connection));
29178
+
29179
+ var ContentNode = /** @class */ (function (_super) {
29180
+ __extends(ContentNode, _super);
29181
+ function ContentNode(config) {
29182
+ return _super.call(this, config) || this;
29183
+ }
29184
+ return ContentNode;
29185
+ }(BaseNodeClass));
29186
+
29187
+ var Socket = /** @class */ (function (_super) {
29188
+ __extends(Socket, _super);
29189
+ function Socket(name, renderType) {
29190
+ if (renderType === void 0) { renderType = 'default'; }
29191
+ var _this = _super.call(this, name) || this;
29192
+ _this.renderType = renderType;
29193
+ return _this;
29194
+ }
29195
+ return Socket;
29196
+ }(rete.ClassicPreset.Socket));
29197
+
29198
+ var TemplateNode = /** @class */ (function (_super) {
29199
+ __extends(TemplateNode, _super);
29200
+ function TemplateNode(config) {
29201
+ var _this = _super.call(this, config) || this;
29202
+ _this.type = NODE_TYPE.template;
29203
+ if (config.template) {
29204
+ _this.template = config.template;
29205
+ }
29206
+ return _this;
29207
+ }
29208
+ return TemplateNode;
29209
+ }(BaseNodeClass));
29210
+
29211
+ /**
29212
+ *
29213
+ * @param config
29214
+ * @returns
29215
+ */
29216
+ var customizeSocket = function (config) { return function (data) {
29217
+ var payload = data.payload;
29218
+ if (payload.renderType === 'custom' || config.socketType === 'custom') {
29219
+ return CustomSocketComponent;
29220
+ }
29221
+ return i2$8.SocketComponent;
29222
+ }; };
29223
+ /**
29224
+ *
29225
+ * @param config
29226
+ * @param editor
29227
+ * @returns
29228
+ */
29229
+ var customizeNode = function (config, editor) { return function (data) {
29230
+ var _a;
29231
+ var node = data.payload;
29232
+ (_a = node.config) !== null && _a !== void 0 ? _a : (node.config = config['node']);
29233
+ return initAngularComponentByType(node.type);
29234
+ }; };
29235
+ /**
29236
+ *
29237
+ * @param config
29238
+ * @returns
29239
+ */
29240
+ var customizeConnection = function (config) { return function (data) {
29241
+ var payload = data.payload;
29242
+ if (payload.renderType === 'custom' || config.connectionType == 'custom') {
29243
+ return CustomConnectionComponent;
29244
+ }
29245
+ return i2$8.ConnectionComponent;
29246
+ }; };
29247
+ var initNodeByType = function (type, config) {
29248
+ var _nodes = {
29249
+ start: CircleNode,
29250
+ content: ContentNode,
29251
+ template: TemplateNode,
29252
+ end: CircleNode,
29253
+ };
29254
+ return new _nodes[type](config) || new ContentNode(config);
29255
+ };
29256
+ var initAngularComponentByType = function (type) {
29257
+ var _components = {
29258
+ content: ContentNodeComponent,
29259
+ start: CircleNodeComponent,
29260
+ end: CircleNodeComponent,
29261
+ template: TemplateNodeComponent,
29262
+ };
29263
+ return _components[type] || i2$8.NodeComponent;
29264
+ };
29265
+
29266
+ var createSegmentedPath = function (connection, options) {
29267
+ var _a = options || {}, _b = _a.multiPoints, multiPoints = _b === void 0 ? true : _b, _c = _a.offset, offset = _c === void 0 ? 0 : _c;
29268
+ return function (points) {
29269
+ if (points.length !== 2) {
29270
+ throw new Error('Exactly two points are required to create a linear path.');
29271
+ }
29272
+ var _a = __read(points, 2), start = _a[0], end = _a[1];
29273
+ if (multiPoints) {
29274
+ var midpointY = (end.y - start.y) / 2 + start.y;
29275
+ var intermediatePoints = [
29276
+ { x: start.x, y: midpointY - offset },
29277
+ { x: end.x, y: midpointY + offset },
29278
+ ];
29279
+ // Use bezier curves between points to smooth corners
29280
+ return [
29281
+ Object.assign(Object.assign({}, start), { controlOut: { x: start.x, y: midpointY - offset } }),
29282
+ intermediatePoints[0],
29283
+ intermediatePoints[1],
29284
+ Object.assign(Object.assign({}, end), { controlIn: { x: end.x, y: midpointY + offset } }),
29285
+ ];
29286
+ }
29287
+ return [start, end];
29288
+ };
29289
+ };
29290
+
29291
+ var initPathPlugin = function (config) { return new reteConnectionPathPlugin.ConnectionPathPlugin({
29292
+ curve: function (c) { var _a; return (_a = (c.curve || (config === null || config === void 0 ? void 0 : config.curve))) !== null && _a !== void 0 ? _a : d3Shape.curveLinear; },
29293
+ transformer: function (c) {
29294
+ var _a, _b, _c;
29295
+ return ((_a = config === null || config === void 0 ? void 0 : config.transform) === null || _a === void 0 ? void 0 : _a.active)
29296
+ ? createSegmentedPath(c, (_b = config === null || config === void 0 ? void 0 : config.transform) === null || _b === void 0 ? void 0 : _b.options)
29297
+ : reteConnectionPathPlugin.Transformers.classic({
29298
+ vertical: !!(config === null || config === void 0 ? void 0 : config.vertical),
29299
+ curvature: (_c = config === null || config === void 0 ? void 0 : config.curvature) !== null && _c !== void 0 ? _c : 0.3,
29300
+ });
29301
+ },
29302
+ arrow: function (connection) { return (!(config === null || config === void 0 ? void 0 : config.arrow) ? false : config === null || config === void 0 ? void 0 : config.arrow); },
29303
+ }); };
29304
+
29305
+ var socketPositionWatcher = function (offset, isVertical, editor) {
29306
+ if (offset === void 0) { offset = 1; }
29307
+ if (isVertical === void 0) { isVertical = false; }
29308
+ return reteRenderUtils.getDOMSocketPosition({
29309
+ offset: function (_a, nodeId, side, key) {
29310
+ var x = _a.x, y = _a.y;
29311
+ return { x: x, y: y };
29312
+ },
29313
+ });
29314
+ };
29315
+
29316
+ var createDiagramEditor = function (container, injector, config) { return __awaiter(void 0, void 0, void 0, function () {
29317
+ var _a, _b, _c, _d, _e, _f, _g, socket, editor, area, connection, pathPlugin, angularRender, readonly, arrange, reroute, minimap, selector, accumulating, _scaling_1;
29318
+ return __generator(this, function (_h) {
29319
+ socket = new Socket('', config === null || config === void 0 ? void 0 : config.socketType);
29320
+ editor = new rete.NodeEditor();
29321
+ area = new reteAreaPlugin.AreaPlugin(container);
29322
+ connection = new reteConnectionPlugin.ConnectionPlugin();
29323
+ pathPlugin = initPathPlugin(config === null || config === void 0 ? void 0 : config.path);
29324
+ angularRender = new i2$8.AngularPlugin({ injector: injector });
29325
+ readonly = new reteReadonlyPlugin.ReadonlyPlugin();
29326
+ arrange = new reteAutoArrangePlugin.AutoArrangePlugin();
29327
+ reroute = new reteConnectionReroutePlugin.ReroutePlugin();
29328
+ minimap = new reteMinimapPlugin.MinimapPlugin((_a = config === null || config === void 0 ? void 0 : config.minimap) === null || _a === void 0 ? void 0 : _a.options);
29329
+ selector = reteAreaPlugin.AreaExtensions.selector();
29330
+ accumulating = reteAreaPlugin.AreaExtensions.accumulateOnCtrl();
29331
+ reteAreaPlugin.AreaExtensions.selectableNodes(area, selector, { accumulating: accumulating });
29332
+ reteConnectionReroutePlugin.RerouteExtensions.selectablePins(reroute, selector, accumulating);
29333
+ //#endregion
29334
+ //#region PRESETS
29335
+ arrange.addPreset(reteAutoArrangePlugin.Presets.classic.setup());
29336
+ angularRender.addPreset(i2$8.Presets.classic.setup({
29337
+ socketPositionWatcher: socketPositionWatcher(0, (_b = config === null || config === void 0 ? void 0 : config.path) === null || _b === void 0 ? void 0 : _b.vertical, editor),
29338
+ customize: {
29339
+ node: customizeNode(config, editor),
29340
+ connection: customizeConnection(config),
29341
+ socket: customizeSocket(config),
29342
+ },
29343
+ }));
29344
+ angularRender.addPreset(i2$8.Presets.minimap.setup({ size: ((_c = config === null || config === void 0 ? void 0 : config.minimap) === null || _c === void 0 ? void 0 : _c.size) || 150 }));
29345
+ connection.addPreset(reteConnectionPlugin.Presets.classic.setup());
29346
+ if ((_d = config === null || config === void 0 ? void 0 : config.area) === null || _d === void 0 ? void 0 : _d.restrict) {
29347
+ _scaling_1 = (config === null || config === void 0 ? void 0 : config.area.scaling) || { min: 0.5, max: 1.5 };
29348
+ reteAreaPlugin.AreaExtensions.restrictor(area, {
29349
+ scaling: function () { return _scaling_1; },
29350
+ });
29351
+ }
29352
+ //#endregion
29353
+ //#region USE
29354
+ if ((_e = config === null || config === void 0 ? void 0 : config.readonly) === null || _e === void 0 ? void 0 : _e.active) {
29355
+ editor.use(readonly.root);
29356
+ area.use(readonly.area);
29357
+ }
29358
+ editor.use(area);
29359
+ if (!((_f = config === null || config === void 0 ? void 0 : config.readonly) === null || _f === void 0 ? void 0 : _f.active)) {
29360
+ // Don't use the connection plugin in readonly mode
29361
+ area.use(connection);
29362
+ }
29363
+ if (config === null || config === void 0 ? void 0 : config.enableArrange) {
29364
+ area.use(arrange);
29365
+ }
29366
+ //@ts-ignore
29367
+ angularRender.use(pathPlugin);
29368
+ if (config.reroute) {
29369
+ //@ts-ignore
29370
+ angularRender.use(reroute);
29371
+ }
29372
+ if ((_g = config === null || config === void 0 ? void 0 : config.minimap) === null || _g === void 0 ? void 0 : _g.active) {
29373
+ area.use(minimap);
29374
+ }
29375
+ // Render Diagram
29376
+ area.use(angularRender);
29377
+ //#endregion
29378
+ return [2 /*return*/, {
29379
+ editor: editor,
29380
+ socket: socket,
29381
+ plugins: {
29382
+ area: area,
29383
+ connection: connection,
29384
+ arrange: arrange,
29385
+ reroute: reroute,
29386
+ readonly: readonly,
29387
+ },
29388
+ destroy: function () { return area.destroy(); },
29389
+ layout: function (props) { return arrange.layout(props); },
29390
+ fitToZoom: function () {
29391
+ reteAreaPlugin.AreaExtensions.zoomAt(area, editor.getNodes());
29392
+ },
29393
+ }];
29394
+ });
29395
+ }); };
29396
+
29397
+ /**
29398
+ *
29399
+ * @param node
29400
+ * @returns
29401
+ */
29402
+ var removeNode = function (data, editor) { return __awaiter(void 0, void 0, void 0, function () {
29403
+ var nodes, node, nodeConfig, _a;
29404
+ return __generator(this, function (_b) {
29405
+ switch (_b.label) {
29406
+ case 0:
29407
+ if (!data || !editor) {
29408
+ console.log('Node not found.');
29409
+ return [2 /*return*/];
29410
+ }
29411
+ nodes = editor.getNodes();
29412
+ node = editor.getNode(data.nodeId);
29413
+ if (!node) {
29414
+ console.log('Node not found.');
29415
+ return [2 /*return*/];
29416
+ }
29417
+ if (node.type === NODE_TYPE.start && nodes.length > 1) {
29418
+ return [2 /*return*/];
29419
+ }
29420
+ nodeConfig = node.config;
29421
+ if (!(nodeConfig === null || nodeConfig === void 0 ? void 0 : nodeConfig.isLinked)) return [3 /*break*/, 2];
29422
+ return [4 /*yield*/, removeNodeAndReplaceConnections(node, editor)];
29423
+ case 1:
29424
+ _a = _b.sent();
29425
+ return [3 /*break*/, 4];
29426
+ case 2: return [4 /*yield*/, removeNodeAndConnections(node, editor)];
29427
+ case 3:
29428
+ _a = _b.sent();
29429
+ _b.label = 4;
29430
+ case 4: return [2 /*return*/, _a];
29431
+ }
29432
+ });
29433
+ }); };
29434
+ /**
29435
+ *
29436
+ * @param node
29437
+ * @param editor
29438
+ */
29439
+ var removeNodeAndConnections = function (node, editor) { return __awaiter(void 0, void 0, void 0, function () {
29440
+ return __generator(this, function (_a) {
29441
+ switch (_a.label) {
29442
+ case 0:
29443
+ removeConnections(node, editor);
29444
+ return [4 /*yield*/, editor.removeNode(node.id)];
29445
+ case 1:
29446
+ _a.sent();
29447
+ return [2 /*return*/];
29448
+ }
29449
+ });
29450
+ }); };
29451
+ /**
29452
+ *
29453
+ * @param node
29454
+ * @param editor
29455
+ */
29456
+ var removeNodeAndReplaceConnections = function (node, editor) { return __awaiter(void 0, void 0, void 0, function () {
29457
+ var outputs, inputs;
29458
+ return __generator(this, function (_a) {
29459
+ switch (_a.label) {
29460
+ case 0:
29461
+ outputs = getConnections(editor, function (connection) { return connection.source == node.id; });
29462
+ inputs = getConnections(editor, function (connection) { return connection.target == node.id; });
29463
+ if (!(!!inputs.length && !!outputs.length)) return [3 /*break*/, 2];
29464
+ return [4 /*yield*/, _updateConnections(outputs, inputs, editor)];
29465
+ case 1:
29466
+ _a.sent();
29467
+ return [3 /*break*/, 3];
29468
+ case 2:
29469
+ removeConnections(node, editor);
29470
+ _a.label = 3;
29471
+ case 3: return [4 /*yield*/, editor.removeNode(node.id)];
29472
+ case 4:
29473
+ _a.sent();
29474
+ return [2 /*return*/];
29475
+ }
29476
+ });
29477
+ }); };
29478
+ /**
29479
+ *
29480
+ * @param node
29481
+ * @param editor
29482
+ */
29483
+ var removeConnections = function (node, editor) {
29484
+ var connections = getConnections(editor, function (connection) { return connection.source === node.id || connection.target === node.id; });
29485
+ if (connections.length) {
29486
+ connections.forEach(function (connection) {
29487
+ editor.removeConnection(connection.id);
29488
+ });
29489
+ }
29490
+ };
29491
+ /**
29492
+ *
29493
+ * @param editor
29494
+ * @param predicate
29495
+ * @returns
29496
+ */
29497
+ var getConnections = function (editor, predicate) {
29498
+ return editor.getConnections().filter(predicate);
29499
+ };
29500
+ /**
29501
+ *
29502
+ * @param outputs
29503
+ * @param inputs
29504
+ * @param editor
29505
+ */
29506
+ var _updateConnections = function (outputs, inputs, editor) { return __awaiter(void 0, void 0, void 0, function () {
29507
+ var source, target, sourceNode, targetNode, connection;
29508
+ return __generator(this, function (_a) {
29509
+ switch (_a.label) {
29510
+ case 0:
29511
+ source = inputs[0].source;
29512
+ target = outputs[0].target;
29513
+ sourceNode = editor.getNode(source);
29514
+ targetNode = editor.getNode(target);
29515
+ __spreadArray(__spreadArray([], __read(outputs)), __read(inputs)).forEach(function (connection) { return __awaiter(void 0, void 0, void 0, function () {
29516
+ return __generator(this, function (_a) {
29517
+ switch (_a.label) {
29518
+ case 0: return [4 /*yield*/, editor.removeConnection(connection.id)];
29519
+ case 1:
29520
+ _a.sent();
29521
+ return [2 /*return*/];
29522
+ }
29523
+ });
29524
+ }); });
29525
+ if (!sourceNode || !targetNode) {
29526
+ return [2 /*return*/];
29527
+ }
29528
+ connection = new Connection(sourceNode, sourceNode.id + "-output", targetNode, targetNode.id + "-input");
29529
+ return [4 /*yield*/, editor.addConnection(connection)];
29530
+ case 1:
29531
+ _a.sent();
29532
+ return [2 /*return*/];
29533
+ }
29534
+ });
29535
+ }); };
29536
+
29537
+ function serializePort(port) {
29538
+ return {
29539
+ id: port.id,
29540
+ label: port.label,
29541
+ socket: {
29542
+ name: port.socket.name,
29543
+ },
29544
+ };
29545
+ }
29546
+ function serializeControl(control) {
29547
+ if (control instanceof rete.ClassicPreset.InputControl) {
29548
+ return {
29549
+ __type: 'ClassicPreset.InputControl',
29550
+ id: control.id,
29551
+ readonly: control.readonly,
29552
+ type: control.type,
29553
+ value: control.value,
29554
+ };
29555
+ }
29556
+ return null;
29557
+ }
29558
+
29559
+ var DiagramService = /** @class */ (function () {
29560
+ /**
29561
+ *
29562
+ */
29563
+ function DiagramService(plugins) {
29564
+ this.plugins = plugins;
29565
+ this._editorSub = new rxjs.Subject();
29566
+ this.onReady$ = this._editorSub.asObservable();
29567
+ }
29568
+ DiagramService.prototype.setEditor = function (editor) {
29569
+ this._editorSub.next(editor);
29570
+ this.editor = editor.editor;
29571
+ this.socket = editor.socket;
29572
+ this.destroy = editor.destroy;
29573
+ this.fitToZoom = editor.fitToZoom;
29574
+ };
29575
+ DiagramService.prototype.getContentNodes = function () {
29576
+ return this.editor
29577
+ .getNodes()
29578
+ .filter(function (nd) { return ![NODE_TYPE.start, NODE_TYPE.end].includes(nd.type); });
29579
+ };
29580
+ DiagramService.prototype.getNodesData = function () {
29581
+ return this.getContentNodes().map(function (node) { return node.content.data; });
29582
+ };
29583
+ DiagramService.prototype.canAddNode = function (nodeType) {
29584
+ if (nodeType === NODE_TYPE.content) {
29585
+ return true;
29586
+ }
29587
+ var _nodes = this.editor.getNodes();
29588
+ var _isExist = _nodes.some(function (nd) { return nd.type === nodeType; });
29589
+ return !_isExist;
29590
+ };
29591
+ DiagramService.prototype.addNode = function (node) {
29592
+ return __awaiter(this, void 0, void 0, function () {
29593
+ return __generator(this, function (_b) {
29594
+ switch (_b.label) {
29595
+ case 0: return [4 /*yield*/, this.editor.addNode(node)];
29596
+ case 1:
29597
+ _b.sent();
29598
+ return [2 /*return*/];
29599
+ }
29600
+ });
29601
+ });
29602
+ };
29603
+ DiagramService.prototype.createNode = function (type, config) {
29604
+ if (type === void 0) { type = NODE_TYPE.content; }
29605
+ var _node = initNodeByType(type, config);
29606
+ if (config.type !== NODE_TYPE.start) {
29607
+ this.createInputs(_node);
29608
+ }
29609
+ if (config.type !== NODE_TYPE.end) {
29610
+ this.createOutputs(_node);
29611
+ }
29612
+ _node.notify = this.notifyListener(_node);
29613
+ return _node;
29614
+ };
29615
+ DiagramService.prototype.shouldAddStart = function (nodeType) {
29616
+ if (nodeType === NODE_TYPE.start) {
29617
+ return false;
29618
+ }
29619
+ var _nodes = this.editor.getNodes();
29620
+ var _isExist = _nodes.some(function (nd) { return nd.type === NODE_TYPE.start; });
29621
+ return !_isExist;
29622
+ };
29623
+ DiagramService.prototype.getLastNode = function () {
29624
+ var nodes = this.editor.getNodes();
29625
+ return nodes.length ? nodes[nodes.length - 1] : null;
29626
+ };
29627
+ DiagramService.prototype.getNodesByType = function (type) {
29628
+ return this.editor.getNodes().filter(function (nd) { return nd.type === type; });
29629
+ };
29630
+ DiagramService.prototype.getLastViewNode = function () {
29631
+ var nodes = Array.from(this.plugins.area.nodeViews.values());
29632
+ return nodes.length ? nodes[nodes.length - 1] : null;
29633
+ };
29634
+ DiagramService.prototype.createInputs = function (node) {
29635
+ node.addInput(node.id + "-input", new rete.ClassicPreset.Input(this.socket));
29636
+ return node;
29637
+ };
29638
+ DiagramService.prototype.createOutputs = function (node) {
29639
+ node.addOutput(node.id + "-output", new rete.ClassicPreset.Output(this.socket, '', false));
29640
+ return node;
29641
+ };
29642
+ DiagramService.prototype.addConnection = function (sourceNode, targetNode) {
29643
+ return __awaiter(this, void 0, void 0, function () {
29644
+ return __generator(this, function (_b) {
29645
+ switch (_b.label) {
29646
+ case 0: return [4 /*yield*/, this.editor.addConnection(this.createConnection(sourceNode, targetNode))];
29647
+ case 1:
29648
+ _b.sent();
29649
+ return [2 /*return*/];
29650
+ }
29651
+ });
29652
+ });
29653
+ };
29654
+ DiagramService.prototype.createConnection = function (sourceNode, targetNode) {
29655
+ var connection = new Connection(sourceNode, sourceNode.id + "-output", targetNode, targetNode.id + "-input");
29656
+ connection.status = targetNode.status;
29657
+ return connection;
29658
+ };
29659
+ DiagramService.prototype.appendConnection = function (connection) {
29660
+ return __awaiter(this, void 0, void 0, function () {
29661
+ return __generator(this, function (_b) {
29662
+ switch (_b.label) {
29663
+ case 0: return [4 /*yield*/, this.editor.addConnection(connection)];
29664
+ case 1:
29665
+ _b.sent();
29666
+ return [2 /*return*/];
29667
+ }
29668
+ });
29669
+ });
29670
+ };
29671
+ DiagramService.prototype.clear = function () {
29672
+ return __awaiter(this, void 0, void 0, function () {
29673
+ return __generator(this, function (_b) {
29674
+ switch (_b.label) {
29675
+ case 0: return [4 /*yield*/, this.editor.clear()];
29676
+ case 1: return [2 /*return*/, _b.sent()];
29677
+ }
29678
+ });
29679
+ });
29680
+ };
29681
+ DiagramService.prototype.redraw = function () {
29682
+ var _this = this;
29683
+ this.editor.getNodes().forEach(function (node) {
29684
+ _this.plugins.area.update('node', node.id);
29685
+ });
29686
+ };
29687
+ DiagramService.prototype.notifyListener = function (node) {
29688
+ var _this = this;
29689
+ return function (eventType, payload) {
29690
+ var _b;
29691
+ var _a;
29692
+ var _actions = (_b = {},
29693
+ _b[NOTIFY_EVENT.remove] = _this._removeNode.bind(_this),
29694
+ _b);
29695
+ return (_a = _actions[eventType]) === null || _a === void 0 ? void 0 : _a.call(_actions, payload);
29696
+ };
29697
+ };
29698
+ DiagramService.prototype._removeNode = function (data) {
29699
+ return __awaiter(this, void 0, void 0, function () {
29700
+ var node, viewNode, config, index, position, direction, nodes, _node, _dir, _position;
29701
+ var _this = this;
29702
+ return __generator(this, function (_b) {
29703
+ switch (_b.label) {
29704
+ case 0:
29705
+ node = this.editor.getNode(data.nodeId);
29706
+ if (!node) {
29707
+ return [2 /*return*/];
29708
+ }
29709
+ viewNode = function (id) { return _this.plugins.area.nodeViews.get(id); };
29710
+ config = node.config;
29711
+ index = null;
29712
+ position = null;
29713
+ direction = null;
29714
+ if (config.isLinked) {
29715
+ index = this.editor.getNodes().findIndex(function (nd) { return nd.id === data.nodeId; });
29716
+ position = viewNode(data.nodeId).position;
29717
+ direction = node.directions;
29718
+ }
29719
+ this.plugins.readonly.disable();
29720
+ return [4 /*yield*/, removeNode(data, this.editor)];
29721
+ case 1:
29722
+ _b.sent();
29723
+ if (!config.isLinked) return [3 /*break*/, 5];
29724
+ nodes = this.editor.getNodes().slice(index);
29725
+ _b.label = 2;
29726
+ case 2:
29727
+ if (!nodes.length) return [3 /*break*/, 5];
29728
+ _node = nodes.shift();
29729
+ _dir = Object.assign({}, _node.directions);
29730
+ _position = Object.assign({}, viewNode(_node.id).position);
29731
+ _node.directions = direction;
29732
+ if (_node.type == NODE_TYPE.end) {
29733
+ position.y = Math.abs(Math.floor(position.y - (_node.height - NODE_CIRCLE_SIZE) / 2));
29734
+ }
29735
+ return [4 /*yield*/, this.plugins.area.translate(_node.id, position)];
29736
+ case 3:
29737
+ _b.sent();
29738
+ return [4 /*yield*/, this.plugins.area.update('node', _node.id)];
29739
+ case 4:
29740
+ _b.sent();
29741
+ position = _position;
29742
+ direction = _dir;
29743
+ return [3 /*break*/, 2];
29744
+ case 5:
29745
+ this.plugins.readonly.enable();
29746
+ return [2 /*return*/];
29747
+ }
29748
+ });
29749
+ });
29750
+ };
29751
+ DiagramService.prototype.translateView = function () {
29752
+ return __awaiter(this, void 0, void 0, function () {
29753
+ var _b, container, area, rect, k, delta, ox, oy;
29754
+ return __generator(this, function (_c) {
29755
+ _b = this.plugins.area, container = _b.container, area = _b.area;
29756
+ rect = container.getBoundingClientRect();
29757
+ k = area.transform.k;
29758
+ delta = -0.2;
29759
+ ox = Math.max(0, (rect.left - container.clientWidth / 2) * k);
29760
+ oy = Math.max(0, (rect.top - container.clientHeight / 2) * k);
29761
+ area.zoom(Math.max(0.1, k * (1 + delta)), ox * delta, oy * delta);
29762
+ return [2 /*return*/];
29763
+ });
29764
+ });
29765
+ };
29766
+ return DiagramService;
29767
+ }());
29768
+ DiagramService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: DiagramService, deps: [{ token: DiagramPluginsService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
29769
+ DiagramService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: DiagramService });
29770
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: DiagramService, decorators: [{
29771
+ type: i0.Injectable
29772
+ }], ctorParameters: function () { return [{ type: DiagramPluginsService }]; } });
29773
+
29774
+ var MessageService = /** @class */ (function () {
29775
+ function MessageService() {
29776
+ this.messageSubject = new rxjs.Subject();
29777
+ }
29778
+ MessageService.prototype.sendMessage = function (key, payload) {
29779
+ this.messageSubject.next({ key: key, payload: payload });
29780
+ };
29781
+ MessageService.prototype.onMessage = function (key) {
29782
+ return this.messageSubject.asObservable().pipe(operators.filter(function (data) { return data.key === key; }), operators.map(function (data) { return data.payload; }));
29783
+ };
29784
+ return MessageService;
29785
+ }());
29786
+ MessageService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: MessageService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
29787
+ MessageService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: MessageService, providedIn: 'root' });
29788
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: MessageService, decorators: [{
29789
+ type: i0.Injectable,
29790
+ args: [{
29791
+ providedIn: 'root',
29792
+ }]
29793
+ }] });
29794
+
29795
+ var WorkflowService = /** @class */ (function () {
29796
+ function WorkflowService(_diagram, _plugins, _message) {
29797
+ this._diagram = _diagram;
29798
+ this._plugins = _plugins;
29799
+ this._message = _message;
29800
+ this._defaultNodeHeight = NODE_HEIGHT;
29801
+ this._defaultNodeWidth = NODE_WIDTH;
29802
+ this._defaultNodeCircleSize = NODE_CIRCLE_SIZE;
29803
+ this._defaultNodeMargin = NODE_MARGIN;
29804
+ this._offset = 60;
29805
+ }
29806
+ Object.defineProperty(WorkflowService.prototype, "_diagramClientRect", {
29807
+ get: function () {
29808
+ return this._plugins.area.container.getBoundingClientRect();
29809
+ },
29810
+ enumerable: false,
29811
+ configurable: true
29812
+ });
29813
+ WorkflowService.prototype.setConfig = function (_config) {
29814
+ this._config = _config;
29815
+ this._message.sendMessage(MESSAGE_TYPE.configUpdated, _config);
29816
+ };
29817
+ WorkflowService.prototype.addNode = function (nodeType, data) {
29818
+ var _a, _b;
29819
+ return __awaiter(this, void 0, void 0, function () {
29820
+ var position, _node, lastNode;
29821
+ var _this = this;
29822
+ return __generator(this, function (_c) {
29823
+ switch (_c.label) {
29824
+ case 0:
29825
+ if (!this._diagram.canAddNode(nodeType)) {
29826
+ if (this._isReadonlyDisabled()) {
29827
+ this._plugins.readonly.enable();
29828
+ }
29829
+ return [2 /*return*/];
29830
+ }
29831
+ position = { x: this._offset, y: this._offset };
29832
+ if (this._isReadonlyEnabled()) {
29833
+ this._plugins.readonly.disable();
29834
+ }
29835
+ _node = this._createNode(nodeType, data);
29836
+ if (!this._diagram.shouldAddStart(nodeType)) return [3 /*break*/, 2];
29837
+ return [4 /*yield*/, this.addStartNode(position)];
29838
+ case 1:
29839
+ _c.sent();
29840
+ _c.label = 2;
29841
+ case 2:
29842
+ if (!((_a = this._config.node) === null || _a === void 0 ? void 0 : _a.isLinked)) return [3 /*break*/, 4];
29843
+ return [4 /*yield*/, this._linkToLastNode(_node)];
29844
+ case 3:
29845
+ lastNode = _c.sent();
29846
+ if (lastNode) {
29847
+ position = this._calculatePosition(_node, lastNode);
29848
+ }
29849
+ _c.label = 4;
29850
+ case 4: return [4 /*yield*/, this._diagram.addNode(_node)];
29851
+ case 5:
29852
+ _c.sent();
29853
+ return [4 /*yield*/, this._plugins.area.translate(_node.id, position)];
29854
+ case 6:
29855
+ _c.sent();
29856
+ if ((_b = this._config) === null || _b === void 0 ? void 0 : _b.fitToView) {
29857
+ setTimeout(function () {
29858
+ _this._diagram.fitToZoom();
29859
+ }, 300);
29860
+ }
29861
+ if (this._isReadonlyDisabled()) {
29862
+ this._plugins.readonly.enable();
29863
+ }
29864
+ return [2 /*return*/];
29865
+ }
29866
+ });
29867
+ });
29868
+ };
29869
+ WorkflowService.prototype.removeEndNode = function () {
29870
+ return __awaiter(this, void 0, void 0, function () {
29871
+ var node;
29872
+ return __generator(this, function (_c) {
29873
+ switch (_c.label) {
29874
+ case 0:
29875
+ node = this._diagram.getNodesByType(NODE_TYPE.end)[0];
29876
+ if (!node) return [3 /*break*/, 2];
29877
+ return [4 /*yield*/, removeNodeAndConnections(node, this._diagram.editor)];
29878
+ case 1:
29879
+ _c.sent();
29880
+ _c.label = 2;
29881
+ case 2: return [2 /*return*/];
29882
+ }
29883
+ });
29884
+ });
29885
+ };
29886
+ /**
29887
+ *
29888
+ * @param _node
29889
+ * @param lastNode
29890
+ * @returns
29891
+ */
29892
+ WorkflowService.prototype._calculatePosition = function (_node, lastNode) {
29893
+ var isEndNode = _node.type === NODE_TYPE.end;
29894
+ return {
29895
+ x: this._calculatePositionX(lastNode.node.type, lastNode.viewNode.position.x),
29896
+ y: this._calculatePositionY(isEndNode ? NODE_TYPE.end : lastNode.node.type, lastNode.viewNode.position.y),
29897
+ };
29898
+ };
29899
+ WorkflowService.prototype._createNode = function (nodeType, data, config) {
29900
+ return this._diagram.createNode(nodeType, Object.assign(Object.assign({ label: nodeType, type: nodeType, name: data.name, description: data.description, status: data.status }, (config ? config : {})), { content: data }));
29901
+ };
29902
+ WorkflowService.prototype.addWrapNodesPipe = function (editor) {
29903
+ var _this = this;
29904
+ editor.addPipe(function (context) { return __awaiter(_this, void 0, void 0, function () {
29905
+ var node;
29906
+ var _this = this;
29907
+ return __generator(this, function (_c) {
29908
+ switch (_c.label) {
29909
+ case 0:
29910
+ if (!(context.type === 'nodecreate')) return [3 /*break*/, 3];
29911
+ if (!(context.data.type === NODE_TYPE.end)) return [3 /*break*/, 2];
29912
+ node = this._diagram.getLastNode();
29913
+ node.directions.outputs = IN_OUT_DIRECTION.end;
29914
+ return [4 /*yield*/, this._plugins.area.update('node', node.id)];
29915
+ case 1:
29916
+ _c.sent();
29917
+ return [3 /*break*/, 3];
29918
+ case 2: return [2 /*return*/, this._changeNodeSocketPosition(context)];
29919
+ case 3:
29920
+ if (context.type === 'nodecreated' && context.data.type !== NODE_TYPE.end) {
29921
+ setTimeout(function () {
29922
+ _this._updateNodePosition(context);
29923
+ });
29924
+ }
29925
+ return [2 /*return*/, context];
29926
+ }
29927
+ });
29928
+ }); });
29929
+ };
29930
+ WorkflowService.prototype._changeNodeSocketPosition = function (context) {
29931
+ var previousNode = this._diagram.getLastViewNode();
29932
+ if (previousNode && this._isNearEndBoundary(previousNode)) {
29933
+ context.data.directions.outputs = IN_OUT_DIRECTION.bottom;
29934
+ }
29935
+ if (previousNode && this._isOverEndBoundary(context.data, previousNode)) {
29936
+ context.data.directions.inputs = IN_OUT_DIRECTION.top;
29937
+ context.data.directions.outputs = IN_OUT_DIRECTION.end;
29938
+ }
29939
+ return Object.assign({}, context);
29940
+ };
29941
+ WorkflowService.prototype._linkToLastNode = function (_addedNode) {
29942
+ return __awaiter(this, void 0, void 0, function () {
29943
+ var node, viewNode;
29944
+ return __generator(this, function (_c) {
29945
+ switch (_c.label) {
29946
+ case 0:
29947
+ node = this._diagram.getLastNode();
29948
+ viewNode = this._diagram.getLastViewNode();
29949
+ if (!(node && viewNode)) return [3 /*break*/, 2];
29950
+ return [4 /*yield*/, this._diagram.addConnection(node, _addedNode)];
29951
+ case 1:
29952
+ _c.sent();
29953
+ return [2 /*return*/, { node: node, viewNode: viewNode }];
29954
+ case 2: return [2 /*return*/, null];
29955
+ }
29956
+ });
29957
+ });
29958
+ };
29959
+ /**
29960
+ *
29961
+ * @returns
29962
+ */
29963
+ WorkflowService.prototype._isReadonlyDisabled = function () {
29964
+ return this._config.readonly && !this._plugins.readonly.enabled;
29965
+ };
29966
+ /**
29967
+ *
29968
+ * @returns
29969
+ */
29970
+ WorkflowService.prototype._isReadonlyEnabled = function () {
29971
+ return this._config.readonly && this._plugins.readonly.enabled;
29972
+ };
29973
+ /**
29974
+ *
29975
+ * @param position
29976
+ */
29977
+ WorkflowService.prototype.addStartNode = function (position) {
29978
+ return __awaiter(this, void 0, void 0, function () {
29979
+ var startNode;
29980
+ return __generator(this, function (_c) {
29981
+ switch (_c.label) {
29982
+ case 0:
29983
+ startNode = this._diagram.createNode(NODE_TYPE.start, {
29984
+ type: NODE_TYPE.start,
29985
+ label: NODE_TYPE.start,
29986
+ name: 'start',
29987
+ });
29988
+ return [4 /*yield*/, this._diagram.addNode(startNode)];
29989
+ case 1:
29990
+ _c.sent();
29991
+ return [4 /*yield*/, this._plugins.area.translate(startNode.id, position)];
29992
+ case 2:
29993
+ _c.sent();
29994
+ return [2 /*return*/];
29995
+ }
29996
+ });
29997
+ });
29998
+ };
29999
+ /**
30000
+ *
30001
+ * @param nodeType
30002
+ * @param y
30003
+ * @returns
30004
+ */
30005
+ WorkflowService.prototype._calculatePositionY = function (nodeType, y) {
30006
+ if (nodeType === NODE_TYPE.start) {
30007
+ return Math.abs(Math.floor(y - (this._defaultNodeHeight - this._defaultNodeCircleSize) / 2));
30008
+ }
30009
+ if (nodeType === NODE_TYPE.end) {
30010
+ return Math.abs(Math.floor(y + (this._defaultNodeHeight - this._defaultNodeCircleSize) / 2));
30011
+ }
30012
+ return y;
30013
+ };
30014
+ /**
30015
+ *
30016
+ * @param nodeType
30017
+ * @param lastNodePositionX
30018
+ * @returns
30019
+ */
30020
+ WorkflowService.prototype._calculatePositionX = function (nodeType, lastNodePositionX) {
30021
+ var _nodeWidth = nodeType === NODE_TYPE.content
30022
+ ? this._defaultNodeWidth
30023
+ : this._defaultNodeCircleSize;
30024
+ return lastNodePositionX + this._defaultNodeMargin + _nodeWidth;
30025
+ };
30026
+ /**
30027
+ *
30028
+ * @param node
30029
+ * @param previousNode
30030
+ * @returns
30031
+ */
30032
+ WorkflowService.prototype._isOverEndBoundary = function (node, previousNode) {
30033
+ var _a;
30034
+ var _diagramWidth = Number((_a = this._diagramClientRect) === null || _a === void 0 ? void 0 : _a.width) - this._defaultNodeMargin;
30035
+ var _width = previousNode.position.x + (node.width + this._defaultNodeMargin) * 2;
30036
+ return _width >= _diagramWidth;
30037
+ };
30038
+ /**
30039
+ *
30040
+ * @param previousNode
30041
+ * @returns
30042
+ */
30043
+ WorkflowService.prototype._isNearEndBoundary = function (previousNode) {
30044
+ var _a;
30045
+ var currentPosition = previousNode.position.x +
30046
+ this._defaultNodeWidth +
30047
+ this._defaultNodeMargin * 2 +
30048
+ this._offset;
30049
+ var wrapLine = Number((_a = this._diagramClientRect) === null || _a === void 0 ? void 0 : _a.width) - this._defaultNodeWidth * 2;
30050
+ return currentPosition >= wrapLine;
30051
+ };
30052
+ WorkflowService.prototype._updateNodePosition = function (context) {
30053
+ var _a, _b;
30054
+ return __awaiter(this, void 0, void 0, function () {
30055
+ var _previousNode, _nodeViewPosition, _diagramWidth, _currentX, _fNode, x, _fViewNode;
30056
+ return __generator(this, function (_c) {
30057
+ switch (_c.label) {
30058
+ case 0:
30059
+ _previousNode = this._diagram.getLastNode();
30060
+ _nodeViewPosition = (_a = this._plugins.area.nodeViews.get(context.data.id)) === null || _a === void 0 ? void 0 : _a.position;
30061
+ if (!(_previousNode && _nodeViewPosition)) return [3 /*break*/, 2];
30062
+ _diagramWidth = Number((_b = this._diagramClientRect) === null || _b === void 0 ? void 0 : _b.width);
30063
+ _currentX = _nodeViewPosition.x + context.data.width;
30064
+ if (!(_currentX >= _diagramWidth)) return [3 /*break*/, 2];
30065
+ this._plugins.readonly.disable();
30066
+ _fNode = this._diagram.editor
30067
+ .getNodes()
30068
+ .find(function (nd) { return nd.type !== NODE_TYPE.start; });
30069
+ x = this._offset;
30070
+ if (_fNode) {
30071
+ _fViewNode = this._plugins.area.nodeViews.get(_fNode.id);
30072
+ x = (_fViewNode === null || _fViewNode === void 0 ? void 0 : _fViewNode.position.x) || this._offset;
30073
+ }
30074
+ return [4 /*yield*/, this._plugins.area.translate(context.data.id, {
30075
+ x: x,
30076
+ y: _nodeViewPosition.y + this._defaultNodeMargin + context.data.height,
30077
+ })];
30078
+ case 1:
30079
+ _c.sent();
30080
+ this._plugins.readonly.enable();
30081
+ _c.label = 2;
30082
+ case 2: return [2 /*return*/, context];
30083
+ }
30084
+ });
30085
+ });
30086
+ };
30087
+ return WorkflowService;
30088
+ }());
30089
+ WorkflowService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: WorkflowService, deps: [{ token: DiagramService }, { token: DiagramPluginsService }, { token: MessageService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
30090
+ WorkflowService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: WorkflowService });
30091
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: WorkflowService, decorators: [{
30092
+ type: i0.Injectable
30093
+ }], ctorParameters: function () { return [{ type: DiagramService }, { type: DiagramPluginsService }, { type: MessageService }]; } });
30094
+
30095
+ var BaseNodeComponent = /** @class */ (function (_super) {
30096
+ __extends(BaseNodeComponent, _super);
30097
+ function BaseNodeComponent(cdr, _messageService) {
30098
+ var _this = _super.call(this, cdr) || this;
30099
+ _this._messageService = _messageService;
30100
+ _this.nodeTypes = NODE_TYPE;
30101
+ _this.directions = IN_OUT_DIRECTION;
30102
+ _this.destroy$ = new rxjs.Subject();
30103
+ _this._cdr = cdr;
30104
+ _this._messageService
30105
+ .onMessage(MESSAGE_TYPE.configUpdated)
30106
+ .pipe(operators.takeUntil(_this.destroy$))
30107
+ .subscribe(function (res) {
30108
+ _this._cdr.detectChanges();
30109
+ });
30110
+ return _this;
30111
+ }
30112
+ BaseNodeComponent.prototype.removeNode = function () {
30113
+ this.data.notify(NOTIFY_EVENT.remove, { nodeId: this.data.id });
30114
+ };
30115
+ BaseNodeComponent.prototype.ngOnDestroy = function () {
30116
+ this.destroy$.next();
30117
+ this.destroy$.complete();
30118
+ };
30119
+ return BaseNodeComponent;
30120
+ }(i2$8.NodeComponent));
30121
+ BaseNodeComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: BaseNodeComponent, deps: [{ token: i0__namespace.ChangeDetectorRef }, { token: MessageService }], target: i0__namespace.ɵɵFactoryTarget.Component });
30122
+ BaseNodeComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: BaseNodeComponent, selector: "ng-component", inputs: { data: "data" }, usesInheritance: true, ngImport: i0__namespace, template: '', isInline: true });
30123
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: BaseNodeComponent, decorators: [{
30124
+ type: i0.Component,
30125
+ args: [{
30126
+ template: '',
30127
+ }]
30128
+ }], ctorParameters: function () { return [{ type: i0__namespace.ChangeDetectorRef }, { type: MessageService }]; }, propDecorators: { data: [{
30129
+ type: i0.Input
30130
+ }] } });
30131
+
30132
+ var RemoveButtonComponent = /** @class */ (function () {
30133
+ function RemoveButtonComponent() {
30134
+ this.remove = new i0.EventEmitter();
30135
+ }
30136
+ return RemoveButtonComponent;
30137
+ }());
30138
+ RemoveButtonComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: RemoveButtonComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
30139
+ RemoveButtonComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: RemoveButtonComponent, selector: "node-remove-button", outputs: { remove: "remove" }, ngImport: i0__namespace, template: "\n <button\n mat-icon-button\n (click)=\"remove.emit()\"\n (pointerdown)=\"$event.stopPropagation()\"\n (dblclick)=\"$event.stopPropagation()\"\n class=\"remove-icon\"\n >\n <mat-icon>close</mat-icon>\n </button>\n ", isInline: true, styles: ["\n :host {\n --size: var(--remove-icon-size, 30px);\n position: var(--remove-icon-position, absolute);\n inset: var(--remove-icon-inset, 0 0 auto auto);\n opacity: var(--remove-icon-opacity, 0);\n background: var(--remove-icon-background, inherit);\n width: var(--size);\n height: var(--size);\n line-height: var(var(--remove-icon-size), calc(var(--size) - 6));\n border-radius: 50%;\n z-index: 2;\n .remove-icon {\n border: 1px solid currentColor;\n border-radius: 50%;\n width: var(--size);\n height: var(--size);\n line-height: var(--remove-icon-size, 30px);\n background: var(--remove-icon-background, inherit);\n }\n }\n "], components: [{ type: i1__namespace$8.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2__namespace$3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
30140
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: RemoveButtonComponent, decorators: [{
30141
+ type: i0.Component,
30142
+ args: [{
30143
+ selector: 'node-remove-button',
30144
+ template: "\n <button\n mat-icon-button\n (click)=\"remove.emit()\"\n (pointerdown)=\"$event.stopPropagation()\"\n (dblclick)=\"$event.stopPropagation()\"\n class=\"remove-icon\"\n >\n <mat-icon>close</mat-icon>\n </button>\n ",
30145
+ styles: [
30146
+ "\n :host {\n --size: var(--remove-icon-size, 30px);\n position: var(--remove-icon-position, absolute);\n inset: var(--remove-icon-inset, 0 0 auto auto);\n opacity: var(--remove-icon-opacity, 0);\n background: var(--remove-icon-background, inherit);\n width: var(--size);\n height: var(--size);\n line-height: var(var(--remove-icon-size), calc(var(--size) - 6));\n border-radius: 50%;\n z-index: 2;\n .remove-icon {\n border: 1px solid currentColor;\n border-radius: 50%;\n width: var(--size);\n height: var(--size);\n line-height: var(--remove-icon-size, 30px);\n background: var(--remove-icon-background, inherit);\n }\n }\n ",
30147
+ ],
30148
+ }]
30149
+ }], propDecorators: { remove: [{
30150
+ type: i0.Output
30151
+ }] } });
30152
+
30153
+ var NodeInputsComponent = /** @class */ (function () {
30154
+ function NodeInputsComponent() {
30155
+ }
30156
+ return NodeInputsComponent;
30157
+ }());
30158
+ NodeInputsComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NodeInputsComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
30159
+ NodeInputsComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NodeInputsComponent, selector: "node-inputs", inputs: { direction: "direction", data: "data", seed: "seed", emit: "emit", sortByIndex: "sortByIndex" }, host: { properties: { "class": " 'da-node__inputs inputs-' + direction" } }, ngImport: i0__namespace, template: "\n <div\n *ngFor=\"let input of data.inputs | keyvalue : sortByIndex\"\n class=\"da-node__inputs__socket\"\n style=\" height: var(--socket-size, 16px);\"\n refComponent\n [data]=\"{\n type: 'socket',\n side: 'input',\n key: input.key,\n nodeId: data.id,\n payload: input.value?.socket,\n seed: seed\n }\"\n [emit]=\"emit\"\n ></div>\n ", isInline: true, directives: [{ type: i4__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2__namespace$8.RefDirective, selector: "[refComponent]", inputs: ["data", "emit"] }], pipes: { "keyvalue": i4__namespace.KeyValuePipe }, encapsulation: i0__namespace.ViewEncapsulation.None });
30160
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NodeInputsComponent, decorators: [{
30161
+ type: i0.Component,
30162
+ args: [{
30163
+ selector: 'node-inputs',
30164
+ encapsulation: i0.ViewEncapsulation.None,
30165
+ host: {
30166
+ '[class]': " 'da-node__inputs inputs-' + direction",
30167
+ },
30168
+ template: "\n <div\n *ngFor=\"let input of data.inputs | keyvalue : sortByIndex\"\n class=\"da-node__inputs__socket\"\n style=\" height: var(--socket-size, 16px);\"\n refComponent\n [data]=\"{\n type: 'socket',\n side: 'input',\n key: input.key,\n nodeId: data.id,\n payload: input.value?.socket,\n seed: seed\n }\"\n [emit]=\"emit\"\n ></div>\n ",
30169
+ }]
30170
+ }], propDecorators: { direction: [{
30171
+ type: i0.Input
30172
+ }], data: [{
30173
+ type: i0.Input
30174
+ }], seed: [{
30175
+ type: i0.Input
30176
+ }], emit: [{
30177
+ type: i0.Input
30178
+ }], sortByIndex: [{
30179
+ type: i0.Input
30180
+ }] } });
30181
+
30182
+ var NodeOutputsComponent = /** @class */ (function () {
30183
+ function NodeOutputsComponent() {
30184
+ }
30185
+ return NodeOutputsComponent;
30186
+ }());
30187
+ NodeOutputsComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NodeOutputsComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
30188
+ NodeOutputsComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NodeOutputsComponent, selector: "node-outputs", inputs: { direction: "direction", data: "data", seed: "seed", emit: "emit", sortByIndex: "sortByIndex" }, host: { properties: { "class": " 'da-node__outputs outputs-' + direction" } }, ngImport: i0__namespace, template: "<div\n class=\"da-node__outputs__socket\"\n style=\" height: var(--socket-size, 16px);\"\n *ngFor=\"let output of data.outputs | keyvalue : sortByIndex\"\n refComponent\n [data]=\"{\n type: 'socket',\n side: 'output',\n key: output.key,\n nodeId: data.id,\n payload: output.value?.socket,\n seed: seed\n }\"\n [emit]=\"emit\"\n ></div>", isInline: true, directives: [{ type: i4__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2__namespace$8.RefDirective, selector: "[refComponent]", inputs: ["data", "emit"] }], pipes: { "keyvalue": i4__namespace.KeyValuePipe }, encapsulation: i0__namespace.ViewEncapsulation.None });
30189
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NodeOutputsComponent, decorators: [{
30190
+ type: i0.Component,
30191
+ args: [{
30192
+ selector: 'node-outputs',
30193
+ encapsulation: i0.ViewEncapsulation.None,
30194
+ host: {
30195
+ '[class]': " 'da-node__outputs outputs-' + direction",
30196
+ },
30197
+ template: "<div\n class=\"da-node__outputs__socket\"\n style=\" height: var(--socket-size, 16px);\"\n *ngFor=\"let output of data.outputs | keyvalue : sortByIndex\"\n refComponent\n [data]=\"{\n type: 'socket',\n side: 'output',\n key: output.key,\n nodeId: data.id,\n payload: output.value?.socket,\n seed: seed\n }\"\n [emit]=\"emit\"\n ></div>",
30198
+ }]
30199
+ }], propDecorators: { direction: [{
30200
+ type: i0.Input
30201
+ }], data: [{
30202
+ type: i0.Input
30203
+ }], seed: [{
30204
+ type: i0.Input
30205
+ }], emit: [{
30206
+ type: i0.Input
30207
+ }], sortByIndex: [{
30208
+ type: i0.Input
30209
+ }] } });
30210
+
30211
+ var CircleNodeComponent = /** @class */ (function (_super) {
30212
+ __extends(CircleNodeComponent, _super);
30213
+ function CircleNodeComponent() {
30214
+ return _super !== null && _super.apply(this, arguments) || this;
30215
+ }
30216
+ return CircleNodeComponent;
30217
+ }(BaseNodeComponent));
30218
+ CircleNodeComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: CircleNodeComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
30219
+ CircleNodeComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CircleNodeComponent, selector: "ng-component", usesInheritance: true, ngImport: i0__namespace, template: "<div\r\n class=\"da-node da-node--{{ data.type }} circle-node circle-node--{{ data.type }} {{\r\n data?.status ? ' da-node--' + data?.status : ''\r\n }} \"\r\n [style.--node-width]=\"data.width + 'px'\"\r\n [style.--node-height]=\"data.width + 'px'\"\r\n>\r\n <node-remove-button\r\n (remove)=\"removeNode()\"\r\n *ngIf=\"data.config?.canRemove\"\r\n ></node-remove-button>\r\n\r\n <div\r\n class=\"da-node__title circle-node__title\"\r\n [attr.tooltip]=\"data.content?.data?.tooltip\"\r\n [class.node-tooltip]=\"!!data.content?.data?.tooltip\"\r\n >\r\n {{ 'diagram.' + data.name | translate }}\r\n </div>\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", ".circle-node{--node-radius: 50%}.circle-node__title.node-tooltip:after{content:attr(tooltip);position:absolute;left:50%;top:-6px;transform:translate(-50%) translateY(-100%);background:rgba(0,0,0,.7);text-align:center;color:#fff;padding:4px 2px;font-size:12px;min-width:100px;border-radius:5px;pointer-events:none;display:var(--tooltip-display, none)}.circle-node:hover{--tooltip-display: block}.da-node--end{border-width:3px}\n"], components: [{ type: RemoveButtonComponent, selector: "node-remove-button", outputs: ["remove"] }, { type: NodeInputsComponent, selector: "node-inputs", inputs: ["direction", "data", "seed", "emit", "sortByIndex"] }, { type: NodeOutputsComponent, selector: "node-outputs", inputs: ["direction", "data", "seed", "emit", "sortByIndex"] }], directives: [{ type: i4__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1__namespace$1.TranslatePipe } });
30220
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: CircleNodeComponent, decorators: [{
30221
+ type: i0.Component,
30222
+ args: [{
30223
+ templateUrl: './circle-node.component.html',
30224
+ styleUrls: ['../../styles/node.scss', './circle-node.component.scss'],
30225
+ }]
30226
+ }] });
30227
+
30228
+ var StatusIconComponent = /** @class */ (function () {
30229
+ function StatusIconComponent() {
30230
+ }
30231
+ StatusIconComponent.prototype.getIcon = function () {
30232
+ switch (this.status) {
30233
+ case NODE_STATUS.completed:
30234
+ return 'check_circle';
30235
+ case NODE_STATUS.rejected:
30236
+ return 'cancel';
30237
+ default:
30238
+ return '';
30239
+ }
30240
+ };
30241
+ return StatusIconComponent;
30242
+ }());
30243
+ StatusIconComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: StatusIconComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
30244
+ StatusIconComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: StatusIconComponent, selector: "status-icon", inputs: { status: "status" }, host: { properties: { "class": "'da-node__check-status da-node__check-status--' + status" } }, ngImport: i0__namespace, template: " <mat-icon>\n {{ getIcon() }}\n </mat-icon>", isInline: true, components: [{ type: i2__namespace$3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush, encapsulation: i0__namespace.ViewEncapsulation.None });
30245
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: StatusIconComponent, decorators: [{
30246
+ type: i0.Component,
30247
+ args: [{
30248
+ selector: 'status-icon',
30249
+ template: " <mat-icon>\n {{ getIcon() }}\n </mat-icon>",
30250
+ encapsulation: i0.ViewEncapsulation.None,
30251
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
30252
+ host: {
30253
+ '[class]': "'da-node__check-status da-node__check-status--' + status",
30254
+ },
30255
+ }]
30256
+ }], propDecorators: { status: [{
30257
+ type: i0.Input
30258
+ }] } });
30259
+
30260
+ var NodeIconComponent = /** @class */ (function () {
30261
+ function NodeIconComponent() {
30262
+ }
30263
+ NodeIconComponent.prototype.isIconTemplate = function (icon) {
30264
+ return icon instanceof i0.TemplateRef;
30265
+ };
30266
+ return NodeIconComponent;
30267
+ }());
30268
+ NodeIconComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NodeIconComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
30269
+ NodeIconComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NodeIconComponent, selector: "node-icon", inputs: { icon: "icon" }, host: { classAttribute: "da-node__icon" }, ngImport: i0__namespace, template: "\n <mat-icon *ngIf=\"!isIconTemplate(icon)\">{{ icon }}</mat-icon>\n <span *ngIf=\"isIconTemplate(icon)\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </span>\n ", isInline: true, components: [{ type: i2__namespace$3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], encapsulation: i0__namespace.ViewEncapsulation.None });
30270
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NodeIconComponent, decorators: [{
30271
+ type: i0.Component,
30272
+ args: [{
30273
+ selector: 'node-icon',
30274
+ template: "\n <mat-icon *ngIf=\"!isIconTemplate(icon)\">{{ icon }}</mat-icon>\n <span *ngIf=\"isIconTemplate(icon)\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </span>\n ",
30275
+ encapsulation: i0.ViewEncapsulation.None,
30276
+ host: {
30277
+ class: 'da-node__icon',
30278
+ },
30279
+ }]
30280
+ }], propDecorators: { icon: [{
30281
+ type: i0.Input
30282
+ }] } });
30283
+
30284
+ var ContentNodeComponent = /** @class */ (function (_super) {
30285
+ __extends(ContentNodeComponent, _super);
30286
+ function ContentNodeComponent() {
30287
+ return _super !== null && _super.apply(this, arguments) || this;
30288
+ }
30289
+ return ContentNodeComponent;
30290
+ }(BaseNodeComponent));
30291
+ ContentNodeComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ContentNodeComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
30292
+ ContentNodeComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ContentNodeComponent, selector: "ng-component", usesInheritance: true, ngImport: i0__namespace, 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 <status-icon [status]=\"data?.status\" *ngIf=\"data?.status\"></status-icon>\r\n\r\n <node-icon *ngIf=\"data.content?.icon\" [icon]=\"data.content?.icon\"></node-icon>\r\n\r\n <div class=\"da-node__title\">{{ data.name }}</div>\r\n <div class=\"da-node__description\" *ngIf=\"data.description\">\r\n {{ data.description }}\r\n </div>\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"], components: [{ type: RemoveButtonComponent, selector: "node-remove-button", outputs: ["remove"] }, { type: StatusIconComponent, selector: "status-icon", inputs: ["status"] }, { type: NodeIconComponent, selector: "node-icon", inputs: ["icon"] }, { type: NodeInputsComponent, selector: "node-inputs", inputs: ["direction", "data", "seed", "emit", "sortByIndex"] }, { type: NodeOutputsComponent, selector: "node-outputs", inputs: ["direction", "data", "seed", "emit", "sortByIndex"] }], directives: [{ type: i4__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
30293
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ContentNodeComponent, decorators: [{
30294
+ type: i0.Component,
30295
+ args: [{
30296
+ templateUrl: './content-node.component.html',
30297
+ styleUrls: ['../../styles/node.scss'],
30298
+ }]
30299
+ }] });
30300
+
30301
+ var CustomConnectionComponent = /** @class */ (function (_super) {
30302
+ __extends(CustomConnectionComponent, _super);
30303
+ function CustomConnectionComponent() {
30304
+ return _super !== null && _super.apply(this, arguments) || this;
30305
+ }
30306
+ return CustomConnectionComponent;
30307
+ }(i2$8.ConnectionComponent));
30308
+ CustomConnectionComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: CustomConnectionComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
30309
+ CustomConnectionComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomConnectionComponent, selector: "connection", inputs: { data: "data" }, usesInheritance: true, ngImport: i0__namespace, template: "\n <svg\n data-testid=\"connection\"\n style=\"z-index:-1\"\n class=\"{{ data?.status ? 'connection-status-' + data?.status : '' }}\"\n >\n <path [attr.d]=\"path\" />\n </svg>\n ", isInline: true, styles: ["\n svg {\n overflow: visible;\n position: absolute;\n pointer-events: none;\n path {\n fill: none;\n stroke-width: 2px;\n stroke: var(--path-color, #1b3e7f);\n pointer-events: auto;\n }\n }\n "] });
30310
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: CustomConnectionComponent, decorators: [{
30311
+ type: i0.Component,
30312
+ args: [{
30313
+ selector: 'connection',
30314
+ styles: [
30315
+ "\n svg {\n overflow: visible;\n position: absolute;\n pointer-events: none;\n path {\n fill: none;\n stroke-width: 2px;\n stroke: var(--path-color, #1b3e7f);\n pointer-events: auto;\n }\n }\n ",
30316
+ ],
30317
+ template: "\n <svg\n data-testid=\"connection\"\n style=\"z-index:-1\"\n class=\"{{ data?.status ? 'connection-status-' + data?.status : '' }}\"\n >\n <path [attr.d]=\"path\" />\n </svg>\n ",
30318
+ }]
30319
+ }], propDecorators: { data: [{
30320
+ type: i0.Input
30321
+ }] } });
30322
+
30323
+ var CustomSocketComponent = /** @class */ (function (_super) {
30324
+ __extends(CustomSocketComponent, _super);
30325
+ function CustomSocketComponent() {
30326
+ return _super !== null && _super.apply(this, arguments) || this;
30327
+ }
30328
+ return CustomSocketComponent;
30329
+ }(i2$8.SocketComponent));
30330
+ CustomSocketComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: CustomSocketComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
30331
+ CustomSocketComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomSocketComponent, selector: "ng-component", usesInheritance: true, ngImport: i0__namespace, template: "", isInline: true, styles: ["\n :host {\n display: inline-block;\n cursor: pointer;\n border: 1px solid var(--primary-color, #1b3e7f);\n width: var(--socket-size, 16px);\n height: var(--socket-size, 16px);\n vertical-align: middle;\n background: white;\n z-index: 2;\n box-sizing: border-box;\n opacity: var(--socket-opacity, 0);\n border-radius: var(--socket-radius, 50%);\n &:hover {\n box-shadow: 0 0 0 1px var(--primary-color, #1b3e7f);\n }\n }\n "] });
30332
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: CustomSocketComponent, decorators: [{
30333
+ type: i0.Component,
30334
+ args: [{
30335
+ template: "",
30336
+ styles: [
30337
+ "\n :host {\n display: inline-block;\n cursor: pointer;\n border: 1px solid var(--primary-color, #1b3e7f);\n width: var(--socket-size, 16px);\n height: var(--socket-size, 16px);\n vertical-align: middle;\n background: white;\n z-index: 2;\n box-sizing: border-box;\n opacity: var(--socket-opacity, 0);\n border-radius: var(--socket-radius, 50%);\n &:hover {\n box-shadow: 0 0 0 1px var(--primary-color, #1b3e7f);\n }\n }\n ",
30338
+ ],
30339
+ }]
30340
+ }] });
30341
+
30342
+ var TemplateNodeComponent = /** @class */ (function (_super) {
30343
+ __extends(TemplateNodeComponent, _super);
30344
+ function TemplateNodeComponent() {
30345
+ return _super !== null && _super.apply(this, arguments) || this;
30346
+ }
30347
+ TemplateNodeComponent.prototype.ngOnInit = function () { };
30348
+ Object.defineProperty(TemplateNodeComponent.prototype, "templateOutletContext", {
30349
+ get: function () {
30350
+ var _a = this.data, content = _a.content, description = _a.description, name = _a.name, status = _a.status, id = _a.id;
30351
+ return {
30352
+ $implicit: {
30353
+ content: content,
30354
+ description: description,
30355
+ name: name,
30356
+ status: status,
30357
+ id: id,
30358
+ },
30359
+ };
30360
+ },
30361
+ enumerable: false,
30362
+ configurable: true
30363
+ });
30364
+ return TemplateNodeComponent;
30365
+ }(BaseNodeComponent));
30366
+ TemplateNodeComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: TemplateNodeComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
30367
+ TemplateNodeComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TemplateNodeComponent, selector: "ng-component", usesInheritance: true, ngImport: i0__namespace, 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: RemoveButtonComponent, selector: "node-remove-button", outputs: ["remove"] }, { type: NodeIconComponent, selector: "node-icon", inputs: ["icon"] }, { type: NodeInputsComponent, selector: "node-inputs", inputs: ["direction", "data", "seed", "emit", "sortByIndex"] }, { type: NodeOutputsComponent, selector: "node-outputs", inputs: ["direction", "data", "seed", "emit", "sortByIndex"] }], directives: [{ type: i4__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.Default });
30368
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: TemplateNodeComponent, decorators: [{
30369
+ type: i0.Component,
30370
+ args: [{
30371
+ templateUrl: './template-node.component.html',
30372
+ styleUrls: ['../../styles/node.scss'],
30373
+ changeDetection: i0.ChangeDetectionStrategy.Default,
30374
+ styles: [
30375
+ "\n :host {\n display: block;\n }\n ",
30376
+ ],
30377
+ }]
30378
+ }] });
30379
+
30380
+ var ZoomControlComponent = /** @class */ (function () {
30381
+ function ZoomControlComponent(_plugins) {
30382
+ this._plugins = _plugins;
30383
+ this.delta = 0.1;
30384
+ }
30385
+ ZoomControlComponent.prototype.zoomOut = function () {
30386
+ var k = this._plugins.area.area.transform.k;
30387
+ this._plugins.area.area.zoom(k - this.delta);
30388
+ };
30389
+ ZoomControlComponent.prototype.zoomIn = function () {
30390
+ var k = this._plugins.area.area.transform.k;
30391
+ this._plugins.area.area.zoom(k + this.delta);
30392
+ };
30393
+ return ZoomControlComponent;
30394
+ }());
30395
+ ZoomControlComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ZoomControlComponent, deps: [{ token: DiagramPluginsService }], target: i0__namespace.ɵɵFactoryTarget.Component });
30396
+ ZoomControlComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ZoomControlComponent, selector: "app-zoom-control", ngImport: i0__namespace, template: "\n <button mat-flat-button (click)=\"zoomOut()\">\n <mat-icon>zoom_out</mat-icon>\n </button>\n <button mat-flat-button (click)=\"zoomIn()\">\n <mat-icon>zoom_in</mat-icon>\n </button>\n ", isInline: true, styles: ["\n :host {\n position: var(--diagram-zoom-position, absolute);\n inset-inline: var(--diagram-zoom-inline, auto 5px);\n inset-block: var(--diagram-zoom-block, 5px auto);\n background: var(--diagram-zoom-background, #f8f8ff);\n border-radius: var(--diagram-zoom-radius, 4px);\n border: var(--diagram-zoom-border, 1px solid #dcdce4);\n display: var(--diagram-zoom-display, inline-flex);\n flex-direction: var(--diagram-zoom-direction, row);\n box-shadow: var(--diagram-zoom-shadow, 0 0 0 0 #eee);\n .mat-flat-button {\n background-color: transparent;\n min-width: 36px;\n }\n }\n "], components: [{ type: i1__namespace$8.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2__namespace$3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
30397
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ZoomControlComponent, decorators: [{
30398
+ type: i0.Component,
30399
+ args: [{
30400
+ selector: 'app-zoom-control',
30401
+ template: "\n <button mat-flat-button (click)=\"zoomOut()\">\n <mat-icon>zoom_out</mat-icon>\n </button>\n <button mat-flat-button (click)=\"zoomIn()\">\n <mat-icon>zoom_in</mat-icon>\n </button>\n ",
30402
+ styles: [
30403
+ "\n :host {\n position: var(--diagram-zoom-position, absolute);\n inset-inline: var(--diagram-zoom-inline, auto 5px);\n inset-block: var(--diagram-zoom-block, 5px auto);\n background: var(--diagram-zoom-background, #f8f8ff);\n border-radius: var(--diagram-zoom-radius, 4px);\n border: var(--diagram-zoom-border, 1px solid #dcdce4);\n display: var(--diagram-zoom-display, inline-flex);\n flex-direction: var(--diagram-zoom-direction, row);\n box-shadow: var(--diagram-zoom-shadow, 0 0 0 0 #eee);\n .mat-flat-button {\n background-color: transparent;\n min-width: 36px;\n }\n }\n ",
30404
+ ],
30405
+ }]
30406
+ }], ctorParameters: function () { return [{ type: DiagramPluginsService }]; } });
30407
+
30408
+ var DiagramDirective = /** @class */ (function () {
30409
+ function DiagramDirective(_elementRef, _renderer, _injector, _viewContainerRef, _resolver, _diagramService, _pluginsService) {
30410
+ this._elementRef = _elementRef;
30411
+ this._renderer = _renderer;
30412
+ this._injector = _injector;
30413
+ this._viewContainerRef = _viewContainerRef;
30414
+ this._resolver = _resolver;
30415
+ this._diagramService = _diagramService;
30416
+ this._pluginsService = _pluginsService;
30417
+ this.height = DIAGRAM_HEIGHT + "px";
30418
+ this.width = '100%';
30419
+ this.config = { readonly: { active: false } };
30420
+ this.zoomCtrl = true;
30421
+ this.onDiagramReady = new i0.EventEmitter();
30422
+ }
30423
+ Object.defineProperty(DiagramDirective.prototype, "clientRect", {
30424
+ get: function () {
30425
+ return this._elementRef.nativeElement.getBoundingClientRect();
30426
+ },
30427
+ enumerable: false,
30428
+ configurable: true
30429
+ });
30430
+ DiagramDirective.prototype.ngOnInit = function () {
30431
+ this._appendStyles();
30432
+ };
30433
+ DiagramDirective.prototype._appendZoomComponent = function () {
30434
+ if (!this.zoomCtrl) {
30435
+ return;
30436
+ }
30437
+ var factory = this._resolver.resolveComponentFactory(ZoomControlComponent);
30438
+ this._viewContainerRef.createComponent(factory);
30439
+ };
30440
+ DiagramDirective.prototype.ngAfterViewInit = function () {
30441
+ return __awaiter(this, void 0, void 0, function () {
30442
+ var editor, error_1;
30443
+ return __generator(this, function (_a) {
30444
+ switch (_a.label) {
30445
+ case 0:
30446
+ this._appendZoomComponent();
30447
+ _a.label = 1;
30448
+ case 1:
30449
+ _a.trys.push([1, 3, , 4]);
30450
+ return [4 /*yield*/, createDiagramEditor(this._elementRef.nativeElement, this._injector, this.config //TODO it's Should be merged with DIAGRAM_DEFAULT_OPTIONS
30451
+ )];
30452
+ case 2:
30453
+ editor = _a.sent();
30454
+ this._pluginsService.setPlugins(editor);
30455
+ this._diagramService.setEditor(editor);
30456
+ this.diagramEditor = editor;
30457
+ this.onDiagramReady.emit(editor);
30458
+ return [3 /*break*/, 4];
30459
+ case 3:
30460
+ error_1 = _a.sent();
30461
+ console.log(error_1);
30462
+ return [3 /*break*/, 4];
30463
+ case 4: return [2 /*return*/];
30464
+ }
30465
+ });
30466
+ });
30467
+ };
30468
+ DiagramDirective.prototype._appendStyles = function () {
30469
+ var _this = this;
30470
+ var _requiredStyles = {
30471
+ position: 'var(--diagram-position, relative)',
30472
+ width: "var(--diagram-width, " + this.width + ")",
30473
+ height: "var(--diagram-height, " + this.height + ")",
30474
+ direction: 'ltr',
30475
+ };
30476
+ Object.entries(_requiredStyles).forEach(function (_a) {
30477
+ var _b = __read(_a, 2), key = _b[0], value = _b[1];
30478
+ _this._renderer.setStyle(_this._elementRef.nativeElement, key, value);
30479
+ });
30480
+ };
30481
+ return DiagramDirective;
30482
+ }());
30483
+ DiagramDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: DiagramDirective, deps: [{ token: i0__namespace.ElementRef }, { token: i0__namespace.Renderer2 }, { token: i0__namespace.Injector }, { token: i0__namespace.ViewContainerRef }, { token: i0__namespace.ComponentFactoryResolver }, { token: DiagramService }, { token: DiagramPluginsService }], target: i0__namespace.ɵɵFactoryTarget.Directive });
30484
+ DiagramDirective.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: DiagramDirective, selector: "[appDiagram]", inputs: { height: "height", width: "width", config: "config", zoomCtrl: "zoomCtrl" }, outputs: { onDiagramReady: "onDiagramReady" }, exportAs: ["diagram"], ngImport: i0__namespace });
30485
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: DiagramDirective, decorators: [{
30486
+ type: i0.Directive,
30487
+ args: [{
30488
+ selector: '[appDiagram]',
30489
+ exportAs: 'diagram',
30490
+ }]
30491
+ }], ctorParameters: function () { return [{ type: i0__namespace.ElementRef }, { type: i0__namespace.Renderer2 }, { type: i0__namespace.Injector }, { type: i0__namespace.ViewContainerRef }, { type: i0__namespace.ComponentFactoryResolver }, { type: DiagramService }, { type: DiagramPluginsService }]; }, propDecorators: { height: [{
30492
+ type: i0.Input
30493
+ }], width: [{
30494
+ type: i0.Input
30495
+ }], config: [{
30496
+ type: i0.Input
30497
+ }], zoomCtrl: [{
30498
+ type: i0.Input
30499
+ }], onDiagramReady: [{
30500
+ type: i0.Output
30501
+ }] } });
30502
+
30503
+ var DiagramsModule = /** @class */ (function () {
30504
+ function DiagramsModule() {
30505
+ }
30506
+ return DiagramsModule;
30507
+ }());
30508
+ DiagramsModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: DiagramsModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
30509
+ DiagramsModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: DiagramsModule, declarations: [CircleNodeComponent,
30510
+ ContentNodeComponent,
30511
+ CustomConnectionComponent,
30512
+ CustomSocketComponent,
30513
+ TemplateNodeComponent,
30514
+ DiagramDirective,
30515
+ RemoveButtonComponent,
30516
+ ZoomControlComponent,
30517
+ NodeIconComponent,
30518
+ StatusIconComponent,
30519
+ NodeInputsComponent,
30520
+ NodeOutputsComponent], imports: [i4.CommonModule,
30521
+ i2$8.ReteModule,
30522
+ i1$7.MatButtonModule,
30523
+ i2$3.MatIconModule,
30524
+ i6.FormsModule,
30525
+ i1$1.TranslateModule,
30526
+ i2$5.MatTooltipModule], exports: [DiagramDirective, ZoomControlComponent] });
30527
+ DiagramsModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: DiagramsModule, providers: [DiagramService, DiagramPluginsService, WorkflowService], imports: [[
30528
+ i4.CommonModule,
30529
+ i2$8.ReteModule,
30530
+ i1$7.MatButtonModule,
30531
+ i2$3.MatIconModule,
30532
+ i6.FormsModule,
30533
+ i1$1.TranslateModule,
30534
+ i2$5.MatTooltipModule,
30535
+ ]] });
30536
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: DiagramsModule, decorators: [{
30537
+ type: i0.NgModule,
30538
+ args: [{
30539
+ declarations: [
30540
+ CircleNodeComponent,
30541
+ ContentNodeComponent,
30542
+ CustomConnectionComponent,
30543
+ CustomSocketComponent,
30544
+ TemplateNodeComponent,
30545
+ DiagramDirective,
30546
+ RemoveButtonComponent,
30547
+ ZoomControlComponent,
30548
+ NodeIconComponent,
30549
+ StatusIconComponent,
30550
+ NodeInputsComponent,
30551
+ NodeOutputsComponent,
30552
+ ],
30553
+ imports: [
30554
+ i4.CommonModule,
30555
+ i2$8.ReteModule,
30556
+ i1$7.MatButtonModule,
30557
+ i2$3.MatIconModule,
30558
+ i6.FormsModule,
30559
+ i1$1.TranslateModule,
30560
+ i2$5.MatTooltipModule,
30561
+ ],
30562
+ exports: [DiagramDirective, ZoomControlComponent],
30563
+ providers: [DiagramService, DiagramPluginsService, WorkflowService],
30564
+ }]
30565
+ }] });
30566
+
29051
30567
  var FILTER_DATES_TYPE = {
29052
30568
  lastDay: 'from_now-24H_to_now',
29053
30569
  lastWeek: 'from_now-7d_to_now',
@@ -31281,12 +32797,15 @@
31281
32797
  exports.AttachmentsPageProviderComponent = AttachmentsPageProviderComponent;
31282
32798
  exports.AvatarComponent = AvatarComponent;
31283
32799
  exports.AvatarModule = AvatarModule;
32800
+ exports.BaseNodeClass = BaseNodeClass;
31284
32801
  exports.BooleanViewerComponent = BooleanViewerComponent;
31285
32802
  exports.ButtonComponent = ButtonComponent;
31286
32803
  exports.CallApiService = CallApiService;
31287
32804
  exports.CardComponent = CardComponent;
31288
32805
  exports.CardModule = CardModule;
31289
32806
  exports.ChartDataService = ChartDataService;
32807
+ exports.CircleNode = CircleNode;
32808
+ exports.CircleNodeComponent = CircleNodeComponent;
31290
32809
  exports.ClickOutsideDirective = ClickOutsideDirective;
31291
32810
  exports.ClipboardComponent = ClipboardComponent;
31292
32811
  exports.CommentApiService = CommentApiService;
@@ -31299,6 +32818,9 @@
31299
32818
  exports.ConfirmDialogComponent = ConfirmDialogComponent;
31300
32819
  exports.ConfirmationDialogComponent = ConfirmationDialogComponent;
31301
32820
  exports.ConfirmationDialogModule = ConfirmationDialogModule;
32821
+ exports.Connection = Connection;
32822
+ exports.ContentNode = ContentNode;
32823
+ exports.ContentNodeComponent = ContentNodeComponent;
31302
32824
  exports.CopyComponent = CopyComponent;
31303
32825
  exports.CorrespondenceRelationComponent = CorrespondenceRelationComponent;
31304
32826
  exports.CorrespondenceRelationModule = CorrespondenceRelationModule;
@@ -31310,11 +32832,15 @@
31310
32832
  exports.CreateModalComponent = CreateModalComponent;
31311
32833
  exports.CreationTypeComponent = CreationTypeComponent;
31312
32834
  exports.CtsTagsModule = CtsTagsModule;
32835
+ exports.CustomConnectionComponent = CustomConnectionComponent;
31313
32836
  exports.CustomDocumentViewerComponent = CustomDocumentViewerComponent;
31314
32837
  exports.CustomPpViewerComponent = CustomPpViewerComponent;
32838
+ exports.CustomSocketComponent = CustomSocketComponent;
31315
32839
  exports.CustomToastrModule = CustomToastrModule;
31316
32840
  exports.CustomToastrService = CustomToastrService;
31317
32841
  exports.CutomeVocViewerComponent = CutomeVocViewerComponent;
32842
+ exports.DIAGRAM_DEFAULT_OPTIONS = DIAGRAM_DEFAULT_OPTIONS;
32843
+ exports.DIAGRAM_HEIGHT = DIAGRAM_HEIGHT;
31318
32844
  exports.DataViewerComponent = DataViewerComponent;
31319
32845
  exports.DateFormatterService = DateFormatterService;
31320
32846
  exports.DateHelperService = DateHelperService;
@@ -31324,6 +32850,10 @@
31324
32850
  exports.DepartmentFormComponent = DepartmentFormComponent;
31325
32851
  exports.DepartmentManagementService = DepartmentManagementService;
31326
32852
  exports.DepartmentViewerComponent = DepartmentViewerComponent;
32853
+ exports.DiagramDirective = DiagramDirective;
32854
+ exports.DiagramPluginsService = DiagramPluginsService;
32855
+ exports.DiagramService = DiagramService;
32856
+ exports.DiagramsModule = DiagramsModule;
31327
32857
  exports.DialogMangmentService = DialogMangmentService;
31328
32858
  exports.DirectiveModule = DirectiveModule;
31329
32859
  exports.DisplaySuitableIconComponent = DisplaySuitableIconComponent;
@@ -31399,6 +32929,7 @@
31399
32929
  exports.HijriDatePipe = HijriDatePipe;
31400
32930
  exports.HijriDatepickerComponent = HijriDatepickerComponent;
31401
32931
  exports.HijriGregorianDatepickerComponent = HijriGregorianDatepickerComponent;
32932
+ exports.IN_OUT_DIRECTION = IN_OUT_DIRECTION;
31402
32933
  exports.IconService = IconService;
31403
32934
  exports.InitializationService = InitializationService;
31404
32935
  exports.ItemListComponent = ItemListComponent;
@@ -31409,19 +32940,31 @@
31409
32940
  exports.LoanRequestComponent = LoanRequestComponent;
31410
32941
  exports.LocalStoragService = LocalStoragService;
31411
32942
  exports.LocalizedDatePipe = LocalizedDatePipe;
32943
+ exports.MESSAGE_TYPE = MESSAGE_TYPE;
31412
32944
  exports.MY_MOMENT_FORMATS = MY_MOMENT_FORMATS;
31413
32945
  exports.MainfolderService = MainfolderService;
32946
+ exports.MessageService = MessageService;
31414
32947
  exports.MomentDateAdapter = MomentDateAdapter;
31415
32948
  exports.MoveComponent = MoveComponent;
31416
32949
  exports.MultiValuePipe = MultiValuePipe;
31417
32950
  exports.MultipleDynamicFormViewerComponent = MultipleDynamicFormViewerComponent;
31418
32951
  exports.MutipleDynamicFormViewerModule = MutipleDynamicFormViewerModule;
32952
+ exports.NODE_CIRCLE_SIZE = NODE_CIRCLE_SIZE;
32953
+ exports.NODE_HEIGHT = NODE_HEIGHT;
32954
+ exports.NODE_MARGIN = NODE_MARGIN;
32955
+ exports.NODE_STATUS = NODE_STATUS;
32956
+ exports.NODE_TYPE = NODE_TYPE;
32957
+ exports.NODE_WIDTH = NODE_WIDTH;
31419
32958
  exports.NOTIFICATIONS_LIST_OPTIONS = NOTIFICATIONS_LIST_OPTIONS;
31420
32959
  exports.NOTIFICATION_ICON = NOTIFICATION_ICON;
31421
32960
  exports.NOTIFICATION_ITEM = NOTIFICATION_ITEM;
31422
32961
  exports.NOTIFICATION_STATUS = NOTIFICATION_STATUS;
32962
+ exports.NOTIFY_EVENT = NOTIFY_EVENT;
31423
32963
  exports.NgxHijriGregorianDatepickerModule = NgxHijriGregorianDatepickerModule;
31424
32964
  exports.NoDataComponent = NoDataComponent;
32965
+ exports.NodeIconComponent = NodeIconComponent;
32966
+ exports.NodeInputsComponent = NodeInputsComponent;
32967
+ exports.NodeOutputsComponent = NodeOutputsComponent;
31425
32968
  exports.NotificationIconDirective = NotificationIconDirective;
31426
32969
  exports.NotificationItemComponent = NotificationItemComponent;
31427
32970
  exports.NotificationItemDirective = NotificationItemDirective;
@@ -31457,8 +33000,10 @@
31457
33000
  exports.PublishingDocumentService = PublishingDocumentService;
31458
33001
  exports.ReadMoreComponent = ReadMoreComponent;
31459
33002
  exports.RecentlyViewedService = RecentlyViewedService;
33003
+ exports.RemoveButtonComponent = RemoveButtonComponent;
31460
33004
  exports.RenameComponent = RenameComponent;
31461
33005
  exports.RolesService = RolesService;
33006
+ exports.SOCKET_WIDTH = SOCKET_WIDTH;
31462
33007
  exports.SUBSCRIPTION_STATE = SUBSCRIPTION_STATE;
31463
33008
  exports.SafeHtmlPipe = SafeHtmlPipe;
31464
33009
  exports.ScanComponent = ScanComponent;
@@ -31476,12 +33021,16 @@
31476
33021
  exports.SharedServicesModule = SharedServicesModule;
31477
33022
  exports.SidepanelComponent = SidepanelComponent;
31478
33023
  exports.SingleActivityComponent = SingleActivityComponent;
33024
+ exports.Socket = Socket;
31479
33025
  exports.SpinnerComponent = SpinnerComponent;
33026
+ exports.StatusIconComponent = StatusIconComponent;
31480
33027
  exports.TRANSLATION_PROVIDER = TRANSLATION_PROVIDER;
31481
33028
  exports.TableComponent = TableComponent;
31482
33029
  exports.TableModule = TableModule;
31483
33030
  exports.TagsApiService = TagsApiService;
31484
33031
  exports.TemplateModalComponent = TemplateModalComponent;
33032
+ exports.TemplateNode = TemplateNode;
33033
+ exports.TemplateNodeComponent = TemplateNodeComponent;
31485
33034
  exports.TimeAgoPipe = TimeAgoPipe;
31486
33035
  exports.ToastsModule = ToastsModule;
31487
33036
  exports.TransferDocComponent = TransferDocComponent;
@@ -31507,10 +33056,13 @@
31507
33056
  exports.VocabularyApiService = VocabularyApiService;
31508
33057
  exports.VocabularyComponent = VocabularyComponent;
31509
33058
  exports.VocabularyModule = VocabularyModule;
33059
+ exports.WorkflowService = WorkflowService;
33060
+ exports.ZoomControlComponent = ZoomControlComponent;
31510
33061
  exports.appInitializer = appInitializer;
31511
33062
  exports.departmentCacheBuster$ = departmentCacheBuster$;
31512
33063
  exports.extensionJsonsFactory = extensionJsonsFactory;
31513
33064
  exports.filterEnabled = filterEnabled;
33065
+ exports.getConnections = getConnections;
31514
33066
  exports.getValue = getValue;
31515
33067
  exports.mergeArrays = mergeArrays;
31516
33068
  exports.mergeObjects = mergeObjects;
@@ -31518,6 +33070,11 @@
31518
33070
  exports.provideExtensionConfig = provideExtensionConfig;
31519
33071
  exports.reduceEmptyMenus = reduceEmptyMenus;
31520
33072
  exports.reduceSeparators = reduceSeparators;
33073
+ exports.removeConnections = removeConnections;
33074
+ exports.removeNode = removeNode;
33075
+ exports.removeNodeAndConnections = removeNodeAndConnections;
33076
+ exports.serializeControl = serializeControl;
33077
+ exports.serializePort = serializePort;
31521
33078
  exports.sortByOrder = sortByOrder;
31522
33079
 
31523
33080
  Object.defineProperty(exports, '__esModule', { value: true });