ngx-vflow 0.7.0 → 0.8.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 (32) hide show
  1. package/esm2022/lib/vflow/components/background/background.component.mjs +4 -4
  2. package/esm2022/lib/vflow/components/connection/connection.component.mjs +2 -2
  3. package/esm2022/lib/vflow/components/handle/handle.component.mjs +5 -5
  4. package/esm2022/lib/vflow/components/node/node.component.mjs +31 -82
  5. package/esm2022/lib/vflow/components/vflow/vflow.component.mjs +12 -2
  6. package/esm2022/lib/vflow/directives/connection-controller.directive.mjs +91 -12
  7. package/esm2022/lib/vflow/directives/space-point-context.directive.mjs +11 -5
  8. package/esm2022/lib/vflow/interfaces/connection-settings.interface.mjs +1 -1
  9. package/esm2022/lib/vflow/interfaces/connection.internal.interface.mjs +2 -0
  10. package/esm2022/lib/vflow/models/connection.model.mjs +28 -6
  11. package/esm2022/lib/vflow/models/handle.model.mjs +1 -1
  12. package/esm2022/lib/vflow/services/flow-entities.service.mjs +2 -2
  13. package/esm2022/lib/vflow/services/flow-status.service.mjs +7 -7
  14. package/esm2022/lib/vflow/services/handle.service.mjs +1 -1
  15. package/esm2022/lib/vflow/types/connection-mode.type.mjs +2 -0
  16. package/esm2022/lib/vflow/utils/adjust-direction.mjs +30 -0
  17. package/esm2022/public-api.mjs +2 -1
  18. package/fesm2022/ngx-vflow.mjs +339 -246
  19. package/fesm2022/ngx-vflow.mjs.map +1 -1
  20. package/lib/vflow/components/node/node.component.d.ts +4 -12
  21. package/lib/vflow/components/vflow/vflow.component.d.ts +6 -0
  22. package/lib/vflow/directives/connection-controller.directive.d.ts +6 -0
  23. package/lib/vflow/directives/space-point-context.directive.d.ts +1 -0
  24. package/lib/vflow/interfaces/connection-settings.interface.d.ts +2 -0
  25. package/lib/vflow/interfaces/connection.internal.interface.d.ts +8 -0
  26. package/lib/vflow/models/connection.model.d.ts +5 -2
  27. package/lib/vflow/models/handle.model.d.ts +1 -1
  28. package/lib/vflow/services/flow-status.service.d.ts +7 -18
  29. package/lib/vflow/types/connection-mode.type.d.ts +1 -0
  30. package/lib/vflow/utils/adjust-direction.d.ts +11 -0
  31. package/package.json +1 -1
  32. package/public-api.d.ts +1 -0
