@foblex/flow 18.2.1 → 18.3.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 (49) hide show
  1. package/domain/f-connection/create-connection-markers/create-connection-markers.d.ts +3 -2
  2. package/domain/f-connection/redraw-connections/redraw-connections.d.ts +2 -0
  3. package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers.mjs +33 -6
  4. package/esm2022/domain/f-connection/redraw-connections/redraw-connections.mjs +46 -3
  5. package/esm2022/f-connection/f-connection/f-connection.component.mjs +6 -6
  6. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +6 -7
  7. package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +6 -7
  8. package/esm2022/f-connection/providers.mjs +8 -4
  9. package/esm2022/f-connection-v2/components/connection-gradient/components/index.mjs +2 -0
  10. package/esm2022/f-connection-v2/components/connection-gradient/components/render/f-connection-gradient-renderer.mjs +17 -0
  11. package/esm2022/f-connection-v2/components/connection-gradient/components/render/index.mjs +3 -0
  12. package/esm2022/f-connection-v2/components/connection-gradient/components/render/models/f-connection-gradient-renderer-base.mjs +81 -0
  13. package/esm2022/f-connection-v2/components/connection-gradient/components/render/models/index.mjs +2 -0
  14. package/esm2022/f-connection-v2/components/connection-gradient/f-connection-gradient.mjs +14 -46
  15. package/esm2022/f-connection-v2/components/connection-gradient/index.mjs +2 -1
  16. package/esm2022/f-connection-v2/components/connection-gradient/models/f-connection-gradient-base.mjs +2 -3
  17. package/esm2022/f-connection-v2/components/connection-path/f-connection-path.mjs +11 -7
  18. package/esm2022/f-connection-v2/components/f-connection-base.mjs +13 -9
  19. package/esm2022/f-connection-v2/models/f-connection-components-parent.mjs +1 -1
  20. package/esm2022/f-connection-v2/utils/create-gradient-dom-identifier.mjs +3 -3
  21. package/esm2022/f-connection-v2/utils/create-gradient-dom-url.mjs +3 -3
  22. package/esm2022/f-connection-worker/features/ensure-connection-worker/ensure-connection-worker.mjs +11 -4
  23. package/esm2022/f-connection-worker/features/is-connection-worker-enabled/is-connection-worker-enabled.mjs +3 -2
  24. package/esm2022/f-connection-worker/model/f-connection-worker.mjs +5 -1
  25. package/esm2022/f-connection-worker/worker/connection-worker-runtime.mjs +235 -0
  26. package/esm2022/f-flow.module.mjs +37 -36
  27. package/f-connection/f-connection/f-connection.component.d.ts +1 -1
  28. package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +1 -1
  29. package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +1 -1
  30. package/f-connection/providers.d.ts +3 -3
  31. package/f-connection-v2/components/connection-gradient/components/index.d.ts +1 -0
  32. package/f-connection-v2/components/connection-gradient/components/render/f-connection-gradient-renderer.d.ts +8 -0
  33. package/f-connection-v2/components/connection-gradient/components/render/index.d.ts +2 -0
  34. package/f-connection-v2/components/connection-gradient/components/render/models/f-connection-gradient-renderer-base.d.ts +25 -0
  35. package/f-connection-v2/components/connection-gradient/components/render/models/index.d.ts +1 -0
  36. package/f-connection-v2/components/connection-gradient/f-connection-gradient.d.ts +3 -11
  37. package/f-connection-v2/components/connection-gradient/index.d.ts +1 -0
  38. package/f-connection-v2/components/connection-gradient/models/f-connection-gradient-base.d.ts +3 -5
  39. package/f-connection-v2/components/connection-path/f-connection-path.d.ts +3 -2
  40. package/f-connection-v2/components/f-connection-base.d.ts +7 -4
  41. package/f-connection-v2/models/f-connection-components-parent.d.ts +0 -2
  42. package/f-connection-v2/utils/create-gradient-dom-identifier.d.ts +1 -1
  43. package/f-connection-v2/utils/create-gradient-dom-url.d.ts +1 -1
  44. package/f-connection-worker/model/f-connection-worker.d.ts +1 -0
  45. package/f-connection-worker/worker/connection-worker-runtime.d.ts +11 -0
  46. package/f-flow.module.d.ts +38 -37
  47. package/fesm2022/foblex-flow.mjs +457 -71
  48. package/fesm2022/foblex-flow.mjs.map +1 -1
  49. package/package.json +1 -1
@@ -2,4 +2,4 @@ import { InjectionToken } from '@angular/core';
2
2
  export const F_CONNECTION_COMPONENTS_PARENT = new InjectionToken('F_CONNECTION_COMPONENTS_PARENT');
3
3
  export class FConnectionComponentsParent {
4
4
  }
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWNvbXBvbmVudHMtcGFyZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24tdjIvbW9kZWxzL2YtY29ubmVjdGlvbi1jb21wb25lbnRzLXBhcmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBSXZELE1BQU0sQ0FBQyxNQUFNLDhCQUE4QixHQUFHLElBQUksY0FBYyxDQUM5RCxnQ0FBZ0MsQ0FDakMsQ0FBQztBQUVGLE1BQU0sT0FBZ0IsMkJBQTJCO0NBcUJoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVGQ29ubmVjdGFibGVTaWRlIH0gZnJvbSAnLi4vZW51bXMnO1xuaW1wb3J0IHsgRUZDb25uZWN0aW9uQmVoYXZpb3IsIEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZSB9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IEZfQ09OTkVDVElPTl9DT01QT05FTlRTX1BBUkVOVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxGQ29ubmVjdGlvbkNvbXBvbmVudHNQYXJlbnQ+KFxuICAnRl9DT05ORUNUSU9OX0NPTVBPTkVOVFNfUEFSRU5UJyxcbik7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGQ29ubmVjdGlvbkNvbXBvbmVudHNQYXJlbnQge1xuICBwdWJsaWMgYWJzdHJhY3QgZklkOiBTaWduYWw8c3RyaW5nPjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZk91dHB1dElkOiBTaWduYWw8c3RyaW5nPjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZklucHV0SWQ6IFNpZ25hbDxzdHJpbmc+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmU3RhcnRDb2xvcjogU2lnbmFsPHN0cmluZz47XG5cbiAgcHVibGljIGFic3RyYWN0IGZFbmRDb2xvcjogU2lnbmFsPHN0cmluZz47XG5cbiAgcHVibGljIGFic3RyYWN0IGZCZWhhdmlvcjogRUZDb25uZWN0aW9uQmVoYXZpb3I7XG5cbiAgcHVibGljIGFic3RyYWN0IF9hcHBseVJlc29sdmVkU2lkZXNUb0Nvbm5lY3Rpb24oXG4gICAgc291cmNlU2lkZTogRUZDb25uZWN0YWJsZVNpZGUsXG4gICAgdGFyZ2V0U2lkZTogRUZDb25uZWN0YWJsZVNpZGUsXG4gICk6IHZvaWQ7XG5cbiAgcHVibGljIGFic3RyYWN0IGZJbnB1dFNpZGU6IFNpZ25hbDxFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGU+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmT3V0cHV0U2lkZTogU2lnbmFsPEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZT47XG59XG4iXX0=
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWNvbXBvbmVudHMtcGFyZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24tdjIvbW9kZWxzL2YtY29ubmVjdGlvbi1jb21wb25lbnRzLXBhcmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBSXZELE1BQU0sQ0FBQyxNQUFNLDhCQUE4QixHQUFHLElBQUksY0FBYyxDQUM5RCxnQ0FBZ0MsQ0FDakMsQ0FBQztBQUVGLE1BQU0sT0FBZ0IsMkJBQTJCO0NBaUJoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVGQ29ubmVjdGFibGVTaWRlIH0gZnJvbSAnLi4vZW51bXMnO1xuaW1wb3J0IHsgRUZDb25uZWN0aW9uQmVoYXZpb3IsIEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZSB9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IEZfQ09OTkVDVElPTl9DT01QT05FTlRTX1BBUkVOVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxGQ29ubmVjdGlvbkNvbXBvbmVudHNQYXJlbnQ+KFxuICAnRl9DT05ORUNUSU9OX0NPTVBPTkVOVFNfUEFSRU5UJyxcbik7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGQ29ubmVjdGlvbkNvbXBvbmVudHNQYXJlbnQge1xuICBwdWJsaWMgYWJzdHJhY3QgZklkOiBTaWduYWw8c3RyaW5nPjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZk91dHB1dElkOiBTaWduYWw8c3RyaW5nPjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZklucHV0SWQ6IFNpZ25hbDxzdHJpbmc+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmQmVoYXZpb3I6IEVGQ29ubmVjdGlvbkJlaGF2aW9yO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBfYXBwbHlSZXNvbHZlZFNpZGVzVG9Db25uZWN0aW9uKFxuICAgIHNvdXJjZVNpZGU6IEVGQ29ubmVjdGFibGVTaWRlLFxuICAgIHRhcmdldFNpZGU6IEVGQ29ubmVjdGFibGVTaWRlLFxuICApOiB2b2lkO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmSW5wdXRTaWRlOiBTaWduYWw8RUZDb25uZWN0aW9uQ29ubmVjdGFibGVTaWRlPjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZk91dHB1dFNpZGU6IFNpZ25hbDxFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGU+O1xufVxuIl19
@@ -1,5 +1,5 @@
1
1
  import { normalizeDomElementId } from '@foblex/utils';
