ngx-vflow 1.13.2 → 1.15.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.
- package/esm2022/lib/vflow/components/node/node.component.mjs +5 -4
- package/esm2022/lib/vflow/components/vflow/vflow.component.mjs +7 -1
- package/esm2022/lib/vflow/interfaces/flow-entity.interface.mjs +1 -1
- package/esm2022/lib/vflow/interfaces/node.interface.mjs +13 -5
- package/esm2022/lib/vflow/interfaces/optimization.interface.mjs +2 -1
- package/esm2022/lib/vflow/interfaces/template-context.interface.mjs +1 -1
- package/esm2022/lib/vflow/models/edge.model.mjs +4 -9
- package/esm2022/lib/vflow/models/node.model.mjs +51 -7
- package/esm2022/lib/vflow/services/edge-rendering.service.mjs +1 -1
- package/esm2022/lib/vflow/services/flow-rendering.service.mjs +41 -0
- package/esm2022/lib/vflow/utils/is-callable.mjs +10 -0
- package/esm2022/lib/vflow/utils/is-vflow-component.mjs +9 -0
- package/esm2022/public-api.mjs +2 -1
- package/esm2022/testing/component-mocks/vflow-mock.component.mjs +3 -1
- package/esm2022/testing/provide-custom-node-mocks.mjs +3 -2
- package/fesm2022/ngx-vflow-testing.mjs +4 -1
- package/fesm2022/ngx-vflow-testing.mjs.map +1 -1
- package/fesm2022/ngx-vflow.mjs +267 -167
- package/fesm2022/ngx-vflow.mjs.map +1 -1
- package/lib/vflow/components/vflow/vflow.component.d.ts +3 -0
- package/lib/vflow/interfaces/flow-entity.interface.d.ts +2 -1
- package/lib/vflow/interfaces/node.interface.d.ts +2 -2
- package/lib/vflow/interfaces/optimization.interface.d.ts +4 -0
- package/lib/vflow/interfaces/template-context.interface.d.ts +4 -0
- package/lib/vflow/models/edge.model.d.ts +2 -0
- package/lib/vflow/models/node.model.d.ts +4 -0
- package/lib/vflow/public-components/custom-template-edge/custom-template-edge.component.d.ts +1 -0
- package/lib/vflow/services/edge-rendering.service.d.ts +1 -1
- package/lib/vflow/services/flow-rendering.service.d.ts +11 -0
- package/lib/vflow/utils/is-callable.d.ts +1 -0
- package/lib/vflow/utils/is-vflow-component.d.ts +4 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/testing/component-mocks/vflow-mock.component.d.ts +2 -0
|
@@ -15,6 +15,7 @@ export class EdgeModel {
|
|
|
15
15
|
this.target = signal(undefined);
|
|
16
16
|
this.selected = signal(false);
|
|
17
17
|
this.selected$ = toObservable(this.selected);
|
|
18
|
+
this.shouldLoad = computed(() => (this.source()?.shouldLoad() ?? false) && (this.target()?.shouldLoad() ?? false));
|
|
18
19
|
this.renderOrder = signal(0);
|
|
19
20
|
this.detached = computed(() => {
|
|
20
21
|
const source = this.source();
|
|
@@ -44,14 +45,7 @@ export class EdgeModel {
|
|
|
44
45
|
const target = this.targetHandle();
|
|
45
46
|
// TODO: don't like this
|
|
46
47
|
if (!source || !target) {
|
|
47
|
-
return {
|
|
48
|
-
path: '',
|
|
49
|
-
labelPoints: {
|
|
50
|
-
start: { x: 0, y: 0 },
|
|
51
|
-
center: { x: 0, y: 0 },
|
|
52
|
-
end: { x: 0, y: 0 },
|
|
53
|
-
},
|
|
54
|
-
};
|
|
48
|
+
return { path: '' };
|
|
55
49
|
}
|
|
56
50
|
const params = this.getPathFactoryParams(source, target);
|
|
57
51
|
switch (this.curve) {
|
|
@@ -183,6 +177,7 @@ export class EdgeModel {
|
|
|
183
177
|
markerStart: this.markerStartUrl,
|
|
184
178
|
markerEnd: this.markerEndUrl,
|
|
185
179
|
selected: this.selected.asReadonly(),
|
|
180
|
+
shouldLoad: this.shouldLoad,
|
|
186
181
|
},
|
|
187
182
|
};
|
|
188
183
|
this.edgeLabels = {};
|
|
@@ -210,4 +205,4 @@ export class EdgeModel {
|
|
|
210
205
|
};
|
|
211
206
|
}
|
|
212
207
|
}
|
|
213
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9tb2RlbHMvZWRnZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXBELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTFELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBS3pDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXRFLE1BQU0sT0FBTyxTQUFTO0lBeU5wQixZQUFtQixJQUFVO1FBQVYsU0FBSSxHQUFKLElBQUksQ0FBTTtRQXhOWix3QkFBbUIsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUU1RCxXQUFNLEdBQUcsTUFBTSxDQUF3QixTQUFTLENBQUMsQ0FBQztRQUNsRCxXQUFNLEdBQUcsTUFBTSxDQUF3QixTQUFTLENBQUMsQ0FBQztRQU1sRCxhQUFRLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLGNBQVMsR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXhDLGdCQUFXLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FB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QUFFLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakcsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEdBQUc7WUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFGLENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxNQUFtQixFQUFFLE1BQW1CO1FBQ25FLE9BQU87WUFDTCxJQUFJLEVBQUUsTUFBTTtZQUNaLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFdBQVcsRUFBRSxNQUFNLENBQUMsYUFBYSxFQUFFO1lBQ25DLFdBQVcsRUFBRSxNQUFNLENBQUMsYUFBYSxFQUFFO1lBQ25DLGNBQWMsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVE7WUFDekMsY0FBYyxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUTtZQUN6QyxRQUFRLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsRUFBRTtZQUM3QyxRQUFRLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsRUFBRTtTQUM5QyxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tcHV0ZWQsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFZGdlTGFiZWxQb3NpdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvZWRnZS1sYWJlbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRWRnZSwgQ3VydmUsIEVkZ2VUeXBlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9lZGdlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBFZGdlTGFiZWxNb2RlbCB9IGZyb20gJy4vZWRnZS1sYWJlbC5tb2RlbCc7XG5pbXBvcnQgeyBOb2RlTW9kZWwgfSBmcm9tICcuL25vZGUubW9kZWwnO1xuaW1wb3J0IHsgc3RyYWlnaHRQYXRoIH0gZnJvbSAnLi4vbWF0aC9lZGdlLXBhdGgvc3RyYWlnaC1wYXRoJztcbmltcG9ydCB7IGJlemllclBhdGggfSBmcm9tICcuLi9tYXRoL2VkZ2UtcGF0aC9iZXppZXItcGF0aCc7XG5pbXBvcnQgeyB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBGbG93RW50aXR5IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9mbG93LWVudGl0eS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgc21vb3RoU3RlcFBhdGggfSBmcm9tICcuLi9tYXRoL2VkZ2UtcGF0aC9zbW9vdGgtc3RlcC1wYXRoJztcbmltcG9ydCB7IGhhc2hDb2RlIH0gZnJvbSAnLi4vdXRpbHMvaGFzaCc7XG5pbXBvcnQgeyBDb250ZXh0YWJsZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvY29udGV4dGFibGUuaW50ZXJmYWNlJztcbmltcG9ydCB7IEVkZ2VDb250ZXh0IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy90ZW1wbGF0ZS1jb250ZXh0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBIYW5kbGVNb2RlbCB9IGZyb20gJy4vaGFuZGxlLm1vZGVsJztcbmltcG9ydCB7IEN1cnZlRmFjdG9yeVBhcmFtcyB9IGZyb20gJy4uL2ludGVyZmFjZXMvY3VydmUtZmFjdG9yeS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRmxvd0VudGl0aWVzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Zsb3ctZW50aXRpZXMuc2VydmljZSc7XG5pbXBvcnQgeyBleHRlbmRlZENvbXB1dGVkIH0gZnJvbSAnLi4vdXRpbHMvc2lnbmFscy9leHRlbmRlZC1jb21wdXRlZCc7XG5cbmV4cG9ydCBjbGFzcyBFZGdlTW9kZWwgaW1wbGVtZW50cyBGbG93RW50aXR5LCBDb250ZXh0YWJsZTxFZGdlQ29udGV4dD4ge1xuICBwcml2YXRlIHJlYWRvbmx5IGZsb3dFbnRpdGllc1NlcnZpY2UgPSBpbmplY3QoRmxvd0VudGl0aWVzU2VydmljZSk7XG5cbiAgcHVibGljIHNvdXJjZSA9IHNpZ25hbDxOb2RlTW9kZWwgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIHB1YmxpYyB0YXJnZXQgPSBzaWduYWw8Tm9kZU1vZGVsIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuICBwdWJsaWMgY3VydmU6IEN1cnZlO1xuICBwdWJsaWMgdHlwZTogRWRnZVR5cGU7XG4gIHB1YmxpYyByZWNvbm5lY3RhYmxlOiBib29sZWFuIHwgJ3NvdXJjZScgfCAndGFyZ2V0JztcbiAgcHVibGljIGZsb2F0aW5nOiBib29sZWFuO1xuXG4gIHB1YmxpYyBzZWxlY3RlZCA9IHNpZ25hbChmYWxzZSk7XG4gIHB1YmxpYyBzZWxlY3RlZCQgPSB0b09ic2VydmFibGUodGhpcy5zZWxlY3RlZCk7XG5cbiAgcHVibGljIHJlbmRlck9yZGVyID0gc2lnbmFsKDApO1xuXG4gIHB1YmxpYyBkZXRhY2hlZCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSB0aGlzLnNvdXJjZSgpO1xuICAgIGNvbnN0IHRhcmdldCA9IHRoaXMudGFyZ2V0KCk7XG5cbiAgICBpZiAoIXNvdXJjZSB8fCAhdGFyZ2V0KSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBsZXQgZXhpc3RzU291cmNlSGFuZGxlID0gZmFsc2U7XG4gICAgbGV0IGV4aXN0c1RhcmdldEhhbmRsZSA9IGZhbHNlO1xuXG4gICAgaWYgKHRoaXMuZWRnZS5zb3VyY2VIYW5kbGUpIHtcbiAgICAgIGV4aXN0c1NvdXJjZUhhbmRsZSA9ICEhc291cmNlLmhhbmRsZXMoKS5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUuaWQgPT09IHRoaXMuZWRnZS5zb3VyY2VIYW5kbGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBleGlzdHNTb3VyY2VIYW5kbGUgPSAhIXNvdXJjZS5oYW5kbGVzKCkuZmluZCgoaGFuZGxlKSA9PiBoYW5kbGUucmF3SGFuZGxlLnR5cGUgPT09ICdzb3VyY2UnKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5lZGdlLnRhcmdldEhhbmRsZSkge1xuICAgICAgZXhpc3RzVGFyZ2V0SGFuZGxlID0gISF0YXJnZXQuaGFuZGxlcygpLmZpbmQoKGhhbmRsZSkgPT4gaGFuZGxlLnJhd0hhbmRsZS5pZCA9PT0gdGhpcy5lZGdlLnRhcmdldEhhbmRsZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGV4aXN0c1RhcmdldEhhbmRsZSA9ICEhdGFyZ2V0LmhhbmRsZXMoKS5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUudHlwZSA9PT0gJ3RhcmdldCcpO1xuICAgIH1cblxuICAgIHJldHVybiAhZXhpc3RzU291cmNlSGFuZGxlIHx8ICFleGlzdHNUYXJnZXRIYW5kbGU7XG4gIH0pO1xuXG4gIHB1YmxpYyBkZXRhY2hlZCQgPSB0b09ic2VydmFibGUodGhpcy5kZXRhY2hlZCk7XG5cbiAgcHVibGljIHBhdGggPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gdGhpcy5zb3VyY2VIYW5kbGUoKTtcbiAgICBjb25zdCB0YXJnZXQgPSB0aGlzLnRhcmdldEhhbmRsZSgpO1xuXG4gICAgLy8gVE9ETzogZG9uJ3QgbGlrZSB0aGlzXG4gICAgaWYgKCFzb3VyY2UgfHwgIXRhcmdldCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGF0aDogJycsXG4gICAgICAgIGxhYmVsUG9pbnRzOiB7XG4gICAgICAgICAgc3RhcnQ6IHsgeDogMCwgeTogMCB9LFxuICAgICAgICAgIGNlbnRlcjogeyB4OiAwLCB5OiAwIH0sXG4gICAgICAgICAgZW5kOiB7IHg6IDAsIHk6IDAgfSxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3QgcGFyYW1zID0gdGhpcy5nZXRQYXRoRmFjdG9yeVBhcmFtcyhzb3VyY2UsIHRhcmdldCk7XG5cbiAgICBzd2l0Y2ggKHRoaXMuY3VydmUpIHtcbiAgICAgIGNhc2UgJ3N0cmFpZ2h0JzpcbiAgICAgICAgcmV0dXJuIHN0cmFpZ2h0UGF0aChwYXJhbXMpO1xuICAgICAgY2FzZSAnYmV6aWVyJzpcbiAgICAgICAgcmV0dXJuIGJlemllclBhdGgocGFyYW1zKTtcbiAgICAgIGNhc2UgJ3Ntb290aC1zdGVwJzpcbiAgICAgICAgcmV0dXJuIHNtb290aFN0ZXBQYXRoKHBhcmFtcyk7XG4gICAgICBjYXNlICdzdGVwJzpcbiAgICAgICAgcmV0dXJuIHNtb290aFN0ZXBQYXRoKHBhcmFtcywgMCk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdGhpcy5jdXJ2ZShwYXJhbXMpO1xuICAgIH1cbiAgfSk7XG5cbiAgcHVibGljIHNvdXJjZUhhbmRsZSA9IGV4dGVuZGVkQ29tcHV0ZWQ8SGFuZGxlTW9kZWwgfCBudWxsPigocHJldmlvdXNIYW5kbGUpID0+IHtcbiAgICBsZXQgaGFuZGxlOiBIYW5kbGVNb2RlbCB8IG51bGwgPSBudWxsO1xuXG4gICAgaWYgKHRoaXMuZmxvYXRpbmcpIHtcbiAgICAgIGhhbmRsZSA9IHRoaXMuY2xvc2VzdEhhbmRsZXMoKS5zb3VyY2VIYW5kbGU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmVkZ2Uuc291cmNlSGFuZGxlKSB7XG4gICAgICAgIGhhbmRsZSA9XG4gICAgICAgICAgdGhpcy5zb3VyY2UoKVxuICAgICAgICAgICAgPy5oYW5kbGVzKClcbiAgICAgICAgICAgIC5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUuaWQgPT09IHRoaXMuZWRnZS5zb3VyY2VIYW5kbGUpID8/IG51bGw7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBoYW5kbGUgPVxuICAgICAgICAgIHRoaXMuc291cmNlKClcbiAgICAgICAgICAgID8uaGFuZGxlcygpXG4gICAgICAgICAgICAuZmluZCgoaGFuZGxlKSA9PiBoYW5kbGUucmF3SGFuZGxlLnR5cGUgPT09ICdzb3VyY2UnKSA/PyBudWxsO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEluIGNhc2Ugb2YgdmlydHVhbCBzY3JvbGxpbmcsIGlmIHRoZSBub2RlIGlzIHNjcm9sbGVkIG91dCBvZiB2aWV3IHRoZSBoYW5kbGUgbWF5IGRpc2FwcGVhclxuICAgIC8vIHdoaWNoIGNvdWxkIGxlYWQgdG8gdGhlIGVkZ2Ugbm90IGJlaW5nIHJlbmRlcmVkXG4gICAgLy8gc28gd2UgcmV0dXJuIHRoZSBwcmV2aW91cyBoYW5kbGUgaWYgdGhlIGN1cnJlbnQgb25lIGlzIG51bGxcbiAgICAvLyBUT0RPOiBjaGVjayBpZiB0aGlzIGJyZWFrcyBhbnl0aGluZ1xuICAgIGlmIChoYW5kbGUgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBwcmV2aW91c0hhbmRsZTtcbiAgICB9XG5cbiAgICByZXR1cm4gaGFuZGxlO1xuICB9KTtcblxuICBwdWJsaWMgdGFyZ2V0SGFuZGxlID0gZXh0ZW5kZWRDb21wdXRlZDxIYW5kbGVNb2RlbCB8IG51bGw+KChwcmV2aW91c0hhbmRsZSkgPT4ge1xuICAgIGxldCBoYW5kbGU6IEhhbmRsZU1vZGVsIHwgbnVsbCA9IG51bGw7XG5cbiAgICBpZiAodGhpcy5mbG9hdGluZykge1xuICAgICAgaGFuZGxlID0gdGhpcy5jbG9zZXN0SGFuZGxlcygpLnRhcmdldEhhbmRsZTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuZWRnZS50YXJnZXRIYW5kbGUpIHtcbiAgICAgICAgaGFuZGxlID1cbiAgICAgICAgICB0aGlzLnRhcmdldCgpXG4gICAgICAgICAgICA/LmhhbmRsZXMoKVxuICAgICAgICAgICAgLmZpbmQoKGhhbmRsZSkgPT4gaGFuZGxlLnJhd0hhbmRsZS5pZCA9PT0gdGhpcy5lZGdlLnRhcmdldEhhbmRsZSkgPz8gbnVsbDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGhhbmRsZSA9XG4gICAgICAgICAgdGhpcy50YXJnZXQoKVxuICAgICAgICAgICAgPy5oYW5kbGVzKClcbiAgICAgICAgICAgIC5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUudHlwZSA9PT0gJ3RhcmdldCcpID8/IG51bGw7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW4gY2FzZSBvZiB2aXJ0dWFsIHNjcm9sbGluZywgaWYgdGhlIG5vZGUgaXMgc2Nyb2xsZWQgb3V0IG9mIHZpZXcgdGhlIGhhbmRsZSBtYXkgZGlzYXBwZWFyXG4gICAgLy8gd2hpY2ggY291bGQgbGVhZCB0byB0aGUgZWRnZSBub3QgYmVpbmcgcmVuZGVyZWRcbiAgICAvLyBzbyB3ZSByZXR1cm4gdGhlIHByZXZpb3VzIGhhbmRsZSBpZiB0aGUgY3VycmVudCBvbmUgaXMgbnVsbFxuICAgIC8vIFRPRE86IGNoZWNrIGlmIHRoaXMgYnJlYWtzIGFueXRoaW5nXG4gICAgaWYgKGhhbmRsZSA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHByZXZpb3VzSGFuZGxlO1xuICAgIH1cblxuICAgIHJldHVybiBoYW5kbGU7XG4gIH0pO1xuXG4gIHB1YmxpYyBjbG9zZXN0SGFuZGxlcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSB0aGlzLnNvdXJjZSgpO1xuICAgIGNvbnN0IHRhcmdldCA9IHRoaXMudGFyZ2V0KCk7XG5cbiAgICBpZiAoIXNvdXJjZSB8fCAhdGFyZ2V0KSB7XG4gICAgICByZXR1cm4geyBzb3VyY2VIYW5kbGU6IG51bGwsIHRhcmdldEhhbmRsZTogbnVsbCB9O1xuICAgIH1cblxuICAgIC8vIEdldCBhbGwgc291cmNlIGhhbmRsZXMgZnJvbSBzb3VyY2Ugbm9kZVxuICAgIGNvbnN0IHNvdXJjZUhhbmRsZXMgPVxuICAgICAgdGhpcy5mbG93RW50aXRpZXNTZXJ2aWNlLmNvbm5lY3Rpb24oKS5tb2RlID09PSAnc3RyaWN0J1xuICAgICAgICA/IHNvdXJjZS5oYW5kbGVzKCkuZmlsdGVyKChoKSA9PiBoLnJhd0hhbmRsZS50eXBlID09PSAnc291cmNlJylcbiAgICAgICAgOiBzb3VyY2UuaGFuZGxlcygpO1xuICAgIC8vIEdldCBhbGwgdGFyZ2V0IGhhbmRsZXMgZnJvbSB0YXJnZXQgbm9kZVxuICAgIGNvbnN0IHRhcmdldEhhbmRsZXMgPVxuICAgICAgdGhpcy5mbG93RW50aXRpZXNTZXJ2aWNlLmNvbm5lY3Rpb24oKS5tb2RlID09PSAnc3RyaWN0J1xuICAgICAgICA/IHRhcmdldC5oYW5kbGVzKCkuZmlsdGVyKChoKSA9PiBoLnJhd0hhbmRsZS50eXBlID09PSAndGFyZ2V0JylcbiAgICAgICAgOiB0YXJnZXQuaGFuZGxlcygpO1xuXG4gICAgaWYgKHNvdXJjZUhhbmRsZXMubGVuZ3RoID09PSAwIHx8IHRhcmdldEhhbmRsZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4geyBzb3VyY2VIYW5kbGU6IG51bGwsIHRhcmdldEhhbmRsZTogbnVsbCB9O1xuICAgIH1cblxuICAgIGxldCBtaW5EaXN0YW5jZSA9IEluZmluaXR5O1xuICAgIGxldCBjbG9zZXN0U291cmNlSGFuZGxlOiBIYW5kbGVNb2RlbCB8IG51bGwgPSBudWxsO1xuICAgIGxldCBjbG9zZXN0VGFyZ2V0SGFuZGxlOiBIYW5kbGVNb2RlbCB8IG51bGwgPSBudWxsO1xuXG4gICAgLy8gQ2hlY2sgYWxsIGNvbWJpbmF0aW9ucyBvZiBzb3VyY2UgYW5kIHRhcmdldCBoYW5kbGVzXG4gICAgZm9yIChjb25zdCBzb3VyY2VIYW5kbGUgb2Ygc291cmNlSGFuZGxlcykge1xuICAgICAgZm9yIChjb25zdCB0YXJnZXRIYW5kbGUgb2YgdGFyZ2V0SGFuZGxlcykge1xuICAgICAgICBjb25zdCBzb3VyY2VQb2ludCA9IHNvdXJjZUhhbmRsZS5wb2ludEFic29sdXRlKCk7XG4gICAgICAgIGNvbnN0IHRhcmdldFBvaW50ID0gdGFyZ2V0SGFuZGxlLnBvaW50QWJzb2x1dGUoKTtcblxuICAgICAgICBjb25zdCBkaXN0YW5jZSA9IE1hdGguc3FydChcbiAgICAgICAgICBNYXRoLnBvdyhzb3VyY2VQb2ludC54IC0gdGFyZ2V0UG9pbnQueCwgMikgKyBNYXRoLnBvdyhzb3VyY2VQb2ludC55IC0gdGFyZ2V0UG9pbnQueSwgMiksXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKGRpc3RhbmNlIDwgbWluRGlzdGFuY2UpIHtcbiAgICAgICAgICBtaW5EaXN0YW5jZSA9IGRpc3RhbmNlO1xuICAgICAgICAgIGNsb3Nlc3RTb3VyY2VIYW5kbGUgPSBzb3VyY2VIYW5kbGU7XG4gICAgICAgICAgY2xvc2VzdFRhcmdldEhhbmRsZSA9IHRhcmdldEhhbmRsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBzb3VyY2VIYW5kbGU6IGNsb3Nlc3RTb3VyY2VIYW5kbGUsXG4gICAgICB0YXJnZXRIYW5kbGU6IGNsb3Nlc3RUYXJnZXRIYW5kbGUsXG4gICAgfTtcbiAgfSk7XG5cbiAgLyoqXG4gICAqIFRPRE86IG5vdCByZWFjdGl2ZVxuICAgKi9cbiAgcHVibGljIG1hcmtlclN0YXJ0VXJsID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IG1hcmtlciA9IHRoaXMuZWRnZS5tYXJrZXJzPy5zdGFydDtcblxuICAgIHJldHVybiBtYXJrZXIgPyBgdXJsKCMke2hhc2hDb2RlKEpTT04uc3RyaW5naWZ5KG1hcmtlcikpfSlgIDogJyc7XG4gIH0pO1xuXG4gIC8qKlxuICAgKiBUT0RPOiBub3QgcmVhY3RpdmVcbiAgICovXG4gIHB1YmxpYyBtYXJrZXJFbmRVcmwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgbWFya2VyID0gdGhpcy5lZGdlLm1hcmtlcnM/LmVuZDtcblxuICAgIHJldHVybiBtYXJrZXIgPyBgdXJsKCMke2hhc2hDb2RlKEpTT04uc3RyaW5naWZ5KG1hcmtlcikpfSlgIDogJyc7XG4gIH0pO1xuXG4gIHB1YmxpYyBjb250ZXh0ID0ge1xuICAgICRpbXBsaWNpdDoge1xuICAgICAgLy8gVE9ETzogY2hlY2sgaWYgZWRnZSBjb3VsZCBjaGFuZ2VcbiAgICAgIGVkZ2U6IHRoaXMuZWRnZSxcbiAgICAgIHBhdGg6IGNvbXB1dGVkKCgpID0+IHRoaXMucGF0aCgpLnBhdGgpLFxuICAgICAgbWFya2VyU3RhcnQ6IHRoaXMubWFya2VyU3RhcnRVcmwsXG4gICAgICBtYXJrZXJFbmQ6IHRoaXMubWFya2VyRW5kVXJsLFxuICAgICAgc2VsZWN0ZWQ6IHRoaXMuc2VsZWN0ZWQuYXNSZWFkb25seSgpLFxuICAgIH0sXG4gIH07XG5cbiAgcHVibGljIGVkZ2VMYWJlbHM6IHsgW3Bvc2l0aW9uIGluIEVkZ2VMYWJlbFBvc2l0aW9uXT86IEVkZ2VMYWJlbE1vZGVsIH0gPSB7fTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZWRnZTogRWRnZSkge1xuICAgIHRoaXMudHlwZSA9IGVkZ2UudHlwZSA/PyAnZGVmYXVsdCc7XG4gICAgdGhpcy5jdXJ2ZSA9IGVkZ2UuY3VydmUgPz8gJ2Jlemllcic7XG4gICAgdGhpcy5yZWNvbm5lY3RhYmxlID0gZWRnZS5yZWNvbm5lY3RhYmxlID8/IGZhbHNlO1xuICAgIHRoaXMuZmxvYXRpbmcgPSBlZGdlLmZsb2F0aW5nID8/IGZhbHNlO1xuXG4gICAgaWYgKGVkZ2UuZWRnZUxhYmVscz8uc3RhcnQpIHRoaXMuZWRnZUxhYmVscy5zdGFydCA9IG5ldyBFZGdlTGFiZWxNb2RlbChlZGdlLmVkZ2VMYWJlbHMuc3RhcnQpO1xuICAgIGlmIChlZGdlLmVkZ2VMYWJlbHM/LmNlbnRlcikgdGhpcy5lZGdlTGFiZWxzLmNlbnRlciA9IG5ldyBFZGdlTGFiZWxNb2RlbChlZGdlLmVkZ2VMYWJlbHMuY2VudGVyKTtcbiAgICBpZiAoZWRnZS5lZGdlTGFiZWxzPy5lbmQpIHRoaXMuZWRnZUxhYmVscy5lbmQgPSBuZXcgRWRnZUxhYmVsTW9kZWwoZWRnZS5lZGdlTGFiZWxzLmVuZCk7XG4gIH1cblxuICBwcml2YXRlIGdldFBhdGhGYWN0b3J5UGFyYW1zKHNvdXJjZTogSGFuZGxlTW9kZWwsIHRhcmdldDogSGFuZGxlTW9kZWwpOiBDdXJ2ZUZhY3RvcnlQYXJhbXMge1xuICAgIHJldHVybiB7XG4gICAgICBtb2RlOiAnZWRnZScsXG4gICAgICBlZGdlOiB0aGlzLmVkZ2UsXG4gICAgICBzb3VyY2VQb2ludDogc291cmNlLnBvaW50QWJzb2x1dGUoKSxcbiAgICAgIHRhcmdldFBvaW50OiB0YXJnZXQucG9pbnRBYnNvbHV0ZSgpLFxuICAgICAgc291cmNlUG9zaXRpb246IHNvdXJjZS5yYXdIYW5kbGUucG9zaXRpb24sXG4gICAgICB0YXJnZXRQb3NpdGlvbjogdGFyZ2V0LnJhd0hhbmRsZS5wb3NpdGlvbixcbiAgICAgIGFsbEVkZ2VzOiB0aGlzLmZsb3dFbnRpdGllc1NlcnZpY2UucmF3RWRnZXMoKSxcbiAgICAgIGFsbE5vZGVzOiB0aGlzLmZsb3dFbnRpdGllc1NlcnZpY2UucmF3Tm9kZXMoKSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
208
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9tb2RlbHMvZWRnZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXBELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTFELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBS3pDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXRFLE1BQU0sT0FBTyxTQUFTO0lBcU5wQixZQUFtQixJQUFVO1FBQVYsU0FBSSxHQUFKLElBQUksQ0FBTTtRQXBOWix3QkFBbUIsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUU1RCxXQUFNLEdBQUcsTUFBTSxDQUF3QixTQUFTLENBQUMsQ0FBQztRQUNsRCxXQUFNLEdBQUcsTUFBTSxDQUF3QixTQUFTLENBQUMsQ0FBQztRQU1sRCxhQUFRLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLGNBQVMsR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXhDLGVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQztRQUU5RyxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV4QixhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUM5QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDN0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBRTdCLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDdkIsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1lBRUQsSUFBSSxrQkFBa0IsR0FBRyxLQUFLLENBQUM7WUFDL0IsSUFBSSxrQkFBa0IsR0FBRyxLQUFLLENBQUM7WUFFL0IsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUMzQixrQkFBa0IsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUMzRyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sa0JBQWtCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDO1lBQy9GLENBQUM7WUFFRCxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQzNCLGtCQUFrQixHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzNHLENBQUM7aUJBQU0sQ0FBQztnQkFDTixrQkFBa0IsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUM7WUFDL0YsQ0FBQztZQUVELE9BQU8sQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDO1FBQ3BELENBQUMsQ0FBQyxDQUFDO1FBRUksY0FBUyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFeEMsU0FBSSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDMUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ25DLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUVuQyx3QkFBd0I7WUFDeEIsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUN2QixPQUFPLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ3RCLENBQUM7WUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBRXpELFFBQVEsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNuQixLQUFLLFVBQVU7b0JBQ2IsT0FBTyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzlCLEtBQUssUUFBUTtvQkFDWCxPQUFPLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDNUIsS0FBSyxhQUFhO29CQUNoQixPQUFPLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDaEMsS0FBSyxNQUFNO29CQUNULE9BQU8sY0FBYyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDbkM7b0JBQ0UsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzlCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVJLGlCQUFZLEdBQUcsZ0JBQWdCLENBQXFCLENBQUMsY0FBYyxFQUFFLEVBQUU7WUFDNUUsSUFBSSxNQUFNLEdBQXVCLElBQUksQ0FBQztZQUV0QyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDbEIsTUFBTSxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxZQUFZLENBQUM7WUFDOUMsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztvQkFDM0IsTUFBTTt3QkFDSixJQUFJLENBQUMsTUFBTSxFQUFFOzRCQUNYLEVBQUUsT0FBTyxFQUFFOzZCQUNWLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxJQUFJLENBQUM7Z0JBQ2hGLENBQUM7cUJBQU0sQ0FBQztvQkFDTixNQUFNO3dCQUNKLElBQUksQ0FBQyxNQUFNLEVBQUU7NEJBQ1gsRUFBRSxPQUFPLEVBQUU7NkJBQ1YsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsSUFBSSxJQUFJLENBQUM7Z0JBQ3BFLENBQUM7WUFDSCxDQUFDO1lBRUQsNkZBQTZGO1lBQzdGLGtEQUFrRDtZQUNsRCw4REFBOEQ7WUFDOUQsc0NBQXNDO1lBQ3RDLElBQUksTUFBTSxLQUFLLElBQUksRUFBRSxDQUFDO2dCQUNwQixPQUFPLGNBQWMsQ0FBQztZQUN4QixDQUFDO1lBRUQsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQUM7UUFFSSxpQkFBWSxHQUFHLGdCQUFnQixDQUFxQixDQUFDLGNBQWMsRUFBRSxFQUFFO1lBQzVFLElBQUksTUFBTSxHQUF1QixJQUFJLENBQUM7WUFFdEMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2xCLE1BQU0sR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsWUFBWSxDQUFDO1lBQzlDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7b0JBQzNCLE1BQU07d0JBQ0osSUFBSSxDQUFDLE1BQU0sRUFBRTs0QkFDWCxFQUFFLE9BQU8sRUFBRTs2QkFDVixJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksSUFBSSxDQUFDO2dCQUNoRixDQUFDO3FCQUFNLENBQUM7b0JBQ04sTUFBTTt3QkFDSixJQUFJLENBQUMsTUFBTSxFQUFFOzRCQUNYLEVBQUUsT0FBTyxFQUFFOzZCQUNWLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDLElBQUksSUFBSSxDQUFDO2dCQUNwRSxDQUFDO1lBQ0gsQ0FBQztZQUVELDZGQUE2RjtZQUM3RixrREFBa0Q7WUFDbEQsOERBQThEO1lBQzlELHNDQUFzQztZQUN0QyxJQUFJLE1BQU0sS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDcEIsT0FBTyxjQUFjLENBQUM7WUFDeEIsQ0FBQztZQUVELE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO1FBRUksbUJBQWMsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3BDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUM3QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFFN0IsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDcEQsQ0FBQztZQUVELDBDQUEwQztZQUMxQyxNQUFNLGFBQWEsR0FDakIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsRUFBRSxDQUFDLElBQUksS0FBSyxRQUFRO2dCQUNyRCxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDO2dCQUMvRCxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3ZCLDBDQUEwQztZQUMxQyxNQUFNLGFBQWEsR0FDakIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsRUFBRSxDQUFDLElBQUksS0FBSyxRQUFRO2dCQUNyRCxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDO2dCQUMvRCxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBRXZCLElBQUksYUFBYSxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksYUFBYSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxDQUFDO1lBQ3BELENBQUM7WUFFRCxJQUFJLFdBQVcsR0FBRyxRQUFRLENBQUM7WUFDM0IsSUFBSSxtQkFBbUIsR0FBdUIsSUFBSSxDQUFDO1lBQ25ELElBQUksbUJBQW1CLEdBQXVCLElBQUksQ0FBQztZQUVuRCxzREFBc0Q7WUFDdEQsS0FBSyxNQUFNLFlBQVksSUFBSSxhQUFhLEVBQUUsQ0FBQztnQkFDekMsS0FBSyxNQUFNLFlBQVksSUFBSSxhQUFhLEVBQUUsQ0FBQztvQkFDekMsTUFBTSxXQUFXLEdBQUcsWUFBWSxDQUFDLGFBQWEsRUFBRSxDQUFDO29CQUNqRCxNQUFNLFdBQVcsR0FBRyxZQUFZLENBQUMsYUFBYSxFQUFFLENBQUM7b0JBRWpELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQ3hCLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUMsR0FBRyxXQUFXLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUMsR0FBRyxXQUFXLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUN4RixDQUFDO29CQUVGLElBQUksUUFBUSxHQUFHLFdBQVcsRUFBRSxDQUFDO3dCQUMzQixXQUFXLEdBQUcsUUFBUSxDQUFDO3dCQUN2QixtQkFBbUIsR0FBRyxZQUFZLENBQUM7d0JBQ25DLG1CQUFtQixHQUFHLFlBQVksQ0FBQztvQkFDckMsQ0FBQztnQkFDSCxDQUFDO1lBQ0gsQ0FBQztZQUVELE9BQU87Z0JBQ0wsWUFBWSxFQUFFLG1CQUFtQjtnQkFDakMsWUFBWSxFQUFFLG1CQUFtQjthQUNsQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSDs7V0FFRztRQUNJLG1CQUFjLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNwQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUM7WUFFeEMsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDbkUsQ0FBQyxDQUFDLENBQUM7UUFFSDs7V0FFRztRQUNJLGlCQUFZLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNsQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUM7WUFFdEMsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDbkUsQ0FBQyxDQUFDLENBQUM7UUFFSSxZQUFPLEdBQUc7WUFDZixTQUFTLEVBQUU7Z0JBQ1QsbUNBQW1DO2dCQUNuQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ2YsSUFBSSxFQUFFLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDO2dCQUN0QyxXQUFXLEVBQUUsSUFBSSxDQUFDLGNBQWM7Z0JBQ2hDLFNBQVMsRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDNUIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFO2dCQUNwQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7YUFDNUI7U0FDRixDQUFDO1FBRUssZUFBVSxHQUF5RCxFQUFFLENBQUM7UUFHM0UsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxJQUFJLFNBQVMsQ0FBQztRQUNuQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksUUFBUSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsSUFBSSxLQUFLLENBQUM7UUFDakQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQztRQUV2QyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSztZQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUYsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU07WUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2pHLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxHQUFHO1lBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEdBQUcsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMxRixDQUFDO0lBRU8sb0JBQW9CLENBQUMsTUFBbUIsRUFBRSxNQUFtQjtRQUNuRSxPQUFPO1lBQ0wsSUFBSSxFQUFFLE1BQU07WUFDWixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixXQUFXLEVBQUUsTUFBTSxDQUFDLGFBQWEsRUFBRTtZQUNuQyxXQUFXLEVBQUUsTUFBTSxDQUFDLGFBQWEsRUFBRTtZQUNuQyxjQUFjLEVBQUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRO1lBQ3pDLGNBQWMsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVE7WUFDekMsUUFBUSxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUU7WUFDN0MsUUFBUSxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUU7U0FDOUMsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXB1dGVkLCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRWRnZUxhYmVsUG9zaXRpb24gfSBmcm9tICcuLi9pbnRlcmZhY2VzL2VkZ2UtbGFiZWwuaW50ZXJmYWNlJztcbmltcG9ydCB7IEVkZ2UsIEN1cnZlLCBFZGdlVHlwZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvZWRnZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRWRnZUxhYmVsTW9kZWwgfSBmcm9tICcuL2VkZ2UtbGFiZWwubW9kZWwnO1xuaW1wb3J0IHsgTm9kZU1vZGVsIH0gZnJvbSAnLi9ub2RlLm1vZGVsJztcbmltcG9ydCB7IHN0cmFpZ2h0UGF0aCB9IGZyb20gJy4uL21hdGgvZWRnZS1wYXRoL3N0cmFpZ2gtcGF0aCc7XG5pbXBvcnQgeyBiZXppZXJQYXRoIH0gZnJvbSAnLi4vbWF0aC9lZGdlLXBhdGgvYmV6aWVyLXBhdGgnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgRmxvd0VudGl0eSB9IGZyb20gJy4uL2ludGVyZmFjZXMvZmxvdy1lbnRpdHkuaW50ZXJmYWNlJztcbmltcG9ydCB7IHNtb290aFN0ZXBQYXRoIH0gZnJvbSAnLi4vbWF0aC9lZGdlLXBhdGgvc21vb3RoLXN0ZXAtcGF0aCc7XG5pbXBvcnQgeyBoYXNoQ29kZSB9IGZyb20gJy4uL3V0aWxzL2hhc2gnO1xuaW1wb3J0IHsgQ29udGV4dGFibGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2NvbnRleHRhYmxlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBFZGdlQ29udGV4dCB9IGZyb20gJy4uL2ludGVyZmFjZXMvdGVtcGxhdGUtY29udGV4dC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSGFuZGxlTW9kZWwgfSBmcm9tICcuL2hhbmRsZS5tb2RlbCc7XG5pbXBvcnQgeyBDdXJ2ZUZhY3RvcnlQYXJhbXMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2N1cnZlLWZhY3RvcnkuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZsb3dFbnRpdGllc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9mbG93LWVudGl0aWVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgZXh0ZW5kZWRDb21wdXRlZCB9IGZyb20gJy4uL3V0aWxzL3NpZ25hbHMvZXh0ZW5kZWQtY29tcHV0ZWQnO1xuXG5leHBvcnQgY2xhc3MgRWRnZU1vZGVsIGltcGxlbWVudHMgRmxvd0VudGl0eSwgQ29udGV4dGFibGU8RWRnZUNvbnRleHQ+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBmbG93RW50aXRpZXNTZXJ2aWNlID0gaW5qZWN0KEZsb3dFbnRpdGllc1NlcnZpY2UpO1xuXG4gIHB1YmxpYyBzb3VyY2UgPSBzaWduYWw8Tm9kZU1vZGVsIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuICBwdWJsaWMgdGFyZ2V0ID0gc2lnbmFsPE5vZGVNb2RlbCB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgcHVibGljIGN1cnZlOiBDdXJ2ZTtcbiAgcHVibGljIHR5cGU6IEVkZ2VUeXBlO1xuICBwdWJsaWMgcmVjb25uZWN0YWJsZTogYm9vbGVhbiB8ICdzb3VyY2UnIHwgJ3RhcmdldCc7XG4gIHB1YmxpYyBmbG9hdGluZzogYm9vbGVhbjtcblxuICBwdWJsaWMgc2VsZWN0ZWQgPSBzaWduYWwoZmFsc2UpO1xuICBwdWJsaWMgc2VsZWN0ZWQkID0gdG9PYnNlcnZhYmxlKHRoaXMuc2VsZWN0ZWQpO1xuXG4gIHB1YmxpYyBzaG91bGRMb2FkID0gY29tcHV0ZWQoKCkgPT4gKHRoaXMuc291cmNlKCk/LnNob3VsZExvYWQoKSA/PyBmYWxzZSkgJiYgKHRoaXMudGFyZ2V0KCk/LnNob3VsZExvYWQoKSA/PyBmYWxzZSkpO1xuXG4gIHB1YmxpYyByZW5kZXJPcmRlciA9IHNpZ25hbCgwKTtcblxuICBwdWJsaWMgZGV0YWNoZWQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gdGhpcy5zb3VyY2UoKTtcbiAgICBjb25zdCB0YXJnZXQgPSB0aGlzLnRhcmdldCgpO1xuXG4gICAgaWYgKCFzb3VyY2UgfHwgIXRhcmdldCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgbGV0IGV4aXN0c1NvdXJjZUhhbmRsZSA9IGZhbHNlO1xuICAgIGxldCBleGlzdHNUYXJnZXRIYW5kbGUgPSBmYWxzZTtcblxuICAgIGlmICh0aGlzLmVkZ2Uuc291cmNlSGFuZGxlKSB7XG4gICAgICBleGlzdHNTb3VyY2VIYW5kbGUgPSAhIXNvdXJjZS5oYW5kbGVzKCkuZmluZCgoaGFuZGxlKSA9PiBoYW5kbGUucmF3SGFuZGxlLmlkID09PSB0aGlzLmVkZ2Uuc291cmNlSGFuZGxlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZXhpc3RzU291cmNlSGFuZGxlID0gISFzb3VyY2UuaGFuZGxlcygpLmZpbmQoKGhhbmRsZSkgPT4gaGFuZGxlLnJhd0hhbmRsZS50eXBlID09PSAnc291cmNlJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZWRnZS50YXJnZXRIYW5kbGUpIHtcbiAgICAgIGV4aXN0c1RhcmdldEhhbmRsZSA9ICEhdGFyZ2V0LmhhbmRsZXMoKS5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUuaWQgPT09IHRoaXMuZWRnZS50YXJnZXRIYW5kbGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBleGlzdHNUYXJnZXRIYW5kbGUgPSAhIXRhcmdldC5oYW5kbGVzKCkuZmluZCgoaGFuZGxlKSA9PiBoYW5kbGUucmF3SGFuZGxlLnR5cGUgPT09ICd0YXJnZXQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gIWV4aXN0c1NvdXJjZUhhbmRsZSB8fCAhZXhpc3RzVGFyZ2V0SGFuZGxlO1xuICB9KTtcblxuICBwdWJsaWMgZGV0YWNoZWQkID0gdG9PYnNlcnZhYmxlKHRoaXMuZGV0YWNoZWQpO1xuXG4gIHB1YmxpYyBwYXRoID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IHRoaXMuc291cmNlSGFuZGxlKCk7XG4gICAgY29uc3QgdGFyZ2V0ID0gdGhpcy50YXJnZXRIYW5kbGUoKTtcblxuICAgIC8vIFRPRE86IGRvbid0IGxpa2UgdGhpc1xuICAgIGlmICghc291cmNlIHx8ICF0YXJnZXQpIHtcbiAgICAgIHJldHVybiB7IHBhdGg6ICcnIH07XG4gICAgfVxuXG4gICAgY29uc3QgcGFyYW1zID0gdGhpcy5nZXRQYXRoRmFjdG9yeVBhcmFtcyhzb3VyY2UsIHRhcmdldCk7XG5cbiAgICBzd2l0Y2ggKHRoaXMuY3VydmUpIHtcbiAgICAgIGNhc2UgJ3N0cmFpZ2h0JzpcbiAgICAgICAgcmV0dXJuIHN0cmFpZ2h0UGF0aChwYXJhbXMpO1xuICAgICAgY2FzZSAnYmV6aWVyJzpcbiAgICAgICAgcmV0dXJuIGJlemllclBhdGgocGFyYW1zKTtcbiAgICAgIGNhc2UgJ3Ntb290aC1zdGVwJzpcbiAgICAgICAgcmV0dXJuIHNtb290aFN0ZXBQYXRoKHBhcmFtcyk7XG4gICAgICBjYXNlICdzdGVwJzpcbiAgICAgICAgcmV0dXJuIHNtb290aFN0ZXBQYXRoKHBhcmFtcywgMCk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdGhpcy5jdXJ2ZShwYXJhbXMpO1xuICAgIH1cbiAgfSk7XG5cbiAgcHVibGljIHNvdXJjZUhhbmRsZSA9IGV4dGVuZGVkQ29tcHV0ZWQ8SGFuZGxlTW9kZWwgfCBudWxsPigocHJldmlvdXNIYW5kbGUpID0+IHtcbiAgICBsZXQgaGFuZGxlOiBIYW5kbGVNb2RlbCB8IG51bGwgPSBudWxsO1xuXG4gICAgaWYgKHRoaXMuZmxvYXRpbmcpIHtcbiAgICAgIGhhbmRsZSA9IHRoaXMuY2xvc2VzdEhhbmRsZXMoKS5zb3VyY2VIYW5kbGU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmVkZ2Uuc291cmNlSGFuZGxlKSB7XG4gICAgICAgIGhhbmRsZSA9XG4gICAgICAgICAgdGhpcy5zb3VyY2UoKVxuICAgICAgICAgICAgPy5oYW5kbGVzKClcbiAgICAgICAgICAgIC5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUuaWQgPT09IHRoaXMuZWRnZS5zb3VyY2VIYW5kbGUpID8/IG51bGw7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBoYW5kbGUgPVxuICAgICAgICAgIHRoaXMuc291cmNlKClcbiAgICAgICAgICAgID8uaGFuZGxlcygpXG4gICAgICAgICAgICAuZmluZCgoaGFuZGxlKSA9PiBoYW5kbGUucmF3SGFuZGxlLnR5cGUgPT09ICdzb3VyY2UnKSA/PyBudWxsO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEluIGNhc2Ugb2YgdmlydHVhbCBzY3JvbGxpbmcsIGlmIHRoZSBub2RlIGlzIHNjcm9sbGVkIG91dCBvZiB2aWV3IHRoZSBoYW5kbGUgbWF5IGRpc2FwcGVhclxuICAgIC8vIHdoaWNoIGNvdWxkIGxlYWQgdG8gdGhlIGVkZ2Ugbm90IGJlaW5nIHJlbmRlcmVkXG4gICAgLy8gc28gd2UgcmV0dXJuIHRoZSBwcmV2aW91cyBoYW5kbGUgaWYgdGhlIGN1cnJlbnQgb25lIGlzIG51bGxcbiAgICAvLyBUT0RPOiBjaGVjayBpZiB0aGlzIGJyZWFrcyBhbnl0aGluZ1xuICAgIGlmIChoYW5kbGUgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBwcmV2aW91c0hhbmRsZTtcbiAgICB9XG5cbiAgICByZXR1cm4gaGFuZGxlO1xuICB9KTtcblxuICBwdWJsaWMgdGFyZ2V0SGFuZGxlID0gZXh0ZW5kZWRDb21wdXRlZDxIYW5kbGVNb2RlbCB8IG51bGw+KChwcmV2aW91c0hhbmRsZSkgPT4ge1xuICAgIGxldCBoYW5kbGU6IEhhbmRsZU1vZGVsIHwgbnVsbCA9IG51bGw7XG5cbiAgICBpZiAodGhpcy5mbG9hdGluZykge1xuICAgICAgaGFuZGxlID0gdGhpcy5jbG9zZXN0SGFuZGxlcygpLnRhcmdldEhhbmRsZTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuZWRnZS50YXJnZXRIYW5kbGUpIHtcbiAgICAgICAgaGFuZGxlID1cbiAgICAgICAgICB0aGlzLnRhcmdldCgpXG4gICAgICAgICAgICA/LmhhbmRsZXMoKVxuICAgICAgICAgICAgLmZpbmQoKGhhbmRsZSkgPT4gaGFuZGxlLnJhd0hhbmRsZS5pZCA9PT0gdGhpcy5lZGdlLnRhcmdldEhhbmRsZSkgPz8gbnVsbDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGhhbmRsZSA9XG4gICAgICAgICAgdGhpcy50YXJnZXQoKVxuICAgICAgICAgICAgPy5oYW5kbGVzKClcbiAgICAgICAgICAgIC5maW5kKChoYW5kbGUpID0+IGhhbmRsZS5yYXdIYW5kbGUudHlwZSA9PT0gJ3RhcmdldCcpID8/IG51bGw7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW4gY2FzZSBvZiB2aXJ0dWFsIHNjcm9sbGluZywgaWYgdGhlIG5vZGUgaXMgc2Nyb2xsZWQgb3V0IG9mIHZpZXcgdGhlIGhhbmRsZSBtYXkgZGlzYXBwZWFyXG4gICAgLy8gd2hpY2ggY291bGQgbGVhZCB0byB0aGUgZWRnZSBub3QgYmVpbmcgcmVuZGVyZWRcbiAgICAvLyBzbyB3ZSByZXR1cm4gdGhlIHByZXZpb3VzIGhhbmRsZSBpZiB0aGUgY3VycmVudCBvbmUgaXMgbnVsbFxuICAgIC8vIFRPRE86IGNoZWNrIGlmIHRoaXMgYnJlYWtzIGFueXRoaW5nXG4gICAgaWYgKGhhbmRsZSA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHByZXZpb3VzSGFuZGxlO1xuICAgIH1cblxuICAgIHJldHVybiBoYW5kbGU7XG4gIH0pO1xuXG4gIHB1YmxpYyBjbG9zZXN0SGFuZGxlcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSB0aGlzLnNvdXJjZSgpO1xuICAgIGNvbnN0IHRhcmdldCA9IHRoaXMudGFyZ2V0KCk7XG5cbiAgICBpZiAoIXNvdXJjZSB8fCAhdGFyZ2V0KSB7XG4gICAgICByZXR1cm4geyBzb3VyY2VIYW5kbGU6IG51bGwsIHRhcmdldEhhbmRsZTogbnVsbCB9O1xuICAgIH1cblxuICAgIC8vIEdldCBhbGwgc291cmNlIGhhbmRsZXMgZnJvbSBzb3VyY2Ugbm9kZVxuICAgIGNvbnN0IHNvdXJjZUhhbmRsZXMgPVxuICAgICAgdGhpcy5mbG93RW50aXRpZXNTZXJ2aWNlLmNvbm5lY3Rpb24oKS5tb2RlID09PSAnc3RyaWN0J1xuICAgICAgICA/IHNvdXJjZS5oYW5kbGVzKCkuZmlsdGVyKChoKSA9PiBoLnJhd0hhbmRsZS50eXBlID09PSAnc291cmNlJylcbiAgICAgICAgOiBzb3VyY2UuaGFuZGxlcygpO1xuICAgIC8vIEdldCBhbGwgdGFyZ2V0IGhhbmRsZXMgZnJvbSB0YXJnZXQgbm9kZVxuICAgIGNvbnN0IHRhcmdldEhhbmRsZXMgPVxuICAgICAgdGhpcy5mbG93RW50aXRpZXNTZXJ2aWNlLmNvbm5lY3Rpb24oKS5tb2RlID09PSAnc3RyaWN0J1xuICAgICAgICA/IHRhcmdldC5oYW5kbGVzKCkuZmlsdGVyKChoKSA9PiBoLnJhd0hhbmRsZS50eXBlID09PSAndGFyZ2V0JylcbiAgICAgICAgOiB0YXJnZXQuaGFuZGxlcygpO1xuXG4gICAgaWYgKHNvdXJjZUhhbmRsZXMubGVuZ3RoID09PSAwIHx8IHRhcmdldEhhbmRsZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4geyBzb3VyY2VIYW5kbGU6IG51bGwsIHRhcmdldEhhbmRsZTogbnVsbCB9O1xuICAgIH1cblxuICAgIGxldCBtaW5EaXN0YW5jZSA9IEluZmluaXR5O1xuICAgIGxldCBjbG9zZXN0U291cmNlSGFuZGxlOiBIYW5kbGVNb2RlbCB8IG51bGwgPSBudWxsO1xuICAgIGxldCBjbG9zZXN0VGFyZ2V0SGFuZGxlOiBIYW5kbGVNb2RlbCB8IG51bGwgPSBudWxsO1xuXG4gICAgLy8gQ2hlY2sgYWxsIGNvbWJpbmF0aW9ucyBvZiBzb3VyY2UgYW5kIHRhcmdldCBoYW5kbGVzXG4gICAgZm9yIChjb25zdCBzb3VyY2VIYW5kbGUgb2Ygc291cmNlSGFuZGxlcykge1xuICAgICAgZm9yIChjb25zdCB0YXJnZXRIYW5kbGUgb2YgdGFyZ2V0SGFuZGxlcykge1xuICAgICAgICBjb25zdCBzb3VyY2VQb2ludCA9IHNvdXJjZUhhbmRsZS5wb2ludEFic29sdXRlKCk7XG4gICAgICAgIGNvbnN0IHRhcmdldFBvaW50ID0gdGFyZ2V0SGFuZGxlLnBvaW50QWJzb2x1dGUoKTtcblxuICAgICAgICBjb25zdCBkaXN0YW5jZSA9IE1hdGguc3FydChcbiAgICAgICAgICBNYXRoLnBvdyhzb3VyY2VQb2ludC54IC0gdGFyZ2V0UG9pbnQueCwgMikgKyBNYXRoLnBvdyhzb3VyY2VQb2ludC55IC0gdGFyZ2V0UG9pbnQueSwgMiksXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKGRpc3RhbmNlIDwgbWluRGlzdGFuY2UpIHtcbiAgICAgICAgICBtaW5EaXN0YW5jZSA9IGRpc3RhbmNlO1xuICAgICAgICAgIGNsb3Nlc3RTb3VyY2VIYW5kbGUgPSBzb3VyY2VIYW5kbGU7XG4gICAgICAgICAgY2xvc2VzdFRhcmdldEhhbmRsZSA9IHRhcmdldEhhbmRsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBzb3VyY2VIYW5kbGU6IGNsb3Nlc3RTb3VyY2VIYW5kbGUsXG4gICAgICB0YXJnZXRIYW5kbGU6IGNsb3Nlc3RUYXJnZXRIYW5kbGUsXG4gICAgfTtcbiAgfSk7XG5cbiAgLyoqXG4gICAqIFRPRE86IG5vdCByZWFjdGl2ZVxuICAgKi9cbiAgcHVibGljIG1hcmtlclN0YXJ0VXJsID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IG1hcmtlciA9IHRoaXMuZWRnZS5tYXJrZXJzPy5zdGFydDtcblxuICAgIHJldHVybiBtYXJrZXIgPyBgdXJsKCMke2hhc2hDb2RlKEpTT04uc3RyaW5naWZ5KG1hcmtlcikpfSlgIDogJyc7XG4gIH0pO1xuXG4gIC8qKlxuICAgKiBUT0RPOiBub3QgcmVhY3RpdmVcbiAgICovXG4gIHB1YmxpYyBtYXJrZXJFbmRVcmwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgbWFya2VyID0gdGhpcy5lZGdlLm1hcmtlcnM/LmVuZDtcblxuICAgIHJldHVybiBtYXJrZXIgPyBgdXJsKCMke2hhc2hDb2RlKEpTT04uc3RyaW5naWZ5KG1hcmtlcikpfSlgIDogJyc7XG4gIH0pO1xuXG4gIHB1YmxpYyBjb250ZXh0ID0ge1xuICAgICRpbXBsaWNpdDoge1xuICAgICAgLy8gVE9ETzogY2hlY2sgaWYgZWRnZSBjb3VsZCBjaGFuZ2VcbiAgICAgIGVkZ2U6IHRoaXMuZWRnZSxcbiAgICAgIHBhdGg6IGNvbXB1dGVkKCgpID0+IHRoaXMucGF0aCgpLnBhdGgpLFxuICAgICAgbWFya2VyU3RhcnQ6IHRoaXMubWFya2VyU3RhcnRVcmwsXG4gICAgICBtYXJrZXJFbmQ6IHRoaXMubWFya2VyRW5kVXJsLFxuICAgICAgc2VsZWN0ZWQ6IHRoaXMuc2VsZWN0ZWQuYXNSZWFkb25seSgpLFxuICAgICAgc2hvdWxkTG9hZDogdGhpcy5zaG91bGRMb2FkLFxuICAgIH0sXG4gIH07XG5cbiAgcHVibGljIGVkZ2VMYWJlbHM6IHsgW3Bvc2l0aW9uIGluIEVkZ2VMYWJlbFBvc2l0aW9uXT86IEVkZ2VMYWJlbE1vZGVsIH0gPSB7fTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZWRnZTogRWRnZSkge1xuICAgIHRoaXMudHlwZSA9IGVkZ2UudHlwZSA/PyAnZGVmYXVsdCc7XG4gICAgdGhpcy5jdXJ2ZSA9IGVkZ2UuY3VydmUgPz8gJ2Jlemllcic7XG4gICAgdGhpcy5yZWNvbm5lY3RhYmxlID0gZWRnZS5yZWNvbm5lY3RhYmxlID8/IGZhbHNlO1xuICAgIHRoaXMuZmxvYXRpbmcgPSBlZGdlLmZsb2F0aW5nID8/IGZhbHNlO1xuXG4gICAgaWYgKGVkZ2UuZWRnZUxhYmVscz8uc3RhcnQpIHRoaXMuZWRnZUxhYmVscy5zdGFydCA9IG5ldyBFZGdlTGFiZWxNb2RlbChlZGdlLmVkZ2VMYWJlbHMuc3RhcnQpO1xuICAgIGlmIChlZGdlLmVkZ2VMYWJlbHM/LmNlbnRlcikgdGhpcy5lZGdlTGFiZWxzLmNlbnRlciA9IG5ldyBFZGdlTGFiZWxNb2RlbChlZGdlLmVkZ2VMYWJlbHMuY2VudGVyKTtcbiAgICBpZiAoZWRnZS5lZGdlTGFiZWxzPy5lbmQpIHRoaXMuZWRnZUxhYmVscy5lbmQgPSBuZXcgRWRnZUxhYmVsTW9kZWwoZWRnZS5lZGdlTGFiZWxzLmVuZCk7XG4gIH1cblxuICBwcml2YXRlIGdldFBhdGhGYWN0b3J5UGFyYW1zKHNvdXJjZTogSGFuZGxlTW9kZWwsIHRhcmdldDogSGFuZGxlTW9kZWwpOiBDdXJ2ZUZhY3RvcnlQYXJhbXMge1xuICAgIHJldHVybiB7XG4gICAgICBtb2RlOiAnZWRnZScsXG4gICAgICBlZGdlOiB0aGlzLmVkZ2UsXG4gICAgICBzb3VyY2VQb2ludDogc291cmNlLnBvaW50QWJzb2x1dGUoKSxcbiAgICAgIHRhcmdldFBvaW50OiB0YXJnZXQucG9pbnRBYnNvbHV0ZSgpLFxuICAgICAgc291cmNlUG9zaXRpb246IHNvdXJjZS5yYXdIYW5kbGUucG9zaXRpb24sXG4gICAgICB0YXJnZXRQb3NpdGlvbjogdGFyZ2V0LnJhd0hhbmRsZS5wb3NpdGlvbixcbiAgICAgIGFsbEVkZ2VzOiB0aGlzLmZsb3dFbnRpdGllc1NlcnZpY2UucmF3RWRnZXMoKSxcbiAgICAgIGFsbE5vZGVzOiB0aGlzLmZsb3dFbnRpdGllc1NlcnZpY2UucmF3Tm9kZXMoKSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
@@ -4,6 +4,12 @@ import { toObservable } from '@angular/core/rxjs-interop';
|
|
|
4
4
|
import { FlowEntitiesService } from '../services/flow-entities.service';
|
|
5
5
|
import { MAGIC_NUMBER_TO_FIX_GLITCH_IN_CHROME } from '../constants/magic-number-to-fix-glitch-in-chrome.constant';
|
|
6
6
|
import { toUnifiedNode } from '../utils/to-unified-node';
|
|
7
|
+
import { catchError, filter, of, shareReplay, switchMap } from 'rxjs';
|
|
8
|
+
import { FlowSettingsService } from '../services/flow-settings.service';
|
|
9
|
+
import { NodeRenderingService } from '../services/node-rendering.service';
|
|
10
|
+
import { extendedComputed } from '../utils/signals/extended-computed';
|
|
11
|
+
import { isCustomDynamicNodeComponent, isCustomNodeComponent } from '../utils/is-vflow-component';
|
|
12
|
+
import { isCallable } from '../utils/is-callable';
|
|
7
13
|
export class NodeModel {
|
|
8
14
|
static { this.defaultWidth = 100; }
|
|
9
15
|
static { this.defaultHeight = 50; }
|
|
@@ -11,6 +17,8 @@ export class NodeModel {
|
|
|
11
17
|
constructor(rawNode) {
|
|
12
18
|
this.rawNode = rawNode;
|
|
13
19
|
this.entitiesService = inject(FlowEntitiesService);
|
|
20
|
+
this.settingsService = inject(FlowSettingsService);
|
|
21
|
+
this.nodeRenderingService = inject(NodeRenderingService);
|
|
14
22
|
this.isVisible = signal(false);
|
|
15
23
|
this.point = signal({ x: 0, y: 0 });
|
|
16
24
|
this.width = signal(NodeModel.defaultWidth);
|
|
@@ -49,6 +57,39 @@ export class NodeModel {
|
|
|
49
57
|
this.magnetRadius = 20;
|
|
50
58
|
// TODO: not sure if we need to statically store it
|
|
51
59
|
this.isComponentType = isComponentStaticNode(this.rawNode) || isComponentDynamicNode(this.rawNode);
|
|
60
|
+
this.shouldLoad = extendedComputed((previousShouldLoad) => {
|
|
61
|
+
if (previousShouldLoad) {
|
|
62
|
+
return true;
|
|
63
|
+
}
|
|
64
|
+
if (this.settingsService.optimization().lazyLoadTrigger === 'immediate') {
|
|
65
|
+
return true;
|
|
66
|
+
}
|
|
67
|
+
else if (this.settingsService.optimization().lazyLoadTrigger === 'viewport') {
|
|
68
|
+
// Immediately load component if it's a plain class
|
|
69
|
+
if (isCustomNodeComponent(this.rawNode.type)) {
|
|
70
|
+
return true;
|
|
71
|
+
}
|
|
72
|
+
// Immediately load component if it's a plain class
|
|
73
|
+
if (isCustomDynamicNodeComponent(this.rawNode.type)) {
|
|
74
|
+
return true;
|
|
75
|
+
}
|
|
76
|
+
// For cases
|
|
77
|
+
// - if it's a factory with dynamic import
|
|
78
|
+
// - if it's a template (html, svg, group)
|
|
79
|
+
// check if it's in the viewport
|
|
80
|
+
if (isCallable(this.rawNode.type) ||
|
|
81
|
+
this.rawNode.type === 'html-template' ||
|
|
82
|
+
this.rawNode.type === 'svg-template' ||
|
|
83
|
+
this.rawNode.type === 'template-group') {
|
|
84
|
+
return this.nodeRenderingService.viewportNodes().includes(this);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
// For each other case, we want to load the component immediately
|
|
88
|
+
return true;
|
|
89
|
+
});
|
|
90
|
+
this.componentInstance$ = toObservable(this.shouldLoad).pipe(filter(Boolean),
|
|
91
|
+
// @ts-expect-error we assume it's a function with dynamic import
|
|
92
|
+
switchMap(() => this.rawNode.type()), catchError(() => of(this.rawNode.type)), shareReplay(1));
|
|
52
93
|
// Default node specific thing
|
|
53
94
|
this.text = signal('');
|
|
54
95
|
// Component node specific thing
|
|
@@ -98,7 +139,8 @@ export class NodeModel {
|
|
|
98
139
|
this.context = {
|
|
99
140
|
$implicit: {
|
|
100
141
|
node: rawNode,
|
|
101
|
-
selected: this.selected,
|
|
142
|
+
selected: this.selected.asReadonly(),
|
|
143
|
+
shouldLoad: this.shouldLoad,
|
|
102
144
|
},
|
|
103
145
|
};
|
|
104
146
|
}
|
|
@@ -106,9 +148,10 @@ export class NodeModel {
|
|
|
106
148
|
this.context = {
|
|
107
149
|
$implicit: {
|
|
108
150
|
node: rawNode,
|
|
109
|
-
selected: this.selected,
|
|
110
|
-
width: this.width,
|
|
111
|
-
height: this.height,
|
|
151
|
+
selected: this.selected.asReadonly(),
|
|
152
|
+
width: this.width.asReadonly(),
|
|
153
|
+
height: this.height.asReadonly(),
|
|
154
|
+
shouldLoad: this.shouldLoad,
|
|
112
155
|
},
|
|
113
156
|
};
|
|
114
157
|
}
|
|
@@ -117,8 +160,9 @@ export class NodeModel {
|
|
|
117
160
|
$implicit: {
|
|
118
161
|
node: rawNode,
|
|
119
162
|
selected: this.selected.asReadonly(),
|
|
120
|
-
width: this.width,
|
|
121
|
-
height: this.height,
|
|
163
|
+
width: this.width.asReadonly(),
|
|
164
|
+
height: this.height.asReadonly(),
|
|
165
|
+
shouldLoad: this.shouldLoad,
|
|
122
166
|
},
|
|
123
167
|
};
|
|
124
168
|
}
|
|
@@ -134,4 +178,4 @@ export class NodeModel {
|
|
|
134
178
|
this.point.set(point);
|
|
135
179
|
}
|
|
136
180
|
}
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9tb2RlbHMvbm9kZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFxQixzQkFBc0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUkxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUdsSCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFJekQsTUFBTSxPQUFPLFNBQVM7YUFHTCxpQkFBWSxHQUFHLEdBQUcsQUFBTixDQUFPO2FBQ25CLGtCQUFhLEdBQUcsRUFBRSxBQUFMLENBQU07YUFDbkIsaUJBQVksR0FBRyxTQUFTLEFBQVosQ0FBYTtJQWlHeEMsWUFBbUIsT0FBaUM7UUFBakMsWUFBTyxHQUFQLE9BQU8sQ0FBMEI7UUEvRjVDLG9CQUFlLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFFL0MsY0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUxQixVQUFLLEdBQUcsTUFBTSxDQUFRLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUd0QyxVQUFLLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUd2QyxXQUFNLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUdoRDs7V0FF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cnQgeyBUZW1wbGF0ZVJlZiwgY29tcHV0ZWQsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEeW5hbWljTm9kZSwgTm9kZSwgaXNDb21wb25lbnREeW5hbWljTm9kZSwgaXNDb21wb25lbnRTdGF0aWNOb2RlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9ub2RlLmludGVyZmFjZSc7XG5pbXBvcnQgeyB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBIYW5kbGVNb2RlbCB9IGZyb20gJy4vaGFuZGxlLm1vZGVsJztcbmltcG9ydCB7IEZsb3dFbnRpdHkgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2Zsb3ctZW50aXR5LmludGVyZmFjZSc7XG5pbXBvcnQgeyBQb2ludCB9IGZyb20gJy4uL2ludGVyZmFjZXMvcG9pbnQuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZsb3dFbnRpdGllc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9mbG93LWVudGl0aWVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgTUFHSUNfTlVNQkVSX1RPX0ZJWF9HTElUQ0hfSU5fQ0hST01FIH0gZnJvbSAnLi4vY29uc3RhbnRzL21hZ2ljLW51bWJlci10by1maXgtZ2xpdGNoLWluLWNocm9tZS5jb25zdGFudCc7XG5pbXBvcnQgeyBDb250ZXh0YWJsZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvY29udGV4dGFibGUuaW50ZXJmYWNlJztcbmltcG9ydCB7IEdyb3VwTm9kZUNvbnRleHQsIE5vZGVDb250ZXh0IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy90ZW1wbGF0ZS1jb250ZXh0LmludGVyZmFjZSc7XG5pbXBvcnQgeyB0b1VuaWZpZWROb2RlIH0gZnJvbSAnLi4vdXRpbHMvdG8tdW5pZmllZC1ub2RlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE5vZGVQcmV2aWV3IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9ub2RlLXByZXZpZXcuaW50ZXJmYWNlJztcblxuZXhwb3J0IGNsYXNzIE5vZGVNb2RlbDxUID0gdW5rbm93bj5cbiAgaW1wbGVtZW50cyBGbG93RW50aXR5LCBDb250ZXh0YWJsZTxOb2RlQ29udGV4dCB8IEdyb3VwTm9kZUNvbnRleHQgfCB7ICRpbXBsaWNpdDogb2JqZWN0IH0+XG57XG4gIHByaXZhdGUgc3RhdGljIGRlZmF1bHRXaWR0aCA9IDEwMDtcbiAgcHJpdmF0ZSBzdGF0aWMgZGVmYXVsdEhlaWdodCA9IDUwO1xuICBwcml2YXRlIHN0YXRpYyBkZWZhdWx0Q29sb3IgPSAnIzFiMjYyYyc7XG5cbiAgcHJpdmF0ZSBlbnRpdGllc1NlcnZpY2UgPSBpbmplY3QoRmxvd0VudGl0aWVzU2VydmljZSk7XG5cbiAgcHVibGljIGlzVmlzaWJsZSA9IHNpZ25hbChmYWxzZSk7XG5cbiAgcHVibGljIHBvaW50ID0gc2lnbmFsPFBvaW50Pih7IHg6IDAsIHk6IDAgfSk7XG4gIHB1YmxpYyBwb2ludCQ6IE9ic2VydmFibGU8UG9pbnQ+O1xuXG4gIHB1YmxpYyB3aWR0aCA9IHNpZ25hbChOb2RlTW9kZWwuZGVmYXVsdFdpZHRoKTtcbiAgcHVibGljIHdpZHRoJDogT2JzZXJ2YWJsZTxudW1iZXI+O1xuXG4gIHB1YmxpYyBoZWlnaHQgPSBzaWduYWwoTm9kZU1vZGVsLmRlZmF1bHRIZWlnaHQpO1xuICBwdWJsaWMgaGVpZ2h0JDogT2JzZXJ2YWJsZTxudW1iZXI+O1xuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCB1c2Ugd2lkdGggb3IgaGVpZ2h0IHNpZ25hbHNcbiAgICovXG4gIHB1YmxpYyBzaXplID0gY29tcHV0ZWQoKCkgPT4gKHsgd2lkdGg6IHRoaXMud2lkdGgoKSwgaGVpZ2h0OiB0aGlzLmhlaWdodCgpIH0pKTtcbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIHVzZSB3aWR0aCQgb3IgaGVpZ2h0JFxuICAgKi9cbiAgcHVibGljIHNpemUkOiBPYnNlcnZhYmxlPHsgd2lkdGg6IG51bWJlcjsgaGVpZ2h0OiBudW1iZXIgfT47XG5cbiAgLyoqXG4gICAqIElmIHJlc2l6ZXIgaXMgdXNlZCwgdGhlIG5vZGUgc2l6ZSBmdWxseSBkZXBlbmRzIG9uIHRoZSByZXNpemVyXG4gICAqIE90aGVyd2lzZSBpdCBjYWxjdWxhdGVzIHRoZSBzaXplIGJhc2VkIG9uIHRoZSBjb250ZW50XG4gICAqL1xuICBwdWJsaWMgc3R5bGVXaWR0aCA9IGNvbXB1dGVkKCgpID0+ICh0aGlzLmNvbnRyb2xsZWRCeVJlc2l6ZXIoKSA/IGAke3RoaXMud2lkdGgoKX1weGAgOiAnMTAwJScpKTtcbiAgcHVibGljIHN0eWxlSGVpZ2h0ID0gY29tcHV0ZWQoKCkgPT4gKHRoaXMuY29udHJvbGxlZEJ5UmVzaXplcigpID8gYCR7dGhpcy5oZWlnaHQoKX1weGAgOiAnMTAwJScpKTtcblxuICBwdWJsaWMgZm9XaWR0aCA9IGNvbXB1dGVkKCgpID0+IHRoaXMud2lkdGgoKSArIE1BR0lDX05VTUJFUl9UT19GSVhfR0xJVENIX0lOX0NIUk9NRSk7XG4gIHB1YmxpYyBmb0hlaWdodCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuaGVpZ2h0KCkgKyBNQUdJQ19OVU1CRVJfVE9fRklYX0dMSVRDSF9JTl9DSFJPTUUpO1xuXG4gIHB1YmxpYyByZW5kZXJPcmRlciA9IHNpZ25hbCgwKTtcblxuICBwdWJsaWMgc2VsZWN0ZWQgPSBzaWduYWwoZmFsc2UpO1xuICBwdWJsaWMgc2VsZWN0ZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIHB1YmxpYyBwcmV2aWV3ID0gc2lnbmFsPE5vZGVQcmV2aWV3Pih7IHN0eWxlOiB7fSB9KTtcblxuICBwdWJsaWMgZ2xvYmFsUG9pbnQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgbGV0IHBhcmVudCA9IHRoaXMucGFyZW50KCk7XG4gICAgbGV0IHggPSB0aGlzLnBvaW50KCkueDtcbiAgICBsZXQgeSA9IHRoaXMucG9pbnQoKS55O1xuXG4gICAgd2hpbGUgKHBhcmVudCAhPT0gbnVsbCkge1xuICAgICAgeCArPSBwYXJlbnQucG9pbnQoKS54O1xuICAgICAgeSArPSBwYXJlbnQucG9pbnQoKS55O1xuXG4gICAgICBwYXJlbnQgPSBwYXJlbnQucGFyZW50KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHsgeCwgeSB9O1xuICB9KTtcblxuICBwdWJsaWMgcG9pbnRUcmFuc2Zvcm0gPSBjb21wdXRlZCgoKSA9PiBgdHJhbnNsYXRlKCR7dGhpcy5nbG9iYWxQb2ludCgpLnh9LCAke3RoaXMuZ2xvYmFsUG9pbnQoKS55fSlgKTtcblxuICBwdWJsaWMgaGFuZGxlcyA9IHNpZ25hbDxIYW5kbGVNb2RlbFtdPihbXSk7XG4gIHB1YmxpYyBoYW5kbGVzJDogT2JzZXJ2YWJsZTxIYW5kbGVNb2RlbFtdPjtcblxuICBwdWJsaWMgZHJhZ2dhYmxlID0gc2lnbmFsKHRydWUpO1xuXG4gIHB1YmxpYyBkcmFnSGFuZGxlc0NvdW50ID0gc2lnbmFsKDApO1xuXG4gIC8vIGRpc2FibGVkIGZvciBjb25maWd1cmF0aW9uIGZvciBub3dcbiAgcHVibGljIHJlYWRvbmx5IG1hZ25ldFJhZGl1cyA9IDIwO1xuXG4gIC8vIFRPRE86IG5vdCBzdXJlIGlmIHdlIG5lZWQgdG8gc3RhdGljYWxseSBzdG9yZSBpdFxuICBwdWJsaWMgaXNDb21wb25lbnRUeXBlID1cbiAgICBpc0NvbXBvbmVudFN0YXRpY05vZGUodGhpcy5yYXdOb2RlIGFzIE5vZGUpIHx8IGlzQ29tcG9uZW50RHluYW1pY05vZGUodGhpcy5yYXdOb2RlIGFzIER5bmFtaWNOb2RlKTtcblxuICAvLyBEZWZhdWx0IG5vZGUgc3BlY2lmaWMgdGhpbmdcbiAgcHVibGljIHRleHQgPSBzaWduYWwoJycpO1xuXG4gIC8vIENvbXBvbmVudCBub2RlIHNwZWNpZmljIHRoaW5nXG4gIHB1YmxpYyBjb21wb25lbnRUeXBlSW5wdXRzID0ge1xuICAgIG5vZGU6IHRoaXMucmF3Tm9kZSxcbiAgfTtcblxuICBwdWJsaWMgcGFyZW50ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5lbnRpdGllc1NlcnZpY2Uubm9kZXMoKS5maW5kKChuKSA9PiBuLnJhd05vZGUuaWQgPT09IHRoaXMucGFyZW50SWQoKSkgPz8gbnVsbCk7XG5cbiAgcHVibGljIGNoaWxkcmVuID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5lbnRpdGllc1NlcnZpY2Uubm9kZXMoKS5maWx0ZXIoKG4pID0+IG4ucGFyZW50SWQoKSA9PT0gdGhpcy5yYXdOb2RlLmlkKSk7XG5cbiAgcHVibGljIGNvbG9yID0gc2lnbmFsKE5vZGVNb2RlbC5kZWZhdWx0Q29sb3IpO1xuXG4gIHB1YmxpYyBjb250cm9sbGVkQnlSZXNpemVyID0gc2lnbmFsKGZhbHNlKTtcbiAgcHVibGljIHJlc2l6YWJsZSA9IHNpZ25hbChmYWxzZSk7XG4gIHB1YmxpYyByZXNpemluZyA9IHNpZ25hbChmYWxzZSk7XG4gIHB1YmxpYyByZXNpemVyVGVtcGxhdGUgPSBzaWduYWw8VGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsPihudWxsKTtcblxuICBwdWJsaWMgY29udGV4dCA9IHtcbiAgICAkaW1wbGljaXQ6IHt9LFxuICB9O1xuXG4gIHByaXZhdGUgcGFyZW50SWQgPSBzaWduYWw8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHJhd05vZGU6IE5vZGU8VD4gfCBEeW5hbWljTm9kZTxUPikge1xuICAgIGNvbnN0IGludGVybmFsTm9kZSA9IHRvVW5pZmllZE5vZGUocmF3Tm9kZSk7XG5cbiAgICBpZiAoaW50ZXJuYWxOb2RlLnBvaW50KSB7XG4gICAgICB0aGlzLnBvaW50ID0gaW50ZXJuYWxOb2RlLnBvaW50O1xuICAgIH1cblxuICAgIGlmIChpbnRlcm5hbE5vZGUud2lkdGgpIHtcbiAgICAgIHRoaXMud2lkdGggPSBpbnRlcm5hbE5vZGUud2lkdGg7XG4gICAgfVxuXG4gICAgaWYgKGludGVybmFsTm9kZS5oZWlnaHQpIHtcbiAgICAgIHRoaXMuaGVpZ2h0ID0gaW50ZXJuYWxOb2RlLmhlaWdodDtcbiAgICB9XG5cbiAgICBpZiAoaW50ZXJuYWxOb2RlLmRyYWdnYWJsZSkge1xuICAgICAgdGhpcy5kcmFnZ2FibGUgPSBpbnRlcm5hbE5vZGUuZHJhZ2dhYmxlO1xuICAgIH1cblxuICAgIGlmIChpbnRlcm5hbE5vZGUucGFyZW50SWQpIHtcbiAgICAgIHRoaXMucGFyZW50SWQgPSBpbnRlcm5hbE5vZGUucGFyZW50SWQ7XG4gICAgfVxuXG4gICAgaWYgKGludGVybmFsTm9kZS5wcmV2aWV3KSB7XG4gICAgICB0aGlzLnByZXZpZXcgPSBpbnRlcm5hbE5vZGUucHJldmlldztcbiAgICB9XG5cbiAgICBpZiAoaW50ZXJuYWxOb2RlLnR5cGUgPT09ICdkZWZhdWx0LWdyb3VwJyAmJiBpbnRlcm5hbE5vZGUuY29sb3IpIHtcbiAgICAgIHRoaXMuY29sb3IgPSBpbnRlcm5hbE5vZGUuY29sb3I7XG4gICAgfVxuXG4gICAgaWYgKGludGVybmFsTm9kZS50eXBlID09PSAnZGVmYXVsdC1ncm91cCcgJiYgaW50ZXJuYWxOb2RlLnJlc2l6YWJsZSkge1xuICAgICAgdGhpcy5yZXNpemFibGUgPSBpbnRlcm5hbE5vZGUucmVzaXphYmxlO1xuICAgIH1cblxuICAgIGlmIChpbnRlcm5hbE5vZGUudHlwZSA9PT0gJ2RlZmF1bHQnICYmIGludGVybmFsTm9kZS50ZXh0KSB7XG4gICAgICB0aGlzLnRleHQgPSBpbnRlcm5hbE5vZGUudGV4dDtcbiAgICB9XG5cbiAgICBpZiAoaW50ZXJuYWxOb2RlLnR5cGUgPT09ICdodG1sLXRlbXBsYXRlJykge1xuICAgICAgdGhpcy5jb250ZXh0ID0ge1xuICAgICAgICAkaW1wbGljaXQ6IHtcbiAgICAgICAgICBub2RlOiByYXdOb2RlLFxuICAgICAgICAgIHNlbGVjdGVkOiB0aGlzLnNlbGVjdGVkLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAoaW50ZXJuYWxOb2RlLnR5cGUgPT09ICdzdmctdGVtcGxhdGUnKSB7XG4gICAgICB0aGlzLmNvbnRleHQgPSB7XG4gICAgICAgICRpbXBsaWNpdDoge1xuICAgICAgICAgIG5vZGU6IHJhd05vZGUsXG4gICAgICAgICAgc2VsZWN0ZWQ6IHRoaXMuc2VsZWN0ZWQsXG4gICAgICAgICAgd2lkdGg6IHRoaXMud2lkdGgsXG4gICAgICAgICAgaGVpZ2h0OiB0aGlzLmhlaWdodCxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKGludGVybmFsTm9kZS50eXBlID09PSAndGVtcGxhdGUtZ3JvdXAnKSB7XG4gICAgICB0aGlzLmNvbnRleHQgPSB7XG4gICAgICAgICRpbXBsaWNpdDoge1xuICAgICAgICAgIG5vZGU6IHJhd05vZGUsXG4gICAgICAgICAgc2VsZWN0ZWQ6IHRoaXMuc2VsZWN0ZWQuYXNSZWFkb25seSgpLFxuICAgICAgICAgIHdpZHRoOiB0aGlzLndpZHRoLFxuICAgICAgICAgIGhlaWdodDogdGhpcy5oZWlnaHQsXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIEluaXRpYWxpemUgT2JzZXJ2YWJsZXMgYWZ0ZXIgYWxsIHNpZ25hbCBhc3NpZ25tZW50c1xuICAgIHRoaXMucG9pbnQkID0gdG9PYnNlcnZhYmxlKHRoaXMucG9pbnQpO1xuICAgIHRoaXMud2lkdGgkID0gdG9PYnNlcnZhYmxlKHRoaXMud2lkdGgpO1xuICAgIHRoaXMuaGVpZ2h0JCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmhlaWdodCk7XG4gICAgdGhpcy5zaXplJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLnNpemUpO1xuICAgIHRoaXMuc2VsZWN0ZWQkID0gdG9PYnNlcnZhYmxlKHRoaXMuc2VsZWN0ZWQpO1xuICAgIHRoaXMuaGFuZGxlcyQgPSB0b09ic2VydmFibGUodGhpcy5oYW5kbGVzKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRQb2ludChwb2ludDogUG9pbnQpIHtcbiAgICB0aGlzLnBvaW50LnNldChwb2ludCk7XG4gIH1cbn1cbiJdfQ==
|
|
181
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9tb2RlbHMvbm9kZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFxQixzQkFBc0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUkxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUdsSCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQWMsRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdEUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbEcsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWxELE1BQU0sT0FBTyxTQUFTO2FBR0wsaUJBQVksR0FBRyxHQUFHLEFBQU4sQ0FBTzthQUNuQixrQkFBYSxHQUFHLEVBQUUsQUFBTCxDQUFNO2FBQ25CLGlCQUFZLEdBQUcsU0FBUyxBQUFaLENBQWE7SUErSXhDLFlB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bCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHluYW1pY05vZGUsIE5vZGUsIGlzQ29tcG9uZW50RHluYW1pY05vZGUsIGlzQ29tcG9uZW50U3RhdGljTm9kZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvbm9kZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgSGFuZGxlTW9kZWwgfSBmcm9tICcuL2hhbmRsZS5tb2RlbCc7XG5pbXBvcnQgeyBGbG93RW50aXR5IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9mbG93LWVudGl0eS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9pbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3BvaW50LmludGVyZmFjZSc7XG5pbXBvcnQgeyBGbG93RW50aXRpZXNTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZmxvdy1lbnRpdGllcy5zZXJ2aWNlJztcbmltcG9ydCB7IE1BR0lDX05VTUJFUl9UT19GSVhfR0xJVENIX0lOX0NIUk9NRSB9IGZyb20gJy4uL2NvbnN0YW50cy9tYWdpYy1udW1iZXItdG8tZml4LWdsaXRjaC1pbi1jaHJvbWUuY29uc3RhbnQnO1xuaW1wb3J0IHsgQ29udGV4dGFibGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2NvbnRleHRhYmxlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBHcm91cE5vZGVDb250ZXh0LCBOb2RlQ29udGV4dCB9IGZyb20gJy4uL2ludGVyZmFjZXMvdGVtcGxhdGUtY29udGV4dC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgdG9VbmlmaWVkTm9kZSB9IGZyb20gJy4uL3V0aWxzL3RvLXVuaWZpZWQtbm9kZSc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmaWx0ZXIsIE9ic2VydmFibGUsIG9mLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBOb2RlUHJldmlldyB9IGZyb20gJy4uL2ludGVyZmFjZXMvbm9kZS1wcmV2aWV3LmludGVyZmFjZSc7XG5pbXBvcnQgeyBGbG93U2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZmxvdy1zZXR0aW5ncy5zZXJ2aWNlJztcbmltcG9ydCB7IE5vZGVSZW5kZXJpbmdTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbm9kZS1yZW5kZXJpbmcuc2VydmljZSc7XG5pbXBvcnQgeyBleHRlbmRlZENvbXB1dGVkIH0gZnJvbSAnLi4vdXRpbHMvc2lnbmFscy9leHRlbmRlZC1jb21wdXRlZCc7XG5pbXBvcnQgeyBpc0N1c3RvbUR5bmFtaWNOb2RlQ29tcG9uZW50LCBpc0N1c3RvbU5vZGVDb21wb25lbnQgfSBmcm9tICcuLi91dGlscy9pcy12Zmxvdy1jb21wb25lbnQnO1xuaW1wb3J0IHsgaXNDYWxsYWJsZSB9IGZyb20gJy4uL3V0aWxzL2lzLWNhbGxhYmxlJztcblxuZXhwb3J0IGNsYXNzIE5vZGVNb2RlbDxUID0gdW5rbm93bj5cbiAgaW1wbGVtZW50cyBGbG93RW50aXR5LCBDb250ZXh0YWJsZTxOb2RlQ29udGV4dCB8IEdyb3VwTm9kZUNvbnRleHQgfCB7ICRpbXBsaWNpdDogb2JqZWN0IH0+XG57XG4gIHByaXZhdGUgc3RhdGljIGRlZmF1bHRXaWR0aCA9IDEwMDtcbiAgcHJpdmF0ZSBzdGF0aWMgZGVmYXVsdEhlaWdodCA9IDUwO1xuICBwcml2YXRlIHN0YXRpYyBkZWZhdWx0Q29sb3IgPSAnIzFiMjYyYyc7XG5cbiAgcHJpdmF0ZSBlbnRpdGllc1NlcnZpY2UgPSBpbmplY3QoRmxvd0VudGl0aWVzU2VydmljZSk7XG4gIHByaXZhdGUgc2V0dGluZ3NTZXJ2aWNlID0gaW5qZWN0KEZsb3dTZXR0aW5nc1NlcnZpY2UpO1xuICBwcml2YXRlIG5vZGVSZW5kZXJpbmdTZXJ2aWNlID0gaW5qZWN0KE5vZGVSZW5kZXJpbmdTZXJ2aWNlKTtcblxuICBwdWJsaWMgaXNWaXNpYmxlID0gc2lnbmFsKGZhbHNlKTtcblxuICBwdWJsaWMgcG9pbnQgPSBzaWduYWw8UG9pbnQ+KHsgeDogMCwgeTogMCB9KTtcbiAgcHVibGljIHBvaW50JDogT2JzZXJ2YWJsZTxQb2ludD47XG5cbiAgcHVibGljIHdpZHRoID0gc2lnbmFsKE5vZGVNb2RlbC5kZWZhdWx0V2lkdGgpO1xuICBwdWJsaWMgd2lkdGgkOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgcHVibGljIGhlaWdodCA9IHNpZ25hbChOb2RlTW9kZWwuZGVmYXVsdEhlaWdodCk7XG4gIHB1YmxpYyBoZWlnaHQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIHVzZSB3aWR0aCBvciBoZWlnaHQgc2lnbmFsc1xuICAgKi9cbiAgcHVibGljIHNpemUgPSBjb21wdXRlZCgoKSA9PiAoeyB3aWR0aDogdGhpcy53aWR0aCgpLCBoZWlnaHQ6IHRoaXMuaGVpZ2h0KCkgfSkpO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgdXNlIHdpZHRoJCBvciBoZWlnaHQkXG4gICAqL1xuICBwdWJsaWMgc2l6ZSQ6IE9ic2VydmFibGU8eyB3aWR0aDogbnVtYmVyOyBoZWlnaHQ6IG51bWJlciB9PjtcblxuICAvKipcbiAgICogSWYgcmVzaXplciBpcyB1c2VkLCB0aGUgbm9kZSBzaXplIGZ1bGx5IGRlcGVuZHMgb24gdGhlIHJlc2l6ZXJcbiAgICogT3RoZXJ3aXNlIGl0IGNhbGN1bGF0ZXMgdGhlIHNpemUgYmFzZWQgb24gdGhlIGNvbnRlbnRcbiAgICovXG4gIHB1YmxpYyBzdHlsZVdpZHRoID0gY29tcHV0ZWQoKCkgPT4gKHRoaXMuY29udHJvbGxlZEJ5UmVzaXplcigpID8gYCR7dGhpcy53aWR0aCgpfXB4YCA6ICcxMDAlJykpO1xuICBwdWJsaWMgc3R5bGVIZWlnaHQgPSBjb21wdXRlZCgoKSA9PiAodGhpcy5jb250cm9sbGVkQnlSZXNpemVyKCkgPyBgJHt0aGlzLmhlaWdodCgpfXB4YCA6ICcxMDAlJykpO1xuXG4gIHB1YmxpYyBmb1dpZHRoID0gY29tcHV0ZWQoKCkgPT4gdGhpcy53aWR0aCgpICsgTUFHSUNfTlVNQkVSX1RPX0ZJWF9HTElUQ0hfSU5fQ0hST01FKTtcbiAgcHVibGljIGZvSGVpZ2h0ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5oZWlnaHQoKSArIE1BR0lDX05VTUJFUl9UT19GSVhfR0xJVENIX0lOX0NIUk9NRSk7XG5cbiAgcHVibGljIHJlbmRlck9yZGVyID0gc2lnbmFsKDApO1xuXG4gIHB1YmxpYyBzZWxlY3RlZCA9IHNpZ25hbChmYWxzZSk7XG4gIHB1YmxpYyBzZWxlY3RlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgcHVibGljIHByZXZpZXcgPSBzaWduYWw8Tm9kZVByZXZpZXc+KHsgc3R5bGU6IHt9IH0pO1xuXG4gIHB1YmxpYyBnbG9iYWxQb2ludCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBsZXQgcGFyZW50ID0gdGhpcy5wYXJlbnQoKTtcbiAgICBsZXQgeCA9IHRoaXMucG9pbnQoKS54O1xuICAgIGxldCB5ID0gdGhpcy5wb2ludCgpLnk7XG5cbiAgICB3aGlsZSAocGFyZW50ICE9PSBudWxsKSB7XG4gICAgICB4ICs9IHBhcmVudC5wb2ludCgpLng7XG4gICAgICB5ICs9IHBhcmVudC5wb2ludCgpLnk7XG5cbiAgICAgIHBhcmVudCA9IHBhcmVudC5wYXJlbnQoKTtcbiAgICB9XG5cbiAgICByZXR1cm4geyB4LCB5IH07XG4gIH0pO1xuXG4gIHB1YmxpYyBwb2ludFRyYW5zZm9ybSA9IGNvbXB1dGVkKCgpID0+IGB0cmFuc2xhdGUoJHt0aGlzLmdsb2JhbFBvaW50KCkueH0sICR7dGhpcy5nbG9iYWxQb2ludCgpLnl9KWApO1xuXG4gIHB1YmxpYyBoYW5kbGVzID0gc2lnbmFsPEhhbmRsZU1vZGVsW10+KFtdKTtcbiAgcHVibGljIGhhbmRsZXMkOiBPYnNlcnZhYmxlPEhhbmRsZU1vZGVsW10+O1xuXG4gIHB1YmxpYyBkcmFnZ2FibGUgPSBzaWduYWwodHJ1ZSk7XG5cbiAgcHVibGljIGRyYWdIYW5kbGVzQ291bnQgPSBzaWduYWwoMCk7XG5cbiAgLy8gZGlzYWJsZWQgZm9yIGNvbmZpZ3VyYXRpb24gZm9yIG5vd1xuICBwdWJsaWMgcmVhZG9ubHkgbWFnbmV0UmFkaXVzID0gMjA7XG5cbiAgLy8gVE9ETzogbm90IHN1cmUgaWYgd2UgbmVlZCB0byBzdGF0aWNhbGx5IHN0b3JlIGl0XG4gIHB1YmxpYyBpc0NvbXBvbmVudFR5cGUgPVxuICAgIGlzQ29tcG9uZW50U3RhdGljTm9kZSh0aGlzLnJhd05vZGUgYXMgTm9kZSkgfHwgaXNDb21wb25lbnREeW5hbWljTm9kZSh0aGlzLnJhd05vZGUgYXMgRHluYW1pY05vZGUpO1xuXG4gIHB1YmxpYyBzaG91bGRMb2FkID0gZXh0ZW5kZWRDb21wdXRlZDxib29sZWFuPigocHJldmlvdXNTaG91bGRMb2FkKSA9PiB7XG4gICAgaWYgKHByZXZpb3VzU2hvdWxkTG9hZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2V0dGluZ3NTZXJ2aWNlLm9wdGltaXphdGlvbigpLmxhenlMb2FkVHJpZ2dlciA9PT0gJ2ltbWVkaWF0ZScpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gZWxzZSBpZiAodGhpcy5zZXR0aW5nc1NlcnZpY2Uub3B0aW1pemF0aW9uKCkubGF6eUxvYWRUcmlnZ2VyID09PSAndmlld3BvcnQnKSB7XG4gICAgICAvLyBJbW1lZGlhdGVseSBsb2FkIGNvbXBvbmVudCBpZiBpdCdzIGEgcGxhaW4gY2xhc3NcbiAgICAgIGlmIChpc0N1c3RvbU5vZGVDb21wb25lbnQodGhpcy5yYXdOb2RlLnR5cGUpKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvLyBJbW1lZGlhdGVseSBsb2FkIGNvbXBvbmVudCBpZiBpdCdzIGEgcGxhaW4gY2xhc3NcbiAgICAgIGlmIChpc0N1c3RvbUR5bmFtaWNOb2RlQ29tcG9uZW50KHRoaXMucmF3Tm9kZS50eXBlKSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgLy8gRm9yIGNhc2VzXG4gICAgICAvLyAtIGlmIGl0J3MgYSBmYWN0b3J5IHdpdGggZHluYW1pYyBpbXBvcnRcbiAgICAgIC8vIC0gaWYgaXQncyBhIHRlbXBsYXRlIChodG1sLCBzdmcsIGdyb3VwKVxuICAgICAgLy8gY2hlY2sgaWYgaXQncyBpbiB0aGUgdmlld3BvcnRcbiAgICAgIGlmIChcbiAgICAgICAgaXNDYWxsYWJsZSh0aGlzLnJhd05vZGUudHlwZSkgfHxcbiAgICAgICAgdGhpcy5yYXdOb2RlLnR5cGUgPT09ICdodG1sLXRlbXBsYXRlJyB8fFxuICAgICAgICB0aGlzLnJhd05vZGUudHlwZSA9PT0gJ3N2Zy10ZW1wbGF0ZScgfHxcbiAgICAgICAgdGhpcy5yYXdOb2RlLnR5cGUgPT09ICd0ZW1wbGF0ZS1ncm91cCdcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gdGhpcy5ub2RlUmVuZGVyaW5nU2VydmljZS52aWV3cG9ydE5vZGVzKCkuaW5jbHVkZXModGhpcyBhcyBOb2RlTW9kZWwpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZvciBlYWNoIG90aGVyIGNhc2UsIHdlIHdhbnQgdG8gbG9hZCB0aGUgY29tcG9uZW50IGltbWVkaWF0ZWx5XG4gICAgcmV0dXJuIHRydWU7XG4gIH0pO1xuXG4gIHB1YmxpYyBjb21wb25lbnRJbnN0YW5jZSQgPSB0b09ic2VydmFibGUodGhpcy5zaG91bGRMb2FkKS5waXBlKFxuICAgIGZpbHRlcihCb29sZWFuKSxcbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yIHdlIGFzc3VtZSBpdCdzIGEgZnVuY3Rpb24gd2l0aCBkeW5hbWljIGltcG9ydFxuICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLnJhd05vZGUudHlwZSgpKSxcbiAgICBjYXRjaEVycm9yKCgpID0+IG9mKHRoaXMucmF3Tm9kZS50eXBlKSksXG4gICAgc2hhcmVSZXBsYXkoMSksXG4gICk7XG5cbiAgLy8gRGVmYXVsdCBub2RlIHNwZWNpZmljIHRoaW5nXG4gIHB1YmxpYyB0ZXh0ID0gc2lnbmFsKCcnKTtcblxuICAvLyBDb21wb25lbnQgbm9kZSBzcGVjaWZpYyB0aGluZ1xuICBwdWJsaWMgY29tcG9uZW50VHlwZUlucHV0cyA9IHtcbiAgICBub2RlOiB0aGlzLnJhd05vZGUsXG4gIH07XG5cbiAgcHVibGljIHBhcmVudCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuZW50aXRpZXNTZXJ2aWNlLm5vZGVzKCkuZmluZCgobikgPT4gbi5yYXdOb2RlLmlkID09PSB0aGlzLnBhcmVudElkKCkpID8/IG51bGwpO1xuXG4gIHB1YmxpYyBjaGlsZHJlbiA9IGNvbXB1dGVkKCgpID0+IHRoaXMuZW50aXRpZXNTZXJ2aWNlLm5vZGVzKCkuZmlsdGVyKChuKSA9PiBuLnBhcmVudElkKCkgPT09IHRoaXMucmF3Tm9kZS5pZCkpO1xuXG4gIHB1YmxpYyBjb2xvciA9IHNpZ25hbChOb2RlTW9kZWwuZGVmYXVsdENvbG9yKTtcblxuICBwdWJsaWMgY29udHJvbGxlZEJ5UmVzaXplciA9IHNpZ25hbChmYWxzZSk7XG4gIHB1YmxpYyByZXNpemFibGUgPSBzaWduYWwoZmFsc2UpO1xuICBwdWJsaWMgcmVzaXppbmcgPSBzaWduYWwoZmFsc2UpO1xuICBwdWJsaWMgcmVzaXplclRlbXBsYXRlID0gc2lnbmFsPFRlbXBsYXRlUmVmPHVua25vd24+IHwgbnVsbD4obnVsbCk7XG5cbiAgcHVibGljIGNvbnRleHQgPSB7XG4gICAgJGltcGxpY2l0OiB7fSxcbiAgfTtcblxuICBwcml2YXRlIHBhcmVudElkID0gc2lnbmFsPHN0cmluZyB8IG51bGw+KG51bGwpO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByYXdOb2RlOiBOb2RlPFQ+IHwgRHluYW1pY05vZGU8VD4pIHtcbiAgICBjb25zdCBpbnRlcm5hbE5vZGUgPSB0b1VuaWZpZWROb2RlKHJhd05vZGUpO1xuXG4gICAgaWYgKGludGVybmFsTm9kZS5wb2ludCkge1xuICAgICAgdGhpcy5wb2ludCA9IGludGVybmFsTm9kZS5wb2ludDtcbiAgICB9XG5cbiAgICBpZiAoaW50ZXJuYWxOb2RlLndpZHRoKSB7XG4gICAgICB0aGlzLndpZHRoID0gaW50ZXJuYWxOb2RlLndpZHRoO1xuICAgIH1cblxuICAgIGlmIChpbnRlcm5hbE5vZGUuaGVpZ2h0KSB7XG4gICAgICB0aGlzLmhlaWdodCA9IGludGVybmFsTm9kZS5oZWlnaHQ7XG4gICAgfVxuXG4gICAgaWYgKGludGVybmFsTm9kZS5kcmFnZ2FibGUpIHtcbiAgICAgIHRoaXMuZHJhZ2dhYmxlID0gaW50ZXJuYWxOb2RlLmRyYWdnYWJsZTtcbiAgICB9XG5cbiAgICBpZiAoaW50ZXJuYWxOb2RlLnBhcmVudElkKSB7XG4gICAgICB0aGlzLnBhcmVudElkID0gaW50ZXJuYWxOb2RlLnBhcmVudElkO1xuICAgIH1cblxuICAgIGlmIChpbnRlcm5hbE5vZGUucHJldmlldykge1xuICAgICAgdGhpcy5wcmV2aWV3ID0gaW50ZXJuYWxOb2RlLnByZXZpZXc7XG4gICAgfVxuXG4gICAgaWYgKGludGVybmFsTm9kZS50eXBlID09PSAnZGVmYXVsdC1ncm91cCcgJiYgaW50ZXJuYWxOb2RlLmNvbG9yKSB7XG4gICAgICB0aGlzLmNvbG9yID0gaW50ZXJuYWxOb2RlLmNvbG9yO1xuICAgIH1cblxuICAgIGlmIChpbnRlcm5hbE5vZGUudHlwZSA9PT0gJ2RlZmF1bHQtZ3JvdXAnICYmIGludGVybmFsTm9kZS5yZXNpemFibGUpIHtcbiAgICAgIHRoaXMucmVzaXphYmxlID0gaW50ZXJuYWxOb2RlLnJlc2l6YWJsZTtcbiAgICB9XG5cbiAgICBpZiAoaW50ZXJuYWxOb2RlLnR5cGUgPT09ICdkZWZhdWx0JyAmJiBpbnRlcm5hbE5vZGUudGV4dCkge1xuICAgICAgdGhpcy50ZXh0ID0gaW50ZXJuYWxOb2RlLnRleHQ7XG4gICAgfVxuXG4gICAgaWYgKGludGVybmFsTm9kZS50eXBlID09PSAnaHRtbC10ZW1wbGF0ZScpIHtcbiAgICAgIHRoaXMuY29udGV4dCA9IHtcbiAgICAgICAgJGltcGxpY2l0OiB7XG4gICAgICAgICAgbm9kZTogcmF3Tm9kZSxcbiAgICAgICAgICBzZWxlY3RlZDogdGhpcy5zZWxlY3RlZC5hc1JlYWRvbmx5KCksXG4gICAgICAgICAgc2hvdWxkTG9hZDogdGhpcy5zaG91bGRMb2FkLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAoaW50ZXJuYWxOb2RlLnR5cGUgPT09ICdzdmctdGVtcGxhdGUnKSB7XG4gICAgICB0aGlzLmNvbnRleHQgPSB7XG4gICAgICAgICRpbXBsaWNpdDoge1xuICAgICAgICAgIG5vZGU6IHJhd05vZGUsXG4gICAgICAgICAgc2VsZWN0ZWQ6IHRoaXMuc2VsZWN0ZWQuYXNSZWFkb25seSgpLFxuICAgICAgICAgIHdpZHRoOiB0aGlzLndpZHRoLmFzUmVhZG9ubHkoKSxcbiAgICAgICAgICBoZWlnaHQ6IHRoaXMuaGVpZ2h0LmFzUmVhZG9ubHkoKSxcbiAgICAgICAgICBzaG91bGRMb2FkOiB0aGlzLnNob3VsZExvYWQsXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmIChpbnRlcm5hbE5vZGUudHlwZSA9PT0gJ3RlbXBsYXRlLWdyb3VwJykge1xuICAgICAgdGhpcy5jb250ZXh0ID0ge1xuICAgICAgICAkaW1wbGljaXQ6IHtcbiAgICAgICAgICBub2RlOiByYXdOb2RlLFxuICAgICAgICAgIHNlbGVjdGVkOiB0aGlzLnNlbGVjdGVkLmFzUmVhZG9ubHkoKSxcbiAgICAgICAgICB3aWR0aDogdGhpcy53aWR0aC5hc1JlYWRvbmx5KCksXG4gICAgICAgICAgaGVpZ2h0OiB0aGlzLmhlaWdodC5hc1JlYWRvbmx5KCksXG4gICAgICAgICAgc2hvdWxkTG9hZDogdGhpcy5zaG91bGRMb2FkLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9XG5cbiAgICAvLyBJbml0aWFsaXplIE9ic2VydmFibGVzIGFmdGVyIGFsbCBzaWduYWwgYXNzaWdubWVudHNcbiAgICB0aGlzLnBvaW50JCA9IHRvT2JzZXJ2YWJsZSh0aGlzLnBvaW50KTtcbiAgICB0aGlzLndpZHRoJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLndpZHRoKTtcbiAgICB0aGlzLmhlaWdodCQgPSB0b09ic2VydmFibGUodGhpcy5oZWlnaHQpO1xuICAgIHRoaXMuc2l6ZSQgPSB0b09ic2VydmFibGUodGhpcy5zaXplKTtcbiAgICB0aGlzLnNlbGVjdGVkJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLnNlbGVjdGVkKTtcbiAgICB0aGlzLmhhbmRsZXMkID0gdG9PYnNlcnZhYmxlKHRoaXMuaGFuZGxlcyk7XG4gIH1cblxuICBwdWJsaWMgc2V0UG9pbnQocG9pbnQ6IFBvaW50KSB7XG4gICAgdGhpcy5wb2ludC5zZXQocG9pbnQpO1xuICB9XG59XG4iXX0=
|
|
@@ -37,4 +37,4 @@ export class EdgeRenderingService {
|
|
|
37
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EdgeRenderingService, decorators: [{
|
|
38
38
|
type: Injectable
|
|
39
39
|
}] });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZS1yZW5kZXJpbmcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9zZXJ2aWNlcy9lZGdlLXJlbmRlcmluZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUU5RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFHOUQsTUFBTSxPQUFPLG9CQUFvQjtJQURqQztRQUVVLHdCQUFtQixHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ2xELHdCQUFtQixHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRTFDLFVBQUssR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWSxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQzVELE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDcEQsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEdBQUcsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUM1RCxDQUFDO1lBQ0osQ0FBQztZQUVELE9BQU8sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsR0FBRyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUNoRyxDQUFDLENBQUMsQ0FBQztRQUVhLGtCQUFhLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUM1QyxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDeEQsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUN0QyxNQUFNLFlBQVksR0FBRyxDQUFDLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBRXRDLE9BQU8sWUFBWSxJQUFJLFlBQVksQ0FBQztZQUN0QyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUssYUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDL0IsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN4RixDQUFDLENBQUMsQ0FBQztLQVlKO0lBVlEsSUFBSSxDQUFDLElBQWU7UUFDekIsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEtBQUssSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRTFGLElBQUksY0FBYyxFQUFFLENBQUM7WUFDbkIsT0FBTztRQUNULENBQUM7UUFFRCxZQUFZO1FBQ1osSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7K0dBcENVLG9CQUFvQjttSEFBcEIsb0JBQW9COzs0RkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgY29tcHV0ZWQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmxvd0VudGl0aWVzU2VydmljZSB9IGZyb20gJy4vZmxvdy1lbnRpdGllcy5zZXJ2aWNlJztcbmltcG9ydCB7IEVkZ2VNb2RlbCB9IGZyb20gJy4uL21vZGVscy9lZGdlLm1vZGVsJztcbmltcG9ydCB7IEZsb3dTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuL2Zsb3ctc2V0dGluZ3Muc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFZGdlUmVuZGVyaW5nU2VydmljZSB7XG4gIHByaXZhdGUgZmxvd0VudGl0aWVzU2VydmljZSA9IGluamVjdChGbG93RW50aXRpZXNTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBmbG93U2V0dGluZ3NTZXJ2aWNlID0gaW5qZWN0KEZsb3dTZXR0aW5nc1NlcnZpY2UpO1xuXG4gIHB1YmxpYyByZWFkb25seSBlZGdlcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBpZiAoIXRoaXMuZmxvd1NldHRpbmdzU2VydmljZS5vcHRpbWl6YXRpb24oKS52aXJ0dWFsaXphdGlvbikge1xuICAgICAgcmV0dXJuIFsuLi50aGlzLmZsb3dFbnRpdGllc1NlcnZpY2UudmFsaWRFZGdlcygpXS5zb3J0KFxuICAgICAgICAoYUVkZ2UsIGJFZGdlKSA9PiBhRWRnZS5yZW5kZXJPcmRlcigpIC0gYkVkZ2UucmVuZGVyT3JkZXIoKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudmlld3BvcnRFZGdlcygpLnNvcnQoKGFFZGdlLCBiRWRnZSkgPT4gYUVkZ2UucmVuZGVyT3JkZXIoKSAtIGJFZGdlLnJlbmRlck9yZGVyKCkpO1xuICB9KTtcblxuICBwdWJsaWMgcmVhZG9ubHkgdmlld3BvcnRFZGdlcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5mbG93RW50aXRpZXNTZXJ2aWNlLnZhbGlkRWRnZXMoKS5maWx0ZXIoKGUpID0+IHtcbiAgICAgIGNvbnN0IHNvdXJjZUhhbmRsZSA9IGUuc291cmNlSGFuZGxlKCk7XG4gICAgICBjb25zdCB0YXJnZXRIYW5kbGUgPSBlLnRhcmdldEhhbmRsZSgpO1xuXG4gICAgICByZXR1cm4gc291cmNlSGFuZGxlICYmIHRhcmdldEhhbmRsZTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgcHJpdmF0ZSBtYXhPcmRlciA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gTWF0aC5tYXgoLi4udGhpcy5mbG93RW50aXRpZXNTZXJ2aWNlLnZhbGlkRWRnZXMoKS5tYXAoKG4pID0+IG4ucmVuZGVyT3JkZXIoKSkpO1xuICB9KTtcblxuICBwdWJsaWMgcHVsbChlZGdlOiBFZGdlTW9kZWwpIHtcbiAgICBjb25zdCBpc0FscmVhZHlPblRvcCA9IGVkZ2UucmVuZGVyT3JkZXIoKSAhPT0gMCAmJiB0aGlzLm1heE9yZGVyKCkgPT09IGVkZ2UucmVuZGVyT3JkZXIoKTtcblxuICAgIGlmIChpc0FscmVhZHlPblRvcCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIHB1bGwgbm9kZVxuICAgIGVkZ2UucmVuZGVyT3JkZXIuc2V0KHRoaXMubWF4T3JkZXIoKSArIDEpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { inject, Injectable, NgZone, signal } from '@angular/core';
|
|
2
|
+
import { NodeRenderingService } from './node-rendering.service';
|
|
3
|
+
import { EdgeRenderingService } from './edge-rendering.service';
|
|
4
|
+
import { FlowSettingsService } from './flow-settings.service';
|
|
5
|
+
import { FlowEntitiesService } from './flow-entities.service';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class FlowRenderingService {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.nodeRenderingService = inject(NodeRenderingService);
|
|
10
|
+
this.edgeRenderingService = inject(EdgeRenderingService);
|
|
11
|
+
this.flowEntitiesService = inject(FlowEntitiesService);
|
|
12
|
+
this.settingsService = inject(FlowSettingsService);
|
|
13
|
+
this.flowInitialized = signal(false);
|
|
14
|
+
inject(NgZone).runOutsideAngular(async () => {
|
|
15
|
+
await skipFrames(2);
|
|
16
|
+
this.flowInitialized.set(true);
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FlowRenderingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
20
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FlowRenderingService }); }
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FlowRenderingService, decorators: [{
|
|
23
|
+
type: Injectable
|
|
24
|
+
}], ctorParameters: () => [] });
|
|
25
|
+
// TODO may break on edge cases
|
|
26
|
+
function skipFrames(count) {
|
|
27
|
+
return new Promise((resolve) => {
|
|
28
|
+
let frames = 0;
|
|
29
|
+
function checkFrame() {
|
|
30
|
+
frames++;
|
|
31
|
+
if (frames < count) {
|
|
32
|
+
requestAnimationFrame(checkFrame);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
resolve();
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
requestAnimationFrame(checkFrame);
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1yZW5kZXJpbmcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL2xpYi92Zmxvdy9zZXJ2aWNlcy9mbG93LXJlbmRlcmluZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBRzlELE1BQU0sT0FBTyxvQkFBb0I7SUFRL0I7UUFQaUIseUJBQW9CLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDcEQseUJBQW9CLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDcEQsd0JBQW1CLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDbEQsb0JBQWUsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUV4RCxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUdyQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsaUJBQWlCLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDMUMsTUFBTSxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFcEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOytHQWRVLG9CQUFvQjttSEFBcEIsb0JBQW9COzs0RkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVOztBQWtCWCwrQkFBK0I7QUFDL0IsU0FBUyxVQUFVLENBQUMsS0FBYTtJQUMvQixPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7UUFDN0IsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBRWYsU0FBUyxVQUFVO1lBQ2pCLE1BQU0sRUFBRSxDQUFDO1lBRVQsSUFBSSxNQUFNLEdBQUcsS0FBSyxFQUFFLENBQUM7Z0JBQ25CLHFCQUFxQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPLEVBQUUsQ0FBQztZQUNaLENBQUM7UUFDSCxDQUFDO1FBRUQscUJBQXFCLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDcEMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBOZ1pvbmUsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTm9kZVJlbmRlcmluZ1NlcnZpY2UgfSBmcm9tICcuL25vZGUtcmVuZGVyaW5nLnNlcnZpY2UnO1xuaW1wb3J0IHsgRWRnZVJlbmRlcmluZ1NlcnZpY2UgfSBmcm9tICcuL2VkZ2UtcmVuZGVyaW5nLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmxvd1NldHRpbmdzU2VydmljZSB9IGZyb20gJy4vZmxvdy1zZXR0aW5ncy5zZXJ2aWNlJztcbmltcG9ydCB7IEZsb3dFbnRpdGllc1NlcnZpY2UgfSBmcm9tICcuL2Zsb3ctZW50aXRpZXMuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGbG93UmVuZGVyaW5nU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgbm9kZVJlbmRlcmluZ1NlcnZpY2UgPSBpbmplY3QoTm9kZVJlbmRlcmluZ1NlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IGVkZ2VSZW5kZXJpbmdTZXJ2aWNlID0gaW5qZWN0KEVkZ2VSZW5kZXJpbmdTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBmbG93RW50aXRpZXNTZXJ2aWNlID0gaW5qZWN0KEZsb3dFbnRpdGllc1NlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IHNldHRpbmdzU2VydmljZSA9IGluamVjdChGbG93U2V0dGluZ3NTZXJ2aWNlKTtcblxuICBwdWJsaWMgZmxvd0luaXRpYWxpemVkID0gc2lnbmFsKGZhbHNlKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBpbmplY3QoTmdab25lKS5ydW5PdXRzaWRlQW5ndWxhcihhc3luYyAoKSA9PiB7XG4gICAgICBhd2FpdCBza2lwRnJhbWVzKDIpO1xuXG4gICAgICB0aGlzLmZsb3dJbml0aWFsaXplZC5zZXQodHJ1ZSk7XG4gICAgfSk7XG4gIH1cbn1cblxuLy8gVE9ETyBtYXkgYnJlYWsgb24gZWRnZSBjYXNlc1xuZnVuY3Rpb24gc2tpcEZyYW1lcyhjb3VudDogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgIGxldCBmcmFtZXMgPSAwO1xuXG4gICAgZnVuY3Rpb24gY2hlY2tGcmFtZSgpIHtcbiAgICAgIGZyYW1lcysrO1xuXG4gICAgICBpZiAoZnJhbWVzIDwgY291bnQpIHtcbiAgICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGNoZWNrRnJhbWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZShjaGVja0ZyYW1lKTtcbiAgfSk7XG59XG4iXX0=
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export function isCallable(fn) {
|
|
2
|
+
try {
|
|
3
|
+
new Proxy(fn, { apply: () => undefined })();
|
|
4
|
+
return true;
|
|
5
|
+
}
|
|
6
|
+
catch (err) {
|
|
7
|
+
return false;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY2FsbGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3NyYy9saWIvdmZsb3cvdXRpbHMvaXMtY2FsbGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLFVBQVUsQ0FBQyxFQUFPO0lBQ2hDLElBQUksQ0FBQztRQUNILElBQUksS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDNUMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNiLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gaXNDYWxsYWJsZShmbjogYW55KTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgbmV3IFByb3h5KGZuLCB7IGFwcGx5OiAoKSA9PiB1bmRlZmluZWQgfSkoKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CustomDynamicNodeComponent } from '../public-components/custom-dynamic-node/custom-dynamic-node.component';
|
|
2
|
+
import { CustomNodeComponent } from '../public-components/custom-node/custom-node.component';
|
|
3
|
+
export function isCustomNodeComponent(type) {
|
|
4
|
+
return Object.prototype.isPrototypeOf.call(CustomNodeComponent, type);
|
|
5
|
+
}
|
|
6
|
+
export function isCustomDynamicNodeComponent(type) {
|
|
7
|
+
return Object.prototype.isPrototypeOf.call(CustomDynamicNodeComponent, type);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtdmZsb3ctY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZmbG93LWxpYi9zcmMvbGliL3ZmbG93L3V0aWxzL2lzLXZmbG93LWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx3RUFBd0UsQ0FBQztBQUNwSCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUU3RixNQUFNLFVBQVUscUJBQXFCLENBQUMsSUFBUztJQUM3QyxPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUN4RSxDQUFDO0FBRUQsTUFBTSxVQUFVLDRCQUE0QixDQUFDLElBQVM7SUFDcEQsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsMEJBQTBCLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDL0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1c3RvbUR5bmFtaWNOb2RlQ29tcG9uZW50IH0gZnJvbSAnLi4vcHVibGljLWNvbXBvbmVudHMvY3VzdG9tLWR5bmFtaWMtbm9kZS9jdXN0b20tZHluYW1pYy1ub2RlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21Ob2RlQ29tcG9uZW50IH0gZnJvbSAnLi4vcHVibGljLWNvbXBvbmVudHMvY3VzdG9tLW5vZGUvY3VzdG9tLW5vZGUuY29tcG9uZW50JztcblxuZXhwb3J0IGZ1bmN0aW9uIGlzQ3VzdG9tTm9kZUNvbXBvbmVudCh0eXBlOiBhbnkpOiB0eXBlIGlzIEN1c3RvbU5vZGVDb21wb25lbnQge1xuICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mLmNhbGwoQ3VzdG9tTm9kZUNvbXBvbmVudCwgdHlwZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0N1c3RvbUR5bmFtaWNOb2RlQ29tcG9uZW50KHR5cGU6IGFueSk6IHR5cGUgaXMgQ3VzdG9tRHluYW1pY05vZGVDb21wb25lbnQge1xuICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mLmNhbGwoQ3VzdG9tRHluYW1pY05vZGVDb21wb25lbnQsIHR5cGUpO1xufVxuIl19
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -48,6 +48,7 @@ export { FlowEntitiesService as ɵFlowEntitiesService } from './lib/vflow/servic
|
|
|
48
48
|
export { NodeAccessorService as ɵNodeAccessorService } from './lib/vflow/services/node-accessor.service';
|
|
49
49
|
export { ViewportService as ɵViewportService } from './lib/vflow/services/viewport.service';
|
|
50
50
|
export { SelectionService as ɵSelectionService } from './lib/vflow/services/selection.service';
|
|
51
|
+
export { NodeRenderingService as ɵNodeRenderingService } from './lib/vflow/services/node-rendering.service';
|
|
51
52
|
export { RootPointerDirective as ɵRootPointerDirective } from './lib/vflow/directives/root-pointer.directive';
|
|
52
53
|
export { SpacePointContextDirective as ɵSpacePointContextDirective } from './lib/vflow/directives/space-point-context.directive';
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsa0JBQWtCO0FBQ2xCLGNBQWMsbUJBQW1CLENBQUM7QUFFbEMsYUFBYTtBQUNiLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyx5Q0FBeUMsQ0FBQztBQUV4RCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDZEQUE2RCxDQUFDO0FBQzVFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYywrQ0FBK0MsQ0FBQztBQUU5RCxRQUFRO0FBQ1IsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsd0NBQXdDLENBQUM7QUFFdkQsYUFBYTtBQUNiLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLGlFQUFpRSxDQUFDO0FBQ2hGLGNBQWMsaUZBQWlGLENBQUM7QUFDaEcsY0FBYyw2REFBNkQsQ0FBQztBQUM1RSxjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMsbUVBQW1FLENBQUM7QUFDbEYsY0FBYyxtRkFBbUYsQ0FBQztBQUVsRyxhQUFhO0FBQ2IsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDhDQUE4QyxDQUFDO0FBRTdELGNBQWM7QUFDZCxPQUFPLEVBQUUsZUFBZSxJQUFJLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUYsT0FBTyxFQUFFLFdBQVcsSUFBSSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsU0FBUyxJQUFJLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRXhFLE9BQU8sRUFBRSx3QkFBd0IsSUFBSSx5QkFBeUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3pILE9BQU8sRUFBRSxhQUFhLElBQUksY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDdEYsT0FBTyxFQUFFLG1CQUFtQixJQUFJLG9CQUFvQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDekcsT0FBTyxFQUFFLG1CQUFtQixJQUFJLG9CQUFvQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDekcsT0FBTyxFQUFFLG1CQUFtQixJQUFJLG9CQUFvQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDekcsT0FBTyxFQUFFLGVBQWUsSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxnQkFBZ0IsSUFBSSxpQkFBaUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQy9GLE9BQU8sRUFBRSxvQkFBb0IsSUFBSSxxQkFBcUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBRTVHLE9BQU8sRUFBRSxvQkFBb0IsSUFBSSxxQkFBcUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzlHLE9BQU8sRUFBRSwwQkFBMEIsSUFBSSwyQkFBMkIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gU3RhbmRhbG9uZSBVdGlsXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy92Zmxvdyc7XG5cbi8vIEludGVyZmFjZXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvbm9kZS5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9wb2ludC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9lZGdlLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2VkZ2UtbGFiZWwuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvY29ubmVjdGlvbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9jb25uZWN0aW9uLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL2Nvbm5lY3Rpb24tc2V0dGluZ3MuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2ludGVyZmFjZXMvbWFya2VyLmludGVyZmFjZSc7XG5leHBvcnQgeyBWaWV3cG9ydFN0YXRlIH0gZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy92aWV3cG9ydC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9jb21wb25lbnQtbm9kZS1ldmVudC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9maXQtdmlldy1vcHRpb25zLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL29wdGltaXphdGlvbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9pbnRlcnNlY3Rpbmctbm9kZXMtb3B0aW9ucy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvaW50ZXJmYWNlcy9jdXJ2ZS1mYWN0b3J5LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9pbnRlcmZhY2VzL25vZGUtcHJldmlldy5pbnRlcmZhY2UnO1xuXG4vLyBUeXBlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdHlwZXMvbm9kZS1jaGFuZ2UudHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy90eXBlcy9lZGdlLWNoYW5nZS50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL3Bvc2l0aW9uLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvdHlwZXMvYmFja2dyb3VuZC50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL2Nvbm5lY3Rpb24tbW9kZS50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3R5cGVzL2tleWJvYXJkLWFjdGlvbi50eXBlJztcblxuLy8gQ29tcG9uZW50c1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvY29tcG9uZW50cy92Zmxvdy92Zmxvdy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvcHVibGljLWNvbXBvbmVudHMvaGFuZGxlL2hhbmRsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvcHVibGljLWNvbXBvbmVudHMvY3VzdG9tLW5vZGUvY3VzdG9tLW5vZGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L3B1YmxpYy1jb21wb25lbnRzL2N1c3RvbS1keW5hbWljLW5vZGUvY3VzdG9tLWR5bmFtaWMtbm9kZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvcHVibGljLWNvbXBvbmVudHMvcmVzaXphYmxlL3Jlc2l6YWJsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvcHVibGljLWNvbXBvbmVudHMvbWluaW1hcC9taW5pbWFwLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9ub2RlLXRvb2xiYXIvbm9kZS10b29sYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9wdWJsaWMtY29tcG9uZW50cy9jdXN0b20tdGVtcGxhdGUtZWRnZS9jdXN0b20tdGVtcGxhdGUtZWRnZS5jb21wb25lbnQnO1xuXG4vLyBEaXJlY3RpdmVzXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9kaXJlY3RpdmVzL3RlbXBsYXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zmxvdy9kaXJlY3RpdmVzL2Nvbm5lY3Rpb24tY29udHJvbGxlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvZGlyZWN0aXZlcy9jaGFuZ2VzLWNvbnRyb2xsZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZmbG93L2RpcmVjdGl2ZXMvc2VsZWN0YWJsZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmZsb3cvZGlyZWN0aXZlcy9kcmFnLWhhbmRsZS5kaXJlY3RpdmUnO1xuXG4vLyAhIEludGVybmFsc1xuZXhwb3J0IHsgQ29ubmVjdGlvbk1vZGVsIGFzIMm1Q29ubmVjdGlvbk1vZGVsIH0gZnJvbSAnLi9saWIvdmZsb3cvbW9kZWxzL2Nvbm5lY3Rpb24ubW9kZWwnO1xuZXhwb3J0IHsgSGFuZGxlTW9kZWwgYXMgybVIYW5kbGVNb2RlbCB9IGZyb20gJy4vbGliL3ZmbG93L21vZGVscy9oYW5kbGUubW9kZWwnO1xuZXhwb3J0IHsgTm9kZU1vZGVsIGFzIMm1Tm9kZU1vZGVsIH0gZnJvbSAnLi9saWIvdmZsb3cvbW9kZWxzL25vZGUubW9kZWwnO1xuXG5leHBvcnQgeyBDb21wb25lbnRFdmVudEJ1c1NlcnZpY2UgYXMgybVDb21wb25lbnRFdmVudEJ1c1NlcnZpY2UgfSBmcm9tICcuL2xpYi92Zmxvdy9zZXJ2aWNlcy9jb21wb25lbnQtZXZlbnQtYnVzLnNlcnZpY2UnO1xuZXhwb3J0IHsgSGFuZGxlU2VydmljZSBhcyDJtUhhbmRsZVNlcnZpY2UgfSBmcm9tICcuL2xpYi92Zmxvdy9zZXJ2aWNlcy9oYW5kbGUuc2VydmljZSc7XG5leHBvcnQgeyBGbG93U2V0dGluZ3NTZXJ2aWNlIGFzIMm1Rmxvd1NldHRpbmdzU2VydmljZSB9IGZyb20gJy4vbGliL3ZmbG93L3NlcnZpY2VzL2Zsb3ctc2V0dGluZ3Muc2VydmljZSc7XG5leHBvcnQgeyBGbG93RW50aXRpZXNTZXJ2aWNlIGFzIMm1Rmxvd0VudGl0aWVzU2VydmljZSB9IGZyb20gJy4vbGliL3ZmbG93L3NlcnZpY2VzL2Zsb3ctZW50aXRpZXMuc2VydmljZSc7XG5leHBvcnQgeyBOb2RlQWNjZXNzb3JTZXJ2aWNlIGFzIMm1Tm9kZUFjY2Vzc29yU2VydmljZSB9IGZyb20gJy4vbGliL3ZmbG93L3NlcnZpY2VzL25vZGUtYWNjZXNzb3Iuc2VydmljZSc7XG5leHBvcnQgeyBWaWV3cG9ydFNlcnZpY2UgYXMgybVWaWV3cG9ydFNlcnZpY2UgfSBmcm9tICcuL2xpYi92Zmxvdy9zZXJ2aWNlcy92aWV3cG9ydC5zZXJ2aWNlJztcbmV4cG9ydCB7IFNlbGVjdGlvblNlcnZpY2UgYXMgybVTZWxlY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi9saWIvdmZsb3cvc2VydmljZXMvc2VsZWN0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHsgTm9kZVJlbmRlcmluZ1NlcnZpY2UgYXMgybVOb2RlUmVuZGVyaW5nU2VydmljZSB9IGZyb20gJy4vbGliL3ZmbG93L3NlcnZpY2VzL25vZGUtcmVuZGVyaW5nLnNlcnZpY2UnO1xuXG5leHBvcnQgeyBSb290UG9pbnRlckRpcmVjdGl2ZSBhcyDJtVJvb3RQb2ludGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvdmZsb3cvZGlyZWN0aXZlcy9yb290LXBvaW50ZXIuZGlyZWN0aXZlJztcbmV4cG9ydCB7IFNwYWNlUG9pbnRDb250ZXh0RGlyZWN0aXZlIGFzIMm1U3BhY2VQb2ludENvbnRleHREaXJlY3RpdmUgfSBmcm9tICcuL2xpYi92Zmxvdy9kaXJlY3RpdmVzL3NwYWNlLXBvaW50LWNvbnRleHQuZGlyZWN0aXZlJztcbiJdfQ==
|
|
@@ -30,6 +30,8 @@ export class VflowMockComponent {
|
|
|
30
30
|
});
|
|
31
31
|
this.nodesChange = signal([]);
|
|
32
32
|
this.edgesChange = signal([]);
|
|
33
|
+
this.initialized = signal(true);
|
|
34
|
+
this.initialized$ = toObservable(this.initialized);
|
|
33
35
|
this.viewportChange$ = toObservable(this.viewport);
|
|
34
36
|
this.nodesChange$ = toObservable(this.nodesChange);
|
|
35
37
|
this.edgesChange$ = toObservable(this.edgesChange);
|
|
@@ -293,4 +295,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
293
295
|
}], elevateEdgesOnSelect: [{
|
|
294
296
|
type: Input
|
|
295
297
|
}] } });
|
|
296
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmZsb3ctbW9jay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3Rlc3Rpbmcvc3JjL2NvbXBvbmVudC1tb2Nrcy92Zmxvdy1tb2NrLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQWVMLGdCQUFnQixJQUFJLGVBQWUsRUFDbkMsb0JBQW9CLEdBQ3JCLE1BQU0sV0FBVyxDQUFDO0FBQ25CLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQ0wsK0JBQStCLEVBQy9CLGtDQUFrQyxFQUNsQyx5QkFBeUIsRUFDekIsOEJBQThCLEVBQzlCLDZCQUE2QixHQUM5QixNQUFNLDRDQUE0QyxDQUFDOztBQWlHcEQsTUFBTSxPQUFPLGtCQUFrQjtJQTlGL0I7UUFzR2tCLFNBQUksR0FBOEIsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFHN0MsWUFBTyxHQUFHLEdBQUcsQ0FBQztRQUdkLFlBQU8sR0FBRyxDQUFDLENBQUM7UUFHWixlQUFVLEdBQXdCLE1BQU0sQ0FBQztRQUd6QyxpQkFBWSxHQUFHLG9CQUFvQixDQUFDO1FBR3BDLHVCQUFrQixHQUFHLElBQUksQ0FBQztRQUcxQixzQkFBaUIsR0FBc0I7WUFDckQsY0FBYyxFQUFFLElBQUk7U0FDckIsQ0FBQztRQUtjLGVBQVUsR0FBb0IsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7UUFXdEUsK0RBQStEO1FBQy9DLHlCQUFvQixHQUFHLE1BQU0sRUFBTyxDQUFDO1FBRTNDLDBC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biAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgY29udGVudENoaWxkLFxuICBJbnB1dCxcbiAgb3V0cHV0LFxuICBzaWduYWwsXG4gIFdyaXRhYmxlU2lnbmFsLFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBOb2RlLFxuICBEeW5hbWljTm9kZSxcbiAgRWRnZSxcbiAgU3BhY2VQb2ludCxcbiAgUG9pbnQsXG4gIEJhY2tncm91bmQsXG4gIEtleWJvYXJkU2hvcnRjdXRzLFxuICBDb25uZWN0aW9uU2V0dGluZ3MsXG4gIFZpZXdwb3J0U3RhdGUsXG4gIE5vZGVDaGFuZ2UsXG4gIEVkZ2VDaGFuZ2UsXG4gIEZpdFZpZXdPcHRpb25zLFxuICBWZmxvd0NvbXBvbmVudCxcbiAgSW50ZXJzZWN0aW5nTm9kZXNPcHRpb25zLFxuICDJtUNvbm5lY3Rpb25Nb2RlbCBhcyBDb25uZWN0aW9uTW9kZWwsXG4gIERFRkFVTFRfT1BUSU1JWkFUSU9OLFxufSBmcm9tICduZ3gtdmZsb3cnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtcbiAgQ29ubmVjdGlvblRlbXBsYXRlTW9ja0RpcmVjdGl2ZSxcbiAgRWRnZUxhYmVsSHRtbFRlbXBsYXRlTW9ja0RpcmVjdGl2ZSxcbiAgRWRnZVRlbXBsYXRlTW9ja0RpcmVjdGl2ZSxcbiAgR3JvdXBOb2RlVGVtcGxhdGVNb2NrRGlyZWN0aXZlLFxuICBOb2RlSHRtbFRlbXBsYXRlTW9ja0RpcmVjdGl2ZSxcbn0gZnJvbSAnLi4vZGlyZWN0aXZlLW1vY2tzL3RlbXBsYXRlLW1vY2suZGlyZWN0aXZlJztcbmltcG9ydCB7IEFzSW50ZXJmYWNlIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2ZmxvdycsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRlbnQgLz5cblxuICAgIEBmb3IgKG5vZGUgb2Ygbm9kZXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgQGlmIChub2RlLnR5cGUgPT09ICdodG1sLXRlbXBsYXRlJykge1xuICAgICAgICA8bmctY29tcG9uZW50XG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwibm9kZVRlbXBsYXRlRGlyZWN0aXZlKCk/LnRlbXBsYXRlUmVmID8/IG51bGxcIlxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAkaW1wbGljaXQ6IHtcbiAgICAgICAgICAgICAgbm9kZTogbm9kZSxcbiAgICAgICAgICAgICAgc2VsZWN0ZWQ6IGNyZWF0ZVNpZ25hbChmYWxzZSksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH1cIiAvPlxuICAgICAgfVxuXG4gICAgICBAaWYgKG5vZGUudHlwZSA9PT0gJ3RlbXBsYXRlLWdyb3VwJykge1xuICAgICAgICA8bmctY29tcG9uZW50XG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZ3JvdXBOb2RlVGVtcGxhdGVEaXJlY3RpdmUoKT8udGVtcGxhdGVSZWYgPz8gbnVsbFwiXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntcbiAgICAgICAgICAgICRpbXBsaWNpdDoge1xuICAgICAgICAgICAgICBub2RlOiBub2RlLFxuICAgICAgICAgICAgICBzZWxlY3RlZDogY3JlYXRlU2lnbmFsKGZhbHNlKSxcbiAgICAgICAgICAgICAgd2lkdGg6IGNyZWF0ZVNpZ25hbChub2RlLndpZHRoKSxcbiAgICAgICAgICAgICAgaGVpZ2h0OiBjcmVhdGVTaWduYWwobm9kZS5oZWlnaHQpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9XCIgLz5cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZm9yIChlZGdlIG9mIGVkZ2VzOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIEBpZiAoZWRnZS50eXBlID09PSAndGVtcGxhdGUnKSB7XG4gICAgICAgIDxuZy1jb21wb25lbnRcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJlZGdlVGVtcGxhdGVEaXJlY3RpdmUoKT8udGVtcGxhdGVSZWYgPz8gbnVsbFwiXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntcbiAgICAgICAgICAgICRpbXBsaWNpdDoge1xuICAgICAgICAgICAgICBlZGdlOiBlZGdlLFxuICAgICAgICAgICAgICBzZWxlY3RlZDogY3JlYXRlU2lnbmFsKGZhbHNlKSxcbiAgICAgICAgICAgICAgcGF0aDogY3JlYXRlU2lnbmFsKCcnKSxcbiAgICAgICAgICAgICAgbWFya2VyU3RhcnQ6IGNyZWF0ZVNpZ25hbCgnJyksXG4gICAgICAgICAgICAgIG1hcmtlckVuZDogY3JlYXRlU2lnbmFsKCcnKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfVwiIC8+XG5cbiAgICAgICAgQGlmIChlZGdlLmVkZ2VMYWJlbHM/LnN0YXJ0KSB7XG4gICAgICAgICAgPG5nLWNvbXBvbmVudFxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZWRnZUxhYmVsSHRtbERpcmVjdGl2ZSgpPy50ZW1wbGF0ZVJlZiA/PyBudWxsXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAgICRpbXBsaWNpdDoge1xuICAgICAgICAgICAgICAgIGVkZ2U6IGVkZ2UsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9XCIgLz5cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAoZWRnZS5lZGdlTGFiZWxzPy5jZW50ZXIpIHtcbiAgICAgICAgICA8bmctY29tcG9uZW50XG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJlZGdlTGFiZWxIdG1sRGlyZWN0aXZlKCk/LnRlbXBsYXRlUmVmID8/IG51bGxcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntcbiAgICAgICAgICAgICAgJGltcGxpY2l0OiB7XG4gICAgICAgICAgICAgICAgZWRnZTogZWRnZSxcbiAgICAgICAgICAgICAgICBsYWJlbDogZWRnZS5lZGdlTGFiZWxzPy5jZW50ZXIsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9XCIgLz5cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAoZWRnZS5lZGdlTGFiZWxzPy5lbmQpIHtcbiAgICAgICAgICA8bmctY29tcG9uZW50XG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJlZGdlTGFiZWxIdG1sRGlyZWN0aXZlKCk/LnRlbXBsYXRlUmVmID8/IG51bGxcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntcbiAgICAgICAgICAgICAgJGltcGxpY2l0OiB7XG4gICAgICAgICAgICAgICAgZWRnZTogZWRnZSxcbiAgICAgICAgICAgICAgICBsYWJlbDogZWRnZS5lZGdlTGFiZWxzPy5lbmQsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9XCIgLz5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAoY29ubmVjdGlvbi50eXBlID09PSAndGVtcGxhdGUnKSB7XG4gICAgICA8bmctY29tcG9uZW50XG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNvbm5lY3Rpb25UZW1wbGF0ZURpcmVjdGl2ZSgpPy50ZW1wbGF0ZVJlZiA/PyBudWxsXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntcbiAgICAgICAgICAkaW1wbGljaXQ6IHtcbiAgICAgICAgICAgIHBhdGg6IGNyZWF0ZVNpZ25hbCgnJyksXG4gICAgICAgICAgICBtYXJrZXI6IGNyZWF0ZVNpZ25hbCgnJyksXG4gICAgICAgICAgfSxcbiAgICAgICAgfVwiIC8+XG4gICAgfVxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nVGVtcGxhdGVPdXRsZXRdLFxufSlcbmV4cG9ydCBjbGFzcyBWZmxvd01vY2tDb21wb25lbnQgaW1wbGVtZW50cyBBc0ludGVyZmFjZTxWZmxvd0NvbXBvbmVudD4sIE9uSW5pdCB7XG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gIHB1YmxpYyByZWFkb25seSBub2RlcyE6IE5vZGVbXSB8IER5bmFtaWNOb2RlW107XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJlYWRvbmx5IGVkZ2VzITogRWRnZVtdO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZWFkb25seSB2aWV3OiBbbnVtYmVyLCBudW1iZXJdIHwgJ2F1dG8nID0gWzQwMCwgNDAwXTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgbWluWm9vbSA9IDAuNTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgbWF4Wm9vbSA9IDM7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJlYWRvbmx5IGJhY2tncm91bmQ6IEJhY2tncm91bmQgfCBzdHJpbmcgPSAnI2ZmZic7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJlYWRvbmx5IG9wdGltaXphdGlvbiA9IERFRkFVTFRfT1BUSU1JWkFUSU9OO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBlbnRpdGllc1NlbGVjdGFibGUgPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBrZXlib2FyZFNob3J0Y3V0czogS2V5Ym9hcmRTaG9ydGN1dHMgPSB7XG4gICAgbXVsdGlTZWxlY3Rpb246IG51bGwsXG4gIH07XG5cbiAgQElucHV0KHtcbiAgICB0cmFuc2Zvcm06IChzZXR0aW5nczogQ29ubmVjdGlvblNldHRpbmdzKSA9PiBuZXcgQ29ubmVjdGlvbk1vZGVsKHNldHRpbmdzKSxcbiAgfSlcbiAgcHVibGljIHJlYWRvbmx5IGNvbm5lY3Rpb246IENvbm5lY3Rpb25Nb2RlbCA9IG5ldyBDb25uZWN0aW9uTW9kZWwoe30pO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBzbmFwR3JpZCE6IFtudW1iZXIsIG51bWJlcl07XG5cbiAgQElucHV0KClcbiAgcHVibGljIGVsZXZhdGVOb2Rlc09uU2VsZWN0ITogYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZWxldmF0ZUVkZ2VzT25TZWxlY3QhOiBib29sZWFuO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICBwdWJsaWMgcmVhZG9ubHkgb25Db21wb25lbnROb2RlRXZlbnQgPSBvdXRwdXQ8YW55PigpO1xuXG4gIHByb3RlY3RlZCBub2RlVGVtcGxhdGVEaXJlY3RpdmUgPSBjb250ZW50Q2hpbGQoTm9kZUh0bWxUZW1wbGF0ZU1vY2tEaXJlY3RpdmUpO1xuXG4gIHByb3RlY3RlZCBncm91cE5vZGVUZW1wbGF0ZURpcmVjdGl2ZSA9IGNvbnRlbnRDaGlsZChHcm91cE5vZGVUZW1wbGF0ZU1vY2tEaXJlY3RpdmUpO1xuXG4gIHByb3RlY3RlZCBlZGdlVGVtcGxhdGVEaXJlY3RpdmUgPSBjb250ZW50Q2hpbGQoRWRnZVRlbXBsYXRlTW9ja0RpcmVjdGl2ZSk7XG5cbiAgcHJvdGVjdGVkIGVkZ2VMYWJlbEh0bWxEaXJlY3RpdmUgPSBjb250ZW50Q2hpbGQoRWRnZUxhYmVsSHRtbFRlbXBsYXRlTW9ja0RpcmVjdGl2ZSk7XG5cbiAgcHJvdGVjdGVkIGNvbm5lY3Rpb25UZW1wbGF0ZURpcmVjdGl2ZSA9IGNvbnRlbnRDaGlsZChDb25uZWN0aW9uVGVtcGxhdGVNb2NrRGlyZWN0aXZlKTtcblxuICBwdWJsaWMgdmlld3BvcnQgPSBzaWduYWw8Vmlld3BvcnRTdGF0ZT4oe1xuICAgIHg6IDAsXG4gICAgeTogMCxcbiAgICB6b29tOiAxLFxuICB9KTtcblxuICBwdWJsaWMgbm9kZXNDaGFuZ2UgPSBzaWduYWw8Tm9kZUNoYW5nZVtdPihbXSk7XG4gIHB1YmxpYyBlZGdlc0NoYW5nZSA9IHNpZ25hbDxFZGdlQ2hhbmdlW10+KFtdKTtcblxuICBwdWJsaWMgdmlld3BvcnRDaGFuZ2UkID0gdG9PYnNlcnZhYmxlKHRoaXMudmlld3BvcnQpO1xuXG4gIHB1YmxpYyBub2Rlc0NoYW5nZSQgPSB0b09ic2VydmFibGUodGhpcy5ub2Rlc0NoYW5nZSk7XG4gIHB1YmxpYyBlZGdlc0NoYW5nZSQgPSB0b09ic2VydmFibGUodGhpcy5lZGdlc0NoYW5nZSk7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1lbXB0eS1saWZlY3ljbGUtbWV0aG9kXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHt9XG5cbiAgcHVibGljIHZpZXdwb3J0VG8odmlld3BvcnQ6IFZpZXdwb3J0U3RhdGUpOiB2b2lkIHtcbiAgICB0aGlzLnZpZXdwb3J0LnNldCh2aWV3cG9ydCk7XG4gIH1cblxuICBwdWJsaWMgem9vbVRvKHpvb206IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMudmlld3BvcnQudXBkYXRlKChwcmV2KSA9PiAoeyAuLi5wcmV2LCB6b29tIH0pKTtcbiAgfVxuXG4gIHB1YmxpYyBwYW5Ubyhwb2ludDogUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLnZpZXdwb3J0LnVwZGF0ZSgocHJldikgPT4gKHsgLi4ucHJldiwgeDogcG9pbnQueCwgeTogcG9pbnQueSB9KSk7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIHB1YmxpYyBmaXRWaWV3KG9wdGlvbnM/OiBGaXRWaWV3T3B0aW9ucyk6IHZvaWQge31cblxuICBwdWJsaWMgZG9jdW1lbnRQb2ludFRvRmxvd1BvaW50KHBvaW50OiBQb2ludCwgb3B0aW9ucz86IHsgc3BhY2VzOiBmYWxzZSB9KTogUG9pbnQ7XG4gIHB1YmxpYyBkb2N1bWVudFBvaW50VG9GbG93UG9pbnQocG9pbnQ6IFBvaW50LCBvcHRpb25zOiB7IHNwYWNlczogdHJ1ZSB9KTogU3BhY2VQb2ludFtdO1xuICBwdWJsaWMgZG9jdW1lbnRQb2ludFRvRmxvd1BvaW50KHBvaW50OiBQb2ludCwgb3B0aW9ucz86IHsgc3BhY2VzOiBib29sZWFuIH0pOiB1bmtub3duIHtcbiAgICBpZiAob3B0aW9ucz8uc3BhY2VzKSB7XG4gICAgICByZXR1cm4gW1xuICAgICAgICB7XG4gICAgICAgICAgbm9kZUlkOiBudWxsLFxuICAgICAgICAgIHg6IHBvaW50LngsXG4gICAgICAgICAgeTogcG9pbnQueSxcbiAgICAgICAgfSxcbiAgICAgIF07XG4gICAgfVxuXG4gICAgcmV0dXJuIHBvaW50O1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICBwdWJsaWMgZ2V0SW50ZXNlY3RpbmdOb2Rlcyhub2RlSWQ6IHN0cmluZywgb3B0aW9ucz86IEludGVyc2VjdGluZ05vZGVzT3B0aW9ucyk6IE5vZGVbXSB8IER5bmFtaWNOb2RlW10ge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgcHVibGljIHRvTm9kZVNwYWNlKG5vZGVJZDogc3RyaW5nLCBzcGFjZU5vZGVJZDogc3RyaW5nKTogUG9pbnQge1xuICAgIHJldHVybiB7IHg6IDAsIHk6IDAgfTtcbiAgfVxuXG4gIHB1YmxpYyBnZXROb2RlPFQgPSB1bmtub3duPihpZDogc3RyaW5nKTogTm9kZTxUPiB8IER5bmFtaWNOb2RlPFQ+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5ub2Rlcy5maW5kKChub2RlKSA9PiBub2RlLmlkID09PSBpZCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0RGV0YWNoZWRFZGdlcygpOiBFZGdlW10ge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVTaWduYWw8VD4odmFsdWU6IFQpOiBXcml0YWJsZVNpZ25hbDxUPiB7XG4gICAgcmV0dXJuIHNpZ25hbCh2YWx1ZSk7XG4gIH1cbn1cbiJdfQ==
|
|
298
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmZsb3ctbW9jay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmZsb3ctbGliL3Rlc3Rpbmcvc3JjL2NvbXBvbmVudC1tb2Nrcy92Zmxvdy1tb2NrLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQWVMLGdCQUFnQixJQUFJLGVBQWUsRUFDbkMsb0JBQW9CLEdBQ3JCLE1BQU0sV0FBVyxDQUFDO0FBQ25CLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQ0wsK0JBQStCLEVBQy9CLGtDQUFrQyxFQUNsQyx5QkFBeUIsRUFDekIsOEJBQThCLEVBQzlCLDZCQUE2QixHQUM5QixNQUFNLDRDQUE0QyxDQUFDOztBQWlHcEQsTUFBTSxPQUFPLGtCQUFrQjtJQTlGL0I7UUFzR2tCLFNBQUksR0FBOEIsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFHN0MsWUFBTyxHQUFHLEdBQUcsQ0FBQztRQUdkLFlBQU8sR0FBRyxDQUFDLENBQUM7UUFHWixlQUFVLEdBQXdCLE1BQU0sQ0FBQztRQUd6QyxpQkFBWSxHQUFHLG9CQUFvQixDQUFDO1FBR3BDLHVCQUFrQixHQUFHLElBQUksQ0FBQztRQUcxQixzQkFBaUIsR0FBc0I7WUFDckQsY0FBYyxFQUFFLElBQUk7U0FDckIsQ0FBQztRQUtjLGVBQVUsR0FBb0IsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7UUFXdEUsK0RBQStEO1FBQy9DLHlCQUFvQixHQUFHLE1BQU0sRUFBTyxDQUFDO1FBRTNDLDBC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QVE7c0JBRHZCLEtBQUs7Z0JBSUMsb0JBQW9CO3NCQUQxQixLQUFLO2dCQUlDLG9CQUFvQjtzQkFEMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbnRlbnRDaGlsZCxcbiAgSW5wdXQsXG4gIG91dHB1dCxcbiAgc2lnbmFsLFxuICBXcml0YWJsZVNpZ25hbCxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgTm9kZSxcbiAgRHluYW1pY05vZGUsXG4gIEVkZ2UsXG4gIFNwYWNlUG9pbnQsXG4gIFBvaW50LFxuICBCYWNrZ3JvdW5kLFxuICBLZXlib2FyZFNob3J0Y3V0cyxcbiAgQ29ubmVjdGlvblNldHRpbmdzLFxuICBWaWV3cG9ydFN0YXRlLFxuICBOb2RlQ2hhbmdlLFxuICBFZGdlQ2hhbmdlLFxuICBGaXRWaWV3T3B0aW9ucyxcbiAgVmZsb3dDb21wb25lbnQsXG4gIEludGVyc2VjdGluZ05vZGVzT3B0aW9ucyxcbiAgybVDb25uZWN0aW9uTW9kZWwgYXMgQ29ubmVjdGlvbk1vZGVsLFxuICBERUZBVUxUX09QVElNSVpBVElPTixcbn0gZnJvbSAnbmd4LXZmbG93JztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG4gIENvbm5lY3Rpb25UZW1wbGF0ZU1vY2tEaXJlY3RpdmUsXG4gIEVkZ2VMYWJlbEh0bWxUZW1wbGF0ZU1vY2tEaXJlY3RpdmUsXG4gIEVkZ2VUZW1wbGF0ZU1vY2tEaXJlY3RpdmUsXG4gIEdyb3VwTm9kZVRlbXBsYXRlTW9ja0RpcmVjdGl2ZSxcbiAgTm9kZUh0bWxUZW1wbGF0ZU1vY2tEaXJlY3RpdmUsXG59IGZyb20gJy4uL2RpcmVjdGl2ZS1tb2Nrcy90ZW1wbGF0ZS1tb2NrLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBBc0ludGVyZmFjZSB9IGZyb20gJy4uL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmZsb3cnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250ZW50IC8+XG5cbiAgICBAZm9yIChub2RlIG9mIG5vZGVzOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIEBpZiAobm9kZS50eXBlID09PSAnaHRtbC10ZW1wbGF0ZScpIHtcbiAgICAgICAgPG5nLWNvbXBvbmVudFxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm5vZGVUZW1wbGF0ZURpcmVjdGl2ZSgpPy50ZW1wbGF0ZVJlZiA/PyBudWxsXCJcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgJGltcGxpY2l0OiB7XG4gICAgICAgICAgICAgIG5vZGU6IG5vZGUsXG4gICAgICAgICAgICAgIHNlbGVjdGVkOiBjcmVhdGVTaWduYWwoZmFsc2UpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9XCIgLz5cbiAgICAgIH1cblxuICAgICAgQGlmIChub2RlLnR5cGUgPT09ICd0ZW1wbGF0ZS1ncm91cCcpIHtcbiAgICAgICAgPG5nLWNvbXBvbmVudFxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImdyb3VwTm9kZVRlbXBsYXRlRGlyZWN0aXZlKCk/LnRlbXBsYXRlUmVmID8/IG51bGxcIlxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAkaW1wbGljaXQ6IHtcbiAgICAgICAgICAgICAgbm9kZTogbm9kZSxcbiAgICAgICAgICAgICAgc2VsZWN0ZWQ6IGNyZWF0ZVNpZ25hbChmYWxzZSksXG4gICAgICAgICAgICAgIHdpZHRoOiBjcmVhdGVTaWduYWwobm9kZS53aWR0aCksXG4gICAgICAgICAgICAgIGhlaWdodDogY3JlYXRlU2lnbmFsKG5vZGUuaGVpZ2h0KSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfVwiIC8+XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGZvciAoZWRnZSBvZiBlZGdlczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICBAaWYgKGVkZ2UudHlwZSA9PT0gJ3RlbXBsYXRlJykge1xuICAgICAgICA8bmctY29tcG9uZW50XG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZWRnZVRlbXBsYXRlRGlyZWN0aXZlKCk/LnRlbXBsYXRlUmVmID8/IG51bGxcIlxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAkaW1wbGljaXQ6IHtcbiAgICAgICAgICAgICAgZWRnZTogZWRnZSxcbiAgICAgICAgICAgICAgc2VsZWN0ZWQ6IGNyZWF0ZVNpZ25hbChmYWxzZSksXG4gICAgICAgICAgICAgIHBhdGg6IGNyZWF0ZVNpZ25hbCgnJyksXG4gICAgICAgICAgICAgIG1hcmtlclN0YXJ0OiBjcmVhdGVTaWduYWwoJycpLFxuICAgICAgICAgICAgICBtYXJrZXJFbmQ6IGNyZWF0ZVNpZ25hbCgnJyksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH1cIiAvPlxuXG4gICAgICAgIEBpZiAoZWRnZS5lZGdlTGFiZWxzPy5zdGFydCkge1xuICAgICAgICAgIDxuZy1jb21wb25lbnRcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImVkZ2VMYWJlbEh0bWxEaXJlY3RpdmUoKT8udGVtcGxhdGVSZWYgPz8gbnVsbFwiXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAkaW1wbGljaXQ6IHtcbiAgICAgICAgICAgICAgICBlZGdlOiBlZGdlLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfVwiIC8+XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKGVkZ2UuZWRnZUxhYmVscz8uY2VudGVyKSB7XG4gICAgICAgICAgPG5nLWNvbXBvbmVudFxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZWRnZUxhYmVsSHRtbERpcmVjdGl2ZSgpPy50ZW1wbGF0ZVJlZiA/PyBudWxsXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAgICRpbXBsaWNpdDoge1xuICAgICAgICAgICAgICAgIGVkZ2U6IGVkZ2UsXG4gICAgICAgICAgICAgICAgbGFiZWw6IGVkZ2UuZWRnZUxhYmVscz8uY2VudGVyLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfVwiIC8+XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKGVkZ2UuZWRnZUxhYmVscz8uZW5kKSB7XG4gICAgICAgICAgPG5nLWNvbXBvbmVudFxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZWRnZUxhYmVsSHRtbERpcmVjdGl2ZSgpPy50ZW1wbGF0ZVJlZiA/PyBudWxsXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAgICRpbXBsaWNpdDoge1xuICAgICAgICAgICAgICAgIGVkZ2U6IGVkZ2UsXG4gICAgICAgICAgICAgICAgbGFiZWw6IGVkZ2UuZWRnZUxhYmVscz8uZW5kLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfVwiIC8+XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKGNvbm5lY3Rpb24udHlwZSA9PT0gJ3RlbXBsYXRlJykge1xuICAgICAgPG5nLWNvbXBvbmVudFxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJjb25uZWN0aW9uVGVtcGxhdGVEaXJlY3RpdmUoKT8udGVtcGxhdGVSZWYgPz8gbnVsbFwiXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgJGltcGxpY2l0OiB7XG4gICAgICAgICAgICBwYXRoOiBjcmVhdGVTaWduYWwoJycpLFxuICAgICAgICAgICAgbWFya2VyOiBjcmVhdGVTaWduYWwoJycpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH1cIiAvPlxuICAgIH1cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ1RlbXBsYXRlT3V0bGV0XSxcbn0pXG5leHBvcnQgY2xhc3MgVmZsb3dNb2NrQ29tcG9uZW50IGltcGxlbWVudHMgQXNJbnRlcmZhY2U8VmZsb3dDb21wb25lbnQ+LCBPbkluaXQge1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxuICBwdWJsaWMgcmVhZG9ubHkgbm9kZXMhOiBOb2RlW10gfCBEeW5hbWljTm9kZVtdO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBlZGdlcyE6IEVkZ2VbXTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgdmlldzogW251bWJlciwgbnVtYmVyXSB8ICdhdXRvJyA9IFs0MDAsIDQwMF07XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJlYWRvbmx5IG1pblpvb20gPSAwLjU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJlYWRvbmx5IG1heFpvb20gPSAzO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBiYWNrZ3JvdW5kOiBCYWNrZ3JvdW5kIHwgc3RyaW5nID0gJyNmZmYnO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBvcHRpbWl6YXRpb24gPSBERUZBVUxUX09QVElNSVpBVElPTjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgZW50aXRpZXNTZWxlY3RhYmxlID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkga2V5Ym9hcmRTaG9ydGN1dHM6IEtleWJvYXJkU2hvcnRjdXRzID0ge1xuICAgIG11bHRpU2VsZWN0aW9uOiBudWxsLFxuICB9O1xuXG4gIEBJbnB1dCh7XG4gICAgdHJhbnNmb3JtOiAoc2V0dGluZ3M6IENvbm5lY3Rpb25TZXR0aW5ncykgPT4gbmV3IENvbm5lY3Rpb25Nb2RlbChzZXR0aW5ncyksXG4gIH0pXG4gIHB1YmxpYyByZWFkb25seSBjb25uZWN0aW9uOiBDb25uZWN0aW9uTW9kZWwgPSBuZXcgQ29ubmVjdGlvbk1vZGVsKHt9KTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgc25hcEdyaWQhOiBbbnVtYmVyLCBudW1iZXJdO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBlbGV2YXRlTm9kZXNPblNlbGVjdCE6IGJvb2xlYW47XG5cbiAgQElucHV0KClcbiAgcHVibGljIGVsZXZhdGVFZGdlc09uU2VsZWN0ITogYm9vbGVhbjtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1vbi1wcmVmaXhcbiAgcHVibGljIHJlYWRvbmx5IG9uQ29tcG9uZW50Tm9kZUV2ZW50ID0gb3V0cHV0PGFueT4oKTtcblxuICBwcm90ZWN0ZWQgbm9kZVRlbXBsYXRlRGlyZWN0aXZlID0gY29udGVudENoaWxkKE5vZGVIdG1sVGVtcGxhdGVNb2NrRGlyZWN0aXZlKTtcblxuICBwcm90ZWN0ZWQgZ3JvdXBOb2RlVGVtcGxhdGVEaXJlY3RpdmUgPSBjb250ZW50Q2hpbGQoR3JvdXBOb2RlVGVtcGxhdGVNb2NrRGlyZWN0aXZlKTtcblxuICBwcm90ZWN0ZWQgZWRnZVRlbXBsYXRlRGlyZWN0aXZlID0gY29udGVudENoaWxkKEVkZ2VUZW1wbGF0ZU1vY2tEaXJlY3RpdmUpO1xuXG4gIHByb3RlY3RlZCBlZGdlTGFiZWxIdG1sRGlyZWN0aXZlID0gY29udGVudENoaWxkKEVkZ2VMYWJlbEh0bWxUZW1wbGF0ZU1vY2tEaXJlY3RpdmUpO1xuXG4gIHByb3RlY3RlZCBjb25uZWN0aW9uVGVtcGxhdGVEaXJlY3RpdmUgPSBjb250ZW50Q2hpbGQoQ29ubmVjdGlvblRlbXBsYXRlTW9ja0RpcmVjdGl2ZSk7XG5cbiAgcHVibGljIHZpZXdwb3J0ID0gc2lnbmFsPFZpZXdwb3J0U3RhdGU+KHtcbiAgICB4OiAwLFxuICAgIHk6IDAsXG4gICAgem9vbTogMSxcbiAgfSk7XG5cbiAgcHVibGljIG5vZGVzQ2hhbmdlID0gc2lnbmFsPE5vZGVDaGFuZ2VbXT4oW10pO1xuICBwdWJsaWMgZWRnZXNDaGFuZ2UgPSBzaWduYWw8RWRnZUNoYW5nZVtdPihbXSk7XG4gIHB1YmxpYyBpbml0aWFsaXplZCA9IHNpZ25hbCh0cnVlKTtcblxuICBwdWJsaWMgaW5pdGlhbGl6ZWQkID0gdG9PYnNlcnZhYmxlKHRoaXMuaW5pdGlhbGl6ZWQpO1xuICBwdWJsaWMgdmlld3BvcnRDaGFuZ2UkID0gdG9PYnNlcnZhYmxlKHRoaXMudmlld3BvcnQpO1xuICBwdWJsaWMgbm9kZXNDaGFuZ2UkID0gdG9PYnNlcnZhYmxlKHRoaXMubm9kZXNDaGFuZ2UpO1xuICBwdWJsaWMgZWRnZXNDaGFuZ2UkID0gdG9PYnNlcnZhYmxlKHRoaXMuZWRnZXNDaGFuZ2UpO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tZW1wdHktbGlmZWN5Y2xlLW1ldGhvZFxuICBwdWJsaWMgbmdPbkluaXQoKSB7fVxuXG4gIHB1YmxpYyB2aWV3cG9ydFRvKHZpZXdwb3J0OiBWaWV3cG9ydFN0YXRlKTogdm9pZCB7XG4gICAgdGhpcy52aWV3cG9ydC5zZXQodmlld3BvcnQpO1xuICB9XG5cbiAgcHVibGljIHpvb21Ubyh6b29tOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnZpZXdwb3J0LnVwZGF0ZSgocHJldikgPT4gKHsgLi4ucHJldiwgem9vbSB9KSk7XG4gIH1cblxuICBwdWJsaWMgcGFuVG8ocG9pbnQ6IFBvaW50KTogdm9pZCB7XG4gICAgdGhpcy52aWV3cG9ydC51cGRhdGUoKHByZXYpID0+ICh7IC4uLnByZXYsIHg6IHBvaW50LngsIHk6IHBvaW50LnkgfSkpO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICBwdWJsaWMgZml0VmlldyhvcHRpb25zPzogRml0Vmlld09wdGlvbnMpOiB2b2lkIHt9XG5cbiAgcHVibGljIGRvY3VtZW50UG9pbnRUb0Zsb3dQb2ludChwb2ludDogUG9pbnQsIG9wdGlvbnM/OiB7IHNwYWNlczogZmFsc2UgfSk6IFBvaW50O1xuICBwdWJsaWMgZG9jdW1lbnRQb2ludFRvRmxvd1BvaW50KHBvaW50OiBQb2ludCwgb3B0aW9uczogeyBzcGFjZXM6IHRydWUgfSk6IFNwYWNlUG9pbnRbXTtcbiAgcHVibGljIGRvY3VtZW50UG9pbnRUb0Zsb3dQb2ludChwb2ludDogUG9pbnQsIG9wdGlvbnM/OiB7IHNwYWNlczogYm9vbGVhbiB9KTogdW5rbm93biB7XG4gICAgaWYgKG9wdGlvbnM/LnNwYWNlcykge1xuICAgICAgcmV0dXJuIFtcbiAgICAgICAge1xuICAgICAgICAgIG5vZGVJZDogbnVsbCxcbiAgICAgICAgICB4OiBwb2ludC54LFxuICAgICAgICAgIHk6IHBvaW50LnksXG4gICAgICAgIH0sXG4gICAgICBdO1xuICAgIH1cblxuICAgIHJldHVybiBwb2ludDtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgcHVibGljIGdldEludGVzZWN0aW5nTm9kZXMobm9kZUlkOiBzdHJpbmcsIG9wdGlvbnM/OiBJbnRlcnNlY3RpbmdOb2Rlc09wdGlvbnMpOiBOb2RlW10gfCBEeW5hbWljTm9kZVtdIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIHB1YmxpYyB0b05vZGVTcGFjZShub2RlSWQ6IHN0cmluZywgc3BhY2VOb2RlSWQ6IHN0cmluZyk6IFBvaW50IHtcbiAgICByZXR1cm4geyB4OiAwLCB5OiAwIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0Tm9kZTxUID0gdW5rbm93bj4oaWQ6IHN0cmluZyk6IE5vZGU8VD4gfCBEeW5hbWljTm9kZTxUPiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMubm9kZXMuZmluZCgobm9kZSkgPT4gbm9kZS5pZCA9PT0gaWQpO1xuICB9XG5cbiAgcHVibGljIGdldERldGFjaGVkRWRnZXMoKTogRWRnZVtdIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlU2lnbmFsPFQ+KHZhbHVlOiBUKTogV3JpdGFibGVTaWduYWw8VD4ge1xuICAgIHJldHVybiBzaWduYWwodmFsdWUpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { signal } from '@angular/core';
|
|
2
|
-
import { ɵNodeModel as NodeModel, ɵComponentEventBusService as ComponentEventBusService, ɵHandleService as HandleService, ɵFlowSettingsService as FlowSettingsService, ɵFlowEntitiesService as FlowEntitiesService, ɵNodeAccessorService as NodeAccessorService, ɵRootPointerDirective as RootPointerDirective, ɵSpacePointContextDirective as SpacePointContextDirective, ɵViewportService as ViewportService, ɵSelectionService as SelectionService, } from 'ngx-vflow';
|
|
2
|
+
import { ɵNodeModel as NodeModel, ɵComponentEventBusService as ComponentEventBusService, ɵHandleService as HandleService, ɵFlowSettingsService as FlowSettingsService, ɵFlowEntitiesService as FlowEntitiesService, ɵNodeAccessorService as NodeAccessorService, ɵRootPointerDirective as RootPointerDirective, ɵSpacePointContextDirective as SpacePointContextDirective, ɵViewportService as ViewportService, ɵSelectionService as SelectionService, ɵNodeRenderingService as NodeRenderingService, } from 'ngx-vflow';
|
|
3
3
|
import { of } from 'rxjs';
|
|
4
4
|
const mockModel = () => new NodeModel({ id: 'mock', type: 'default', point: { x: 0, y: 0 } });
|
|
5
5
|
export function provideCustomNodeMocks() {
|
|
@@ -54,6 +54,7 @@ export function provideCustomNodeMocks() {
|
|
|
54
54
|
},
|
|
55
55
|
FlowSettingsService,
|
|
56
56
|
ViewportService,
|
|
57
|
+
NodeRenderingService,
|
|
57
58
|
];
|
|
58
59
|
}
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1jdXN0b20tbm9kZS1tb2Nrcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12Zmxvdy1saWIvdGVzdGluZy9zcmMvcHJvdmlkZS1jdXN0b20tbm9kZS1tb2Nrcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVksTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFDTCxVQUFVLElBQUksU0FBUyxFQUN2Qix5QkFBeUIsSUFBSSx3QkFBd0IsRUFDckQsY0FBYyxJQUFJLGFBQWEsRUFDL0Isb0JBQW9CLElBQUksbUJBQW1CLEVBQzNDLG9CQUFvQixJQUFJLG1CQUFtQixFQUMzQyxvQkFBb0IsSUFBSSxtQkFBbUIsRUFDM0MscUJBQXFCLElBQUksb0JBQW9CLEVBQzdDLDJCQUEyQixJQUFJLDBCQUEwQixFQUN6RCxnQkFBZ0IsSUFBSSxlQUFlLEVBQ25DLGlCQUFpQixJQUFJLGdCQUFnQixFQUNyQyxxQkFBcUIsSUFBSSxvQkFBb0IsR0FFOUMsTUFBTSxXQUFXLENBQUM7QUFDbkIsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUxQixNQUFNLFNBQVMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFFOUYsTUFBTSxVQUFVLHNCQUFzQjtJQUNwQyxPQUFPO1FBQ0w7WUFDRSxPQUFPLEVBQUUsd0JBQXdCO1lBQ2pDLFFBQVEsRUFBRTtnQkFDUixTQUFTLEVBQUUsR0FBRyxFQUFFLEdBQUUsQ0FBQzthQUNwQjtTQUNGO1FBQ0Q7WUFDRSxPQUFPLEVBQUUsbUJBQW1CO1lBQzVCLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO2dCQUNqQixLQUFLLEVBQUUsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO2FBQzNCLENBQUM7U0FDSDtRQUNELG1CQUFtQjtRQUVuQiw4REFBOEQ7UUFDOUQ7WUFDRSxPQUFPLEVBQUUsYUFBYTtZQUN0QixVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztnQkFDakIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDekIsWUFBWSxFQUFFLEdBQUcsRUFBRSxHQUFFLENBQUM7Z0JBQ3RCLGFBQWEsRUFBRSxHQUFHLEVBQUUsR0FBRSxDQUFDO2FBQ3hCLENBQUM7U0FDSDtRQUNEO1lBQ0UsT0FBTyxFQUFFLG9CQUFvQjtZQUM3QixRQUFRLEVBQUU7Z0JBQ1IsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDO29CQUNuQixDQUFDLEVBQUUsQ0FBQztvQkFDSixDQUFDLEVBQUUsQ0FBQztvQkFDSixTQUFTLEVBQUUsQ0FBQztvQkFDWixTQUFTLEVBQUUsQ0FBQztvQkFDWixNQUFNLEVBQUUsSUFBSTtvQkFDWixhQUFhLEVBQUUsSUFBSTtpQkFDcEIsQ0FBQztnQkFDRixtQkFBbUIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDO2FBQzlCO1NBQ0Y7UUFDRDtZQUNFLE9BQU8sRUFBRSwwQkFBMEI7WUFDbkMsUUFBUSxFQUFFO2dCQUNSLHdCQUF3QixFQUFFLENBQUMsS0FBWSxFQUFFLEVBQUUsQ0FBQyxLQUFLO2FBQ2xEO1NBQ0Y7UUFDRDtZQUNFLE9BQU8sRUFBRSxnQkFBZ0I7WUFDekIsUUFBUSxFQUFFO2dCQUNSLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRSxDQUFDO2FBQ2pCO1NBQ0Y7UUFDRCxtQkFBbUI7UUFDbkIsZUFBZTtRQUNmLG9CQUFvQjtLQUNyQixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb3ZpZGVyLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIMm1Tm9kZU1vZGVsIGFzIE5vZGVNb2RlbCxcbiAgybVDb21wb25lbnRFdmVudEJ1c1NlcnZpY2UgYXMgQ29tcG9uZW50RXZlbnRCdXNTZXJ2aWNlLFxuICDJtUhhbmRsZVNlcnZpY2UgYXMgSGFuZGxlU2VydmljZSxcbiAgybVGbG93U2V0dGluZ3NTZXJ2aWNlIGFzIEZsb3dTZXR0aW5nc1NlcnZpY2UsXG4gIMm1Rmxvd0VudGl0aWVzU2VydmljZSBhcyBGbG93RW50aXRpZXNTZXJ2aWNlLFxuICDJtU5vZGVBY2Nlc3NvclNlcnZpY2UgYXMgTm9kZUFjY2Vzc29yU2VydmljZSxcbiAgybVSb290UG9pbnRlckRpcmVjdGl2ZSBhcyBSb290UG9pbnRlckRpcmVjdGl2ZSxcbiAgybVTcGFjZVBvaW50Q29udGV4dERpcmVjdGl2ZSBhcyBTcGFjZVBvaW50Q29udGV4dERpcmVjdGl2ZSxcbiAgybVWaWV3cG9ydFNlcnZpY2UgYXMgVmlld3BvcnRTZXJ2aWNlLFxuICDJtVNlbGVjdGlvblNlcnZpY2UgYXMgU2VsZWN0aW9uU2VydmljZSxcbiAgybVOb2RlUmVuZGVyaW5nU2VydmljZSBhcyBOb2RlUmVuZGVyaW5nU2VydmljZSxcbiAgUG9pbnQsXG59IGZyb20gJ25neC12Zmxvdyc7XG5pbXBvcnQgeyBvZiB9IGZyb20gJ3J4anMnO1xuXG5jb25zdCBtb2NrTW9kZWwgPSAoKSA9PiBuZXcgTm9kZU1vZGVsKHsgaWQ6ICdtb2NrJywgdHlwZTogJ2RlZmF1bHQnLCBwb2ludDogeyB4OiAwLCB5OiAwIH0gfSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlQ3VzdG9tTm9kZU1vY2tzKCk6IFByb3ZpZGVyW10ge1xuICByZXR1cm4gW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IENvbXBvbmVudEV2ZW50QnVzU2VydmljZSxcbiAgICAgIHVzZVZhbHVlOiB7XG4gICAgICAgIHB1c2hFdmVudDogKCkgPT4ge30sXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTm9kZUFjY2Vzc29yU2VydmljZSxcbiAgICAgIHVzZUZhY3Rvcnk6ICgpID0+ICh7XG4gICAgICAgIG1vZGVsOiBzaWduYWwobW9ja01vZGVsKCkpLFxuICAgICAgfSksXG4gICAgfSxcbiAgICBGbG93RW50aXRpZXNTZXJ2aWNlLFxuXG4gICAgLy8gVE9ETzogbW9ja3MgYmVsb3cgc2hvdWxkIGJlIHJlbW92ZWQgYWZ0ZXIgdGhlIG1ham9yIHJlbGVhc2VcbiAgICB7XG4gICAgICBwcm92aWRlOiBIYW5kbGVTZXJ2aWNlLFxuICAgICAgdXNlRmFjdG9yeTogKCkgPT4gKHtcbiAgICAgICAgbm9kZTogc2lnbmFsKG1vY2tNb2RlbCgpKSxcbiAgICAgICAgY3JlYXRlSGFuZGxlOiAoKSA9PiB7fSxcbiAgICAgICAgZGVzdHJveUhhbmRsZTogKCkgPT4ge30sXG4gICAgICB9KSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IFJvb3RQb2ludGVyRGlyZWN0aXZlLFxuICAgICAgdXNlVmFsdWU6IHtcbiAgICAgICAgcG9pbnRlck1vdmVtZW50JDogb2Yoe1xuICAgICAgICAgIHg6IDAsXG4gICAgICAgICAgeTogMCxcbiAgICAgICAgICBtb3ZlbWVudFg6IDAsXG4gICAgICAgICAgbW92ZW1lbnRZOiAwLFxuICAgICAgICAgIHRhcmdldDogbnVsbCxcbiAgICAgICAgICBvcmlnaW5hbEV2ZW50OiBudWxsLFxuICAgICAgICB9KSxcbiAgICAgICAgZG9jdW1lbnRQb2ludGVyRW5kJDogb2YobnVsbCksXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogU3BhY2VQb2ludENvbnRleHREaXJlY3RpdmUsXG4gICAgICB1c2VWYWx1ZToge1xuICAgICAgICBkb2N1bWVudFBvaW50VG9GbG93UG9pbnQ6IChwb2ludDogUG9pbnQpID0+IHBvaW50LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNlbGVjdGlvblNlcnZpY2UsXG4gICAgICB1c2VWYWx1ZToge1xuICAgICAgICBzZWxlY3Q6ICgpID0+IHt9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIEZsb3dTZXR0aW5nc1NlcnZpY2UsXG4gICAgVmlld3BvcnRTZXJ2aWNlLFxuICAgIE5vZGVSZW5kZXJpbmdTZXJ2aWNlLFxuICBdO1xufVxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { signal, inject, TemplateRef, Directive, output, contentChild, Component, ChangeDetectionStrategy, Input, input } from '@angular/core';
|
|
3
|
-
import { ɵNodeModel as _NodeModel, ɵComponentEventBusService as _ComponentEventBusService, ɵNodeAccessorService as _NodeAccessorService, ɵFlowEntitiesService as _FlowEntitiesService, ɵHandleService as _HandleService, ɵRootPointerDirective as _RootPointerDirective, ɵSpacePointContextDirective as _SpacePointContextDirective, ɵSelectionService as _SelectionService, ɵFlowSettingsService as _FlowSettingsService, ɵViewportService as _ViewportService, DEFAULT_OPTIMIZATION, ɵConnectionModel as _ConnectionModel } from 'ngx-vflow';
|
|
3
|
+
import { ɵNodeModel as _NodeModel, ɵComponentEventBusService as _ComponentEventBusService, ɵNodeAccessorService as _NodeAccessorService, ɵFlowEntitiesService as _FlowEntitiesService, ɵHandleService as _HandleService, ɵRootPointerDirective as _RootPointerDirective, ɵSpacePointContextDirective as _SpacePointContextDirective, ɵSelectionService as _SelectionService, ɵFlowSettingsService as _FlowSettingsService, ɵViewportService as _ViewportService, ɵNodeRenderingService as _NodeRenderingService, DEFAULT_OPTIMIZATION, ɵConnectionModel as _ConnectionModel } from 'ngx-vflow';
|
|
4
4
|
import { of } from 'rxjs';
|
|
5
5
|
import { NgTemplateOutlet } from '@angular/common';
|
|
6
6
|
import { toObservable } from '@angular/core/rxjs-interop';
|
|
@@ -58,6 +58,7 @@ function provideCustomNodeMocks() {
|
|
|
58
58
|
},
|
|
59
59
|
_FlowSettingsService,
|
|
60
60
|
_ViewportService,
|
|
61
|
+
_NodeRenderingService,
|
|
61
62
|
];
|
|
62
63
|
}
|
|
63
64
|
|
|
@@ -186,6 +187,8 @@ class VflowMockComponent {
|
|
|
186
187
|
});
|
|
187
188
|
this.nodesChange = signal([]);
|
|
188
189
|
this.edgesChange = signal([]);
|
|
190
|
+
this.initialized = signal(true);
|
|
191
|
+
this.initialized$ = toObservable(this.initialized);
|
|
189
192
|
this.viewportChange$ = toObservable(this.viewport);
|
|
190
193
|
this.nodesChange$ = toObservable(this.nodesChange);
|
|
191
194
|
this.edgesChange$ = toObservable(this.edgesChange);
|