@@ -0,0 +1,30 @@
1
+ /**
2
+ * This function contains a hack-y behavior.
3
+ * If the handles are of the same type (source-source or target-target),
4
+ * it returns nodes where source === target and
5
+ * handles where sourceHandle === targetHandle
6
+ *
7
+ * This leads to that notSelfValidator returns false for these cases,
8
+ * exactly what we need for strict connection type
9
+ */
10
+ export function adjustDirection(connection) {
11
+ const result = {};
12
+ if (connection.sourceHandle.rawHandle.type === 'source') {
13
+ result.source = connection.source;
14
+ result.sourceHandle = connection.sourceHandle;
15
+ }
16
+ else {
17
+ result.source = connection.target;
18
+ result.sourceHandle = connection.targetHandle;
19
+ }
20
+ if (connection.targetHandle.rawHandle.type === 'target') {
21
+ result.target = connection.target;
22
+ result.targetHandle = connection.targetHandle;
23
+ }
24
+ else {
25
+ result.target = connection.source;
26
+ result.targetHandle = connection.sourceHandle;
27
+ }
28
+ return result;
29
+ }
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRqdXN0LWRpcmVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy91dGlscy9hZGp1c3QtZGlyZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxVQUFVLGVBQWUsQ0FBQyxVQUE4QjtJQUM1RCxNQUFNLE1BQU0sR0FBRyxFQUF3QixDQUFBO0lBRXZDLElBQUksVUFBVSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRTtRQUN2RCxNQUFNLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUE7UUFDakMsTUFBTSxDQUFDLFlBQVksR0FBRyxVQUFVLENBQUMsWUFBWSxDQUFBO0tBQzlDO1NBQU07UUFDTCxNQUFNLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUE7UUFDakMsTUFBTSxDQUFDLFlBQVksR0FBRyxVQUFVLENBQUMsWUFBWSxDQUFBO0tBQzlDO0lBRUQsSUFBSSxVQUFVLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO1FBQ3ZELE1BQU0sQ0FBQyxNQUFNLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQTtRQUNqQyxNQUFNLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FBQyxZQUFZLENBQUE7S0FDOUM7U0FBTTtRQUNMLE1BQU0sQ0FBQyxNQUFNLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQTtRQUNqQyxNQUFNLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FBQyxZQUFZLENBQUE7S0FDOUM7SUFFRCxPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25uZWN0aW9uSW50ZXJuYWwgfSBmcm9tIFwiLi4vaW50ZXJmYWNlcy9jb25uZWN0aW9uLmludGVybmFsLmludGVyZmFjZVwiO1xuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gY29udGFpbnMgYSBoYWNrLXkgYmVoYXZpb3IuXG4gKiBJZiB0aGUgaGFuZGxlcyBhcmUgb2YgdGhlIHNhbWUgdHlwZSAoc291cmNlLXNvdXJjZSBvciB0YXJnZXQtdGFyZ2V0KSxcbiAqIGl0IHJldHVybnMgbm9kZXMgd2hlcmUgc291cmNlID09PSB0YXJnZXQgYW5kXG4gKiBoYW5kbGVzIHdoZXJlIHNvdXJjZUhhbmRsZSA9PT0gdGFyZ2V0SGFuZGxlXG4gKlxuICogVGhpcyBsZWFkcyB0byB0aGF0IG5vdFNlbGZWYWxpZGF0b3IgcmV0dXJucyBmYWxzZSBmb3IgdGhlc2UgY2FzZXMsXG4gKiBleGFjdGx5IHdoYXQgd2UgbmVlZCBmb3Igc3RyaWN0IGNvbm5lY3Rpb24gdHlwZVxuICovXG5leHBvcnQgZnVuY3Rpb24gYWRqdXN0RGlyZWN0aW9uKGNvbm5lY3Rpb246IENvbm5lY3Rpb25JbnRlcm5hbCk6IENvbm5lY3Rpb25JbnRlcm5hbCB7XG4gIGNvbnN0IHJlc3VsdCA9IHt9IGFzIENvbm5lY3Rpb25JbnRlcm5hbFxuXG4gIGlmIChjb25uZWN0aW9uLnNvdXJjZUhhbmRsZS5yYXdIYW5kbGUudHlwZSA9PT0gJ3NvdXJjZScpIHtcbiAgICByZXN1bHQuc291cmNlID0gY29ubmVjdGlvbi5zb3VyY2VcbiAgICByZXN1bHQuc291cmNlSGFuZGxlID0gY29ubmVjdGlvbi5zb3VyY2VIYW5kbGVcbiAgfSBlbHNlIHtcbiAgICByZXN1bHQuc291cmNlID0gY29ubmVjdGlvbi50YXJnZXRcbiAgICByZXN1bHQuc291cmNlSGFuZGxlID0gY29ubmVjdGlvbi50YXJnZXRIYW5kbGVcbiAgfVxuXG4gIGlmIChjb25uZWN0aW9uLnRhcmdldEhhbmRsZS5yYXdIYW5kbGUudHlwZSA9PT0gJ3RhcmdldCcpIHtcbiAgICByZXN1bHQudGFyZ2V0ID0gY29ubmVjdGlvbi50YXJnZXRcbiAgICByZXN1bHQudGFyZ2V0SGFuZGxlID0gY29ubmVjdGlvbi50YXJnZXRIYW5kbGVcbiAgfSBlbHNlIHtcbiAgICByZXN1bHQudGFyZ2V0ID0gY29ubmVjdGlvbi5zb3VyY2VcbiAgICByZXN1bHQudGFyZ2V0SGFuZGxlID0gY29ubmVjdGlvbi5zb3VyY2VIYW5kbGVcbiAgfVxuXG4gIHJldHVybiByZXN1bHRcbn1cbiJdfQ==
@@ -16,6 +16,7 @@ export * from './lib/vflow/types/node-change.type';
16
16
  export * from './lib/vflow/types/edge-change.type';
17
17
  export * from './lib/vflow/types/position.type';
18
18
  export * from './lib/vflow/types/background.type';
19
+ export * from './lib/vflow/types/connection-mode.type';
19
20
  // Components
20
21
  export * from './lib/vflow/components/vflow/vflow.component';
21
22
  export * from './lib/vflow/components/handle/handle.component';
@@ -25,4 +26,4 @@ export * from './lib/vflow/directives/template.directive';
25
26
  export * from './lib/vflow/directives/connection-controller.directive';
26
27
  export * from './lib/vflow/directives/changes-controller.directive';