2
- export function createGradientDomIdentifier(componentId, sourceId, targetId) {
3
- return normalizeDomElementId('connection_gradient_' + componentId + sourceId + targetId);
2
+ export function createGradientDomIdentifier(componentId) {
3
+ return normalizeDomElementId('connection_gradient_' + componentId);
4
4
  }
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWdyYWRpZW50LWRvbS1pZGVudGlmaWVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24tdjIvdXRpbHMvY3JlYXRlLWdyYWRpZW50LWRvbS1pZGVudGlmaWVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV0RCxNQUFNLFVBQVUsMkJBQTJCLENBQ3pDLFdBQW1CLEVBQ25CLFFBQWdCLEVBQ2hCLFFBQWdCO0lBRWhCLE9BQU8scUJBQXFCLENBQUMsc0JBQXNCLEdBQUcsV0FBVyxHQUFHLFFBQVEsR0FBRyxRQUFRLENBQUMsQ0FBQztBQUMzRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbm9ybWFsaXplRG9tRWxlbWVudElkIH0gZnJvbSAnQGZvYmxleC91dGlscyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVHcmFkaWVudERvbUlkZW50aWZpZXIoXG4gIGNvbXBvbmVudElkOiBzdHJpbmcsXG4gIHNvdXJjZUlkOiBzdHJpbmcsXG4gIHRhcmdldElkOiBzdHJpbmcsXG4pOiBzdHJpbmcge1xuICByZXR1cm4gbm9ybWFsaXplRG9tRWxlbWVudElkKCdjb25uZWN0aW9uX2dyYWRpZW50XycgKyBjb21wb25lbnRJZCArIHNvdXJjZUlkICsgdGFyZ2V0SWQpO1xufVxuIl19
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWdyYWRpZW50LWRvbS1pZGVudGlmaWVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24tdjIvdXRpbHMvY3JlYXRlLWdyYWRpZW50LWRvbS1pZGVudGlmaWVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV0RCxNQUFNLFVBQVUsMkJBQTJCLENBQUMsV0FBbUI7SUFDN0QsT0FBTyxxQkFBcUIsQ0FBQyxzQkFBc0IsR0FBRyxXQUFXLENBQUMsQ0FBQztBQUNyRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbm9ybWFsaXplRG9tRWxlbWVudElkIH0gZnJvbSAnQGZvYmxleC91dGlscyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVHcmFkaWVudERvbUlkZW50aWZpZXIoY29tcG9uZW50SWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBub3JtYWxpemVEb21FbGVtZW50SWQoJ2Nvbm5lY3Rpb25fZ3JhZGllbnRfJyArIGNvbXBvbmVudElkKTtcbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { createGradientDomIdentifier } from './create-gradient-dom-identifier';
2
- export function createGradientDomUrl(componentId, sourceId, targetId) {
3
- return `url(#${createGradientDomIdentifier(componentId, sourceId, targetId)})`;
2
+ export function createGradientDomUrl(componentId) {
3
+ return `url(#${createGradientDomIdentifier(componentId)})`;
4
4
  }
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWdyYWRpZW50LWRvbS11cmwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi91dGlscy9jcmVhdGUtZ3JhZGllbnQtZG9tLXVybC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUUvRSxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLFdBQW1CLEVBQ25CLFFBQWdCLEVBQ2hCLFFBQWdCO0lBRWhCLE9BQU8sUUFBUSwyQkFBMkIsQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUM7QUFDakYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUdyYWRpZW50RG9tSWRlbnRpZmllciB9IGZyb20gJy4vY3JlYXRlLWdyYWRpZW50LWRvbS1pZGVudGlmaWVyJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUdyYWRpZW50RG9tVXJsKFxuICBjb21wb25lbnRJZDogc3RyaW5nLFxuICBzb3VyY2VJZDogc3RyaW5nLFxuICB0YXJnZXRJZDogc3RyaW5nLFxuKTogc3RyaW5nIHtcbiAgcmV0dXJuIGB1cmwoIyR7Y3JlYXRlR3JhZGllbnREb21JZGVudGlmaWVyKGNvbXBvbmVudElkLCBzb3VyY2VJZCwgdGFyZ2V0SWQpfSlgO1xufVxuIl19
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWdyYWRpZW50LWRvbS11cmwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi91dGlscy9jcmVhdGUtZ3JhZGllbnQtZG9tLXVybC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUUvRSxNQUFNLFVBQVUsb0JBQW9CLENBQUMsV0FBbUI7SUFDdEQsT0FBTyxRQUFRLDJCQUEyQixDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUM7QUFDN0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUdyYWRpZW50RG9tSWRlbnRpZmllciB9IGZyb20gJy4vY3JlYXRlLWdyYWRpZW50LWRvbS1pZGVudGlmaWVyJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUdyYWRpZW50RG9tVXJsKGNvbXBvbmVudElkOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gYHVybCgjJHtjcmVhdGVHcmFkaWVudERvbUlkZW50aWZpZXIoY29tcG9uZW50SWQpfSlgO1xufVxuIl19
@@ -7,6 +7,7 @@ import { HandleConnectionWorkerMessageRequest } from '../handle-connection-worke
7
7
  import { FConnectionWorker } from '../../model';
8
8
  import { EnsureConnectionWorkerRequest } from './ensure-connection-worker-request';
9
9
  import { ResetConnectionWorkerRuntimeRequest } from '../reset-connection-worker-runtime';
10
+ import { createConnectionWorkerUrl, isConnectionWorkerRuntimeSupported, resolveConnectionWorkerRuntime, revokeConnectionWorkerUrl, } from '../../worker/connection-worker-runtime';
10
11
  import * as i0 from "@angular/core";
11
12
  let EnsureConnectionWorker = class EnsureConnectionWorker {
12
13
  _browser = inject(BrowserService);
@@ -17,12 +18,16 @@ let EnsureConnectionWorker = class EnsureConnectionWorker {
17
18
  return this._state.worker;
18
19
  }
19
20
  const windowRef = this._browser.document.defaultView;
20
- if (!windowRef?.Worker) {
21
+ if (!isConnectionWorkerRuntimeSupported(windowRef)) {
21
22
  return null;
22
23
  }
24
+ const runtime = resolveConnectionWorkerRuntime(windowRef);
25
+ if (!runtime) {
26
+ return null;
27
+ }
28
+ const workerUrl = createConnectionWorkerUrl(runtime);
23
29
  try {
24
- const worker = new windowRef.Worker(new URL('../../worker/f-connection.worker.ts', import.meta.url), {
25
- type: 'module',
30
+ const worker = new runtime.workerCtor(workerUrl, {
26
31
  name: 'f-flow-connection-worker',
27
32
  });
28
33
  worker.onmessage = (event) => {
@@ -34,10 +39,12 @@ let EnsureConnectionWorker = class EnsureConnectionWorker {
34
39
  worker.onmessageerror = () => {
35
40
  this._resetWorkerAfterRuntimeError(new Error('Connection worker message deserialization error.'));
36
41
  };
42
+ this._state.workerUrl = workerUrl;
37
43
  this._state.worker = worker;
38
44
  return worker;
39
45
  }
40
46
  catch (error) {
47
+ revokeConnectionWorkerUrl(workerUrl, runtime.urlApi);
41
48
  this._disableWorker(error instanceof Error ? error : new Error('Connection worker initialization failed.'));
42
49
  return null;
43
50
  }
@@ -58,4 +65,4 @@ export { EnsureConnectionWorker };
58
65
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EnsureConnectionWorker, decorators: [{
59
66
  type: Injectable
60
67
  }] });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5zdXJlLWNvbm5lY3Rpb24td29ya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24td29ya2VyL2ZlYXR1cmVzL2Vuc3VyZS1jb25uZWN0aW9uLXdvcmtlci9lbnN1cmUtY29ubmVjdGlvbi13b3JrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDOUUsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDM0YsT0FBTyxFQUFFLGlCQUFpQixFQUE4QixNQUFNLGFBQWEsQ0FBQztBQUM1RSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNuRixPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7QUFJbEYsSUFBTSxzQkFBc0IsR0FBNUIsTUFBTSxzQkFBc0I7SUFJaEIsUUFBUSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNsQyxNQUFNLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDbkMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUV4QyxNQUFNLENBQUMsQ0FBZ0M7UUFDNUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDNUIsQ0FBQztRQUVELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQztRQUNyRCxJQUFJLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELElBQUksQ0FBQztZQUNILE1BQU0sTUFBTSxHQUFHLElBQUksU0FBUyxDQUFDLE1BQU0sQ0FDakMsSUFBSSxHQUFHLENBQUMscUNBQXFDLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFDL0Q7Z0JBQ0UsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsSUFBSSxFQUFFLDBCQUEwQjthQUNqQyxDQUNGLENBQUM7WUFFRixNQUFNLENBQUMsU0FBUyxHQUFHLENBQUMsS0FBK0MsRUFBRSxFQUFFO2dCQUNyRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLG9DQUFvQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQy9FLENBQUMsQ0FBQztZQUNGLE1BQU0sQ0FBQyxPQUFPLEdBQUcsR0FBRyxFQUFFO2dCQUNwQixJQUFJLENBQUMsNkJBQTZCLENBQUMsSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQyxDQUFDO1lBQ3BGLENBQUMsQ0FBQztZQUNGLE1BQU0sQ0FBQyxjQUFjLEdBQUcsR0FBRyxFQUFFO2dCQUMzQixJQUFJLENBQUMsNkJBQTZCLENBQ2hDLElBQUksS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQzlELENBQUM7WUFDSixDQUFDLENBQUM7WUFFRixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7WUFFNUIsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsY0FBYyxDQUNqQixLQUFLLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQ3ZGLENBQUM7WUFFRixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDO0lBRU8sY0FBYyxDQUFDLEtBQVk7UUFDakMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSw4QkFBOEIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFTyw2QkFBNkIsQ0FBQyxLQUFZO1FBQ2hELElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksbUNBQW1DLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN6RSxDQUFDO3dHQXpEVSxzQkFBc0I7NEdBQXRCLHNCQUFzQjs7QUFBdEIsc0JBQXNCO0lBRGxDLGtCQUFrQixDQUFDLDZCQUE2QixDQUFDO0dBQ3JDLHNCQUFzQixDQTBEbEM7OzRGQTFEWSxzQkFBc0I7a0JBRmxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJyb3dzZXJTZXJ2aWNlIH0gZnJvbSAnQGZvYmxleC9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRGlzYWJsZUNvbm5lY3Rpb25Xb3JrZXJSZXF1ZXN0IH0gZnJvbSAnLi4vZGlzYWJsZS1jb25uZWN0aW9uLXdvcmtlcic7XG5pbXBvcnQgeyBIYW5kbGVDb25uZWN0aW9uV29ya2VyTWVzc2FnZVJlcXVlc3QgfSBmcm9tICcuLi9oYW5kbGUtY29ubmVjdGlvbi13b3JrZXItbWVzc2FnZSc7XG5pbXBvcnQgeyBGQ29ubmVjdGlvbldvcmtlciwgSUZDb25uZWN0aW9uV29ya2VyUmVzcG9uc2UgfSBmcm9tICcuLi8uLi9tb2RlbCc7XG5pbXBvcnQgeyBFbnN1cmVDb25uZWN0aW9uV29ya2VyUmVxdWVzdCB9IGZyb20gJy4vZW5zdXJlLWNvbm5lY3Rpb24td29ya2VyLXJlcXVlc3QnO1xuaW1wb3J0IHsgUmVzZXRDb25uZWN0aW9uV29ya2VyUnVudGltZVJlcXVlc3QgfSBmcm9tICcuLi9yZXNldC1jb25uZWN0aW9uLXdvcmtlci1ydW50aW1lJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihFbnN1cmVDb25uZWN0aW9uV29ya2VyUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBFbnN1cmVDb25uZWN0aW9uV29ya2VyIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxcbiAgRW5zdXJlQ29ubmVjdGlvbldvcmtlclJlcXVlc3QsXG4gIFdvcmtlciB8IG51bGxcbj4ge1xuICBwcml2YXRlIHJlYWRvbmx5IF9icm93c2VyID0gaW5qZWN0KEJyb3dzZXJTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RhdGUgPSBpbmplY3QoRkNvbm5lY3Rpb25Xb3JrZXIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuXG4gIHB1YmxpYyBoYW5kbGUoXzogRW5zdXJlQ29ubmVjdGlvbldvcmtlclJlcXVlc3QpOiBXb3JrZXIgfCBudWxsIHtcbiAgICBpZiAodGhpcy5fc3RhdGUud29ya2VyKSB7XG4gICAgICByZXR1cm4gdGhpcy5fc3RhdGUud29ya2VyO1xuICAgIH1cblxuICAgIGNvbnN0IHdpbmRvd1JlZiA9IHRoaXMuX2Jyb3dzZXIuZG9jdW1lbnQuZGVmYXVsdFZpZXc7XG4gICAgaWYgKCF3aW5kb3dSZWY/Lldvcmtlcikge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHdvcmtlciA9IG5ldyB3aW5kb3dSZWYuV29ya2VyKFxuICAgICAgICBuZXcgVVJMKCcuLi8uLi93b3JrZXIvZi1jb25uZWN0aW9uLndvcmtlci50cycsIGltcG9ydC5tZXRhLnVybCksXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnbW9kdWxlJyxcbiAgICAgICAgICBuYW1lOiAnZi1mbG93LWNvbm5lY3Rpb24td29ya2VyJyxcbiAgICAgICAgfSxcbiAgICAgICk7XG5cbiAgICAgIHdvcmtlci5vbm1lc3NhZ2UgPSAoZXZlbnQ6IE1lc3NhZ2VFdmVudDxJRkNvbm5lY3Rpb25Xb3JrZXJSZXNwb25zZT4pID0+IHtcbiAgICAgICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgSGFuZGxlQ29ubmVjdGlvbldvcmtlck1lc3NhZ2VSZXF1ZXN0KGV2ZW50LmRhdGEpKTtcbiAgICAgIH07XG4gICAgICB3b3JrZXIub25lcnJvciA9ICgpID0+IHtcbiAgICAgICAgdGhpcy5fcmVzZXRXb3JrZXJBZnRlclJ1bnRpbWVFcnJvcihuZXcgRXJyb3IoJ0Nvbm5lY3Rpb24gd29ya2VyIHJ1bnRpbWUgZXJyb3IuJykpO1xuICAgICAgfTtcbiAgICAgIHdvcmtlci5vbm1lc3NhZ2VlcnJvciA9ICgpID0+IHtcbiAgICAgICAgdGhpcy5fcmVzZXRXb3JrZXJBZnRlclJ1bnRpbWVFcnJvcihcbiAgICAgICAgICBuZXcgRXJyb3IoJ0Nvbm5lY3Rpb24gd29ya2VyIG1lc3NhZ2UgZGVzZXJpYWxpemF0aW9uIGVycm9yLicpLFxuICAgICAgICApO1xuICAgICAgfTtcblxuICAgICAgdGhpcy5fc3RhdGUud29ya2VyID0gd29ya2VyO1xuXG4gICAgICByZXR1cm4gd29ya2VyO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLl9kaXNhYmxlV29ya2VyKFxuICAgICAgICBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IgOiBuZXcgRXJyb3IoJ0Nvbm5lY3Rpb24gd29ya2VyIGluaXRpYWxpemF0aW9uIGZhaWxlZC4nKSxcbiAgICAgICk7XG5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2Rpc2FibGVXb3JrZXIoZXJyb3I6IEVycm9yKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgRGlzYWJsZUNvbm5lY3Rpb25Xb3JrZXJSZXF1ZXN0KGVycm9yKSk7XG4gIH1cblxuICBwcml2YXRlIF9yZXNldFdvcmtlckFmdGVyUnVudGltZUVycm9yKGVycm9yOiBFcnJvcik6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IFJlc2V0Q29ubmVjdGlvbldvcmtlclJ1bnRpbWVSZXF1ZXN0KGVycm9yKSk7XG4gIH1cbn1cbiJdfQ==
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5zdXJlLWNvbm5lY3Rpb24td29ya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24td29ya2VyL2ZlYXR1cmVzL2Vuc3VyZS1jb25uZWN0aW9uLXdvcmtlci9lbnN1cmUtY29ubmVjdGlvbi13b3JrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDOUUsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDM0YsT0FBTyxFQUFFLGlCQUFpQixFQUE4QixNQUFNLGFBQWEsQ0FBQztBQUM1RSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNuRixPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RixPQUFPLEVBQ0wseUJBQXlCLEVBQ3pCLGtDQUFrQyxFQUNsQyw4QkFBOEIsRUFDOUIseUJBQXlCLEdBQzFCLE1BQU0sd0NBQXdDLENBQUM7O0FBSXpDLElBQU0sc0JBQXNCLEdBQTVCLE1BQU0sc0JBQXNCO0lBR2hCLFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDbEMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ25DLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFeEMsTUFBTSxDQUFDLENBQWdDO1FBQzVDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN2QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQzVCLENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUM7UUFDckQsSUFBSSxDQUFDLGtDQUFrQyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDbkQsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsTUFBTSxPQUFPLEdBQUcsOEJBQThCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQUcseUJBQXlCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFckQsSUFBSSxDQUFDO1lBQ0gsTUFBTSxNQUFNLEdBQUcsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRTtnQkFDL0MsSUFBSSxFQUFFLDBCQUEwQjthQUNqQyxDQUFDLENBQUM7WUFFSCxNQUFNLENBQUMsU0FBUyxHQUFHLENBQUMsS0FBK0MsRUFBRSxFQUFFO2dCQUNyRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLG9DQUFvQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQy9FLENBQUMsQ0FBQztZQUNGLE1BQU0sQ0FBQyxPQUFPLEdBQUcsR0FBRyxFQUFFO2dCQUNwQixJQUFJLENBQUMsNkJBQTZCLENBQUMsSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQyxDQUFDO1lBQ3BGLENBQUMsQ0FBQztZQUNGLE1BQU0sQ0FBQyxjQUFjLEdBQUcsR0FBRyxFQUFFO2dCQUMzQixJQUFJLENBQUMsNkJBQTZCLENBQ2hDLElBQUksS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQzlELENBQUM7WUFDSixDQUFDLENBQUM7WUFFRixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7WUFDbEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1lBRTVCLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YseUJBQXlCLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNyRCxJQUFJLENBQUMsY0FBYyxDQUNqQixLQUFLLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQ3ZGLENBQUM7WUFFRixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDO0lBRU8sY0FBYyxDQUFDLEtBQVk7UUFDakMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSw4QkFBOEIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFTyw2QkFBNkIsQ0FBQyxLQUFZO1FBQ2hELElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksbUNBQW1DLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN6RSxDQUFDO3dHQTdEVSxzQkFBc0I7NEdBQXRCLHNCQUFzQjs7QUFBdEIsc0JBQXNCO0lBRGxDLGtCQUFrQixDQUFDLDZCQUE2QixDQUFDO0dBQ3JDLHNCQUFzQixDQThEbEM7OzRGQTlEWSxzQkFBc0I7a0JBRmxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJyb3dzZXJTZXJ2aWNlIH0gZnJvbSAnQGZvYmxleC9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRGlzYWJsZUNvbm5lY3Rpb25Xb3JrZXJSZXF1ZXN0IH0gZnJvbSAnLi4vZGlzYWJsZS1jb25uZWN0aW9uLXdvcmtlcic7XG5pbXBvcnQgeyBIYW5kbGVDb25uZWN0aW9uV29ya2VyTWVzc2FnZVJlcXVlc3QgfSBmcm9tICcuLi9oYW5kbGUtY29ubmVjdGlvbi13b3JrZXItbWVzc2FnZSc7XG5pbXBvcnQgeyBGQ29ubmVjdGlvbldvcmtlciwgSUZDb25uZWN0aW9uV29ya2VyUmVzcG9uc2UgfSBmcm9tICcuLi8uLi9tb2RlbCc7XG5pbXBvcnQgeyBFbnN1cmVDb25uZWN0aW9uV29ya2VyUmVxdWVzdCB9IGZyb20gJy4vZW5zdXJlLWNvbm5lY3Rpb24td29ya2VyLXJlcXVlc3QnO1xuaW1wb3J0IHsgUmVzZXRDb25uZWN0aW9uV29ya2VyUnVudGltZVJlcXVlc3QgfSBmcm9tICcuLi9yZXNldC1jb25uZWN0aW9uLXdvcmtlci1ydW50aW1lJztcbmltcG9ydCB7XG4gIGNyZWF0ZUNvbm5lY3Rpb25Xb3JrZXJVcmwsXG4gIGlzQ29ubmVjdGlvbldvcmtlclJ1bnRpbWVTdXBwb3J0ZWQsXG4gIHJlc29sdmVDb25uZWN0aW9uV29ya2VyUnVudGltZSxcbiAgcmV2b2tlQ29ubmVjdGlvbldvcmtlclVybCxcbn0gZnJvbSAnLi4vLi4vd29ya2VyL2Nvbm5lY3Rpb24td29ya2VyLXJ1bnRpbWUnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEVuc3VyZUNvbm5lY3Rpb25Xb3JrZXJSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEVuc3VyZUNvbm5lY3Rpb25Xb3JrZXJcbiAgaW1wbGVtZW50cyBJRXhlY3V0aW9uPEVuc3VyZUNvbm5lY3Rpb25Xb3JrZXJSZXF1ZXN0LCBXb3JrZXIgfCBudWxsPlxue1xuICBwcml2YXRlIHJlYWRvbmx5IF9icm93c2VyID0gaW5qZWN0KEJyb3dzZXJTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RhdGUgPSBpbmplY3QoRkNvbm5lY3Rpb25Xb3JrZXIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuXG4gIHB1YmxpYyBoYW5kbGUoXzogRW5zdXJlQ29ubmVjdGlvbldvcmtlclJlcXVlc3QpOiBXb3JrZXIgfCBudWxsIHtcbiAgICBpZiAodGhpcy5fc3RhdGUud29ya2VyKSB7XG4gICAgICByZXR1cm4gdGhpcy5fc3RhdGUud29ya2VyO1xuICAgIH1cblxuICAgIGNvbnN0IHdpbmRvd1JlZiA9IHRoaXMuX2Jyb3dzZXIuZG9jdW1lbnQuZGVmYXVsdFZpZXc7XG4gICAgaWYgKCFpc0Nvbm5lY3Rpb25Xb3JrZXJSdW50aW1lU3VwcG9ydGVkKHdpbmRvd1JlZikpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IHJ1bnRpbWUgPSByZXNvbHZlQ29ubmVjdGlvbldvcmtlclJ1bnRpbWUod2luZG93UmVmKTtcbiAgICBpZiAoIXJ1bnRpbWUpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IHdvcmtlclVybCA9IGNyZWF0ZUNvbm5lY3Rpb25Xb3JrZXJVcmwocnVudGltZSk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3Qgd29ya2VyID0gbmV3IHJ1bnRpbWUud29ya2VyQ3Rvcih3b3JrZXJVcmwsIHtcbiAgICAgICAgbmFtZTogJ2YtZmxvdy1jb25uZWN0aW9uLXdvcmtlcicsXG4gICAgICB9KTtcblxuICAgICAgd29ya2VyLm9ubWVzc2FnZSA9IChldmVudDogTWVzc2FnZUV2ZW50PElGQ29ubmVjdGlvbldvcmtlclJlc3BvbnNlPikgPT4ge1xuICAgICAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBIYW5kbGVDb25uZWN0aW9uV29ya2VyTWVzc2FnZVJlcXVlc3QoZXZlbnQuZGF0YSkpO1xuICAgICAgfTtcbiAgICAgIHdvcmtlci5vbmVycm9yID0gKCkgPT4ge1xuICAgICAgICB0aGlzLl9yZXNldFdvcmtlckFmdGVyUnVudGltZUVycm9yKG5ldyBFcnJvcignQ29ubmVjdGlvbiB3b3JrZXIgcnVudGltZSBlcnJvci4nKSk7XG4gICAgICB9O1xuICAgICAgd29ya2VyLm9ubWVzc2FnZWVycm9yID0gKCkgPT4ge1xuICAgICAgICB0aGlzLl9yZXNldFdvcmtlckFmdGVyUnVudGltZUVycm9yKFxuICAgICAgICAgIG5ldyBFcnJvcignQ29ubmVjdGlvbiB3b3JrZXIgbWVzc2FnZSBkZXNlcmlhbGl6YXRpb24gZXJyb3IuJyksXG4gICAgICAgICk7XG4gICAgICB9O1xuXG4gICAgICB0aGlzLl9zdGF0ZS53b3JrZXJVcmwgPSB3b3JrZXJVcmw7XG4gICAgICB0aGlzLl9zdGF0ZS53b3JrZXIgPSB3b3JrZXI7XG5cbiAgICAgIHJldHVybiB3b3JrZXI7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHJldm9rZUNvbm5lY3Rpb25Xb3JrZXJVcmwod29ya2VyVXJsLCBydW50aW1lLnVybEFwaSk7XG4gICAgICB0aGlzLl9kaXNhYmxlV29ya2VyKFxuICAgICAgICBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IgOiBuZXcgRXJyb3IoJ0Nvbm5lY3Rpb24gd29ya2VyIGluaXRpYWxpemF0aW9uIGZhaWxlZC4nKSxcbiAgICAgICk7XG5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2Rpc2FibGVXb3JrZXIoZXJyb3I6IEVycm9yKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgRGlzYWJsZUNvbm5lY3Rpb25Xb3JrZXJSZXF1ZXN0KGVycm9yKSk7XG4gIH1cblxuICBwcml2YXRlIF9yZXNldFdvcmtlckFmdGVyUnVudGltZUVycm9yKGVycm9yOiBFcnJvcik6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IFJlc2V0Q29ubmVjdGlvbldvcmtlclJ1bnRpbWVSZXF1ZXN0KGVycm9yKSk7XG4gIH1cbn1cbiJdfQ==
@@ -4,6 +4,7 @@ import { BrowserService } from '@foblex/platform';
4
4
  import { FExecutionRegister } from '@foblex/mediator';
5
5
  import { FConnectionWorker } from '../../model';
6
6
  import { IsConnectionWorkerEnabledRequest } from './is-connection-worker-enabled-request';
7
+ import { isConnectionWorkerRuntimeSupported } from '../../worker/connection-worker-runtime';
7
8
  import * as i0 from "@angular/core";
8
9
  let IsConnectionWorkerEnabled = class IsConnectionWorkerEnabled {
9
10
  _browser = inject(BrowserService);
@@ -16,7 +17,7 @@ let IsConnectionWorkerEnabled = class IsConnectionWorkerEnabled {
16
17
  return false;
17
18
  }
18
19
  const windowRef = this._browser.document.defaultView;
19
- return !!windowRef?.Worker;
20
+ return isConnectionWorkerRuntimeSupported(windowRef);
20
21
  }
21
22
  _isWorkerAvailable() {
22
23
  return this._browser.isBrowser();
@@ -31,4 +32,4 @@ export { IsConnectionWorkerEnabled };
31
32
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IsConnectionWorkerEnabled, decorators: [{
32
33
  type: Injectable
33
34
  }] });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY29ubmVjdGlvbi13b3JrZXItZW5hYmxlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXdvcmtlci9mZWF0dXJlcy9pcy1jb25uZWN0aW9uLXdvcmtlci1lbmFibGVkL2lzLWNvbm5lY3Rpb24td29ya2VyLWVuYWJsZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDaEQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7O0FBSW5GLElBQU0seUJBQXlCLEdBQS9CLE1BQU0seUJBQXlCO0lBSW5CLFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDbEMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBRTdDLE1BQU0sQ0FBQyxDQUFtQztRQUMvQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDM0IsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLENBQUM7WUFDL0IsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDO1FBRXJELE9BQU8sQ0FBQyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUM7SUFDN0IsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkMsQ0FBQzt3R0F2QlUseUJBQXlCOzRHQUF6Qix5QkFBeUI7O0FBQXpCLHlCQUF5QjtJQURyQyxrQkFBa0IsQ0FBQyxnQ0FBZ0MsQ0FBQztHQUN4Qyx5QkFBeUIsQ0F3QnJDOzs0RkF4QlkseUJBQXlCO2tCQUZyQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCcm93c2VyU2VydmljZSB9IGZyb20gJ0Bmb2JsZXgvcGxhdGZvcm0nO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBGQ29ubmVjdGlvbldvcmtlciB9IGZyb20gJy4uLy4uL21vZGVsJztcbmltcG9ydCB7IElzQ29ubmVjdGlvbldvcmtlckVuYWJsZWRSZXF1ZXN0IH0gZnJvbSAnLi9pcy1jb25uZWN0aW9uLXdvcmtlci1lbmFibGVkLXJlcXVlc3QnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKElzQ29ubmVjdGlvbldvcmtlckVuYWJsZWRSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIElzQ29ubmVjdGlvbldvcmtlckVuYWJsZWQgaW1wbGVtZW50cyBJRXhlY3V0aW9uPFxuICBJc0Nvbm5lY3Rpb25Xb3JrZXJFbmFibGVkUmVxdWVzdCxcbiAgYm9vbGVhblxuPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Jyb3dzZXIgPSBpbmplY3QoQnJvd3NlclNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdGF0ZSA9IGluamVjdChGQ29ubmVjdGlvbldvcmtlcik7XG5cbiAgcHVibGljIGhhbmRsZShfOiBJc0Nvbm5lY3Rpb25Xb3JrZXJFbmFibGVkUmVxdWVzdCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLl9zdGF0ZS5pc0Rpc2FibGVkKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLl9pc1dvcmtlckF2YWlsYWJsZSgpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29uc3Qgd2luZG93UmVmID0gdGhpcy5fYnJvd3Nlci5kb2N1bWVudC5kZWZhdWx0VmlldztcblxuICAgIHJldHVybiAhIXdpbmRvd1JlZj8uV29ya2VyO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNXb3JrZXJBdmFpbGFibGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Jyb3dzZXIuaXNCcm93c2VyKCk7XG4gIH1cbn1cbiJdfQ==
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY29ubmVjdGlvbi13b3JrZXItZW5hYmxlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXdvcmtlci9mZWF0dXJlcy9pcy1jb25uZWN0aW9uLXdvcmtlci1lbmFibGVkL2lzLWNvbm5lY3Rpb24td29ya2VyLWVuYWJsZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDaEQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDMUYsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7O0FBSXJGLElBQU0seUJBQXlCLEdBQS9CLE1BQU0seUJBQXlCO0lBR25CLFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDbEMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBRTdDLE1BQU0sQ0FBQyxDQUFtQztRQUMvQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDM0IsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLENBQUM7WUFDL0IsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDO1FBRXJELE9BQU8sa0NBQWtDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkMsQ0FBQzt3R0F0QlUseUJBQXlCOzRHQUF6Qix5QkFBeUI7O0FBQXpCLHlCQUF5QjtJQURyQyxrQkFBa0IsQ0FBQyxnQ0FBZ0MsQ0FBQztHQUN4Qyx5QkFBeUIsQ0F1QnJDOzs0RkF2QlkseUJBQXlCO2tCQUZyQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCcm93c2VyU2VydmljZSB9IGZyb20gJ0Bmb2JsZXgvcGxhdGZvcm0nO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBGQ29ubmVjdGlvbldvcmtlciB9IGZyb20gJy4uLy4uL21vZGVsJztcbmltcG9ydCB7IElzQ29ubmVjdGlvbldvcmtlckVuYWJsZWRSZXF1ZXN0IH0gZnJvbSAnLi9pcy1jb25uZWN0aW9uLXdvcmtlci1lbmFibGVkLXJlcXVlc3QnO1xuaW1wb3J0IHsgaXNDb25uZWN0aW9uV29ya2VyUnVudGltZVN1cHBvcnRlZCB9IGZyb20gJy4uLy4uL3dvcmtlci9jb25uZWN0aW9uLXdvcmtlci1ydW50aW1lJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihJc0Nvbm5lY3Rpb25Xb3JrZXJFbmFibGVkUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBJc0Nvbm5lY3Rpb25Xb3JrZXJFbmFibGVkXG4gIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxJc0Nvbm5lY3Rpb25Xb3JrZXJFbmFibGVkUmVxdWVzdCwgYm9vbGVhbj5cbntcbiAgcHJpdmF0ZSByZWFkb25seSBfYnJvd3NlciA9IGluamVjdChCcm93c2VyU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0YXRlID0gaW5qZWN0KEZDb25uZWN0aW9uV29ya2VyKTtcblxuICBwdWJsaWMgaGFuZGxlKF86IElzQ29ubmVjdGlvbldvcmtlckVuYWJsZWRSZXF1ZXN0KTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuX3N0YXRlLmlzRGlzYWJsZWQpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuX2lzV29ya2VyQXZhaWxhYmxlKCkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCB3aW5kb3dSZWYgPSB0aGlzLl9icm93c2VyLmRvY3VtZW50LmRlZmF1bHRWaWV3O1xuXG4gICAgcmV0dXJuIGlzQ29ubmVjdGlvbldvcmtlclJ1bnRpbWVTdXBwb3J0ZWQod2luZG93UmVmKTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzV29ya2VyQXZhaWxhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9icm93c2VyLmlzQnJvd3NlcigpO1xuICB9XG59XG4iXX0=
@@ -1,7 +1,9 @@
1
1
  import { Injectable } from '@angular/core';
2
+ import { revokeConnectionWorkerUrl } from '../worker/connection-worker-runtime';
2
3
  import * as i0 from "@angular/core";
3
4
  export class FConnectionWorker {
4
5
  worker = null;
6
+ workerUrl = null;
5
7
  nextRequestId = 0;
6
8
  isDisabled = false;
7
9
  pending = new Map();
@@ -10,6 +12,8 @@ export class FConnectionWorker {
10
12
  this.pending.clear();
11
13
  this.worker?.terminate();
12
14
  this.worker = null;
15
+ revokeConnectionWorkerUrl(this.workerUrl);
16
+ this.workerUrl = null;
13
17
  }
14
18
  dispose() {
15
19
  this.resetRuntime(new Error('Connection worker was destroyed.'));
@@ -20,4 +24,4 @@ export class FConnectionWorker {
20
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionWorker, decorators: [{
21
25
  type: Injectable
22
26
  }] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXdvcmtlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXdvcmtlci9tb2RlbC9mLWNvbm5lY3Rpb24td29ya2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSTNDLE1BQU0sT0FBTyxpQkFBaUI7SUFDckIsTUFBTSxHQUFrQixJQUFJLENBQUM7SUFFN0IsYUFBYSxHQUFHLENBQUMsQ0FBQztJQUNsQixVQUFVLEdBQUcsS0FBSyxDQUFDO0lBRVYsT0FBTyxHQUFHLElBQUksR0FBRyxFQUE0QyxDQUFDO0lBRXZFLFlBQVksQ0FBQyxLQUFZO1FBQzlCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUVyQixJQUFJLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxPQUFPO1FBQ1osSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQzt3R0FsQlUsaUJBQWlCOzRHQUFqQixpQkFBaUI7OzRGQUFqQixpQkFBaUI7a0JBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBURkNvbm5lY3Rpb25Xb3JrZXJQZW5kaW5nUmVxdWVzdCB9IGZyb20gJy4vdC1mLWNvbm5lY3Rpb24td29ya2VyLXBlbmRpbmctcmVxdWVzdCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGQ29ubmVjdGlvbldvcmtlciB7XG4gIHB1YmxpYyB3b3JrZXI6IFdvcmtlciB8IG51bGwgPSBudWxsO1xuXG4gIHB1YmxpYyBuZXh0UmVxdWVzdElkID0gMDtcbiAgcHVibGljIGlzRGlzYWJsZWQgPSBmYWxzZTtcblxuICBwdWJsaWMgcmVhZG9ubHkgcGVuZGluZyA9IG5ldyBNYXA8bnVtYmVyLCBURkNvbm5lY3Rpb25Xb3JrZXJQZW5kaW5nUmVxdWVzdD4oKTtcblxuICBwdWJsaWMgcmVzZXRSdW50aW1lKGVycm9yOiBFcnJvcik6IHZvaWQge1xuICAgIHRoaXMucGVuZGluZy5mb3JFYWNoKChyZXF1ZXN0KSA9PiByZXF1ZXN0LnJlamVjdChlcnJvcikpO1xuICAgIHRoaXMucGVuZGluZy5jbGVhcigpO1xuXG4gICAgdGhpcy53b3JrZXI/LnRlcm1pbmF0ZSgpO1xuICAgIHRoaXMud29ya2VyID0gbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBkaXNwb3NlKCk6IHZvaWQge1xuICAgIHRoaXMucmVzZXRSdW50aW1lKG5ldyBFcnJvcignQ29ubmVjdGlvbiB3b3JrZXIgd2FzIGRlc3Ryb3llZC4nKSk7XG4gIH1cbn1cbiJdfQ==
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXdvcmtlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXdvcmtlci9tb2RlbC9mLWNvbm5lY3Rpb24td29ya2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0scUNBQXFDLENBQUM7O0FBR2hGLE1BQU0sT0FBTyxpQkFBaUI7SUFDckIsTUFBTSxHQUFrQixJQUFJLENBQUM7SUFDN0IsU0FBUyxHQUFrQixJQUFJLENBQUM7SUFFaEMsYUFBYSxHQUFHLENBQUMsQ0FBQztJQUNsQixVQUFVLEdBQUcsS0FBSyxDQUFDO0lBRVYsT0FBTyxHQUFHLElBQUksR0FBRyxFQUE0QyxDQUFDO0lBRXZFLFlBQVksQ0FBQyxLQUFZO1FBQzlCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUVyQixJQUFJLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBRW5CLHlCQUF5QixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztJQUN4QixDQUFDO0lBRU0sT0FBTztRQUNaLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7d0dBdEJVLGlCQUFpQjs0R0FBakIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVEZDb25uZWN0aW9uV29ya2VyUGVuZGluZ1JlcXVlc3QgfSBmcm9tICcuL3QtZi1jb25uZWN0aW9uLXdvcmtlci1wZW5kaW5nLXJlcXVlc3QnO1xuaW1wb3J0IHsgcmV2b2tlQ29ubmVjdGlvbldvcmtlclVybCB9IGZyb20gJy4uL3dvcmtlci9jb25uZWN0aW9uLXdvcmtlci1ydW50aW1lJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEZDb25uZWN0aW9uV29ya2VyIHtcbiAgcHVibGljIHdvcmtlcjogV29ya2VyIHwgbnVsbCA9IG51bGw7XG4gIHB1YmxpYyB3b3JrZXJVcmw6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIHB1YmxpYyBuZXh0UmVxdWVzdElkID0gMDtcbiAgcHVibGljIGlzRGlzYWJsZWQgPSBmYWxzZTtcblxuICBwdWJsaWMgcmVhZG9ubHkgcGVuZGluZyA9IG5ldyBNYXA8bnVtYmVyLCBURkNvbm5lY3Rpb25Xb3JrZXJQZW5kaW5nUmVxdWVzdD4oKTtcblxuICBwdWJsaWMgcmVzZXRSdW50aW1lKGVycm9yOiBFcnJvcik6IHZvaWQge1xuICAgIHRoaXMucGVuZGluZy5mb3JFYWNoKChyZXF1ZXN0KSA9PiByZXF1ZXN0LnJlamVjdChlcnJvcikpO1xuICAgIHRoaXMucGVuZGluZy5jbGVhcigpO1xuXG4gICAgdGhpcy53b3JrZXI/LnRlcm1pbmF0ZSgpO1xuICAgIHRoaXMud29ya2VyID0gbnVsbDtcblxuICAgIHJldm9rZUNvbm5lY3Rpb25Xb3JrZXJVcmwodGhpcy53b3JrZXJVcmwpO1xuICAgIHRoaXMud29ya2VyVXJsID0gbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBkaXNwb3NlKCk6IHZvaWQge1xuICAgIHRoaXMucmVzZXRSdW50aW1lKG5ldyBFcnJvcignQ29ubmVjdGlvbiB3b3JrZXIgd2FzIGRlc3Ryb3llZC4nKSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,235 @@
1
+ const F_CONNECTION_WORKER_SOURCE = String.raw `
2
+ const EPSILON = 0.5;
3
+
4
+ addEventListener('message', (event) => {
5
+ const data = event?.data;
6
+ const requestId = data?.requestId;
7
+ const items = Array.isArray(data?.items) ? data.items : [];
8
+
9
+ try {
10
+ const results = items.map((item) => calculateItem(item));
11
+ postMessage({ requestId, results });
12
+ } catch (error) {
13
+ const message = error instanceof Error ? error.message : 'Connection worker failed.';
14
+ postMessage({ requestId, error: message });
15
+ }
16
+ });
17
+
18
+ function calculateItem(item) {
19
+ const sourceCenterX = item.sourceRect.x + item.sourceRect.width / 2;
20
+ const sourceCenterY = item.sourceRect.y + item.sourceRect.height / 2;
21
+ const targetCenterX = item.targetRect.x + item.targetRect.width / 2;
22
+ const targetCenterY = item.targetRect.y + item.targetRect.height / 2;
23
+
24
+ const sourceSide = resolveConnectableSide(
25
+ item.outputSide,
26
+ targetCenterX - sourceCenterX,
27
+ targetCenterY - sourceCenterY,
28
+ item.sourceConnectableSide,
29
+ );
30
+
31
+ const targetSide = resolveConnectableSide(
32
+ item.inputSide,
33
+ sourceCenterX - targetCenterX,
34
+ sourceCenterY - targetCenterY,
35
+ item.targetConnectableSide,
36
+ );
37
+
38
+ if (item.behavior === 'fixed_center') {
39
+ return {
40
+ originalIndex: item.originalIndex,
41
+ supported: true,
42
+ sourceSide,
43
+ targetSide,
44
+ line: {
45
+ point1: { x: sourceCenterX, y: sourceCenterY },
46
+ point2: { x: targetCenterX, y: targetCenterY },
47
+ },
48
+ };
49
+ }
50
+
51
+ if (item.behavior !== 'fixed') {
52
+ if (item.behavior !== 'floating') {
53
+ return { originalIndex: item.originalIndex, supported: false };
54
+ }
55
+
56
+ return {
57
+ originalIndex: item.originalIndex,
58
+ supported: true,
59
+ sourceSide,
60
+ targetSide,
61
+ line: buildFloatingLine(item.sourceRect, item.targetRect),
62
+ };
63
+ }
64
+
65
+ const line = buildFixedLine(item.sourceRect, item.targetRect, sourceSide, targetSide);
66
+ if (!line) {
67
+ return { originalIndex: item.originalIndex, supported: false };
68
+ }
69
+
70
+ return {
71
+ originalIndex: item.originalIndex,
72
+ supported: true,
73
+ sourceSide,
74
+ targetSide,
75
+ line,
76
+ };
77
+ }
78
+
79
+ function resolveConnectableSide(requestedSide, deltaX, deltaY, fallbackSide) {
80
+ if (requestedSide === 'default') {
81
+ return fallbackSide;
82
+ }
83
+
84
+ const absX = Math.abs(deltaX);
85
+ const absY = Math.abs(deltaY);
86
+ const nearZero = absX < EPSILON && absY < EPSILON;
87
+
88
+ if (nearZero) {
89
+ return fallbackSide;
90
+ }
91
+
92
+ const horizontalDominant = absX >= absY;
93
+
94
+ switch (requestedSide) {
95
+ case 'calculate':
96
+ return horizontalDominant ? (deltaX >= 0 ? 'right' : 'left') : deltaY >= 0 ? 'bottom' : 'top';
97
+
98
+ case 'calculate_horizontal':
99
+ if (absX < EPSILON) {
100
+ return fallbackSide;
101
+ }
102
+
103
+ return deltaX >= 0 ? 'right' : 'left';
104
+
105
+ case 'calculate_vertical':
106
+ if (absY < EPSILON) {
107
+ return fallbackSide;
108
+ }
109
+
110
+ return deltaY >= 0 ? 'bottom' : 'top';
111
+
112
+ case 'top':
113
+ case 'bottom':
114
+ case 'left':
115
+ case 'right':
116
+ return requestedSide;
117
+
118
+ default:
119
+ return fallbackSide;
120
+ }
121
+ }
122
+
123
+ function buildFixedLine(sourceRect, targetRect, sourceSide, targetSide) {
124
+ const sourceAnchor = sourceSide === 'auto' ? 'bottom' : sourceSide;
125
+ const targetAnchor = targetSide === 'auto' ? 'top' : targetSide;
126
+
127
+ const point1 = getSidePoint(sourceRect, sourceAnchor);
128
+ const point2 = getSidePoint(targetRect, targetAnchor);
129
+
130
+ if (!point1 || !point2) {
131
+ return null;
132
+ }
133
+
134
+ return { point1, point2 };
135
+ }
136
+
137
+ function buildFloatingLine(sourceRect, targetRect) {
138
+ const sourceCenter = getRectCenter(sourceRect);
139
+ const targetCenter = getRectCenter(targetRect);
140
+
141
+ return {
142
+ point1: getRectBorderIntersection(sourceRect, sourceCenter, targetCenter),
143
+ point2: getRectBorderIntersection(targetRect, targetCenter, sourceCenter),
144
+ };
145
+ }
146
+
147
+ function getRectCenter(rect) {
148
+ return {
149
+ x: rect.x + rect.width / 2,
150
+ y: rect.y + rect.height / 2,
151
+ };
152
+ }
153
+
154
+ function getRectBorderIntersection(rect, from, to) {
155
+ const halfWidth = rect.width / 2;
156
+ const halfHeight = rect.height / 2;
157
+ const center = getRectCenter(rect);
158
+
159
+ const dx = to.x - from.x;
160
+ const dy = to.y - from.y;
161
+
162
+ if (Math.abs(dx) < EPSILON && Math.abs(dy) < EPSILON) {
163
+ return center;
164
+ }
165
+
166
+ const scaleX = Math.abs(dx) < EPSILON ? Number.POSITIVE_INFINITY : halfWidth / Math.abs(dx);
167
+ const scaleY = Math.abs(dy) < EPSILON ? Number.POSITIVE_INFINITY : halfHeight / Math.abs(dy);
168
+ const scale = Math.min(scaleX, scaleY);
169
+
170
+ return {
171
+ x: center.x + dx * scale,
172
+ y: center.y + dy * scale,
173
+ };
174
+ }
175
+
176
+ function getSidePoint(rect, side) {
177
+ const centerX = rect.x + rect.width / 2;
178
+ const centerY = rect.y + rect.height / 2;
179
+
180
+ switch (side) {
181
+ case 'top':
182
+ return { x: centerX, y: rect.y };
183
+
184
+ case 'right':
185
+ return { x: rect.x + rect.width, y: centerY };
186
+
187
+ case 'bottom':
188
+ return { x: centerX, y: rect.y + rect.height };
189
+
190
+ case 'left':
191
+ return { x: rect.x, y: centerY };
192
+
193
+ default:
194
+ return null;
195
+ }
196
+ }
197
+ `.trim();
198
+ export function isConnectionWorkerRuntimeSupported(windowRef) {
199
+ return !!resolveConnectionWorkerRuntime(windowRef);
200
+ }
201
+ export function resolveConnectionWorkerRuntime(windowRef) {
202
+ const runtimeWindow = windowRef;
203
+ const blobCtor = runtimeWindow?.Blob;
204
+ const workerCtor = runtimeWindow?.Worker;
205
+ const urlApi = runtimeWindow?.URL;
206
+ if (!blobCtor || !workerCtor) {
207
+ return null;
208
+ }
209
+ if (typeof urlApi?.createObjectURL !== 'function' ||
210
+ typeof urlApi.revokeObjectURL !== 'function') {
211
+ return null;
212
+ }
213
+ return {
214
+ blobCtor,
215
+ workerCtor,
216
+ urlApi,
217
+ };
218
+ }
219
+ export function createConnectionWorkerUrl(runtime) {
220
+ const blob = new runtime.blobCtor([F_CONNECTION_WORKER_SOURCE], {
221
+ type: 'text/javascript',
222
+ });
223
+ return runtime.urlApi.createObjectURL(blob);
224
+ }
225
+ export function revokeConnectionWorkerUrl(workerUrl, urlApi) {
226
+ if (!workerUrl) {
227
+ return;
228
+ }
229
+ const resolvedUrlApi = urlApi ?? (typeof URL === 'undefined' ? null : URL);
230
+ if (typeof resolvedUrlApi?.revokeObjectURL !== 'function') {
231
+ return;
232
+ }
233
+ resolvedUrlApi.revokeObjectURL(workerUrl);
234
+ }
235
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi13b3JrZXItcnVudGltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXdvcmtlci93b3JrZXIvY29ubmVjdGlvbi13b3JrZXItcnVudGltZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxNQUFNLDBCQUEwQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FvTTVDLENBQUMsSUFBSSxFQUFFLENBQUM7QUFFVCxNQUFNLFVBQVUsa0NBQWtDLENBQUMsU0FBb0M7SUFDckYsT0FBTyxDQUFDLENBQUMsOEJBQThCLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDckQsQ0FBQztBQUVELE1BQU0sVUFBVSw4QkFBOEIsQ0FDNUMsU0FBb0M7SUFFcEMsTUFBTSxhQUFhLEdBQUcsU0FBbUUsQ0FBQztJQUMxRixNQUFNLFFBQVEsR0FBRyxhQUFhLEVBQUUsSUFBSSxDQUFDO0lBQ3JDLE1BQU0sVUFBVSxHQUFHLGFBQWEsRUFBRSxNQUFNLENBQUM7SUFDekMsTUFBTSxNQUFNLEdBQUcsYUFBYSxFQUFFLEdBQUcsQ0FBQztJQUNsQyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDN0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsSUFDRSxPQUFPLE1BQU0sRUFBRSxlQUFlLEtBQUssVUFBVTtRQUM3QyxPQUFPLE1BQU0sQ0FBQyxlQUFlLEtBQUssVUFBVSxFQUM1QyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsT0FBTztRQUNMLFFBQVE7UUFDUixVQUFVO1FBQ1YsTUFBTTtLQUNQLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLHlCQUF5QixDQUFDLE9BQWlDO0lBQ3pFLE1BQU0sSUFBSSxHQUFHLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLDBCQUEwQixDQUFDLEVBQUU7UUFDOUQsSUFBSSxFQUFFLGlCQUFpQjtLQUN4QixDQUFDLENBQUM7SUFFSCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQzlDLENBQUM7QUFFRCxNQUFNLFVBQVUseUJBQXlCLENBQ3ZDLFNBQW9DLEVBQ3BDLE1BQW1EO0lBRW5ELElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNmLE9BQU87SUFDVCxDQUFDO0lBRUQsTUFBTSxjQUFjLEdBQUcsTUFBTSxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNFLElBQUksT0FBTyxjQUFjLEVBQUUsZUFBZSxLQUFLLFVBQVUsRUFBRSxDQUFDO1FBQzFELE9BQU87SUFDVCxDQUFDO0lBRUQsY0FBYyxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUM1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsidHlwZSBUQ29ubmVjdGlvbldvcmtlclVybEFwaSA9IFBpY2s8dHlwZW9mIFVSTCwgJ2NyZWF0ZU9iamVjdFVSTCcgfCAncmV2b2tlT2JqZWN0VVJMJz47XG5cbnR5cGUgVENvbm5lY3Rpb25Xb3JrZXJSdW50aW1lID0ge1xuICBibG9iQ3RvcjogdHlwZW9mIEJsb2I7XG4gIHdvcmtlckN0b3I6IHR5cGVvZiBXb3JrZXI7XG4gIHVybEFwaTogVENvbm5lY3Rpb25Xb3JrZXJVcmxBcGk7XG59O1xuXG5jb25zdCBGX0NPTk5FQ1RJT05fV09SS0VSX1NPVVJDRSA9IFN0cmluZy5yYXdgXG5jb25zdCBFUFNJTE9OID0gMC41O1xuXG5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgKGV2ZW50KSA9PiB7XG4gIGNvbnN0IGRhdGEgPSBldmVudD8uZGF0YTtcbiAgY29uc3QgcmVxdWVzdElkID0gZGF0YT8ucmVxdWVzdElkO1xuICBjb25zdCBpdGVtcyA9IEFycmF5LmlzQXJyYXkoZGF0YT8uaXRlbXMpID8gZGF0YS5pdGVtcyA6IFtdO1xuXG4gIHRyeSB7XG4gICAgY29uc3QgcmVzdWx0cyA9IGl0ZW1zLm1hcCgoaXRlbSkgPT4gY2FsY3VsYXRlSXRlbShpdGVtKSk7XG4gICAgcG9zdE1lc3NhZ2UoeyByZXF1ZXN0SWQsIHJlc3VsdHMgfSk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc3QgbWVzc2FnZSA9IGVycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogJ0Nvbm5lY3Rpb24gd29ya2VyIGZhaWxlZC4nO1xuICAgIHBvc3RNZXNzYWdlKHsgcmVxdWVzdElkLCBlcnJvcjogbWVzc2FnZSB9KTtcbiAgfVxufSk7XG5cbmZ1bmN0aW9uIGNhbGN1bGF0ZUl0ZW0oaXRlbSkge1xuICBjb25zdCBzb3VyY2VDZW50ZXJYID0gaXRlbS5zb3VyY2VSZWN0LnggKyBpdGVtLnNvdXJjZVJlY3Qud2lkdGggLyAyO1xuICBjb25zdCBzb3VyY2VDZW50ZXJZID0gaXRlbS5zb3VyY2VSZWN0LnkgKyBpdGVtLnNvdXJjZVJlY3QuaGVpZ2h0IC8gMjtcbiAgY29uc3QgdGFyZ2V0Q2VudGVyWCA9IGl0ZW0udGFyZ2V0UmVjdC54ICsgaXRlbS50YXJnZXRSZWN0LndpZHRoIC8gMjtcbiAgY29uc3QgdGFyZ2V0Q2VudGVyWSA9IGl0ZW0udGFyZ2V0UmVjdC55ICsgaXRlbS50YXJnZXRSZWN0LmhlaWdodCAvIDI7XG5cbiAgY29uc3Qgc291cmNlU2lkZSA9IHJlc29sdmVDb25uZWN0YWJsZVNpZGUoXG4gICAgaXRlbS5vdXRwdXRTaWRlLFxuICAgIHRhcmdldENlbnRlclggLSBzb3VyY2VDZW50ZXJYLFxuICAgIHRhcmdldENlbnRlclkgLSBzb3VyY2VDZW50ZXJZLFxuICAgIGl0ZW0uc291cmNlQ29ubmVjdGFibGVTaWRlLFxuICApO1xuXG4gIGNvbnN0IHRhcmdldFNpZGUgPSByZXNvbHZlQ29ubmVjdGFibGVTaWRlKFxuICAgIGl0ZW0uaW5wdXRTaWRlLFxuICAgIHNvdXJjZUNlbnRlclggLSB0YXJnZXRDZW50ZXJYLFxuICAgIHNvdXJjZUNlbnRlclkgLSB0YXJnZXRDZW50ZXJZLFxuICAgIGl0ZW0udGFyZ2V0Q29ubmVjdGFibGVTaWRlLFxuICApO1xuXG4gIGlmIChpdGVtLmJlaGF2aW9yID09PSAnZml4ZWRfY2VudGVyJykge1xuICAgIHJldHVybiB7XG4gICAgICBvcmlnaW5hbEluZGV4OiBpdGVtLm9yaWdpbmFsSW5kZXgsXG4gICAgICBzdXBwb3J0ZWQ6IHRydWUsXG4gICAgICBzb3VyY2VTaWRlLFxuICAgICAgdGFyZ2V0U2lkZSxcbiAgICAgIGxpbmU6IHtcbiAgICAgICAgcG9pbnQxOiB7IHg6IHNvdXJjZUNlbnRlclgsIHk6IHNvdXJjZUNlbnRlclkgfSxcbiAgICAgICAgcG9pbnQyOiB7IHg6IHRhcmdldENlbnRlclgsIHk6IHRhcmdldENlbnRlclkgfSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIGlmIChpdGVtLmJlaGF2aW9yICE9PSAnZml4ZWQnKSB7XG4gICAgaWYgKGl0ZW0uYmVoYXZpb3IgIT09ICdmbG9hdGluZycpIHtcbiAgICAgIHJldHVybiB7IG9yaWdpbmFsSW5kZXg6IGl0ZW0ub3JpZ2luYWxJbmRleCwgc3VwcG9ydGVkOiBmYWxzZSB9O1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBvcmlnaW5hbEluZGV4OiBpdGVtLm9yaWdpbmFsSW5kZXgsXG4gICAgICBzdXBwb3J0ZWQ6IHRydWUsXG4gICAgICBzb3VyY2VTaWRlLFxuICAgICAgdGFyZ2V0U2lkZSxcbiAgICAgIGxpbmU6IGJ1aWxkRmxvYXRpbmdMaW5lKGl0ZW0uc291cmNlUmVjdCwgaXRlbS50YXJnZXRSZWN0KSxcbiAgICB9O1xuICB9XG5cbiAgY29uc3QgbGluZSA9IGJ1aWxkRml4ZWRMaW5lKGl0ZW0uc291cmNlUmVjdCwgaXRlbS50YXJnZXRSZWN0LCBzb3VyY2VTaWRlLCB0YXJnZXRTaWRlKTtcbiAgaWYgKCFsaW5lKSB7XG4gICAgcmV0dXJuIHsgb3JpZ2luYWxJbmRleDogaXRlbS5vcmlnaW5hbEluZGV4LCBzdXBwb3J0ZWQ6IGZhbHNlIH07XG4gIH1cblxuICByZXR1cm4ge1xuICAgIG9yaWdpbmFsSW5kZXg6IGl0ZW0ub3JpZ2luYWxJbmRleCxcbiAgICBzdXBwb3J0ZWQ6IHRydWUsXG4gICAgc291cmNlU2lkZSxcbiAgICB0YXJnZXRTaWRlLFxuICAgIGxpbmUsXG4gIH07XG59XG5cbmZ1bmN0aW9uIHJlc29sdmVDb25uZWN0YWJsZVNpZGUocmVxdWVzdGVkU2lkZSwgZGVsdGFYLCBkZWx0YVksIGZhbGxiYWNrU2lkZSkge1xuICBpZiAocmVxdWVzdGVkU2lkZSA9PT0gJ2RlZmF1bHQnKSB7XG4gICAgcmV0dXJuIGZhbGxiYWNrU2lkZTtcbiAgfVxuXG4gIGNvbnN0IGFic1ggPSBNYXRoLmFicyhkZWx0YVgpO1xuICBjb25zdCBhYnNZID0gTWF0aC5hYnMoZGVsdGFZKTtcbiAgY29uc3QgbmVhclplcm8gPSBhYnNYIDwgRVBTSUxPTiAmJiBhYnNZIDwgRVBTSUxPTjtcblxuICBpZiAobmVhclplcm8pIHtcbiAgICByZXR1cm4gZmFsbGJhY2tTaWRlO1xuICB9XG5cbiAgY29uc3QgaG9yaXpvbnRhbERvbWluYW50ID0gYWJzWCA+PSBhYnNZO1xuXG4gIHN3aXRjaCAocmVxdWVzdGVkU2lkZSkge1xuICAgIGNhc2UgJ2NhbGN1bGF0ZSc6XG4gICAgICByZXR1cm4gaG9yaXpvbnRhbERvbWluYW50ID8gKGRlbHRhWCA+PSAwID8gJ3JpZ2h0JyA6ICdsZWZ0JykgOiBkZWx0YVkgPj0gMCA/ICdib3R0b20nIDogJ3RvcCc7XG5cbiAgICBjYXNlICdjYWxjdWxhdGVfaG9yaXpvbnRhbCc6XG4gICAgICBpZiAoYWJzWCA8IEVQU0lMT04pIHtcbiAgICAgICAgcmV0dXJuIGZhbGxiYWNrU2lkZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGRlbHRhWCA+PSAwID8gJ3JpZ2h0JyA6ICdsZWZ0JztcblxuICAgIGNhc2UgJ2NhbGN1bGF0ZV92ZXJ0aWNhbCc6XG4gICAgICBpZiAoYWJzWSA8IEVQU0lMT04pIHtcbiAgICAgICAgcmV0dXJuIGZhbGxiYWNrU2lkZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGRlbHRhWSA+PSAwID8gJ2JvdHRvbScgOiAndG9wJztcblxuICAgIGNhc2UgJ3RvcCc6XG4gICAgY2FzZSAnYm90dG9tJzpcbiAgICBjYXNlICdsZWZ0JzpcbiAgICBjYXNlICdyaWdodCc6XG4gICAgICByZXR1cm4gcmVxdWVzdGVkU2lkZTtcblxuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gZmFsbGJhY2tTaWRlO1xuICB9XG59XG5cbmZ1bmN0aW9uIGJ1aWxkRml4ZWRMaW5lKHNvdXJjZVJlY3QsIHRhcmdldFJlY3QsIHNvdXJjZVNpZGUsIHRhcmdldFNpZGUpIHtcbiAgY29uc3Qgc291cmNlQW5jaG9yID0gc291cmNlU2lkZSA9PT0gJ2F1dG8nID8gJ2JvdHRvbScgOiBzb3VyY2VTaWRlO1xuICBjb25zdCB0YXJnZXRBbmNob3IgPSB0YXJnZXRTaWRlID09PSAnYXV0bycgPyAndG9wJyA6IHRhcmdldFNpZGU7XG5cbiAgY29uc3QgcG9pbnQxID0gZ2V0U2lkZVBvaW50KHNvdXJjZVJlY3QsIHNvdXJjZUFuY2hvcik7XG4gIGNvbnN0IHBvaW50MiA9IGdldFNpZGVQb2ludCh0YXJnZXRSZWN0LCB0YXJnZXRBbmNob3IpO1xuXG4gIGlmICghcG9pbnQxIHx8ICFwb2ludDIpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiB7IHBvaW50MSwgcG9pbnQyIH07XG59XG5cbmZ1bmN0aW9uIGJ1aWxkRmxvYXRpbmdMaW5lKHNvdXJjZVJlY3QsIHRhcmdldFJlY3QpIHtcbiAgY29uc3Qgc291cmNlQ2VudGVyID0gZ2V0UmVjdENlbnRlcihzb3VyY2VSZWN0KTtcbiAgY29uc3QgdGFyZ2V0Q2VudGVyID0gZ2V0UmVjdENlbnRlcih0YXJnZXRSZWN0KTtcblxuICByZXR1cm4ge1xuICAgIHBvaW50MTogZ2V0UmVjdEJvcmRlckludGVyc2VjdGlvbihzb3VyY2VSZWN0LCBzb3VyY2VDZW50ZXIsIHRhcmdldENlbnRlciksXG4gICAgcG9pbnQyOiBnZXRSZWN0Qm9yZGVySW50ZXJzZWN0aW9uKHRhcmdldFJlY3QsIHRhcmdldENlbnRlciwgc291cmNlQ2VudGVyKSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0UmVjdENlbnRlcihyZWN0KSB7XG4gIHJldHVybiB7XG4gICAgeDogcmVjdC54ICsgcmVjdC53aWR0aCAvIDIsXG4gICAgeTogcmVjdC55ICsgcmVjdC5oZWlnaHQgLyAyLFxuICB9O1xufVxuXG5mdW5jdGlvbiBnZXRSZWN0Qm9yZGVySW50ZXJzZWN0aW9uKHJlY3QsIGZyb20sIHRvKSB7XG4gIGNvbnN0IGhhbGZXaWR0aCA9IHJlY3Qud2lkdGggLyAyO1xuICBjb25zdCBoYWxmSGVpZ2h0ID0gcmVjdC5oZWlnaHQgLyAyO1xuICBjb25zdCBjZW50ZXIgPSBnZXRSZWN0Q2VudGVyKHJlY3QpO1xuXG4gIGNvbnN0IGR4ID0gdG8ueCAtIGZyb20ueDtcbiAgY29uc3QgZHkgPSB0by55IC0gZnJvbS55O1xuXG4gIGlmIChNYXRoLmFicyhkeCkgPCBFUFNJTE9OICYmIE1hdGguYWJzKGR5KSA8IEVQU0lMT04pIHtcbiAgICByZXR1cm4gY2VudGVyO1xuICB9XG5cbiAgY29uc3Qgc2NhbGVYID0gTWF0aC5hYnMoZHgpIDwgRVBTSUxPTiA/IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA6IGhhbGZXaWR0aCAvIE1hdGguYWJzKGR4KTtcbiAgY29uc3Qgc2NhbGVZID0gTWF0aC5hYnMoZHkpIDwgRVBTSUxPTiA/IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA6IGhhbGZIZWlnaHQgLyBNYXRoLmFicyhkeSk7XG4gIGNvbnN0IHNjYWxlID0gTWF0aC5taW4oc2NhbGVYLCBzY2FsZVkpO1xuXG4gIHJldHVybiB7XG4gICAgeDogY2VudGVyLnggKyBkeCAqIHNjYWxlLFxuICAgIHk6IGNlbnRlci55ICsgZHkgKiBzY2FsZSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0U2lkZVBvaW50KHJlY3QsIHNpZGUpIHtcbiAgY29uc3QgY2VudGVyWCA9IHJlY3QueCArIHJlY3Qud2lkdGggLyAyO1xuICBjb25zdCBjZW50ZXJZID0gcmVjdC55ICsgcmVjdC5oZWlnaHQgLyAyO1xuXG4gIHN3aXRjaCAoc2lkZSkge1xuICAgIGNhc2UgJ3RvcCc6XG4gICAgICByZXR1cm4geyB4OiBjZW50ZXJYLCB5OiByZWN0LnkgfTtcblxuICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgIHJldHVybiB7IHg6IHJlY3QueCArIHJlY3Qud2lkdGgsIHk6IGNlbnRlclkgfTtcblxuICAgIGNhc2UgJ2JvdHRvbSc6XG4gICAgICByZXR1cm4geyB4OiBjZW50ZXJYLCB5OiByZWN0LnkgKyByZWN0LmhlaWdodCB9O1xuXG4gICAgY2FzZSAnbGVmdCc6XG4gICAgICByZXR1cm4geyB4OiByZWN0LngsIHk6IGNlbnRlclkgfTtcblxuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuYC50cmltKCk7XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Nvbm5lY3Rpb25Xb3JrZXJSdW50aW1lU3VwcG9ydGVkKHdpbmRvd1JlZjogV2luZG93IHwgbnVsbCB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xuICByZXR1cm4gISFyZXNvbHZlQ29ubmVjdGlvbldvcmtlclJ1bnRpbWUod2luZG93UmVmKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVDb25uZWN0aW9uV29ya2VyUnVudGltZShcbiAgd2luZG93UmVmOiBXaW5kb3cgfCBudWxsIHwgdW5kZWZpbmVkLFxuKTogVENvbm5lY3Rpb25Xb3JrZXJSdW50aW1lIHwgbnVsbCB7XG4gIGNvbnN0IHJ1bnRpbWVXaW5kb3cgPSB3aW5kb3dSZWYgYXMgUGFydGlhbDxXaW5kb3cgJiB0eXBlb2YgZ2xvYmFsVGhpcz4gfCBudWxsIHwgdW5kZWZpbmVkO1xuICBjb25zdCBibG9iQ3RvciA9IHJ1bnRpbWVXaW5kb3c/LkJsb2I7XG4gIGNvbnN0IHdvcmtlckN0b3IgPSBydW50aW1lV2luZG93Py5Xb3JrZXI7XG4gIGNvbnN0IHVybEFwaSA9IHJ1bnRpbWVXaW5kb3c/LlVSTDtcbiAgaWYgKCFibG9iQ3RvciB8fCAhd29ya2VyQ3Rvcikge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgaWYgKFxuICAgIHR5cGVvZiB1cmxBcGk/LmNyZWF0ZU9iamVjdFVSTCAhPT0gJ2Z1bmN0aW9uJyB8fFxuICAgIHR5cGVvZiB1cmxBcGkucmV2b2tlT2JqZWN0VVJMICE9PSAnZnVuY3Rpb24nXG4gICkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBibG9iQ3RvcixcbiAgICB3b3JrZXJDdG9yLFxuICAgIHVybEFwaSxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUNvbm5lY3Rpb25Xb3JrZXJVcmwocnVudGltZTogVENvbm5lY3Rpb25Xb3JrZXJSdW50aW1lKTogc3RyaW5nIHtcbiAgY29uc3QgYmxvYiA9IG5ldyBydW50aW1lLmJsb2JDdG9yKFtGX0NPTk5FQ1RJT05fV09SS0VSX1NPVVJDRV0sIHtcbiAgICB0eXBlOiAndGV4dC9qYXZhc2NyaXB0JyxcbiAgfSk7XG5cbiAgcmV0dXJuIHJ1bnRpbWUudXJsQXBpLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJldm9rZUNvbm5lY3Rpb25Xb3JrZXJVcmwoXG4gIHdvcmtlclVybDogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCxcbiAgdXJsQXBpPzogUGljazx0eXBlb2YgVVJMLCAncmV2b2tlT2JqZWN0VVJMJz4gfCBudWxsLFxuKTogdm9pZCB7XG4gIGlmICghd29ya2VyVXJsKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgcmVzb2x2ZWRVcmxBcGkgPSB1cmxBcGkgPz8gKHR5cGVvZiBVUkwgPT09ICd1bmRlZmluZWQnID8gbnVsbCA6IFVSTCk7XG4gIGlmICh0eXBlb2YgcmVzb2x2ZWRVcmxBcGk/LnJldm9rZU9iamVjdFVSTCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHJlc29sdmVkVXJsQXBpLnJldm9rZU9iamVjdFVSTCh3b3JrZXJVcmwpO1xufVxuIl19
@@ -18,43 +18,44 @@ import { F_VIRTUAL_FOR_PROVIDERS } from './f-virtual';
18
18
  import * as i0 from "@angular/core";
19
19
  import * as i1 from "./f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-start";
20
20
  import * as i2 from "./f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-end";
21
- import * as i3 from "./f-connection-v2/components/connection-gradient/f-connection-gradient";
22
- import * as i4 from "./f-connection-v2/components/connection-path/f-connection-path";
23
- import * as i5 from "./f-connection-v2/components/connection-selection/f-connection-selection";
24
- import * as i6 from "./f-connection-v2/components/connection-marker/f-connection-marker";
25
- import * as i7 from "./f-connection/f-connection/f-connection.component";
26
- import * as i8 from "./f-connection/f-connection-for-create/f-connection-for-create.component";
27
- import * as i9 from "./f-connection/f-snap-connection/f-snap-connection.component";
28
- import * as i10 from "./f-connectors/f-node-input/f-node-input.directive";
29
- import * as i11 from "./f-connectors/f-node-outlet/f-node-outlet.directive";
30
- import * as i12 from "./f-connectors/f-node-output/f-node-output.directive";
31
- import * as i13 from "./f-line-alignment/f-line-alignment.component";
32
- import * as i14 from "./f-node/f-group.directive";
33
- import * as i15 from "./f-node/f-node.directive";
34
- import * as i16 from "./f-node/f-drag-handle.directive";
35
- import * as i17 from "./f-node/f-resize-handle/f-resize-handle.directive";
36
- import * as i18 from "./f-node/f-rotate-handle/f-rotate-handle.directive";
37
- import * as i19 from "./f-flow/f-flow.component";
38
- import * as i20 from "./f-canvas/f-canvas.component";
39
- import * as i21 from "./f-backgroud/f-background.component";
40
- import * as i22 from "./f-backgroud/f-rect-pattern/f-rect-pattern.component";
41
- import * as i23 from "./f-backgroud/f-circle-pattern/f-circle-pattern.component";
42
- import * as i24 from "./f-zoom/f-zoom.directive";
43
- import * as i25 from "./f-external-item/f-external-item";
44
- import * as i26 from "./f-minimap/f-minimap.component";
45
- import * as i27 from "./f-minimap/f-minimap-canvas.directive";
46
- import * as i28 from "./f-minimap/f-minimap-view.directive";
47
- import * as i29 from "./f-minimap/f-minimap-flow.directive";
48
- import * as i30 from "./f-selection-area/f-selection-area";
49
- import * as i31 from "./f-magnetic-lines/f-magnetic-lines";
50
- import * as i32 from "./f-magnetic-rects/f-magnetic-rects";
51
- import * as i33 from "./f-connection-v2/components/connection-content/f-connection-content";
52
- import * as i34 from "./f-connection-v2/components/connection-waypoints/f-connection-waypoints";
53
- import * as i35 from "./f-virtual/f-virtual-for";
21
+ import * as i3 from "./f-connection-v2/components/connection-path/f-connection-path";
22
+ import * as i4 from "./f-connection-v2/components/connection-selection/f-connection-selection";
23
+ import * as i5 from "./f-connection-v2/components/connection-marker/f-connection-marker";
24
+ import * as i6 from "./f-connection/f-connection/f-connection.component";
25
+ import * as i7 from "./f-connection/f-connection-for-create/f-connection-for-create.component";
26
+ import * as i8 from "./f-connection/f-snap-connection/f-snap-connection.component";
27
+ import * as i9 from "./f-connectors/f-node-input/f-node-input.directive";
28
+ import * as i10 from "./f-connectors/f-node-outlet/f-node-outlet.directive";
29
+ import * as i11 from "./f-connectors/f-node-output/f-node-output.directive";
30
+ import * as i12 from "./f-line-alignment/f-line-alignment.component";
31
+ import * as i13 from "./f-node/f-group.directive";
32
+ import * as i14 from "./f-node/f-node.directive";
33
+ import * as i15 from "./f-node/f-drag-handle.directive";
34
+ import * as i16 from "./f-node/f-resize-handle/f-resize-handle.directive";
35
+ import * as i17 from "./f-node/f-rotate-handle/f-rotate-handle.directive";
36
+ import * as i18 from "./f-flow/f-flow.component";
37
+ import * as i19 from "./f-canvas/f-canvas.component";
38
+ import * as i20 from "./f-backgroud/f-background.component";
39
+ import * as i21 from "./f-backgroud/f-rect-pattern/f-rect-pattern.component";
40
+ import * as i22 from "./f-backgroud/f-circle-pattern/f-circle-pattern.component";
41
+ import * as i23 from "./f-zoom/f-zoom.directive";
42
+ import * as i24 from "./f-external-item/f-external-item";
43
+ import * as i25 from "./f-minimap/f-minimap.component";
44
+ import * as i26 from "./f-minimap/f-minimap-canvas.directive";
45
+ import * as i27 from "./f-minimap/f-minimap-view.directive";
46
+ import * as i28 from "./f-minimap/f-minimap-flow.directive";
47
+ import * as i29 from "./f-selection-area/f-selection-area";
48
+ import * as i30 from "./f-magnetic-lines/f-magnetic-lines";
49
+ import * as i31 from "./f-magnetic-rects/f-magnetic-rects";
50
+ import * as i32 from "./f-connection-v2/components/connection-content/f-connection-content";
51
+ import * as i33 from "./f-connection-v2/components/connection-gradient/f-connection-gradient";
52
+ import * as i34 from "./f-connection-v2/components/connection-gradient/components/render/f-connection-gradient-renderer";
53
+ import * as i35 from "./f-connection-v2/components/connection-waypoints/f-connection-waypoints";
54
+ import * as i36 from "./f-virtual/f-virtual-for";
54
55
  export class FFlowModule {
55
56
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FFlowModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
56
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: FFlowModule, declarations: [i1.FConnectionDragHandleStart, i2.FConnectionDragHandleEnd, i3.FConnectionGradient, i4.FConnectionPath, i5.FConnectionSelection, i6.FConnectionMarker, i7.FConnectionComponent, i8.FConnectionForCreateComponent, i9.FSnapConnectionComponent, i10.FNodeInputDirective, i11.FNodeOutletDirective, i12.FNodeOutputDirective, i13.FLineAlignmentComponent, i14.FGroupDirective, i15.FNodeDirective, i16.FDragHandleDirective, i17.FResizeHandleDirective, i18.FRotateHandleDirective, FDragBlockerDirective,
57
- FDraggableDirective], imports: [i19.FFlowComponent, i20.FCanvasComponent, i21.FBackgroundComponent, i22.FRectPatternComponent, i23.FCirclePatternComponent, i24.FZoomDirective, i25.FExternalItem, i26.FMinimapComponent, i27.FMinimapCanvasDirective, i28.FMinimapViewDirective, i29.FMinimapFlowDirective, i30.FSelectionArea, i31.FMagneticLines, i32.FMagneticRects, i33.FConnectionContent, i34.FConnectionWaypoints, i35.FVirtualFor, CommonModule], exports: [i19.FFlowComponent, i20.FCanvasComponent, i21.FBackgroundComponent, i22.FRectPatternComponent, i23.FCirclePatternComponent, i24.FZoomDirective, i25.FExternalItem, i30.FSelectionArea, i31.FMagneticLines, i32.FMagneticRects, i33.FConnectionContent, i34.FConnectionWaypoints, i1.FConnectionDragHandleStart, i2.FConnectionDragHandleEnd, i3.FConnectionGradient, i4.FConnectionPath, i5.FConnectionSelection, i6.FConnectionMarker, i7.FConnectionComponent, i8.FConnectionForCreateComponent, i9.FSnapConnectionComponent, i10.FNodeInputDirective, i11.FNodeOutletDirective, i12.FNodeOutputDirective, i13.FLineAlignmentComponent, i26.FMinimapComponent, i27.FMinimapCanvasDirective, i28.FMinimapViewDirective, i29.FMinimapFlowDirective, i14.FGroupDirective, i15.FNodeDirective, i16.FDragHandleDirective, i17.FResizeHandleDirective, i18.FRotateHandleDirective, i35.FVirtualFor, FDragBlockerDirective,
57
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: FFlowModule, declarations: [i1.FConnectionDragHandleStart, i2.FConnectionDragHandleEnd, i3.FConnectionPath, i4.FConnectionSelection, i5.FConnectionMarker, i6.FConnectionComponent, i7.FConnectionForCreateComponent, i8.FSnapConnectionComponent, i9.FNodeInputDirective, i10.FNodeOutletDirective, i11.FNodeOutputDirective, i12.FLineAlignmentComponent, i13.FGroupDirective, i14.FNodeDirective, i15.FDragHandleDirective, i16.FResizeHandleDirective, i17.FRotateHandleDirective, FDragBlockerDirective,
58
+ FDraggableDirective], imports: [i18.FFlowComponent, i19.FCanvasComponent, i20.FBackgroundComponent, i21.FRectPatternComponent, i22.FCirclePatternComponent, i23.FZoomDirective, i24.FExternalItem, i25.FMinimapComponent, i26.FMinimapCanvasDirective, i27.FMinimapViewDirective, i28.FMinimapFlowDirective, i29.FSelectionArea, i30.FMagneticLines, i31.FMagneticRects, i32.FConnectionContent, i33.FConnectionGradient, i34.FConnectionGradientRenderer, i35.FConnectionWaypoints, i36.FVirtualFor, CommonModule], exports: [i18.FFlowComponent, i19.FCanvasComponent, i20.FBackgroundComponent, i21.FRectPatternComponent, i22.FCirclePatternComponent, i23.FZoomDirective, i24.FExternalItem, i29.FSelectionArea, i30.FMagneticLines, i31.FMagneticRects, i32.FConnectionContent, i33.FConnectionGradient, i34.FConnectionGradientRenderer, i35.FConnectionWaypoints, i1.FConnectionDragHandleStart, i2.FConnectionDragHandleEnd, i3.FConnectionPath, i4.FConnectionSelection, i5.FConnectionMarker, i6.FConnectionComponent, i7.FConnectionForCreateComponent, i8.FSnapConnectionComponent, i9.FNodeInputDirective, i10.FNodeOutletDirective, i11.FNodeOutputDirective, i12.FLineAlignmentComponent, i25.FMinimapComponent, i26.FMinimapCanvasDirective, i27.FMinimapViewDirective, i28.FMinimapFlowDirective, i13.FGroupDirective, i14.FNodeDirective, i15.FDragHandleDirective, i16.FResizeHandleDirective, i17.FRotateHandleDirective, i36.FVirtualFor, FDragBlockerDirective,
58
59
  FDraggableDirective] });
59
60
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FFlowModule, imports: [CommonModule] });
60
61
  }
@@ -104,4 +105,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
104
105
  ],
105
106
  }]
106
107
  }] });
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1mbG93Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1mbG93Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDNUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDNUMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDOUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDaEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBdUR0RCxNQUFNLE9BQU8sV0FBVzt3R0FBWCxXQUFXO3lHQUFYLFdBQVcscWVBOUNwQixxQkFBcUI7WUFDckIsbUJBQW1CLHlaQWtCbkIsWUFBWSw2MkJBdUJaLHFCQUFxQjtZQUNyQixtQkFBbUI7eUdBR1YsV0FBVyxZQTNCcEIsWUFBWTs7NEZBMkJILFdBQVc7a0JBckR2QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixHQUFHLHNCQUFzQjt3QkFDekIsR0FBRyxzQkFBc0I7d0JBQ3pCLEdBQUcsMEJBQTBCO3dCQUM3QixHQUFHLGdCQUFnQjt3QkFFbkIscUJBQXFCO3dCQUNyQixtQkFBbUI7cUJBQ3BCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxHQUFHLGdCQUFnQjt3QkFDbkIsR0FBRyxrQkFBa0I7d0JBQ3JCLEdBQUcsc0JBQXNCO3dCQUN6QixHQUFHLGdCQUFnQjt3QkFDbkIsR0FBRyx5QkFBeUI7d0JBQzVCLEdBQUcsbUJBQW1CO3dCQUV0QixHQUFHLDBCQUEwQjt3QkFDN0IsR0FBRywwQkFBMEI7d0JBQzdCLEdBQUcsMEJBQTBCO3dCQUU3QixHQUFHLDRCQUE0Qjt3QkFFL0IsR0FBRyx1QkFBdUI7d0JBRTFCLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLEdBQUcsZ0JBQWdCO3dCQUNuQixHQUFHLGtCQUFrQjt3QkFDckIsR0FBRyxzQkFBc0I7d0JBQ3pCLEdBQUcsZ0JBQWdCO3dCQUNuQixHQUFHLHlCQUF5Qjt3QkFFNUIsR0FBRywwQkFBMEI7d0JBQzdCLEdBQUcsMEJBQTBCO3dCQUM3QixHQUFHLDBCQUEwQjt3QkFFN0IsR0FBRyw0QkFBNEI7d0JBRS9CLEdBQUcsc0JBQXNCO3dCQUN6QixHQUFHLHNCQUFzQjt3QkFDekIsR0FBRywwQkFBMEI7d0JBQzdCLEdBQUcsbUJBQW1CO3dCQUN0QixHQUFHLGdCQUFnQjt3QkFFbkIsR0FBRyx1QkFBdUI7d0JBRTFCLHFCQUFxQjt3QkFDckIsbUJBQW1CO3FCQUNwQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRl9DT05ORUNUSU9OX0lNUE9SVFNfRVhQT1JUUywgRl9DT05ORUNUSU9OX1BST1ZJREVSUyB9IGZyb20gJy4vZi1jb25uZWN0aW9uJztcbmltcG9ydCB7IEZfTk9ERV9QUk9WSURFUlMgfSBmcm9tICcuL2Ytbm9kZSc7XG5pbXBvcnQgeyBGX0JBQ0tHUk9VTkRfUFJPVklERVJTIH0gZnJvbSAnLi9mLWJhY2tncm91ZCc7XG5pbXBvcnQgeyBGX0NPTk5FQ1RPUlNfUFJPVklERVJTIH0gZnJvbSAnLi9mLWNvbm5lY3RvcnMnO1xuaW1wb3J0IHsgRkRyYWdCbG9ja2VyRGlyZWN0aXZlLCBGRHJhZ2dhYmxlRGlyZWN0aXZlIH0gZnJvbSAnLi9mLWRyYWdnYWJsZSc7XG5pbXBvcnQgeyBGX1NFTEVDVElPTl9BUkVBX1BST1ZJREVSUyB9IGZyb20gJy4vZi1zZWxlY3Rpb24tYXJlYSc7XG5pbXBvcnQgeyBGX0xJTkVfQUxJR05NRU5UX1BST1ZJREVSUyB9IGZyb20gJy4vZi1saW5lLWFsaWdubWVudCc7XG5pbXBvcnQgeyBGX01JTklNQVBfUFJPVklERVJTIH0gZnJvbSAnLi9mLW1pbmltYXAnO1xuaW1wb3J0IHsgRl9GTE9XX1BST1ZJREVSUyB9IGZyb20gJy4vZi1mbG93JztcbmltcG9ydCB7IEZfQ0FOVkFTX1BST1ZJREVSUyB9IGZyb20gJy4vZi1jYW52YXMnO1xuaW1wb3J0IHsgRl9aT09NX1BST1ZJREVSUyB9IGZyb20gJy4vZi16b29tJztcbmltcG9ydCB7IEZfRVhURVJOQUxfSVRFTV9QUk9WSURFUlMgfSBmcm9tICcuL2YtZXh0ZXJuYWwtaXRlbSc7XG5pbXBvcnQgeyBGX01BR05FVElDX0xJTkVTX1BST1ZJREVSUyB9IGZyb20gJy4vZi1tYWduZXRpYy1saW5lcyc7XG5pbXBvcnQgeyBGX01BR05FVElDX1JFQ1RTX1BST1ZJREVSUyB9IGZyb20gJy4vZi1tYWduZXRpYy1yZWN0cyc7XG5pbXBvcnQgeyBGX1ZJUlRVQUxfRk9SX1BST1ZJREVSUyB9IGZyb20gJy4vZi12aXJ0dWFsJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgLi4uRl9DT05ORUNUSU9OX1BST1ZJREVSUyxcbiAgICAuLi5GX0NPTk5FQ1RPUlNfUFJPVklERVJTLFxuICAgIC4uLkZfTElORV9BTElHTk1FTlRfUFJPVklERVJTLFxuICAgIC4uLkZfTk9ERV9QUk9WSURFUlMsXG5cbiAgICBGRHJhZ0Jsb2NrZXJEaXJlY3RpdmUsXG4gICAgRkRyYWdnYWJsZURpcmVjdGl2ZSxcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIC4uLkZfRkxPV19QUk9WSURFUlMsXG4gICAgLi4uRl9DQU5WQVNfUFJPVklERVJTLFxuICAgIC4uLkZfQkFDS0dST1VORF9QUk9WSURFUlMsXG4gICAgLi4uRl9aT09NX1BST1ZJREVSUyxcbiAgICAuLi5GX0VYVEVSTkFMX0lURU1fUFJPVklERVJTLFxuICAgIC4uLkZfTUlOSU1BUF9QUk9WSURFUlMsXG5cbiAgICAuLi5GX1NFTEVDVElPTl9BUkVBX1BST1ZJREVSUyxcbiAgICAuLi5GX01BR05FVElDX0xJTkVTX1BST1ZJREVSUyxcbiAgICAuLi5GX01BR05FVElDX1JFQ1RTX1BST1ZJREVSUyxcblxuICAgIC4uLkZfQ09OTkVDVElPTl9JTVBPUlRTX0VYUE9SVFMsXG5cbiAgICAuLi5GX1ZJUlRVQUxfRk9SX1BST1ZJREVSUyxcblxuICAgIENvbW1vbk1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIC4uLkZfRkxPV19QUk9WSURFUlMsXG4gICAgLi4uRl9DQU5WQVNfUFJPVklERVJTLFxuICAgIC4uLkZfQkFDS0dST1VORF9QUk9WSURFUlMsXG4gICAgLi4uRl9aT09NX1BST1ZJREVSUyxcbiAgICAuLi5GX0VYVEVSTkFMX0lURU1fUFJPVklERVJTLFxuXG4gICAgLi4uRl9TRUxFQ1RJT05fQVJFQV9QUk9WSURFUlMsXG4gICAgLi4uRl9NQUdORVRJQ19MSU5FU19QUk9WSURFUlMsXG4gICAgLi4uRl9NQUdORVRJQ19SRUNUU19QUk9WSURFUlMsXG5cbiAgICAuLi5GX0NPTk5FQ1RJT05fSU1QT1JUU19FWFBPUlRTLFxuXG4gICAgLi4uRl9DT05ORUNUSU9OX1BST1ZJREVSUyxcbiAgICAuLi5GX0NPTk5FQ1RPUlNfUFJPVklERVJTLFxuICAgIC4uLkZfTElORV9BTElHTk1FTlRfUFJPVklERVJTLFxuICAgIC4uLkZfTUlOSU1BUF9QUk9WSURFUlMsXG4gICAgLi4uRl9OT0RFX1BST1ZJREVSUyxcblxuICAgIC4uLkZfVklSVFVBTF9GT1JfUFJPVklERVJTLFxuXG4gICAgRkRyYWdCbG9ja2VyRGlyZWN0aXZlLFxuICAgIEZEcmFnZ2FibGVEaXJlY3RpdmUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZGbG93TW9kdWxlIHt9XG4iXX0=
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1mbG93Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1mbG93Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDNUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDNUMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDOUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDaEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXVEdEQsTUFBTSxPQUFPLFdBQVc7d0dBQVgsV0FBVzt5R0FBWCxXQUFXLDRjQTlDcEIscUJBQXFCO1lBQ3JCLG1CQUFtQixtZEFrQm5CLFlBQVksODRCQXVCWixxQkFBcUI7WUFDckIsbUJBQW1CO3lHQUdWLFdBQVcsWUEzQnBCLFlBQVk7OzRGQTJCSCxXQUFXO2tCQXJEdkIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osR0FBRyxzQkFBc0I7d0JBQ3pCLEdBQUcsc0JBQXNCO3dCQUN6QixHQUFHLDBCQUEwQjt3QkFDN0IsR0FBRyxnQkFBZ0I7d0JBRW5CLHFCQUFxQjt3QkFDckIsbUJBQW1CO3FCQUNwQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsR0FBRyxnQkFBZ0I7d0JBQ25CLEdBQUcsa0JBQWtCO3dCQUNyQixHQUFHLHNCQUFzQjt3QkFDekIsR0FBRyxnQkFBZ0I7d0JBQ25CLEdBQUcseUJBQXlCO3dCQUM1QixHQUFHLG1CQUFtQjt3QkFFdEIsR0FBRywwQkFBMEI7d0JBQzdCLEdBQUcsMEJBQTBCO3dCQUM3QixHQUFHLDBCQUEwQjt3QkFFN0IsR0FBRyw0QkFBNEI7d0JBRS9CLEdBQUcsdUJBQXVCO3dCQUUxQixZQUFZO3FCQUNiO29CQUNELE9BQU8sRUFBRTt3QkFDUCxHQUFHLGdCQUFnQjt3QkFDbkIsR0FBRyxrQkFBa0I7d0JBQ3JCLEdBQUcsc0JBQXNCO3dCQUN6QixHQUFHLGdCQUFnQjt3QkFDbkIsR0FBRyx5QkFBeUI7d0JBRTVCLEdBQUcsMEJBQTBCO3dCQUM3QixHQUFHLDBCQUEwQjt3QkFDN0IsR0FBRywwQkFBMEI7d0JBRTdCLEdBQUcsNEJBQTRCO3dCQUUvQixHQUFHLHNCQUFzQjt3QkFDekIsR0FBRyxzQkFBc0I7d0JBQ3pCLEdBQUcsMEJBQTBCO3dCQUM3QixHQUFHLG1CQUFtQjt3QkFDdEIsR0FBRyxnQkFBZ0I7d0JBRW5CLEdBQUcsdUJBQXVCO3dCQUUxQixxQkFBcUI7d0JBQ3JCLG1CQUFtQjtxQkFDcEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTl9JTVBPUlRTX0VYUE9SVFMsIEZfQ09OTkVDVElPTl9QUk9WSURFUlMgfSBmcm9tICcuL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBGX05PREVfUFJPVklERVJTIH0gZnJvbSAnLi9mLW5vZGUnO1xuaW1wb3J0IHsgRl9CQUNLR1JPVU5EX1BST1ZJREVSUyB9IGZyb20gJy4vZi1iYWNrZ3JvdWQnO1xuaW1wb3J0IHsgRl9DT05ORUNUT1JTX1BST1ZJREVSUyB9IGZyb20gJy4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZEcmFnQmxvY2tlckRpcmVjdGl2ZSwgRkRyYWdnYWJsZURpcmVjdGl2ZSB9IGZyb20gJy4vZi1kcmFnZ2FibGUnO1xuaW1wb3J0IHsgRl9TRUxFQ1RJT05fQVJFQV9QUk9WSURFUlMgfSBmcm9tICcuL2Ytc2VsZWN0aW9uLWFyZWEnO1xuaW1wb3J0IHsgRl9MSU5FX0FMSUdOTUVOVF9QUk9WSURFUlMgfSBmcm9tICcuL2YtbGluZS1hbGlnbm1lbnQnO1xuaW1wb3J0IHsgRl9NSU5JTUFQX1BST1ZJREVSUyB9IGZyb20gJy4vZi1taW5pbWFwJztcbmltcG9ydCB7IEZfRkxPV19QUk9WSURFUlMgfSBmcm9tICcuL2YtZmxvdyc7XG5pbXBvcnQgeyBGX0NBTlZBU19QUk9WSURFUlMgfSBmcm9tICcuL2YtY2FudmFzJztcbmltcG9ydCB7IEZfWk9PTV9QUk9WSURFUlMgfSBmcm9tICcuL2Ytem9vbSc7XG5pbXBvcnQgeyBGX0VYVEVSTkFMX0lURU1fUFJPVklERVJTIH0gZnJvbSAnLi9mLWV4dGVybmFsLWl0ZW0nO1xuaW1wb3J0IHsgRl9NQUdORVRJQ19MSU5FU19QUk9WSURFUlMgfSBmcm9tICcuL2YtbWFnbmV0aWMtbGluZXMnO1xuaW1wb3J0IHsgRl9NQUdORVRJQ19SRUNUU19QUk9WSURFUlMgfSBmcm9tICcuL2YtbWFnbmV0aWMtcmVjdHMnO1xuaW1wb3J0IHsgRl9WSVJUVUFMX0ZPUl9QUk9WSURFUlMgfSBmcm9tICcuL2YtdmlydHVhbCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIC4uLkZfQ09OTkVDVElPTl9QUk9WSURFUlMsXG4gICAgLi4uRl9DT05ORUNUT1JTX1BST1ZJREVSUyxcbiAgICAuLi5GX0xJTkVfQUxJR05NRU5UX1BST1ZJREVSUyxcbiAgICAuLi5GX05PREVfUFJPVklERVJTLFxuXG4gICAgRkRyYWdCbG9ja2VyRGlyZWN0aXZlLFxuICAgIEZEcmFnZ2FibGVEaXJlY3RpdmUsXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICAuLi5GX0ZMT1dfUFJPVklERVJTLFxuICAgIC4uLkZfQ0FOVkFTX1BST1ZJREVSUyxcbiAgICAuLi5GX0JBQ0tHUk9VTkRfUFJPVklERVJTLFxuICAgIC4uLkZfWk9PTV9QUk9WSURFUlMsXG4gICAgLi4uRl9FWFRFUk5BTF9JVEVNX1BST1ZJREVSUyxcbiAgICAuLi5GX01JTklNQVBfUFJPVklERVJTLFxuXG4gICAgLi4uRl9TRUxFQ1RJT05fQVJFQV9QUk9WSURFUlMsXG4gICAgLi4uRl9NQUdORVRJQ19MSU5FU19QUk9WSURFUlMsXG4gICAgLi4uRl9NQUdORVRJQ19SRUNUU19QUk9WSURFUlMsXG5cbiAgICAuLi5GX0NPTk5FQ1RJT05fSU1QT1JUU19FWFBPUlRTLFxuXG4gICAgLi4uRl9WSVJUVUFMX0ZPUl9QUk9WSURFUlMsXG5cbiAgICBDb21tb25Nb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICAuLi5GX0ZMT1dfUFJPVklERVJTLFxuICAgIC4uLkZfQ0FOVkFTX1BST1ZJREVSUyxcbiAgICAuLi5GX0JBQ0tHUk9VTkRfUFJPVklERVJTLFxuICAgIC4uLkZfWk9PTV9QUk9WSURFUlMsXG4gICAgLi4uRl9FWFRFUk5BTF9JVEVNX1BST1ZJREVSUyxcblxuICAgIC4uLkZfU0VMRUNUSU9OX0FSRUFfUFJPVklERVJTLFxuICAgIC4uLkZfTUFHTkVUSUNfTElORVNfUFJPVklERVJTLFxuICAgIC4uLkZfTUFHTkVUSUNfUkVDVFNfUFJPVklERVJTLFxuXG4gICAgLi4uRl9DT05ORUNUSU9OX0lNUE9SVFNfRVhQT1JUUyxcblxuICAgIC4uLkZfQ09OTkVDVElPTl9QUk9WSURFUlMsXG4gICAgLi4uRl9DT05ORUNUT1JTX1BST1ZJREVSUyxcbiAgICAuLi5GX0xJTkVfQUxJR05NRU5UX1BST1ZJREVSUyxcbiAgICAuLi5GX01JTklNQVBfUFJPVklERVJTLFxuICAgIC4uLkZfTk9ERV9QUk9WSURFUlMsXG5cbiAgICAuLi5GX1ZJUlRVQUxfRk9SX1BST1ZJREVSUyxcblxuICAgIEZEcmFnQmxvY2tlckRpcmVjdGl2ZSxcbiAgICBGRHJhZ2dhYmxlRGlyZWN0aXZlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGRmxvd01vZHVsZSB7fVxuIl19
@@ -20,7 +20,7 @@ export declare class FConnectionComponent extends FConnectionBase implements OnI
20
20
  ngOnChanges(): void;
