rete-angular-plugin 2.4.0 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/12/bundles/rete-angular-plugin-ng12.umd.js +44 -8
  2. package/12/bundles/rete-angular-plugin-ng12.umd.js.map +1 -1
  3. package/12/esm2015/index.js +2 -1
  4. package/12/esm2015/module.js +10 -5
  5. package/12/esm2015/presets/classic/components/connection/connection-wrapper.component.js +2 -1
  6. package/12/esm2015/presets/classic/components/node/node.component.js +6 -5
  7. package/12/esm2015/shared/pipes/impure-keyvalue.pipe.js +24 -0
  8. package/12/esm2015/shared/pipes/index.js +2 -0
  9. package/12/fesm2015/rete-angular-plugin-ng12.js +37 -10
  10. package/12/fesm2015/rete-angular-plugin-ng12.js.map +1 -1
  11. package/12/index.d.ts +1 -0
  12. package/12/module.d.ts +3 -2
  13. package/12/shared/pipes/impure-keyvalue.pipe.d.ts +12 -0
  14. package/12/shared/pipes/index.d.ts +1 -0
  15. package/13/esm2020/index.mjs +2 -1
  16. package/13/esm2020/module.mjs +10 -5
  17. package/13/esm2020/presets/classic/components/connection/connection-wrapper.component.mjs +2 -1
  18. package/13/esm2020/presets/classic/components/node/node.component.mjs +7 -6
  19. package/13/esm2020/shared/pipes/impure-keyvalue.pipe.mjs +24 -0
  20. package/13/esm2020/shared/pipes/index.mjs +2 -0
  21. package/13/fesm2015/rete-angular-plugin-ng13.mjs +40 -11
  22. package/13/fesm2015/rete-angular-plugin-ng13.mjs.map +1 -1
  23. package/13/fesm2020/rete-angular-plugin-ng13.mjs +38 -11
  24. package/13/fesm2020/rete-angular-plugin-ng13.mjs.map +1 -1
  25. package/13/index.d.ts +1 -0
  26. package/13/module.d.ts +3 -2
  27. package/13/shared/pipes/impure-keyvalue.pipe.d.ts +12 -0
  28. package/13/shared/pipes/index.d.ts +1 -0
  29. package/14/esm2020/index.mjs +2 -1
  30. package/14/esm2020/module.mjs +10 -5
  31. package/14/esm2020/presets/classic/components/connection/connection-wrapper.component.mjs +2 -1
  32. package/14/esm2020/presets/classic/components/node/node.component.mjs +7 -6
  33. package/14/esm2020/shared/pipes/impure-keyvalue.pipe.mjs +24 -0
  34. package/14/esm2020/shared/pipes/index.mjs +2 -0
  35. package/14/fesm2015/rete-angular-plugin-ng14.mjs +40 -11
  36. package/14/fesm2015/rete-angular-plugin-ng14.mjs.map +1 -1
  37. package/14/fesm2020/rete-angular-plugin-ng14.mjs +38 -11
  38. package/14/fesm2020/rete-angular-plugin-ng14.mjs.map +1 -1
  39. package/14/index.d.ts +1 -0
  40. package/14/module.d.ts +3 -2
  41. package/14/shared/pipes/impure-keyvalue.pipe.d.ts +12 -0
  42. package/14/shared/pipes/index.d.ts +1 -0
  43. package/15/esm2020/index.mjs +2 -1
  44. package/15/esm2020/module.mjs +10 -5
  45. package/15/esm2020/presets/classic/components/connection/connection-wrapper.component.mjs +2 -1
  46. package/15/esm2020/presets/classic/components/node/node.component.mjs +7 -6
  47. package/15/esm2020/shared/pipes/impure-keyvalue.pipe.mjs +24 -0
  48. package/15/esm2020/shared/pipes/index.mjs +2 -0
  49. package/15/fesm2015/rete-angular-plugin-ng15.mjs +40 -11
  50. package/15/fesm2015/rete-angular-plugin-ng15.mjs.map +1 -1
  51. package/15/fesm2020/rete-angular-plugin-ng15.mjs +38 -11
  52. package/15/fesm2020/rete-angular-plugin-ng15.mjs.map +1 -1
  53. package/15/index.d.ts +1 -0
  54. package/15/module.d.ts +3 -2
  55. package/15/shared/pipes/impure-keyvalue.pipe.d.ts +12 -0
  56. package/15/shared/pipes/index.d.ts +1 -0
  57. package/16/esm2022/index.mjs +2 -1
  58. package/16/esm2022/module.mjs +10 -5
  59. package/16/esm2022/presets/classic/components/connection/connection-wrapper.component.mjs +2 -1
  60. package/16/esm2022/presets/classic/components/node/node.component.mjs +7 -6
  61. package/16/esm2022/shared/pipes/impure-keyvalue.pipe.mjs +24 -0
  62. package/16/esm2022/shared/pipes/index.mjs +2 -0
  63. package/16/fesm2022/rete-angular-plugin-ng16.mjs +38 -11
  64. package/16/fesm2022/rete-angular-plugin-ng16.mjs.map +1 -1
  65. package/16/index.d.ts +1 -0
  66. package/16/module.d.ts +3 -2
  67. package/16/shared/pipes/impure-keyvalue.pipe.d.ts +12 -0
  68. package/16/shared/pipes/index.d.ts +1 -0
  69. package/17/esm2022/index.mjs +2 -1
  70. package/17/esm2022/module.mjs +10 -5
  71. package/17/esm2022/presets/classic/components/connection/connection-wrapper.component.mjs +2 -1
  72. package/17/esm2022/presets/classic/components/node/node.component.mjs +7 -6
  73. package/17/esm2022/shared/pipes/impure-keyvalue.pipe.mjs +24 -0
  74. package/17/esm2022/shared/pipes/index.mjs +2 -0
  75. package/17/fesm2022/rete-angular-plugin-ng17.mjs +38 -11
  76. package/17/fesm2022/rete-angular-plugin-ng17.mjs.map +1 -1
  77. package/17/index.d.ts +1 -0
  78. package/17/module.d.ts +3 -2
  79. package/17/shared/pipes/impure-keyvalue.pipe.d.ts +12 -0
  80. package/17/shared/pipes/index.d.ts +1 -0
  81. package/18/esm2022/index.mjs +2 -1
  82. package/18/esm2022/module.mjs +10 -5
  83. package/18/esm2022/presets/classic/components/connection/connection-wrapper.component.mjs +2 -1
  84. package/18/esm2022/presets/classic/components/node/node.component.mjs +7 -6
  85. package/18/esm2022/shared/pipes/impure-keyvalue.pipe.mjs +24 -0
  86. package/18/esm2022/shared/pipes/index.mjs +2 -0
  87. package/18/fesm2022/rete-angular-plugin-ng18.mjs +38 -11
  88. package/18/fesm2022/rete-angular-plugin-ng18.mjs.map +1 -1
  89. package/18/index.d.ts +1 -0
  90. package/18/module.d.ts +3 -2
  91. package/18/shared/pipes/impure-keyvalue.pipe.d.ts +12 -0
  92. package/18/shared/pipes/index.d.ts +1 -0
  93. package/19/fesm2022/rete-angular-plugin-ng19.mjs +32 -9
  94. package/19/fesm2022/rete-angular-plugin-ng19.mjs.map +1 -1
  95. package/19/index.d.ts +1 -0
  96. package/19/shared/pipes/impure-keyvalue.pipe.d.ts +12 -0
  97. package/19/shared/pipes/index.d.ts +1 -0
  98. package/20/fesm2022/rete-angular-plugin-ng20.mjs +32 -9
  99. package/20/fesm2022/rete-angular-plugin-ng20.mjs.map +1 -1
  100. package/20/index.d.ts +13 -2
  101. package/CHANGELOG.md +14 -0
  102. package/bundles/rete-angular-plugin.umd.js +41 -11
  103. package/bundles/rete-angular-plugin.umd.js.map +1 -1
  104. package/esm2015/index.js +2 -1
  105. package/esm2015/module.js +6 -3
  106. package/esm2015/presets/classic/components/connection/connection-wrapper.component.js +2 -1
  107. package/esm2015/presets/classic/components/node/node.component.js +2 -2
  108. package/esm2015/rete-angular-plugin.js +10 -9
  109. package/esm2015/shared/pipes/impure-keyvalue.pipe.js +20 -0
  110. package/esm2015/shared/pipes/index.js +2 -0
  111. package/fesm2015/rete-angular-plugin.js +27 -5
  112. package/fesm2015/rete-angular-plugin.js.map +1 -1
  113. package/index.d.ts +1 -0
  114. package/package.json +1 -1
  115. package/rete-angular-plugin.d.ts +9 -8
  116. package/rete-angular-plugin.metadata.json +1 -1
  117. package/shared/pipes/impure-keyvalue.pipe.d.ts +9 -0
  118. package/shared/pipes/index.d.ts +1 -0
package/esm2015/module.js CHANGED
@@ -6,6 +6,7 @@ import { SocketComponent } from './presets/classic/components/socket/socket.comp
6
6
  import { ConnectionWrapperComponent } from './presets/classic/components/connection/connection-wrapper.component';