27
28
  export * from './lib/vflow/directives/selectable.directive';
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLGNBQWMsMEJBQTBCLENBQUM7QUFFekMsYUFBYTtBQUNiLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHlDQUF5QyxDQUFDO0FBRXhELGNBQWMsdURBQXVELENBQUM7QUFFdEUsUUFBUTtBQUNSLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsbUNBQW1DLENBQUM7QUFFbEQsYUFBYTtBQUNiLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHFEQUFxRCxDQUFDO0FBRXBFLGFBQWE7QUFDYixjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLDZDQUE2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gTW9kdWxlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdmZsb3cubW9kdWxlJztcblxuLy8gSW50ZXJmYWNlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9ub2RlLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL3BvaW50LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2VkZ2UuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvZWRnZS1sYWJlbC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9jb25uZWN0aW9uLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2Nvbm5lY3Rpb24uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvY29ubmVjdGlvbi1zZXR0aW5ncy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9oYW5kbGUtcG9zaXRpb25zLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL21hcmtlci5pbnRlcmZhY2UnO1xuZXhwb3J0IHsgVmlld3BvcnRTdGF0ZSB9IGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvdmlld3BvcnQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvY29tcG9uZW50LW5vZGUtZXZlbnQuaW50ZXJmYWNlJztcblxuLy8gVHlwZXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL25vZGUtY2hhbmdlLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdHlwZXMvZWRnZS1jaGFuZ2UudHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy90eXBlcy9wb3NpdGlvbi50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL2JhY2tncm91bmQudHlwZSc7XG5cbi8vIENvbXBvbmVudHNcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2NvbXBvbmVudHMvdmZsb3cvdmZsb3cuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2NvbXBvbmVudHMvaGFuZGxlL2hhbmRsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvcHVibGljLWNvbXBvbmVudHMvY3VzdG9tLW5vZGUuY29tcG9uZW50JztcblxuLy8gRGlyZWN0aXZlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvZGlyZWN0aXZlcy90ZW1wbGF0ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvZGlyZWN0aXZlcy9jb25uZWN0aW9uLWNvbnRyb2xsZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2RpcmVjdGl2ZXMvY2hhbmdlcy1jb250cm9sbGVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9kaXJlY3RpdmVzL3NlbGVjdGFibGUuZGlyZWN0aXZlJztcbiJdfQ==
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLGNBQWMsMEJBQTBCLENBQUM7QUFFekMsYUFBYTtBQUNiLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHlDQUF5QyxDQUFDO0FBRXhELGNBQWMsdURBQXVELENBQUM7QUFFdEUsUUFBUTtBQUNSLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUV2RCxhQUFhO0FBQ2IsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMscURBQXFELENBQUM7QUFFcEUsYUFBYTtBQUNiLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsNkNBQTZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBNb2R1bGVzXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy92Zmxvdy5tb2R1bGUnO1xuXG4vLyBJbnRlcmZhY2VzXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL25vZGUuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvcG9pbnQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvZWRnZS5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9lZGdlLWxhYmVsLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2Nvbm5lY3Rpb24uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvY29ubmVjdGlvbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9jb25uZWN0aW9uLXNldHRpbmdzLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2hhbmRsZS1wb3NpdGlvbnMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvbWFya2VyLmludGVyZmFjZSc7XG5leHBvcnQgeyBWaWV3cG9ydFN0YXRlIH0gZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy92aWV3cG9ydC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9jb21wb25lbnQtbm9kZS1ldmVudC5pbnRlcmZhY2UnO1xuXG4vLyBUeXBlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdHlwZXMvbm9kZS1jaGFuZ2UudHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy90eXBlcy9lZGdlLWNoYW5nZS50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL3Bvc2l0aW9uLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdHlwZXMvYmFja2dyb3VuZC50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL2Nvbm5lY3Rpb24tbW9kZS50eXBlJztcblxuLy8gQ29tcG9uZW50c1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvY29tcG9uZW50cy92Zmxvdy92Zmxvdy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvY29tcG9uZW50cy9oYW5kbGUvaGFuZGxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9jdXN0b20tbm9kZS5jb21wb25lbnQnO1xuXG4vLyBEaXJlY3RpdmVzXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9kaXJlY3RpdmVzL3RlbXBsYXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9kaXJlY3RpdmVzL2Nvbm5lY3Rpb24tY29udHJvbGxlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvZGlyZWN0aXZlcy9jaGFuZ2VzLWNvbnRyb2xsZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2RpcmVjdGl2ZXMvc2VsZWN0YWJsZS5kaXJlY3RpdmUnO1xuIl19