21
21
  ngOnDestroy(): void;
22
22
  static ɵfac: i0.ɵɵFactoryDeclaration<FConnectionComponent, never>;
23
- static ɵcmp: i0.ɵɵComponentDeclaration<FConnectionComponent, "f-connection", ["fComponent"], { "fId": { "alias": "fConnectionId"; "required": false; "isSignal": true; }; "fOutputId": { "alias": "fOutputId"; "required": false; "isSignal": true; }; "fInputId": { "alias": "fInputId"; "required": false; "isSignal": true; }; "fRadius": { "alias": "fRadius"; "required": false; }; "fOffset": { "alias": "fOffset"; "required": false; }; "fBehavior": { "alias": "fBehavior"; "required": false; }; "fType": { "alias": "fType"; "required": false; }; "fSelectionDisabled": { "alias": "fSelectionDisabled"; "required": false; "isSignal": true; }; "fReassignableStart": { "alias": "fReassignableStart"; "required": false; "isSignal": true; }; "fDraggingDisabled": { "alias": "fReassignDisabled"; "required": false; "isSignal": true; }; "fInputSide": { "alias": "fInputSide"; "required": false; "isSignal": true; }; "fOutputSide": { "alias": "fOutputSide"; "required": false; "isSignal": true; }; }, {}, never, ["*", "f-connection-waypoints", "[fConnectionContent]"], false, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<FConnectionComponent, "f-connection", ["fComponent"], { "fId": { "alias": "fConnectionId"; "required": false; "isSignal": true; }; "fOutputId": { "alias": "fOutputId"; "required": false; "isSignal": true; }; "fInputId": { "alias": "fInputId"; "required": false; "isSignal": true; }; "fRadius": { "alias": "fRadius"; "required": false; }; "fOffset": { "alias": "fOffset"; "required": false; }; "fBehavior": { "alias": "fBehavior"; "required": false; }; "fType": { "alias": "fType"; "required": false; }; "fSelectionDisabled": { "alias": "fSelectionDisabled"; "required": false; "isSignal": true; }; "fReassignableStart": { "alias": "fReassignableStart"; "required": false; "isSignal": true; }; "fDraggingDisabled": { "alias": "fReassignDisabled"; "required": false; "isSignal": true; }; "fInputSide": { "alias": "fInputSide"; "required": false; "isSignal": true; }; "fOutputSide": { "alias": "fOutputSide"; "required": false; "isSignal": true; }; }, {}, never, ["svg[fMarker]", "f-connection-gradient", "f-connection-waypoints", "[fConnectionContent]"], false, never>;
24
24
  static ngAcceptInputType_fRadius: unknown;