7
7
  import { ControlComponent } from './presets/classic/components/control/control.component';
8
8
  import { RefDirective } from './ref';
9
+ import { ImpureKeyvaluePipe } from './shared/pipes/impure-keyvalue.pipe';
9
10
  export class ReteModule {
10
11
  }
11
12
  ReteModule.decorators = [
@@ -16,7 +17,8 @@ ReteModule.decorators = [
16
17
  ConnectionComponent,
17
18
  ConnectionWrapperComponent,
18
19
  SocketComponent,
19
- ControlComponent
20
+ ControlComponent,
21
+ ImpureKeyvaluePipe
20
22
  ],
21
23
  imports: [
22
24
  CommonModule
@@ -27,7 +29,8 @@ ReteModule.decorators = [
27
29
  ConnectionComponent,
28
30
  ConnectionWrapperComponent,
29
31
  SocketComponent,
30
- ControlComponent
32
+ ControlComponent,
33
+ ImpureKeyvaluePipe
31
34
  ],
32
35
  entryComponents: [
33
36
  NodeComponent,
@@ -38,4 +41,4 @@ ReteModule.decorators = [
38
41
  ]
39
42
  },] }
40
43
  ];
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDakYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDbkcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQzFGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxPQUFPLENBQUM7QUE4QnJDLE1BQU0sT0FBTyxVQUFVOzs7WUE1QnRCLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUU7b0JBQ1osWUFBWTtvQkFDWixhQUFhO29CQUNiLG1CQUFtQjtvQkFDbkIsMEJBQTBCO29CQUMxQixlQUFlO29CQUNmLGdCQUFnQjtpQkFDakI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLFlBQVk7aUJBQ2I7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osYUFBYTtvQkFDYixtQkFBbUI7b0JBQ25CLDBCQUEwQjtvQkFDMUIsZUFBZTtvQkFDZixnQkFBZ0I7aUJBQ2pCO2dCQUNELGVBQWUsRUFBRTtvQkFDZixhQUFhO29CQUNiLG1CQUFtQjtvQkFDbkIsMEJBQTBCO29CQUMxQixlQUFlO29CQUNmLGdCQUFnQjtpQkFDakI7YUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBOb2RlQ29tcG9uZW50IH0gZnJvbSAnLi9wcmVzZXRzL2NsYXNzaWMvY29tcG9uZW50cy9ub2RlL25vZGUuY29tcG9uZW50JztcbmltcG9ydCB7IENvbm5lY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL3ByZXNldHMvY2xhc3NpYy9jb21wb25lbnRzL2Nvbm5lY3Rpb24vY29ubmVjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU29ja2V0Q29tcG9uZW50IH0gZnJvbSAnLi9wcmVzZXRzL2NsYXNzaWMvY29tcG9uZW50cy9zb2NrZXQvc29ja2V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb25uZWN0aW9uV3JhcHBlckNvbXBvbmVudCB9IGZyb20gJy4vcHJlc2V0cy9jbGFzc2ljL2NvbXBvbmVudHMvY29ubmVjdGlvbi9jb25uZWN0aW9uLXdyYXBwZXIuY29tcG9uZW50JztcbmltcG9ydCB7IENvbnRyb2xDb21wb25lbnQgfSBmcm9tICcuL3ByZXNldHMvY2xhc3NpYy9jb21wb25lbnRzL2NvbnRyb2wvY29udHJvbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVmRGlyZWN0aXZlIH0gZnJvbSAnLi9yZWYnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBSZWZEaXJlY3RpdmUsXG4gICAgTm9kZUNvbXBvbmVudCxcbiAgICBDb25uZWN0aW9uQ29tcG9uZW50LFxuICAgIENvbm5lY3Rpb25XcmFwcGVyQ29tcG9uZW50LFxuICAgIFNvY2tldENvbXBvbmVudCxcbiAgICBDb250cm9sQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFJlZkRpcmVjdGl2ZSxcbiAgICBOb2RlQ29tcG9uZW50LFxuICAgIENvbm5lY3Rpb25Db21wb25lbnQsXG4gICAgQ29ubmVjdGlvbldyYXBwZXJDb21wb25lbnQsXG4gICAgU29ja2V0Q29tcG9uZW50LFxuICAgIENvbnRyb2xDb21wb25lbnRcbiAgXSxcbiAgZW50cnlDb21wb25lbnRzOiBbXG4gICAgTm9kZUNvbXBvbmVudCxcbiAgICBDb25uZWN0aW9uQ29tcG9uZW50LFxuICAgIENvbm5lY3Rpb25XcmFwcGVyQ29tcG9uZW50LFxuICAgIFNvY2tldENvbXBvbmVudCxcbiAgICBDb250cm9sQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUmV0ZU1vZHVsZSB7IH1cbiJdfQ==
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDakYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDbkcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQzFGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDckMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFnQ3pFLE1BQU0sT0FBTyxVQUFVOzs7WUE5QnRCLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUU7b0JBQ1osWUFBWTtvQkFDWixhQUFhO29CQUNiLG1CQUFtQjtvQkFDbkIsMEJBQTBCO29CQUMxQixlQUFlO29CQUNmLGdCQUFnQjtvQkFDaEIsa0JBQWtCO2lCQUNuQjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsWUFBWTtpQkFDYjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixhQUFhO29CQUNiLG1CQUFtQjtvQkFDbkIsMEJBQTBCO29CQUMxQixlQUFlO29CQUNmLGdCQUFnQjtvQkFDaEIsa0JBQWtCO2lCQUNuQjtnQkFDRCxlQUFlLEVBQUU7b0JBQ2YsYUFBYTtvQkFDYixtQkFBbUI7b0JBQ25CLDBCQUEwQjtvQkFDMUIsZUFBZTtvQkFDZixnQkFBZ0I7aUJBQ2pCO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgTm9kZUNvbXBvbmVudCB9IGZyb20gJy4vcHJlc2V0cy9jbGFzc2ljL2NvbXBvbmVudHMvbm9kZS9ub2RlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb25uZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9wcmVzZXRzL2NsYXNzaWMvY29tcG9uZW50cy9jb25uZWN0aW9uL2Nvbm5lY3Rpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFNvY2tldENvbXBvbmVudCB9IGZyb20gJy4vcHJlc2V0cy9jbGFzc2ljL2NvbXBvbmVudHMvc29ja2V0L3NvY2tldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29ubmVjdGlvbldyYXBwZXJDb21wb25lbnQgfSBmcm9tICcuL3ByZXNldHMvY2xhc3NpYy9jb21wb25lbnRzL2Nvbm5lY3Rpb24vY29ubmVjdGlvbi13cmFwcGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb250cm9sQ29tcG9uZW50IH0gZnJvbSAnLi9wcmVzZXRzL2NsYXNzaWMvY29tcG9uZW50cy9jb250cm9sL2NvbnRyb2wuY29tcG9uZW50JztcbmltcG9ydCB7IFJlZkRpcmVjdGl2ZSB9IGZyb20gJy4vcmVmJztcbmltcG9ydCB7IEltcHVyZUtleXZhbHVlUGlwZSB9IGZyb20gJy4vc2hhcmVkL3BpcGVzL2ltcHVyZS1rZXl2YWx1ZS5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgUmVmRGlyZWN0aXZlLFxuICAgIE5vZGVDb21wb25lbnQsXG4gICAgQ29ubmVjdGlvbkNvbXBvbmVudCxcbiAgICBDb25uZWN0aW9uV3JhcHBlckNvbXBvbmVudCxcbiAgICBTb2NrZXRDb21wb25lbnQsXG4gICAgQ29udHJvbENvbXBvbmVudCxcbiAgICBJbXB1cmVLZXl2YWx1ZVBpcGVcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgUmVmRGlyZWN0aXZlLFxuICAgIE5vZGVDb21wb25lbnQsXG4gICAgQ29ubmVjdGlvbkNvbXBvbmVudCxcbiAgICBDb25uZWN0aW9uV3JhcHBlckNvbXBvbmVudCxcbiAgICBTb2NrZXRDb21wb25lbnQsXG4gICAgQ29udHJvbENvbXBvbmVudCxcbiAgICBJbXB1cmVLZXl2YWx1ZVBpcGVcbiAgXSxcbiAgZW50cnlDb21wb25lbnRzOiBbXG4gICAgTm9kZUNvbXBvbmVudCxcbiAgICBDb25uZWN0aW9uQ29tcG9uZW50LFxuICAgIENvbm5lY3Rpb25XcmFwcGVyQ29tcG9uZW50LFxuICAgIFNvY2tldENvbXBvbmVudCxcbiAgICBDb250cm9sQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUmV0ZU1vZHVsZSB7IH1cbiJdfQ==
@@ -57,6 +57,7 @@ export class ConnectionWrapperComponent {
57
57
  this.ref.instance.start = this._start;
58
58
  this.ref.instance.end = this._end;
59
59
  this.ref.instance.path = this._path;
60
+ this.ref.changeDetectorRef.markForCheck();
60
61
  }
