@tetacom/ng-components 1.0.13 → 1.0.14
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/component/chart/model/enum/drag-point-type.d.ts +5 -0
- package/component/chart/model/point/marker-options.d.ts +2 -0
- package/esm2020/component/chart/core/chart.mjs +3 -3
- package/esm2020/component/chart/drawer/line-drawer.mjs +47 -37
- package/esm2020/component/chart/model/enum/drag-point-type.mjs +7 -0
- package/esm2020/component/chart/model/point/marker-options.mjs +1 -1
- package/fesm2015/tetacom-ng-components.mjs +53 -37
- package/fesm2015/tetacom-ng-components.mjs.map +1 -1
- package/fesm2020/tetacom-ng-components.mjs +54 -38
- package/fesm2020/tetacom-ng-components.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as d3 from 'd3';
|
|
2
2
|
import { DispatchType } from '../model/enum/dispatch-type';
|
|
3
|
+
import { DragPointType } from '../model/enum/drag-point-type';
|
|
3
4
|
export class LineDrawer {
|
|
4
5
|
constructor() {
|
|
5
6
|
this.dispatch = d3.dispatch(DispatchType.moveLine, DispatchType.movePoint);
|
|
@@ -14,44 +15,9 @@ export class LineDrawer {
|
|
|
14
15
|
.x((d) => scaleX(d.x))
|
|
15
16
|
.y((d) => scaleY(d.y));
|
|
16
17
|
const seriesIndex = options.series.findIndex((_) => _.id === series.id);
|
|
17
|
-
if (markerPoints?.length) {
|
|
18
|
-
const emit = (event, target) => {
|
|
19
|
-
this.dispatch.apply(DispatchType.movePoint, {
|
|
20
|
-
target: series,
|
|
21
|
-
point: {
|
|
22
|
-
...target,
|
|
23
|
-
},
|
|
24
|
-
event,
|
|
25
|
-
});
|
|
26
|
-
};
|
|
27
|
-
context
|
|
28
|
-
.selectAll('circle')
|
|
29
|
-
.data(markerPoints)
|
|
30
|
-
.enter()
|
|
31
|
-
.append('circle')
|
|
32
|
-
.attr('class', 'draggable-marker')
|
|
33
|
-
.attr('r', (d) => d.marker?.style?.radius || 5)
|
|
34
|
-
.attr('cx', function (d) {
|
|
35
|
-
return scaleX(d.x);
|
|
36
|
-
})
|
|
37
|
-
.attr('cy', function (d) {
|
|
38
|
-
return scaleY(d.y);
|
|
39
|
-
})
|
|
40
|
-
.style('cursor', 'pointer')
|
|
41
|
-
.style('fill', (d) => d.marker?.style?.color || 'red')
|
|
42
|
-
.attr('stroke', (d) => d.marker?.style?.stroke || 'none')
|
|
43
|
-
.attr('stroke-width', (d) => d.marker?.style?.strokeWidth || 0);
|
|
44
|
-
context.selectAll('.draggable-marker').call(d3.drag().on('drag start end', function dragged(event, d) {
|
|
45
|
-
d.x = scaleX.invert(event.sourceEvent?.offsetX);
|
|
46
|
-
d.y = scaleY.invert(event.sourceEvent?.offsetY);
|
|
47
|
-
d3.select(this).attr('cx', scaleX(d.x)).attr('cy', scaleY(d.y));
|
|
48
|
-
context.select('path').attr('d', path);
|
|
49
|
-
emit(event, d);
|
|
50
|
-
}));
|
|
51
|
-
}
|
|
52
18
|
context
|
|
53
19
|
.append('path')
|
|
54
|
-
.attr('class', (d) => series?.drag.enable ? 'draggable' :
|
|
20
|
+
.attr('class', (d) => series?.drag.enable ? 'draggable' : `series-${seriesIndex}`)
|
|
55
21
|
.attr('data-draggable-id', seriesIndex)
|
|
56
22
|
.attr('fill', 'none')
|
|
57
23
|
.attr('stroke', series.color)
|
|
@@ -137,6 +103,50 @@ export class LineDrawer {
|
|
|
137
103
|
if (series?.drag?.extendLine && points?.length) {
|
|
138
104
|
drawExtendedLine();
|
|
139
105
|
}
|
|
106
|
+
if (markerPoints?.length) {
|
|
107
|
+
const emit = (event, target) => {
|
|
108
|
+
this.dispatch.apply(DispatchType.movePoint, {
|
|
109
|
+
target: series,
|
|
110
|
+
point: {
|
|
111
|
+
...target,
|
|
112
|
+
},
|
|
113
|
+
event,
|
|
114
|
+
});
|
|
115
|
+
};
|
|
116
|
+
context
|
|
117
|
+
.selectAll(`draggable-marker-${seriesIndex}`)
|
|
118
|
+
.data(markerPoints)
|
|
119
|
+
.enter()
|
|
120
|
+
.append('circle')
|
|
121
|
+
.attr('class', `draggable-marker-${seriesIndex}`)
|
|
122
|
+
.attr('r', (d) => d.marker?.style?.radius || 5)
|
|
123
|
+
.attr('cx', function (d) {
|
|
124
|
+
return scaleX(d.x);
|
|
125
|
+
})
|
|
126
|
+
.attr('cy', function (d) {
|
|
127
|
+
return scaleY(d.y);
|
|
128
|
+
})
|
|
129
|
+
.style('cursor', 'pointer')
|
|
130
|
+
.style('fill', (d) => d.marker?.style?.color || 'red')
|
|
131
|
+
.attr('stroke', (d) => d.marker?.style?.stroke || 'none')
|
|
132
|
+
.attr('stroke-width', (d) => d.marker?.style?.strokeWidth || 0);
|
|
133
|
+
context.selectAll(`.draggable-marker-${seriesIndex}`).call(d3.drag().on('drag start end', function dragged(event, d) {
|
|
134
|
+
const node = d3.select(this);
|
|
135
|
+
if (event.type === 'start') {
|
|
136
|
+
node.raise().classed('active', true);
|
|
137
|
+
}
|
|
138
|
+
if (d.marker?.dragType === DragPointType.x) {
|
|
139
|
+
d.x = scaleX.invert(event.sourceEvent?.offsetX);
|
|
140
|
+
node.attr('cx', scaleX(d.x));
|
|
141
|
+
}
|
|
142
|
+
if (d.marker?.dragType === DragPointType.y) {
|
|
143
|
+
d.y = scaleY.invert(event.sourceEvent?.offsetY);
|
|
144
|
+
node.attr('cy', scaleY(d.y));
|
|
145
|
+
}
|
|
146
|
+
context.select(`.series-${seriesIndex}`).attr('d', path);
|
|
147
|
+
emit(event, d);
|
|
148
|
+
}));
|
|
149
|
+
}
|
|
140
150
|
}
|
|
141
151
|
}
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kcmF3ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnQvY2hhcnQvZHJhd2VyL2xpbmUtZHJhd2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBR3pCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUUzRCxNQUFNLE9BQU8sVUFBVTtJQUdyQjtRQUNFLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQsSUFBSSxDQUNGLE1BQXlCLEVBQ3pCLE9BQTJELEVBQzNELE1BQVcsRUFDWCxNQUFXLEVBQ1gsT0FBcUI7UUFFckIsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUUzQixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFcEQsTUFBTSxJQUFJLEdBQUcsRUFBRTthQUNaLElBQUksRUFBYTthQUNqQixLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQzthQUN2QixPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDO2FBQzFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNyQixDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENB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Q3hCLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2lCQUNsQyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1lBRXRDLE9BQU87aUJBQ0osTUFBTSxDQUFDLE1BQU0sQ0FBQztpQkFDZCxJQUFJLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQztpQkFDN0IsSUFBSSxDQUFDLGtCQUFrQixFQUFFLFdBQVcsQ0FBQztpQkFDckMsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDO2lCQUM3QixJQUFJLENBQUMsY0FBYyxFQUFFLE1BQU0sRUFBRSxXQUFXLENBQUM7aUJBQ3pDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLEVBQUUsZUFBZSxDQUFDO2lCQUNqRCxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ3hCLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDeEIsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7aUJBQ2hDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDO1FBRUYsSUFBSSxNQUFNLEVBQUUsSUFBSSxFQUFFLFVBQVUsSUFBSSxNQUFNLEVBQUUsTUFBTSxFQUFFO1lBQzlDLGdCQUFnQixFQUFFLENBQUM7U0FDcEI7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRHJhd2VyIH0gZnJvbSAnLi4vbW9kZWwvaS1kcmF3ZXInO1xuaW1wb3J0IHsgQmFzZVBvaW50IH0gZnJvbSAnLi4vbW9kZWwvcG9pbnQvYmFzZS1wb2ludCc7XG5pbXBvcnQgeyBTZXJpZXMgfSBmcm9tICcuLi9tb2RlbC9zZXJpZXMnO1xuaW1wb3J0ICogYXMgZDMgZnJvbSAnZDMnO1xuaW1wb3J0IHsgQ2hhcnRPcHRpb25zIH0gZnJvbSAnLi4vbW9kZWwvY2hhcnQtb3B0aW9ucyc7XG5pbXBvcnQgeyBJRHJhZ0V2ZW50IH0gZnJvbSAnLi4vbW9kZWwvaS1kcmFnLWV2ZW50JztcbmltcG9ydCB7IERpc3BhdGNoVHlwZSB9IGZyb20gJy4uL21vZGVsL2VudW0vZGlzcGF0Y2gtdHlwZSc7XG5cbmV4cG9ydCBjbGFzcyBMaW5lRHJhd2VyIGltcGxlbWVudHMgSURyYXdlcjxCYXNlUG9pbnQ+IHtcbiAgZGlzcGF0Y2g6IGQzLkRpc3BhdGNoPElEcmFnRXZlbnQ8U2VyaWVzPEJhc2VQb2ludD4+PjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmRpc3BhdGNoID0gZDMuZGlzcGF0Y2goRGlzcGF0Y2hUeXBlLm1vdmVMaW5lLCBEaXNwYXRjaFR5cGUubW92ZVBvaW50KTtcbiAgfVxuXG4gIGRyYXcoXG4gICAgc2VyaWVzOiBTZXJpZXM8QmFzZVBvaW50PixcbiAgICBjb250ZXh0OiBkMy5TZWxlY3Rpb248U1ZHRWxlbWVudCwgdW5rbm93biwgbnVsbCwgdW5kZWZpbmVkPixcbiAgICBzY2FsZVg6IGFueSxcbiAgICBzY2FsZVk6IGFueSxcbiAgICBvcHRpb25zOiBDaGFydE9wdGlvbnNcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgcG9pbnRzID0gc2VyaWVzLmRhdGE7XG5cbiAgICBjb25zdCBtYXJrZXJQb2ludHMgPSBwb2ludHMuZmlsdGVyKChfKSA9PiBfLm1hcmtlcik7XG5cbiAgICBjb25zdCBwYXRoID0gZDNcbiAgICAgIC5saW5lPEJhc2VQb2ludD4oKVxuICAgICAgLmN1cnZlKHNlcmllcy5jdXJ2ZVR5cGUpXG4gICAgICAuZGVmaW5lZCgoZCkgPT4gZC54ICE9IG51bGwgJiYgZC55ICE9IG51bGwpXG4gICAgICAueCgoZCkgPT4gc2NhbGVYKGQueCkpXG4gICAgICAueSgoZCkgPT4gc2NhbGVZKGQueSkpO1xuXG4gICAgY29uc3Qgc2VyaWVzSW5kZXggPSBvcHRpb25zLnNlcmllcy5maW5kSW5kZXgoKF8pID0+IF8uaWQgPT09IHNlcmllcy5pZCk7XG5cbiAgICBpZiAobWFya2VyUG9pbnRzPy5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IGVtaXQgPSAoZXZlbnQ6IERyYWdFdmVudCwgdGFyZ2V0OiBCYXNlUG9pbnQpID0+IHtcbiAgICAgICAgdGhpcy5kaXNwYXRjaC5hcHBseShEaXNwYXRjaFR5cGUubW92ZVBvaW50LCB7XG4gICAgICAgICAgdGFyZ2V0OiBzZXJpZXMsXG4gICAgICAgICAgcG9pbnQ6IHtcbiAgICAgICAgICAgIC4uLnRhcmdldCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGV2ZW50LFxuICAgICAgICB9KTtcbiAgICAgIH07XG5cbiAgICAgIGNvbnRleHRcbiAgICAgICAgLnNlbGVjdEFsbCgnY2lyY2xlJylcbiAgICAgICAgLmRhdGEobWFya2VyUG9pbnRzKVxuICAgICAgICAuZW50ZXIoKVxuICAgICAgICAuYXBwZW5kKCdjaXJjbGUnKVxuICAgICAgICAuYXR0cignY2xhc3MnLCAnZHJhZ2dhYmxlLW1hcmtlcicpXG4gICAgICAgIC5hdHRyKCdyJywgKGQpID0+IGQubWFya2VyPy5zdHlsZT8ucmFkaXVzIHx8IDUpXG4gICAgICAgIC5hdHRyKCdjeCcsIGZ1bmN0aW9uIChkKSB7XG4gICAgICAgICAgcmV0dXJuIHNjYWxlWChkLngpO1xuICAgICAgICB9KVxuICAgICAgICAuYXR0cignY3knLCBmdW5jdGlvbiAoZCkge1xuICAgICAgICAgIHJldHVybiBzY2FsZVkoZC55KTtcbiAgICAgICAgfSlcbiAgICAgICAgLnN0eWxlKCdjdXJzb3InLCAncG9pbnRlcicpXG4gICAgICAgIC5zdHlsZSgnZmlsbCcsIChkKSA9PiBkLm1hcmtlcj8uc3R5bGU/LmNvbG9yIHx8ICdyZWQnKVxuICAgICAgICAuYXR0cignc3Ryb2tlJywgKGQpID0+IGQubWFya2VyPy5zdHlsZT8uc3Ryb2tlIHx8ICdub25lJylcbiAgICAgICAgLmF0dHIoJ3N0cm9rZS13aWR0aCcsIChkKSA9PiBkLm1hcmtlcj8uc3R5bGU/LnN0cm9rZVdpZHRoIHx8IDApO1xuXG4gICAgICBjb250ZXh0LnNlbGVjdEFsbCgnLmRyYWdnYWJsZS1tYXJrZXInKS5jYWxsKFxuICAgICAgICBkMy5kcmFnKCkub24oJ2RyYWcgc3RhcnQgZW5kJywgZnVuY3Rpb24gZHJhZ2dlZChldmVudCwgZDogQmFzZVBvaW50KSB7XG4gICAgICAgICAgZC54ID0gc2NhbGVYLmludmVydChldmVudC5zb3VyY2VFdmVudD8ub2Zmc2V0WCk7XG4gICAgICAgICAgZC55ID0gc2NhbGVZLmludmVydChldmVudC5zb3VyY2VFdmVudD8ub2Zmc2V0WSk7XG5cbiAgICAgICAgICBkMy5zZWxlY3QodGhpcykuYXR0cignY3gnLCBzY2FsZVgoZC54KSkuYXR0cignY3knLCBzY2FsZVkoZC55KSk7XG4gICAgICAgICAgY29udGV4dC5zZWxlY3QoJ3BhdGgnKS5hdHRyKCdkJywgcGF0aCk7XG5cbiAgICAgICAgICBlbWl0KGV2ZW50LCBkKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29udGV4dFxuICAgICAgLmFwcGVuZCgncGF0aCcpXG4gICAgICAuYXR0cignY2xhc3MnLCAoZDogQmFzZVBvaW50KSA9PlxuICAgICAgICBzZXJpZXM/LmRyYWcuZW5hYmxlID8gJ2RyYWdnYWJsZScgOiBudWxsXG4gICAgICApXG4gICAgICAuYXR0cignZGF0YS1kcmFnZ2FibGUtaWQnLCBzZXJpZXNJbmRleClcbiAgICAgIC5hdHRyKCdmaWxsJywgJ25vbmUnKVxuICAgICAgLmF0dHIoJ3N0cm9rZScsIHNlcmllcy5jb2xvcilcbiAgICAgIC5hdHRyKCdzdHJva2UtZGFzaGFycmF5Jywgc2VyaWVzPy5zdHJva2VEYXNoYXJyYXkpXG4gICAgICAuYXR0cignc3Ryb2tlLXdpZHRoJywgc2VyaWVzLnN0cm9rZVdpZHRoID8gc2VyaWVzLnN0cm9rZVdpZHRoIDogMSlcbiAgICAgIC5zdHlsZSgnY3Vyc29yJywgc2VyaWVzPy5kcmFnPy5lbmFibGUgPyAnbW92ZScgOiAnZGVmYXVsdCcpXG4gICAgICAuZGF0dW0ocG9pbnRzKVxuICAgICAgLmF0dHIoJ2QnLCBwYXRoKTtcblxuICAgIGNvbnN0IHUgPSBjb250ZXh0LmFwcGVuZCgnZycpLmF0dHIoJ2NsYXNzJywgJ2dyYWJiZXJzJyk7XG5cbiAgICBjb25zdCBlbWl0ID0gKGV2ZW50OiBEcmFnRXZlbnQsIHRhcmdldDogU2VyaWVzPEJhc2VQb2ludD4pID0+IHtcbiAgICAgIHRoaXMuZGlzcGF0Y2guYXBwbHkoRGlzcGF0Y2hUeXBlLm1vdmVMaW5lLCB7XG4gICAgICAgIHRhcmdldCxcbiAgICAgICAgZXZlbnQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgaWYgKHNlcmllcy5kcmFnLmVuYWJsZSkge1xuICAgICAgdS5zZWxlY3RBbGwoJ2NpcmNsZScpXG4gICAgICAgIC5kYXRhKHBvaW50cylcbiAgICAgICAgLmVudGVyKClcbiAgICAgICAgLmFwcGVuZCgnY2lyY2xlJylcbiAgICAgICAgLmF0dHIoJ2RhdGEtZ3JhYmJlci1pZCcsIHNlcmllc0luZGV4KVxuICAgICAgICAuYXR0cignc3Ryb2tlJywgc2VyaWVzPy5kcmFnPy5ncmFiYmVycz8uc3Ryb2tlID8/IHNlcmllcz8uY29sb3IpXG4gICAgICAgIC5hdHRyKCdzdHJva2Utd2lkdGgnLCBzZXJpZXM/LmRyYWc/LmdyYWJiZXJzPy5zdHJva2VXaWR0aCA/PyAxKVxuICAgICAgICAuYXR0cignZmlsbCcsIHNlcmllcz8uZHJhZz8uZ3JhYmJlcnM/LmZpbGwgPz8gc2VyaWVzPy5jb2xvcilcbiAgICAgICAgLmF0dHIoJ3InLCBzZXJpZXM/LmRyYWc/LmdyYWJiZXJzPy5yYWRpdXMgPz8gNClcbiAgICAgICAgLmF0dHIoJ2N4JywgZnVuY3Rpb24gKGQpIHtcbiAgICAgICAgICByZXR1cm4gc2NhbGVYKGQueCk7XG4gICAgICAgIH0pXG4gICAgICAgIC5hdHRyKCdjeScsIGZ1bmN0aW9uIChkKSB7XG4gICAgICAgICAgcmV0dXJuIHNjYWxlWShkLnkpO1xuICAgICAgICB9KVxuICAgICAgICAuc3R5bGUoJ2N1cnNvcicsICdtb3ZlJylcbiAgICAgICAgLmNhbGwoXG4gICAgICAgICAgZDMuZHJhZygpLm9uKCdzdGFydCBkcmFnIGVuZCcsIGZ1bmN0aW9uIChldmVudCwgZDogQmFzZVBvaW50KSB7XG4gICAgICAgICAgICBkLnggPSBzY2FsZVguaW52ZXJ0KGV2ZW50LnNvdXJjZUV2ZW50Py5vZmZzZXRYKTtcbiAgICAgICAgICAgIGQueSA9IHNjYWxlWS5pbnZlcnQoZXZlbnQuc291cmNlRXZlbnQ/Lm9mZnNldFkpO1xuICAgICAgICAgICAgZDMuc2VsZWN0KHRoaXMpLmF0dHIoJ2N4Jywgc2NhbGVYKGQueCkpLmF0dHIoJ2N5Jywgc2NhbGVZKGQueSkpO1xuXG4gICAgICAgICAgICBjb250ZXh0XG4gICAgICAgICAgICAgIC5zZWxlY3QoYFtkYXRhLWRyYWdnYWJsZS1pZD0nJHtzZXJpZXNJbmRleH0nXWApXG4gICAgICAgICAgICAgIC5hdHRyKCdkJywgcGF0aCk7XG5cbiAgICAgICAgICAgIGVtaXQoZXZlbnQsIHNlcmllcyk7XG5cbiAgICAgICAgICAgIGlmIChzZXJpZXM/LmRyYWc/LmV4dGVuZExpbmUpIHtcbiAgICAgICAgICAgICAgZHJhd0V4dGVuZGVkTGluZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgICk7XG5cbiAgICAgIHUuZXhpdCgpLnJlbW92ZSgpO1xuICAgIH1cblxuICAgIGNvbnN0IGRyYXdFeHRlbmRlZExpbmUgPSAoKSA9PiB7XG4gICAgICBjb250ZXh0LnNlbGVjdEFsbChgW2RhdGEtZXh0ZW5kZWQtaWQ9JyR7c2VyaWVzSW5kZXh9J11gKS5yZW1vdmUoKTtcblxuICAgICAgY29uc3QgcDEgPSBwb2ludHNbMF07XG4gICAgICBjb25zdCBwMiA9IHBvaW50c1twb2ludHMubGVuZ3RoIC0gMV07XG5cbiAgICAgIGNvbnN0IGRpc3RhbmNlID0gTWF0aC5zcXJ0KFxuICAgICAgICBNYXRoLnBvdyhwMi54IC0gcDEueCwgMikgKyBNYXRoLnBvdyhwMi55IC0gcDIueSwgMilcbiAgICAgICk7XG5cbiAgICAgIGlmIChkaXN0YW5jZSA8PSAwKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZXh0ZW5kTGVuZ3RoID0gNTA7XG5cbiAgICAgIGNvbnN0IGV4dGVuZGVkRW5kWCA9IHAyLnggKyAoKHAyLnggLSBwMS54KSAvIGRpc3RhbmNlKSAqIGV4dGVuZExlbmd0aDtcbiAgICAgIGNvbnN0IGV4dGVuZGVkRW5kWSA9IHAyLnkgKyAoKHAyLnkgLSBwMS55KSAvIGRpc3RhbmNlKSAqIGV4dGVuZExlbmd0aDtcblxuICAgICAgY29uc3QgZXh0ZW5kZWRTdGFydFggPSBwMS54IC0gKChwMi54IC0gcDEueCkgLyBkaXN0YW5jZSkgKiBleHRlbmRMZW5ndGg7XG4gICAgICBjb25zdCBleHRlbmRlZFN0YXJ0WSA9IHAxLnkgLSAoKHAyLnkgLSBwMS55KSAvIGRpc3RhbmNlKSAqIGV4dGVuZExlbmd0aDtcblxuICAgICAgY29udGV4dFxuICAgICAgICAuYXBwZW5kKCdsaW5lJylcbiAgICAgICAgLmF0dHIoJ2NsYXNzJywgJ2V4dGVuZGVkTGluZScpXG4gICAgICAgIC5hdHRyKCdkYXRhLWV4dGVuZGVkLWlkJywgc2VyaWVzSW5kZXgpXG4gICAgICAgIC5hdHRyKCdzdHJva2UnLCBzZXJpZXM/LmNvbG9yKVxuICAgICAgICAuYXR0cignc3Ryb2tlLXdpZHRoJywgc2VyaWVzPy5zdHJva2VXaWR0aClcbiAgICAgICAgLmF0dHIoJ3N0cm9rZS1kYXNoYXJyYXknLCBzZXJpZXM/LnN0cm9rZURhc2hhcnJheSlcbiAgICAgICAgLmF0dHIoJ3gxJywgc2NhbGVYKHAxLngpKVxuICAgICAgICAuYXR0cigneTEnLCBzY2FsZVkocDEueSkpXG4gICAgICAgIC5hdHRyKCd4MicsIHNjYWxlWChleHRlbmRlZFN0YXJ0WCkpXG4gICAgICAgIC5hdHRyKCd5MicsIHNjYWxlWShleHRlbmRlZFN0YXJ0WSkpO1xuXG4gICAgICBjb250ZXh0XG4gICAgICAgIC5hcHBlbmQoJ2xpbmUnKVxuICAgICAgICAuYXR0cignY2xhc3MnLCAnZXh0ZW5kZWRMaW5lJylcbiAgICAgICAgLmF0dHIoJ2RhdGEtZXh0ZW5kZWQtaWQnLCBzZXJpZXNJbmRleClcbiAgICAgICAgLmF0dHIoJ3N0cm9rZScsIHNlcmllcz8uY29sb3IpXG4gICAgICAgIC5hdHRyKCdzdHJva2Utd2lkdGgnLCBzZXJpZXM/LnN0cm9rZVdpZHRoKVxuICAgICAgICAuYXR0cignc3Ryb2tlLWRhc2hhcnJheScsIHNlcmllcz8uc3Ryb2tlRGFzaGFycmF5KVxuICAgICAgICAuYXR0cigneDEnLCBzY2FsZVgocDIueCkpXG4gICAgICAgIC5hdHRyKCd5MScsIHNjYWxlWShwMi55KSlcbiAgICAgICAgLmF0dHIoJ3gyJywgc2NhbGVYKGV4dGVuZGVkRW5kWCkpXG4gICAgICAgIC5hdHRyKCd5MicsIHNjYWxlWShleHRlbmRlZEVuZFkpKTtcbiAgICB9O1xuXG4gICAgaWYgKHNlcmllcz8uZHJhZz8uZXh0ZW5kTGluZSAmJiBwb2ludHM/Lmxlbmd0aCkge1xuICAgICAgZHJhd0V4dGVuZGVkTGluZSgpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
152
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kcmF3ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnQvY2hhcnQvZHJhd2VyL2xpbmUtZHJhd2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBR3pCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFOUQsTUFBTSxPQUFPLFVBQVU7SUFHckI7UUFDRSxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELElBQUksQ0FDRixNQUF5QixFQUN6QixPQUEyRCxFQUMzRCxNQUFXLEVBQ1gsTUFBVyxFQUNYLE9BQXFCO1FBRXJCLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFFM0IsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRXBELE1BQU0sSUFBSSxHQUFHLEVBQUU7YUFDWixJQUFJLEVBQWE7YUFDakIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7YUFDdkIsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQzthQUMxQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDckIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFF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QUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUM5QjtnQkFFRCxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsV0FBVyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUV6RCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2pCLENBQUMsQ0FBQyxDQUNILENBQUM7U0FDSDtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElEcmF3ZXIgfSBmcm9tICcuLi9tb2RlbC9pLWRyYXdlcic7XG5pbXBvcnQgeyBCYXNlUG9pbnQgfSBmcm9tICcuLi9tb2RlbC9wb2ludC9iYXNlLXBvaW50JztcbmltcG9ydCB7IFNlcmllcyB9IGZyb20gJy4uL21vZGVsL3Nlcmllcyc7XG5pbXBvcnQgKiBhcyBkMyBmcm9tICdkMyc7XG5pbXBvcnQgeyBDaGFydE9wdGlvbnMgfSBmcm9tICcuLi9tb2RlbC9jaGFydC1vcHRpb25zJztcbmltcG9ydCB7IElEcmFnRXZlbnQgfSBmcm9tICcuLi9tb2RlbC9pLWRyYWctZXZlbnQnO1xuaW1wb3J0IHsgRGlzcGF0Y2hUeXBlIH0gZnJvbSAnLi4vbW9kZWwvZW51bS9kaXNwYXRjaC10eXBlJztcbmltcG9ydCB7IERyYWdQb2ludFR5cGUgfSBmcm9tICcuLi9tb2RlbC9lbnVtL2RyYWctcG9pbnQtdHlwZSc7XG5cbmV4cG9ydCBjbGFzcyBMaW5lRHJhd2VyIGltcGxlbWVudHMgSURyYXdlcjxCYXNlUG9pbnQ+IHtcbiAgZGlzcGF0Y2g6IGQzLkRpc3BhdGNoPElEcmFnRXZlbnQ8U2VyaWVzPEJhc2VQb2ludD4+PjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmRpc3BhdGNoID0gZDMuZGlzcGF0Y2goRGlzcGF0Y2hUeXBlLm1vdmVMaW5lLCBEaXNwYXRjaFR5cGUubW92ZVBvaW50KTtcbiAgfVxuXG4gIGRyYXcoXG4gICAgc2VyaWVzOiBTZXJpZXM8QmFzZVBvaW50PixcbiAgICBjb250ZXh0OiBkMy5TZWxlY3Rpb248U1ZHRWxlbWVudCwgdW5rbm93biwgbnVsbCwgdW5kZWZpbmVkPixcbiAgICBzY2FsZVg6IGFueSxcbiAgICBzY2FsZVk6IGFueSxcbiAgICBvcHRpb25zOiBDaGFydE9wdGlvbnNcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgcG9pbnRzID0gc2VyaWVzLmRhdGE7XG5cbiAgICBjb25zdCBtYXJrZXJQb2ludHMgPSBwb2ludHMuZmlsdGVyKChfKSA9PiBfLm1hcmtlcik7XG5cbiAgICBjb25zdCBwYXRoID0gZDNcbiAgICAgIC5saW5lPEJhc2VQb2ludD4oKVxuICAgICAgLmN1cnZlKHNlcmllcy5jdXJ2ZVR5cGUpXG4gICAgICAuZGVmaW5lZCgoZCkgPT4gZC54ICE9IG51bGwgJiYgZC55ICE9IG51bGwpXG4gICAgICAueCgoZCkgPT4gc2NhbGVYKGQueCkpXG4gICAgICAueSgoZCkgPT4gc2NhbGVZKGQueSkpO1xuXG4gICAgY29uc3Qgc2VyaWVzSW5kZXggPSBvcHRpb25zLnNlcmllcy5maW5kSW5kZXgoKF8pID0+IF8uaWQgPT09IHNlcmllcy5pZCk7XG5cbiAgICBjb250ZXh0XG4gICAgICAuYXBwZW5kKCdwYXRoJylcbiAgICAgIC5hdHRyKCdjbGFzcycsIChkOiBCYXNlUG9pbnQpID0+XG4gICAgICAgIHNlcmllcz8uZHJhZy5lbmFibGUgPyAnZHJhZ2dhYmxlJyA6IGBzZXJpZXMtJHtzZXJpZXNJbmRleH1gXG4gICAgICApXG4gICAgICAuYXR0cignZGF0YS1kcmFnZ2FibGUtaWQnLCBzZXJpZXNJbmRleClcbiAgICAgIC5hdHRyKCdmaWxsJywgJ25vbmUnKVxuICAgICAgLmF0dHIoJ3N0cm9rZScsIHNlcmllcy5jb2xvcilcbiAgICAgIC5hdHRyKCdzdHJva2UtZGFzaGFycmF5Jywgc2VyaWVzPy5zdHJva2VEYXNoYXJyYXkpXG4gICAgICAuYXR0cignc3Ryb2tlLXdpZHRoJywgc2VyaWVzLnN0cm9rZVdpZHRoID8gc2VyaWVzLnN0cm9rZVdpZHRoIDogMSlcbiAgICAgIC5zdHlsZSgnY3Vyc29yJywgc2VyaWVzPy5kcmFnPy5lbmFibGUgPyAnbW92ZScgOiAnZGVmYXVsdCcpXG4gICAgICAuZGF0dW0ocG9pbnRzKVxuICAgICAgLmF0dHIoJ2QnLCBwYXRoKTtcblxuICAgIGNvbnN0IHUgPSBjb250ZXh0LmFwcGVuZCgnZycpLmF0dHIoJ2NsYXNzJywgJ2dyYWJiZXJzJyk7XG5cbiAgICBjb25zdCBlbWl0ID0gKGV2ZW50OiBEcmFnRXZlbnQsIHRhcmdldDogU2VyaWVzPEJhc2VQb2ludD4pID0+IHtcbiAgICAgIHRoaXMuZGlzcGF0Y2guYXBwbHkoRGlzcGF0Y2hUeXBlLm1vdmVMaW5lLCB7XG4gICAgICAgIHRhcmdldCxcbiAgICAgICAgZXZlbnQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgaWYgKHNlcmllcy5kcmFnLmVuYWJsZSkge1xuICAgICAgdS5zZWxlY3RBbGwoJ2NpcmNsZScpXG4gICAgICAgIC5kYXRhKHBvaW50cylcbiAgICAgICAgLmVudGVyKClcbiAgICAgICAgLmFwcGVuZCgnY2lyY2xlJylcbiAgICAgICAgLmF0dHIoJ2RhdGEtZ3JhYmJlci1pZCcsIHNlcmllc0luZGV4KVxuICAgICAgICAuYXR0cignc3Ryb2tlJywgc2VyaWVzPy5kcmFnPy5ncmFiYmVycz8uc3Ryb2tlID8/IHNlcmllcz8uY29sb3IpXG4gICAgICAgIC5hdHRyKCdzdHJva2Utd2lkdGgnLCBzZXJpZXM/LmRyYWc/LmdyYWJiZXJzPy5zdHJva2VXaWR0aCA/PyAxKVxuICAgICAgICAuYXR0cignZmlsbCcsIHNlcmllcz8uZHJhZz8uZ3JhYmJlcnM/LmZpbGwgPz8gc2VyaWVzPy5jb2xvcilcbiAgICAgICAgLmF0dHIoJ3InLCBzZXJpZXM/LmRyYWc/LmdyYWJiZXJzPy5yYWRpdXMgPz8gNClcbiAgICAgICAgLmF0dHIoJ2N4JywgZnVuY3Rpb24gKGQpIHtcbiAgICAgICAgICByZXR1cm4gc2NhbGVYKGQueCk7XG4gICAgICAgIH0pXG4gICAgICAgIC5hdHRyKCdjeScsIGZ1bmN0aW9uIChkKSB7XG4gICAgICAgICAgcmV0dXJuIHNjYWxlWShkLnkpO1xuICAgICAgICB9KVxuICAgICAgICAuc3R5bGUoJ2N1cnNvcicsICdtb3ZlJylcbiAgICAgICAgLmNhbGwoXG4gICAgICAgICAgZDMuZHJhZygpLm9uKCdzdGFydCBkcmFnIGVuZCcsIGZ1bmN0aW9uIChldmVudCwgZDogQmFzZVBvaW50KSB7XG4gICAgICAgICAgICBkLnggPSBzY2FsZVguaW52ZXJ0KGV2ZW50LnNvdXJjZUV2ZW50Py5vZmZzZXRYKTtcbiAgICAgICAgICAgIGQueSA9IHNjYWxlWS5pbnZlcnQoZXZlbnQuc291cmNlRXZlbnQ/Lm9mZnNldFkpO1xuICAgICAgICAgICAgZDMuc2VsZWN0KHRoaXMpLmF0dHIoJ2N4Jywgc2NhbGVYKGQueCkpLmF0dHIoJ2N5Jywgc2NhbGVZKGQueSkpO1xuXG4gICAgICAgICAgICBjb250ZXh0XG4gICAgICAgICAgICAgIC5zZWxlY3QoYFtkYXRhLWRyYWdnYWJsZS1pZD0nJHtzZXJpZXNJbmRleH0nXWApXG4gICAgICAgICAgICAgIC5hdHRyKCdkJywgcGF0aCk7XG5cbiAgICAgICAgICAgIGVtaXQoZXZlbnQsIHNlcmllcyk7XG5cbiAgICAgICAgICAgIGlmIChzZXJpZXM/LmRyYWc/LmV4dGVuZExpbmUpIHtcbiAgICAgICAgICAgICAgZHJhd0V4dGVuZGVkTGluZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgICk7XG5cbiAgICAgIHUuZXhpdCgpLnJlbW92ZSgpO1xuICAgIH1cblxuICAgIGNvbnN0IGRyYXdFeHRlbmRlZExpbmUgPSAoKSA9PiB7XG4gICAgICBjb250ZXh0LnNlbGVjdEFsbChgW2RhdGEtZXh0ZW5kZWQtaWQ9JyR7c2VyaWVzSW5kZXh9J11gKS5yZW1vdmUoKTtcblxuICAgICAgY29uc3QgcDEgPSBwb2ludHNbMF07XG4gICAgICBjb25zdCBwMiA9IHBvaW50c1twb2ludHMubGVuZ3RoIC0gMV07XG5cbiAgICAgIGNvbnN0IGRpc3RhbmNlID0gTWF0aC5zcXJ0KFxuICAgICAgICBNYXRoLnBvdyhwMi54IC0gcDEueCwgMikgKyBNYXRoLnBvdyhwMi55IC0gcDIueSwgMilcbiAgICAgICk7XG5cbiAgICAgIGlmIChkaXN0YW5jZSA8PSAwKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZXh0ZW5kTGVuZ3RoID0gNTA7XG5cbiAgICAgIGNvbnN0IGV4dGVuZGVkRW5kWCA9IHAyLnggKyAoKHAyLnggLSBwMS54KSAvIGRpc3RhbmNlKSAqIGV4dGVuZExlbmd0aDtcbiAgICAgIGNvbnN0IGV4dGVuZGVkRW5kWSA9IHAyLnkgKyAoKHAyLnkgLSBwMS55KSAvIGRpc3RhbmNlKSAqIGV4dGVuZExlbmd0aDtcblxuICAgICAgY29uc3QgZXh0ZW5kZWRTdGFydFggPSBwMS54IC0gKChwMi54IC0gcDEueCkgLyBkaXN0YW5jZSkgKiBleHRlbmRMZW5ndGg7XG4gICAgICBjb25zdCBleHRlbmRlZFN0YXJ0WSA9IHAxLnkgLSAoKHAyLnkgLSBwMS55KSAvIGRpc3RhbmNlKSAqIGV4dGVuZExlbmd0aDtcblxuICAgICAgY29udGV4dFxuICAgICAgICAuYXBwZW5kKCdsaW5lJylcbiAgICAgICAgLmF0dHIoJ2NsYXNzJywgJ2V4dGVuZGVkTGluZScpXG4gICAgICAgIC5hdHRyKCdkYXRhLWV4dGVuZGVkLWlkJywgc2VyaWVzSW5kZXgpXG4gICAgICAgIC5hdHRyKCdzdHJva2UnLCBzZXJpZXM/LmNvbG9yKVxuICAgICAgICAuYXR0cignc3Ryb2tlLXdpZHRoJywgc2VyaWVzPy5zdHJva2VXaWR0aClcbiAgICAgICAgLmF0dHIoJ3N0cm9rZS1kYXNoYXJyYXknLCBzZXJpZXM/LnN0cm9rZURhc2hhcnJheSlcbiAgICAgICAgLmF0dHIoJ3gxJywgc2NhbGVYKHAxLngpKVxuICAgICAgICAuYXR0cigneTEnLCBzY2FsZVkocDEueSkpXG4gICAgICAgIC5hdHRyKCd4MicsIHNjYWxlWChleHRlbmRlZFN0YXJ0WCkpXG4gICAgICAgIC5hdHRyKCd5MicsIHNjYWxlWShleHRlbmRlZFN0YXJ0WSkpO1xuXG4gICAgICBjb250ZXh0XG4gICAgICAgIC5hcHBlbmQoJ2xpbmUnKVxuICAgICAgICAuYXR0cignY2xhc3MnLCAnZXh0ZW5kZWRMaW5lJylcbiAgICAgICAgLmF0dHIoJ2RhdGEtZXh0ZW5kZWQtaWQnLCBzZXJpZXNJbmRleClcbiAgICAgICAgLmF0dHIoJ3N0cm9rZScsIHNlcmllcz8uY29sb3IpXG4gICAgICAgIC5hdHRyKCdzdHJva2Utd2lkdGgnLCBzZXJpZXM/LnN0cm9rZVdpZHRoKVxuICAgICAgICAuYXR0cignc3Ryb2tlLWRhc2hhcnJheScsIHNlcmllcz8uc3Ryb2tlRGFzaGFycmF5KVxuICAgICAgICAuYXR0cigneDEnLCBzY2FsZVgocDIueCkpXG4gICAgICAgIC5hdHRyKCd5MScsIHNjYWxlWShwMi55KSlcbiAgICAgICAgLmF0dHIoJ3gyJywgc2NhbGVYKGV4dGVuZGVkRW5kWCkpXG4gICAgICAgIC5hdHRyKCd5MicsIHNjYWxlWShleHRlbmRlZEVuZFkpKTtcbiAgICB9O1xuXG4gICAgaWYgKHNlcmllcz8uZHJhZz8uZXh0ZW5kTGluZSAmJiBwb2ludHM/Lmxlbmd0aCkge1xuICAgICAgZHJhd0V4dGVuZGVkTGluZSgpO1xuICAgIH1cblxuICAgIGlmIChtYXJrZXJQb2ludHM/Lmxlbmd0aCkge1xuICAgICAgY29uc3QgZW1pdCA9IChldmVudDogRHJhZ0V2ZW50LCB0YXJnZXQ6IEJhc2VQb2ludCkgPT4ge1xuICAgICAgICB0aGlzLmRpc3BhdGNoLmFwcGx5KERpc3BhdGNoVHlwZS5tb3ZlUG9pbnQsIHtcbiAgICAgICAgICB0YXJnZXQ6IHNlcmllcyxcbiAgICAgICAgICBwb2ludDoge1xuICAgICAgICAgICAgLi4udGFyZ2V0LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgZXZlbnQsXG4gICAgICAgIH0pO1xuICAgICAgfTtcblxuICAgICAgY29udGV4dFxuICAgICAgICAuc2VsZWN0QWxsKGBkcmFnZ2FibGUtbWFya2VyLSR7c2VyaWVzSW5kZXh9YClcbiAgICAgICAgLmRhdGEobWFya2VyUG9pbnRzKVxuICAgICAgICAuZW50ZXIoKVxuICAgICAgICAuYXBwZW5kKCdjaXJjbGUnKVxuICAgICAgICAuYXR0cignY2xhc3MnLCBgZHJhZ2dhYmxlLW1hcmtlci0ke3Nlcmllc0luZGV4fWApXG4gICAgICAgIC5hdHRyKCdyJywgKGQpID0+IGQubWFya2VyPy5zdHlsZT8ucmFkaXVzIHx8IDUpXG4gICAgICAgIC5hdHRyKCdjeCcsIGZ1bmN0aW9uIChkKSB7XG4gICAgICAgICAgcmV0dXJuIHNjYWxlWChkLngpO1xuICAgICAgICB9KVxuICAgICAgICAuYXR0cignY3knLCBmdW5jdGlvbiAoZCkge1xuICAgICAgICAgIHJldHVybiBzY2FsZVkoZC55KTtcbiAgICAgICAgfSlcbiAgICAgICAgLnN0eWxlKCdjdXJzb3InLCAncG9pbnRlcicpXG4gICAgICAgIC5zdHlsZSgnZmlsbCcsIChkKSA9PiBkLm1hcmtlcj8uc3R5bGU/LmNvbG9yIHx8ICdyZWQnKVxuICAgICAgICAuYXR0cignc3Ryb2tlJywgKGQpID0+IGQubWFya2VyPy5zdHlsZT8uc3Ryb2tlIHx8ICdub25lJylcbiAgICAgICAgLmF0dHIoJ3N0cm9rZS13aWR0aCcsIChkKSA9PiBkLm1hcmtlcj8uc3R5bGU/LnN0cm9rZVdpZHRoIHx8IDApO1xuXG4gICAgICBjb250ZXh0LnNlbGVjdEFsbChgLmRyYWdnYWJsZS1tYXJrZXItJHtzZXJpZXNJbmRleH1gKS5jYWxsKFxuICAgICAgICBkMy5kcmFnKCkub24oJ2RyYWcgc3RhcnQgZW5kJywgZnVuY3Rpb24gZHJhZ2dlZChldmVudCwgZDogQmFzZVBvaW50KSB7XG4gICAgICAgICAgY29uc3Qgbm9kZSA9IGQzLnNlbGVjdCh0aGlzKTtcblxuICAgICAgICAgIGlmIChldmVudC50eXBlID09PSAnc3RhcnQnKSB7XG4gICAgICAgICAgICBub2RlLnJhaXNlKCkuY2xhc3NlZCgnYWN0aXZlJywgdHJ1ZSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGQubWFya2VyPy5kcmFnVHlwZSA9PT0gRHJhZ1BvaW50VHlwZS54KSB7XG4gICAgICAgICAgICBkLnggPSBzY2FsZVguaW52ZXJ0KGV2ZW50LnNvdXJjZUV2ZW50Py5vZmZzZXRYKTtcbiAgICAgICAgICAgIG5vZGUuYXR0cignY3gnLCBzY2FsZVgoZC54KSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGQubWFya2VyPy5kcmFnVHlwZSA9PT0gRHJhZ1BvaW50VHlwZS55KSB7XG4gICAgICAgICAgICBkLnkgPSBzY2FsZVkuaW52ZXJ0KGV2ZW50LnNvdXJjZUV2ZW50Py5vZmZzZXRZKTtcbiAgICAgICAgICAgIG5vZGUuYXR0cignY3knLCBzY2FsZVkoZC55KSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29udGV4dC5zZWxlY3QoYC5zZXJpZXMtJHtzZXJpZXNJbmRleH1gKS5hdHRyKCdkJywgcGF0aCk7XG5cbiAgICAgICAgICBlbWl0KGV2ZW50LCBkKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export var DragPointType;
|
|
2
|
+
(function (DragPointType) {
|
|
3
|
+
DragPointType[DragPointType["x"] = 0] = "x";
|
|
4
|
+
DragPointType[DragPointType["y"] = 1] = "y";
|
|
5
|
+
DragPointType[DragPointType["xy"] = 2] = "xy";
|
|
6
|
+
})(DragPointType || (DragPointType = {}));
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1wb2ludC10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50L2NoYXJ0L21vZGVsL2VudW0vZHJhZy1wb2ludC10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGFBSVg7QUFKRCxXQUFZLGFBQWE7SUFDdkIsMkNBQUMsQ0FBQTtJQUNELDJDQUFDLENBQUE7SUFDRCw2Q0FBRSxDQUFBO0FBQ0osQ0FBQyxFQUpXLGFBQWEsS0FBYixhQUFhLFFBSXhCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gRHJhZ1BvaW50VHlwZSB7XG4gIHgsXG4gIHksXG4gIHh5LFxufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2VyLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnQvY2hhcnQvbW9kZWwvcG9pbnQvbWFya2VyLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERyYWdQb2ludFR5cGUgfSBmcm9tICcuLi9lbnVtL2RyYWctcG9pbnQtdHlwZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWFya2VyT3B0aW9ucyB7XG4gIGRyYWdnYWJsZT86IGJvb2xlYW47XG4gIGRyYWdUeXBlOiBEcmFnUG9pbnRUeXBlO1xuICBzdHlsZT86IHtcbiAgICByYWRpdXM/OiBudW1iZXI7XG4gICAgc3Ryb2tlPzogbnVtYmVyO1xuICAgIHN0cm9rZVdpZHRoPzogbnVtYmVyO1xuICAgIGNvbG9yPzogc3RyaW5nO1xuICB9O1xufVxuIl19
|
|
@@ -10065,6 +10065,13 @@ var DispatchType;
|
|
|
10065
10065
|
DispatchType["movePoint"] = "movePoint";
|
|
10066
10066
|
})(DispatchType || (DispatchType = {}));
|
|
10067
10067
|
|
|
10068
|
+
var DragPointType;
|
|
10069
|
+
(function (DragPointType) {
|
|
10070
|
+
DragPointType[DragPointType["x"] = 0] = "x";
|
|
10071
|
+
DragPointType[DragPointType["y"] = 1] = "y";
|
|
10072
|
+
DragPointType[DragPointType["xy"] = 2] = "xy";
|
|
10073
|
+
})(DragPointType || (DragPointType = {}));
|
|
10074
|
+
|
|
10068
10075
|
class LineDrawer {
|
|
10069
10076
|
constructor() {
|
|
10070
10077
|
this.dispatch = d3.dispatch(DispatchType.moveLine, DispatchType.movePoint);
|
|
@@ -10080,43 +10087,9 @@ class LineDrawer {
|
|
|
10080
10087
|
.x((d) => scaleX(d.x))
|
|
10081
10088
|
.y((d) => scaleY(d.y));
|
|
10082
10089
|
const seriesIndex = options.series.findIndex((_) => _.id === series.id);
|
|
10083
|
-
if (markerPoints === null || markerPoints === void 0 ? void 0 : markerPoints.length) {
|
|
10084
|
-
const emit = (event, target) => {
|
|
10085
|
-
this.dispatch.apply(DispatchType.movePoint, {
|
|
10086
|
-
target: series,
|
|
10087
|
-
point: Object.assign({}, target),
|
|
10088
|
-
event,
|
|
10089
|
-
});
|
|
10090
|
-
};
|
|
10091
|
-
context
|
|
10092
|
-
.selectAll('circle')
|
|
10093
|
-
.data(markerPoints)
|
|
10094
|
-
.enter()
|
|
10095
|
-
.append('circle')
|
|
10096
|
-
.attr('class', 'draggable-marker')
|
|
10097
|
-
.attr('r', (d) => { var _a, _b; return ((_b = (_a = d.marker) === null || _a === void 0 ? void 0 : _a.style) === null || _b === void 0 ? void 0 : _b.radius) || 5; })
|
|
10098
|
-
.attr('cx', function (d) {
|
|
10099
|
-
return scaleX(d.x);
|
|
10100
|
-
})
|
|
10101
|
-
.attr('cy', function (d) {
|
|
10102
|
-
return scaleY(d.y);
|
|
10103
|
-
})
|
|
10104
|
-
.style('cursor', 'pointer')
|
|
10105
|
-
.style('fill', (d) => { var _a, _b; return ((_b = (_a = d.marker) === null || _a === void 0 ? void 0 : _a.style) === null || _b === void 0 ? void 0 : _b.color) || 'red'; })
|
|
10106
|
-
.attr('stroke', (d) => { var _a, _b; return ((_b = (_a = d.marker) === null || _a === void 0 ? void 0 : _a.style) === null || _b === void 0 ? void 0 : _b.stroke) || 'none'; })
|
|
10107
|
-
.attr('stroke-width', (d) => { var _a, _b; return ((_b = (_a = d.marker) === null || _a === void 0 ? void 0 : _a.style) === null || _b === void 0 ? void 0 : _b.strokeWidth) || 0; });
|
|
10108
|
-
context.selectAll('.draggable-marker').call(d3.drag().on('drag start end', function dragged(event, d) {
|
|
10109
|
-
var _a, _b;
|
|
10110
|
-
d.x = scaleX.invert((_a = event.sourceEvent) === null || _a === void 0 ? void 0 : _a.offsetX);
|
|
10111
|
-
d.y = scaleY.invert((_b = event.sourceEvent) === null || _b === void 0 ? void 0 : _b.offsetY);
|
|
10112
|
-
d3.select(this).attr('cx', scaleX(d.x)).attr('cy', scaleY(d.y));
|
|
10113
|
-
context.select('path').attr('d', path);
|
|
10114
|
-
emit(event, d);
|
|
10115
|
-
}));
|
|
10116
|
-
}
|
|
10117
10090
|
context
|
|
10118
10091
|
.append('path')
|
|
10119
|
-
.attr('class', (d) => (series === null || series === void 0 ? void 0 : series.drag.enable) ? 'draggable' :
|
|
10092
|
+
.attr('class', (d) => (series === null || series === void 0 ? void 0 : series.drag.enable) ? 'draggable' : `series-${seriesIndex}`)
|
|
10120
10093
|
.attr('data-draggable-id', seriesIndex)
|
|
10121
10094
|
.attr('fill', 'none')
|
|
10122
10095
|
.attr('stroke', series.color)
|
|
@@ -10203,6 +10176,49 @@ class LineDrawer {
|
|
|
10203
10176
|
if (((_p = series === null || series === void 0 ? void 0 : series.drag) === null || _p === void 0 ? void 0 : _p.extendLine) && (points === null || points === void 0 ? void 0 : points.length)) {
|
|
10204
10177
|
drawExtendedLine();
|
|
10205
10178
|
}
|
|
10179
|
+
if (markerPoints === null || markerPoints === void 0 ? void 0 : markerPoints.length) {
|
|
10180
|
+
const emit = (event, target) => {
|
|
10181
|
+
this.dispatch.apply(DispatchType.movePoint, {
|
|
10182
|
+
target: series,
|
|
10183
|
+
point: Object.assign({}, target),
|
|
10184
|
+
event,
|
|
10185
|
+
});
|
|
10186
|
+
};
|
|
10187
|
+
context
|
|
10188
|
+
.selectAll(`draggable-marker-${seriesIndex}`)
|
|
10189
|
+
.data(markerPoints)
|
|
10190
|
+
.enter()
|
|
10191
|
+
.append('circle')
|
|
10192
|
+
.attr('class', `draggable-marker-${seriesIndex}`)
|
|
10193
|
+
.attr('r', (d) => { var _a, _b; return ((_b = (_a = d.marker) === null || _a === void 0 ? void 0 : _a.style) === null || _b === void 0 ? void 0 : _b.radius) || 5; })
|
|
10194
|
+
.attr('cx', function (d) {
|
|
10195
|
+
return scaleX(d.x);
|
|
10196
|
+
})
|
|
10197
|
+
.attr('cy', function (d) {
|
|
10198
|
+
return scaleY(d.y);
|
|
10199
|
+
})
|
|
10200
|
+
.style('cursor', 'pointer')
|
|
10201
|
+
.style('fill', (d) => { var _a, _b; return ((_b = (_a = d.marker) === null || _a === void 0 ? void 0 : _a.style) === null || _b === void 0 ? void 0 : _b.color) || 'red'; })
|
|
10202
|
+
.attr('stroke', (d) => { var _a, _b; return ((_b = (_a = d.marker) === null || _a === void 0 ? void 0 : _a.style) === null || _b === void 0 ? void 0 : _b.stroke) || 'none'; })
|
|
10203
|
+
.attr('stroke-width', (d) => { var _a, _b; return ((_b = (_a = d.marker) === null || _a === void 0 ? void 0 : _a.style) === null || _b === void 0 ? void 0 : _b.strokeWidth) || 0; });
|
|
10204
|
+
context.selectAll(`.draggable-marker-${seriesIndex}`).call(d3.drag().on('drag start end', function dragged(event, d) {
|
|
10205
|
+
var _a, _b, _c, _d;
|
|
10206
|
+
const node = d3.select(this);
|
|
10207
|
+
if (event.type === 'start') {
|
|
10208
|
+
node.raise().classed('active', true);
|
|
10209
|
+
}
|
|
10210
|
+
if (((_a = d.marker) === null || _a === void 0 ? void 0 : _a.dragType) === DragPointType.x) {
|
|
10211
|
+
d.x = scaleX.invert((_b = event.sourceEvent) === null || _b === void 0 ? void 0 : _b.offsetX);
|
|
10212
|
+
node.attr('cx', scaleX(d.x));
|
|
10213
|
+
}
|
|
10214
|
+
if (((_c = d.marker) === null || _c === void 0 ? void 0 : _c.dragType) === DragPointType.y) {
|
|
10215
|
+
d.y = scaleY.invert((_d = event.sourceEvent) === null || _d === void 0 ? void 0 : _d.offsetY);
|
|
10216
|
+
node.attr('cy', scaleY(d.y));
|
|
10217
|
+
}
|
|
10218
|
+
context.select(`.series-${seriesIndex}`).attr('d', path);
|
|
10219
|
+
emit(event, d);
|
|
10220
|
+
}));
|
|
10221
|
+
}
|
|
10206
10222
|
}
|
|
10207
10223
|
}
|
|
10208
10224
|
|
|
@@ -10710,11 +10726,11 @@ class TetaChart {
|
|
|
10710
10726
|
this.visibleChartWindowWidth = this.caluclateChartWidth();
|
|
10711
10727
|
}
|
|
10712
10728
|
_redraw() {
|
|
10729
|
+
this.drawPlotBands();
|
|
10730
|
+
this.drawPlotLines();
|
|
10713
10731
|
this.drawChart();
|
|
10714
10732
|
this.drawAxis();
|
|
10715
10733
|
this.drawGridLines();
|
|
10716
|
-
this.drawPlotBands();
|
|
10717
|
-
this.drawPlotLines();
|
|
10718
10734
|
this.drawAnnotations();
|
|
10719
10735
|
}
|
|
10720
10736
|
addZoom() {
|