25
25
  static ngAcceptInputType_fOffset: unknown;
26
26
  static ngAcceptInputType_fBehavior: unknown;
@@ -18,7 +18,7 @@ export declare class FConnectionForCreateComponent extends FConnectionBase imple
18
18
  ngOnChanges(): void;
19
19
  ngOnDestroy(): void;
20
20
  static ɵfac: i0.ɵɵFactoryDeclaration<FConnectionForCreateComponent, never>;
21
- static ɵcmp: i0.ɵɵComponentDeclaration<FConnectionForCreateComponent, "f-connection-for-create", never, { "fRadius": { "alias": "fRadius"; "required": false; }; "fOffset": { "alias": "fOffset"; "required": false; }; "fBehavior": { "alias": "fBehavior"; "required": false; }; "fType": { "alias": "fType"; "required": false; }; "fInputSide": { "alias": "fInputSide"; "required": false; "isSignal": true; }; "fOutputSide": { "alias": "fOutputSide"; "required": false; "isSignal": true; }; }, {}, never, ["*", "[fConnectionContent]"], false, never>;
21
+ static ɵcmp: i0.ɵɵComponentDeclaration<FConnectionForCreateComponent, "f-connection-for-create", never, { "fRadius": { "alias": "fRadius"; "required": false; }; "fOffset": { "alias": "fOffset"; "required": false; }; "fBehavior": { "alias": "fBehavior"; "required": false; }; "fType": { "alias": "fType"; "required": false; }; "fInputSide": { "alias": "fInputSide"; "required": false; "isSignal": true; }; "fOutputSide": { "alias": "fOutputSide"; "required": false; "isSignal": true; }; }, {}, never, ["svg[fMarker]", "f-connection-gradient", "[fConnectionContent]"], false, never>;
22
22
  static ngAcceptInputType_fRadius: unknown;