61
62
  }
62
63
  ConnectionWrapperComponent.decorators = [
@@ -77,4 +78,4 @@ ConnectionWrapperComponent.propDecorators = {
77
78
  rendered: [{ type: Input }],
78
79
  connectionComponent: [{ type: Input }]
79
80
  };
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9wcmVzZXRzL2NsYXNzaWMvY29tcG9uZW50cy9jb25uZWN0aW9uL2Nvbm5lY3Rpb24td3JhcHBlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLGlCQUFpQixFQUFhLGdCQUFnQixFQUFFLHdCQUF3QixFQUFnQixNQUFNLGVBQWUsQ0FBQztBQVNqSixNQUFNLE9BQU8sMEJBQTBCO0lBb0JyQyxZQUFvQixHQUFzQixFQUFTLGdCQUFrQyxFQUFVLHdCQUFrRDtRQUE3SCxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUFTLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFBVSw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBVmpKLFlBQU8sR0FBb0IsSUFBSSxDQUFBO1FBSS9CLFVBQUssR0FBb0IsSUFBSSxDQUFBO1FBTzNCLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUE7SUFDbkIsQ0FBQztJQVhELElBQUksTUFBTTtRQUNSLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUE7SUFDdEQsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUE7SUFDaEQsQ0FBQztJQU9LLFdBQVc7O1lBQ2YsTUFBTSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7WUFDdkIscUJBQXFCLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7WUFDNUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtZQUN4QixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUE7UUFDZixDQUFDO0tBQUE7SUFFSyxVQUFVOztZQUNkLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTthQUNyRDtRQUNILENBQUM7S0FBQTtJQUVELFFBQVE7UUFDTixJQUFJLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUU7WUFDcEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFNLEtBQUssRUFBQyxFQUFFO2dCQUN2QixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQTtnQkFDcEIsTUFBTSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7Z0JBQ3ZCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUE7Z0JBQ3hCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQTtZQUNmLENBQUMsQ0FBQSxDQUFDLENBQUE7U0FDSDtRQUNELElBQUksT0FBTyxJQUFJLENBQUMsR0FBRyxLQUFLLFVBQVUsRUFBRTtZQUNsQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQU0sS0FBSyxFQUFDLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO2dCQUNsQixNQUFNLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQTtnQkFDdkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtnQkFDeEIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFBO1lBQ2YsQ0FBQyxDQUFBLENBQUMsQ0FBQTtTQUNIO1FBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDekcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO1FBRTlCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ25FLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUNmLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDbEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUE7UUFDckMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDakMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUE7SUFDckMsQ0FBQzs7O1lBckVGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsRUFBRTthQUNiOzs7WUFSa0MsaUJBQWlCO1lBQWEsZ0JBQWdCO1lBQUUsd0JBQXdCOzs7bUJBVXhHLEtBQUs7b0JBQ0wsS0FBSztrQkFDTCxLQUFLO21CQUNMLEtBQUs7dUJBQ0wsS0FBSztrQ0FDTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgT25DaGFuZ2VzLCBWaWV3Q29udGFpbmVyUmVmLCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIENvbXBvbmVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2xhc3NpY1ByZXNldCB9IGZyb20gJ3JldGUnO1xuaW1wb3J0IHsgUG9zaXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi90eXBlcyc7XG5cbnR5cGUgUG9zaXRpb25XYXRjaGVyID0gKGNiOiAodmFsdWU6IFBvc2l0aW9uKSA9PiB2b2lkKSA9PiAoKCkgPT4gdm9pZClcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBjbGFzcyBDb25uZWN0aW9uV3JhcHBlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2Vze1xuICBASW5wdXQoKSBkYXRhITogQ2xhc3NpY1ByZXNldC5Db25uZWN0aW9uPENsYXNzaWNQcmVzZXQuTm9kZSwgQ2xhc3NpY1ByZXNldC5Ob2RlPjtcbiAgQElucHV0KCkgc3RhcnQhOiBQb3NpdGlvbiB8IFBvc2l0aW9uV2F0Y2hlclxuICBASW5wdXQoKSBlbmQhOiBQb3NpdGlvbiB8IFBvc2l0aW9uV2F0Y2hlclxuICBASW5wdXQoKSBwYXRoITogKHN0YXJ0OiBQb3NpdGlvbiwgZW5kOiBQb3NpdGlvbikgPT4gUHJvbWlzZTxzdHJpbmc+XG4gIEBJbnB1dCgpIHJlbmRlcmVkITogYW55XG4gIEBJbnB1dCgpIGNvbm5lY3Rpb25Db21wb25lbnQhOiBhbnlcblxuICByZWYhOiBDb21wb25lbnRSZWY8YW55PlxuXG4gIHN0YXJ0T2I6IFBvc2l0aW9uIHwgbnVsbCA9IG51bGxcbiAgZ2V0IF9zdGFydCgpOiBQb3NpdGlvbiB8IG51bGwge1xuICAgIHJldHVybiAneCcgaW4gdGhpcy5zdGFydCA/IHRoaXMuc3RhcnQgOiB0aGlzLnN0YXJ0T2JcbiAgfVxuICBlbmRPYjogUG9zaXRpb24gfCBudWxsID0gbnVsbFxuICBnZXQgX2VuZCgpOiBQb3NpdGlvbiB8IG51bGwge1xuICAgIHJldHVybiAneCcgaW4gdGhpcy5lbmQgPyB0aGlzLmVuZCA6IHRoaXMuZW5kT2JcbiAgfVxuICBfcGF0aDogc3RyaW5nXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLCBwdWJsaWMgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZiwgcHJpdmF0ZSBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcikgIHtcbiAgICB0aGlzLmNkci5kZXRhY2goKVxuICB9XG5cbiAgYXN5bmMgbmdPbkNoYW5nZXMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy51cGRhdGVQYXRoKClcbiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4gdGhpcy5yZW5kZXJlZCgpKVxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICAgIHRoaXMudXBkYXRlKClcbiAgfVxuXG4gIGFzeW5jIHVwZGF0ZVBhdGgoKSB7XG4gICAgaWYgKHRoaXMuX3N0YXJ0ICYmIHRoaXMuX2VuZCkge1xuICAgICAgdGhpcy5fcGF0aCA9IGF3YWl0IHRoaXMucGF0aCh0aGlzLl9zdGFydCwgdGhpcy5fZW5kKVxuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0eXBlb2YgdGhpcy5zdGFydCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpcy5zdGFydChhc3luYyB2YWx1ZSA9PiB7XG4gICAgICAgIHRoaXMuc3RhcnRPYiA9IHZhbHVlXG4gICAgICAgIGF3YWl0IHRoaXMudXBkYXRlUGF0aCgpXG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICAgICAgICB0aGlzLnVwZGF0ZSgpXG4gICAgICB9KVxuICAgIH1cbiAgICBpZiAodHlwZW9mIHRoaXMuZW5kID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aGlzLmVuZChhc3luYyB2YWx1ZSA9PiB7XG4gICAgICAgIHRoaXMuZW5kT2IgPSB2YWx1ZVxuICAgICAgICBhd2FpdCB0aGlzLnVwZGF0ZVBhdGgoKVxuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgICAgICAgdGhpcy51cGRhdGUoKVxuICAgICAgfSlcbiAgICB9XG4gICAgY29uc3QgY29tcG9uZW50RmFjdG9yeSA9IHRoaXMuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KHRoaXMuY29ubmVjdGlvbkNvbXBvbmVudCk7XG4gICAgdGhpcy52aWV3Q29udGFpbmVyUmVmLmNsZWFyKCk7XG5cbiAgICB0aGlzLnJlZiA9IHRoaXMudmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQoY29tcG9uZW50RmFjdG9yeSk7XG4gICAgdGhpcy51cGRhdGUoKVxuICB9XG5cbiAgdXBkYXRlKCkge1xuICAgIHRoaXMucmVmLmluc3RhbmNlLmRhdGEgPSB0aGlzLmRhdGFcbiAgICB0aGlzLnJlZi5pbnN0YW5jZS5zdGFydCA9IHRoaXMuX3N0YXJ0XG4gICAgdGhpcy5yZWYuaW5zdGFuY2UuZW5kID0gdGhpcy5fZW5kXG4gICAgdGhpcy5yZWYuaW5zdGFuY2UucGF0aCA9IHRoaXMuX3BhdGhcbiAgfVxufVxuIl19
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9wcmVzZXRzL2NsYXNzaWMvY29tcG9uZW50cy9jb25uZWN0aW9uL2Nvbm5lY3Rpb24td3JhcHBlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLGlCQUFpQixFQUFhLGdCQUFnQixFQUFFLHdCQUF3QixFQUFnQixNQUFNLGVBQWUsQ0FBQztBQVNqSixNQUFNLE9BQU8sMEJBQTBCO0lBb0JyQyxZQUFvQixHQUFzQixFQUFTLGdCQUFrQyxFQUFVLHdCQUFrRDtRQUE3SCxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUFTLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFBVSw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBVmpKLFlBQU8sR0FBb0IsSUFBSSxDQUFBO1FBSS9CLFVBQUssR0FBb0IsSUFBSSxDQUFBO1FBTzNCLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUE7SUFDbkIsQ0FBQztJQVhELElBQUksTUFBTTtRQUNSLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUE7SUFDdEQsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUE7SUFDaEQsQ0FBQztJQU9LLFdBQVc7O1lBQ2YsTUFBTSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7WUFDdkIscUJBQXFCLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7WUFDNUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtZQUN4QixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUE7UUFDZixDQUFDO0tBQUE7SUFFSyxVQUFVOztZQUNkLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTthQUNyRDtRQUNILENBQUM7S0FBQTtJQUVELFFBQVE7UUFDTixJQUFJLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUU7WUFDcEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFNLEtBQUssRUFBQyxFQUFFO2dCQUN2QixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQTtnQkFDcEIsTUFBTSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7Z0JBQ3ZCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUE7Z0JBQ3hCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQTtZQUNmLENBQUMsQ0FBQSxDQUFDLENBQUE7U0FDSDtRQUNELElBQUksT0FBTyxJQUFJLENBQUMsR0FBRyxLQUFLLFVBQVUsRUFBRTtZQUNsQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQU0sS0FBSyxFQUFDLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO2dCQUNsQixNQUFNLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQTtnQkFDdkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtnQkFDeEIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFBO1lBQ2YsQ0FBQyxDQUFBLENBQUMsQ0FBQTtTQUNIO1FBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDekcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO1FBRTlCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ25FLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUNmLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDbEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUE7UUFDckMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDakMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUE7UUFDbkMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM1QyxDQUFDOzs7WUF0RUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxFQUFFO2FBQ2I7OztZQVJrQyxpQkFBaUI7WUFBYSxnQkFBZ0I7WUFBRSx3QkFBd0I7OzttQkFVeEcsS0FBSztvQkFDTCxLQUFLO2tCQUNMLEtBQUs7bUJBQ0wsS0FBSzt1QkFDTCxLQUFLO2tDQUNMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIENoYW5nZURldGVjdG9yUmVmLCBPbkNoYW5nZXMsIFZpZXdDb250YWluZXJSZWYsIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgQ29tcG9uZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbGFzc2ljUHJlc2V0IH0gZnJvbSAncmV0ZSc7XG5pbXBvcnQgeyBQb3NpdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL3R5cGVzJztcblxudHlwZSBQb3NpdGlvbldhdGNoZXIgPSAoY2I6ICh2YWx1ZTogUG9zaXRpb24pID0+IHZvaWQpID0+ICgoKSA9PiB2b2lkKVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGNsYXNzIENvbm5lY3Rpb25XcmFwcGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXN7XG4gIEBJbnB1dCgpIGRhdGEhOiBDbGFzc2ljUHJlc2V0LkNvbm5lY3Rpb248Q2xhc3NpY1ByZXNldC5Ob2RlLCBDbGFzc2ljUHJlc2V0Lk5vZGU+O1xuICBASW5wdXQoKSBzdGFydCE6IFBvc2l0aW9uIHwgUG9zaXRpb25XYXRjaGVyXG4gIEBJbnB1dCgpIGVuZCE6IFBvc2l0aW9uIHwgUG9zaXRpb25XYXRjaGVyXG4gIEBJbnB1dCgpIHBhdGghOiAoc3RhcnQ6IFBvc2l0aW9uLCBlbmQ6IFBvc2l0aW9uKSA9PiBQcm9taXNlPHN0cmluZz5cbiAgQElucHV0KCkgcmVuZGVyZWQhOiBhbnlcbiAgQElucHV0KCkgY29ubmVjdGlvbkNvbXBvbmVudCE6IGFueVxuXG4gIHJlZiE6IENvbXBvbmVudFJlZjxhbnk+XG5cbiAgc3RhcnRPYjogUG9zaXRpb24gfCBudWxsID0gbnVsbFxuICBnZXQgX3N0YXJ0KCk6IFBvc2l0aW9uIHwgbnVsbCB7XG4gICAgcmV0dXJuICd4JyBpbiB0aGlzLnN0YXJ0ID8gdGhpcy5zdGFydCA6IHRoaXMuc3RhcnRPYlxuICB9XG4gIGVuZE9iOiBQb3NpdGlvbiB8IG51bGwgPSBudWxsXG4gIGdldCBfZW5kKCk6IFBvc2l0aW9uIHwgbnVsbCB7XG4gICAgcmV0dXJuICd4JyBpbiB0aGlzLmVuZCA/IHRoaXMuZW5kIDogdGhpcy5lbmRPYlxuICB9XG4gIF9wYXRoOiBzdHJpbmdcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHB1YmxpYyB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBwcml2YXRlIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSAge1xuICAgIHRoaXMuY2RyLmRldGFjaCgpXG4gIH1cblxuICBhc3luYyBuZ09uQ2hhbmdlcygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnVwZGF0ZVBhdGgoKVxuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB0aGlzLnJlbmRlcmVkKCkpXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpXG4gICAgdGhpcy51cGRhdGUoKVxuICB9XG5cbiAgYXN5bmMgdXBkYXRlUGF0aCgpIHtcbiAgICBpZiAodGhpcy5fc3RhcnQgJiYgdGhpcy5fZW5kKSB7XG4gICAgICB0aGlzLl9wYXRoID0gYXdhaXQgdGhpcy5wYXRoKHRoaXMuX3N0YXJ0LCB0aGlzLl9lbmQpXG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHR5cGVvZiB0aGlzLnN0YXJ0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aGlzLnN0YXJ0KGFzeW5jIHZhbHVlID0+IHtcbiAgICAgICAgdGhpcy5zdGFydE9iID0gdmFsdWVcbiAgICAgICAgYXdhaXQgdGhpcy51cGRhdGVQYXRoKClcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpXG4gICAgICAgIHRoaXMudXBkYXRlKClcbiAgICAgIH0pXG4gICAgfVxuICAgIGlmICh0eXBlb2YgdGhpcy5lbmQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRoaXMuZW5kKGFzeW5jIHZhbHVlID0+IHtcbiAgICAgICAgdGhpcy5lbmRPYiA9IHZhbHVlXG4gICAgICAgIGF3YWl0IHRoaXMudXBkYXRlUGF0aCgpXG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICAgICAgICB0aGlzLnVwZGF0ZSgpXG4gICAgICB9KVxuICAgIH1cbiAgICBjb25zdCBjb21wb25lbnRGYWN0b3J5ID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkodGhpcy5jb25uZWN0aW9uQ29tcG9uZW50KTtcbiAgICB0aGlzLnZpZXdDb250YWluZXJSZWYuY2xlYXIoKTtcblxuICAgIHRoaXMucmVmID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChjb21wb25lbnRGYWN0b3J5KTtcbiAgICB0aGlzLnVwZGF0ZSgpXG4gIH1cblxuICB1cGRhdGUoKSB7XG4gICAgdGhpcy5yZWYuaW5zdGFuY2UuZGF0YSA9IHRoaXMuZGF0YVxuICAgIHRoaXMucmVmLmluc3RhbmNlLnN0YXJ0ID0gdGhpcy5fc3RhcnRcbiAgICB0aGlzLnJlZi5pbnN0YW5jZS5lbmQgPSB0aGlzLl9lbmRcbiAgICB0aGlzLnJlZi5pbnN0YW5jZS5wYXRoID0gdGhpcy5fcGF0aFxuICAgIHRoaXMucmVmLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG59XG4iXX0=
@@ -29,7 +29,7 @@ export class NodeComponent {
29
29
  NodeComponent.decorators = [
30
30
  { type: Component, args: [{
31
31
  // [component-directive]
32
- template: "<div class=\"title\" data-testid=\"title\">{{data.label}}</div>\n<div class=\"output\" *ngFor=\"let output of data.outputs | keyvalue: sortByIndex\" [attr.data-testid]=\"'output-'+output.key\">\n <div class=\"output-title\" data-testid=\"output-title\">{{output.value?.label}}</div>\n <div\n class=\"output-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'output', key: output.key, nodeId: data.id, payload: output.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"output-socket\"\n ></div>\n</div>\n<div\n class=\"control\"\n *ngFor=\"let control of data.controls | keyvalue: sortByIndex\"\n refComponent\n [data]=\"{type: 'control', payload: control.value }\"\n [emit]=\"emit\"\n [attr.data-testid]=\"'control-'+control.key\"\n></div>\n<div class=\"input\" *ngFor=\"let input of data.inputs | keyvalue: sortByIndex\" [attr.data-testid]=\"'input-'+input.key\">\n <div\n class=\"input-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'input', key: input.key, nodeId: data.id, payload: input.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"input-socket\"\n ></div>\n <div class=\"input-title\" data-testid=\"input-title\" *ngIf=\"!input.value?.control || !input.value?.showControl\">{{input.value?.label}}</div>\n <div\n class=\"input-control\"\n [style.display]=\"input.value?.control && input.value?.showControl ? '' : 'none'\"\n refComponent\n [data]=\"{type: 'control', payload: input.value?.control }\"\n [emit]=\"emit\"\n data-testid=\"input-control\"\n ></div>\n</div>\n",
32
+ template: "<div class=\"title\" data-testid=\"title\">{{data.label}}</div>\n<div class=\"output\" *ngFor=\"let output of data.outputs | keyvalueimpure: sortByIndex\" [attr.data-testid]=\"'output-'+output.key\">\n <div class=\"output-title\" data-testid=\"output-title\">{{output.value?.label}}</div>\n <div\n class=\"output-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'output', key: output.key, nodeId: data.id, payload: output.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"output-socket\"\n ></div>\n</div>\n<div\n class=\"control\"\n *ngFor=\"let control of data.controls | keyvalueimpure: sortByIndex\"\n refComponent\n [data]=\"{type: 'control', payload: control.value }\"\n [emit]=\"emit\"\n [attr.data-testid]=\"'control-'+control.key\"\n></div>\n<div class=\"input\" *ngFor=\"let input of data.inputs | keyvalueimpure: sortByIndex\" [attr.data-testid]=\"'input-'+input.key\">\n <div\n class=\"input-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'input', key: input.key, nodeId: data.id, payload: input.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"input-socket\"\n ></div>\n <div class=\"input-title\" data-testid=\"input-title\" *ngIf=\"!input.value?.control || !input.value?.showControl\">{{input.value?.label}}</div>\n <div\n class=\"input-control\"\n [style.display]=\"input.value?.control && input.value?.showControl ? '' : 'none'\"\n refComponent\n [data]=\"{type: 'control', payload: input.value?.control }\"\n [emit]=\"emit\"\n data-testid=\"input-control\"\n ></div>\n</div>\n",
33
33
  host: {
34
34
  'data-testid': 'node'
35
35
  },
@@ -47,4 +47,4 @@ NodeComponent.propDecorators = {
47
47
  height: [{ type: HostBinding, args: ['style.height.px',] }],
48
48
  selected: [{ type: HostBinding, args: ['class.selected',] }]
49
49
  };
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvcHJlc2V0cy9jbGFzc2ljL2NvbXBvbmVudHMvbm9kZS9ub2RlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFnQjVGLE1BQU0sT0FBTyxhQUFhO0lBbUJ4QixZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQWQxQyxTQUFJLEdBQUcsQ0FBQyxDQUFBO1FBZU4sSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUNuQixDQUFDO0lBZEQsSUFBbUMsS0FBSztRQUN0QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFBO0lBQ3hCLENBQUM7SUFFRCxJQUFvQyxNQUFNO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUE7SUFDekIsQ0FBQztJQUVELElBQW1DLFFBQVE7UUFDekMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQTtJQUMzQixDQUFDO0lBTUQsV0FBVztRQUNULElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDeEIscUJBQXFCLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7UUFDNUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBLENBQUMsdUJBQXVCO0lBQ3JDLENBQUM7SUFFRCxXQUFXLENBQW1FLENBQUksRUFBRSxDQUFJOztRQUN0RixNQUFNLEVBQUUsR0FBRyxDQUFBLE1BQUEsQ0FBQyxDQUFDLEtBQUssMENBQUUsS0FBSyxLQUFJLENBQUMsQ0FBQTtRQUM5QixNQUFNLEVBQUUsR0FBRyxDQUFBLE1BQUEsQ0FBQyxDQUFDLEtBQUssMENBQUUsS0FBSyxLQUFJLENBQUMsQ0FBQTtRQUU5QixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUE7SUFDaEIsQ0FBQzs7O1lBMUNGLFNBQVMsU0FBQztnQkFDVCx3QkFBd0I7Z0JBQ3hCLDJwREFBb0M7Z0JBRXBDLElBQUksRUFBRTtvQkFDSixhQUFhLEVBQUUsTUFBTTtpQkFDdEI7O2FBQ0Y7OztZQWZ1QyxpQkFBaUI7OzttQkFpQnRELEtBQUs7bUJBQ0wsS0FBSzt1QkFDTCxLQUFLO29CQUlMLFdBQVcsU0FBQyxnQkFBZ0I7cUJBSTVCLFdBQVcsU0FBQyxpQkFBaUI7dUJBSTdCLFdBQVcsU0FBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBIb3N0QmluZGluZywgQ2hhbmdlRGV0ZWN0b3JSZWYsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2xhc3NpY1ByZXNldCBhcyBDbGFzc2ljIH0gZnJvbSAncmV0ZSc7XG5pbXBvcnQgeyBLZXlWYWx1ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG4vLyBbaW1wb3J0c11cblxudHlwZSBOb2RlRXh0cmFEYXRhID0geyB3aWR0aD86IG51bWJlciwgaGVpZ2h0PzogbnVtYmVyIH1cbnR5cGUgU29ydFZhbHVlPE4gZXh0ZW5kcyBDbGFzc2ljLk5vZGU+ID0gKE5bJ2NvbnRyb2xzJ10gfCBOWydpbnB1dHMnXSB8IE5bJ291dHB1dHMnXSlbc3RyaW5nXVxuXG5AQ29tcG9uZW50KHtcbiAgLy8gW2NvbXBvbmVudC1kaXJlY3RpdmVdXG4gIHRlbXBsYXRlVXJsOiAnLi9ub2RlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbm9kZS5jb21wb25lbnQuc2FzcyddLFxuICBob3N0OiB7XG4gICAgJ2RhdGEtdGVzdGlkJzogJ25vZGUnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgTm9kZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIGRhdGEhOiBDbGFzc2ljLk5vZGUgJiBOb2RlRXh0cmFEYXRhO1xuICBASW5wdXQoKSBlbWl0ITogKGRhdGE6IGFueSkgPT4gdm9pZFxuICBASW5wdXQoKSByZW5kZXJlZCE6ICgpID0+IHZvaWRcblxuICBzZWVkID0gMFxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUud2lkdGgucHgnKSBnZXQgd2lkdGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YS53aWR0aFxuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQucHgnKSBnZXQgaGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLmRhdGEuaGVpZ2h0XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNlbGVjdGVkJykgZ2V0IHNlbGVjdGVkKCkge1xuICAgIHJldHVybiB0aGlzLmRhdGEuc2VsZWN0ZWRcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHRoaXMuY2RyLmRldGFjaCgpXG4gIH1cblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4gdGhpcy5yZW5kZXJlZCgpKVxuICAgIHRoaXMuc2VlZCsrIC8vIGZvcmNlIHJlbmRlciBzb2NrZXRzXG4gIH1cblxuICBzb3J0QnlJbmRleDxOIGV4dGVuZHMgQ2xhc3NpYy5Ob2RlLCBJIGV4dGVuZHMgS2V5VmFsdWU8c3RyaW5nLCBTb3J0VmFsdWU8Tj4+PihhOiBJLCBiOiBJKSB7XG4gICAgY29uc3QgYWkgPSBhLnZhbHVlPy5pbmRleCB8fCAwXG4gICAgY29uc3QgYmkgPSBiLnZhbHVlPy5pbmRleCB8fCAwXG5cbiAgICByZXR1cm4gYWkgLSBiaVxuICB9XG59XG4iXX0=
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvcHJlc2V0cy9jbGFzc2ljL2NvbXBvbmVudHMvbm9kZS9ub2RlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFnQjVGLE1BQU0sT0FBTyxhQUFhO0lBbUJ4QixZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQWQxQyxTQUFJLEdBQUcsQ0FBQyxDQUFBO1FBZU4sSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUNuQixDQUFDO0lBZEQsSUFBbUMsS0FBSztRQUN0QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFBO0lBQ3hCLENBQUM7SUFFRCxJQUFvQyxNQUFNO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUE7SUFDekIsQ0FBQztJQUVELElBQW1DLFFBQVE7UUFDekMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQTtJQUMzQixDQUFDO0lBTUQsV0FBVztRQUNULElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDeEIscUJBQXFCLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7UUFDNUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBLENBQUMsdUJBQXVCO0lBQ3JDLENBQUM7SUFFRCxXQUFXLENBQW1FLENBQUksRUFBRSxDQUFJOztRQUN0RixNQUFNLEVBQUUsR0FBRyxDQUFBLE1BQUEsQ0FBQyxDQUFDLEtBQUssMENBQUUsS0FBSyxLQUFJLENBQUMsQ0FBQTtRQUM5QixNQUFNLEVBQUUsR0FBRyxDQUFBLE1BQUEsQ0FBQyxDQUFDLEtBQUssMENBQUUsS0FBSyxLQUFJLENBQUMsQ0FBQTtRQUU5QixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUE7SUFDaEIsQ0FBQzs7O1lBMUNGLFNBQVMsU0FBQztnQkFDVCx3QkFBd0I7Z0JBQ3hCLDZxREFBb0M7Z0JBRXBDLElBQUksRUFBRTtvQkFDSixhQUFhLEVBQUUsTUFBTTtpQkFDdEI7O2FBQ0Y7OztZQWZ1QyxpQkFBaUI7OzttQkFpQnRELEtBQUs7bUJBQ0wsS0FBSzt1QkFDTCxLQUFLO29CQUlMLFdBQVcsU0FBQyxnQkFBZ0I7cUJBSTVCLFdBQVcsU0FBQyxpQkFBaUI7dUJBSTdCLFdBQVcsU0FBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBIb3N0QmluZGluZywgQ2hhbmdlRGV0ZWN0b3JSZWYsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2xhc3NpY1ByZXNldCBhcyBDbGFzc2ljIH0gZnJvbSAncmV0ZSc7XG5pbXBvcnQgeyBLZXlWYWx1ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG4vLyBbaW1wb3J0c11cblxudHlwZSBOb2RlRXh0cmFEYXRhID0geyB3aWR0aD86IG51bWJlciwgaGVpZ2h0PzogbnVtYmVyIH1cbnR5cGUgU29ydFZhbHVlPE4gZXh0ZW5kcyBDbGFzc2ljLk5vZGU+ID0gKE5bJ2NvbnRyb2xzJ10gfCBOWydpbnB1dHMnXSB8IE5bJ291dHB1dHMnXSlbc3RyaW5nXVxuXG5AQ29tcG9uZW50KHtcbiAgLy8gW2NvbXBvbmVudC1kaXJlY3RpdmVdXG4gIHRlbXBsYXRlVXJsOiAnLi9ub2RlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbm9kZS5jb21wb25lbnQuc2FzcyddLFxuICBob3N0OiB7XG4gICAgJ2RhdGEtdGVzdGlkJzogJ25vZGUnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgTm9kZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIGRhdGEhOiBDbGFzc2ljLk5vZGUgJiBOb2RlRXh0cmFEYXRhO1xuICBASW5wdXQoKSBlbWl0ITogKGRhdGE6IGFueSkgPT4gdm9pZFxuICBASW5wdXQoKSByZW5kZXJlZCE6ICgpID0+IHZvaWRcblxuICBzZWVkID0gMFxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUud2lkdGgucHgnKSBnZXQgd2lkdGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YS53aWR0aFxuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQucHgnKSBnZXQgaGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLmRhdGEuaGVpZ2h0XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNlbGVjdGVkJykgZ2V0IHNlbGVjdGVkKCkge1xuICAgIHJldHVybiB0aGlzLmRhdGEuc2VsZWN0ZWRcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHRoaXMuY2RyLmRldGFjaCgpXG4gIH1cblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4gdGhpcy5yZW5kZXJlZCgpKVxuICAgIHRoaXMuc2VlZCsrIC8vIGZvcmNlIHJlbmRlciBzb2NrZXRzXG4gIH1cblxuICBzb3J0QnlJbmRleDxOIGV4dGVuZHMgQ2xhc3NpYy5Ob2RlLCBJIGV4dGVuZHMgS2V5VmFsdWU8c3RyaW5nLCBTb3J0VmFsdWU8Tj4+PihhOiBJLCBiOiBJKSB7XG4gICAgY29uc3QgYWkgPSBhLnZhbHVlPy5pbmRleCB8fCAwXG4gICAgY29uc3QgYmkgPSBiLnZhbHVlPy5pbmRleCB8fCAwXG5cbiAgICByZXR1cm4gYWkgLSBiaVxuICB9XG59XG4iXX0=
@@ -7,12 +7,13 @@ export { ConnectionComponent as ɵb } from './presets/classic/components/connect
7
7
  export { ControlComponent as ɵe } from './presets/classic/components/control/control.component';
8
8
  export { NodeComponent as ɵa } from './presets/classic/components/node/node.component';
9
9
  export { SocketComponent as ɵd } from './presets/classic/components/socket/socket.component';
10
- export { ContextMenuItemComponent as ɵh } from './presets/context-menu/components/item/item.component';
11
- export { ContextMenuComponent as ɵf } from './presets/context-menu/components/menu/menu.component';
12
- export { ContextMenuSearchComponent as ɵg } from './presets/context-menu/components/search/search.component';
13
- export { MiniNodeComponent as ɵk } from './presets/minimap/components/mini-node/mini-node.component';
14
- export { MiniViewportComponent as ɵj } from './presets/minimap/components/mini-viewport/mini-viewport.component';
15
- export { MinimapComponent as ɵi } from './presets/minimap/components/minimap/minimap.component';
16
- export { PinComponent as ɵm } from './presets/reroute/components/pin/pin.component';
17
- export { PinsComponent as ɵl } from './presets/reroute/components/pins/pins.component';
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV0ZS1hbmd1bGFyLXBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZXRlLWFuZ3VsYXItcGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUM7QUFFeEIsT0FBTyxFQUFDLDBCQUEwQixJQUFJLEVBQUUsRUFBQyxNQUFNLHNFQUFzRSxDQUFDO0FBQ3RILE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw4REFBOEQsQ0FBQztBQUN2RyxPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDOUYsT0FBTyxFQUFDLGFBQWEsSUFBSSxFQUFFLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUNyRixPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQzNGLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxFQUFFLEVBQUMsTUFBTSx1REFBdUQsQ0FBQztBQUNyRyxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sdURBQXVELENBQUM7QUFDakcsT0FBTyxFQUFDLDBCQUEwQixJQUFJLEVBQUUsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBQzNHLE9BQU8sRUFBQyxpQkFBaUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUNuRyxPQUFPLEVBQUMscUJBQXFCLElBQUksRUFBRSxFQUFDLE1BQU0sb0VBQW9FLENBQUM7QUFDL0csT0FBTyxFQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBQyxNQUFNLHdEQUF3RCxDQUFDO0FBQzlGLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDbEYsT0FBTyxFQUFDLGFBQWEsSUFBSSxFQUFFLEVBQUMsTUFBTSxrREFBa0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG5cbmV4cG9ydCB7Q29ubmVjdGlvbldyYXBwZXJDb21wb25lbnQgYXMgybVjfSBmcm9tICcuL3ByZXNldHMvY2xhc3NpYy9jb21wb25lbnRzL2Nvbm5lY3Rpb24vY29ubmVjdGlvbi13cmFwcGVyLmNvbXBvbmVudCc7XG5leHBvcnQge0Nvbm5lY3Rpb25Db21wb25lbnQgYXMgybVifSBmcm9tICcuL3ByZXNldHMvY2xhc3NpYy9jb21wb25lbnRzL2Nvbm5lY3Rpb24vY29ubmVjdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0IHtDb250cm9sQ29tcG9uZW50IGFzIMm1ZX0gZnJvbSAnLi9wcmVzZXRzL2NsYXNzaWMvY29tcG9uZW50cy9jb250cm9sL2NvbnRyb2wuY29tcG9uZW50JztcbmV4cG9ydCB7Tm9kZUNvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vcHJlc2V0cy9jbGFzc2ljL2NvbXBvbmVudHMvbm9kZS9ub2RlLmNvbXBvbmVudCc7XG5leHBvcnQge1NvY2tldENvbXBvbmVudCBhcyDJtWR9IGZyb20gJy4vcHJlc2V0cy9jbGFzc2ljL2NvbXBvbmVudHMvc29ja2V0L3NvY2tldC5jb21wb25lbnQnO1xuZXhwb3J0IHtDb250ZXh0TWVudUl0ZW1Db21wb25lbnQgYXMgybVofSBmcm9tICcuL3ByZXNldHMvY29udGV4dC1tZW51L2NvbXBvbmVudHMvaXRlbS9pdGVtLmNvbXBvbmVudCc7XG5leHBvcnQge0NvbnRleHRNZW51Q29tcG9uZW50IGFzIMm1Zn0gZnJvbSAnLi9wcmVzZXRzL2NvbnRleHQtbWVudS9jb21wb25lbnRzL21lbnUvbWVudS5jb21wb25lbnQnO1xuZXhwb3J0IHtDb250ZXh0TWVudVNlYXJjaENvbXBvbmVudCBhcyDJtWd9IGZyb20gJy4vcHJlc2V0cy9jb250ZXh0LW1lbnUvY29tcG9uZW50cy9zZWFyY2gvc2VhcmNoLmNvbXBvbmVudCc7XG5leHBvcnQge01pbmlOb2RlQ29tcG9uZW50IGFzIMm1a30gZnJvbSAnLi9wcmVzZXRzL21pbmltYXAvY29tcG9uZW50cy9taW5pLW5vZGUvbWluaS1ub2RlLmNvbXBvbmVudCc7XG5leHBvcnQge01pbmlWaWV3cG9ydENvbXBvbmVudCBhcyDJtWp9IGZyb20gJy4vcHJlc2V0cy9taW5pbWFwL2NvbXBvbmVudHMvbWluaS12aWV3cG9ydC9taW5pLXZpZXdwb3J0LmNvbXBvbmVudCc7XG5leHBvcnQge01pbmltYXBDb21wb25lbnQgYXMgybVpfSBmcm9tICcuL3ByZXNldHMvbWluaW1hcC9jb21wb25lbnRzL21pbmltYXAvbWluaW1hcC5jb21wb25lbnQnO1xuZXhwb3J0IHtQaW5Db21wb25lbnQgYXMgybVtfSBmcm9tICcuL3ByZXNldHMvcmVyb3V0ZS9jb21wb25lbnRzL3Bpbi9waW4uY29tcG9uZW50JztcbmV4cG9ydCB7UGluc0NvbXBvbmVudCBhcyDJtWx9IGZyb20gJy4vcHJlc2V0cy9yZXJvdXRlL2NvbXBvbmVudHMvcGlucy9waW5zLmNvbXBvbmVudCc7Il19
10
+ export { ContextMenuItemComponent as ɵi } from './presets/context-menu/components/item/item.component';
11
+ export { ContextMenuComponent as ɵg } from './presets/context-menu/components/menu/menu.component';
12
+ export { ContextMenuSearchComponent as ɵh } from './presets/context-menu/components/search/search.component';
13
+ export { MiniNodeComponent as ɵl } from './presets/minimap/components/mini-node/mini-node.component';
14
+ export { MiniViewportComponent as ɵk } from './presets/minimap/components/mini-viewport/mini-viewport.component';
15
+ export { MinimapComponent as ɵj } from './presets/minimap/components/minimap/minimap.component';
16
+ export { PinComponent as ɵn } from './presets/reroute/components/pin/pin.component';
17
+ export { PinsComponent as ɵm } from './presets/reroute/components/pins/pins.component';
18
+ export { ImpureKeyvaluePipe as ɵf } from './shared/pipes/impure-keyvalue.pipe';
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV0ZS1hbmd1bGFyLXBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZXRlLWFuZ3VsYXItcGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUM7QUFFeEIsT0FBTyxFQUFDLDBCQUEwQixJQUFJLEVBQUUsRUFBQyxNQUFNLHNFQUFzRSxDQUFDO0FBQ3RILE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw4REFBOEQsQ0FBQztBQUN2RyxPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDOUYsT0FBTyxFQUFDLGFBQWEsSUFBSSxFQUFFLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUNyRixPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQzNGLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxFQUFFLEVBQUMsTUFBTSx1REFBdUQsQ0FBQztBQUNyRyxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sdURBQXVELENBQUM7QUFDakcsT0FBTyxFQUFDLDBCQUEwQixJQUFJLEVBQUUsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBQzNHLE9BQU8sRUFBQyxpQkFBaUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUNuRyxPQUFPLEVBQUMscUJBQXFCLElBQUksRUFBRSxFQUFDLE1BQU0sb0VBQW9FLENBQUM7QUFDL0csT0FBTyxFQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBQyxNQUFNLHdEQUF3RCxDQUFDO0FBQzlGLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDbEYsT0FBTyxFQUFDLGFBQWEsSUFBSSxFQUFFLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUNyRixPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0scUNBQXFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuXG5leHBvcnQge0Nvbm5lY3Rpb25XcmFwcGVyQ29tcG9uZW50IGFzIMm1Y30gZnJvbSAnLi9wcmVzZXRzL2NsYXNzaWMvY29tcG9uZW50cy9jb25uZWN0aW9uL2Nvbm5lY3Rpb24td3JhcHBlci5jb21wb25lbnQnO1xuZXhwb3J0IHtDb25uZWN0aW9uQ29tcG9uZW50IGFzIMm1Yn0gZnJvbSAnLi9wcmVzZXRzL2NsYXNzaWMvY29tcG9uZW50cy9jb25uZWN0aW9uL2Nvbm5lY3Rpb24uY29tcG9uZW50JztcbmV4cG9ydCB7Q29udHJvbENvbXBvbmVudCBhcyDJtWV9IGZyb20gJy4vcHJlc2V0cy9jbGFzc2ljL2NvbXBvbmVudHMvY29udHJvbC9jb250cm9sLmNvbXBvbmVudCc7XG5leHBvcnQge05vZGVDb21wb25lbnQgYXMgybVhfSBmcm9tICcuL3ByZXNldHMvY2xhc3NpYy9jb21wb25lbnRzL25vZGUvbm9kZS5jb21wb25lbnQnO1xuZXhwb3J0IHtTb2NrZXRDb21wb25lbnQgYXMgybVkfSBmcm9tICcuL3ByZXNldHMvY2xhc3NpYy9jb21wb25lbnRzL3NvY2tldC9zb2NrZXQuY29tcG9uZW50JztcbmV4cG9ydCB7Q29udGV4dE1lbnVJdGVtQ29tcG9uZW50IGFzIMm1aX0gZnJvbSAnLi9wcmVzZXRzL2NvbnRleHQtbWVudS9jb21wb25lbnRzL2l0ZW0vaXRlbS5jb21wb25lbnQnO1xuZXhwb3J0IHtDb250ZXh0TWVudUNvbXBvbmVudCBhcyDJtWd9IGZyb20gJy4vcHJlc2V0cy9jb250ZXh0LW1lbnUvY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50JztcbmV4cG9ydCB7Q29udGV4dE1lbnVTZWFyY2hDb21wb25lbnQgYXMgybVofSBmcm9tICcuL3ByZXNldHMvY29udGV4dC1tZW51L2NvbXBvbmVudHMvc2VhcmNoL3NlYXJjaC5jb21wb25lbnQnO1xuZXhwb3J0IHtNaW5pTm9kZUNvbXBvbmVudCBhcyDJtWx9IGZyb20gJy4vcHJlc2V0cy9taW5pbWFwL2NvbXBvbmVudHMvbWluaS1ub2RlL21pbmktbm9kZS5jb21wb25lbnQnO1xuZXhwb3J0IHtNaW5pVmlld3BvcnRDb21wb25lbnQgYXMgybVrfSBmcm9tICcuL3ByZXNldHMvbWluaW1hcC9jb21wb25lbnRzL21pbmktdmlld3BvcnQvbWluaS12aWV3cG9ydC5jb21wb25lbnQnO1xuZXhwb3J0IHtNaW5pbWFwQ29tcG9uZW50IGFzIMm1an0gZnJvbSAnLi9wcmVzZXRzL21pbmltYXAvY29tcG9uZW50cy9taW5pbWFwL21pbmltYXAuY29tcG9uZW50JztcbmV4cG9ydCB7UGluQ29tcG9uZW50IGFzIMm1bn0gZnJvbSAnLi9wcmVzZXRzL3Jlcm91dGUvY29tcG9uZW50cy9waW4vcGluLmNvbXBvbmVudCc7XG5leHBvcnQge1BpbnNDb21wb25lbnQgYXMgybVtfSBmcm9tICcuL3ByZXNldHMvcmVyb3V0ZS9jb21wb25lbnRzL3BpbnMvcGlucy5jb21wb25lbnQnO1xuZXhwb3J0IHtJbXB1cmVLZXl2YWx1ZVBpcGUgYXMgybVmfSBmcm9tICcuL3NoYXJlZC9waXBlcy9pbXB1cmUta2V5dmFsdWUucGlwZSc7Il19
@@ -0,0 +1,20 @@
1
+ import { Pipe } from '@angular/core';
2
+ export class ImpureKeyvaluePipe {
3
+ transform(value, compareFn) {
4
+ if (!value || typeof value !== 'object') {
5
+ return [];
6
+ }
7
+ const result = Object.entries(value).map(([key, val]) => ({ key, value: val }));
8
+ if (compareFn) {
9
+ result.sort(compareFn);
10
+ }
11
+ return result;
12
+ }
13
+ }
14
+ ImpureKeyvaluePipe.decorators = [
15
+ { type: Pipe, args: [{
16
+ name: 'keyvalueimpure',
17
+ pure: false
18
+ },] }
19
+ ];
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wdXJlLWtleXZhbHVlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2hhcmVkL3BpcGVzL2ltcHVyZS1rZXl2YWx1ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBTXBELE1BQU0sT0FBTyxrQkFBa0I7SUFFN0IsU0FBUyxDQUFDLEtBQThDLEVBQUUsU0FBc0M7UUFDOUYsSUFBSSxDQUFDLEtBQUssSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7WUFDdkMsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUVELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBQyxDQUFDLENBQUMsQ0FBQztRQUU5RSxJQUFJLFNBQVMsRUFBRTtZQUNiLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDeEI7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOzs7WUFsQkYsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSxnQkFBZ0I7Z0JBQ3RCLElBQUksRUFBRSxLQUFLO2FBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ2tleXZhbHVlaW1wdXJlJyxcbiAgcHVyZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgSW1wdXJlS2V5dmFsdWVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG5cbiAgdHJhbnNmb3JtKHZhbHVlOiB7W2tleTogc3RyaW5nXTogYW55fSB8IG51bGwgfCB1bmRlZmluZWQsIGNvbXBhcmVGbj86IChhOiBhbnksIGI6IGFueSkgPT4gbnVtYmVyKTogQXJyYXk8e2tleTogc3RyaW5nLCB2YWx1ZTogYW55fT4ge1xuICAgIGlmICghdmFsdWUgfHwgdHlwZW9mIHZhbHVlICE9PSAnb2JqZWN0Jykge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdCA9IE9iamVjdC5lbnRyaWVzKHZhbHVlKS5tYXAoKFtrZXksIHZhbF0pID0+ICh7a2V5LCB2YWx1ZTogdmFsfSkpO1xuXG4gICAgaWYgKGNvbXBhcmVGbikge1xuICAgICAgcmVzdWx0LnNvcnQoY29tcGFyZUZuKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export { ImpureKeyvaluePipe } from './impure-keyvalue.pipe';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2hhcmVkL3BpcGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgSW1wdXJlS2V5dmFsdWVQaXBlIH0gZnJvbSAnLi9pbXB1cmUta2V5dmFsdWUucGlwZSc7XG4iXX0=
@@ -1,7 +1,7 @@
1
1
  import { __awaiter } from 'tslib';
2
2
  import { getUID, ClassicPreset, Scope } from 'rete';
3
3
  import { getDOMSocketPosition, loopConnectionPath, classicConnectionPath } from 'rete-render-utils';
4
- import { Component, ChangeDetectorRef, Input, HostBinding, HostListener, ViewContainerRef, ComponentFactoryResolver, ElementRef, Directive, NgModule, EventEmitter, Output } from '@angular/core';
4
+ import { Component, ChangeDetectorRef, Input, HostBinding, HostListener, ViewContainerRef, ComponentFactoryResolver, ElementRef, Directive, Pipe, NgModule, EventEmitter, Output } from '@angular/core';
5
5
  import { BaseAreaPlugin } from 'rete-area-plugin';
6
6
  import { CommonModule } from '@angular/common';
7
7
  import { createCustomElement } from '@angular/elements';
@@ -36,7 +36,7 @@ class NodeComponent {
36
36
  NodeComponent.decorators = [
37
37
  { type: Component, args: [{
38
38
  // [component-directive]
39
- template: "<div class=\"title\" data-testid=\"title\">{{data.label}}</div>\n<div class=\"output\" *ngFor=\"let output of data.outputs | keyvalue: sortByIndex\" [attr.data-testid]=\"'output-'+output.key\">\n <div class=\"output-title\" data-testid=\"output-title\">{{output.value?.label}}</div>\n <div\n class=\"output-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'output', key: output.key, nodeId: data.id, payload: output.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"output-socket\"\n ></div>\n</div>\n<div\n class=\"control\"\n *ngFor=\"let control of data.controls | keyvalue: sortByIndex\"\n refComponent\n [data]=\"{type: 'control', payload: control.value }\"\n [emit]=\"emit\"\n [attr.data-testid]=\"'control-'+control.key\"\n></div>\n<div class=\"input\" *ngFor=\"let input of data.inputs | keyvalue: sortByIndex\" [attr.data-testid]=\"'input-'+input.key\">\n <div\n class=\"input-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'input', key: input.key, nodeId: data.id, payload: input.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"input-socket\"\n ></div>\n <div class=\"input-title\" data-testid=\"input-title\" *ngIf=\"!input.value?.control || !input.value?.showControl\">{{input.value?.label}}</div>\n <div\n class=\"input-control\"\n [style.display]=\"input.value?.control && input.value?.showControl ? '' : 'none'\"\n refComponent\n [data]=\"{type: 'control', payload: input.value?.control }\"\n [emit]=\"emit\"\n data-testid=\"input-control\"\n ></div>\n</div>\n",
39
+ template: "<div class=\"title\" data-testid=\"title\">{{data.label}}</div>\n<div class=\"output\" *ngFor=\"let output of data.outputs | keyvalueimpure: sortByIndex\" [attr.data-testid]=\"'output-'+output.key\">\n <div class=\"output-title\" data-testid=\"output-title\">{{output.value?.label}}</div>\n <div\n class=\"output-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'output', key: output.key, nodeId: data.id, payload: output.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"output-socket\"\n ></div>\n</div>\n<div\n class=\"control\"\n *ngFor=\"let control of data.controls | keyvalueimpure: sortByIndex\"\n refComponent\n [data]=\"{type: 'control', payload: control.value }\"\n [emit]=\"emit\"\n [attr.data-testid]=\"'control-'+control.key\"\n></div>\n<div class=\"input\" *ngFor=\"let input of data.inputs | keyvalueimpure: sortByIndex\" [attr.data-testid]=\"'input-'+input.key\">\n <div\n class=\"input-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'input', key: input.key, nodeId: data.id, payload: input.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"input-socket\"\n ></div>\n <div class=\"input-title\" data-testid=\"input-title\" *ngIf=\"!input.value?.control || !input.value?.showControl\">{{input.value?.label}}</div>\n <div\n class=\"input-control\"\n [style.display]=\"input.value?.control && input.value?.showControl ? '' : 'none'\"\n refComponent\n [data]=\"{type: 'control', payload: input.value?.control }\"\n [emit]=\"emit\"\n data-testid=\"input-control\"\n ></div>\n</div>\n",
40
40
  host: {
41
41
  'data-testid': 'node'
42
42
  },
@@ -197,6 +197,7 @@ class ConnectionWrapperComponent {
197
197
  this.ref.instance.start = this._start;
198
198
  this.ref.instance.end = this._end;
199
199
  this.ref.instance.path = this._path;
200
+ this.ref.changeDetectorRef.markForCheck();
200
201
  }
201
202
  }
202
203
  ConnectionWrapperComponent.decorators = [
@@ -672,6 +673,25 @@ RefDirective.propDecorators = {
672
673
  emit: [{ type: Input }]
673
674
  };
674
675
 
676
+ class ImpureKeyvaluePipe {
677
+ transform(value, compareFn) {
678
+ if (!value || typeof value !== 'object') {
679
+ return [];
680
+ }
681
+ const result = Object.entries(value).map(([key, val]) => ({ key, value: val }));
682
+ if (compareFn) {
683
+ result.sort(compareFn);
684
+ }
685
+ return result;
686
+ }
687
+ }
688
+ ImpureKeyvaluePipe.decorators = [
689
+ { type: Pipe, args: [{
690
+ name: 'keyvalueimpure',
691
+ pure: false
692
+ },] }
693
+ ];
694
+
675
695
  class ReteModule {
676
696
  }
677
697
  ReteModule.decorators = [
@@ -682,7 +702,8 @@ ReteModule.decorators = [
682
702
  ConnectionComponent,
683
703
  ConnectionWrapperComponent,
684
704
  SocketComponent,
685
- ControlComponent
705
+ ControlComponent,
706
+ ImpureKeyvaluePipe
686
707
  ],
687
708
  imports: [
688
709
  CommonModule
@@ -693,7 +714,8 @@ ReteModule.decorators = [
693
714
  ConnectionComponent,
694
715
  ConnectionWrapperComponent,
695
716
  SocketComponent,
696
- ControlComponent
717
+ ControlComponent,
718
+ ImpureKeyvaluePipe
697
719
  ],
698
720
  entryComponents: [
699
721
  NodeComponent,
@@ -1174,5 +1196,5 @@ class AngularPlugin extends Scope {
1174
1196
  * Generated bundle index. Do not edit.
1175
1197
  */
1176
1198
 
1177
- export { AngularPlugin, ConnectionComponent, ConnectionWrapperComponent, ContextMenuComponent, ContextMenuItemComponent, ContextMenuSearchComponent, ControlComponent, MiniNodeComponent, MiniViewportComponent, MinimapComponent, NodeComponent, PinComponent, PinsComponent, index as Presets, RefDirective, ReteContextMenuModule, ReteMinimapModule, ReteModule, ReteRerouteModule, SocketComponent, NodeComponent as ɵa, ConnectionComponent as ɵb, ConnectionWrapperComponent as ɵc, SocketComponent as ɵd, ControlComponent as ɵe, ContextMenuComponent as ɵf, ContextMenuSearchComponent as ɵg, ContextMenuItemComponent as ɵh, MinimapComponent as ɵi, MiniViewportComponent as ɵj, MiniNodeComponent as ɵk, PinsComponent as ɵl, PinComponent as ɵm };
1199
+ export { AngularPlugin, ConnectionComponent, ConnectionWrapperComponent, ContextMenuComponent, ContextMenuItemComponent, ContextMenuSearchComponent, ControlComponent, ImpureKeyvaluePipe, MiniNodeComponent, MiniViewportComponent, MinimapComponent, NodeComponent, PinComponent, PinsComponent, index as Presets, RefDirective, ReteContextMenuModule, ReteMinimapModule, ReteModule, ReteRerouteModule, SocketComponent, NodeComponent as ɵa, ConnectionComponent as ɵb, ConnectionWrapperComponent as ɵc, SocketComponent as ɵd, ControlComponent as ɵe, ImpureKeyvaluePipe as ɵf, ContextMenuComponent as ɵg, ContextMenuSearchComponent as ɵh, ContextMenuItemComponent as ɵi, MinimapComponent as ɵj, MiniViewportComponent as ɵk, MiniNodeComponent as ɵl, PinsComponent as ɵm, PinComponent as ɵn };
1178
1200
  //# sourceMappingURL=rete-angular-plugin.js.map