23
23
  static ngAcceptInputType_fOffset: unknown;
24
24
  static ngAcceptInputType_fBehavior: unknown;
@@ -19,7 +19,7 @@ export declare class FSnapConnectionComponent extends FConnectionBase implements
19
19
  ngOnChanges(): void;
20
20
  ngOnDestroy(): void;
21
21
  static ɵfac: i0.ɵɵFactoryDeclaration<FSnapConnectionComponent, never>;
22
- static ɵcmp: i0.ɵɵComponentDeclaration<FSnapConnectionComponent, "f-snap-connection", never, { "fSnapThreshold": { "alias": "fSnapThreshold"; "required": false; }; "fRadius": { "alias": "fRadius"; "required": false; }; "fOffset": { "alias": "fOffset"; "required": false; }; "fBehavior": { "alias": "fBehavior"; "required": false; }; "fType": { "alias": "fType"; "required": false; }; "fInputSide": { "alias": "fInputSide"; "required": false; "isSignal": true; }; "fOutputSide": { "alias": "fOutputSide"; "required": false; "isSignal": true; }; }, {}, never, ["*", "[fConnectionContent]"], false, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<FSnapConnectionComponent, "f-snap-connection", never, { "fSnapThreshold": { "alias": "fSnapThreshold"; "required": false; }; "fRadius": { "alias": "fRadius"; "required": false; }; "fOffset": { "alias": "fOffset"; "required": false; }; "fBehavior": { "alias": "fBehavior"; "required": false; }; "fType": { "alias": "fType"; "required": false; }; "fInputSide": { "alias": "fInputSide"; "required": false; "isSignal": true; }; "fOutputSide": { "alias": "fOutputSide"; "required": false; "isSignal": true; }; }, {}, never, ["svg[fMarker]", "f-connection-gradient", "[fConnectionContent]"], false, never>;
23
23
  static ngAcceptInputType_fSnapThreshold: unknown;
24
24
  static ngAcceptInputType_fRadius: unknown;
25
25
  static ngAcceptInputType_fOffset: unknown;
@@ -1,6 +1,6 @@
1
1
  import { FConnectionComponent } from './f-connection';
2
2
  import { FConnectionForCreateComponent } from './f-connection-for-create';
3
3
  import { FSnapConnectionComponent } from './f-snap-connection';
4
- import { FConnectionContent, FConnectionWaypoints, FConnectionDragHandleStart, FConnectionGradient, FConnectionMarker, FConnectionPath, FConnectionSelection } from '../f-connection-v2';
5
- export declare const F_CONNECTION_PROVIDERS: (typeof FConnectionMarker | typeof FConnectionGradient | typeof FConnectionPath | typeof FConnectionSelection | typeof FConnectionDragHandleStart | typeof FConnectionComponent | typeof FConnectionForCreateComponent | typeof FSnapConnectionComponent)[];
6
- export declare const F_CONNECTION_IMPORTS_EXPORTS: (typeof FConnectionContent | typeof FConnectionWaypoints)[];
4
+ import { FConnectionContent, FConnectionDragHandleStart, FConnectionGradient, FConnectionGradientRenderer, FConnectionMarker, FConnectionPath, FConnectionSelection, FConnectionWaypoints } from '../f-connection-v2';
5
+ export declare const F_CONNECTION_PROVIDERS: (typeof FConnectionMarker | typeof FConnectionPath | typeof FConnectionSelection | typeof FConnectionDragHandleStart | typeof FConnectionComponent | typeof FConnectionForCreateComponent | typeof FSnapConnectionComponent)[];
6
+ export declare const F_CONNECTION_IMPORTS_EXPORTS: (typeof FConnectionContent | typeof FConnectionWaypoints | typeof FConnectionGradientRenderer | typeof FConnectionGradient)[];
@@ -0,0 +1 @@
1
+ export * from './render';