waveform-analysis 0.1.59 → 0.1.61
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/dist/index.cjs +1 -1
- package/dist/index.js +1083 -1068
- package/dist/style.css +1 -1
- package/dist/types/components/core/layout.d.ts +9 -2
- package/dist/types/components/core/yAxisLayoutMetrics.d.ts +10 -0
- package/package.json +1 -1
- package/src/components/core/layout.test.ts +24 -0
- package/src/components/core/layout.ts +75 -13
- package/src/components/core/trackLayoutBuilder.ts +7 -13
- package/src/components/core/useWaveformLayout.ts +30 -58
- package/src/components/core/yAxisLayoutMetrics.ts +75 -0
- package/src/components/core/yAxisSlotLayout.test.ts +37 -1
- package/src/components/interaction/WaveformTooltip.test.ts +93 -11
- package/src/components/interaction/WaveformTooltip.vue +43 -47
- package/src/components/rendering/WaveformTrackAxes.vue +8 -4
- package/src/components/waveformChartCases/layoutAndDomains.test.ts +23 -24
- package/src/components/waveformChartCases/yAxisLayout.test.ts +103 -0
package/dist/index.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { Fragment as e, computed as t, createBlock as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, createTextVNode as o, createVNode as s, defineAsyncComponent as c, defineComponent as l, getCurrentInstance as u, markRaw as d, nextTick as f, normalizeClass as p, normalizeStyle as m, onBeforeUnmount as h, onMounted as g, onScopeDispose as _,
|
|
2
|
-
import { axisBottom as
|
|
3
|
-
import { InputNumber as
|
|
1
|
+
import { Fragment as e, computed as t, createBlock as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, createTextVNode as o, createVNode as s, defineAsyncComponent as c, defineComponent as l, getCurrentInstance as u, markRaw as d, nextTick as f, normalizeClass as p, normalizeStyle as m, onBeforeUnmount as h, onMounted as g, onScopeDispose as _, onUpdated as v, openBlock as y, reactive as b, ref as x, renderList as S, shallowReactive as C, shallowRef as w, toDisplayString as T, toRefs as E, unref as D, vModelText as O, watch as k, watchEffect as A, withCtx as j, withDirectives as M, withModifiers as N } from "vue";
|
|
2
|
+
import { axisBottom as P, axisLeft as F, axisRight as I, bisector as L, curveStep as R, curveStepAfter as z, curveStepBefore as B, extent as V, line as H, pointer as U, scaleLinear as W, select as G, symbol as ee, symbolCircle as te, symbolDiamond as ne, symbolSquare as re, symbolTriangle as K, zoom as q, zoomIdentity as J, zoomTransform as ie } from "d3";
|
|
3
|
+
import { InputNumber as ae, Modal as oe, Pagination as se } from "ant-design-vue";
|
|
4
4
|
//#region src/utils/waveformId.ts
|
|
5
|
-
var
|
|
6
|
-
function
|
|
5
|
+
var ce = 0;
|
|
6
|
+
function le(e = "waveform") {
|
|
7
7
|
let t = u();
|
|
8
|
-
return `${e}-${t ? `v${t.uid}` : `f${++
|
|
8
|
+
return `${e}-${t ? `v${t.uid}` : `f${++ce}`}`;
|
|
9
9
|
}
|
|
10
10
|
//#endregion
|
|
11
11
|
//#region src/core/compactSamplePointSource.ts
|
|
12
|
-
function
|
|
12
|
+
function ue(e, t, n, r) {
|
|
13
13
|
let i = 0, a = e;
|
|
14
14
|
for (; i < a;) {
|
|
15
15
|
let e = i + Math.floor((a - i) / 2);
|
|
@@ -17,7 +17,7 @@ function le(e, t, n, r) {
|
|
|
17
17
|
}
|
|
18
18
|
return i;
|
|
19
19
|
}
|
|
20
|
-
function
|
|
20
|
+
function de(e, t, n, r) {
|
|
21
21
|
let i = (e) => n + (r?.[e] ?? e) / t, a = (t) => t < 0 || t >= e.length ? void 0 : {
|
|
22
22
|
x: i(t),
|
|
23
23
|
y: e[t]
|
|
@@ -33,15 +33,15 @@ function ue(e, t, n, r) {
|
|
|
33
33
|
visibleRange(t) {
|
|
34
34
|
let n = Math.min(t[0], t[1]), r = Math.max(t[0], t[1]);
|
|
35
35
|
return {
|
|
36
|
-
start:
|
|
37
|
-
end:
|
|
36
|
+
start: ue(e.length, i, n, !1),
|
|
37
|
+
end: ue(e.length, i, r, !0)
|
|
38
38
|
};
|
|
39
39
|
},
|
|
40
40
|
nearestPoint(t) {
|
|
41
41
|
if (!Number.isFinite(t) || !e.length) return;
|
|
42
42
|
if (t <= i(0)) return a(0);
|
|
43
43
|
if (t >= i(e.length - 1)) return a(e.length - 1);
|
|
44
|
-
let n =
|
|
44
|
+
let n = ue(e.length, i, t, !1), r = Math.max(0, n - 1);
|
|
45
45
|
return Math.abs(t - i(r)) < Math.abs(i(n) - t) ? a(r) : a(n);
|
|
46
46
|
},
|
|
47
47
|
metrics() {
|
|
@@ -71,14 +71,14 @@ function ue(e, t, n, r) {
|
|
|
71
71
|
function Y(e) {
|
|
72
72
|
return typeof e == "number" && Number.isFinite(e) && e >= 0 ? e : void 0;
|
|
73
73
|
}
|
|
74
|
-
function
|
|
74
|
+
function fe(e, t, n) {
|
|
75
75
|
let r = Math.max(0, Math.min(n, Math.floor(e)));
|
|
76
76
|
return {
|
|
77
77
|
start: r,
|
|
78
78
|
end: Math.max(r, Math.min(n, Math.floor(t)))
|
|
79
79
|
};
|
|
80
80
|
}
|
|
81
|
-
function
|
|
81
|
+
function X(e, t, n) {
|
|
82
82
|
let r = 0, i = e;
|
|
83
83
|
for (; r < i;) {
|
|
84
84
|
let e = r + Math.floor((i - r) / 2);
|
|
@@ -123,13 +123,13 @@ var he = class {
|
|
|
123
123
|
return this.sourcePoints[e];
|
|
124
124
|
}
|
|
125
125
|
pointsInRange(e = 0, t = this.length) {
|
|
126
|
-
let n =
|
|
126
|
+
let n = fe(e, t, this.length);
|
|
127
127
|
return this.sourcePoints.slice(n.start, n.end);
|
|
128
128
|
}
|
|
129
129
|
visibleRange(e) {
|
|
130
130
|
let t = Math.min(e[0], e[1]), n = Math.max(e[0], e[1]);
|
|
131
131
|
return {
|
|
132
|
-
start:
|
|
132
|
+
start: X(this.length, (e) => this.sourcePoints[e].x, t),
|
|
133
133
|
end: pe(this.length, (e) => this.sourcePoints[e].x, n)
|
|
134
134
|
};
|
|
135
135
|
}
|
|
@@ -138,7 +138,7 @@ var he = class {
|
|
|
138
138
|
let t = this.sourcePoints[0], n = this.sourcePoints[this.length - 1];
|
|
139
139
|
if (e <= t.x) return t;
|
|
140
140
|
if (e >= n.x) return n;
|
|
141
|
-
let r =
|
|
141
|
+
let r = X(this.length, (e) => this.sourcePoints[e].x, e), i = this.sourcePoints[Math.min(r, this.length - 1)], a = this.sourcePoints[Math.max(0, r - 1)];
|
|
142
142
|
return Math.abs(e - a.x) < Math.abs(i.x - e) ? a : i;
|
|
143
143
|
}
|
|
144
144
|
metrics(e = !1) {
|
|
@@ -175,14 +175,14 @@ var he = class {
|
|
|
175
175
|
};
|
|
176
176
|
}
|
|
177
177
|
pointsInRange(e = 0, t = this.length) {
|
|
178
|
-
let n =
|
|
178
|
+
let n = fe(e, t, this.length), r = [];
|
|
179
179
|
for (let e = n.start; e < n.end; e += 1) r.push(this.pointAt(e));
|
|
180
180
|
return r;
|
|
181
181
|
}
|
|
182
182
|
visibleRange(e) {
|
|
183
183
|
let t = Math.min(e[0], e[1]), n = Math.max(e[0], e[1]);
|
|
184
184
|
return {
|
|
185
|
-
start:
|
|
185
|
+
start: X(this.length, (e) => this.x[e], t),
|
|
186
186
|
end: pe(this.length, (e) => this.x[e], n)
|
|
187
187
|
};
|
|
188
188
|
}
|
|
@@ -190,7 +190,7 @@ var he = class {
|
|
|
190
190
|
if (!Number.isFinite(e) || !this.length) return;
|
|
191
191
|
if (e <= this.x[0]) return this.pointAt(0);
|
|
192
192
|
if (e >= this.x[this.length - 1]) return this.pointAt(this.length - 1);
|
|
193
|
-
let t =
|
|
193
|
+
let t = X(this.length, (e) => this.x[e], e), n = Math.min(t, this.length - 1), r = Math.max(0, t - 1);
|
|
194
194
|
return Math.abs(e - this.x[r]) < Math.abs(this.x[n] - e) ? this.pointAt(r) : this.pointAt(n);
|
|
195
195
|
}
|
|
196
196
|
metrics(e = !1) {
|
|
@@ -230,7 +230,7 @@ function ve(e) {
|
|
|
230
230
|
return e.x instanceof Float64Array && t.every((t) => t === void 0 || _e(t) && t.length === e.x.length);
|
|
231
231
|
}
|
|
232
232
|
function ye(e) {
|
|
233
|
-
if (!_e(e.values) || !Number.isFinite(e.sampleRate) || e.sampleRate <= 0 || e.startTime !== void 0 && !Number.isFinite(e.startTime)) return
|
|
233
|
+
if (!_e(e.values) || !Number.isFinite(e.sampleRate) || e.sampleRate <= 0 || e.startTime !== void 0 && !Number.isFinite(e.startTime)) return de(/* @__PURE__ */ new Float64Array(), 1, 0);
|
|
234
234
|
let t = e.startTime ?? 0, n = 0;
|
|
235
235
|
for (let t = 0; t < e.values.length; t += 1) n += +!!Number.isFinite(e.values[t]);
|
|
236
236
|
let r = e.values instanceof Float32Array ? new Float32Array(n) : new Float64Array(n), i = n === e.values.length ? void 0 : new Uint32Array(n);
|
|
@@ -238,7 +238,7 @@ function ye(e) {
|
|
|
238
238
|
let a = e.values[t];
|
|
239
239
|
Number.isFinite(a) && (r[n] = a, i && (i[n] = t), n += 1);
|
|
240
240
|
}
|
|
241
|
-
return
|
|
241
|
+
return de(r, e.sampleRate, t, i);
|
|
242
242
|
}
|
|
243
243
|
function be(e) {
|
|
244
244
|
if (!ve(e)) return new ge(/* @__PURE__ */ new Float64Array(), /* @__PURE__ */ new Float64Array());
|
|
@@ -256,7 +256,7 @@ function be(e) {
|
|
|
256
256
|
function xe(e, t) {
|
|
257
257
|
return e.kind === "typed-samples" ? ye(e) : e.kind === "typed-points" ? be(e) : new he(t(e));
|
|
258
258
|
}
|
|
259
|
-
function
|
|
259
|
+
function Z(e) {
|
|
260
260
|
return new he(e);
|
|
261
261
|
}
|
|
262
262
|
function Se(e) {
|
|
@@ -438,10 +438,10 @@ var Ne = {
|
|
|
438
438
|
backgroundColor: "rgba(255, 255, 255, 0.92)"
|
|
439
439
|
}, Pe = "12px Arial, sans-serif";
|
|
440
440
|
function Fe(e) {
|
|
441
|
-
return Ce(e) ? e :
|
|
441
|
+
return Ce(e) ? e : Z(e);
|
|
442
442
|
}
|
|
443
443
|
function Ie(e, t, n) {
|
|
444
|
-
let r = null, i = e.series.source ??
|
|
444
|
+
let r = null, i = e.series.source ?? Z(e.series.points);
|
|
445
445
|
for (let a = 0; a < i.length; a += 1) {
|
|
446
446
|
let o = i.pointAt(a);
|
|
447
447
|
if (!Number.isFinite(o.x) || !Number.isFinite(o.y)) continue;
|
|
@@ -510,9 +510,9 @@ function ze(e, t, n, r) {
|
|
|
510
510
|
...t
|
|
511
511
|
}] : [];
|
|
512
512
|
}
|
|
513
|
-
let i = Re(e.series.source ??
|
|
513
|
+
let i = Re(e.series.source ?? Z(e.series.points), t, e.series.lineType);
|
|
514
514
|
if (!i) return [];
|
|
515
|
-
let a = Le(e.series.source ??
|
|
515
|
+
let a = Le(e.series.source ?? Z(e.series.points), t);
|
|
516
516
|
if (!a) return [];
|
|
517
517
|
let o = e.xScale(i.x), s = e.top + e.yScale(i.y), c = e.xScale(a.x), l = e.top + e.yScale(a.y);
|
|
518
518
|
return [{
|
|
@@ -598,7 +598,7 @@ var Ke = [
|
|
|
598
598
|
"drag-end"
|
|
599
599
|
],
|
|
600
600
|
setup(n, { emit: o }) {
|
|
601
|
-
let s = n, c = o, l =
|
|
601
|
+
let s = n, c = o, l = x(/* @__PURE__ */ new Map()), u = x(null), d = null, f = null, h = 0, g = t(() => {
|
|
602
602
|
let e = /* @__PURE__ */ new Map();
|
|
603
603
|
return s.annotations.forEach((t) => {
|
|
604
604
|
let n = l.value.get(t.annotation.id);
|
|
@@ -614,14 +614,14 @@ var Ke = [
|
|
|
614
614
|
function _(e) {
|
|
615
615
|
return g.value.get(e.annotation.id) ?? e.box;
|
|
616
616
|
}
|
|
617
|
-
function
|
|
617
|
+
function v() {
|
|
618
618
|
f = null, d && (l.value = new Map(l.value).set(d.annotationId, {
|
|
619
619
|
x: d.deltaX,
|
|
620
620
|
y: d.deltaY
|
|
621
621
|
}));
|
|
622
622
|
}
|
|
623
|
-
function
|
|
624
|
-
f === null && (f = requestAnimationFrame(
|
|
623
|
+
function b() {
|
|
624
|
+
f === null && (f = requestAnimationFrame(v));
|
|
625
625
|
}
|
|
626
626
|
function C(e, t) {
|
|
627
627
|
if (!s.interactive || t.button !== 0 || d) return;
|
|
@@ -643,12 +643,12 @@ var Ke = [
|
|
|
643
643
|
target: n
|
|
644
644
|
};
|
|
645
645
|
}
|
|
646
|
-
function
|
|
646
|
+
function w(e) {
|
|
647
647
|
if (!s.interactive || (e.stopPropagation(), !d || e.pointerId !== d.pointerId)) return;
|
|
648
648
|
let t = e.clientX - d.startX, n = e.clientY - d.startY;
|
|
649
|
-
d.deltaX = t, d.deltaY = n, d.moved = d.moved || Math.hypot(t, n) >= 2, d.moved &&
|
|
649
|
+
d.deltaX = t, d.deltaY = n, d.moved = d.moved || Math.hypot(t, n) >= 2, d.moved && b();
|
|
650
650
|
}
|
|
651
|
-
function
|
|
651
|
+
function E(e) {
|
|
652
652
|
if (!s.interactive || (e.preventDefault(), e.stopPropagation(), !d || e.pointerId !== d.pointerId)) return;
|
|
653
653
|
let t = d, n = e.clientX - t.startX, r = e.clientY - t.startY;
|
|
654
654
|
if (t.deltaX = n, t.deltaY = r, t.moved = Math.hypot(n, r) >= 2, t.moved = t.moved || Math.hypot(n, r) >= 2, f !== null && (cancelAnimationFrame(f), f = null), t.moved) {
|
|
@@ -665,7 +665,7 @@ var Ke = [
|
|
|
665
665
|
} else d = null;
|
|
666
666
|
t.target.hasPointerCapture(t.pointerId) && t.target.releasePointerCapture(t.pointerId), c("drag-end", !1);
|
|
667
667
|
}
|
|
668
|
-
|
|
668
|
+
k(() => s.annotations, (e) => {
|
|
669
669
|
let t = u.value;
|
|
670
670
|
if (!t) return;
|
|
671
671
|
let n = e.find((e) => e.annotation.id === t.annotationId);
|
|
@@ -676,7 +676,7 @@ var Ke = [
|
|
|
676
676
|
y: 0
|
|
677
677
|
}), u.value = null);
|
|
678
678
|
});
|
|
679
|
-
function
|
|
679
|
+
function O(e) {
|
|
680
680
|
e.preventDefault(), e.stopPropagation(), !(!d || e.pointerId !== d.pointerId) && A();
|
|
681
681
|
}
|
|
682
682
|
function A() {
|
|
@@ -687,7 +687,7 @@ var Ke = [
|
|
|
687
687
|
y: 0
|
|
688
688
|
}), f !== null && (cancelAnimationFrame(f), f = null), e.target.hasPointerCapture(e.pointerId) && e.target.releasePointerCapture(e.pointerId), c("drag-end", !0);
|
|
689
689
|
}
|
|
690
|
-
|
|
690
|
+
k(() => s.interactive, (e) => {
|
|
691
691
|
e || A();
|
|
692
692
|
});
|
|
693
693
|
function j(e, t) {
|
|
@@ -696,18 +696,18 @@ var Ke = [
|
|
|
696
696
|
function M(e) {
|
|
697
697
|
return `waveform-annotation-arrow-${e.replace(/[^a-zA-Z0-9_-]/g, "-")}`;
|
|
698
698
|
}
|
|
699
|
-
return (t, n) => s.visible ? (
|
|
699
|
+
return (t, n) => s.visible ? (y(), i("g", {
|
|
700
700
|
key: 0,
|
|
701
701
|
class: p(["waveform-annotation-layer", { "waveform-annotation-layer--interactive": s.interactive }])
|
|
702
|
-
}, [(
|
|
702
|
+
}, [(y(!0), i(e, null, S(s.annotations, (t) => (y(), i("g", {
|
|
703
703
|
key: t.annotation.id,
|
|
704
704
|
class: "waveform-annotation",
|
|
705
705
|
"data-annotation-id": t.annotation.id,
|
|
706
706
|
"data-placement": t.placement,
|
|
707
707
|
onPointerdown: (e) => C(t, e),
|
|
708
|
-
onPointermove:
|
|
709
|
-
onPointerup:
|
|
710
|
-
onPointercancel:
|
|
708
|
+
onPointermove: w,
|
|
709
|
+
onPointerup: E,
|
|
710
|
+
onPointercancel: O,
|
|
711
711
|
onContextmenu: (e) => j(t.annotation.id, e)
|
|
712
712
|
}, [
|
|
713
713
|
a("defs", null, [a("marker", {
|
|
@@ -743,16 +743,16 @@ var Ke = [
|
|
|
743
743
|
a("text", {
|
|
744
744
|
class: "waveform-annotation__text",
|
|
745
745
|
x: _(t).x + _(t).width / 2,
|
|
746
|
-
y: _(t).y + _(t).height / 2 - (t.lines.length - 1) *
|
|
746
|
+
y: _(t).y + _(t).height / 2 - (t.lines.length - 1) * D(16) / 2,
|
|
747
747
|
fill: t.style.textColor,
|
|
748
|
-
style: m({ font:
|
|
748
|
+
style: m({ font: D(Pe) }),
|
|
749
749
|
"text-anchor": "middle",
|
|
750
750
|
"dominant-baseline": "central"
|
|
751
|
-
}, [(
|
|
751
|
+
}, [(y(!0), i(e, null, S(t.lines, (e, n) => (y(), i("tspan", {
|
|
752
752
|
key: `${t.annotation.id}-${n}`,
|
|
753
753
|
x: _(t).x + _(t).width / 2,
|
|
754
|
-
dy: n === 0 ? 0 :
|
|
755
|
-
},
|
|
754
|
+
dy: n === 0 ? 0 : D(16)
|
|
755
|
+
}, T(e), 9, Qe))), 128))], 12, Ze)
|
|
756
756
|
], 40, Ke))), 128))], 2)) : r("", !0);
|
|
757
757
|
}
|
|
758
758
|
}), et = (e, t) => {
|
|
@@ -774,7 +774,7 @@ var Ke = [
|
|
|
774
774
|
],
|
|
775
775
|
setup(e, { emit: t }) {
|
|
776
776
|
let n = e, o = t;
|
|
777
|
-
return (e, t) => n.visible && n.canEdit ? (
|
|
777
|
+
return (e, t) => n.visible && n.canEdit ? (y(), i("div", {
|
|
778
778
|
key: 0,
|
|
779
779
|
class: "waveform-annotation-context-menu",
|
|
780
780
|
style: m({
|
|
@@ -782,7 +782,7 @@ var Ke = [
|
|
|
782
782
|
top: `${n.y}px`
|
|
783
783
|
}),
|
|
784
784
|
role: "menu",
|
|
785
|
-
onContextmenu: t[3] ||=
|
|
785
|
+
onContextmenu: t[3] ||= N(() => {}, ["prevent"])
|
|
786
786
|
}, [
|
|
787
787
|
a("button", {
|
|
788
788
|
type: "button",
|
|
@@ -802,7 +802,7 @@ var Ke = [
|
|
|
802
802
|
], 36)) : r("", !0);
|
|
803
803
|
}
|
|
804
804
|
}), [["__scopeId", "data-v-c70c98a1"]]), rt = 1;
|
|
805
|
-
function
|
|
805
|
+
function Q(e) {
|
|
806
806
|
throw TypeError(`Invalid waveform annotation file: ${e}`);
|
|
807
807
|
}
|
|
808
808
|
function it(e) {
|
|
@@ -810,23 +810,23 @@ function it(e) {
|
|
|
810
810
|
}
|
|
811
811
|
function at(e, t, n) {
|
|
812
812
|
let r = e[t];
|
|
813
|
-
return (typeof r != "string" || r.trim().length === 0) &&
|
|
813
|
+
return (typeof r != "string" || r.trim().length === 0) && Q(`${n}.${t} must be a non-empty string`), r;
|
|
814
814
|
}
|
|
815
815
|
function ot(e, t, n) {
|
|
816
816
|
let r = e[t];
|
|
817
|
-
if (r !== void 0) return typeof r != "string" &&
|
|
817
|
+
if (r !== void 0) return typeof r != "string" && Q(`${n}.${t} must be a string`), r;
|
|
818
818
|
}
|
|
819
819
|
function st(e, t, n) {
|
|
820
820
|
let r = e[t];
|
|
821
|
-
return (typeof r != "number" || !Number.isFinite(r)) &&
|
|
821
|
+
return (typeof r != "number" || !Number.isFinite(r)) && Q(`${n}.${t} must be a finite number`), r;
|
|
822
822
|
}
|
|
823
823
|
function ct(e, t, n) {
|
|
824
824
|
let r = e[t];
|
|
825
|
-
if (r !== void 0) return (typeof r != "number" || !Number.isFinite(r)) &&
|
|
825
|
+
if (r !== void 0) return (typeof r != "number" || !Number.isFinite(r)) && Q(`${n}.${t} must be a finite number`), r;
|
|
826
826
|
}
|
|
827
827
|
function lt(e, t) {
|
|
828
828
|
if (e === void 0) return;
|
|
829
|
-
it(e) ||
|
|
829
|
+
it(e) || Q(`${t} must be an object`);
|
|
830
830
|
let n = ot(e, "borderColor", t), r = ot(e, "textColor", t), i = ot(e, "backgroundColor", t);
|
|
831
831
|
return {
|
|
832
832
|
...n !== void 0 && { borderColor: n },
|
|
@@ -836,9 +836,9 @@ function lt(e, t) {
|
|
|
836
836
|
}
|
|
837
837
|
function ut(e, t) {
|
|
838
838
|
let n = `annotations[${t}]`;
|
|
839
|
-
it(e) ||
|
|
839
|
+
it(e) || Q(`${n} must be an object`);
|
|
840
840
|
let r = at(e, "text", n);
|
|
841
|
-
r.length > 40 &&
|
|
841
|
+
r.length > 40 && Q(`${n}.text must not exceed 40 characters`);
|
|
842
842
|
let i = ct(e, "labelOffsetX", n), a = ct(e, "labelOffsetY", n), o = ot(e, "createdAt", n), s = lt(e.style, `${n}.style`);
|
|
843
843
|
return {
|
|
844
844
|
id: at(e, "id", n),
|
|
@@ -855,7 +855,7 @@ function ut(e, t) {
|
|
|
855
855
|
function dt(e) {
|
|
856
856
|
let t = e.map(ut), n = /* @__PURE__ */ new Set();
|
|
857
857
|
return t.forEach((e, t) => {
|
|
858
|
-
n.has(e.id) &&
|
|
858
|
+
n.has(e.id) && Q(`annotations[${t}].id must be unique`), n.add(e.id);
|
|
859
859
|
}), t;
|
|
860
860
|
}
|
|
861
861
|
function ft(e) {
|
|
@@ -865,19 +865,19 @@ function ft(e) {
|
|
|
865
865
|
}, null, 2);
|
|
866
866
|
}
|
|
867
867
|
function pt(e) {
|
|
868
|
-
typeof e != "string" &&
|
|
868
|
+
typeof e != "string" && Q("input must be a JSON string");
|
|
869
869
|
let t;
|
|
870
870
|
try {
|
|
871
871
|
t = JSON.parse(e);
|
|
872
872
|
} catch {
|
|
873
|
-
|
|
873
|
+
Q("input is not valid JSON");
|
|
874
874
|
}
|
|
875
|
-
return it(t) ||
|
|
875
|
+
return it(t) || Q("root must be an object"), t.version !== rt && Q(`version must be ${rt}`), Array.isArray(t.annotations) || Q("annotations must be an array"), dt(t.annotations);
|
|
876
876
|
}
|
|
877
877
|
//#endregion
|
|
878
878
|
//#region src/components/annotation/useWaveformAnnotationInteraction.ts
|
|
879
879
|
function mt() {
|
|
880
|
-
let e =
|
|
880
|
+
let e = x(null), t = x(null);
|
|
881
881
|
return {
|
|
882
882
|
editorDraft: e,
|
|
883
883
|
contextMenu: t,
|
|
@@ -918,7 +918,7 @@ function mt() {
|
|
|
918
918
|
//#region src/utils/domain.ts
|
|
919
919
|
function ht(e) {
|
|
920
920
|
if (e.length === 0) return [0, 1];
|
|
921
|
-
let [t = 0, n = 1] =
|
|
921
|
+
let [t = 0, n = 1] = V(e);
|
|
922
922
|
if (t !== n) return [t, n];
|
|
923
923
|
let r = Math.abs(t) * .05 || .5;
|
|
924
924
|
return [t - r, n + r];
|
|
@@ -1236,7 +1236,7 @@ function hn(e) {
|
|
|
1236
1236
|
}
|
|
1237
1237
|
//#endregion
|
|
1238
1238
|
//#region src/core/renderingOptions.ts
|
|
1239
|
-
var
|
|
1239
|
+
var gn = {
|
|
1240
1240
|
downsample: !0,
|
|
1241
1241
|
downsampleThreshold: 2e3,
|
|
1242
1242
|
maxPointsPerPixel: 4,
|
|
@@ -1252,11 +1252,11 @@ var Q = {
|
|
|
1252
1252
|
rawPointLimit: 1e5,
|
|
1253
1253
|
wasmFailureFallback: "error"
|
|
1254
1254
|
}
|
|
1255
|
-
},
|
|
1255
|
+
}, _n = [
|
|
1256
1256
|
"auto",
|
|
1257
1257
|
"wasm",
|
|
1258
1258
|
"raw"
|
|
1259
|
-
],
|
|
1259
|
+
], vn = [
|
|
1260
1260
|
"auto",
|
|
1261
1261
|
"none",
|
|
1262
1262
|
"peak",
|
|
@@ -1267,68 +1267,68 @@ var Q = {
|
|
|
1267
1267
|
"minmax",
|
|
1268
1268
|
"sum"
|
|
1269
1269
|
];
|
|
1270
|
-
function vn(e) {
|
|
1271
|
-
return typeof e == "string" && gn.includes(e);
|
|
1272
|
-
}
|
|
1273
1270
|
function yn(e) {
|
|
1274
1271
|
return typeof e == "string" && _n.includes(e);
|
|
1275
1272
|
}
|
|
1276
|
-
function bn(e
|
|
1273
|
+
function bn(e) {
|
|
1274
|
+
return typeof e == "string" && vn.includes(e);
|
|
1275
|
+
}
|
|
1276
|
+
function xn(e, t, n) {
|
|
1277
1277
|
return typeof e == "number" && Number.isFinite(e) && e >= t ? Math.floor(e) : n;
|
|
1278
1278
|
}
|
|
1279
|
-
function
|
|
1279
|
+
function Sn(e, t) {
|
|
1280
1280
|
return typeof e == "number" && Number.isFinite(e) && e > 0 ? e : t;
|
|
1281
1281
|
}
|
|
1282
|
-
function
|
|
1282
|
+
function Cn(e, t) {
|
|
1283
1283
|
return typeof e == "number" && Number.isFinite(e) && e >= t ? Math.floor(e) : void 0;
|
|
1284
1284
|
}
|
|
1285
|
-
function
|
|
1285
|
+
function wn(e, t) {
|
|
1286
1286
|
return Number.isFinite(e) && e >= 0 ? e : t;
|
|
1287
1287
|
}
|
|
1288
|
-
function
|
|
1289
|
-
let r =
|
|
1288
|
+
function Tn(e, t, n) {
|
|
1289
|
+
let r = yn(e?.mode) ? e.mode : t === !1 ? "raw" : gn.sampling.mode, i = Sn(e?.maxPointsPerPixel, n);
|
|
1290
1290
|
return {
|
|
1291
1291
|
mode: r,
|
|
1292
|
-
autoThreshold:
|
|
1293
|
-
autoHysteresis:
|
|
1294
|
-
strategy:
|
|
1292
|
+
autoThreshold: xn(e?.autoThreshold, 1, gn.sampling.autoThreshold),
|
|
1293
|
+
autoHysteresis: xn(e?.autoHysteresis, 0, gn.sampling.autoHysteresis),
|
|
1294
|
+
strategy: bn(e?.strategy) ? e.strategy : gn.sampling.strategy,
|
|
1295
1295
|
maxPointsPerPixel: i,
|
|
1296
|
-
maxPointCount:
|
|
1297
|
-
rawPointLimit:
|
|
1298
|
-
wasmFailureFallback: e?.wasmFailureFallback === "javascript" || e?.wasmFailureFallback === "error" ? e.wasmFailureFallback :
|
|
1296
|
+
maxPointCount: Cn(e?.maxPointCount, 1),
|
|
1297
|
+
rawPointLimit: xn(e?.rawPointLimit, 1, gn.sampling.rawPointLimit),
|
|
1298
|
+
wasmFailureFallback: e?.wasmFailureFallback === "javascript" || e?.wasmFailureFallback === "error" ? e.wasmFailureFallback : gn.sampling.wasmFailureFallback
|
|
1299
1299
|
};
|
|
1300
1300
|
}
|
|
1301
|
-
function
|
|
1302
|
-
let t = Number(e?.downsampleThreshold), n = Number(e?.maxPointsPerPixel), r = Number(e?.pointMinSpacing), i = Number(e?.errorBarMinSpacing), a = Number.isFinite(n) && n > 0 ? n :
|
|
1301
|
+
function En(e) {
|
|
1302
|
+
let t = Number(e?.downsampleThreshold), n = Number(e?.maxPointsPerPixel), r = Number(e?.pointMinSpacing), i = Number(e?.errorBarMinSpacing), a = Number.isFinite(n) && n > 0 ? n : gn.maxPointsPerPixel, o = Tn(e?.sampling, typeof e?.downsample == "boolean" ? e.downsample : void 0, a);
|
|
1303
1303
|
return {
|
|
1304
1304
|
downsample: o.mode !== "raw",
|
|
1305
|
-
downsampleThreshold: Number.isFinite(t) && t >= 2 ? Math.floor(t) :
|
|
1305
|
+
downsampleThreshold: Number.isFinite(t) && t >= 2 ? Math.floor(t) : gn.downsampleThreshold,
|
|
1306
1306
|
maxPointsPerPixel: o.maxPointsPerPixel,
|
|
1307
|
-
pointMinSpacing:
|
|
1308
|
-
errorBarMinSpacing:
|
|
1307
|
+
pointMinSpacing: wn(r, gn.pointMinSpacing),
|
|
1308
|
+
errorBarMinSpacing: wn(i, gn.errorBarMinSpacing),
|
|
1309
1309
|
sampling: o
|
|
1310
1310
|
};
|
|
1311
1311
|
}
|
|
1312
1312
|
//#endregion
|
|
1313
1313
|
//#region src/core/rendering.ts
|
|
1314
|
-
var
|
|
1315
|
-
function
|
|
1314
|
+
var Dn = L((e) => e.x), On = () => !0;
|
|
1315
|
+
function kn(e, t) {
|
|
1316
1316
|
let n = Math.min(t[0], t[1]), r = Math.max(t[0], t[1]);
|
|
1317
1317
|
return {
|
|
1318
|
-
start:
|
|
1319
|
-
end:
|
|
1318
|
+
start: Dn.left(e, n),
|
|
1319
|
+
end: Dn.right(e, r)
|
|
1320
1320
|
};
|
|
1321
1321
|
}
|
|
1322
|
-
function
|
|
1322
|
+
function An(e, t, n) {
|
|
1323
1323
|
if (!Number.isFinite(n) || n <= 0) return !0;
|
|
1324
1324
|
let r = Math.ceil(n), i = /* @__PURE__ */ new Set();
|
|
1325
1325
|
for (let n of e) {
|
|
1326
|
-
let e =
|
|
1326
|
+
let e = kn(n.points, t);
|
|
1327
1327
|
for (let t = e.start; t < e.end; t += 1) if (i.add(n.points[t].x), i.size >= r) return !0;
|
|
1328
1328
|
}
|
|
1329
1329
|
return !1;
|
|
1330
1330
|
}
|
|
1331
|
-
function
|
|
1331
|
+
function jn(e, t, n, r, i) {
|
|
1332
1332
|
let a = Math.max(0, t.start - 1), o = Math.min(e.length, t.end + 1) - a;
|
|
1333
1333
|
return o <= 0 ? [] : hn({
|
|
1334
1334
|
visibleCount: o,
|
|
@@ -1342,10 +1342,10 @@ function An(e, t, n, r, i) {
|
|
|
1342
1342
|
options: i
|
|
1343
1343
|
});
|
|
1344
1344
|
}
|
|
1345
|
-
function
|
|
1345
|
+
function Mn(e, t) {
|
|
1346
1346
|
return t.sampling.mode === "wasm" || t.sampling.mode === "auto" && e > t.sampling.autoThreshold;
|
|
1347
1347
|
}
|
|
1348
|
-
function
|
|
1348
|
+
function Nn(e, t, n, r) {
|
|
1349
1349
|
let i = Math.max(0, t.start - 1), a = Math.min(e.length, t.end + 1), o = a - i;
|
|
1350
1350
|
if (o <= 0) return [];
|
|
1351
1351
|
if (r.sampling.strategy === "none") return e.slice(i, a);
|
|
@@ -1355,12 +1355,12 @@ function Mn(e, t, n, r) {
|
|
|
1355
1355
|
return e[i + r];
|
|
1356
1356
|
});
|
|
1357
1357
|
}
|
|
1358
|
-
function
|
|
1359
|
-
return !e.length || n <= 0 ? [] :
|
|
1358
|
+
function Pn(e, t, n, r) {
|
|
1359
|
+
return !e.length || n <= 0 ? [] : jn(e, kn(e, t), t, n, r);
|
|
1360
1360
|
}
|
|
1361
|
-
function
|
|
1361
|
+
function Fn(e, t, n, r, i, a, o, s) {
|
|
1362
1362
|
if (!a || i === 0) {
|
|
1363
|
-
if (o ===
|
|
1363
|
+
if (o === On) return e.slice(t.start, t.end);
|
|
1364
1364
|
let n = [];
|
|
1365
1365
|
for (let r = t.start; r < t.end; r += 1) o(e[r]) && n.push(e[r]);
|
|
1366
1366
|
return n;
|
|
@@ -1393,40 +1393,40 @@ function Pn(e, t, n, r, i, a, o, s) {
|
|
|
1393
1393
|
let w = (f ?? []).map((e, t) => m?.[t] ?? e).filter((e) => e !== void 0);
|
|
1394
1394
|
return v && w[0] !== v && w.unshift(v), y && w.at(-1) !== y && w.push(y), w;
|
|
1395
1395
|
}
|
|
1396
|
-
function
|
|
1396
|
+
function In(e) {
|
|
1397
1397
|
let { lower: t, upper: n } = on(e);
|
|
1398
1398
|
return t !== 0 || n !== 0;
|
|
1399
1399
|
}
|
|
1400
|
-
function
|
|
1400
|
+
function Ln(e, t, n, r, i) {
|
|
1401
1401
|
if (!e.length || n <= 0) return {
|
|
1402
1402
|
linePoints: [],
|
|
1403
1403
|
pointRenderPoints: [],
|
|
1404
1404
|
errorBarRenderPoints: []
|
|
1405
1405
|
};
|
|
1406
|
-
let a =
|
|
1406
|
+
let a = kn(e, t), o = i.lineVisible ? i.linePointOverride ?? (Mn(a.end - a.start, r) ? Nn(e, a, n, r) : jn(e, a, t, n, r)) : [], s = i.errorBarVisible && i.hasErrorPoints;
|
|
1407
1407
|
if (i.pointVisible && s) {
|
|
1408
|
-
let i =
|
|
1408
|
+
let i = Fn(e, a, t, n, Math.max(r.pointMinSpacing, r.errorBarMinSpacing), r.downsample, On, In);
|
|
1409
1409
|
return {
|
|
1410
1410
|
linePoints: o,
|
|
1411
1411
|
pointRenderPoints: i,
|
|
1412
|
-
errorBarRenderPoints: i.filter(
|
|
1412
|
+
errorBarRenderPoints: i.filter(In)
|
|
1413
1413
|
};
|
|
1414
1414
|
}
|
|
1415
1415
|
return {
|
|
1416
1416
|
linePoints: o,
|
|
1417
|
-
pointRenderPoints: i.pointVisible ?
|
|
1418
|
-
errorBarRenderPoints: s ?
|
|
1417
|
+
pointRenderPoints: i.pointVisible ? Fn(e, a, t, n, r.pointMinSpacing, r.downsample, On) : [],
|
|
1418
|
+
errorBarRenderPoints: s ? Fn(e, a, t, n, r.errorBarMinSpacing, r.downsample, In) : []
|
|
1419
1419
|
};
|
|
1420
1420
|
}
|
|
1421
|
-
var
|
|
1421
|
+
var Rn = (e, t) => {
|
|
1422
1422
|
let n = typeof e == "number" ? e : Number(e);
|
|
1423
1423
|
return Number.isFinite(n) ? Math.min(10, Math.max(1, Math.floor(n))) : t;
|
|
1424
|
-
},
|
|
1424
|
+
}, zn = (e) => {
|
|
1425
1425
|
if (!Array.isArray(e)) return [];
|
|
1426
1426
|
let t = e.filter((e) => typeof e == "string").map((e) => e.trim()).filter(Boolean);
|
|
1427
1427
|
return Array.from(new Set(t));
|
|
1428
1428
|
};
|
|
1429
|
-
function
|
|
1429
|
+
function Bn(e) {
|
|
1430
1430
|
let t = Object.fromEntries(Object.entries(e?.trackLines ?? {}).map(([e, t]) => [e, {
|
|
1431
1431
|
horizontal: typeof t?.horizontal != "boolean" || t.horizontal,
|
|
1432
1432
|
vertical: typeof t?.vertical != "boolean" || t.vertical,
|
|
@@ -1434,34 +1434,34 @@ function zn(e) {
|
|
|
1434
1434
|
verticalColor: typeof t?.verticalColor == "string" && t.verticalColor.trim() ? t.verticalColor : void 0
|
|
1435
1435
|
}]));
|
|
1436
1436
|
return {
|
|
1437
|
-
rowCount:
|
|
1438
|
-
columnCount:
|
|
1437
|
+
rowCount: Rn(e?.rowCount, 2),
|
|
1438
|
+
columnCount: Rn(e?.columnCount, 1),
|
|
1439
1439
|
showPagination: e?.showPagination ?? !0,
|
|
1440
1440
|
fillIncompleteLastRow: e?.fillIncompleteLastRow ?? !1,
|
|
1441
|
-
trackOrder:
|
|
1441
|
+
trackOrder: zn(e?.trackOrder),
|
|
1442
1442
|
hideEmptyTracks: e?.hideEmptyTracks ?? !1,
|
|
1443
1443
|
trackLines: t
|
|
1444
1444
|
};
|
|
1445
1445
|
}
|
|
1446
|
-
function
|
|
1446
|
+
function Vn(e) {
|
|
1447
1447
|
return e.rowCount * e.columnCount;
|
|
1448
1448
|
}
|
|
1449
|
-
function
|
|
1450
|
-
return Math.max(1, Math.ceil(Math.max(0, e) /
|
|
1449
|
+
function Hn(e, t) {
|
|
1450
|
+
return Math.max(1, Math.ceil(Math.max(0, e) / Vn(t)));
|
|
1451
1451
|
}
|
|
1452
|
-
function
|
|
1453
|
-
let r =
|
|
1454
|
-
return e.slice(i, i +
|
|
1452
|
+
function Un(e, t, n) {
|
|
1453
|
+
let r = Hn(e.length, n), i = (Math.min(r, Math.max(1, Math.floor(t))) - 1) * Vn(n);
|
|
1454
|
+
return e.slice(i, i + Vn(n));
|
|
1455
1455
|
}
|
|
1456
|
-
function
|
|
1456
|
+
function Wn(e) {
|
|
1457
1457
|
return e === "compact" ? 0 : e === "separated" ? 16 : 14;
|
|
1458
1458
|
}
|
|
1459
|
-
function
|
|
1460
|
-
let s =
|
|
1459
|
+
function Gn(e, t, n, r, i = [], a, o = !0) {
|
|
1460
|
+
let s = Vn(n), c = i.filter(Boolean).length, l = n.fillIncompleteLastRow && c > 0 && c < s, u = l ? Math.ceil(c / n.columnCount) : n.rowCount, d = Wn(r), f = Number.isFinite(a) ? Math.max(0, a) : d, p = /* @__PURE__ */ new Set();
|
|
1461
1461
|
if (o) {
|
|
1462
1462
|
if (r === "independent") for (let e = 0; e < u; e += 1) p.add(e);
|
|
1463
1463
|
else if (r === "compact") p.add(u - 1);
|
|
1464
|
-
else for (let e = 0; e < n.columnCount; e += 1) for (let t =
|
|
1464
|
+
else for (let e = 0; e < n.columnCount; e += 1) for (let t = Vn(n) - 1; t >= 0; --t) if (t % n.columnCount === e && i[t]) {
|
|
1465
1465
|
p.add(Math.floor(t / n.columnCount));
|
|
1466
1466
|
break;
|
|
1467
1467
|
}
|
|
@@ -1487,7 +1487,7 @@ function Wn(e, t, n, r, i = [], a, o = !0) {
|
|
|
1487
1487
|
};
|
|
1488
1488
|
});
|
|
1489
1489
|
}
|
|
1490
|
-
function
|
|
1490
|
+
function Kn(e, t) {
|
|
1491
1491
|
let n = /* @__PURE__ */ new Set();
|
|
1492
1492
|
for (let r = 0; r < t; r += 1) for (let t = e.length - 1; t >= 0; --t) {
|
|
1493
1493
|
let i = e[t];
|
|
@@ -1500,26 +1500,26 @@ function Gn(e, t) {
|
|
|
1500
1500
|
}
|
|
1501
1501
|
//#endregion
|
|
1502
1502
|
//#region src/components/core/xDomain.ts
|
|
1503
|
-
var
|
|
1504
|
-
function
|
|
1505
|
-
return !Number.isFinite(e) || (e ?? 0) < 1 ?
|
|
1503
|
+
var qn = 10;
|
|
1504
|
+
function Jn(e) {
|
|
1505
|
+
return !Number.isFinite(e) || (e ?? 0) < 1 ? qn : Math.max(1, Math.trunc(e));
|
|
1506
1506
|
}
|
|
1507
|
-
function
|
|
1507
|
+
function Yn(e, t, n = !1) {
|
|
1508
1508
|
if (t.type !== "nice" || n && !t.includeExplicit) return [...e];
|
|
1509
|
-
let r =
|
|
1509
|
+
let r = W().domain(e).nice(Jn(t.tickCount)).domain();
|
|
1510
1510
|
return t.bounds === "end" ? [e[0], r[1]] : r;
|
|
1511
1511
|
}
|
|
1512
1512
|
//#endregion
|
|
1513
1513
|
//#region src/components/core/trackLayoutBuilder.ts
|
|
1514
|
-
function
|
|
1514
|
+
function Xn(e, t, n) {
|
|
1515
1515
|
let r = n.xDomainStrategy ?? { type: "data" }, i = n.initialXDomains?.[e.id] ?? n.initialXDomains?.[t] ?? n.initialXDomain;
|
|
1516
|
-
return i ?
|
|
1516
|
+
return i ? Yn(i, r, !0) : Yn(e.xDomain, r);
|
|
1517
1517
|
}
|
|
1518
|
-
function
|
|
1518
|
+
function Zn(e) {
|
|
1519
1519
|
let t = e.cells.map((e) => ({
|
|
1520
1520
|
...e,
|
|
1521
1521
|
hasSeries: !!e.series
|
|
1522
|
-
})), n =
|
|
1522
|
+
})), n = Kn(t, e.grid.columnCount);
|
|
1523
1523
|
return t.flatMap((t, r) => {
|
|
1524
1524
|
let i = !t.series || t.series.series.length === 0;
|
|
1525
1525
|
if (!t.series && (e.displayMode !== "compact" || !e.showCompactEmptyTracks)) return [];
|
|
@@ -1529,47 +1529,42 @@ function Xn(e) {
|
|
|
1529
1529
|
visibleSeries: [],
|
|
1530
1530
|
xDomain: [0, 1],
|
|
1531
1531
|
yDomain: [0, 1]
|
|
1532
|
-
}, o = !i && a.visibleSeries.length > 0, s = a.visibleSeries[0] ?? a.series[0] ?? null, c = e.displayMode === "independent" ?
|
|
1533
|
-
...e,
|
|
1534
|
-
domain: u
|
|
1535
|
-
} : e), f = {
|
|
1532
|
+
}, o = !i && a.visibleSeries.length > 0, s = a.visibleSeries[0] ?? a.series[0] ?? null, c = e.displayMode === "independent" ? W(Xn(a, s?.id ?? a.id, e), [0, t.width]) : W(e.sharedZoomDomain, [0, t.width]), l = (e.displayMode === "independent" ? e.independentTransforms[r] ?? J : J).rescaleX(c), u = ur(a, e.overlayMode, e.fixedYDomain, e.fixedYDomains, e.yDomains), d = {
|
|
1536
1533
|
left: 0,
|
|
1537
1534
|
right: 0
|
|
1538
|
-
},
|
|
1535
|
+
}, f = {
|
|
1539
1536
|
left: 0,
|
|
1540
1537
|
right: 0
|
|
1541
|
-
},
|
|
1542
|
-
let r =
|
|
1543
|
-
|
|
1544
|
-
let [s, c] = o.domain(), l = Array.from({ length: i }, (e, t) => s + (c - s) * t / (i - 1)), u = e.displayMode !== "compact" || t.row === 0 ? l : l.slice(0, -1), { tickTextWidth: d } = sr(o.domain(), !1, u, n.seriesList[0]?.unit, i), m = d + 7 + 0 + 12 + 4, h = e.yAxisSlots?.find((e) => e.side === n.side && e.sideIndex === r), g = h ? (n.side === "left" ? 0 : t.width) + h.axisOffset : n.side === "left" ? -p.left : t.width + p.right, _ = d + 7 + 0 + 12 / 2, v = (h ? (n.side === "left" ? 0 : t.width) + h.labelOffset : g + (n.side === "left" ? -_ : _)) - (n.side === "right" ? 10 : 0);
|
|
1545
|
-
return h || (p[n.side] += m), {
|
|
1538
|
+
}, p = u.map((n) => {
|
|
1539
|
+
let r = d[n.side]++, i = rr(t.plotHeight, e.yAxisSplitNumber), a = ir(n.domain, i, e.yAxisNice !== !1), o = W(a.domain, [t.plotHeight, 0]), s = a.values, c = e.displayMode !== "compact" || t.row === 0 ? s : s.slice(0, -1), { tickTextWidth: l } = dr(o.domain(), !1, c, n.seriesList[0]?.unit, i), u = l + 7 + 0 + 12 + 4, p = e.yAxisSlots?.find((e) => e.side === n.side && e.sideIndex === r), m = p ? (n.side === "left" ? 0 : t.width) + p.axisOffset : n.side === "left" ? -f.left : t.width + f.right, h = l + 7 + 0 + 12 / 2, g = (p ? (n.side === "left" ? 0 : t.width) + p.labelOffset : m + (n.side === "left" ? -h : h)) - (n.side === "right" ? 10 : 0);
|
|
1540
|
+
return p || (f[n.side] += u), {
|
|
1546
1541
|
index: n.index,
|
|
1547
1542
|
side: n.side,
|
|
1548
|
-
x:
|
|
1549
|
-
labelX:
|
|
1543
|
+
x: m,
|
|
1544
|
+
labelX: g,
|
|
1550
1545
|
scale: o,
|
|
1551
|
-
majorTicks:
|
|
1552
|
-
minorTicks: gt(
|
|
1553
|
-
tickValues:
|
|
1546
|
+
majorTicks: s,
|
|
1547
|
+
minorTicks: gt(s, 2),
|
|
1548
|
+
tickValues: c,
|
|
1554
1549
|
seriesList: n.seriesList
|
|
1555
1550
|
};
|
|
1556
|
-
}),
|
|
1557
|
-
e.yAxisNice !== !1 &&
|
|
1558
|
-
let
|
|
1559
|
-
start: At(
|
|
1560
|
-
end: At(
|
|
1561
|
-
},
|
|
1551
|
+
}), m = W(a.yDomain, [t.plotHeight, 0]);
|
|
1552
|
+
e.yAxisNice !== !1 && m.nice();
|
|
1553
|
+
let h = p[0]?.scale ?? m, g = l.ticks(Math.max(2, Math.floor(t.width / 100))), _ = p[0]?.majorTicks ?? [], v = p[0]?.tickValues ?? [], y = l.domain(), b = {
|
|
1554
|
+
start: At(y[0], y, e.timeUnit, "start", e.xAxisLabelFormatter),
|
|
1555
|
+
end: At(y[1], y, e.timeUnit, "end", e.xAxisLabelFormatter)
|
|
1556
|
+
}, x = b.start.length * 7 + 10, S = b.end.length * 7 + 10, C = g.filter((e) => {
|
|
1562
1557
|
let n = l(e);
|
|
1563
|
-
return n >
|
|
1564
|
-
}),
|
|
1565
|
-
let r =
|
|
1558
|
+
return n > x && n < t.width - S;
|
|
1559
|
+
}), w = a.visibleSeries.map((n) => {
|
|
1560
|
+
let r = p.find((e) => e.seriesList.some((e) => e.id === n.id)), a = r?.scale ?? h, o = Ln(n.points, y, t.width, e.rendering, {
|
|
1566
1561
|
lineVisible: !i && n.lineType !== "none",
|
|
1567
1562
|
linePointOverride: e.linePointOverrides?.[n.id],
|
|
1568
1563
|
pointVisible: n.pointType !== "none",
|
|
1569
1564
|
errorBarVisible: n.errorBar.visible,
|
|
1570
1565
|
hasErrorPoints: n.hasErrorPoints
|
|
1571
|
-
}), s =
|
|
1572
|
-
return n.lineType === "step-start" && s.curve(
|
|
1566
|
+
}), s = H().x((e) => l(e.x)).y((e) => a(e.y));
|
|
1567
|
+
return n.lineType === "step-start" && s.curve(B), n.lineType === "step-middle" && s.curve(R), (n.lineType === "step-end" || n.lineType === "step-after") && s.curve(z), {
|
|
1573
1568
|
series: n,
|
|
1574
1569
|
path: o.linePoints.length ? s(o.linePoints) : null,
|
|
1575
1570
|
pointRenderPoints: o.pointRenderPoints,
|
|
@@ -1594,17 +1589,17 @@ function Xn(e) {
|
|
|
1594
1589
|
width: t.width,
|
|
1595
1590
|
height: t.plotHeight,
|
|
1596
1591
|
xScale: l,
|
|
1597
|
-
yScale:
|
|
1598
|
-
yAxes:
|
|
1599
|
-
xMajorTicks:
|
|
1600
|
-
xMinorTicks: gt(
|
|
1601
|
-
yMajorTicks:
|
|
1602
|
-
yMinorTicks:
|
|
1603
|
-
yAxisTickValues:
|
|
1604
|
-
xAxisTickValues:
|
|
1605
|
-
endpointLabels:
|
|
1606
|
-
path:
|
|
1607
|
-
seriesPaths:
|
|
1592
|
+
yScale: h,
|
|
1593
|
+
yAxes: p,
|
|
1594
|
+
xMajorTicks: g,
|
|
1595
|
+
xMinorTicks: gt(g, 3, y),
|
|
1596
|
+
yMajorTicks: _,
|
|
1597
|
+
yMinorTicks: p[0]?.minorTicks ?? [],
|
|
1598
|
+
yAxisTickValues: v,
|
|
1599
|
+
xAxisTickValues: C,
|
|
1600
|
+
endpointLabels: b,
|
|
1601
|
+
path: w[0]?.path ?? null,
|
|
1602
|
+
seriesPaths: w,
|
|
1608
1603
|
gridLines: e.grid.trackLines[a.id] ?? {
|
|
1609
1604
|
horizontal: !0,
|
|
1610
1605
|
vertical: !0
|
|
@@ -1615,11 +1610,28 @@ function Xn(e) {
|
|
|
1615
1610
|
}
|
|
1616
1611
|
//#endregion
|
|
1617
1612
|
//#region src/components/core/layout.ts
|
|
1618
|
-
var
|
|
1619
|
-
function
|
|
1613
|
+
var Qn = 7, $n = 7, er = 4, tr = 0, nr = 12;
|
|
1614
|
+
function rr(e, t) {
|
|
1620
1615
|
return typeof t == "number" && Number.isFinite(t) ? Math.max(2, Math.floor(t)) : 5;
|
|
1621
1616
|
}
|
|
1622
|
-
function
|
|
1617
|
+
function ir(e, t = 5, n = !0) {
|
|
1618
|
+
let r = typeof t == "number" && Number.isFinite(t) ? Math.max(2, Math.floor(t)) : 5, i = W(e, [1, 0]);
|
|
1619
|
+
n && i.nice(Math.max(1, r - 1));
|
|
1620
|
+
let a = i.domain(), [o, s] = a;
|
|
1621
|
+
return {
|
|
1622
|
+
domain: a,
|
|
1623
|
+
values: Array.from({ length: r }, (e, t) => o + (s - o) * t / (r - 1))
|
|
1624
|
+
};
|
|
1625
|
+
}
|
|
1626
|
+
function ar(e, t, n, r) {
|
|
1627
|
+
return Et(e, {
|
|
1628
|
+
axisMin: t[0],
|
|
1629
|
+
axisMax: t[1],
|
|
1630
|
+
topTickValue: Math.max(...n),
|
|
1631
|
+
unit: r
|
|
1632
|
+
});
|
|
1633
|
+
}
|
|
1634
|
+
function or(e) {
|
|
1623
1635
|
return e >= 4 ? [
|
|
1624
1636
|
"left",
|
|
1625
1637
|
"left",
|
|
@@ -1631,13 +1643,13 @@ function rr(e) {
|
|
|
1631
1643
|
"right"
|
|
1632
1644
|
] : e === 2 ? ["left", "right"] : ["left"];
|
|
1633
1645
|
}
|
|
1634
|
-
var
|
|
1635
|
-
function
|
|
1636
|
-
let n =
|
|
1637
|
-
n || (n = /* @__PURE__ */ new Map(),
|
|
1646
|
+
var sr = /* @__PURE__ */ new WeakMap();
|
|
1647
|
+
function cr(e, t) {
|
|
1648
|
+
let n = sr.get(e);
|
|
1649
|
+
n || (n = /* @__PURE__ */ new Map(), sr.set(e, n));
|
|
1638
1650
|
let r = n.get(t);
|
|
1639
1651
|
if (r) return r;
|
|
1640
|
-
let i = t === "multi-axis" ? Math.min(e.visibleSeries.length, 4) : Math.min(e.visibleSeries.length, 1), a =
|
|
1652
|
+
let i = t === "multi-axis" ? Math.min(e.visibleSeries.length, 4) : Math.min(e.visibleSeries.length, 1), a = or(i), o = Array.from({ length: i }, (e, t) => ({
|
|
1641
1653
|
index: t,
|
|
1642
1654
|
side: a[t],
|
|
1643
1655
|
seriesList: [],
|
|
@@ -1654,9 +1666,9 @@ function ar(e, t) {
|
|
|
1654
1666
|
}
|
|
1655
1667
|
}), n.set(t, o), o;
|
|
1656
1668
|
}
|
|
1657
|
-
function
|
|
1669
|
+
function lr(e, t, n, r) {
|
|
1658
1670
|
let i = Gt(e, r);
|
|
1659
|
-
return
|
|
1671
|
+
return cr(e, t).map((e) => {
|
|
1660
1672
|
if (i) return {
|
|
1661
1673
|
...e,
|
|
1662
1674
|
domain: i,
|
|
@@ -1670,50 +1682,53 @@ function or(e, t, n, r) {
|
|
|
1670
1682
|
} : e;
|
|
1671
1683
|
});
|
|
1672
1684
|
}
|
|
1673
|
-
function
|
|
1674
|
-
let a =
|
|
1675
|
-
t
|
|
1676
|
-
|
|
1677
|
-
|
|
1678
|
-
|
|
1679
|
-
|
|
1680
|
-
|
|
1681
|
-
|
|
1682
|
-
|
|
1683
|
-
|
|
1684
|
-
|
|
1685
|
-
|
|
1685
|
+
function ur(e, t, n, r, i) {
|
|
1686
|
+
let a = i?.[e.id];
|
|
1687
|
+
return lr(e, t, n, r).map((e) => !e.fixed && a ? {
|
|
1688
|
+
...e,
|
|
1689
|
+
domain: a
|
|
1690
|
+
} : e);
|
|
1691
|
+
}
|
|
1692
|
+
function dr(e, t = !0, n, r, i = 5, a = !1) {
|
|
1693
|
+
let o = n ? {
|
|
1694
|
+
domain: e,
|
|
1695
|
+
values: n
|
|
1696
|
+
} : ir(e, i, t), s = [o.values];
|
|
1697
|
+
return a && o.values.length > 1 && s.push(o.values.slice(0, -1)), { tickTextWidth: Math.max(1, ...s.flatMap((e) => e.map((t) => ar(t, o.domain, e, r).length))) * Qn };
|
|
1698
|
+
}
|
|
1699
|
+
function fr(e, t, n, r, i, a = !0, o = !1, s) {
|
|
1700
|
+
let c = /* @__PURE__ */ new Map();
|
|
1686
1701
|
e.forEach((e) => {
|
|
1687
|
-
let
|
|
1702
|
+
let l = {
|
|
1688
1703
|
left: 0,
|
|
1689
1704
|
right: 0
|
|
1690
1705
|
};
|
|
1691
|
-
|
|
1692
|
-
let t =
|
|
1693
|
-
|
|
1706
|
+
ur(e, t, n, r, s).forEach((e) => {
|
|
1707
|
+
let t = l[e.side]++, n = `${e.side}:${t}`, r = dr(e.domain, a, void 0, e.seriesList[0]?.unit, i, o).tickTextWidth;
|
|
1708
|
+
c.set(n, Math.max(c.get(n) ?? Qn, r));
|
|
1694
1709
|
});
|
|
1695
1710
|
});
|
|
1696
|
-
let
|
|
1711
|
+
let l = [], u = {
|
|
1697
1712
|
left: 0,
|
|
1698
1713
|
right: 0
|
|
1699
1714
|
};
|
|
1700
1715
|
return ["left", "right"].forEach((e) => {
|
|
1701
|
-
Array.from(
|
|
1702
|
-
let n =
|
|
1703
|
-
|
|
1716
|
+
Array.from(c.keys()).filter((t) => t.startsWith(`${e}:`)).map((t) => Number(t.slice(e.length + 1))).sort((e, t) => e - t).forEach((t) => {
|
|
1717
|
+
let n = c.get(`${e}:${t}`) ?? Qn, r = e === "left" && u.left > 0 ? -u.left : u[e], i = r + (n + $n + tr + nr / 2) * (e === "left" ? -1 : 1), a = n + $n + tr + nr + er;
|
|
1718
|
+
l.push({
|
|
1704
1719
|
side: e,
|
|
1705
1720
|
sideIndex: t,
|
|
1706
1721
|
axisOffset: r,
|
|
1707
1722
|
labelOffset: i,
|
|
1708
1723
|
clearance: a
|
|
1709
|
-
}),
|
|
1724
|
+
}), u[e] += a;
|
|
1710
1725
|
});
|
|
1711
1726
|
}), {
|
|
1712
|
-
slots:
|
|
1713
|
-
clearance:
|
|
1727
|
+
slots: l,
|
|
1728
|
+
clearance: u
|
|
1714
1729
|
};
|
|
1715
1730
|
}
|
|
1716
|
-
function
|
|
1731
|
+
function pr(e, t, n) {
|
|
1717
1732
|
let r = (e) => {
|
|
1718
1733
|
let r = t < e.left ? e.left - t : t > e.left + e.width ? t - e.left - e.width : 0;
|
|
1719
1734
|
return n < e.top ? e.top - n : n > e.top + e.height ? n - (e.top + e.height) : r;
|
|
@@ -1732,12 +1747,12 @@ function lr(e, t, n) {
|
|
|
1732
1747
|
}
|
|
1733
1748
|
//#endregion
|
|
1734
1749
|
//#region src/components/annotation/useWaveformChartAnnotations.ts
|
|
1735
|
-
var
|
|
1736
|
-
function
|
|
1737
|
-
return
|
|
1750
|
+
var mr = 0;
|
|
1751
|
+
function hr() {
|
|
1752
|
+
return mr += 1, typeof crypto < "u" && typeof crypto.randomUUID == "function" ? crypto.randomUUID() : `annotation-${Date.now()}-${mr}`;
|
|
1738
1753
|
}
|
|
1739
|
-
function
|
|
1740
|
-
let { props: t, emit: n, container: r, chartSeries: i, hiddenSeriesIdSet: a, internalHiddenSeriesIds: o, annotationInteraction: s, editorSeriesOptions: c, trackLayouts: l, annotationLayoutsForTrack: u, resolveSeriesYScale: d, chartWidth: f, chartHeight: p, innerWidth: m, resolvedChartLeftMargin: h, titleAreaHeight: g, chartTopMargin: _, activeInteractionMode: v, isPresentationMode: y } = e,
|
|
1754
|
+
function gr(e) {
|
|
1755
|
+
let { props: t, emit: n, container: r, chartSeries: i, hiddenSeriesIdSet: a, internalHiddenSeriesIds: o, annotationInteraction: s, editorSeriesOptions: c, trackLayouts: l, annotationLayoutsForTrack: u, resolveSeriesYScale: d, chartWidth: f, chartHeight: p, innerWidth: m, resolvedChartLeftMargin: h, titleAreaHeight: g, chartTopMargin: _, activeInteractionMode: v, isPresentationMode: y } = e, b = x("");
|
|
1741
1756
|
function S(e) {
|
|
1742
1757
|
if (!i.value.some((t) => t.id === e)) return;
|
|
1743
1758
|
let r = new Set(a.value), s = r.has(e);
|
|
@@ -1755,7 +1770,7 @@ function fr(e) {
|
|
|
1755
1770
|
x: f.value / 2,
|
|
1756
1771
|
y: p.value / 2
|
|
1757
1772
|
};
|
|
1758
|
-
let [r, i] =
|
|
1773
|
+
let [r, i] = U(e, n), a = t === void 0 ? void 0 : l.value[t];
|
|
1759
1774
|
return {
|
|
1760
1775
|
x: h.value + (a ? a.left + r : r),
|
|
1761
1776
|
y: g.value + _.value + (a ? a.top + i : i)
|
|
@@ -1769,7 +1784,7 @@ function fr(e) {
|
|
|
1769
1784
|
};
|
|
1770
1785
|
}
|
|
1771
1786
|
function T(e, t, n) {
|
|
1772
|
-
|
|
1787
|
+
b.value = "", s.openCreate(e, hr, t), c.value = n;
|
|
1773
1788
|
let r = s.editorDraft.value, i = l.value.find((t) => t.index === e.trackIndex)?.seriesList.find((t) => t.id === e.seriesId);
|
|
1774
1789
|
r?.mode === "add" && (r.annotation.style = {
|
|
1775
1790
|
borderColor: i?.color || "#1677ff",
|
|
@@ -1781,14 +1796,14 @@ function fr(e) {
|
|
|
1781
1796
|
if (y.value) return;
|
|
1782
1797
|
let t = s.editorDraft.value, n = c.value.find((t) => t.seriesId === e), r = l.value.find((t) => t.seriesList.some((t) => t.id === e)), i = r?.seriesList.find((t) => t.id === e)?.source, a = i?.pointAt(0), o = i?.pointAt((i?.length ?? 0) - 1), u = t ? i?.nearestPoint(t.annotation.x) : void 0;
|
|
1783
1798
|
if (!t || !n || !r || !a || !o || !u) {
|
|
1784
|
-
|
|
1799
|
+
b.value = "当前波形没有有效数据";
|
|
1785
1800
|
return;
|
|
1786
1801
|
}
|
|
1787
1802
|
if (t.annotation.x < a.x || t.annotation.x > o.x) {
|
|
1788
|
-
|
|
1803
|
+
b.value = "时间超出当前波形范围";
|
|
1789
1804
|
return;
|
|
1790
1805
|
}
|
|
1791
|
-
|
|
1806
|
+
b.value = "", t.annotation = {
|
|
1792
1807
|
...t.annotation,
|
|
1793
1808
|
seriesId: e,
|
|
1794
1809
|
y: u.y,
|
|
@@ -1802,39 +1817,39 @@ function fr(e) {
|
|
|
1802
1817
|
if (y.value) return;
|
|
1803
1818
|
let n = s.editorDraft.value, r = Number(e);
|
|
1804
1819
|
if (!n || !Number.isFinite(r)) {
|
|
1805
|
-
|
|
1820
|
+
b.value = "请输入有效的时间";
|
|
1806
1821
|
return;
|
|
1807
1822
|
}
|
|
1808
1823
|
let i = t.timeUnit === "ms" ? r / 1e3 : r, a = l.value.find((e) => e.seriesList.some((e) => e.id === n.annotation.seriesId))?.seriesList.find((e) => e.id === n.annotation.seriesId)?.source, o = a?.pointAt(0), c = a?.pointAt((a?.length ?? 0) - 1);
|
|
1809
1824
|
if (!a || !o || !c) {
|
|
1810
|
-
|
|
1825
|
+
b.value = "当前波形没有有效数据";
|
|
1811
1826
|
return;
|
|
1812
1827
|
}
|
|
1813
1828
|
if (i < o.x || i > c.x) {
|
|
1814
|
-
|
|
1829
|
+
b.value = "时间超出当前波形范围";
|
|
1815
1830
|
return;
|
|
1816
1831
|
}
|
|
1817
1832
|
let u = a.nearestPoint(i);
|
|
1818
|
-
|
|
1833
|
+
b.value = "", n.annotation = {
|
|
1819
1834
|
...n.annotation,
|
|
1820
1835
|
x: u.x,
|
|
1821
1836
|
y: u.y
|
|
1822
1837
|
};
|
|
1823
1838
|
}
|
|
1824
1839
|
function O() {
|
|
1825
|
-
|
|
1840
|
+
b.value = "", s.closeEditor(), c.value = [];
|
|
1826
1841
|
}
|
|
1827
1842
|
function k(e, t, n) {
|
|
1828
1843
|
if (n !== void 0) {
|
|
1829
1844
|
let e = l.value[n];
|
|
1830
1845
|
return e?.hasVisibleSeries ? e : void 0;
|
|
1831
1846
|
}
|
|
1832
|
-
return
|
|
1847
|
+
return pr(l.value.filter((e) => e.hasVisibleSeries), e, t);
|
|
1833
1848
|
}
|
|
1834
1849
|
function A(e, t) {
|
|
1835
1850
|
let n = e.currentTarget;
|
|
1836
1851
|
if (!n || !l.value.length) return null;
|
|
1837
|
-
let [r, i] =
|
|
1852
|
+
let [r, i] = U(e, n), a = t === void 0 ? i : i + (l.value[t]?.top ?? 0), o = k(r, a, t);
|
|
1838
1853
|
if (!o) return null;
|
|
1839
1854
|
let s = Math.max(0, Math.min(m.value, r)), c = Math.max(0, Math.min(o.width, s - o.left)), d = o.xScale.invert(c);
|
|
1840
1855
|
return {
|
|
@@ -1885,7 +1900,7 @@ function fr(e) {
|
|
|
1885
1900
|
}
|
|
1886
1901
|
function L() {
|
|
1887
1902
|
if (y.value) return;
|
|
1888
|
-
|
|
1903
|
+
b.value = "";
|
|
1889
1904
|
let e = s.contextMenu.value, n = t.annotations.find((t) => t.id === e?.annotationId);
|
|
1890
1905
|
if (!n) return;
|
|
1891
1906
|
let r = l.value.find((e) => e.seriesList.some((e) => e.id === n.seriesId));
|
|
@@ -1899,13 +1914,13 @@ function fr(e) {
|
|
|
1899
1914
|
function z(e) {
|
|
1900
1915
|
if (y.value) return;
|
|
1901
1916
|
let r = s.editorDraft.value;
|
|
1902
|
-
!r ||
|
|
1917
|
+
!r || b.value || (r.mode === "add" ? (n("update:annotations", [...t.annotations, e]), n("annotation-create", e)) : (n("update:annotations", t.annotations.map((t) => t.id === e.id ? e : t)), n("annotation-update", e, r.previous)), O());
|
|
1903
1918
|
}
|
|
1904
1919
|
return {
|
|
1905
1920
|
toggleSeriesVisibility: S,
|
|
1906
1921
|
changeDraftSeries: E,
|
|
1907
1922
|
changeDraftTime: D,
|
|
1908
|
-
timeError:
|
|
1923
|
+
timeError: b,
|
|
1909
1924
|
cancelAnnotation: O,
|
|
1910
1925
|
resolveTrackAtPointer: k,
|
|
1911
1926
|
handleAnnotationClick: M,
|
|
@@ -1920,7 +1935,7 @@ function fr(e) {
|
|
|
1920
1935
|
}
|
|
1921
1936
|
//#endregion
|
|
1922
1937
|
//#region src/components/interaction/useWaveformHover.ts
|
|
1923
|
-
function
|
|
1938
|
+
function _r(e) {
|
|
1924
1939
|
let { emit: t, hoverState: n, suppressHoverUntilMove: r, hoverThrottle: i, selection: a, trackLayouts: o, innerWidth: s, resolvedChartLeftMargin: c, titleAreaHeight: l, chartTopMargin: u, sharedOverlayElement: d, isPresentationMode: f, updateViewportDrag: p, resolveTrackAtPointer: m } = e, h = () => i.cancel(), g = (e) => i.schedule(e), _ = (e) => n.points.length === e.length && e.every((e, t) => {
|
|
1925
1940
|
let r = n.points[t];
|
|
1926
1941
|
return r?.id === e.id && r.trackIndex === e.trackIndex && r.point === e.point;
|
|
@@ -1943,12 +1958,12 @@ function pr(e) {
|
|
|
1943
1958
|
}, C = (e = !1) => {
|
|
1944
1959
|
r.value = !e, y();
|
|
1945
1960
|
}, w = () => r.value ? (r.value = !1, y(), !0) : !1, T = (e, t) => {
|
|
1946
|
-
let n = e.source ??
|
|
1961
|
+
let n = e.source ?? Z(e.points), r = n.pointAt(0), i = n.pointAt(n.length - 1);
|
|
1947
1962
|
if (!(!r || !i)) return t <= r.x ? r : t >= i.x ? i : n.nearestPoint(t);
|
|
1948
1963
|
}, E = (e, t) => {
|
|
1949
1964
|
let n, r = -Infinity;
|
|
1950
1965
|
if (e.seriesList.forEach((e) => {
|
|
1951
|
-
let t = e.source ??
|
|
1966
|
+
let t = e.source ?? Z(e.points), i = t.pointAt(0), a = t.pointAt(t.length - 1);
|
|
1952
1967
|
if (!i || !a) return;
|
|
1953
1968
|
let o = a.x - i.x;
|
|
1954
1969
|
o > r && (r = o, n = [i.x, a.x]);
|
|
@@ -1969,7 +1984,7 @@ function pr(e) {
|
|
|
1969
1984
|
if (w()) return;
|
|
1970
1985
|
let n = e.currentTarget;
|
|
1971
1986
|
if (!n) return;
|
|
1972
|
-
let [r, i] =
|
|
1987
|
+
let [r, i] = U(e, n), d = o.value[t];
|
|
1973
1988
|
!d || !d.hasVisibleSeries || g(() => {
|
|
1974
1989
|
let e = o.value[t];
|
|
1975
1990
|
if (!e || !e.hasVisibleSeries || e !== d) return;
|
|
@@ -1987,7 +2002,7 @@ function pr(e) {
|
|
|
1987
2002
|
return;
|
|
1988
2003
|
}
|
|
1989
2004
|
if (w() || !d.value || !o.value.length) return;
|
|
1990
|
-
let [t, n] =
|
|
2005
|
+
let [t, n] = U(e, d.value);
|
|
1991
2006
|
g(() => {
|
|
1992
2007
|
let e = m(t, n), r = (e?.hasVisibleSeries ? e : void 0) ?? o.value.find((e) => e.hasVisibleSeries);
|
|
1993
2008
|
if (!r) return;
|
|
@@ -2005,14 +2020,14 @@ function pr(e) {
|
|
|
2005
2020
|
}
|
|
2006
2021
|
//#endregion
|
|
2007
2022
|
//#region src/components/interaction/pointerCapture.ts
|
|
2008
|
-
function
|
|
2023
|
+
function vr(e, t) {
|
|
2009
2024
|
try {
|
|
2010
2025
|
e?.releasePointerCapture?.(t);
|
|
2011
2026
|
} catch {}
|
|
2012
2027
|
}
|
|
2013
2028
|
//#endregion
|
|
2014
2029
|
//#region src/components/interaction/viewportInteractionState.ts
|
|
2015
|
-
function
|
|
2030
|
+
function yr(e) {
|
|
2016
2031
|
return {
|
|
2017
2032
|
...e,
|
|
2018
2033
|
currentX: e.startX,
|
|
@@ -2021,37 +2036,37 @@ function hr(e) {
|
|
|
2021
2036
|
yDomains: Object.fromEntries(Object.entries(e.yDomains).map(([e, t]) => [e, [...t]]))
|
|
2022
2037
|
};
|
|
2023
2038
|
}
|
|
2024
|
-
function
|
|
2039
|
+
function br(e, t) {
|
|
2025
2040
|
return {
|
|
2026
2041
|
...e,
|
|
2027
2042
|
...t
|
|
2028
2043
|
};
|
|
2029
2044
|
}
|
|
2030
|
-
function
|
|
2045
|
+
function xr(e) {
|
|
2031
2046
|
return {
|
|
2032
2047
|
state: e,
|
|
2033
2048
|
accepted: !1,
|
|
2034
2049
|
completed: null
|
|
2035
2050
|
};
|
|
2036
2051
|
}
|
|
2037
|
-
function
|
|
2052
|
+
function Sr(e, t) {
|
|
2038
2053
|
switch (t.type) {
|
|
2039
|
-
case "begin": return e ?
|
|
2040
|
-
state:
|
|
2054
|
+
case "begin": return e ? xr(e) : {
|
|
2055
|
+
state: yr(t.gesture),
|
|
2041
2056
|
accepted: !0,
|
|
2042
2057
|
completed: null
|
|
2043
2058
|
};
|
|
2044
|
-
case "move": return !e || e.pointerId !== t.pointerId ?
|
|
2045
|
-
state:
|
|
2059
|
+
case "move": return !e || e.pointerId !== t.pointerId ? xr(e) : {
|
|
2060
|
+
state: br(e, t.position),
|
|
2046
2061
|
accepted: !0,
|
|
2047
2062
|
completed: null
|
|
2048
2063
|
};
|
|
2049
|
-
case "finish": return !e || e.pointerId !== t.pointerId ?
|
|
2064
|
+
case "finish": return !e || e.pointerId !== t.pointerId ? xr(e) : {
|
|
2050
2065
|
state: null,
|
|
2051
2066
|
accepted: !0,
|
|
2052
|
-
completed:
|
|
2067
|
+
completed: br(e, t.position)
|
|
2053
2068
|
};
|
|
2054
|
-
case "cancel": return !e || t.pointerId !== void 0 && e.pointerId !== t.pointerId ?
|
|
2069
|
+
case "cancel": return !e || t.pointerId !== void 0 && e.pointerId !== t.pointerId ? xr(e) : {
|
|
2055
2070
|
state: null,
|
|
2056
2071
|
accepted: !0,
|
|
2057
2072
|
completed: null
|
|
@@ -2065,32 +2080,32 @@ function vr(e, t) {
|
|
|
2065
2080
|
}
|
|
2066
2081
|
//#endregion
|
|
2067
2082
|
//#region src/components/interaction/zoomConstraints.ts
|
|
2068
|
-
var
|
|
2069
|
-
function
|
|
2083
|
+
var Cr = /* @__PURE__ */ new WeakMap();
|
|
2084
|
+
function wr(e) {
|
|
2070
2085
|
return e[0] <= e[1] ? [...e] : [e[1], e[0]];
|
|
2071
2086
|
}
|
|
2072
|
-
function
|
|
2087
|
+
function Tr(e) {
|
|
2073
2088
|
return Number.isFinite(e) && (e ?? 0) > 0 ? Math.ceil(e) : 0;
|
|
2074
2089
|
}
|
|
2075
|
-
function
|
|
2076
|
-
let n = `${t[0]}\u0000${t[1]}`, r =
|
|
2090
|
+
function Er(e, t) {
|
|
2091
|
+
let n = `${t[0]}\u0000${t[1]}`, r = Cr.get(e)?.get(n);
|
|
2077
2092
|
if (r) return r;
|
|
2078
2093
|
let i = /* @__PURE__ */ new Set();
|
|
2079
2094
|
for (let n of e) {
|
|
2080
|
-
let e = n.source ??
|
|
2095
|
+
let e = n.source ?? Z(n.points);
|
|
2081
2096
|
for (let n = 0; n < e.length; n += 1) {
|
|
2082
2097
|
let r = e.pointAt(n);
|
|
2083
2098
|
r.x >= t[0] && r.x <= t[1] && i.add(r.x);
|
|
2084
2099
|
}
|
|
2085
2100
|
}
|
|
2086
|
-
let a = Array.from(i).sort((e, t) => e - t), o =
|
|
2087
|
-
return o.set(n, a),
|
|
2101
|
+
let a = Array.from(i).sort((e, t) => e - t), o = Cr.get(e) ?? /* @__PURE__ */ new Map();
|
|
2102
|
+
return o.set(n, a), Cr.set(e, o), a;
|
|
2088
2103
|
}
|
|
2089
|
-
function
|
|
2104
|
+
function Dr(e, t, n) {
|
|
2090
2105
|
if (n <= 1) return 0;
|
|
2091
2106
|
let r = 0;
|
|
2092
2107
|
for (let i of e) {
|
|
2093
|
-
let e =
|
|
2108
|
+
let e = Er(i, t);
|
|
2094
2109
|
if (e.length < n) return t[1] - t[0];
|
|
2095
2110
|
let a = Infinity;
|
|
2096
2111
|
for (let t = 0; t + n <= e.length; t += 1) a = Math.min(a, e[t + n - 1] - e[t]);
|
|
@@ -2099,17 +2114,17 @@ function Cr(e, t, n) {
|
|
|
2099
2114
|
}
|
|
2100
2115
|
return r;
|
|
2101
2116
|
}
|
|
2102
|
-
function
|
|
2103
|
-
let r =
|
|
2117
|
+
function Or(e, t, n) {
|
|
2118
|
+
let r = wr(e), i = r[1] - r[0];
|
|
2104
2119
|
if (!Number.isFinite(i) || i <= 0) return 0;
|
|
2105
|
-
let a = Number.isFinite(n.minZoomSpan) && (n.minZoomSpan ?? 0) > 0 ? Math.min(i, n.minZoomSpan) : 0, o =
|
|
2120
|
+
let a = Number.isFinite(n.minZoomSpan) && (n.minZoomSpan ?? 0) > 0 ? Math.min(i, n.minZoomSpan) : 0, o = Tr(n.minVisiblePoints), s = Dr(t, r, o), c = Number(n.maxZoomScale), l = Number.isFinite(c) && c >= Rt.MIN_SCALE ? i / c : n.maxZoomScale !== null && a === 0 && o === 0 ? i / Rt.DEFAULT_MAX_SCALE : 0;
|
|
2106
2121
|
return Math.max(a, s, l);
|
|
2107
2122
|
}
|
|
2108
|
-
function
|
|
2123
|
+
function kr(e, t, n, r) {
|
|
2109
2124
|
if (r <= 0) return e;
|
|
2110
2125
|
let i = 2 ** -52 * Math.max(1, Math.abs(t[0]), Math.abs(t[1])) * 16, a = e;
|
|
2111
2126
|
for (let e of n) {
|
|
2112
|
-
let n =
|
|
2127
|
+
let n = Er(e, t);
|
|
2113
2128
|
if (n.length < r) return [...t];
|
|
2114
2129
|
if (n.filter((e) => e >= a[0] && e <= a[1]).length >= r) continue;
|
|
2115
2130
|
let o, s = Infinity, c = Infinity, l = (a[0] + a[1]) / 2;
|
|
@@ -2121,21 +2136,21 @@ function Tr(e, t, n, r) {
|
|
|
2121
2136
|
}
|
|
2122
2137
|
return a;
|
|
2123
2138
|
}
|
|
2124
|
-
function
|
|
2125
|
-
let i =
|
|
2139
|
+
function Ar(e, t, n, r) {
|
|
2140
|
+
let i = wr(t), a = i[1] - i[0];
|
|
2126
2141
|
if (!Number.isFinite(a) || a <= 0 || Math.abs(e[1] - e[0]) >= a * .999999999999) return i;
|
|
2127
|
-
let o =
|
|
2142
|
+
let o = kr([Math.max(i[0], Math.min(e[0], e[1])), Math.min(i[1], Math.max(e[0], e[1]))], i, n, Tr(r.minVisiblePoints)), s = Or(i, n, r), c = Math.max(s, Math.min(a, o[1] - o[0])), l = (o[0] + o[1]) / 2, u = Math.max(i[0], Math.min(l - c / 2, i[1] - c));
|
|
2128
2143
|
return [u, u + c];
|
|
2129
2144
|
}
|
|
2130
|
-
function
|
|
2145
|
+
function jr(e, t, n) {
|
|
2131
2146
|
let r = t[1] - t[0], i = e[1] - e[0];
|
|
2132
|
-
if (!Number.isFinite(r) || !Number.isFinite(i) || r <= 0 || i <= 0) return
|
|
2133
|
-
let a = r / i, o =
|
|
2134
|
-
return
|
|
2147
|
+
if (!Number.isFinite(r) || !Number.isFinite(i) || r <= 0 || i <= 0) return J;
|
|
2148
|
+
let a = r / i, o = W(t, [0, n]);
|
|
2149
|
+
return J.translate(-a * o(e[0]), 0).scale(a);
|
|
2135
2150
|
}
|
|
2136
2151
|
//#endregion
|
|
2137
2152
|
//#region src/components/interaction/viewportDomain.ts
|
|
2138
|
-
function
|
|
2153
|
+
function Mr(e) {
|
|
2139
2154
|
return (t, n) => {
|
|
2140
2155
|
if (!(!Number.isFinite(t[0]) || !Number.isFinite(t[1]) || t[0] === t[1])) {
|
|
2141
2156
|
if (e.cancelPendingZoom(), e.cancelViewportDrag(), e.props.displayMode === "independent") {
|
|
@@ -2143,12 +2158,12 @@ function Or(e) {
|
|
|
2143
2158
|
r.forEach((n) => {
|
|
2144
2159
|
let r = e.trackLayouts.value.find((e) => e.index === n);
|
|
2145
2160
|
if (!r) return;
|
|
2146
|
-
let a = e.resolveInitialTrackDomain(r), o =
|
|
2147
|
-
i[n] =
|
|
2161
|
+
let a = e.resolveInitialTrackDomain(r), o = Ar(t, a, [r.seriesList], e.props);
|
|
2162
|
+
i[n] = jr(o, a, r.width);
|
|
2148
2163
|
}), e.independentTransforms.value = i;
|
|
2149
2164
|
} else {
|
|
2150
|
-
let n = e.initialXDomain.value, r =
|
|
2151
|
-
e.sharedTransform.value =
|
|
2165
|
+
let n = e.initialXDomain.value, r = Ar(t, n, e.trackLayouts.value.filter((e) => e.hasVisibleSeries).map((e) => e.seriesList), e.props);
|
|
2166
|
+
e.sharedTransform.value = jr(r, n, e.innerWidth.value);
|
|
2152
2167
|
}
|
|
2153
2168
|
e.clearHover(), e.editorSeriesOptions.value = [], f(e.configureZoom);
|
|
2154
2169
|
}
|
|
@@ -2156,14 +2171,14 @@ function Or(e) {
|
|
|
2156
2171
|
}
|
|
2157
2172
|
//#endregion
|
|
2158
2173
|
//#region src/components/interaction/zoomEventPayload.ts
|
|
2159
|
-
function
|
|
2174
|
+
function Nr(e) {
|
|
2160
2175
|
return [...e].sort().join("\0");
|
|
2161
2176
|
}
|
|
2162
|
-
function
|
|
2163
|
-
let n =
|
|
2164
|
-
return e.find((e) =>
|
|
2177
|
+
function Pr(e, t) {
|
|
2178
|
+
let n = Nr(t);
|
|
2179
|
+
return e.find((e) => Nr(e.seriesList.map((e) => e.id)) === n);
|
|
2165
2180
|
}
|
|
2166
|
-
function
|
|
2181
|
+
function Fr(e, t, n, r) {
|
|
2167
2182
|
e("zoom-intent", r ? {
|
|
2168
2183
|
start: t[0],
|
|
2169
2184
|
end: t[1],
|
|
@@ -2176,9 +2191,9 @@ function jr(e, t, n, r) {
|
|
|
2176
2191
|
gesture: "box"
|
|
2177
2192
|
});
|
|
2178
2193
|
}
|
|
2179
|
-
function
|
|
2194
|
+
function Ir(e, t, n) {
|
|
2180
2195
|
for (let r of n) {
|
|
2181
|
-
let n =
|
|
2196
|
+
let n = Pr(t, r);
|
|
2182
2197
|
if (!n) continue;
|
|
2183
2198
|
let i = n.xScale.domain(), a = n.yScale.domain();
|
|
2184
2199
|
e("zoom-end", {
|
|
@@ -2192,7 +2207,7 @@ function Mr(e, t, n) {
|
|
|
2192
2207
|
});
|
|
2193
2208
|
}
|
|
2194
2209
|
}
|
|
2195
|
-
function
|
|
2210
|
+
function Lr(e, t, n) {
|
|
2196
2211
|
let r = n.filter((e) => e.hasVisibleSeries);
|
|
2197
2212
|
if (r.length === 1) {
|
|
2198
2213
|
let n = r[0]?.yScale.domain();
|
|
@@ -2214,13 +2229,13 @@ function Nr(e, t, n) {
|
|
|
2214
2229
|
}
|
|
2215
2230
|
//#endregion
|
|
2216
2231
|
//#region src/components/interaction/useWaveformViewport.ts
|
|
2217
|
-
function
|
|
2218
|
-
let { props: n, emit: r, selection: i, spacePressed: a, trackLayouts: o, chartTracks: s, initialXDomain: c, innerWidth: l, innerHeight: u, sharedOverlayElement: d, sharedTransform: p, independentTransforms: m, sharedYDomains: h, independentYDomains: g, isZoomMode: _, isPresentationMode: v, editorSeriesOptions: y, resolveInitialTrackDomain: b, canZoomTrack: x, canZoomSharedTracks: S, configureZoom:
|
|
2232
|
+
function Rr(e) {
|
|
2233
|
+
let { props: n, emit: r, selection: i, spacePressed: a, trackLayouts: o, chartTracks: s, initialXDomain: c, innerWidth: l, innerHeight: u, sharedOverlayElement: d, sharedTransform: p, independentTransforms: m, sharedYDomains: h, independentYDomains: g, isZoomMode: _, isPresentationMode: v, editorSeriesOptions: y, resolveInitialTrackDomain: b, canZoomTrack: x, canZoomSharedTracks: S, configureZoom: C, cancelPendingZoom: T, clearHover: E, resolveTrackAtPointer: D } = e, O = w(), k = (e, t) => {
|
|
2219
2234
|
let n = O.value, r = t?.currentTarget;
|
|
2220
|
-
|
|
2235
|
+
vr(n, e), r && r !== n && vr(r, e);
|
|
2221
2236
|
}, A = (e, t) => {
|
|
2222
2237
|
let n = i.value;
|
|
2223
|
-
!n || n.pointerId !== e || (k(e, t), i.value =
|
|
2238
|
+
!n || n.pointerId !== e || (k(e, t), i.value = Sr(i.value, {
|
|
2224
2239
|
type: "cancel",
|
|
2225
2240
|
pointerId: e
|
|
2226
2241
|
}).state, O.value = void 0);
|
|
@@ -2243,7 +2258,7 @@ function Pr(e) {
|
|
|
2243
2258
|
if (!n.zoomable && !s || !_.value || e.button !== 0) return;
|
|
2244
2259
|
let c = e.currentTarget, d = o.value.find((e) => e.index === t);
|
|
2245
2260
|
if (!d) return;
|
|
2246
|
-
let [f, p] =
|
|
2261
|
+
let [f, p] = U(e, c), m = Math.max(0, Math.min(r ? d.width : l.value, f)), h = Math.max(0, Math.min(r ? d.height : u.value, p)), g = Sr(i.value, {
|
|
2247
2262
|
type: "begin",
|
|
2248
2263
|
gesture: {
|
|
2249
2264
|
trackIndex: t,
|
|
@@ -2259,14 +2274,14 @@ function Pr(e) {
|
|
|
2259
2274
|
g.accepted && (i.value = g.state, O.value = c, c.setPointerCapture?.(e.pointerId), E(), e.preventDefault());
|
|
2260
2275
|
}, F = (e) => {
|
|
2261
2276
|
if (!d.value) return;
|
|
2262
|
-
let [t, n] =
|
|
2277
|
+
let [t, n] = U(e, d.value), r = D(t, n), i = (r?.hasVisibleSeries ? r : void 0) ?? o.value.find((e) => e.hasVisibleSeries);
|
|
2263
2278
|
i && P(e, i.index, !1);
|
|
2264
2279
|
}, I = (e, t) => {
|
|
2265
2280
|
let i = t.width || 1, a = t.height || 1, u = e.currentX - e.startX, d = e.currentY - e.startY, f = e.xDomain[1] - e.xDomain[0], _ = e.independent ? b(t) : c.value, v = M([e.xDomain[0] - u / i * f, e.xDomain[1] - u / i * f], _);
|
|
2266
2281
|
if (e.independent) {
|
|
2267
2282
|
let e = [...m.value];
|
|
2268
|
-
e[t.index] =
|
|
2269
|
-
} else p.value =
|
|
2283
|
+
e[t.index] = jr(v, _, i), m.value = e;
|
|
2284
|
+
} else p.value = jr(v, _, l.value);
|
|
2270
2285
|
let y = e.independent ? [t] : o.value.filter((e) => e.hasVisibleSeries), x = { ...g.value }, S = { ...h.value };
|
|
2271
2286
|
y.forEach((t) => {
|
|
2272
2287
|
let r = s.value.find((e) => e.id === t.id);
|
|
@@ -2280,7 +2295,7 @@ function Pr(e) {
|
|
|
2280
2295
|
if (!t || !n || e.pointerId !== t.pointerId) return;
|
|
2281
2296
|
let r = o.value.find((e) => e.index === t.trackIndex);
|
|
2282
2297
|
if (!r) return;
|
|
2283
|
-
let [a, s] =
|
|
2298
|
+
let [a, s] = U(e, n), c = Math.max(0, Math.min(t.independent ? r.width : l.value, a)), d = Math.max(0, Math.min(t.independent ? r.height : u.value, s)), f = Sr(i.value, {
|
|
2284
2299
|
type: "move",
|
|
2285
2300
|
pointerId: e.pointerId,
|
|
2286
2301
|
position: {
|
|
@@ -2299,12 +2314,12 @@ function Pr(e) {
|
|
|
2299
2314
|
if (!t || (e.independent ? !x(t) : !S())) return;
|
|
2300
2315
|
let i = e.independent ? 0 : t.left, a = Math.max(0, Math.min(t.width, Math.min(e.startX, e.currentX) - i)), s = Math.max(0, Math.min(t.width, Math.max(e.startX, e.currentX) - i));
|
|
2301
2316
|
if (s - a < 6) return;
|
|
2302
|
-
let u = e.independent ? b(t) : c.value, d = e.independent ? [t.seriesList] : o.value.filter((e) => e.hasVisibleSeries).map((e) => e.seriesList), h =
|
|
2317
|
+
let u = e.independent ? b(t) : c.value, d = e.independent ? [t.seriesList] : o.value.filter((e) => e.hasVisibleSeries).map((e) => e.seriesList), h = Ar([t.xScale.invert(a), t.xScale.invert(s)], u, d, n);
|
|
2303
2318
|
if (e.independent) {
|
|
2304
2319
|
let e = [...m.value];
|
|
2305
|
-
e[t.index] =
|
|
2306
|
-
} else p.value =
|
|
2307
|
-
|
|
2320
|
+
e[t.index] = jr(h, u, t.width), m.value = e;
|
|
2321
|
+
} else p.value = jr(h, u, l.value);
|
|
2322
|
+
Fr(r, h, t, e.independent);
|
|
2308
2323
|
let g = e.independent ? [t] : o.value.filter((e) => e.hasVisibleSeries), _ = Object.fromEntries(g.map((e) => [e.series?.trackId ?? e.series?.id ?? e.id, e.yScale.domain()]));
|
|
2309
2324
|
if (r("zoom-change", h), e.independent) {
|
|
2310
2325
|
let e = _[t.series?.trackId ?? t.series?.id ?? t.id];
|
|
@@ -2332,7 +2347,7 @@ function Pr(e) {
|
|
|
2332
2347
|
yRanges: _,
|
|
2333
2348
|
gesture: "box"
|
|
2334
2349
|
});
|
|
2335
|
-
f(
|
|
2350
|
+
f(C);
|
|
2336
2351
|
}, B = (e) => {
|
|
2337
2352
|
if (v.value) {
|
|
2338
2353
|
R();
|
|
@@ -2345,7 +2360,7 @@ function Pr(e) {
|
|
|
2345
2360
|
A(t.pointerId, e);
|
|
2346
2361
|
return;
|
|
2347
2362
|
}
|
|
2348
|
-
let [a, s] =
|
|
2363
|
+
let [a, s] = U(e, r), c = Math.max(0, Math.min(t.independent ? n.width : l.value, a)), d = Math.max(0, Math.min(t.independent ? n.height : u.value, s)), p = Sr(i.value, {
|
|
2349
2364
|
type: "finish",
|
|
2350
2365
|
pointerId: e.pointerId,
|
|
2351
2366
|
position: {
|
|
@@ -2355,7 +2370,7 @@ function Pr(e) {
|
|
|
2355
2370
|
}).completed;
|
|
2356
2371
|
if (p) {
|
|
2357
2372
|
if (i.value = null, k(p.pointerId, e), O.value = void 0, e.preventDefault(), p.kind === "pan") {
|
|
2358
|
-
I(p, n), f(
|
|
2373
|
+
I(p, n), f(C);
|
|
2359
2374
|
return;
|
|
2360
2375
|
}
|
|
2361
2376
|
Math.abs(p.currentX - p.startX) >= 6 && z(p);
|
|
@@ -2363,11 +2378,11 @@ function Pr(e) {
|
|
|
2363
2378
|
}, V = (e) => {
|
|
2364
2379
|
if (T(), R(), n.displayMode === "independent" && e !== void 0) {
|
|
2365
2380
|
let t = [...m.value];
|
|
2366
|
-
t[e] =
|
|
2381
|
+
t[e] = J, m.value = t;
|
|
2367
2382
|
let n = { ...g.value };
|
|
2368
2383
|
delete n[e], g.value = n;
|
|
2369
|
-
} else p.value =
|
|
2370
|
-
E(), y.value = [], f(
|
|
2384
|
+
} else p.value = J, m.value = s.value.map(() => J), h.value = {}, g.value = {};
|
|
2385
|
+
E(), y.value = [], f(C);
|
|
2371
2386
|
};
|
|
2372
2387
|
return {
|
|
2373
2388
|
selectionBox: j,
|
|
@@ -2377,7 +2392,7 @@ function Pr(e) {
|
|
|
2377
2392
|
finishViewportDrag: B,
|
|
2378
2393
|
cancelViewportDrag: R,
|
|
2379
2394
|
resetViewport: V,
|
|
2380
|
-
setViewportDomain:
|
|
2395
|
+
setViewportDomain: Mr({
|
|
2381
2396
|
props: n,
|
|
2382
2397
|
trackLayouts: o,
|
|
2383
2398
|
initialXDomain: c,
|
|
@@ -2389,7 +2404,7 @@ function Pr(e) {
|
|
|
2389
2404
|
cancelViewportDrag: R,
|
|
2390
2405
|
clearHover: E,
|
|
2391
2406
|
editorSeriesOptions: y,
|
|
2392
|
-
configureZoom:
|
|
2407
|
+
configureZoom: C
|
|
2393
2408
|
}),
|
|
2394
2409
|
requestViewportReset: (e) => {
|
|
2395
2410
|
if (!(v.value || !n.zoomable || !_.value)) {
|
|
@@ -2409,7 +2424,7 @@ function Pr(e) {
|
|
|
2409
2424
|
}
|
|
2410
2425
|
//#endregion
|
|
2411
2426
|
//#region src/components/utils/useAnimationFrameThrottle.ts
|
|
2412
|
-
function
|
|
2427
|
+
function zr() {
|
|
2413
2428
|
let e = null, t = null;
|
|
2414
2429
|
function n(n) {
|
|
2415
2430
|
t = n, e === null && (e = requestAnimationFrame(() => {
|
|
@@ -2438,11 +2453,11 @@ function Fr() {
|
|
|
2438
2453
|
}
|
|
2439
2454
|
//#endregion
|
|
2440
2455
|
//#region src/components/interaction/useWaveformZoom.ts
|
|
2441
|
-
function
|
|
2442
|
-
let { props: t, emit: n, svgElement: r, sharedOverlayElement: i, sharedTransform: a, independentTransforms: o, trackLayouts: s, initialXDomain: c, sharedZoomDomain: l, innerWidth: u, innerHeight: d, hasChartArea: f, isZoomMode: p, isPresentationMode: m, resolveInitialTrackDomain: h, cancelPendingHover: g } = e, _ = /* @__PURE__ */ new Map(), v =
|
|
2456
|
+
function Br(e) {
|
|
2457
|
+
let { props: t, emit: n, svgElement: r, sharedOverlayElement: i, sharedTransform: a, independentTransforms: o, trackLayouts: s, initialXDomain: c, sharedZoomDomain: l, innerWidth: u, innerHeight: d, hasChartArea: f, isZoomMode: p, isPresentationMode: m, resolveInitialTrackDomain: h, cancelPendingHover: g } = e, _ = /* @__PURE__ */ new Map(), v = zr(), y = !1, b = null, x = null, S = null, C = /* @__PURE__ */ new Map(), w = /* @__PURE__ */ new Map(), T = /* @__PURE__ */ new Map(), E, D = !1, O = 0, k = () => v.schedule(M), A = (e) => {
|
|
2443
2458
|
if (y || m.value) return;
|
|
2444
2459
|
g(), b = e.transform, x = "wheel", I();
|
|
2445
|
-
let t = e.transform.rescaleX(
|
|
2460
|
+
let t = e.transform.rescaleX(W(c.value, [0, u.value])).domain();
|
|
2446
2461
|
n("zoom-intent", {
|
|
2447
2462
|
start: t[0],
|
|
2448
2463
|
end: t[1],
|
|
@@ -2453,7 +2468,7 @@ function Ir(e) {
|
|
|
2453
2468
|
g(), C.set(t, e.transform), w.set(t, "wheel"), I();
|
|
2454
2469
|
let r = s.value.find((e) => e.index === t);
|
|
2455
2470
|
if (r) {
|
|
2456
|
-
let i = e.transform.rescaleX(
|
|
2471
|
+
let i = e.transform.rescaleX(W(h(r), [0, r.width])).domain();
|
|
2457
2472
|
n("zoom-intent", {
|
|
2458
2473
|
start: i[0],
|
|
2459
2474
|
end: i[1],
|
|
@@ -2472,7 +2487,7 @@ function Ir(e) {
|
|
|
2472
2487
|
if (b) {
|
|
2473
2488
|
let e = b;
|
|
2474
2489
|
b = null, S = x, x = null, a.value = e;
|
|
2475
|
-
let t = e.rescaleX(
|
|
2490
|
+
let t = e.rescaleX(W(c.value, [0, u.value])).domain();
|
|
2476
2491
|
n("zoom-change", [t[0], t[1]]);
|
|
2477
2492
|
}
|
|
2478
2493
|
if (!C.size) return;
|
|
@@ -2486,7 +2501,7 @@ function Ir(e) {
|
|
|
2486
2501
|
if (!t) return;
|
|
2487
2502
|
if (r.get(e) === "wheel") {
|
|
2488
2503
|
let e = t.seriesList.map((e) => e.id);
|
|
2489
|
-
T.set(
|
|
2504
|
+
T.set(Nr(e), e);
|
|
2490
2505
|
}
|
|
2491
2506
|
let a = t.xScale.domain();
|
|
2492
2507
|
n("zoom-change", [a[0], a[1]]);
|
|
@@ -2494,14 +2509,14 @@ function Ir(e) {
|
|
|
2494
2509
|
}
|
|
2495
2510
|
let N = () => {
|
|
2496
2511
|
if (t.displayMode === "independent") {
|
|
2497
|
-
|
|
2512
|
+
Ir(n, s.value, T.values()), T.clear();
|
|
2498
2513
|
return;
|
|
2499
2514
|
}
|
|
2500
2515
|
if (S !== "wheel") {
|
|
2501
2516
|
S = null;
|
|
2502
2517
|
return;
|
|
2503
2518
|
}
|
|
2504
|
-
|
|
2519
|
+
Lr(n, l.value, s.value), S = null;
|
|
2505
2520
|
}, P = () => {
|
|
2506
2521
|
v.flush(), M(), !(S === "wheel" || T.size) && N();
|
|
2507
2522
|
}, F = (e) => {
|
|
@@ -2517,28 +2532,28 @@ function Ir(e) {
|
|
|
2517
2532
|
}, R = () => {
|
|
2518
2533
|
b = null, x = null, S = null, C.clear(), w.clear(), T.clear(), v.cancel(), D = !1, E !== void 0 && (clearTimeout(E), E = void 0);
|
|
2519
2534
|
}, z = (e = !1) => {
|
|
2520
|
-
O += 1, e || R(), r.value?.querySelectorAll(".waveform-chart__overlay").forEach((e) =>
|
|
2535
|
+
O += 1, e || R(), r.value?.querySelectorAll(".waveform-chart__overlay").forEach((e) => G(e).on(".zoom", null)), _.clear();
|
|
2521
2536
|
}, B = (e, n) => {
|
|
2522
2537
|
let r = Math.abs(e[1] - e[0]);
|
|
2523
2538
|
if (!Number.isFinite(r) || r <= 0) return Rt.MIN_SCALE;
|
|
2524
|
-
let i =
|
|
2539
|
+
let i = Or(e, n, t);
|
|
2525
2540
|
return Math.max(Rt.MIN_SCALE, i > 0 ? r / i : Infinity);
|
|
2526
|
-
}, V = (e, n, r, i) =>
|
|
2541
|
+
}, V = (e, n, r, i) => jr(Ar(e.rescaleX(W(n, [0, r])).domain(), n, i, t), n, r), H = (e) => {
|
|
2527
2542
|
let n = Number(t.minVisiblePoints);
|
|
2528
|
-
return
|
|
2529
|
-
},
|
|
2543
|
+
return An(e.seriesList, e.xScale.domain(), Number.isFinite(n) && n > 0 ? Math.ceil(n) + 1 : n);
|
|
2544
|
+
}, U = () => {
|
|
2530
2545
|
let e = s.value.filter((e) => e.hasVisibleSeries);
|
|
2531
2546
|
return e.length > 0 && e.every(H);
|
|
2532
2547
|
}, ee = (e, t) => {
|
|
2533
2548
|
if (e.type !== "wheel") return !1;
|
|
2534
2549
|
let n = e.deltaY;
|
|
2535
|
-
return n < 0 ? t : n > 0 &&
|
|
2550
|
+
return n < 0 ? t : n > 0 && ie(e.currentTarget).k > Rt.MIN_SCALE;
|
|
2536
2551
|
};
|
|
2537
2552
|
return {
|
|
2538
2553
|
cancelPendingZoom: R,
|
|
2539
2554
|
clearZoomBindings: z,
|
|
2540
2555
|
canZoomTrack: H,
|
|
2541
|
-
canZoomSharedTracks:
|
|
2556
|
+
canZoomSharedTracks: U,
|
|
2542
2557
|
configureZoom: () => {
|
|
2543
2558
|
z(D);
|
|
2544
2559
|
let e = O;
|
|
@@ -2547,13 +2562,13 @@ function Ir(e) {
|
|
|
2547
2562
|
s.value.forEach((t) => {
|
|
2548
2563
|
let n = r.value?.querySelector(`[data-independent-overlay-index="${t.index}"]`);
|
|
2549
2564
|
if (!n) return;
|
|
2550
|
-
let i = h(t), a = [t.seriesList], c =
|
|
2565
|
+
let i = h(t), a = [t.seriesList], c = q().filter((e) => {
|
|
2551
2566
|
let n = s.value.find((e) => e.index === t.index) ?? t;
|
|
2552
2567
|
return ee(e, H(n));
|
|
2553
2568
|
}).scaleExtent([1, B(i, a)]).constrain((e) => V(e, i, t.width, a)).extent([[0, 0], [t.width, t.height]]).translateExtent([[0, 0], [t.width, t.height]]).on("zoom", (e) => j(e, t.index)).on("end", () => F(e));
|
|
2554
2569
|
_.set(t.index, c), y = !0;
|
|
2555
2570
|
try {
|
|
2556
|
-
|
|
2571
|
+
G(n).call(c).on("dblclick.zoom", null).call(c.transform, o.value[t.index] ?? J);
|
|
2557
2572
|
} finally {
|
|
2558
2573
|
y = !1;
|
|
2559
2574
|
}
|
|
@@ -2562,10 +2577,10 @@ function Ir(e) {
|
|
|
2562
2577
|
}
|
|
2563
2578
|
let n = i.value;
|
|
2564
2579
|
if (!n) return;
|
|
2565
|
-
let l = s.value.filter((e) => e.hasVisibleSeries).map((e) => e.seriesList), g =
|
|
2580
|
+
let l = s.value.filter((e) => e.hasVisibleSeries).map((e) => e.seriesList), g = q().filter((e) => ee(e, U())).scaleExtent([1, B(c.value, l)]).constrain((e) => V(e, c.value, u.value, l)).extent([[0, 0], [u.value, d.value]]).translateExtent([[0, 0], [u.value, d.value]]).on("zoom", A).on("end", () => F(e));
|
|
2566
2581
|
_.set("shared", g), y = !0;
|
|
2567
2582
|
try {
|
|
2568
|
-
|
|
2583
|
+
G(n).call(g).on("dblclick.zoom", null).call(g.transform, a.value);
|
|
2569
2584
|
} finally {
|
|
2570
2585
|
y = !1;
|
|
2571
2586
|
}
|
|
@@ -2575,56 +2590,56 @@ function Ir(e) {
|
|
|
2575
2590
|
}
|
|
2576
2591
|
//#endregion
|
|
2577
2592
|
//#region src/components/core/useWaveformChartLifecycle.ts
|
|
2578
|
-
function
|
|
2593
|
+
function Vr(e) {
|
|
2579
2594
|
return e instanceof Element && !!e.closest("button, input, select, textarea, [contenteditable]:not([contenteditable=\"false\"])");
|
|
2580
2595
|
}
|
|
2581
|
-
function
|
|
2582
|
-
let { props: t, emit: n, container: r, titleMeasureElement: i, resizeObserver: a, observedWidth: o, observedHeight: s, measuredTitleWidth: c, measuredTitleHeight: l, resolvedTitleText: u, titleAreaReserved: d, titleMeasureStyle: p, spacePressed: m, pointerInsideChart: _, currentPage: v, pageCount: y, pagedTracks: b, gridOptions: x, chartSeries: S, chartTracks: C, trackLayouts: w, innerWidth: T, innerHeight: E, sharedZoomDomain: D, initialXDomain:
|
|
2596
|
+
function Hr(e) {
|
|
2597
|
+
let { props: t, emit: n, container: r, titleMeasureElement: i, resizeObserver: a, observedWidth: o, observedHeight: s, measuredTitleWidth: c, measuredTitleHeight: l, resolvedTitleText: u, titleAreaReserved: d, titleMeasureStyle: p, spacePressed: m, pointerInsideChart: _, currentPage: v, pageCount: y, pagedTracks: b, gridOptions: x, chartSeries: S, chartTracks: C, trackLayouts: w, innerWidth: T, innerHeight: E, sharedZoomDomain: D, initialXDomain: O, sharedTransform: A, activeInteractionMode: j, hiddenSeriesIdSet: M, internalHiddenSeriesIds: N, independentTransforms: P, independentYDomains: F, resolveInitialTrackDomain: I, annotationInteraction: L, editorSeriesOptions: R, isPresentationMode: z, clearHover: B, cancelAnnotation: V, configureZoom: H, resetViewport: U, cancelViewportDrag: W, cancelPendingHover: G, clearZoomBindings: ee } = e;
|
|
2583
2598
|
function te(e) {
|
|
2584
|
-
z.value || e.code !== "Space" || !t.pannable || !_.value ||
|
|
2599
|
+
z.value || e.code !== "Space" || !t.pannable || !_.value || Vr(e.target) || (m.value = !0, e.preventDefault());
|
|
2585
2600
|
}
|
|
2586
2601
|
function ne(e) {
|
|
2587
2602
|
e.code === "Space" && (m.value = !1);
|
|
2588
2603
|
}
|
|
2589
2604
|
function re(e) {
|
|
2590
2605
|
let r = Math.min(y.value, Math.max(1, Math.floor(e)));
|
|
2591
|
-
r !== v.value && (v.value = r, B(), L.closeContextMenu(), V(), t.displayMode === "independent" && (P.value = b.value.map(() =>
|
|
2606
|
+
r !== v.value && (v.value = r, B(), L.closeContextMenu(), V(), t.displayMode === "independent" && (P.value = b.value.map(() => J), F.value = {}), f(H), n("page-change", r, y.value));
|
|
2592
2607
|
}
|
|
2593
|
-
let K,
|
|
2608
|
+
let K, q;
|
|
2594
2609
|
function ie() {
|
|
2595
2610
|
if (t.displayMode === "independent") {
|
|
2596
|
-
K = void 0,
|
|
2611
|
+
K = void 0, q = new Map(w.value.flatMap((e) => {
|
|
2597
2612
|
let t = e.xScale.domain(), n = I(e);
|
|
2598
|
-
return t[1] - t[0] < n[1] - n[0] - 1e-12 ? [[
|
|
2613
|
+
return t[1] - t[0] < n[1] - n[0] - 1e-12 ? [[Nr(e.seriesList.map((e) => e.id)), t]] : [];
|
|
2599
2614
|
}));
|
|
2600
2615
|
return;
|
|
2601
2616
|
}
|
|
2602
|
-
|
|
2603
|
-
let e = D.value, n =
|
|
2617
|
+
q = void 0;
|
|
2618
|
+
let e = D.value, n = O.value;
|
|
2604
2619
|
K = e[1] - e[0] < n[1] - n[0] - 1e-12 ? [...e] : void 0;
|
|
2605
2620
|
}
|
|
2606
2621
|
function ae() {
|
|
2607
2622
|
if (t.displayMode === "independent") {
|
|
2608
2623
|
let e = P.value;
|
|
2609
|
-
P.value = C.value.map((t, n) => e[n] ??
|
|
2624
|
+
P.value = C.value.map((t, n) => e[n] ?? J);
|
|
2610
2625
|
}
|
|
2611
2626
|
B(), R.value = [], f(() => {
|
|
2612
|
-
if (t.displayMode === "independent" &&
|
|
2613
|
-
let e = C.value.map(() =>
|
|
2627
|
+
if (t.displayMode === "independent" && q) {
|
|
2628
|
+
let e = C.value.map(() => J);
|
|
2614
2629
|
w.value.forEach((n) => {
|
|
2615
|
-
let r =
|
|
2630
|
+
let r = q?.get(Nr(n.seriesList.map((e) => e.id)));
|
|
2616
2631
|
if (!r) return;
|
|
2617
|
-
let i = I(n), a =
|
|
2618
|
-
e[n.index] =
|
|
2619
|
-
}), P.value = e,
|
|
2632
|
+
let i = I(n), a = Ar(r, i, [n.seriesList], t);
|
|
2633
|
+
e[n.index] = jr(a, i, n.width);
|
|
2634
|
+
}), P.value = e, q = void 0;
|
|
2620
2635
|
} else if (t.displayMode !== "independent" && K) {
|
|
2621
|
-
let e =
|
|
2622
|
-
A.value =
|
|
2636
|
+
let e = O.value, n = w.value.filter((e) => e.hasVisibleSeries).map((e) => e.seriesList), r = Ar(K, e, n, t);
|
|
2637
|
+
A.value = jr(r, e, T.value), K = void 0;
|
|
2623
2638
|
}
|
|
2624
2639
|
H();
|
|
2625
2640
|
});
|
|
2626
2641
|
}
|
|
2627
|
-
|
|
2642
|
+
k([
|
|
2628
2643
|
T,
|
|
2629
2644
|
E,
|
|
2630
2645
|
() => t.zoomable,
|
|
@@ -2644,10 +2659,10 @@ function Rr(e) {
|
|
|
2644
2659
|
j
|
|
2645
2660
|
], async () => {
|
|
2646
2661
|
await f(), H();
|
|
2647
|
-
}, { immediate: !0 }),
|
|
2662
|
+
}, { immediate: !0 }), k(() => t.displayMode, () => {
|
|
2648
2663
|
let e = v.value;
|
|
2649
2664
|
v.value = 1, U(), e !== 1 && n("page-change", 1, y.value);
|
|
2650
|
-
}),
|
|
2665
|
+
}), k([
|
|
2651
2666
|
y,
|
|
2652
2667
|
() => t.grid?.rowCount,
|
|
2653
2668
|
() => t.grid?.columnCount,
|
|
@@ -2655,23 +2670,23 @@ function Rr(e) {
|
|
|
2655
2670
|
], () => {
|
|
2656
2671
|
let e = v.value;
|
|
2657
2672
|
v.value = v.value > y.value ? y.value : v.value === 1 ? v.value : 1, e !== v.value && n("page-change", v.value, y.value), B(), f(H);
|
|
2658
|
-
}),
|
|
2673
|
+
}), k(j, () => {
|
|
2659
2674
|
R.value = [];
|
|
2660
|
-
}),
|
|
2675
|
+
}), k(z, (e) => {
|
|
2661
2676
|
m.value = !1, e && (W(), ee(), B(), L.closeContextMenu(), V());
|
|
2662
|
-
}),
|
|
2677
|
+
}), k(() => S.value.map((e) => e.id).join("\0"), () => {
|
|
2663
2678
|
if (t.hiddenSeriesIds !== void 0) return;
|
|
2664
2679
|
let e = new Set(S.value.map((e) => e.id)), n = new Set(Array.from(N.value).filter((t) => e.has(t)));
|
|
2665
2680
|
(n.size !== N.value.size || Array.from(N.value).some((e) => !n.has(e))) && (N.value = n);
|
|
2666
|
-
}, { immediate: !0 }),
|
|
2681
|
+
}, { immediate: !0 }), k(() => C.value.flatMap((e) => e.visibleSeries.map((e) => e.id)).join("\0"), () => {
|
|
2667
2682
|
B(), R.value = [];
|
|
2668
2683
|
let e = L.editorDraft.value?.annotation.seriesId;
|
|
2669
2684
|
e && (!S.value.some((t) => t.id === e) || M.value.has(e)) && L.closeEditor();
|
|
2670
2685
|
let n = L.contextMenu.value?.annotationId, r = t.annotations.find((e) => e.id === n);
|
|
2671
2686
|
r && M.value.has(r.seriesId) && L.closeContextMenu(), f(H);
|
|
2672
|
-
}),
|
|
2687
|
+
}), k(() => t.annotationsVisible, (e) => {
|
|
2673
2688
|
e || (L.closeContextMenu(), V());
|
|
2674
|
-
}),
|
|
2689
|
+
}), k(() => t.annotations, (e) => {
|
|
2675
2690
|
let t = L.contextMenu.value?.annotationId;
|
|
2676
2691
|
t && !e.some((e) => e.id === t) && L.closeContextMenu();
|
|
2677
2692
|
let n = L.editorDraft.value;
|
|
@@ -2685,7 +2700,7 @@ function Rr(e) {
|
|
|
2685
2700
|
let e = i.value.getBoundingClientRect();
|
|
2686
2701
|
c.value = i.value.scrollWidth || e.width, l.value = i.value.scrollHeight || e.height;
|
|
2687
2702
|
}
|
|
2688
|
-
return
|
|
2703
|
+
return k([
|
|
2689
2704
|
u,
|
|
2690
2705
|
d,
|
|
2691
2706
|
p
|
|
@@ -2705,7 +2720,7 @@ function Rr(e) {
|
|
|
2705
2720
|
}
|
|
2706
2721
|
//#endregion
|
|
2707
2722
|
//#region src/components/core/useWaveformData.ts
|
|
2708
|
-
function
|
|
2723
|
+
function Ur(e) {
|
|
2709
2724
|
return ln(e).map(({ source: e, ...t }) => {
|
|
2710
2725
|
let n = e.metrics(t.errorBar.visible);
|
|
2711
2726
|
return {
|
|
@@ -2718,45 +2733,45 @@ function zr(e) {
|
|
|
2718
2733
|
};
|
|
2719
2734
|
});
|
|
2720
2735
|
}
|
|
2721
|
-
function
|
|
2722
|
-
let r =
|
|
2723
|
-
return
|
|
2724
|
-
t(), r.value =
|
|
2736
|
+
function Wr(e, t, n) {
|
|
2737
|
+
let r = w(Ur(e()));
|
|
2738
|
+
return k(e, (e) => {
|
|
2739
|
+
t(), r.value = Ur(e), n();
|
|
2725
2740
|
}), r;
|
|
2726
2741
|
}
|
|
2727
2742
|
//#endregion
|
|
2728
2743
|
//#region wasm/pkg/waveform_sampling_wasm.js
|
|
2729
|
-
function
|
|
2730
|
-
let n =
|
|
2731
|
-
if (o[3]) throw
|
|
2732
|
-
var s =
|
|
2744
|
+
function Gr(e, t) {
|
|
2745
|
+
let n = ai(e, $.__wbindgen_malloc), r = di, i = ai(t, $.__wbindgen_malloc), a = di, o = $.calculate_range(n, r, i, a);
|
|
2746
|
+
if (o[3]) throw oi(o[2]);
|
|
2747
|
+
var s = Xr(o[0], o[1]).slice();
|
|
2733
2748
|
return $.__wbindgen_free(o[0], o[1] * 8, 8), s;
|
|
2734
2749
|
}
|
|
2735
|
-
function
|
|
2736
|
-
let i =
|
|
2737
|
-
if (c[3]) throw
|
|
2738
|
-
var l =
|
|
2750
|
+
function Kr(e, t, n, r) {
|
|
2751
|
+
let i = ai(e, $.__wbindgen_malloc), a = di, o = ai(t, $.__wbindgen_malloc), s = di, c = $.find_visible_range(i, a, o, s, n, r);
|
|
2752
|
+
if (c[3]) throw oi(c[2]);
|
|
2753
|
+
var l = Zr(c[0], c[1]).slice();
|
|
2739
2754
|
return $.__wbindgen_free(c[0], c[1] * 4, 4), l;
|
|
2740
2755
|
}
|
|
2741
|
-
function
|
|
2742
|
-
let i =
|
|
2743
|
-
if (c[3]) throw
|
|
2744
|
-
var l =
|
|
2756
|
+
function qr(e, t, n, r) {
|
|
2757
|
+
let i = ai(e, $.__wbindgen_malloc), a = di, o = ai(t, $.__wbindgen_malloc), s = di, c = $.sample_aggregates(i, a, o, s, n, r);
|
|
2758
|
+
if (c[3]) throw oi(c[2]);
|
|
2759
|
+
var l = Xr(c[0], c[1]).slice();
|
|
2745
2760
|
return $.__wbindgen_free(c[0], c[1] * 8, 8), l;
|
|
2746
2761
|
}
|
|
2747
|
-
function
|
|
2748
|
-
let i =
|
|
2749
|
-
if (c[3]) throw
|
|
2750
|
-
var l =
|
|
2762
|
+
function Jr(e, t, n, r) {
|
|
2763
|
+
let i = ai(e, $.__wbindgen_malloc), a = di, o = ai(t, $.__wbindgen_malloc), s = di, c = $.sample_indexes(i, a, o, s, n, r);
|
|
2764
|
+
if (c[3]) throw oi(c[2]);
|
|
2765
|
+
var l = Zr(c[0], c[1]).slice();
|
|
2751
2766
|
return $.__wbindgen_free(c[0], c[1] * 4, 4), l;
|
|
2752
2767
|
}
|
|
2753
|
-
function
|
|
2768
|
+
function Yr() {
|
|
2754
2769
|
return {
|
|
2755
2770
|
__proto__: null,
|
|
2756
2771
|
"./waveform_sampling_wasm_bg.js": {
|
|
2757
2772
|
__proto__: null,
|
|
2758
2773
|
__wbindgen_cast_0000000000000001: function(e, t) {
|
|
2759
|
-
return
|
|
2774
|
+
return ei(e, t);
|
|
2760
2775
|
},
|
|
2761
2776
|
__wbindgen_init_externref_table: function() {
|
|
2762
2777
|
let e = $.__wbindgen_externrefs, t = e.grow(4);
|
|
@@ -2765,52 +2780,52 @@ function Gr() {
|
|
|
2765
2780
|
}
|
|
2766
2781
|
};
|
|
2767
2782
|
}
|
|
2768
|
-
function
|
|
2769
|
-
return e >>>= 0,
|
|
2783
|
+
function Xr(e, t) {
|
|
2784
|
+
return e >>>= 0, $r().subarray(e / 8, e / 8 + t);
|
|
2770
2785
|
}
|
|
2771
|
-
function
|
|
2772
|
-
return e >>>= 0,
|
|
2786
|
+
function Zr(e, t) {
|
|
2787
|
+
return e >>>= 0, ni().subarray(e / 4, e / 4 + t);
|
|
2773
2788
|
}
|
|
2774
|
-
var
|
|
2775
|
-
function
|
|
2776
|
-
return (
|
|
2789
|
+
var Qr = null;
|
|
2790
|
+
function $r() {
|
|
2791
|
+
return (Qr === null || Qr.byteLength === 0) && (Qr = new Float64Array($.memory.buffer)), Qr;
|
|
2777
2792
|
}
|
|
2778
|
-
function
|
|
2779
|
-
return e >>>= 0,
|
|
2793
|
+
function ei(e, t) {
|
|
2794
|
+
return e >>>= 0, ui(e, t);
|
|
2780
2795
|
}
|
|
2781
|
-
var
|
|
2782
|
-
function
|
|
2783
|
-
return (
|
|
2796
|
+
var ti = null;
|
|
2797
|
+
function ni() {
|
|
2798
|
+
return (ti === null || ti.byteLength === 0) && (ti = new Uint32Array($.memory.buffer)), ti;
|
|
2784
2799
|
}
|
|
2785
|
-
var
|
|
2786
|
-
function
|
|
2787
|
-
return (
|
|
2800
|
+
var ri = null;
|
|
2801
|
+
function ii() {
|
|
2802
|
+
return (ri === null || ri.byteLength === 0) && (ri = new Uint8Array($.memory.buffer)), ri;
|
|
2788
2803
|
}
|
|
2789
|
-
function
|
|
2804
|
+
function ai(e, t) {
|
|
2790
2805
|
let n = t(e.length * 8, 8) >>> 0;
|
|
2791
|
-
return
|
|
2806
|
+
return $r().set(e, n / 8), di = e.length, n;
|
|
2792
2807
|
}
|
|
2793
|
-
function
|
|
2808
|
+
function oi(e) {
|
|
2794
2809
|
let t = $.__wbindgen_externrefs.get(e);
|
|
2795
2810
|
return $.__externref_table_dealloc(e), t;
|
|
2796
2811
|
}
|
|
2797
|
-
var
|
|
2812
|
+
var si = new TextDecoder("utf-8", {
|
|
2798
2813
|
ignoreBOM: !0,
|
|
2799
2814
|
fatal: !0
|
|
2800
2815
|
});
|
|
2801
|
-
|
|
2802
|
-
var
|
|
2803
|
-
function
|
|
2804
|
-
return
|
|
2816
|
+
si.decode();
|
|
2817
|
+
var ci = 2146435072, li = 0;
|
|
2818
|
+
function ui(e, t) {
|
|
2819
|
+
return li += t, li >= ci && (si = new TextDecoder("utf-8", {
|
|
2805
2820
|
ignoreBOM: !0,
|
|
2806
2821
|
fatal: !0
|
|
2807
|
-
}),
|
|
2822
|
+
}), si.decode(), li = t), si.decode(ii().subarray(e, e + t));
|
|
2808
2823
|
}
|
|
2809
|
-
var
|
|
2810
|
-
function
|
|
2811
|
-
return $ = e.exports,
|
|
2824
|
+
var di = 0, $;
|
|
2825
|
+
function fi(e, t) {
|
|
2826
|
+
return $ = e.exports, Qr = null, ti = null, ri = null, $.__wbindgen_start(), $;
|
|
2812
2827
|
}
|
|
2813
|
-
async function
|
|
2828
|
+
async function pi(e, t) {
|
|
2814
2829
|
if (typeof Response == "function" && e instanceof Response) {
|
|
2815
2830
|
if (typeof WebAssembly.instantiateStreaming == "function") try {
|
|
2816
2831
|
return await WebAssembly.instantiateStreaming(e, t);
|
|
@@ -2836,17 +2851,17 @@ async function li(e, t) {
|
|
|
2836
2851
|
return !1;
|
|
2837
2852
|
}
|
|
2838
2853
|
}
|
|
2839
|
-
async function
|
|
2854
|
+
async function mi(e) {
|
|
2840
2855
|
if ($ !== void 0) return $;
|
|
2841
2856
|
e !== void 0 && (Object.getPrototypeOf(e) === Object.prototype ? {module_or_path: e} = e : console.warn("using deprecated parameters for the initialization function; pass a single object instead")), e === void 0 && (e = new URL("data:application/wasm;base64,AGFzbQEAAAABugEXYAJ/fwBgAn9/AX9gA39/fwF/YAAEf39/f2ABfwBgAX8Bf2ADf39/AGAFf39/f38AYAAAYAADf39/YAR/f39/AX9gBn9/f39/fwBgBH9/f38AYAZ/f39/f38Ef39/f2AFf39/f38Ef39/f2ACfHwBfGACf38Bb2AHf39/f39/fwBgBX9/f39/AX9gBn9/f398fAR/f39/YAd/f39/fHx/A39/f2AEf39/fwR/f39/YAV/f39/fwN/f38ChAECHi4vd2F2ZWZvcm1fc2FtcGxpbmdfd2FzbV9iZy5qcx9fX3diaW5kZ2VuX2luaXRfZXh0ZXJucmVmX3RhYmxlAAgeLi93YXZlZm9ybV9zYW1wbGluZ193YXNtX2JnLmpzIF9fd2JpbmRnZW5fY2FzdF8wMDAwMDAwMDAwMDAwMDAxABADU1IFBwsRDAcEAgoHAAYABAEAAAAMAQEAEgAHBwsGBQAIBAQFAgAGBAAGAQEKDRMNDhQOFQEWCAQFBAQPDwAGAQYAAAIKAAEGAgQIAQEAAAEBAAAFBAkCcAEXF28AgAgFAwEAEQYJAX8BQYCAwAALB+QCEQZtZW1vcnkCAA9jYWxjdWxhdGVfcmFuZ2UAMw9kaXNwb3NlX2RhdGFzZXQAHhJmaW5kX3Zpc2libGVfcmFuZ2UALhByZWdpc3Rlcl9kYXRhc2V0ADUXcmVnaXN0ZXJfc2FtcGxlX2RhdGFzZXQAMRFzYW1wbGVfYWdncmVnYXRlcwAtGXNhbXBsZV9kYXRhc2V0X2FnZ3JlZ2F0ZXMAMhZzYW1wbGVfZGF0YXNldF9pbmRleGVzADAOc2FtcGxlX2luZGV4ZXMALxRkaXNwb3NlX2FsbF9kYXRhc2V0cwAgE2RhdGFzZXRfaW5kZXhfYnl0ZXMAIxVfX3diaW5kZ2VuX2V4dGVybnJlZnMBARFfX3diaW5kZ2VuX21hbGxvYwAqGV9fZXh0ZXJucmVmX3RhYmxlX2RlYWxsb2MAIQ9fX3diaW5kZ2VuX2ZyZWUAQBBfX3diaW5kZ2VuX3N0YXJ0AAAJHAEAQQELFlMBUTQ6JBZIRihFTTkrGR9SQkEVT1AMAQMKqLQCUsslAgl/AX4jAEEQayIIJAACQAJAAkAgAEH1AU8EQCAAQcz/e0sEQEEAIQAMBAsgAEELaiICQXhxIQVB0JnAACgCACIJRQ0CQR8hBiAAQfX//wdPDQEgBUEmIAJBCHZnIgBrdkEBcSAAQQF0a0E+aiEGDAELAkACQAJAAkACQEHMmcAAKAIAIgRBECAAQQtqQfgDcSAAQQtJGyIFQQN2IgB2IgFBA3EEQCABQX9zQQFxIABqIgdBA3QiAUHEl8AAaiIAIAFBzJfAAGooAgAiAigCCCIDRg0BIAMgADYCDCAAIAM2AggMAgsgBUHUmcAAKAIATQ0GIAENAkHQmcAAKAIAIgBFDQYgAGhBAnRBtJbAAGooAgAiASgCBEF4cSAFayEDIAEhAgNAAkAgASgCECIADQAgASgCFCIADQAgAigCGCEGAkACQCACIAIoAgwiAEYEQCACQRRBECACKAIUIgAbaigCACIBDQFBACEADAILIAIoAggiASAANgIMIAAgATYCCAwBCyACQRRqIAJBEGogABshBANAIAQhByABIgBBFGogAEEQaiAAKAIUIgEbIQQgAEEUQRAgARtqKAIAIgENAAsgB0EANgIACyAGRQ0GAkAgAigCHEECdEG0lsAAaiIBKAIAIAJHBEAgAiAGKAIQRwRAIAYgADYCFCAADQIMCQsgBiAANgIQIAANAQwICyABIAA2AgAgAEUNBgsgACAGNgIYIAIoAhAiAQRAIAAgATYCECABIAA2AhgLIAIoAhQiAUUNBiAAIAE2AhQgASAANgIYDAYLIAAoAgRBeHEgBWsiASADIAEgA0kiARshAyAAIAIgARshAiAAIQEMAAsAC0HMmcAAIARBfiAHd3E2AgALIAJBCGohACACIAFBA3I2AgQgASACaiIBIAEoAgRBAXI2AgQMBQsCQEECIAB0IgJBACACa3IgASAAdHFoIgdBA3QiAUHEl8AAaiICIAFBzJfAAGooAgAiACgCCCIDRwRAIAMgAjYCDCACIAM2AggMAQtBzJnAACAEQX4gB3dxNgIACyAAIAVBA3I2AgQgACAFaiIGIAEgBWsiB0EBcjYCBCAAIAFqIAc2AgBB1JnAACgCACICBEBB3JnAACgCACEBAkBBzJnAACgCACIEQQEgAkEDdnQiA3FFBEBBzJnAACADIARyNgIAIAJBeHFBxJfAAGoiAyEEDAELIAJBeHEiAkHEl8AAaiEEIAJBzJfAAGooAgAhAwsgBCABNgIIIAMgATYCDCABIAQ2AgwgASADNgIICyAAQQhqIQBB3JnAACAGNgIAQdSZwAAgBzYCAAwEC0HQmcAAQdCZwAAoAgBBfiACKAIcd3E2AgALAkACQCADQRBPBEAgAiAFQQNyNgIEIAIgBWoiByADQQFyNgIEIAMgB2ogAzYCAEHUmcAAKAIAIgFFDQFB3JnAACgCACEAAkBBzJnAACgCACIEQQEgAUEDdnQiBnFFBEBBzJnAACAEIAZyNgIAIAFBeHFBxJfAAGoiBCEBDAELIAFBeHEiBEHEl8AAaiEBIARBzJfAAGooAgAhBAsgASAANgIIIAQgADYCDCAAIAE2AgwgACAENgIIDAELIAIgAyAFaiIAQQNyNgIEIAAgAmoiACAAKAIEQQFyNgIEDAELQdyZwAAgBzYCAEHUmcAAIAM2AgALIAJBCGoiAEUNAQwCC0EAIAVrIQMCQAJAAkAgBkECdEG0lsAAaigCACICRQRAQQAhAAwBCyAFQRkgBkEBdmtBACAGQR9HG3QhBEEAIQADQAJAIAIoAgRBeHEiByAFSQ0AIAcgBWsiByADTw0AIAIhASAHIgMNAEEAIQMgASEADAMLIAIoAhQiByAAIAcgAiAEQR12QQRxaigCECICRxsgACAHGyEAIARBAXQhBCACDQALCyAAIAFyRQRAQQAhAUECIAZ0IgBBACAAa3IgCXEiAEUNAyAAaEECdEG0lsAAaigCACEACyAARQ0BCwNAIAMgACgCBEF4cSICIAVrIgQgAyADIARLIgQbIAIgBUkiAhshAyABIAAgASAEGyACGyEBIAAoAhAiAgR/IAIFIAAoAhQLIgANAAsLIAFFDQAgBUHUmcAAKAIAIgBNIAMgACAFa09xDQAgASgCGCEGAkACQCABIAEoAgwiAEYEQCABQRRBECABKAIUIgAbaigCACICDQFBACEADAILIAEoAggiAiAANgIMIAAgAjYCCAwBCyABQRRqIAFBEGogABshBANAIAQhByACIgBBFGogAEEQaiAAKAIUIgIbIQQgAEEUQRAgAhtqKAIAIgINAAsgB0EANgIACwJAIAZFDQACQAJAIAEoAhxBAnRBtJbAAGoiAigCACABRwRAIAEgBigCEEcEQCAGIAA2AhQgAA0CDAQLIAYgADYCECAADQEMAwsgAiAANgIAIABFDQELIAAgBjYCGCABKAIQIgIEQCAAIAI2AhAgAiAANgIYCyABKAIUIgJFDQEgACACNgIUIAIgADYCGAwBC0HQmcAAQdCZwAAoAgBBfiABKAIcd3E2AgALAkAgA0EQTwRAIAEgBUEDcjYCBCABIAVqIgAgA0EBcjYCBCAAIANqIAM2AgAgA0GAAk8EQCAAIAMQEgwCCwJAQcyZwAAoAgAiAkEBIANBA3Z0IgRxRQRAQcyZwAAgAiAEcjYCACADQfgBcUHEl8AAaiIDIQIMAQsgA0H4AXEiBEHEl8AAaiECIARBzJfAAGooAgAhAwsgAiAANgIIIAMgADYCDCAAIAI2AgwgACADNgIIDAELIAEgAyAFaiIAQQNyNgIEIAAgAWoiACAAKAIEQQFyNgIECyABQQhqIgANAQsCQAJAAkACQAJAIAVB1JnAACgCACIBSwRAIAVB2JnAACgCACIATwRAIAhBBGohAAJ/IAVBr4AEakGAgHxxIgFBEHYgAUH//wNxQQBHaiIBQAAiBEF/RgRAQQAhAUEADAELIAFBEHQiAkEQayACIARBEHQiAUEAIAJrRhsLIQIgAEEANgIIIAAgAjYCBCAAIAE2AgAgCCgCBCIBRQRAQQAhAAwICyAIKAIMIQdB5JnAACAIKAIIIgRB5JnAACgCAGoiADYCAEHomcAAIABB6JnAACgCACICIAAgAksbNgIAAkACQEHgmcAAKAIAIgIEQEG0l8AAIQADQCABIAAoAgAiAyAAKAIEIgZqRg0CIAAoAggiAA0ACwwCC0HwmcAAKAIAIgBBACAAIAFNG0UEQEHwmcAAIAE2AgALQfSZwABB/x82AgBBwJfAACAHNgIAQbiXwAAgBDYCAEG0l8AAIAE2AgBB0JfAAEHEl8AANgIAQdiXwABBzJfAADYCAEHMl8AAQcSXwAA2AgBB4JfAAEHUl8AANgIAQdSXwABBzJfAADYCAEHol8AAQdyXwAA2AgBB3JfAAEHUl8AANgIAQfCXwABB5JfAADYCAEHkl8AAQdyXwAA2AgBB+JfAAEHsl8AANgIAQeyXwABB5JfAADYCAEGAmMAAQfSXwAA2AgBB9JfAAEHsl8AANgIAQYiYwABB/JfAADYCAEH8l8AAQfSXwAA2AgBBkJjAAEGEmMAANgIAQYSYwABB/JfAADYCAEGMmMAAQYSYwAA2AgBBmJjAAEGMmMAANgIAQZSYwABBjJjAADYCAEGgmMAAQZSYwAA2AgBBnJjAAEGUmMAANgIAQaiYwABBnJjAADYCAEGkmMAAQZyYwAA2AgBBsJjAAEGkmMAANgIAQayYwABBpJjAADYCAEG4mMAAQayYwAA2AgBBtJjAAEGsmMAANgIAQcCYwABBtJjAADYCAEG8mMAAQbSYwAA2AgBByJjAAEG8mMAANgIAQcSYwABBvJjAADYCAEHQmMAAQcSYwAA2AgBB2JjAAEHMmMAANgIAQcyYwABBxJjAADYCAEHgmMAAQdSYwAA2AgBB1JjAAEHMmMAANgIAQeiYwABB3JjAADYCAEHcmMAAQdSYwAA2AgBB8JjAAEHkmMAANgIAQeSYwABB3JjAADYCAEH4mMAAQeyYwAA2AgBB7JjAAEHkmMAANgIAQYCZwABB9JjAADYCAEH0mMAAQeyYwAA2AgBBiJnAAEH8mMAANgIAQfyYwABB9JjAADYCAEGQmcAAQYSZwAA2AgBBhJnAAEH8mMAANgIAQZiZwABBjJnAADYCAEGMmcAAQYSZwAA2AgBBoJnAAEGUmcAANgIAQZSZwABBjJnAADYCAEGomcAAQZyZwAA2AgBBnJnAAEGUmcAANgIAQbCZwABBpJnAADYCAEGkmcAAQZyZwAA2AgBBuJnAAEGsmcAANgIAQayZwABBpJnAADYCAEHAmcAAQbSZwAA2AgBBtJnAAEGsmcAANgIAQciZwABBvJnAADYCAEG8mcAAQbSZwAA2AgBB4JnAACABQQ9qQXhxIgBBCGsiAjYCAEHEmcAAQbyZwAA2AgBB2JnAACAEQShrIgQgASAAa2pBCGoiADYCACACIABBAXI2AgQgASAEakEoNgIEQeyZwABBgICAATYCAAwICyACIANJIAEgAk1yDQAgACgCDCIDQQFxDQAgA0EBdiAHRg0DC0HwmcAAQfCZwAAoAgAiACABIAAgAUkbNgIAIAEgBGohA0G0l8AAIQACQAJAA0AgAyAAKAIAIgZHBEAgACgCCCIADQEMAgsLIAAoAgwiA0EBcQ0AIANBAXYgB0YNAQtBtJfAACEAA0ACQCACIAAoAgAiA08EQCACIAMgACgCBGoiBkkNAQsgACgCCCEADAELC0HgmcAAIAFBD2pBeHEiAEEIayIDNgIAQdiZwAAgBEEoayIJIAEgAGtqQQhqIgA2AgAgAyAAQQFyNgIEIAEgCWpBKDYCBEHsmcAAQYCAgAE2AgAgAiAGQSBrQXhxQQhrIgAgACACQRBqSRsiA0EbNgIEQbSXwAApAgAhCiADQRBqQbyXwAApAgA3AgAgA0EIaiIAIAo3AgBBwJfAACAHNgIAQbiXwAAgBDYCAEG0l8AAIAE2AgBBvJfAACAANgIAIANBHGohAANAIABBBzYCACAAQQRqIgAgBkkNAAsgAiADRg0HIAMgAygCBEF+cTYCBCACIAMgAmsiAEEBcjYCBCADIAA2AgAgAEGAAk8EQCACIAAQEgwICwJAQcyZwAAoAgAiAUEBIABBA3Z0IgRxRQRAQcyZwAAgASAEcjYCACAAQfgBcUHEl8AAaiIAIQEMAQsgAEH4AXEiAEHEl8AAaiEBIABBzJfAAGooAgAhAAsgASACNgIIIAAgAjYCDCACIAE2AgwgAiAANgIIDAcLIAAgATYCACAAIAAoAgQgBGo2AgQgAUEPakF4cUEIayIEIAVBA3I2AgQgBkEPakF4cUEIayIDIAQgBWoiAGshBSADQeCZwAAoAgBGDQMgA0HcmcAAKAIARg0EIAMoAgQiAkEDcUEBRgRAIAMgAkF4cSIBEBEgASAFaiEFIAEgA2oiAygCBCECCyADIAJBfnE2AgQgACAFQQFyNgIEIAAgBWogBTYCACAFQYACTwRAIAAgBRASDAYLAkBBzJnAACgCACIBQQEgBUEDdnQiAnFFBEBBzJnAACABIAJyNgIAIAVB+AFxQcSXwABqIgUhAwwBCyAFQfgBcSIBQcSXwABqIQMgAUHMl8AAaigCACEFCyADIAA2AgggBSAANgIMIAAgAzYCDCAAIAU2AggMBQtB2JnAACAAIAVrIgE2AgBB4JnAAEHgmcAAKAIAIgAgBWoiAjYCACACIAFBAXI2AgQgACAFQQNyNgIEIABBCGohAAwGC0HcmcAAKAIAIQACQCABIAVrIgJBD00EQEHcmcAAQQA2AgBB1JnAAEEANgIAIAAgAUEDcjYCBCAAIAFqIgEgASgCBEEBcjYCBAwBC0HUmcAAIAI2AgBB3JnAACAAIAVqIgQ2AgAgBCACQQFyNgIEIAAgAWogAjYCACAAIAVBA3I2AgQLIABBCGohAAwFCyAAIAQgBmo2AgRB4JnAAEHgmcAAKAIAIgBBD2pBeHEiAUEIayICNgIAQdiZwABB2JnAACgCACAEaiIEIAAgAWtqQQhqIgE2AgAgAiABQQFyNgIEIAAgBGpBKDYCBEHsmcAAQYCAgAE2AgAMAwtB4JnAACAANgIAQdiZwABB2JnAACgCACAFaiIBNgIAIAAgAUEBcjYCBAwBC0HcmcAAIAA2AgBB1JnAAEHUmcAAKAIAIAVqIgE2AgAgACABQQFyNgIEIAAgAWogATYCAAsgBEEIaiEADAELQQAhAEHYmcAAKAIAIgEgBU0NAEHYmcAAIAEgBWsiATYCAEHgmcAAQeCZwAAoAgAiACAFaiICNgIAIAIgAUEBcjYCBCAAIAVBA3I2AgQgAEEIaiEACyAIQRBqJAAgAAv/FwILfwZ8IwBBIGsiBSQAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAIAMOBwECBwAEBAQAC0HUisAAQScQPyEBIABBgICAgHg2AgAgACABNgIEDA4LIAJFBEBBBCEJDA0LIAJBAnQiA0EEEEsiCUUNASACQQdxIQRBACEDAkAgAkEBa0EHTwRAIAJB+P//P3EhBgNAIAggCWoiByADNgIAIAdBHGogA0EHajYCACAHQRhqIANBBmo2AgAgB0EUaiADQQVqNgIAIAdBEGogA0EEajYCACAHQQxqIANBA2o2AgAgB0EIaiADQQJqNgIAIAdBBGogA0EBajYCACAIQSBqIQggA0EIaiIDIAZHDQALIARFDQELIAkgA0ECdGohBwNAIAcgAzYCACAHQQRqIQcgA0EBaiEDIARBAWsiBA0ACwsgAiEIIAIhBgwLCyAFQRRqIAIgBBANIAUoAhQiCEGAgICAeEcNCCAEQQJrQQJ2IgpFBEBBCEEEEEsiCQ0DQQRBCBBOAAtBBEEEEEsiAwRAIANBADYCACAFQQE2AhwgBSADNgIYIAVBATYCFCACQQJrIQ1BASEGA0AgCyANbCAKbiIDQQFqIgghByAIIQQCQCADQQJqIgMgC0EBaiILIA1sIApuIglBAWoiDk8EQCAFIAQ2AhAgBSAENgIMIAUgBDYCCAwBCwJAAkACQANAIAIgA00NAiACIAdNDQEgAiAESwRAIAMgBCABIANBGGxqKwMIIhAgASAEQRhsaisDCGQbIQQgAyAHIBAgASAHQRhsaisDCGMbIQcgA0EBaiIDIA5PDQQMAQsLIAQgAkH8hsAAECYACyAHIAJB7IbAABAmAAsgAyACQdyGwAAQJgALIAUgBDYCCCAFIAg2AhAgBSAHNgIMAkAgByAITwRAIAghAwwBCyAFIAc2AhAgBSAINgIMIAchAyAIIQcLIAQgB08EQCAHIQggBCEHDAELIAUgBzYCCCAFQQxqIQggAyAESwR/IAUgAzYCDCAFQRBqBSAICyAENgIAIAUoAgwhCAsCQCAHIAlNBEAgByEEIAkhBwwBCwJ/IAVBCGogCCAJTQ0AGiAFIAg2AgggBUEMaiAFKAIQIgMgCU0NABogBSADNgIMIAVBEGoLIAk2AgAgBSgCCCEEIAUoAgwhCAsgBSgCECEDAkACQAJAAkACQAJAAkAgBgRAIAUoAhggBkECdGpBBGsoAgAgA0YNAQsgBSgCFCAGRgRAIAVBFGoQJyAFKAIYIAZBAnRqIAM2AgAgBSAGQQFqIgY2AhwMAQsgBSgCGCAGQQJ0aiADNgIAIAUgBkEBaiIGNgIcQQAhAyAGRQ0BCyAFKAIYIAYiA0ECdGpBBGsoAgAgCEYNAQsgBSgCFCADRgRAIAVBFGoQJyAFKAIYIANBAnRqIAg2AgAgBSADQQFqIgY2AhwMAQsgBSgCGCADQQJ0aiAINgIAIAUgA0EBaiIGNgIcQQAhAyAGRQ0BCyAFKAIYIAYiA0ECdGpBBGsoAgAgBEYNAQsgBSgCFCADRgRAIAVBFGoQJyAFKAIYIANBAnRqIAQ2AgAgBSADQQFqIgY2AhwMAQsgBSgCGCADQQJ0aiAENgIAIAUgA0EBaiIGNgIcQQAhAyAGRQ0BCyAFKAIYIAYiA0ECdGpBBGsoAgAgB0YNAQsgBSgCFCADRgRAIAVBFGoQJwsgBSgCGCADQQJ0aiAHNgIAIAUgA0EBaiIGNgIcCyAKIAtHDQALDAYLDA4LQQQgAxA9AAsgBUEUaiACIAQQDSAFKAIUIghBgICAgHhHDQYgBEECayADQQZGdiIJRQRAQQhBBBBLIgkNAUEEQQgQTgALQQRBBBBLIgQEQEEAIQggBEEANgIAIAVBATYCHCAFIAQ2AhggBUEBNgIUIAJBAmshCiADQQRrIQtBASEGA0AgCCAKbCAJbiIDQQFqIgQhBwJAIANBAmoiAyAIQQFqIgggCmwgCW5BAWoiDU8NAAJAAkADQCACIANNDQIgAiAHTQ0BIAIgBEsEQCADIAQgASADQRhsaisDCCIQIAEgBEEYbGorAwhkGyEEIAMgByAQIAEgB0EYbGorAwhjGyEHIANBAWoiAyANTw0EDAELCyAEIAJBnI3AABAmAAsgByACQYyNwAAQJgALIAMgAkH8jMAAECYACwJAAkACQAJAAkACQAJAIAsOAwECAwALQZyKwABBKEHsjMAAED4ACyAGBEAgBSgCGCAGQQJ0akEEaygCACAHRg0FCyAGIAUoAhRGDQIMAwsgBgRAIAUoAhggBkECdGpBBGsoAgAgBEYNBAsgBCEHIAYgBSgCFEcNAgwBCyAEIAdPBEACQAJAIAYEQCAFKAIYIAZBAnRqQQRrKAIAIAdGDQELIAUoAhQgBkYEQCAFQRRqECcgBSgCGCAGQQJ0aiAHNgIAIAUgBkEBaiIGNgIcDAELIAUoAhggBkECdGogBzYCACAFIAZBAWoiBjYCHEEAIQMgBkUNAQsgBSgCGCAGIgNBAnRqQQRrKAIAIARGDQQLIAQhByADIgYgBSgCFEYNAQwCCwJAIAYEQCAFKAIYIAZBAnRqQQRrKAIAIARGDQELIAUoAhQgBkYEQCAFQRRqECcLIAUoAhggBkECdGogBDYCACAFIAZBAWoiBjYCHAsgBgRAIAUoAhggBkECdGpBBGsoAgAgB0YNAwsgBiAFKAIURw0BCyAFQRRqECcLIAUoAhggBkECdGogBzYCACAFIAZBAWoiBjYCHAsgCCAJRw0ACwwCCwwMCyAJQQA2AgAgCSACQQFrNgIEQQIhCEECIQYMBwsgAkEBayEDIAYEQCAFKAIYIgkgBkECdGpBBGsoAgAgA0YNBAsgBSgCFCAGRgRAIAVBFGoQJwsgBSgCGCAGQQJ0aiADNgIAIAZBAWoMAgsgBUEUaiACIAQQDSAFKAIUIghBgICAgHhHDQNBBEEEEEsiAwRAIANBADYCAEEBIQYgBUEBNgIcIAUgAzYCGCAFQQE2AhQgAkEBayELAkAgBEECayIJBEAgAkECayINuCAJuKMhFCABIAtBGGxqIQ5BACEIA0AgAiAUIAhBAmq4opz8A0EBaiIMIAIgDEkbIQMCQAJAIAwgAiAUIAhBAWoiBLiinPwDQQFqIgogAiAKSRsiCk8EQAJ8IAMgCkcEQCADIAprIQwgASADQRhsaiEPIAEgCkEYbGohA0QAAAAAAAAAACEQRAAAAAAAAAAAIREDQCAQIAMrAwCgIRAgESADQQhqKwMAoCERIANBGGoiAyAPRw0ACyARIAy4IhKjIREgECASowwBCyACRQ0CIA4rAwghESAOKwMACyESIAggDWwgCW5BAWoiAyAEIA1sIAluQQFqIgpPBEAgAyEHDAMLAkAgAiAHSwRAIAEgB0EYbGohCEQAAAAAAADwvyEQIAMhBwNAIAIgA00NAiAIKwMAIhMgEqEgASADQRhsaiIMKwMIIAgrAwgiFaGiIBEgFaEgEyAMKwMAoaKhmSITIBAgECATYyIMGyEQIAMgByAMGyEHIAogA0EBaiIDSw0ACwwECyAHIAJBrIbAABAmAAsgAyACQbyGwAAQJgALIAogAyACQcyGwAAQFAALIAtBAEGchsAAECYACyAFKAIUIAZGBEAgBUEUahAnCyAFKAIYIAZBAnRqIAc2AgAgBSAGQQFqIgY2AhwgBCIIIAlHDQALIAYgBSgCFEcNAQsgBUEUahAnCyAFKAIYIAZBAnRqIAs2AgAgBkEBagwCCwwJCyACQQFrIQMgBgRAIAUoAhgiCSAGQQJ0akEEaygCACADRg0CCyAFKAIUIAZGBEAgBUEUahAnCyAFKAIYIAZBAnRqIAM2AgAgBkEBagshBiAFKAIYIQkLIAUoAhQhCAwBCyAFKAIcIQYgBSgCGCEJCyAGDQBBACEGDAELIAkhAyAGIQcDQCADKAIAIgQgAk8NAyADIAEgBEEYbGooAhA2AgAgA0EEaiEDIAdBAWsiBw0ACwsgACAGNgIIIAAgCTYCBCAAIAg2AgALIAVBIGokAA8LIAQgAkGUj8AAECYAC0EEQQQQTgAL9wsDEn8CfAJ+IwBB0AJrIhIkAAJAIAFBAkkNAEKAgICAgICAgMAAIAGtIhqAIhsgGn5CgICAgICAgIDAAFKtAn8gAUGBIE8EQEEBIAFBAXJnQR9zIgZBAXYgBkEBcWoiBnQgASAGdmpBAXYMAQtBwAAgASABQQF2ayIGIAZBwABPGwshEyAbfCEaIABBGGshFCAAQTBqIRVBASEJA0BBACEPQQEhCiABIBBLIhYEQCAAIBBBGGwiD2ohDCAQrSIbAn8CQCABIBBrIgogE0kNAAJAIApBAkkEQCAKIQYMAQsCQAJAIAwrAxgiGCAYYSAMKwMAIhkgGWFxBEACQAJAAkAgGCAZYyIORQRAQQIhBiAKQQJGDQcgDyAVaiEIA0AgCCsDACIZIBlhIBggGGFxRQ0GIBggGWQNAyAIQRhqIQggGSEYIAogBkEBaiIGRw0ACwwBC0ECIQZBASEIIApBAkYNAiAPIBVqIQgDQCAIKwMAIhkgGWEgGCAYYXFFDQYgGCAZZEUNAiAIQRhqIQggGSEYIAogBkEBaiIGRw0ACwsgCiEGCyAGIBNJDQUgDkUNBCAGQQF2IghFDQQLIBQgBkEYbGohESAAIQoDQCAPIBFqIgwoAgAhByAMIAogD2oiDigCADYCACAOIAc2AgAgDkEEaiIHKAIAIQ0gByAMQQRqIgcoAgA2AgAgByANNgIAIAxBCGoiBygCACENIAcgDkEIaiIHKAIANgIAIAcgDTYCACAOQQxqIgcoAgAhDSAHIAxBDGoiBygCADYCACAHIA02AgAgDEEQaiIHKAIAIQ0gByAOQRBqIgcoAgA2AgAgByANNgIAIA5BFGoiDigCACEHIA4gDEEUaiIMKAIANgIAIAwgBzYCACARQRhrIREgCkEYaiEKIAhBAWsiCA0ACwwDC0G0j8AAEEkAC0G0j8AAEEkAC0G0j8AAEEkACyAGQQF0QQFyDAELIAogEyAKIBNJG0EBdCAERQ0AGiAMQSAgCiAKQSBPGyIGIAIgA0EAQQAgBRAFIAZBAXRBAXILIgpBAXYgEGqtfCAafiAQIAlBAXZrrSAbfCAafoV5pyEPCwJAAkAgC0ECSQ0AIBQgEEEYbCIGaiEOIAAgBmohFwNAIAtBAWsiDCASQY4CamotAAAgD0kNAQJ/AkACQCADIBJBBGogDEECdGooAgAiB0EBdiIGIAlBAXYiCGoiEU8gByAJckEBcUVxRQRAIAAgECARa0EYbGohCyAHQQFxRQ0BDAILIBFBAXQMAgsgCyAGIAIgAyAGQQFyZ0EBdEE+c0EAIAUQBQsgCUEBcUUEQCALIAZBGGxqIAggAiADIAhBAXJnQQF0QT5zQQAgBRAFCwJAIAhFIAZFcg0AIAMgCCAGIAYgCEsiBxsiCEkNACALIAZBGGxqIQkgCEEYbCIGBEAgAiAJIAsgBxsgBvwKAAALIAIgBmohCAJAAkACQCAHRQRAIAIhBgNAIAkrAwAiGCAYYSAGKwMAIhkgGWFxRQ0CIAsgCSAGIBggGWMiBxsiDSkDEDcDECALIA0pAwg3AwggCyANKQMANwMAIAtBGGohCyAGIAdFQRhsaiIGIAhGDQQgCSAHQRhsaiIJIBdHDQALDAMLIA4hBgNAIAhBGGsiCCsDACIYIBhhIAlBGGsiCSsDACIZIBlhcQRAIAYgCSAIIBggGWMiBxsiDSkDEDcDECAGIA0pAwg3AwggBiANKQMANwMAIAggB0EYbGohCCAJIAdFQRhsaiIJIAtGDQMgBkEYayEGIAIgCEcNAQwDCwtBzI3AABBJAAtBzI3AABBJAAsgCSELIAIhBgsgCCAGayIJRQ0AIAsgBiAJ/AoAAAsgEUEBdEEBcgshCUEBIQYgDCILQQFLDQALDAELIAshBgsgEkGOAmogBmogDzoAACASQQRqIAZBAnRqIAk2AgAgFgRAIAZBAWohCyAKQQF2IBBqIRAgCiEJDAELCyAJQQFxDQAgACABIAIgAyABQQFyZ0EBdEE+c0EAIAUQBQsgEkHQAmokAAuDCwIPfwN8IwBBIGsiECQAAkACQCABQSFJBEAgACABIAIgAxAGDAELIAJBGGshEgJAAkACQAJAAkADQCAERQRAIAAgASACIANBASAGEAQMBwsgACABQQN2IglBqAFsaiEHIAAgCUHgAGxqIQwCfyABQcAATwRAIAAgDCAHIAkgBhAYDAELIAArAwAiFiAWYSIJIAwrAwAiFyAXYSILcUUNBiAJIAcrAwAiGCAYYSIIcUUNCCAAIBYgF2MiCSAWIBhjcw0AGiAIIAtxRQ0IIAcgDCAJIBcgGGNzGwshDSAEQQFrIQQgECANKQMQNwMYIBAgDSkDCDcDECAQIA0pAwA3AwggDSAAa0EYbiEMAkACQCAFBEAgBSsDACIWIBZhIA0rAwAiFyAXYXFFDQogFiAXY0UNAQsgASADSw0GQQAhCyAAIQcgAiABQRhsIhFqIhMhCCAMIQkDQAJAIAcgACAJQRhsaiIPTw0AA0AgBysDACIWIBZhIA0rAwAiFyAXYXEEQCALQRhsIAIgCEEYayIIIBYgF2MiDhtqIgogBykDEDcDECAKIAcpAwg3AwggCiAHKQMANwMAIAsgDmohCyAPIAdBGGoiB0sNAQwCCwtBzI3AABBJAAsgASAJRwRAIAhBGGsiCCALQRhsaiIJIAcpAxA3AxAgCSAHKQMINwMIIAkgBykDADcDACAHQRhqIQcgASEJDAELCyALQRhsIg8EQCAAIAIgD/wKAAALIAEgC2shDgJAIAEgC0YNACAAIA9qIQlBACEIIAtBAWogAUcEQCAOQQFxIA5BfnEhFSARIBJqIQogCSEHA0AgByAKKQMQNwMQIAcgCikDCDcDCCAHIAopAwA3AwAgB0EYaiATIAhB/v///wFzQRhsaiIRKQMANwMAIAdBIGogESkDCDcDACAHQShqIBFBEGopAwA3AwAgCkEwayEKIAdBMGohByAVIAhBAmoiCEcNAAtFDQELIAkgCEEYbGoiByATIAhBf3NBGGxqIgkpAxA3AxAgByAJKQMINwMIIAcgCSkDADcDAAsgC0UNACABIAtJDQUgACAPaiAOIAIgAyAEIBBBCGogBhAFDAELIAEgA0sNBUEAIQogACEHIAIgAUEYbCIPaiIJIQgDQAJAIAcgACAMQRhsaiILTw0AA0AgDSsDACIWIBZhIAcrAwAiFyAXYXEEQCAKQRhsIAhBGGsiCCACIBYgF2MiDhtqIgUgBykDEDcDECAFIAcpAwg3AwggBSAHKQMANwMAIAogDkVqIQogCyAHQRhqIgdLDQEMAgsLQcyNwAAQSQALIAEgDEcEQCACIApBGGxqIgUgBykDEDcDECAFIAcpAwg3AwggBSAHKQMANwMAIAdBGGohByAKQQFqIQogCEEYayEIIAEhDAwBCwsgCkEYbCIFBEAgACACIAX8CgAACyABIApGDQMgASAKayELIAAgBWohAEEAIQUCQCAKQQFqIAFHBEAgC0EBcSALQX5xIQ4gDyASaiEIIAAhBwNAIAcgCCkDEDcDECAHIAgpAwg3AwggByAIKQMANwMAIAdBGGogCSAFQf7///8Bc0EYbGoiDCkDADcDACAHQSBqIAwpAwg3AwAgB0EoaiAMQRBqKQMANwMAIAhBMGshCCAHQTBqIQcgDiAFQQJqIgVHDQALRQ0BCyAAIAVBGGxqIgcgCSAFQX9zQRhsaiIFKQMQNwMQIAcgBSkDCDcDCCAHIAUpAwA3AwALIAEgCkkNAkEAIQULIAsiAUEhTw0ACyAAIAsgAiADEAYMBQsgCiABIAFB9I7AABAUAAsgACABQRhsakEAIAIgAxAGDAMLQdiOwABBE0HkjsAAECkLAAsMAQsgEEEgaiQADwtBzI3AABBJAAu6CAINfwJ8IwBBEGsiCiQAAkACQCABQQJPBEACQCABQRBqIANNBEBBASEIIAIgAUEBdiIMQRhsIgNqIQYgACADaiENAkAgAUEHSwRAIAAgAhAOIA0gBhAOQQQhCAwBCyACIAApAxA3AxAgAiAAKQMINwMIIAIgACkDADcDACAGIA0pAwA3AwAgBiANKQMINwMIIAYgDSkDEDcDEAsgCCAMTw0BIAhBGGwhByAIIQUDQCACIAVBGGwiA2oiCSAAIANqIgQpAwA3AwAgCSAEKQMQNwMQIAkgBCkDCDcDCCAJKwMAIhIgEmEiAyAJQRhrKwMAIhEgEWFxRQ0FIBEgEmQEQCAKIAQpAxA3AwggCiAEKQMINwMAIAchBAJ/A0AgAiAEaiILIAtBGGsiCSkDEDcDECALIAkpAwg3AwggCyAJKQMANwMAIAIgBEEYRg0BGiADIAtBMGsrAwAiESARYXFFDQggBEEYayEEIBEgEmQNAAsgAiAEagsiAyASOQMAIAMgCikDADcDCCADIAopAwg3AxALIAdBGGohByAFQQFqIgUgDEcNAAsMAQsACyABIAxrIgsgCEsEQCAIQRhsIQ9BGCEFIAYhBwNAIAYgCEEYbCIDaiIEIAMgDWoiAykDADcDACAEIAMpAxA3AxAgBCADKQMINwMIIAQrAwAiEiASYiIJIARBGGsrAwAiESARYnINBCARIBJkBEAgCiADKQMQNwMIIAogAykDCDcDACAFIQMgByEEAn8DQCAEIA9qIg4gDkEYayIQKQMQNwMQIA4gECkDCDcDCCAOIBApAwA3AwAgBiADIA9GDQEaIAkgDkEwaysDACIRIBFicg0HIANBGGohAyAEQRhrIQQgESASZA0ACyAEIA9qCyIDIBI5AwAgAyAKKQMANwMIIAMgCikDCDcDEAsgBUEYayEFIAdBGGohByAIQQFqIgggC0cNAAsLIAZBGGshBCACIAFBGGxBGGsiA2ohByAAIANqIQMDQCAGKwMAIhIgEmEgAisDACIRIBFhcUUNAyAAIAYgAiARIBJkIgkbIgUpAxA3AxAgACAFKQMINwMIIAAgBSkDADcDACAHKwMAIhIgEmEgBCsDACIRIBFhcUUNAyADIAQgByARIBJkIggbIgUpAxA3AxAgAyAFKQMINwMIIAMgBSkDADcDACADQRhrIQMgAEEYaiEAIARBaEEAIAgbaiEEIAdBAEFoIAgbaiEHIAYgCUEYbGohBiACIAlFQRhsaiECIAxBAWsiDA0ACyAEQRhqIQUgAUEBcQR/IAAgAiAGIAIgBUkiARsiAykDEDcDECAAIAMpAwg3AwggACADKQMANwMAIAYgAiAFT0EYbGohBiACIAFBGGxqBSACCyAFRyAGIAdBGGpHcg0BCyAKQRBqJAAPC0HTlMAAQZkBQaCVwAAQKQALQbSPwAAQSQALuQUCB38DfCMAQRBrIgYkAAJAAkACQAJAAkACQCAEQQNrDgUAAQEBAAELAkAgA0EBdCIIQf////8BSyADQQR0IgVB+P///wdLcg0AAkAgBUUEQEEIIQlBACEIDAELQQghByAFQQgQSyIJRQ0BCyAGQQA2AgwgBiAJNgIIIAYgCDYCBCAEQQNGDQJBACEFQQAhCANAIAIgCGwhByAIQQFqIgggAmwgA24iBCAHIANuIgdJIAIgBElyDQYgBCAHayEKRAAAAAAAAAAAIQxEAAAAAAAAAAAhDSAEIAdHBEAgASAEQRhsaiELIAEgB0EYbGohBANAIA0gBCsDAKAhDSAMIARBCGorAwCgIQwgBEEYaiIEIAtHDQALCyAGKAIEIAVrQQFNBEAgBkEEaiAFQQJBCEEIEBogBigCCCEJIAYoAgwhBQsgCSAFQQN0aiIEIAw5AwggBCANIAq4ozkDACAGIAVBAmoiBTYCDCADIAhHDQALDAMLIAcgBRA9AAtB+4rAAEEpED8hASAAQYCAgIB4NgIAIAAgATYCBAwCC0EAIQVBACEIA0AgAiAIbCEHIAhBAWoiCCACbCADbiIEIAcgA24iB0kgAiAESXINAyAEIAdrIQpEAAAAAAAAAAAhDEQAAAAAAAAAACENIAQgB0cEQCABIARBGGxqIQsgASAHQRhsaiEEA0AgDSAEKwMAoCENIAwgBEEIaisDAKAhDCAEQRhqIgQgC0cNAAsLIAwgCrgiDKMhDiAGKAIEIAVrQQFNBEAgBkEEaiAFQQJBCEEIEBogBigCCCEJIAYoAgwhBQsgCSAFQQN0aiIEIA45AwggBCANIAyjOQMAIAYgBUECaiIFNgIMIAMgCEcNAAsLIAAgBigCDDYCCCAAIAYpAgQ3AgALIAZBEGokAA8LIAcgBCACQayNwAAQFAALogYBBH8gAEEIayIBIABBBGsoAgAiA0F4cSIAaiECAkACQCADQQFxDQAgA0ECcUUNASABKAIAIgMgAGohACABIANrIgFB3JnAACgCAEYEQCACKAIEQQNxQQNHDQFB1JnAACAANgIAIAIgAigCBEF+cTYCBCABIABBAXI2AgQgAiAANgIADwsgASADEBELAkACQEH0mcAAAn8CQAJAAkACQCACKAIEIgNBAnFFBEAgAkHgmcAAKAIARg0CIAJB3JnAACgCAEYNAyACIANBeHEiAhARIAEgACACaiIAQQFyNgIEIAAgAWogADYCACABQdyZwAAoAgBHDQFB1JnAACAANgIADwsgAiADQX5xNgIEIAEgAEEBcjYCBCAAIAFqIAA2AgALIABBgAJJDQQgASAAEBJB9JnAAEH0mcAAKAIAQQFrIgA2AgAgAA0GQbyXwAAoAgAiAA0CQf8fDAMLQeCZwAAgATYCAEHYmcAAQdiZwAAoAgAgAGoiADYCACABIABBAXI2AgRB3JnAACgCACABRgRAQdSZwABBADYCAEHcmcAAQQA2AgALIABB7JnAACgCACICTQ0FQeCZwAAoAgAiAEUNBUHYmcAAKAIAIgNBKUkNBEG0l8AAIQEDQCAAIAEoAgAiBE8EQCAAIAQgASgCBGpJDQYLIAEoAgghAQwACwALQdyZwAAgATYCAEHUmcAAQdSZwAAoAgAgAGoiADYCACABIABBAXI2AgQgACABaiAANgIADwtBACEBA0AgAUEBaiEBIAAoAggiAA0AC0H/HyABIAFB/x9NGws2AgAPCwJAQcyZwAAoAgAiAkEBIABBA3Z0IgNxRQRAQcyZwAAgAiADcjYCACAAQfgBcUHEl8AAaiIAIQIMAQsgAEH4AXEiAEHEl8AAaiECIABBzJfAAGooAgAhAAsgAiABNgIIIAAgATYCDCABIAI2AgwgASAANgIIDwtB9JnAAEG8l8AAKAIAIgAEf0EAIQEDQCABQQFqIQEgACgCCCIADQALQf8fIAEgAUH/H00bBUH/Hws2AgAgAiADTw0AQeyZwABBfzYCAAsLgwsBC38CQAJAIAAoAggiC0GAgIDAAXFFDQACQAJAAkACQCALQYCAgIABcQRAIAAvAQ4iBw0BQQAhAgwCCyACQRBPBEACfwJAAkAgAiABQQNqQXxxIgcgAWsiCUkNACACIAlrIgpBAnYiCEUNACABIAdHBEAgASAHayIHQXxNBEADQCAEIAEgBWoiBiwAAEG/f0pqIAZBAWosAABBv39KaiAGQQJqLAAAQb9/SmogBkEDaiwAAEG/f0pqIQQgBUEEaiIFDQALCyABIAVqIQYDQCAEIAYsAABBv39KaiEEIAZBAWohBiAHQQFqIgcNAAsLIAEgCWohBwJAIApBA3EiBUUNACAHIApB/P///wdxaiIGLAAAQb9/SiEDIAVBAUYNACADIAYsAAFBv39KaiEDIAVBAkYNACADIAYsAAJBv39KaiEDCyADIARqIQUDQCAHIQMgCEUNAkHAASAIIAhBwAFPGyIJQQNxIQoCQCAJQQJ0IgdB8AdxIgRFBEBBACEGDAELIAMgBGohDEEAIQYgAyEEA0AgBiAEKAIAIg1Bf3NBB3YgDUEGdnJBgYKECHFqIARBBGooAgAiBkF/c0EHdiAGQQZ2ckGBgoQIcWogBEEIaigCACIGQX9zQQd2IAZBBnZyQYGChAhxaiAEQQxqKAIAIgZBf3NBB3YgBkEGdnJBgYKECHFqIQYgBEEQaiIEIAxHDQALCyAIIAlrIQggAyAHaiEHIAZBCHZB/4H8B3EgBkH/gfwHcWpBgYAEbEEQdiAFaiEFIApFDQALAn8gAyAJQfwBcUECdGoiAygCACIEQX9zQQd2IARBBnZyQYGChAhxIgQgCkEBRg0AGiAEIAMoAgQiB0F/c0EHdiAHQQZ2ckGBgoQIcWoiBCAKQQJGDQAaIAMoAggiA0F/c0EHdiADQQZ2ckGBgoQIcSAEagsiA0EIdkH/gRxxIANB/4H8B3FqQYGABGxBEHYgBWohBQwBC0EAIAJFDQEaIAJBA3EhBkEAIQcgAkEETwRAIAJBfHEhBANAIAUgASAHaiIDLAAAQb9/SmogA0EBaiwAAEG/f0pqIANBAmosAABBv39KaiADQQNqLAAAQb9/SmohBSAEIAdBBGoiB0cNAAsgBkUNAQsgASAHaiEEA0AgBSAELAAAQb9/SmohBSAEQQFqIQQgBkEBayIGDQALCyAFCyEFDAQLIAJFDQMgAkEDcSEEIAJBBE8EQCACQQxxIQYDQCAFIAEgA2oiBywAAEG/f0pqIAdBAWosAABBv39KaiAHQQJqLAAAQb9/SmogB0EDaiwAAEG/f0pqIQUgBiADQQRqIgNHDQALIARFDQQLIAEgA2ohAwNAIAUgAywAAEG/f0pqIQUgA0EBaiEDIARBAWsiBA0ACwwDCyABIAJqIQZBACECIAEhAyAHIQQDQCADIgUgBkYNAiACAn8gA0EBaiADLAAAIgJBAE4NABogA0ECaiACQWBJDQAaIANBBEEDIAJBb0sbagsiAyAFa2ohAiAEQQFrIgQNAAsLQQAhBAsgByAEayEFCyAFIAAvAQwiA08NACADIAVrIQdBACEFQQAhBAJAAkACQCALQR12QQNxQQFrDgIAAQILIAchBAwBCyAHQf7/A3FBAXYhBAsgC0H///8AcSEIIAAoAgQhBiAAKAIAIQADQCAFQf//A3EgBEH//wNxSQRAQQEhAyAFQQFqIQUgACAIIAYoAhARAQBFDQEMAwsLQQEhAyAAIAEgAiAGKAIMEQIADQFBACEFIAcgBGtB//8DcSEBA0AgBUH//wNxIgIgAUkhAyABIAJNDQIgBUEBaiEFIAAgCCAGKAIQEQEARQ0ACwwBCyAAKAIAIAEgAiAAKAIEKAIMEQIAIQMLIAML+wMBCH8jAEEQayIGJAACfwJAIANBAXFFBEAgAi0AACIFDQFBAAwCCyAAIAIgA0EBdiABKAIMEQIADAELIAEoAgwhCgNAIAJBAWohBAJAAkACQAJAIAXAQQBIBEAgBUH/AXEiCEGAAUYNASAIQcABRw0DIAYgATYCBCAGIAA2AgAgBkKggICABjcCCCADIAdBA3RqIgIoAgAgBiACKAIEEQEARQ0CQQEMBgsgACAEIAVB/wFxIgIgChECAEUEQCACIARqIQIMBAtBAQwFCyAAIAJBA2oiBCACLwABIgIgChECAEUEQCACIARqIQIMAwtBAQwECyAHQQFqIQcgBCECDAELQaCAgIAGIQsgBUEBcQRAIAIoAAEhCyACQQVqIQQLQQAhCAJ/IAVBAnFFBEBBACEJIAQMAQsgBC8AACEJIARBAmoLIQIgBUEEcQR/IAIvAAAhCCACQQJqBSACCyEEIAVBCHEEfyAELwAAIQcgBEECagUgBAshAiAFQRBxBEAgAyAJQQN0ai8BBCEJCyAGIAVBIHEEfyADIAhBA3RqLwEEBSAICzsBDiAGIAk7AQwgBiALNgIIIAYgATYCBCAGIAA2AgBBASADIAdBA3RqIgQoAgAgBiAEKAIEEQEADQIaIAdBAWohBwsgAi0AACIFDQALQQALIAZBEGokAAvaBwIIfwN8IwBBIGsiCCQAAkACQCACIARGBEAgAkEYbCEEIAJB1arVKksNAkEIIQUgBARAQQghBiAEQQgQSyIFRQ0DIAIhBgsgCCAFNgIQIAggBjYCDEQAAAAAAADw/yEOQQAhBkEBIQoDQCAIIAc2AhQgBiACIAIgBkkbIQsgAyAGQQN0IgRqIQUgASAEaiEEAkADQCAGIAtGDQEgBSIJQQhqIQUgDEEBaiEMIAZBAWohBiAEKwMAIQ0gBEEIaiEEIA29Qv///////////wCDQv/////////3/wBWDQAgCSsDACIPvUL///////////8Ag0L/////////9/8AVg0ACyAIKAIMIAdGBEAjAEEQayIEJAAgBEEEaiAIQQxqIgUoAgAiCSAFKAIEQQQgCUEBdCIJIAlBBE0bIglBCEEYEBwgBCgCBEEBRgRAIAQoAgggBCgCDBA9AAsgBCgCCCELIAUgCTYCACAFIAs2AgQgBEEQaiQACyANIA5jRSAKcSEKIAgoAhAgB0EYbGoiBCAMQQFrNgIQIAQgDzkDCCAEIA05AwAgB0EBaiEHIA0hDgwBCwsCQCAKDQAgCCgCECEBIAggCEEfajYCGCAHQQJJDQAgB0EVTwRAIAhBGGohA0EAIQQjAEGAIGsiBiQAAkACQEGVrBQgByAHQZWsFE8bIgIgByAHQQF2ayIFIAIgBUsbIglBqwFPBEAgCUEYbCECIAVB1arVKksNAkEIIQQgAkEIEEsiBUUNAiABIAcgBSAJIAdBwQBJIAMQBCAFIAJBCBBHDAELIAEgByAGQaoBIAdBwQBJIAMQBAsgBkGAIGokAAwCCyAEIAIQPQALIwBBEGsiBiQAAkACQAJAIAcEQCAHQQFHBEAgASAHQRhsaiEHIAFBGCIDaiEEA0AgBCsDACINIA1hIgogBEEYaysDACIOIA5hcUUNAyANIA5jBEAgBiAEKQMQNwMIIAYgBCkDCDcDACADIQICfwNAIAEgAmoiBSAFQRhrIgkpAxA3AxAgBSAJKQMINwMIIAUgCSkDADcDACABIAJBGEYNARogCiAFQTBrKwMAIg4gDmFxRQ0HIAJBGGshAiANIA5jDQALIAEgAmoLIgIgDTkDACACIAYpAwA3AwggAiAGKQMINwMQCyADQRhqIQMgBEEYaiIEIAdHDQALCyAGQRBqJAAMAwsAC0G0j8AAEEkAC0G0j8AAEEkACwsgACAIKAIUNgIIIAAgCCkCDDcCAAwBC0HXi8AAQSEQPyEBIABBgICAgHg2AgAgACABNgIECyAIQSBqJAAPCyAGIAQQPQALjwQBAn8gACABaiECAkACQCAAKAIEIgNBAXENACADQQJxRQ0BIAAoAgAiAyABaiEBIAAgA2siAEHcmcAAKAIARgRAIAIoAgRBA3FBA0cNAUHUmcAAIAE2AgAgAiACKAIEQX5xNgIEIAAgAUEBcjYCBCACIAE2AgAMAgsgACADEBELAkACQAJAIAIoAgQiA0ECcUUEQCACQeCZwAAoAgBGDQIgAkHcmcAAKAIARg0DIAIgA0F4cSICEBEgACABIAJqIgFBAXI2AgQgACABaiABNgIAIABB3JnAACgCAEcNAUHUmcAAIAE2AgAPCyACIANBfnE2AgQgACABQQFyNgIEIAAgAWogATYCAAsgAUGAAk8EQCAAIAEQEg8LAkBBzJnAACgCACICQQEgAUEDdnQiA3FFBEBBzJnAACACIANyNgIAIAFB+AFxQcSXwABqIgEhAgwBCyABQfgBcSIBQcSXwABqIQIgAUHMl8AAaigCACEBCyACIAA2AgggASAANgIMIAAgAjYCDCAAIAE2AggPC0HgmcAAIAA2AgBB2JnAAEHYmcAAKAIAIAFqIgE2AgAgACABQQFyNgIEIABB3JnAACgCAEcNAUHUmcAAQQA2AgBB3JnAAEEANgIADwtB3JnAACAANgIAQdSZwABB1JnAACgCACABaiIBNgIAIAAgAUEBcjYCBCAAIAFqIAE2AgALC7cDAQV/AkACQAJAAkACQAJAAkAgASACSwRAIAIOAwIDBAELAkAgAUUEQEEEIQQMAQsgAUECdCICQQQQSyIERQ0FIAFBB3EhBUEAIQIgAUEITwRAIAFB+P//P3EhBwNAIAQgBmoiAyACNgIAIANBHGogAkEHajYCACADQRhqIAJBBmo2AgAgA0EUaiACQQVqNgIAIANBEGogAkEEajYCACADQQxqIAJBA2o2AgAgA0EIaiACQQJqNgIAIANBBGogAkEBajYCACAGQSBqIQYgAkEIaiICIAdHDQALIAVFDQELIAQgAkECdGohAwNAIAMgAjYCACADQQRqIQMgAkEBaiECIAVBAWsiBQ0ACwsgACABNgIIIAAgBDYCBCAAIAE2AgAPCyAAQYCAgIB4NgIADwsgAEEANgIIIABCgICAgMAANwIADwtBBEEEEEsiAUUNAiAAQQE2AgggACABNgIEIABBATYCACABQQA2AgAPC0EIQQQQSyICRQ0CIAJBADYCACAAQQI2AgggACACNgIEIABBAjYCACACIAFBAWs2AgQPC0EEIAIQPQALQQRBBBBOAAtBBEEIEE4AC/YCAgd/BHwgACsDGCIJIAlhIAArAwAiCiAKYXEEQAJAIAArA0giCyALYSAAKwMwIgwgDGFxRQ0AIABByABBMCALIAxjIgMbaiICKwMAIgsgC2EgACAJIApjIgRBGGxqIgUrAwAiCSAJYXFFDQAgAEEwQcgAIAMbaiIDKwMAIgogCmEgACAERUEYbGoiACsDACIMIAxhcUUNACADIAAgAiAJIAtkIgQbIAogDGMiBhsiBysDACIJIAlhIAUgAiAAIAYbIAQbIggrAwAiCiAKYXFFDQAgASACIAUgBBsiAikDEDcDECABIAIpAwg3AwggASACKQMANwMAIAEgByAIIAkgCmMiBRsiAikDEDcDKCABIAIpAwg3AyAgASACKQMANwMYIAEgCCAHIAUbIgIpAxA3A0AgASACKQMINwM4IAEgAikDADcDMCABIAAgAyAGGyIAKQMANwNIIAEgACkDCDcDUCABIAApAxA3A1gPCwtBtI/AABBJAAuKAwEEfyAAKAIYIgFBgICAgHhGIAFFckUEQCAAKAIcIAFBA3RBCBBHCyAAKAIwIgEEQCAAKAI0IAFBA3RBCBBHCyAAKAIkIgFBgICAgHhGIAFFckUEQCAAKAIoIAFBAnRBBBBHCyAAKAJAIQMgACgCRCIEBEAgAyEBA0ACQCABKAIAIgJBgICAgHhGDQAgAgRAIAFBBGooAgAgAkECdEEEEEcLIAFBDGooAgAiAkUNACABQRBqKAIAIAJBAnRBBBBHCyABQRhqIQEgBEEBayIEDQALCyAAKAI8IgEEQCADIAFBGGxBBBBHCyAAKAJMIQMgACgCUCIEBEAgAyEBA0ACQCABKAIAIgJBgICAgHhGDQAgAgRAIAFBBGooAgAgAkEDdEEIEEcLIAFBDGooAgAiAgRAIAFBEGooAgAgAkEDdEEIEEcLIAFBGGooAgAiAkUNACABQRxqKAIAIAJBAnRBBBBHCyABQSRqIQEgBEEBayIEDQALCyAAKAJIIgAEQCADIABBJGxBBBBHCwvnAgEFfwJAIAFBzf97QRAgACAAQRBNGyIAa08NACAAQRAgAUELakF4cSABQQtJGyIEakEMahACIgJFDQAgAkEIayEBAkAgAEEBayIDIAJxRQRAIAEhAAwBCyACQQRrIgUoAgAiBkF4cSACIANqQQAgAGtxQQhrIgIgAEEAIAIgAWtBEE0baiIAIAFrIgJrIQMgBkEDcQRAIAAgAyAAKAIEQQFxckECcjYCBCAAIANqIgMgAygCBEEBcjYCBCAFIAIgBSgCAEEBcXJBAnI2AgAgASACaiIDIAMoAgRBAXI2AgQgASACEAwMAQsgASgCACEBIAAgAzYCBCAAIAEgAmo2AgALAkAgACgCBCIBQQNxRQ0AIAFBeHEiAiAEQRBqTQ0AIAAgBCABQQFxckECcjYCBCAAIARqIgEgAiAEayIEQQNyNgIEIAAgAmoiAiACKAIEQQFyNgIEIAEgBBAMCyAAQQhqIQMLIAMLggMBBH8gACgCDCECAkACQAJAIAFBgAJPBEAgACgCGCEDAkACQCAAIAJGBEAgAEEUQRAgACgCFCICG2ooAgAiAQ0BQQAhAgwCCyAAKAIIIgEgAjYCDCACIAE2AggMAQsgAEEUaiAAQRBqIAIbIQQDQCAEIQUgASICQRRqIAJBEGogAigCFCIBGyEEIAJBFEEQIAEbaigCACIBDQALIAVBADYCAAsgA0UNAgJAIAAoAhxBAnRBtJbAAGoiASgCACAARwRAIAMoAhAgAEYNASADIAI2AhQgAg0DDAQLIAEgAjYCACACRQ0EDAILIAMgAjYCECACDQEMAgsgACgCCCIAIAJHBEAgACACNgIMIAIgADYCCA8LQcyZwABBzJnAACgCAEF+IAFBA3Z3cTYCAA8LIAIgAzYCGCAAKAIQIgEEQCACIAE2AhAgASACNgIYCyAAKAIUIgBFDQAgAiAANgIUIAAgAjYCGA8LDwtB0JnAAEHQmcAAKAIAQX4gACgCHHdxNgIAC8MCAQR/IABCADcCECAAAn9BACABQQh2IgNFDQAaQR8gAUGAgIAITw0AGiABQSYgA2ciA2t2QQFxIANBAXRyQT5zCyICNgIcIAJBAnRBtJbAAGohBEEBIAJ0IgNB0JnAACgCAHFFBEAgBCAANgIAIAAgBDYCGCAAIAA2AgwgACAANgIIQdCZwABB0JnAACgCACADcjYCAA8LAkACQCABIAQoAgAiAygCBEF4cUYEQCADIQIMAQsgAUEZIAJBAXZrQQAgAkEfRxt0IQUDQCADIAVBHXZBBHFqIgQoAhAiAkUNAiAFQQF0IQUgAiEDIAIoAgRBeHEgAUcNAAsLIAIoAggiASAANgIMIAIgADYCCCAAQQA2AhggACACNgIMIAAgATYCCA8LIARBEGogADYCACAAIAM2AhggACAANgIMIAAgADYCCAvEAgIHfwJ8IAEoAgQhBCABKAIAIQcCQAJAAkAgACgCBCICIAAoAggiCEkEQCAAKAIAIQMgAkECdCEGIAJBA3QhBSABKAIIIARBGGxqIQEDQAJ8IAMoAhhBgICAgHhHBEAgAiADKAIgIgBPDQUgAygCHCAFaisDAAwBCyACIQAgAygCJEGAgICAeEcEQCACIAMoAiwiAE8NBCADKAIoIAZqKAIAIQALIAMrAwAgAysDCCAAuKKgCyEJIAIgAygCOCIATw0EIAMoAjQgBWorAwAhCiABQRBqIAI2AgAgAUEIaiAKOQMAIAEgCTkDACAGQQRqIQYgBUEIaiEFIAFBGGohASAEQQFqIQQgCCACQQFqIgJHDQALCyAHIAQ2AgAPCyACIABBiIzAABAmAAsgAiAAQfiLwAAQJgALIAIgAEGEj8AAECYAC44CAgF/AX4jAEEgayIEJAACQAJAAkAgACACTQRAIAEgAksNAUKAgICAwAIhBSAAIAFNDQIgBCAANgIIIAQgATYCDCAEIAUgBEEMaq2ENwMYIAQgBSAEQQhqrYQ3AxBBgIDAACAEQRBqIAMQKQALIAQgADYCCCAEIAI2AgwgBEKAgICAwAIiBSAEQQxqrYQ3AxggBCAFIARBCGqthDcDEEHfgMAAIARBEGogAxApAAsgBCABNgIIIAQgAjYCDCAEQoCAgIDAAiIFIARBDGqthDcDGAwBCyAEIAE2AgggBCACNgIMIAQgBSAEQQxqrYQ3AxgLIAQgBSAEQQhqrYQ3AxBBmIHAACAEQRBqIAMQKQAL5wUCCn8BfiMAQRBrIgYkAEEKIQIgACgCACIEIQAgBEHoB08EQANAIAZBBmogAmoiA0EEayAAIgUgAEGQzgBuIgBBkM4AbGsiB0H//wNxQeQAbiIIQQF0LwDSkkA7AAAgA0ECayAHIAhB5ABsa0H//wNxQQF0LwDSkkA7AAAgAkEEayECIAVB/6ziBEsNAAsLIABBCUsEQCACQQJrIgIgBkEGamogACAAQf//A3FB5ABuIgBB5ABsa0H//wNxQQF0LwDSkkA7AAALQQAgBCAAG0UEQCACQQFrIgIgBkEGamogAEEBdC0A05JAOgAACwJ/IAZBBmogAmohB0EAIQRBK0GAgMQAIAEoAggiA0GAgIABcSIAGyEIIANBgICABHFFRSEKAkBBCiACayILIABBFXZqIgAgAS8BDCIFSQRAAkACQCADQYCAgAhxRQRAIAUgAGshBUEAIQACQAJAAkAgA0EddkEDcUEBaw4DAAEAAgsgBSEADAELIAVB/v8DcUEBdiEACyADQf///wBxIQkgASgCBCEDIAEoAgAhAQNAIARB//8DcSAAQf//A3FPDQJBASECIARBAWohBCABIAkgAygCEBEBAEUNAAsMBAsgASABKQIIIgynQYCAgP95cUGwgICAAnI2AghBASECIAEoAgAiAyABKAIEIgkgCCAKECwNAyAFIABrQf//A3EhAANAIARB//8DcSAATw0CIARBAWohBCADQTAgCSgCEBEBAEUNAAsMAwtBASECIAEgAyAIIAoQLA0CIAEgByALIAMoAgwRAgANAkEAIQQgBSAAa0H//wNxIQADQCAEQf//A3EiBSAASSECIAAgBU0NAyAEQQFqIQQgASAJIAMoAhARAQBFDQALDAILIAMgByALIAkoAgwRAgANASABIAw3AghBAAwCC0EBIQIgASgCACIAIAEoAgQiASAIIAoQLA0AIAAgByALIAEoAgwRAgAhAgsgAgsgBkEQaiQAC4gCAQZ/IAAoAggiBCECAn9BASABQYABSQ0AGkECIAFBgBBJDQAaQQNBBCABQYCABEkbCyIGIAAoAgAgBGtLBH8gACAEIAYQHSAAKAIIBSACCyAAKAIEaiECAkAgAUGAAU8EQCABQT9xQYB/ciEFIAFBBnYhAyABQYAQSQRAIAIgBToAASACIANBwAFyOgAADAILIAFBDHYhByADQT9xQYB/ciEDIAFB//8DTQRAIAIgBToAAiACIAM6AAEgAiAHQeABcjoAAAwCCyACIAU6AAMgAiADOgACIAIgB0E/cUGAf3I6AAEgAiABQRJ2QXByOgAADAELIAIgAToAAAsgACAEIAZqNgIIQQALzwIBCH9BAEHo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gIACcSABQYCABElyDQBBgIAEIQYgAEGAgARxIAFBgIAISXINAEGAgAghBiAAQYCACHEgAUGAgBBJcg0AQYCAECEGIABBgIAQcSABQYCAIElyDQBBgIAgIQYgAEGAgCBxIAFBgIDAAElyDQBBgIDAACEGIABBgIDAAHEgAUGAgIABSXINAEGAgIABIQYgAEGAgIABcSABQYCAgAJJcg0AQYCAgAIhBiAAQYCAgAJxIAFBgICABElyDQBBgICABCEGIABBgICABHEgAUGAgIAISXINAEGAgIAIIQYgAEGAgIAIcSABQYCAgBBJcg0AQYCAgBAhBiAAQYCAgBBxIAFBgICAIElyDQBBgICAICEGIABBgICAIHEgAUGAgIDAAElyDQBBgICAwAAhBiAAQYCAgMAAcSABQYCAgIABSXINAEGAgICAASEGIABBgICAgAFxIAFBgICAgAJJcg0AQYCAgIACIQYgAEGAgICAAnEgAUGAgICABElyDQBBgICAgAQhBiAAQYCAgIAEcSABQQBOcg0AEEoACyAAIQEgACEDAkAgBmgiCEUNAAJAIAggC0kEQCAQIAhBGGxqIgEoAgBBgICAgHhHDQEMDAsgCCALQbyJwAAQJgALIAAgCHYiAyABKAIIIghJBEAgASgCFCIIIANLBEAgA0ECdCIIIAEoAhBqKAIAIQMgASgCBCAIaigCACEBDAILIAMgCEHcicAAECYACyADIAhBzInAABAmAAsgASAMTw0BIAcgDE8NAiAHIAEgDyABQQN0aisDACInIA8gB0EDdGorAwAiKGNFIAEgB08gJyAoYnJxGyEHIAMgDE8NAyAEIAxPDQQgBCADIA8gA0EDdGorAwAiJyAPIARBA3RqKwMAIihkRSADIARPICcgKGJycRshBCAAIAZqIgAgI0kNAAsCQAJAAkACQAJAIBZBAWsOBgMAAAECBAALQZyKwABBKEHEisAAED4ACyAFKAIUIgAEQCAFKAIQIABBAnRqQQRrKAIAIAdGDQkLIAUoAgwgAEYEQCAFQQxqECcLIAUoAhAgAEECdGogBzYCACAFIABBAWo2AhQMCAsgBSgCFCIABEAgBSgCECAAQQJ0akEEaygCACAERg0ICyAFKAIMIABGBEAgBUEMahAnCyAFKAIQIABBAnRqIAQ2AgAgBSAAQQFqNgIUDAcLIAUgBDYC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IQ4gAyEKIwBB8ABrIgckAAJ/AkAgBL0iEEL///////////8Ag0KAgICAgICA+P8AWg0AIAW9IhFC////////////AIMiD1AgEUIAUyIIIA9CAX1C/////////wdUcXIgD0KAgICAgICA+P8AUXIgD0KAgICAgICA+P8AVXIgD0KAgICAgICACH1CgICAgICAgPD/AFQgCHFyDQAgAUEDdCELQQAhCAJAA0AgCCALRg0BIAAgCGogCEEIaiEIKQMAQv///////////wCDQv/////////3/wBYDQALQcmIwABBLBA/rSEQIAdBGGohCUGAgICAeAwCCwJAIApFDQAgASAKRgRAIAFBAWohCSACIQgDQCAJQQFrIglBAkkNAiAIKAIAIQsgCyAIQQRqIggoAgBNDQALC0GciMAAQS0QP60hECAHQRhqIQlBgICAgHgMAgsCQCABRQRAQQghCwwBCyABQQN0IghBCBBLIgsEQCAIRQ0BIAsgACAI/AoAAAwBC0EIIAgQPQALAkACQCAKRQRAQYCAgIB4IQoMAQsgCkECdCIJQQQQSyIIRQ0BIAkEQCAIIAIgCfwKAAALIAitIAqtQiCGhCEPC0QAAAAAAADwPyAFoyEEIAdBADYCGCAHQRBqIQlBAAwCC0EEIAkQPQALQfWIwABBNhA/rSEQIAdBGGohCUGAgICAeAshCCAJIAg2AgACfyAHKAIYIghBgICAgHhGBEBBASEJIBCnDAELIAcgBygCEDYCaCAHQQQ2AmQgByAINgJgIAdBADYCXCAHQoCAgIDAADcCVCAHIAE2AlAgByALNgJMIAcgATYCSCAHIA83A0AgByAKNgI8IAdBgICAgHg2AjAgByAGNgIsIAdBADYCKCAHIAQ5AyAgByAQNwMYIAdBCGogB0EYahAXIAcoAgghCSAHKAIMCyEGIA4gCTYCACAOIAY2AgQgB0HwAGokACANKAIMIQogDSgCCCEGIAMEQCACIANBAnRBBBBHCyABBEAgACABQQN0QQgQRwsgDCAGQQFxIgA2AgggDCAKQQAgABs2AgQgDEEAIAogABs2AgAgDUEQaiQAIAwoAgAgDCgCBCAMKAIIIAxBEGokAAuBIAMmfwV8AX4jAEEQayIPJAAjAEFAaiIKJAAgCiAENgIoIAogAzYCJCAKIAI2AiAgCiABNgIcIAogADYC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ZSBmb3Igc2xpY2Ugb2YgbGVuZ3RoIMAASGNhbm5vdCBhY2Nlc3MgYSBUaHJlYWQgTG9jYWwgU3RvcmFnZSB2YWx1ZSBkdXJpbmcgb3IgYWZ0ZXIgZGVzdHJ1Y3Rpb246IMAAL3J1c3RjLzU5ODA3NjE2ZTFmYTI1NDA3MjRiZmJhYzE0ZDc5NzZkN2U0YTM4NjAvbGlicmFyeS9jb3JlL3NyYy9zbGljZS9zb3J0L3NoYXJlZC9zbWFsbHNvcnQucnMAL3J1c3RjLzU5ODA3NjE2ZTFmYTI1NDA3MjRiZmJhYzE0ZDc5NzZkN2U0YTM4NjAvbGlicmFyeS9jb3JlL3NyYy9zbGljZS9zb3J0L3N0YWJsZS9xdWlja3NvcnQucnMAL3J1c3RjLzU5ODA3NjE2ZTFmYTI1NDA3MjRiZmJhYzE0ZDc5NzZkN2U0YTM4NjAvbGlicmFyeS9zdGQvc3JjL3RocmVhZC9sb2NhbC5ycwAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93YXNtLWJpbmRnZW4tMC4yLjExOC9zcmMvZXh0ZXJucmVmLnJzAC9ydXN0Yy81OTgwNzYxNmUxZmEyNTQwNzI0YmZiYWMxNGQ3OTc2ZDdlNGEzODYwL2xpYnJhcnkvYWxsb2Mvc3JjL3Jhd192ZWMvbW9kLnJzAC9ydXN0L2RlcHMvZGxtYWxsb2MtMC4yLjExL3NyYy9kbG1hbGxvYy5ycwBzcmMvbGliLnJzAAAAAA4DEAAKAAAA0gAAABkAAAAOAxAACgAAANoAAAAaAAAADgMQAAoAAADaAAAAPQAAAA4DEAAKAAAAyQAAAB0AAAAOAxAACgAAAKoAAAAQAAAADgMQAAoAAACqAAAAIgAAAA4DEAAKAAAArQAAACIAAAAOAxAACgAAABcCAAAcAAAADgMQAAoAAAALAgAAJgAAAA4DEAAKAAAA8gEAACoAAAAOAxAACgAAAPgBAAAqAAAADgMQAAoAAAD+AQAAMgAAAA4DEAAKAAAAkgEAAA8AAAAOAxAACgAAAJIBAAAsAAAADgMQAAoAAACNAQAADwAAAA4DEAAKAAAAjQEAACwAAABzb3VyY2UgaW5kZXhlcyBtdXN0IGJlIGVtcHR5IG9yIG5vbmRlY3JlYXNpbmdzYW1wbGUgdmFsdWVzIG11c3QgYmUgZmluaXRlIGFuZCBhZGRyZXNzYWJsZXNhbXBsZSBtZXRhZGF0YSBtdXN0IGJlIGZpbml0ZSBhbmQgc2FtcGxlUmF0ZSBwb3NpdGl2ZQAOAxAACgAAABYBAAAkAAAADgMQAAoAAAAuAgAAMAAAAA4DEAAKAAAALwIAAB8AAAAOAxAACgAAAC8CAAA1AAAADgMQAAoAAADWAQAAIAAAAA4DEAAKAAAAsQEAAC0AAAAOAxAACgAAALIBAAAtAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZQ4DEAAKAAAAmgIAABYAAABzdHJhdGVneSBkb2VzIG5vdCByZXR1cm4gc291cmNlIGluZGV4ZXNzdHJhdGVneSBkb2VzIG5vdCByZXR1cm4gYWdncmVnYXRlIHZhbHVlc3JlZ2lzdGVyZWQgZGF0YXNldHMgbXVzdCBjb250YWluIGZpbml0ZSBjb29yZGluYXRlc3ggYW5kIHkgbXVzdCBoYXZlIHRoZSBzYW1lIGxlbmd0aA4DEAAKAAAAdgEAABIAAAAOAxAACgAAAHMBAAA8AAAADgMQAAoAAABMAgAAHAAAAA4DEAAKAAAATwIAACwAAAAOAxAACgAAAFACAAAdAAAADgMQAAoAAABRAgAAHQAAAA4DEAAKAAAAUgIAACUAAAABAAAADgMQAAoAAACUAAAAEgAAAA4DEAAKAAAAggAAABAAAAAOAxAACgAAAIIAAAAiAAAADgMQAAoAAACFAAAAIgAAAA4DEAAKAAAAAQEAAB0AAAAOAxAACgAAABwDAAAlAAAADgMQAAoAAABJAAAAQwAAAA4DEAAKAAAALQMAAA4AAAAOAxAACgAAACYDAAAnAAAAZGF0YXNldCBoYW5kbGUgd2FzIG5vdCBmb3VuZA4DEAAKAAAAPwMAACUAAAAOAxAACgAAAAoDAAAlAAAADgMQAAoAAABRAwAAJQAAANoBEABPAAAA3wEAABkAAABtaWQgPiBsZW4AAAB6ARAAXwAAAE0AAAAfAAAAegEQAF8AAABHAAAAFwAAAA4DEAAKAAAAfwEAABoAAAAOAxAACgAAAPMAAAAWAAAADgMQAAoAAABJAAAAQwAAAA4DEAAKAAAASQAAAEMAAAAqAhAAZwAAAHwAAAARAAAAKgIQAGcAAACJAAAAEQAAAAUAAAAMAAAABAAAAAYAAAAHAAAACAAAAAAAAAAIAAAABAAAAAkAAAAKAAAACwAAAAwAAAANAAAAEAAAAAQAAAAOAAAADwAAABAAAAARAAAAbV3L1ixQ62N4QaZXcRuLuRWiXFU0VQfUU3itgVHwo/dhc3NlcnRpb24gZmFpbGVkOiBwc2l6ZSA+PSBzaXplICsgbWluX292ZXJoZWFkAADjAhAAKgAAALEEAAAJAAAAYXNzZXJ0aW9uIGZhaWxlZDogcHNpemUgPD0gc2l6ZSArIG1heF9vdmVyaGVhZAAA4wIQACoAAAC3BAAADQAAAAAAAAAIAAAABAAAABIAAABBY2Nlc3NFcnJvcgAFAAAADAAAAAQAAAATAAAAY2FwYWNpdHkgb3ZlcmZsb3cAAACSAhAAUAAAABwAAAAFAAAAfSB9Y2FsbGVkIGBPcHRpb246OnVud3JhcCgpYCBvbiBhIGBOb25lYCB2YWx1ZTAwMDEwMjAzMDQwNTA2MDcwODA5MTAxMTEyMTMxNDE1MTYxNzE4MTkyMDIxMjIyMzI0MjUyNjI3MjgyOTMwMzEzMjMzMzQzNTM2MzczODM5NDA0MTQyNDM0NDQ1NDY0NzQ4NDk1MDUxNTI1MzU0NTU1NjU3NTg1OTYwNjE2MjYzNjQ2NTY2Njc2ODY5NzA3MTcyNzM3NDc1NzY3Nzc4Nzk4MDgxODI4Mzg0ODU4Njg3ODg4OTkwOTE5MjkzOTQ5NTk2OTc5ODk5YXR0ZW1wdCB0byBjYWxjdWxhdGUgdGhlIHJlbWFpbmRlciB3aXRoIGEgZGl2aXNvciBvZiB6ZXJvdXNlci1wcm92aWRlZCBjb21wYXJpc29uIGZ1bmN0aW9uIGRvZXMgbm90IGNvcnJlY3RseSBpbXBsZW1lbnQgYSB0b3RhbCBvcmRlcgAaARAAXwAAAFwDAAAFAAAAUmVmQ2VsbCBhbHJlYWR5IG11dGFibHkgYm9ycm93ZWRSZWZDZWxsIGFscmVhZHkgYm9ycm93ZWQAQfCVwAALAQgAQYCWwAALAQQAfAlwcm9kdWNlcnMCCGxhbmd1YWdlAQRSdXN0AAxwcm9jZXNzZWQtYnkDBXJ1c3RjHTEuOTUuMCAoNTk4MDc2MTZlIDIwMjYtMDQtMTQpBndhbHJ1cwYwLjI2LjEMd2FzbS1iaW5kZ2VuEzAuMi4xMTggKDc1M2JiN2ZmNCkAaw90YXJnZXRfZmVhdHVyZXMGKw9tdXRhYmxlLWdsb2JhbHMrE25vbnRyYXBwaW5nLWZwdG9pbnQrC2J1bGstbWVtb3J5KwhzaWduLWV4dCsPcmVmZXJlbmNlLXR5cGVzKwptdWx0aXZhbHVl", "" + import.meta.url));
|
|
2842
|
-
let t =
|
|
2857
|
+
let t = Yr();
|
|
2843
2858
|
(typeof e == "string" || typeof Request == "function" && e instanceof Request || typeof URL == "function" && e instanceof URL) && (e = fetch(e));
|
|
2844
|
-
let { instance: n, module: r } = await
|
|
2845
|
-
return
|
|
2859
|
+
let { instance: n, module: r } = await pi(await e, t);
|
|
2860
|
+
return fi(n, r);
|
|
2846
2861
|
}
|
|
2847
2862
|
//#endregion
|
|
2848
2863
|
//#region src/core/wasmSampling.ts
|
|
2849
|
-
var
|
|
2864
|
+
var hi = {
|
|
2850
2865
|
none: 0,
|
|
2851
2866
|
peak: 1,
|
|
2852
2867
|
lttb: 2,
|
|
@@ -2855,24 +2870,24 @@ var di = {
|
|
|
2855
2870
|
max: 5,
|
|
2856
2871
|
minmax: 6,
|
|
2857
2872
|
sum: 7
|
|
2858
|
-
},
|
|
2859
|
-
function
|
|
2873
|
+
}, gi;
|
|
2874
|
+
function _i(e, t) {
|
|
2860
2875
|
return t === 0 ? 0 : Number.isFinite(e) ? Math.min(t, Math.max(1, Math.floor(e))) : t;
|
|
2861
2876
|
}
|
|
2862
|
-
function
|
|
2877
|
+
function vi(e) {
|
|
2863
2878
|
if (e.x.length !== e.y.length) throw Error("x and y must have the same length");
|
|
2864
2879
|
}
|
|
2865
|
-
function
|
|
2866
|
-
return
|
|
2880
|
+
function yi(e) {
|
|
2881
|
+
return gi ??= Promise.resolve(mi(e)).then(() => void 0), gi;
|
|
2867
2882
|
}
|
|
2868
|
-
async function
|
|
2869
|
-
|
|
2870
|
-
let t =
|
|
2883
|
+
async function bi(e) {
|
|
2884
|
+
vi(e), await yi();
|
|
2885
|
+
let t = _i(e.targetPointCount, e.x.length), n = hi[e.strategy];
|
|
2871
2886
|
if (e.strategy !== "average" && e.strategy !== "sum") return {
|
|
2872
2887
|
kind: "source-indexes",
|
|
2873
|
-
sourceIndexes:
|
|
2888
|
+
sourceIndexes: Jr(e.x, e.y, n, t)
|
|
2874
2889
|
};
|
|
2875
|
-
let r =
|
|
2890
|
+
let r = qr(e.x, e.y, n, t), i = new Float64Array(r.length / 2), a = new Float64Array(r.length / 2);
|
|
2876
2891
|
for (let e = 0; e < i.length; e += 1) i[e] = r[e * 2], a[e] = r[e * 2 + 1];
|
|
2877
2892
|
return {
|
|
2878
2893
|
kind: "aggregates",
|
|
@@ -2880,38 +2895,54 @@ async function gi(e) {
|
|
|
2880
2895
|
y: a
|
|
2881
2896
|
};
|
|
2882
2897
|
}
|
|
2883
|
-
async function
|
|
2898
|
+
async function xi(e, t) {
|
|
2884
2899
|
if (e.length !== t.length) throw Error("x and y must have the same length");
|
|
2885
|
-
await
|
|
2886
|
-
let n =
|
|
2900
|
+
await yi();
|
|
2901
|
+
let n = Gr(e, t);
|
|
2887
2902
|
return n.length === 4 ? {
|
|
2888
2903
|
x: [n[0], n[1]],
|
|
2889
2904
|
y: [n[2], n[3]]
|
|
2890
2905
|
} : void 0;
|
|
2891
2906
|
}
|
|
2892
|
-
async function
|
|
2907
|
+
async function Si(e, t, n) {
|
|
2893
2908
|
if (e.length !== t.length) throw Error("x and y must have the same length");
|
|
2894
|
-
await
|
|
2895
|
-
let r =
|
|
2909
|
+
await yi();
|
|
2910
|
+
let r = Kr(e, t, n[0], n[1]);
|
|
2896
2911
|
return [r[0], r[1]];
|
|
2897
2912
|
}
|
|
2898
2913
|
//#endregion
|
|
2899
2914
|
//#region src/components/core/trackPagination.ts
|
|
2900
|
-
var
|
|
2915
|
+
var Ci = (e, t) => t ? e.filter((e) => e.series.length > 0) : e, wi = (e, t, n, r, i) => {
|
|
2901
2916
|
let a = t?.[i];
|
|
2902
2917
|
if (a !== void 0) return a;
|
|
2903
2918
|
if (e !== void 0) return n === 1 ? e : typeof e == "number" ? e + r : `${e}-${r + 1}`;
|
|
2904
|
-
},
|
|
2919
|
+
}, Ti = (e, t, n) => (r) => {
|
|
2905
2920
|
let i = n(), a = i.findIndex((e) => e.id === r);
|
|
2906
|
-
return
|
|
2921
|
+
return wi(e(), t(), i.length, a >= 0 ? a : 0, r);
|
|
2907
2922
|
};
|
|
2908
2923
|
//#endregion
|
|
2924
|
+
//#region src/components/core/yAxisLayoutMetrics.ts
|
|
2925
|
+
function Ei(e, t, n, r) {
|
|
2926
|
+
return e === "independent" ? Object.fromEntries(t.flatMap((e, t) => {
|
|
2927
|
+
let n = r[t];
|
|
2928
|
+
return n ? [[e.id, n]] : [];
|
|
2929
|
+
})) : n;
|
|
2930
|
+
}
|
|
2931
|
+
function Di(e, t, n, r, i, a, o, s) {
|
|
2932
|
+
let c = e.filter((e) => e.visibleSeries.length > 0).flatMap((e) => ur(e, t, n, r, i)).map((e) => dr(e.domain, a, void 0, e.seriesList[0]?.unit, o, s).tickTextWidth), l = Math.max(7, ...c), u = l + 7 + 4, d = -(7 + l + 0 + 12 / 2);
|
|
2933
|
+
return {
|
|
2934
|
+
tickClearance: u,
|
|
2935
|
+
fullClearance: l + 7 + 0 + 12 + 4,
|
|
2936
|
+
labelCenterX: d
|
|
2937
|
+
};
|
|
2938
|
+
}
|
|
2939
|
+
//#endregion
|
|
2909
2940
|
//#region src/components/core/useWaveformLayout.ts
|
|
2910
|
-
function
|
|
2941
|
+
function Oi(e) {
|
|
2911
2942
|
let { props: n, preparedSeries: r, currentPage: i, hiddenSeriesIdSet: a, chartWidth: o, innerHeight: s, isCleanView: c, sharedTransform: l, independentTransforms: u, sharedYDomains: d, independentYDomains: f, annotationInteraction: p, linePointOverrides: m } = e, h = t(() => r.value.map((e, t) => ({
|
|
2912
2943
|
...e,
|
|
2913
2944
|
color: e.color ?? (t === 0 ? n.lineColor : Vt[t % Vt.length])
|
|
2914
|
-
}))), g = t(() =>
|
|
2945
|
+
}))), g = t(() => Bn(n.grid)), _ = t(() => {
|
|
2915
2946
|
let e = /* @__PURE__ */ new Map();
|
|
2916
2947
|
h.value.forEach((t) => {
|
|
2917
2948
|
let n = t.trackId || t.id, r = e.get(n);
|
|
@@ -2930,67 +2961,57 @@ function Si(e) {
|
|
|
2930
2961
|
yDomain: o.length ? ht(o) : [0, 1]
|
|
2931
2962
|
};
|
|
2932
2963
|
});
|
|
2933
|
-
}), v = t(() =>
|
|
2964
|
+
}), v = t(() => En(n.rendering)), y = t(() => Ci(_.value, g.value.hideEmptyTracks)), b = t(() => Hn(y.value.length, g.value)), x = t(() => Un(y.value, i.value, g.value)), S = t(() => {
|
|
2934
2965
|
let e = x.value.filter((e) => e.series.length > 0);
|
|
2935
2966
|
return g.value.fillIncompleteLastRow && e.length > 0 ? e : x.value;
|
|
2936
|
-
}), C = t(() => {
|
|
2937
|
-
let e =
|
|
2938
|
-
return {
|
|
2939
|
-
tickClearance: r,
|
|
2940
|
-
fullClearance: t + 7 + 0 + 12 + 4,
|
|
2941
|
-
labelCenterX: i
|
|
2942
|
-
};
|
|
2943
|
-
}), w = t(() => _.value.some((e) => e.visibleSeries.length === 1 && !!(e.visibleSeries[0]?.name.trim() || n.yLabel))), T = t(() => _.value.some((e) => e.visibleSeries.length > 0)), E = t(() => Math.max(Lt.left, w.value ? C.value.fullClearance : T.value ? C.value.tickClearance : 0)), D = t(() => cr(S.value.filter((e) => e.visibleSeries.length > 0), n.overlayMode, n.yDomain, n.yDomains, n.axes?.y?.splitNumber, n.axes?.y?.nice !== !1)), O = t(() => n.overlayMode === "multi-axis" ? Math.max(E.value, D.value.clearance.left) : E.value), k = t(() => n.overlayMode === "multi-axis" ? Math.max(Lt.right, D.value.clearance.right) : Lt.right), A = t(() => Math.max(0, o.value - O.value - k.value)), j = t(() => {
|
|
2944
|
-
let e = Un(n.displayMode), t = g.value.columnCount, r = t > 1, i = Math.max(e, C.value.fullClearance), a = Math.max(e, C.value.tickClearance), o = (A.value - i * Math.max(0, t - 1)) / t >= 120;
|
|
2967
|
+
}), C = t(() => rr(s.value, n.axes?.y?.splitNumber)), w = t(() => Ei(n.displayMode, _.value, d.value, f.value)), T = t(() => Di(_.value, n.overlayMode, n.yDomain, n.yDomains, w.value, n.axes?.y?.nice !== !1, C.value, n.displayMode === "compact")), E = t(() => _.value.some((e) => e.visibleSeries.length === 1 && !!(e.visibleSeries[0]?.name.trim() || n.yLabel))), D = t(() => _.value.some((e) => e.visibleSeries.length > 0)), O = t(() => Math.max(Lt.left, E.value ? T.value.fullClearance : D.value ? T.value.tickClearance : 0)), k = t(() => fr(S.value.filter((e) => e.visibleSeries.length > 0), n.overlayMode, n.yDomain, n.yDomains, C.value, n.axes?.y?.nice !== !1, n.displayMode === "compact", w.value)), A = t(() => n.overlayMode === "multi-axis" ? Math.max(O.value, k.value.clearance.left) : O.value), j = t(() => n.overlayMode === "multi-axis" ? Math.max(Lt.right, k.value.clearance.right) : Lt.right), M = t(() => Math.max(0, o.value - A.value - j.value)), N = t(() => {
|
|
2968
|
+
let e = Wn(n.displayMode), t = g.value.columnCount, r = t > 1, i = Math.max(e, T.value.fullClearance), a = Math.max(e, T.value.tickClearance), o = (M.value - i * Math.max(0, t - 1)) / t >= 120;
|
|
2945
2969
|
return {
|
|
2946
|
-
horizontalGap: n.overlayMode === "multi-axis" && r &&
|
|
2947
|
-
hideSecondaryLabels: n.overlayMode !== "multi-axis" && r &&
|
|
2970
|
+
horizontalGap: n.overlayMode === "multi-axis" && r && D.value ? Math.max(e, k.value.clearance.left + k.value.clearance.right) : r && D.value ? E.value && o ? i : a : e,
|
|
2971
|
+
hideSecondaryLabels: n.overlayMode !== "multi-axis" && r && E.value && !o
|
|
2948
2972
|
};
|
|
2949
|
-
}),
|
|
2973
|
+
}), P = t(() => h.value.length > 0), F = t(() => M.value > 0 && s.value > 0), I = t(() => n.xLabel ?? `时间(${n.timeUnit})`), L = t(() => n.interactionMode), R = t(() => L.value !== "annotation"), z = t(() => {
|
|
2950
2974
|
let e = [];
|
|
2951
2975
|
return _.value.forEach((t) => {
|
|
2952
2976
|
t.visibleSeries.length && e.push(t.xDomain[0], t.xDomain[1]);
|
|
2953
2977
|
}), ht(e);
|
|
2954
|
-
}),
|
|
2978
|
+
}), B = t(() => {
|
|
2955
2979
|
let e = n.initialXDomain;
|
|
2956
|
-
return e && Number.isFinite(e[0]) && Number.isFinite(e[1]) && e[0] !== e[1] ?
|
|
2957
|
-
}),
|
|
2980
|
+
return e && Number.isFinite(e[0]) && Number.isFinite(e[1]) && e[0] !== e[1] ? Yn(e[0] < e[1] ? e : [e[1], e[0]], n.xDomainStrategy, !0) : Yn(z.value, n.xDomainStrategy);
|
|
2981
|
+
}), V = (e) => {
|
|
2958
2982
|
let t = n.initialXDomains?.[e.series?.trackId ?? e.series?.id ?? e.id] ?? (e.series ? n.initialXDomains?.[e.series.id] : void 0) ?? n.initialXDomain;
|
|
2959
|
-
return t && Number.isFinite(t[0]) && Number.isFinite(t[1]) && t[0] !== t[1] ?
|
|
2960
|
-
},
|
|
2983
|
+
return t && Number.isFinite(t[0]) && Number.isFinite(t[1]) && t[0] !== t[1] ? Yn(t[0] < t[1] ? t : [t[1], t[0]], n.xDomainStrategy, !0) : Yn(ht(e.seriesList.flatMap((e) => e.xDomain)), n.xDomainStrategy);
|
|
2984
|
+
}, H = t(() => l.value.rescaleX(W(B.value, [0, M.value])).domain()), U = t(() => Gn(M.value, s.value, g.value, n.displayMode, S.value.map(Boolean), N.value.horizontalGap).map((e, t) => ({
|
|
2961
2985
|
...e,
|
|
2962
2986
|
series: S.value[t]
|
|
2963
|
-
}))),
|
|
2964
|
-
cells:
|
|
2987
|
+
}))), G = t(() => Zn({
|
|
2988
|
+
cells: U.value,
|
|
2965
2989
|
grid: g.value,
|
|
2966
2990
|
displayMode: n.displayMode,
|
|
2967
2991
|
overlayMode: n.overlayMode,
|
|
2968
2992
|
independentTransforms: u.value,
|
|
2969
|
-
sharedZoomDomain:
|
|
2970
|
-
initialXDomain: n.initialXDomain ?
|
|
2993
|
+
sharedZoomDomain: H.value,
|
|
2994
|
+
initialXDomain: n.initialXDomain ? B.value : void 0,
|
|
2971
2995
|
initialXDomains: n.initialXDomains,
|
|
2972
2996
|
xDomainStrategy: n.xDomainStrategy,
|
|
2973
2997
|
fixedYDomain: n.yDomain,
|
|
2974
2998
|
fixedYDomains: n.yDomains,
|
|
2975
|
-
yDomains:
|
|
2976
|
-
let n = f.value[t];
|
|
2977
|
-
return n ? [[e.id, n]] : [];
|
|
2978
|
-
})) : d.value,
|
|
2999
|
+
yDomains: w.value,
|
|
2979
3000
|
timeUnit: n.timeUnit,
|
|
2980
3001
|
xAxisLabelFormatter: n.axes?.x?.labelFormatter,
|
|
2981
3002
|
yAxisSplitNumber: n.axes?.y?.splitNumber,
|
|
2982
3003
|
yAxisNice: n.axes?.y?.nice,
|
|
2983
3004
|
rendering: v.value,
|
|
2984
3005
|
linePointOverrides: m?.value,
|
|
2985
|
-
hideSecondaryLabels: c.value ||
|
|
2986
|
-
yAxisLabelX:
|
|
2987
|
-
yAxisSlots: n.overlayMode === "multi-axis" ?
|
|
2988
|
-
showCompactEmptyTracks: n.displayMode === "compact" &&
|
|
2989
|
-
})),
|
|
3006
|
+
hideSecondaryLabels: c.value || N.value.hideSecondaryLabels,
|
|
3007
|
+
yAxisLabelX: k.value.slots.find((e) => e.side === "left" && e.sideIndex === 0)?.labelOffset ?? T.value.labelCenterX,
|
|
3008
|
+
yAxisSlots: n.overlayMode === "multi-axis" ? k.value.slots : void 0,
|
|
3009
|
+
showCompactEmptyTracks: n.displayMode === "compact" && P.value
|
|
3010
|
+
})), ee = (e) => e.seriesList.map((t) => ({
|
|
2990
3011
|
...e,
|
|
2991
3012
|
series: t,
|
|
2992
3013
|
yScale: e.seriesPaths.find((e) => e.series.id === t.id)?.yScale ?? e.yScale
|
|
2993
|
-
})),
|
|
3014
|
+
})), te = (e, t) => e.seriesPaths.find((e) => e.series.id === t)?.yScale ?? e.yScale, ne = t(() => G.value.flatMap(ee));
|
|
2994
3015
|
return {
|
|
2995
3016
|
chartSeries: h,
|
|
2996
3017
|
chartTracks: _,
|
|
@@ -2999,23 +3020,23 @@ function Si(e) {
|
|
|
2999
3020
|
gridOptions: g,
|
|
3000
3021
|
pageCount: b,
|
|
3001
3022
|
pagedTracks: x,
|
|
3002
|
-
resolvedChartLeftMargin:
|
|
3003
|
-
innerWidth:
|
|
3004
|
-
hasVisibleWaveformData:
|
|
3005
|
-
hasWaveformData:
|
|
3006
|
-
hasChartArea:
|
|
3007
|
-
resolvedXLabel:
|
|
3008
|
-
activeInteractionMode:
|
|
3009
|
-
isZoomMode:
|
|
3010
|
-
initialXDomain:
|
|
3011
|
-
sharedZoomDomain:
|
|
3012
|
-
resolveInitialTrackDomain:
|
|
3013
|
-
gridCells:
|
|
3014
|
-
trackLayouts:
|
|
3015
|
-
annotationLayoutsForTrack:
|
|
3016
|
-
resolveSeriesYScale:
|
|
3017
|
-
annotationTrackLayouts:
|
|
3018
|
-
renderedAnnotations: t(() => n.annotationsVisible ? Me(n.annotations,
|
|
3023
|
+
resolvedChartLeftMargin: A,
|
|
3024
|
+
innerWidth: M,
|
|
3025
|
+
hasVisibleWaveformData: D,
|
|
3026
|
+
hasWaveformData: P,
|
|
3027
|
+
hasChartArea: F,
|
|
3028
|
+
resolvedXLabel: I,
|
|
3029
|
+
activeInteractionMode: L,
|
|
3030
|
+
isZoomMode: R,
|
|
3031
|
+
initialXDomain: B,
|
|
3032
|
+
sharedZoomDomain: H,
|
|
3033
|
+
resolveInitialTrackDomain: V,
|
|
3034
|
+
gridCells: U,
|
|
3035
|
+
trackLayouts: G,
|
|
3036
|
+
annotationLayoutsForTrack: ee,
|
|
3037
|
+
resolveSeriesYScale: te,
|
|
3038
|
+
annotationTrackLayouts: ne,
|
|
3039
|
+
renderedAnnotations: t(() => n.annotationsVisible ? Me(n.annotations, ne.value, M.value, s.value) : []),
|
|
3019
3040
|
editorSeries: t(() => {
|
|
3020
3041
|
let e = p.editorDraft.value?.annotation.seriesId, t = h.value.find((t) => t.id === e);
|
|
3021
3042
|
return t ? {
|
|
@@ -3025,16 +3046,16 @@ function Si(e) {
|
|
|
3025
3046
|
unit: t.unit
|
|
3026
3047
|
} : void 0;
|
|
3027
3048
|
}),
|
|
3028
|
-
resolveFrameNumber:
|
|
3049
|
+
resolveFrameNumber: Ti(() => n.frameNumber, () => n.frameNumbers, () => _.value)
|
|
3029
3050
|
};
|
|
3030
3051
|
}
|
|
3031
|
-
var
|
|
3032
|
-
function
|
|
3052
|
+
var ki = 1e-6;
|
|
3053
|
+
function Ai(e) {
|
|
3033
3054
|
return Number.isFinite(e) ? Math.max(1, e) : 1;
|
|
3034
3055
|
}
|
|
3035
|
-
function
|
|
3036
|
-
let i =
|
|
3037
|
-
if (!(d >
|
|
3056
|
+
function ji({ naturalWidth: e, naturalHeight: t, availableWidth: n, rotation: r }) {
|
|
3057
|
+
let i = Ai(e), a = Ai(t), o = Ai(n), s = Number.isFinite(r) ? r : 0, c = s * Math.PI / 180, l = Math.abs(Math.cos(c)), u = Math.abs(Math.sin(c)), d = (s % 360 + 360) % 360;
|
|
3058
|
+
if (!(d > ki && Math.abs(d - 360) > ki)) {
|
|
3038
3059
|
let e = Math.max(1, Math.ceil(i / o)), t = o, n = a * e;
|
|
3039
3060
|
return {
|
|
3040
3061
|
textWidth: t,
|
|
@@ -3059,7 +3080,7 @@ function Ti({ naturalWidth: e, naturalHeight: t, availableWidth: n, rotation: r
|
|
|
3059
3080
|
}
|
|
3060
3081
|
//#endregion
|
|
3061
3082
|
//#region src/components/core/useWaveformPresentation.ts
|
|
3062
|
-
function
|
|
3083
|
+
function Mi(e) {
|
|
3063
3084
|
let { props: n, observedWidth: r, observedHeight: i, measuredTitleWidth: a, measuredTitleHeight: o, internalHiddenSeriesIds: s, paginationBandHeight: c } = e, l = t(() => Number.isFinite(n.width) ? Math.max(0, n.width ?? 0) : void 0), u = t(() => Number.isFinite(n.height) ? Math.max(180, n.height ?? 0) : void 0), d = t(() => r.value > 0 ? r.value : l.value ?? 0), f = t(() => i.value > 0 ? i.value : u.value ?? 180), p = t(() => ({
|
|
3064
3085
|
width: l.value === void 0 ? "100%" : `${l.value}px`,
|
|
3065
3086
|
height: u.value === void 0 ? "100%" : `${u.value}px`
|
|
@@ -3104,7 +3125,7 @@ function Ei(e) {
|
|
|
3104
3125
|
maxWidth: O.value ? "none" : `${j.value}px`,
|
|
3105
3126
|
whiteSpace: O.value ? "nowrap" : "normal",
|
|
3106
3127
|
overflowWrap: O.value ? "normal" : "anywhere"
|
|
3107
|
-
})), N = t(() =>
|
|
3128
|
+
})), N = t(() => ji({
|
|
3108
3129
|
naturalWidth: a.value || A.value,
|
|
3109
3130
|
naturalHeight: o.value || E.value * 1.2,
|
|
3110
3131
|
availableWidth: j.value,
|
|
@@ -3160,66 +3181,66 @@ function Ei(e) {
|
|
|
3160
3181
|
}
|
|
3161
3182
|
//#endregion
|
|
3162
3183
|
//#region src/core/samplingReferenceValues.ts
|
|
3163
|
-
function
|
|
3184
|
+
function Ni(e, t) {
|
|
3164
3185
|
return t === 0 ? 0 : Number.isFinite(e) ? Math.min(t, Math.max(1, Math.floor(e))) : t;
|
|
3165
3186
|
}
|
|
3166
|
-
function
|
|
3187
|
+
function Pi(e, t, n, r) {
|
|
3167
3188
|
let i = r - n;
|
|
3168
3189
|
return {
|
|
3169
3190
|
start: n + Math.floor(e * i / t),
|
|
3170
3191
|
end: n + Math.floor((e + 1) * i / t)
|
|
3171
3192
|
};
|
|
3172
3193
|
}
|
|
3173
|
-
function
|
|
3194
|
+
function Fi(e, t) {
|
|
3174
3195
|
e[e.length - 1] !== t && e.push(t);
|
|
3175
3196
|
}
|
|
3176
|
-
function
|
|
3197
|
+
function Ii(e, t, n) {
|
|
3177
3198
|
if (e <= t) return Array.from({ length: e }, (e, t) => t);
|
|
3178
3199
|
if (t === 1) return [0];
|
|
3179
3200
|
if (t === 2) return [0, e - 1];
|
|
3180
3201
|
let r = [0];
|
|
3181
|
-
return n().forEach((e) =>
|
|
3202
|
+
return n().forEach((e) => Fi(r, e)), Fi(r, e - 1), r;
|
|
3182
3203
|
}
|
|
3183
|
-
function
|
|
3204
|
+
function Li(e, t, n) {
|
|
3184
3205
|
let r = n === "minmax" ? Math.floor((t - 2) / 2) : Math.max(0, t - 2);
|
|
3185
|
-
return
|
|
3206
|
+
return Ii(e.length, t, () => {
|
|
3186
3207
|
if (!r) return [];
|
|
3187
3208
|
let t = [];
|
|
3188
3209
|
for (let i = 0; i < r; i += 1) {
|
|
3189
|
-
let a =
|
|
3210
|
+
let a = Pi(i, r, 1, e.length - 1), o = a.start, s = a.start;
|
|
3190
3211
|
for (let t = a.start + 1; t < a.end; t += 1) e[t] < e[o] && (o = t), e[t] > e[s] && (s = t);
|
|
3191
|
-
n === "min" ?
|
|
3212
|
+
n === "min" ? Fi(t, o) : n === "max" ? Fi(t, s) : o <= s ? (Fi(t, o), Fi(t, s)) : (Fi(t, s), Fi(t, o));
|
|
3192
3213
|
}
|
|
3193
3214
|
return t;
|
|
3194
3215
|
});
|
|
3195
3216
|
}
|
|
3196
|
-
function
|
|
3217
|
+
function Ri(e, t) {
|
|
3197
3218
|
let n = Math.floor((t - 2) / 4);
|
|
3198
|
-
return
|
|
3219
|
+
return Ii(e.length, t, () => {
|
|
3199
3220
|
if (!n) return [];
|
|
3200
3221
|
let t = [];
|
|
3201
3222
|
for (let r = 0; r < n; r += 1) {
|
|
3202
|
-
let i =
|
|
3223
|
+
let i = Pi(r, n, 1, e.length - 1), a = i.start, o = i.start;
|
|
3203
3224
|
for (let t = i.start + 1; t < i.end; t += 1) e[t] < e[a] && (a = t), e[t] > e[o] && (o = t);
|
|
3204
3225
|
[
|
|
3205
3226
|
i.start,
|
|
3206
3227
|
a,
|
|
3207
3228
|
o,
|
|
3208
3229
|
i.end - 1
|
|
3209
|
-
].sort((e, t) => e - t).forEach((e) =>
|
|
3230
|
+
].sort((e, t) => e - t).forEach((e) => Fi(t, e));
|
|
3210
3231
|
}
|
|
3211
3232
|
return t;
|
|
3212
3233
|
});
|
|
3213
3234
|
}
|
|
3214
|
-
function
|
|
3215
|
-
return
|
|
3235
|
+
function zi(e, t, n) {
|
|
3236
|
+
return Ii(e.length, n, () => {
|
|
3216
3237
|
let r = (e.length - 2) / (n - 2), i = [], a = 0;
|
|
3217
3238
|
for (let o = 0; o < n - 2; o += 1) {
|
|
3218
3239
|
let s = Math.min(e.length, Math.floor((o + 1) * r) + 1), c = Math.min(e.length, Math.floor((o + 2) * r) + 1), l = 0, u = 0;
|
|
3219
3240
|
for (let n = s; n < c; n += 1) l += e[n], u += t[n];
|
|
3220
3241
|
let d = c - s;
|
|
3221
3242
|
d ? (l /= d, u /= d) : (l = e[e.length - 1], u = t[t.length - 1]);
|
|
3222
|
-
let f =
|
|
3243
|
+
let f = Pi(o, n - 2, 1, e.length - 1), p = f.start, m = -1;
|
|
3223
3244
|
for (let n = f.start; n < f.end; n += 1) {
|
|
3224
3245
|
let r = Math.abs((e[a] - l) * (t[n] - t[a]) - (e[a] - e[n]) * (u - t[a]));
|
|
3225
3246
|
r > m && (m = r, p = n);
|
|
@@ -3229,10 +3250,10 @@ function Ni(e, t, n) {
|
|
|
3229
3250
|
return i;
|
|
3230
3251
|
});
|
|
3231
3252
|
}
|
|
3232
|
-
function
|
|
3233
|
-
let i =
|
|
3253
|
+
function Bi(e, t, n, r) {
|
|
3254
|
+
let i = Ni(n, e.length), a = new Float64Array(i), o = new Float64Array(i);
|
|
3234
3255
|
for (let n = 0; n < i; n += 1) {
|
|
3235
|
-
let s =
|
|
3256
|
+
let s = Pi(n, i, 0, e.length);
|
|
3236
3257
|
for (let r = s.start; r < s.end; r += 1) a[n] += e[r], o[n] += t[r];
|
|
3237
3258
|
let c = s.end - s.start;
|
|
3238
3259
|
a[n] /= c, r === "average" && (o[n] /= c);
|
|
@@ -3243,10 +3264,10 @@ function Pi(e, t, n, r) {
|
|
|
3243
3264
|
y: o
|
|
3244
3265
|
};
|
|
3245
3266
|
}
|
|
3246
|
-
function
|
|
3267
|
+
function Vi(e, t, n, r) {
|
|
3247
3268
|
if (e.length !== t.length) throw Error("x and y must have the same length");
|
|
3248
|
-
if (n === "average" || n === "sum") return
|
|
3249
|
-
let i =
|
|
3269
|
+
if (n === "average" || n === "sum") return Bi(e, t, r, n);
|
|
3270
|
+
let i = Ni(r, e.length), a = n === "none" || e.length <= i ? Array.from({ length: e.length }, (e, t) => t) : n === "peak" ? Ri(t, i) : n === "lttb" ? zi(e, t, i) : Li(t, i, n);
|
|
3250
3271
|
return {
|
|
3251
3272
|
kind: "source-indexes",
|
|
3252
3273
|
sourceIndexes: Uint32Array.from(a)
|
|
@@ -3254,41 +3275,41 @@ function Fi(e, t, n, r) {
|
|
|
3254
3275
|
}
|
|
3255
3276
|
//#endregion
|
|
3256
3277
|
//#region src/core/workerSampling/javascriptBackend.ts
|
|
3257
|
-
var
|
|
3278
|
+
var Hi = {
|
|
3258
3279
|
kind: "javascript",
|
|
3259
3280
|
sample(e) {
|
|
3260
|
-
return
|
|
3281
|
+
return Vi(e.x, e.y, e.strategy, e.targetPointCount);
|
|
3261
3282
|
}
|
|
3262
|
-
},
|
|
3263
|
-
function
|
|
3283
|
+
}, Ui = 8 * 1024 * 1024;
|
|
3284
|
+
function Wi(e, t) {
|
|
3264
3285
|
return t === 0 ? 0 : Number.isFinite(e) ? Math.min(t, Math.max(1, Math.floor(e))) : t;
|
|
3265
3286
|
}
|
|
3266
|
-
function
|
|
3287
|
+
function Gi(e, t, n, r) {
|
|
3267
3288
|
let i = r - n;
|
|
3268
3289
|
return {
|
|
3269
3290
|
start: n + Math.floor(e * i / t),
|
|
3270
3291
|
end: n + Math.floor((e + 1) * i / t)
|
|
3271
3292
|
};
|
|
3272
3293
|
}
|
|
3273
|
-
function
|
|
3294
|
+
function Ki(e, t) {
|
|
3274
3295
|
e[e.length - 1] !== t && e.push(t);
|
|
3275
3296
|
}
|
|
3276
|
-
function
|
|
3297
|
+
function qi(e) {
|
|
3277
3298
|
return "minimumIndexes" in e ? e.minimumIndexes.byteLength + e.maximumIndexes.byteLength : e.x.byteLength + e.y.byteLength + e.count.byteLength;
|
|
3278
3299
|
}
|
|
3279
|
-
function
|
|
3300
|
+
function Ji(e, t) {
|
|
3280
3301
|
let n = 1;
|
|
3281
3302
|
for (; n * 2 <= t && e % (n * 2) == 0;) n *= 2;
|
|
3282
3303
|
return n;
|
|
3283
3304
|
}
|
|
3284
|
-
var
|
|
3305
|
+
var Yi = class {
|
|
3285
3306
|
points;
|
|
3286
3307
|
extremaLayers = [];
|
|
3287
3308
|
sumLayers = [];
|
|
3288
3309
|
indexBytes = 0;
|
|
3289
3310
|
maxBytes;
|
|
3290
3311
|
constructor(e, t = {}) {
|
|
3291
|
-
this.points = e, this.maxBytes = Number.isFinite(t.maxBytes) ? Math.max(0, Math.floor(t.maxBytes ?? 0)) :
|
|
3312
|
+
this.points = e, this.maxBytes = Number.isFinite(t.maxBytes) ? Math.max(0, Math.floor(t.maxBytes ?? 0)) : Ui;
|
|
3292
3313
|
}
|
|
3293
3314
|
get byteLength() {
|
|
3294
3315
|
return this.indexBytes;
|
|
@@ -3297,7 +3318,7 @@ var Ui = class {
|
|
|
3297
3318
|
this.extremaLayers.length = 0, this.sumLayers.length = 0, this.indexBytes = 0;
|
|
3298
3319
|
}
|
|
3299
3320
|
sample(e, t, n, r) {
|
|
3300
|
-
let i = Math.max(0, Math.min(this.points.length, Math.floor(e))), a = Math.max(i, Math.min(this.points.length, Math.floor(t))), o = a - i, s =
|
|
3321
|
+
let i = Math.max(0, Math.min(this.points.length, Math.floor(e))), a = Math.max(i, Math.min(this.points.length, Math.floor(t))), o = a - i, s = Wi(r, o);
|
|
3301
3322
|
if (n !== "lttb") return n === "average" || n === "sum" ? this.aggregate(i, a, s, n) : n === "none" || o <= s ? this.allIndexes(i, a) : s === 1 ? this.indexes([i]) : s === 2 ? this.indexes([i, a - 1]) : this.extrema(i, a, s, n);
|
|
3302
3323
|
}
|
|
3303
3324
|
allIndexes(e, t) {
|
|
@@ -3317,24 +3338,24 @@ var Ui = class {
|
|
|
3317
3338
|
if (i === 0) return this.indexes([e, t - 1]);
|
|
3318
3339
|
let a = [e];
|
|
3319
3340
|
for (let n = 0; n < i; n += 1) {
|
|
3320
|
-
let o =
|
|
3341
|
+
let o = Gi(n, i, e + 1, t - 1), s = this.queryExtrema(o.start, o.end);
|
|
3321
3342
|
if (!s) return;
|
|
3322
|
-
if (r === "min")
|
|
3323
|
-
else if (r === "max")
|
|
3324
|
-
else if (r === "minmax") s.minimum <= s.maximum ? (
|
|
3343
|
+
if (r === "min") Ki(a, s.minimum);
|
|
3344
|
+
else if (r === "max") Ki(a, s.maximum);
|
|
3345
|
+
else if (r === "minmax") s.minimum <= s.maximum ? (Ki(a, s.minimum), Ki(a, s.maximum)) : (Ki(a, s.maximum), Ki(a, s.minimum));
|
|
3325
3346
|
else for (let e of [
|
|
3326
3347
|
o.start,
|
|
3327
3348
|
s.minimum,
|
|
3328
3349
|
s.maximum,
|
|
3329
3350
|
o.end - 1
|
|
3330
|
-
].sort((e, t) => e - t))
|
|
3351
|
+
].sort((e, t) => e - t)) Ki(a, e);
|
|
3331
3352
|
}
|
|
3332
|
-
return
|
|
3353
|
+
return Ki(a, t - 1), this.indexes(a);
|
|
3333
3354
|
}
|
|
3334
3355
|
aggregate(e, t, n, r) {
|
|
3335
3356
|
let i = new Float64Array(n), a = new Float64Array(n);
|
|
3336
3357
|
for (let o = 0; o < n; o += 1) {
|
|
3337
|
-
let s =
|
|
3358
|
+
let s = Gi(o, n, e, t), c = this.querySum(s.start, s.end);
|
|
3338
3359
|
if (!c || c.count === 0) return;
|
|
3339
3360
|
i[o] = c.x / c.count, a[o] = r === "average" ? c.y / c.count : c.y;
|
|
3340
3361
|
}
|
|
@@ -3349,7 +3370,7 @@ var Ui = class {
|
|
|
3349
3370
|
if (!this.ensureExtrema(n)) return;
|
|
3350
3371
|
let r = e, i = e;
|
|
3351
3372
|
for (let n = e; n < t;) {
|
|
3352
|
-
let e =
|
|
3373
|
+
let e = Ji(n, t - n), a = Math.floor(Math.log2(e)), o = n / e, s = this.extremaLayers[a], c = s ? s.minimumIndexes[o] : n, l = s ? s.maximumIndexes[o] : n;
|
|
3353
3374
|
this.isMinimum(c, r) && (r = c), this.isMaximum(l, i) && (i = l), n += e;
|
|
3354
3375
|
}
|
|
3355
3376
|
return {
|
|
@@ -3362,7 +3383,7 @@ var Ui = class {
|
|
|
3362
3383
|
if (!this.ensureSum(n)) return;
|
|
3363
3384
|
let r = 0, i = 0, a = 0;
|
|
3364
3385
|
for (let n = e; n < t;) {
|
|
3365
|
-
let e =
|
|
3386
|
+
let e = Ji(n, t - n), o = Math.floor(Math.log2(e)), s = n / e, c = this.sumLayers[o];
|
|
3366
3387
|
if (c) r += c.x[s], i += c.y[s], a += c.count[s];
|
|
3367
3388
|
else {
|
|
3368
3389
|
let e = this.points[n];
|
|
@@ -3383,7 +3404,7 @@ var Ui = class {
|
|
|
3383
3404
|
minimumIndexes: new Uint32Array(e),
|
|
3384
3405
|
maximumIndexes: new Uint32Array(e)
|
|
3385
3406
|
};
|
|
3386
|
-
if (!this.reserve(
|
|
3407
|
+
if (!this.reserve(qi(n))) return !1;
|
|
3387
3408
|
let r = this.extremaLayers[t - 1];
|
|
3388
3409
|
for (let t = 0; t < e; t += 1) {
|
|
3389
3410
|
let e = t * 2, i = e + 1, a = r ? r.minimumIndexes[e] : e, o = r ? r.maximumIndexes[e] : e, s = r ? i < r.minimumIndexes.length : i < this.points.length, c = r && s ? r.minimumIndexes[i] : i, l = r && s ? r.maximumIndexes[i] : i;
|
|
@@ -3401,7 +3422,7 @@ var Ui = class {
|
|
|
3401
3422
|
y: new Float64Array(e),
|
|
3402
3423
|
count: new Uint32Array(e)
|
|
3403
3424
|
};
|
|
3404
|
-
if (!this.reserve(
|
|
3425
|
+
if (!this.reserve(qi(n))) return !1;
|
|
3405
3426
|
let r = this.sumLayers[t - 1];
|
|
3406
3427
|
for (let t = 0; t < e; t += 1) {
|
|
3407
3428
|
let e = t * 2, i = e + 1;
|
|
@@ -3426,8 +3447,8 @@ var Ui = class {
|
|
|
3426
3447
|
let n = this.points[e], r = this.points[t];
|
|
3427
3448
|
return n.y > r.y || n.y === r.y && e < t;
|
|
3428
3449
|
}
|
|
3429
|
-
},
|
|
3430
|
-
function
|
|
3450
|
+
}, Xi = 1e3, Zi = L((e) => e.x);
|
|
3451
|
+
function Qi(e) {
|
|
3431
3452
|
let t = [], n = !0, r = -Infinity;
|
|
3432
3453
|
for (let i of e) !Number.isFinite(i.x) || !Number.isFinite(i.y) || (i.x < r && (n = !1), r = i.x, t.push({
|
|
3433
3454
|
x: i.x,
|
|
@@ -3438,7 +3459,7 @@ function Ki(e) {
|
|
|
3438
3459
|
}));
|
|
3439
3460
|
return n || t.sort((e, t) => e.x - t.x), t;
|
|
3440
3461
|
}
|
|
3441
|
-
function
|
|
3462
|
+
function $i(e, t) {
|
|
3442
3463
|
let n = Infinity, r = -Infinity, i = Infinity, a = -Infinity;
|
|
3443
3464
|
for (let t of e) n = Math.min(n, t.x), r = Math.max(r, t.x), i = Math.min(i, t.y), a = Math.max(a, t.y);
|
|
3444
3465
|
return {
|
|
@@ -3448,7 +3469,7 @@ function qi(e, t) {
|
|
|
3448
3469
|
yDomain: e.length ? [i, a] : null
|
|
3449
3470
|
};
|
|
3450
3471
|
}
|
|
3451
|
-
function
|
|
3472
|
+
function ea(e, t, n = e.length) {
|
|
3452
3473
|
let r = Infinity, i = -Infinity, a = Infinity, o = -Infinity;
|
|
3453
3474
|
for (let n = 0; n < e.length; n += 1) r = Math.min(r, e[n]), i = Math.max(i, e[n]), a = Math.min(a, t[n]), o = Math.max(o, t[n]);
|
|
3454
3475
|
return {
|
|
@@ -3458,39 +3479,39 @@ function Ji(e, t, n = e.length) {
|
|
|
3458
3479
|
yDomain: e.length ? [a, o] : null
|
|
3459
3480
|
};
|
|
3460
3481
|
}
|
|
3461
|
-
function
|
|
3482
|
+
function ta(e, t) {
|
|
3462
3483
|
return e ? e.revision === t ? "ok" : "stale-revision" : "not-found";
|
|
3463
3484
|
}
|
|
3464
|
-
function
|
|
3485
|
+
function na(e) {
|
|
3465
3486
|
return e === "auto" ? "peak" : e;
|
|
3466
3487
|
}
|
|
3467
|
-
function
|
|
3488
|
+
function ra(e) {
|
|
3468
3489
|
if (Number.isFinite(e.maxPointCount) && (e.maxPointCount ?? 0) >= 1) return Math.floor(e.maxPointCount);
|
|
3469
3490
|
let t = Number.isFinite(e.plotWidth) ? Math.max(0, e.plotWidth) : 0, n = Number.isFinite(e.maxPointsPerPixel) ? Math.max(0, e.maxPointsPerPixel ?? 0) : 4;
|
|
3470
3491
|
return Math.max(1, Math.floor(t * n));
|
|
3471
3492
|
}
|
|
3472
|
-
function
|
|
3493
|
+
function ia(e, t) {
|
|
3473
3494
|
if (e.mode === "raw") return !0;
|
|
3474
3495
|
if (e.mode !== "auto") return !1;
|
|
3475
|
-
let n = Number.isFinite(e.autoThreshold) ? Math.max(1, Math.floor(e.autoThreshold ?? 0)) :
|
|
3496
|
+
let n = Number.isFinite(e.autoThreshold) ? Math.max(1, Math.floor(e.autoThreshold ?? 0)) : Xi;
|
|
3476
3497
|
if (!e.previousSelectedMode) return t <= n;
|
|
3477
3498
|
let r = Number.isFinite(e.autoHysteresis) ? Math.max(0, Math.floor(e.autoHysteresis ?? 0)) : 0;
|
|
3478
3499
|
return e.previousSelectedMode === "raw" ? t <= n + r : t <= Math.max(0, n - r);
|
|
3479
3500
|
}
|
|
3480
|
-
function
|
|
3501
|
+
function aa(e, t) {
|
|
3481
3502
|
let n = e[0], r = e.at(-1);
|
|
3482
|
-
return Number.isFinite(t) && n && r && t >= n.x && t <= r.x ? e[
|
|
3503
|
+
return Number.isFinite(t) && n && r && t >= n.x && t <= r.x ? e[Zi.center(e, t)] : void 0;
|
|
3483
3504
|
}
|
|
3484
|
-
function
|
|
3505
|
+
function oa(e) {
|
|
3485
3506
|
return e ? e.kind === "source-indexes" ? e.sourceIndexes.length : e.x.length : 0;
|
|
3486
3507
|
}
|
|
3487
|
-
function
|
|
3508
|
+
function sa(e, t) {
|
|
3488
3509
|
return e.kind === "aggregates" ? e : {
|
|
3489
3510
|
kind: "source-indexes",
|
|
3490
3511
|
sourceIndexes: Uint32Array.from(e.sourceIndexes, (e) => e + t)
|
|
3491
3512
|
};
|
|
3492
3513
|
}
|
|
3493
|
-
function
|
|
3514
|
+
function ca(e, t, n, r, i) {
|
|
3494
3515
|
return [
|
|
3495
3516
|
e.datasetId,
|
|
3496
3517
|
e.revision,
|
|
@@ -3510,14 +3531,14 @@ function na(e, t, n, r, i) {
|
|
|
3510
3531
|
e.errorBarMinSpacing ?? 0
|
|
3511
3532
|
].join("\0");
|
|
3512
3533
|
}
|
|
3513
|
-
function
|
|
3534
|
+
function la(e, t, n, r, i, a, o, s) {
|
|
3514
3535
|
return {
|
|
3515
3536
|
seriesId: e.seriesId,
|
|
3516
3537
|
datasetId: e.datasetId,
|
|
3517
3538
|
mode: e.mode,
|
|
3518
3539
|
selectedMode: i,
|
|
3519
3540
|
backend: r,
|
|
3520
|
-
strategy:
|
|
3541
|
+
strategy: na(e.strategy),
|
|
3521
3542
|
sourcePointCount: t,
|
|
3522
3543
|
visiblePointCount: n,
|
|
3523
3544
|
renderedPointCount: o,
|
|
@@ -3533,18 +3554,18 @@ function ra(e, t, n, r, i, a, o, s) {
|
|
|
3533
3554
|
}
|
|
3534
3555
|
//#endregion
|
|
3535
3556
|
//#region src/core/workerSampling/repositoryDataset.ts
|
|
3536
|
-
function
|
|
3557
|
+
function ua(e) {
|
|
3537
3558
|
return e?.y.length ?? 0;
|
|
3538
3559
|
}
|
|
3539
|
-
function
|
|
3560
|
+
function da(e, t) {
|
|
3540
3561
|
return e.x ? e.x[t] : e.sampleStartTime + (e.sampleSourceIndexes?.[t] ?? t) / e.sampleRate;
|
|
3541
3562
|
}
|
|
3542
|
-
function
|
|
3563
|
+
function fa(e, t) {
|
|
3543
3564
|
let n = (t, n) => {
|
|
3544
|
-
let r = 0, i =
|
|
3565
|
+
let r = 0, i = ua(e);
|
|
3545
3566
|
for (; r < i;) {
|
|
3546
3567
|
let a = r + Math.floor((i - r) / 2);
|
|
3547
|
-
(n ?
|
|
3568
|
+
(n ? da(e, a) <= t : da(e, a) < t) ? r = a + 1 : i = a;
|
|
3548
3569
|
}
|
|
3549
3570
|
return r;
|
|
3550
3571
|
}, r = Math.min(t[0], t[1]), i = Math.max(t[0], t[1]);
|
|
@@ -3553,13 +3574,13 @@ function oa(e, t) {
|
|
|
3553
3574
|
end: n(i, !0)
|
|
3554
3575
|
};
|
|
3555
3576
|
}
|
|
3556
|
-
function
|
|
3557
|
-
return e.x ? e.x.subarray(t, n) : Float64Array.from({ length: n - t }, (n, r) =>
|
|
3577
|
+
function pa(e, t, n) {
|
|
3578
|
+
return e.x ? e.x.subarray(t, n) : Float64Array.from({ length: n - t }, (n, r) => da(e, t + r));
|
|
3558
3579
|
}
|
|
3559
|
-
function
|
|
3580
|
+
function ma(e) {
|
|
3560
3581
|
return e?.kind === "wasm" && "registerDataset" in e && "disposeDataset" in e && "disposeAllDatasets" in e && "datasetIndexBytes" in e && "registerSamples" in e && "sampleDataset" in e;
|
|
3561
3582
|
}
|
|
3562
|
-
function
|
|
3583
|
+
function ha(e, t) {
|
|
3563
3584
|
let n = [], r = Math.min(e.length, t.length);
|
|
3564
3585
|
for (let i = 0; i < r; i += 1) Number.isFinite(e[i]) && Number.isFinite(t[i]) && n.push(i);
|
|
3565
3586
|
return n.sort((t, n) => e[t] - e[n] || t - n), {
|
|
@@ -3567,14 +3588,14 @@ function la(e, t) {
|
|
|
3567
3588
|
y: Float64Array.from(n, (e) => t[e])
|
|
3568
3589
|
};
|
|
3569
3590
|
}
|
|
3570
|
-
function
|
|
3591
|
+
function ga(e, t, n, r) {
|
|
3571
3592
|
if (t?.kind === "typed") {
|
|
3572
|
-
let e =
|
|
3593
|
+
let e = ha(t.x, t.y);
|
|
3573
3594
|
return {
|
|
3574
3595
|
x: e.x,
|
|
3575
3596
|
y: e.y,
|
|
3576
3597
|
revision: n,
|
|
3577
|
-
metrics:
|
|
3598
|
+
metrics: ea(e.x, e.y, Math.max(t.x.length, t.y.length))
|
|
3578
3599
|
};
|
|
3579
3600
|
}
|
|
3580
3601
|
if (t?.kind === "samples") {
|
|
@@ -3608,35 +3629,35 @@ function ua(e, t, n, r) {
|
|
|
3608
3629
|
}
|
|
3609
3630
|
};
|
|
3610
3631
|
}
|
|
3611
|
-
let i =
|
|
3632
|
+
let i = Qi(e ?? t?.points ?? []);
|
|
3612
3633
|
return {
|
|
3613
3634
|
x: Float64Array.from(i, (e) => e.x),
|
|
3614
3635
|
y: Float64Array.from(i, (e) => e.y),
|
|
3615
3636
|
points: i,
|
|
3616
3637
|
revision: n,
|
|
3617
|
-
metrics:
|
|
3618
|
-
index: new
|
|
3638
|
+
metrics: $i(i, e?.length ?? t?.points.length ?? 0),
|
|
3639
|
+
index: new Yi(i, { maxBytes: r })
|
|
3619
3640
|
};
|
|
3620
3641
|
}
|
|
3621
|
-
function
|
|
3622
|
-
!
|
|
3642
|
+
function _a(e, t, n) {
|
|
3643
|
+
!ma(e) || t.wasmDatasetHandle !== void 0 || (t.wasmDatasetHandle = t.x ? e.registerDataset(t.x, t.y, n) : e.registerSamples(t.y, t.sampleSourceIndexes, t.sampleStartTime, t.sampleRate, n), t.wasmIndexBytes = e.datasetIndexBytes(t.wasmDatasetHandle));
|
|
3623
3644
|
}
|
|
3624
|
-
function
|
|
3625
|
-
t.index?.dispose(), t.wasmDatasetHandle !== void 0 &&
|
|
3645
|
+
function va(e, t) {
|
|
3646
|
+
t.index?.dispose(), t.wasmDatasetHandle !== void 0 && ma(e) && e.disposeDataset(t.wasmDatasetHandle);
|
|
3626
3647
|
}
|
|
3627
3648
|
//#endregion
|
|
3628
3649
|
//#region src/core/workerSampling/samplingCache.ts
|
|
3629
|
-
var
|
|
3630
|
-
function
|
|
3650
|
+
var ya = 96, ba = 16 * 1024 * 1024;
|
|
3651
|
+
function xa(e) {
|
|
3631
3652
|
return e.kind === "source-indexes" ? e.sourceIndexes.byteLength : e.x.byteLength + e.y.byteLength;
|
|
3632
3653
|
}
|
|
3633
|
-
var
|
|
3654
|
+
var Sa = class {
|
|
3634
3655
|
entries = /* @__PURE__ */ new Map();
|
|
3635
3656
|
bytes = 0;
|
|
3636
3657
|
maxEntries;
|
|
3637
3658
|
maxBytes;
|
|
3638
3659
|
constructor(e = {}) {
|
|
3639
|
-
this.maxEntries = Number.isFinite(e.maxEntries) ? Math.max(0, Math.floor(e.maxEntries ?? 0)) :
|
|
3660
|
+
this.maxEntries = Number.isFinite(e.maxEntries) ? Math.max(0, Math.floor(e.maxEntries ?? 0)) : ya, this.maxBytes = Number.isFinite(e.maxBytes) ? Math.max(0, Math.floor(e.maxBytes ?? 0)) : ba;
|
|
3640
3661
|
}
|
|
3641
3662
|
get metrics() {
|
|
3642
3663
|
return {
|
|
@@ -3651,7 +3672,7 @@ var ga = class {
|
|
|
3651
3672
|
if (t) return this.entries.delete(e), this.entries.set(e, t), t.output;
|
|
3652
3673
|
}
|
|
3653
3674
|
set(e, t) {
|
|
3654
|
-
let n =
|
|
3675
|
+
let n = xa(t);
|
|
3655
3676
|
if (n > this.maxBytes || this.maxEntries === 0) return;
|
|
3656
3677
|
let r = this.entries.get(e);
|
|
3657
3678
|
for (r && (this.bytes -= r.bytes, this.entries.delete(e)), this.entries.set(e, {
|
|
@@ -3671,14 +3692,14 @@ var ga = class {
|
|
|
3671
3692
|
clear() {
|
|
3672
3693
|
this.entries.clear(), this.bytes = 0;
|
|
3673
3694
|
}
|
|
3674
|
-
},
|
|
3695
|
+
}, Ca = class {
|
|
3675
3696
|
datasets = /* @__PURE__ */ new Map();
|
|
3676
3697
|
javascriptBackend;
|
|
3677
3698
|
cache;
|
|
3678
3699
|
indexMaxBytes;
|
|
3679
3700
|
wasmBackend;
|
|
3680
3701
|
constructor(e = {}) {
|
|
3681
|
-
this.javascriptBackend = e.javascriptBackend ??
|
|
3702
|
+
this.javascriptBackend = e.javascriptBackend ?? Hi, this.wasmBackend = e.wasmBackend, this.indexMaxBytes = e.indexMaxBytes, this.cache = new Sa({
|
|
3682
3703
|
maxEntries: e.cacheMaxEntries,
|
|
3683
3704
|
maxBytes: e.cacheMaxBytes
|
|
3684
3705
|
});
|
|
@@ -3691,9 +3712,9 @@ var ga = class {
|
|
|
3691
3712
|
};
|
|
3692
3713
|
}
|
|
3693
3714
|
setWasmBackend(e) {
|
|
3694
|
-
this.wasmBackend && this.wasmBackend !== e &&
|
|
3715
|
+
this.wasmBackend && this.wasmBackend !== e && ma(this.wasmBackend) && (this.wasmBackend.disposeAllDatasets(), this.datasets.forEach((e) => {
|
|
3695
3716
|
e.wasmDatasetHandle = void 0, e.wasmIndexBytes = void 0;
|
|
3696
|
-
})), this.wasmBackend = e,
|
|
3717
|
+
})), this.wasmBackend = e, ma(e) && this.datasets.forEach((t) => _a(e, t, this.indexMaxBytes));
|
|
3697
3718
|
}
|
|
3698
3719
|
handle(e) {
|
|
3699
3720
|
switch (e.type) {
|
|
@@ -3709,15 +3730,15 @@ var ga = class {
|
|
|
3709
3730
|
register(e, t, n, r) {
|
|
3710
3731
|
let i = this.datasets.get(e);
|
|
3711
3732
|
if (i) return this.datasetResponse(t, e, i, "stale-revision");
|
|
3712
|
-
let a =
|
|
3713
|
-
return
|
|
3733
|
+
let a = ga(n, r, 1, this.indexMaxBytes);
|
|
3734
|
+
return _a(this.wasmBackend, a, this.indexMaxBytes), this.datasets.set(e, a), this.datasetResponse(t, e, a, "ok");
|
|
3714
3735
|
}
|
|
3715
3736
|
replace(e, t, n, r, i) {
|
|
3716
|
-
let a = this.datasets.get(e), o =
|
|
3737
|
+
let a = this.datasets.get(e), o = ta(a, n);
|
|
3717
3738
|
if (o !== "ok" || !a) return this.datasetResponse(t, e, a, o);
|
|
3718
|
-
|
|
3719
|
-
let s =
|
|
3720
|
-
return
|
|
3739
|
+
va(this.wasmBackend, a), this.cache.deleteDataset(e);
|
|
3740
|
+
let s = ga(r, i, a.revision + 1, this.indexMaxBytes);
|
|
3741
|
+
return _a(this.wasmBackend, s, this.indexMaxBytes), this.datasets.set(e, s), this.datasetResponse(t, e, s, "ok");
|
|
3721
3742
|
}
|
|
3722
3743
|
sample(e) {
|
|
3723
3744
|
return {
|
|
@@ -3727,28 +3748,28 @@ var ga = class {
|
|
|
3727
3748
|
};
|
|
3728
3749
|
}
|
|
3729
3750
|
sampleSeries(e, t) {
|
|
3730
|
-
let n = performance.now(), r = this.datasets.get(t.datasetId), i =
|
|
3751
|
+
let n = performance.now(), r = this.datasets.get(t.datasetId), i = ta(r, t.revision);
|
|
3731
3752
|
if (i !== "ok" || !r) return this.sampleResponse(e, t, i, void 0, "unavailable", "sampled", 0, n, !1);
|
|
3732
|
-
let a =
|
|
3733
|
-
if (
|
|
3753
|
+
let a = fa(r, t.xDomain), o = a.end - a.start;
|
|
3754
|
+
if (ia(t, o)) return this.sampleResponse(e, t, "ok", {
|
|
3734
3755
|
kind: "source-indexes",
|
|
3735
3756
|
sourceIndexes: Uint32Array.from({ length: o }, (e, t) => a.start + t)
|
|
3736
3757
|
}, "raw", "raw", o, n, !1);
|
|
3737
3758
|
let s = t.mode === "wasm" || t.mode === "auto" && this.wasmBackend ? this.wasmBackend : this.javascriptBackend, c = !s && t.wasmFailureFallback === "javascript", l = s ?? (c ? this.javascriptBackend : void 0);
|
|
3738
3759
|
if (!l) return this.sampleResponse(e, t, "wasm-unavailable", void 0, "unavailable", "sampled", o, n, !1);
|
|
3739
|
-
let u =
|
|
3760
|
+
let u = na(t.strategy), d = ra(t), f = ca(t, a, u, d, l.kind), p = this.cache.get(f);
|
|
3740
3761
|
if (p) return this.sampleResponse(e, t, c ? "wasm-unavailable" : "ok", p, l.kind, "sampled", o, n, !0);
|
|
3741
|
-
let m = (l.kind === "wasm" ? r.wasmDatasetHandle !== void 0 &&
|
|
3742
|
-
x:
|
|
3762
|
+
let m = (l.kind === "wasm" ? r.wasmDatasetHandle !== void 0 && ma(l) ? l.sampleDataset(r.wasmDatasetHandle, a.start, a.end, u, d) : void 0 : r.index?.sample(a.start, a.end, u, d)) ?? sa(l.sample({
|
|
3763
|
+
x: pa(r, a.start, a.end),
|
|
3743
3764
|
y: r.y.subarray(a.start, a.end),
|
|
3744
3765
|
points: r.points?.slice(a.start, a.end) ?? [],
|
|
3745
3766
|
strategy: u,
|
|
3746
3767
|
targetPointCount: d
|
|
3747
3768
|
}), a.start);
|
|
3748
|
-
return this.cache.set(f, m), r.wasmDatasetHandle !== void 0 &&
|
|
3769
|
+
return this.cache.set(f, m), r.wasmDatasetHandle !== void 0 && ma(l) && (r.wasmIndexBytes = l.datasetIndexBytes(r.wasmDatasetHandle)), this.sampleResponse(e, t, c ? "wasm-unavailable" : "ok", m, l.kind, "sampled", o, n, !1);
|
|
3749
3770
|
}
|
|
3750
3771
|
sampleResponse(e, t, n, r, i, a, o, s, c) {
|
|
3751
|
-
let l =
|
|
3772
|
+
let l = la(t, ua(this.datasets.get(t.datasetId)), o, i, a, performance.now() - s, oa(r), c);
|
|
3752
3773
|
return l.requestId = e, {
|
|
3753
3774
|
seriesId: t.seriesId,
|
|
3754
3775
|
datasetId: t.datasetId,
|
|
@@ -3759,7 +3780,7 @@ var ga = class {
|
|
|
3759
3780
|
};
|
|
3760
3781
|
}
|
|
3761
3782
|
findNearest(e, t, n, r) {
|
|
3762
|
-
let i = this.datasets.get(e), a =
|
|
3783
|
+
let i = this.datasets.get(e), a = ta(i, n);
|
|
3763
3784
|
return a !== "ok" || !i ? {
|
|
3764
3785
|
type: "find-nearest-point-response",
|
|
3765
3786
|
requestId: t,
|
|
@@ -3772,12 +3793,12 @@ var ga = class {
|
|
|
3772
3793
|
datasetId: e,
|
|
3773
3794
|
revision: n,
|
|
3774
3795
|
status: a,
|
|
3775
|
-
point: i.points ?
|
|
3776
|
-
let e =
|
|
3777
|
-
if (!
|
|
3778
|
-
let t = Math.min(
|
|
3779
|
-
return Number.isFinite(r) &&
|
|
3780
|
-
x:
|
|
3796
|
+
point: i.points ? aa(i.points, r) : (() => {
|
|
3797
|
+
let e = fa(i, [r, r]);
|
|
3798
|
+
if (!ua(i) || r < da(i, 0) || r > da(i, ua(i) - 1)) return;
|
|
3799
|
+
let t = Math.min(ua(i) - 1, e.start), n = Math.max(0, t - 1), a = Math.abs(r - da(i, n)) < Math.abs(da(i, t) - r) ? n : t;
|
|
3800
|
+
return Number.isFinite(r) && ua(i) ? {
|
|
3801
|
+
x: da(i, a),
|
|
3781
3802
|
y: i.y[a]
|
|
3782
3803
|
} : void 0;
|
|
3783
3804
|
})()
|
|
@@ -3785,15 +3806,15 @@ var ga = class {
|
|
|
3785
3806
|
}
|
|
3786
3807
|
metrics(e, t, n) {
|
|
3787
3808
|
let r = this.datasets.get(e);
|
|
3788
|
-
return this.datasetResponse(t, e, r,
|
|
3809
|
+
return this.datasetResponse(t, e, r, ta(r, n));
|
|
3789
3810
|
}
|
|
3790
3811
|
dispose(e, t, n) {
|
|
3791
|
-
let r = this.datasets.get(e), i =
|
|
3792
|
-
return i === "ok" && r && (
|
|
3812
|
+
let r = this.datasets.get(e), i = ta(r, n);
|
|
3813
|
+
return i === "ok" && r && (va(this.wasmBackend, r), this.cache.deleteDataset(e), this.datasets.delete(e)), this.datasetResponse(t, e, r, i);
|
|
3793
3814
|
}
|
|
3794
3815
|
disposeAll(e) {
|
|
3795
3816
|
let t = [...this.datasets.keys()];
|
|
3796
|
-
return this.datasets.forEach((e) =>
|
|
3817
|
+
return this.datasets.forEach((e) => va(this.wasmBackend, e)), ma(this.wasmBackend) && this.wasmBackend.disposeAllDatasets(), this.datasets.clear(), this.cache.clear(), {
|
|
3797
3818
|
type: "dispose-all-response",
|
|
3798
3819
|
requestId: e,
|
|
3799
3820
|
disposedDatasetIds: t
|
|
@@ -3815,10 +3836,10 @@ var ga = class {
|
|
|
3815
3836
|
};
|
|
3816
3837
|
//#endregion
|
|
3817
3838
|
//#region src/components/core/latestTaskScheduler.ts
|
|
3818
|
-
function
|
|
3839
|
+
function wa(e, t, n, r) {
|
|
3819
3840
|
return r ? r === "raw" ? e <= t + n ? "raw" : "sampled" : e <= Math.max(0, t - n) ? "raw" : "sampled" : e <= t ? "raw" : "sampled";
|
|
3820
3841
|
}
|
|
3821
|
-
function
|
|
3842
|
+
function Ta() {
|
|
3822
3843
|
let e = 0, t = !1, n, r = !1, i = {
|
|
3823
3844
|
scheduled: 0,
|
|
3824
3845
|
coalesced: 0,
|
|
@@ -3857,12 +3878,12 @@ function ya() {
|
|
|
3857
3878
|
}
|
|
3858
3879
|
//#endregion
|
|
3859
3880
|
//#region src/components/core/workerSamplingClient.ts
|
|
3860
|
-
function
|
|
3881
|
+
function Ea(e) {
|
|
3861
3882
|
return e?.message || "Web Worker is unavailable; JavaScript sampling is being used.";
|
|
3862
3883
|
}
|
|
3863
|
-
function
|
|
3884
|
+
function Da() {
|
|
3864
3885
|
let e, t, n, r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), a = () => {
|
|
3865
|
-
t ??= new
|
|
3886
|
+
t ??= new Ca();
|
|
3866
3887
|
for (let [e, n] of i) {
|
|
3867
3888
|
t.handle({
|
|
3868
3889
|
type: "register-dataset",
|
|
@@ -3898,7 +3919,7 @@ function xa() {
|
|
|
3898
3919
|
let t = a();
|
|
3899
3920
|
e.forEach(({ request: e, resolve: n }) => n(t.handle(e)));
|
|
3900
3921
|
}, c = (r) => {
|
|
3901
|
-
t || (n =
|
|
3922
|
+
t || (n = Ea(r), e?.terminate(), e = void 0, s());
|
|
3902
3923
|
};
|
|
3903
3924
|
try {
|
|
3904
3925
|
typeof Worker > "u" ? c() : (e = new Worker(new URL(
|
|
@@ -3935,20 +3956,20 @@ function xa() {
|
|
|
3935
3956
|
}
|
|
3936
3957
|
};
|
|
3937
3958
|
}
|
|
3938
|
-
function
|
|
3959
|
+
function Oa(e) {
|
|
3939
3960
|
return e.type === "dataset-response";
|
|
3940
3961
|
}
|
|
3941
3962
|
//#endregion
|
|
3942
3963
|
//#region src/components/core/useWaveformRenderSampling.ts
|
|
3943
|
-
var
|
|
3944
|
-
function
|
|
3964
|
+
var ka = 120;
|
|
3965
|
+
function Aa(e, t) {
|
|
3945
3966
|
let n = e.output;
|
|
3946
3967
|
if (n) return n.kind === "aggregates" ? Array.from(n.x, (e, t) => ({
|
|
3947
3968
|
x: e,
|
|
3948
3969
|
y: n.y[t]
|
|
3949
3970
|
})) : Array.from(n.sourceIndexes, (e) => t.pointAt(e)).filter((e) => e !== void 0);
|
|
3950
3971
|
}
|
|
3951
|
-
function
|
|
3972
|
+
function ja(e, t) {
|
|
3952
3973
|
let n = e.request, r = e.visibleRange.end - e.visibleRange.start;
|
|
3953
3974
|
return {
|
|
3954
3975
|
seriesId: n.seriesId,
|
|
@@ -3970,7 +3991,7 @@ function Ta(e, t) {
|
|
|
3970
3991
|
maxPendingRequestCount: 0
|
|
3971
3992
|
};
|
|
3972
3993
|
}
|
|
3973
|
-
function
|
|
3994
|
+
function Ma(e) {
|
|
3974
3995
|
let { source: t } = e, { start: n, end: r } = e.visibleRange, i = r - n, a = Number.isFinite(e.request.maxPointCount) && (e.request.maxPointCount ?? 0) >= 1 ? Math.floor(e.request.maxPointCount) : Math.max(1, Math.floor(e.request.plotWidth * e.request.maxPointsPerPixel));
|
|
3975
3996
|
if (i <= a) return t.pointsInRange(n, r);
|
|
3976
3997
|
if (a === 1) return t.pointAt(n) ? [t.pointAt(n)] : [];
|
|
@@ -3981,7 +4002,7 @@ function Ea(e) {
|
|
|
3981
4002
|
}
|
|
3982
4003
|
return o;
|
|
3983
4004
|
}
|
|
3984
|
-
function
|
|
4005
|
+
function Na(e, t, n, r) {
|
|
3985
4006
|
return {
|
|
3986
4007
|
message: e,
|
|
3987
4008
|
mode: t,
|
|
@@ -3989,14 +4010,14 @@ function Da(e, t, n, r) {
|
|
|
3989
4010
|
seriesIds: r
|
|
3990
4011
|
};
|
|
3991
4012
|
}
|
|
3992
|
-
function
|
|
3993
|
-
let n =
|
|
4013
|
+
function Pa(e) {
|
|
4014
|
+
let n = w(0), r, i = 0, a = /* @__PURE__ */ new Map(), o = /* @__PURE__ */ new Map(), s = /* @__PURE__ */ new Map(), c = /* @__PURE__ */ new Set(), l = /* @__PURE__ */ new Map(), u = Ta(), d, f, p = !1, m = t(() => {
|
|
3994
4015
|
let t = e.renderingOptions.value.sampling;
|
|
3995
4016
|
return e.sourceTrackLayouts.value.flatMap((n) => {
|
|
3996
4017
|
let r = n.xScale.domain();
|
|
3997
4018
|
return n.seriesList.flatMap((i) => {
|
|
3998
4019
|
if (i.lineType === "none" || n.width <= 0) return [];
|
|
3999
|
-
let o = i.source ??
|
|
4020
|
+
let o = i.source ?? Z(i.points), s = o.visibleRange(r), c = `${e.instanceId}:${i.id}`;
|
|
4000
4021
|
return [{
|
|
4001
4022
|
series: i,
|
|
4002
4023
|
source: o,
|
|
@@ -4055,13 +4076,13 @@ function Oa(e) {
|
|
|
4055
4076
|
revision: 0,
|
|
4056
4077
|
dataset: t.source.toWorkerDataset()
|
|
4057
4078
|
});
|
|
4058
|
-
!u.isCurrent(n) || !
|
|
4079
|
+
!u.isCurrent(n) || !Oa(r) || r.status !== "ok" && r.status !== "stale-revision" || a.set(t.request.datasetId, r.revision);
|
|
4059
4080
|
}));
|
|
4060
4081
|
}, x = async (t, n = !1) => {
|
|
4061
4082
|
let o = m.value, c = { ...e.linePointOverrides.value }, l = [], d = [];
|
|
4062
4083
|
if (o.forEach((e) => {
|
|
4063
|
-
let r = e.visibleRange.end - e.visibleRange.start, i = n ? s.get(e.series.id) : void 0, a = e.request.mode === "auto" &&
|
|
4064
|
-
e.request.mode === "raw" || a ? (c[e.series.id] = e.source.pointsInRange(e.visibleRange.start, e.visibleRange.end), s.set(e.series.id, "raw"), d.push(
|
|
4084
|
+
let r = e.visibleRange.end - e.visibleRange.start, i = n ? s.get(e.series.id) : void 0, a = e.request.mode === "auto" && wa(r, e.request.autoThreshold, e.request.autoHysteresis ?? 0, i) === "raw";
|
|
4085
|
+
e.request.mode === "raw" || a ? (c[e.series.id] = e.source.pointsInRange(e.visibleRange.start, e.visibleRange.end), s.set(e.series.id, "raw"), d.push(ja(e, t))) : (c[e.series.id]?.length || (c[e.series.id] = Ma(e)), l.push({
|
|
4065
4086
|
...e,
|
|
4066
4087
|
request: {
|
|
4067
4088
|
...e.request,
|
|
@@ -4073,7 +4094,7 @@ function Oa(e) {
|
|
|
4073
4094
|
e.linePointOverrides.value = c, v(d);
|
|
4074
4095
|
return;
|
|
4075
4096
|
}
|
|
4076
|
-
if (e.linePointOverrides.value = c, r ??=
|
|
4097
|
+
if (e.linePointOverrides.value = c, r ??= Da(), await b(r, l, t), !u.isCurrent(t)) return;
|
|
4077
4098
|
let f = l.map((e) => ({
|
|
4078
4099
|
...e.request,
|
|
4079
4100
|
revision: a.get(e.request.datasetId) ?? 1
|
|
@@ -4088,23 +4109,23 @@ function Oa(e) {
|
|
|
4088
4109
|
p = e;
|
|
4089
4110
|
} catch (n) {
|
|
4090
4111
|
if (!u.isCurrent(t)) return;
|
|
4091
|
-
y(
|
|
4112
|
+
y(Na(n instanceof Error ? n.message : String(n), e.renderingOptions.value.sampling.mode, "javascript", l.map((e) => e.series.id)));
|
|
4092
4113
|
return;
|
|
4093
4114
|
}
|
|
4094
4115
|
if (!u.isCurrent(t)) return;
|
|
4095
4116
|
let h = new Map(l.map((e) => [e.series.id, e.source]));
|
|
4096
4117
|
p.results.forEach((e) => {
|
|
4097
|
-
let t = h.get(e.seriesId), n = t ?
|
|
4098
|
-
n && (e.status === "ok" || e.status === "wasm-unavailable") && (c[e.seriesId] = n), d.push(e.diagnostics), s.set(e.seriesId, e.diagnostics.selectedMode), e.status === "wasm-unavailable" && y(
|
|
4099
|
-
}), p.workerError && y(
|
|
4118
|
+
let t = h.get(e.seriesId), n = t ? Aa(e, t) : void 0;
|
|
4119
|
+
n && (e.status === "ok" || e.status === "wasm-unavailable") && (c[e.seriesId] = n), d.push(e.diagnostics), s.set(e.seriesId, e.diagnostics.selectedMode), e.status === "wasm-unavailable" && y(Na(p.workerError ?? "WASM sampling is unavailable.", e.diagnostics.mode, e.diagnostics.backend === "javascript" ? "javascript" : "none", [e.seriesId]));
|
|
4120
|
+
}), p.workerError && y(Na(p.workerError, e.renderingOptions.value.sampling.mode, "javascript", l.map((e) => e.series.id))), r.workerFailureReason && p.results.every((e) => e.status !== "wasm-unavailable") && y(Na(r.workerFailureReason, e.renderingOptions.value.sampling.mode, "javascript", l.map((e) => e.series.id))), e.linePointOverrides.value = { ...c }, v(d);
|
|
4100
4121
|
};
|
|
4101
|
-
return
|
|
4122
|
+
return k(h, () => {
|
|
4102
4123
|
f && clearTimeout(f);
|
|
4103
4124
|
let t = p;
|
|
4104
4125
|
p = !0, u.schedule((e) => x(e, t)), t && e.renderingOptions.value.sampling.mode === "auto" && e.renderingOptions.value.sampling.autoHysteresis > 0 && (f = setTimeout(() => {
|
|
4105
4126
|
f = void 0, u.schedule((e) => x(e, !1));
|
|
4106
|
-
},
|
|
4107
|
-
}, { immediate: !0 }),
|
|
4127
|
+
}, ka));
|
|
4128
|
+
}, { immediate: !0 }), k(e.preparedSeries, () => {
|
|
4108
4129
|
u.cancelPending(), n.value += 1, e.linePointOverrides.value = {}, a.clear(), o.clear(), s.clear(), c.clear(), r?.dispose(), r = void 0;
|
|
4109
4130
|
}, { flush: "sync" }), _(() => {
|
|
4110
4131
|
d && clearTimeout(d), f && clearTimeout(f), u.dispose(), r?.dispose();
|
|
@@ -4112,11 +4133,11 @@ function Oa(e) {
|
|
|
4112
4133
|
}
|
|
4113
4134
|
//#endregion
|
|
4114
4135
|
//#region src/components/core/useWaveformChartController.ts
|
|
4115
|
-
function
|
|
4136
|
+
function Fa(e, t) {
|
|
4116
4137
|
e.value = t instanceof Element ? t : void 0;
|
|
4117
4138
|
}
|
|
4118
|
-
function
|
|
4119
|
-
let n =
|
|
4139
|
+
function Ia(e, t) {
|
|
4140
|
+
let n = x(), r = x(), i = x(), a = x(), o = x(0), s = x(0), c = x(0), l = x(0), u = x(0), f = w(J), p = w([]), m = x({}), h = x({}), g = C({
|
|
4120
4141
|
points: [],
|
|
4121
4142
|
trackIndex: null,
|
|
4122
4143
|
queryX: null,
|
|
@@ -4125,131 +4146,131 @@ function Aa(e, t) {
|
|
|
4125
4146
|
x: 0,
|
|
4126
4147
|
y: 0
|
|
4127
4148
|
}
|
|
4128
|
-
}), _ =
|
|
4129
|
-
|
|
4149
|
+
}), _ = x(!1), v = x(1), y = w(), S = le("waveform-clip"), T = x(new Set(e.defaultHiddenSeriesIds)), D = mt(), O = w({}), j = x([]), M = zr();
|
|
4150
|
+
k([() => e.yDomain, () => e.yDomains], () => {
|
|
4130
4151
|
m.value = {}, h.value = {};
|
|
4131
4152
|
}, { deep: !0 });
|
|
4132
|
-
let N =
|
|
4153
|
+
let N = w(null), P = x(!1), F = x(!1), I = () => void 0, L = () => void 0, R = () => void 0, z = Wr(() => e.data, () => {
|
|
4133
4154
|
R(), I();
|
|
4134
|
-
}, () => L()), B =
|
|
4155
|
+
}, () => L()), B = Mi({
|
|
4135
4156
|
props: e,
|
|
4136
4157
|
observedWidth: o,
|
|
4137
4158
|
observedHeight: s,
|
|
4138
4159
|
measuredTitleWidth: c,
|
|
4139
4160
|
measuredTitleHeight: l,
|
|
4140
|
-
internalHiddenSeriesIds:
|
|
4161
|
+
internalHiddenSeriesIds: T,
|
|
4141
4162
|
paginationBandHeight: u
|
|
4142
|
-
}), { chartWidth: V, chartHeight: H, isCleanView: U, isPresentationMode: W, hiddenSeriesIdSet: G, resolvedTitleText: ee, titleAreaReserved: te, titleMeasureStyle: ne, titleAreaHeight: re, chartTopMargin: K, innerHeight:
|
|
4163
|
+
}), { chartWidth: V, chartHeight: H, isCleanView: U, isPresentationMode: W, hiddenSeriesIdSet: G, resolvedTitleText: ee, titleAreaReserved: te, titleMeasureStyle: ne, titleAreaHeight: re, chartTopMargin: K, innerHeight: q } = B, ie = Oi({
|
|
4143
4164
|
props: e,
|
|
4144
4165
|
preparedSeries: z,
|
|
4145
4166
|
currentPage: v,
|
|
4146
4167
|
hiddenSeriesIdSet: G,
|
|
4147
4168
|
chartWidth: V,
|
|
4148
|
-
innerHeight:
|
|
4169
|
+
innerHeight: q,
|
|
4149
4170
|
isCleanView: U,
|
|
4150
4171
|
sharedTransform: f,
|
|
4151
4172
|
independentTransforms: p,
|
|
4152
4173
|
sharedYDomains: m,
|
|
4153
4174
|
independentYDomains: h,
|
|
4154
4175
|
annotationInteraction: d(D),
|
|
4155
|
-
linePointOverrides:
|
|
4156
|
-
}), { chartSeries: ae, chartTracks: oe, renderingOptions: se, trackLayouts:
|
|
4157
|
-
|
|
4176
|
+
linePointOverrides: O
|
|
4177
|
+
}), { chartSeries: ae, chartTracks: oe, renderingOptions: se, trackLayouts: ce, gridOptions: ue, pageCount: de, pagedTracks: Y, resolvedChartLeftMargin: fe, innerWidth: X, hasChartArea: pe, activeInteractionMode: me, isZoomMode: he, initialXDomain: ge, sharedZoomDomain: _e, resolveInitialTrackDomain: ve, annotationLayoutsForTrack: ye, resolveSeriesYScale: be } = ie;
|
|
4178
|
+
Pa({
|
|
4158
4179
|
props: e,
|
|
4159
4180
|
emit: t,
|
|
4160
|
-
instanceId:
|
|
4181
|
+
instanceId: S,
|
|
4161
4182
|
preparedSeries: z,
|
|
4162
|
-
sourceTrackLayouts:
|
|
4183
|
+
sourceTrackLayouts: ce,
|
|
4163
4184
|
renderingOptions: se,
|
|
4164
|
-
linePointOverrides:
|
|
4165
|
-
}),
|
|
4166
|
-
u.value = ue.value.showPagination &&
|
|
4185
|
+
linePointOverrides: O
|
|
4186
|
+
}), A(() => {
|
|
4187
|
+
u.value = ue.value.showPagination && de.value > 1 && V.value <= 520 ? 40 : 0;
|
|
4167
4188
|
});
|
|
4168
|
-
let
|
|
4189
|
+
let xe = Br({
|
|
4169
4190
|
props: e,
|
|
4170
4191
|
emit: t,
|
|
4171
4192
|
svgElement: r,
|
|
4172
4193
|
sharedOverlayElement: a,
|
|
4173
4194
|
sharedTransform: f,
|
|
4174
4195
|
independentTransforms: p,
|
|
4175
|
-
trackLayouts:
|
|
4176
|
-
initialXDomain:
|
|
4177
|
-
sharedZoomDomain:
|
|
4178
|
-
innerWidth:
|
|
4179
|
-
innerHeight:
|
|
4180
|
-
hasChartArea:
|
|
4181
|
-
isZoomMode:
|
|
4196
|
+
trackLayouts: ce,
|
|
4197
|
+
initialXDomain: ge,
|
|
4198
|
+
sharedZoomDomain: _e,
|
|
4199
|
+
innerWidth: X,
|
|
4200
|
+
innerHeight: q,
|
|
4201
|
+
hasChartArea: pe,
|
|
4202
|
+
isZoomMode: he,
|
|
4182
4203
|
isPresentationMode: W,
|
|
4183
|
-
resolveInitialTrackDomain:
|
|
4184
|
-
cancelPendingHover: () =>
|
|
4204
|
+
resolveInitialTrackDomain: ve,
|
|
4205
|
+
cancelPendingHover: () => Ce.cancelPendingHover()
|
|
4185
4206
|
});
|
|
4186
|
-
R =
|
|
4187
|
-
let
|
|
4207
|
+
R = xe.prepareForDataChange;
|
|
4208
|
+
let Z = gr({
|
|
4188
4209
|
props: e,
|
|
4189
4210
|
emit: t,
|
|
4190
4211
|
container: n,
|
|
4191
4212
|
chartSeries: ae,
|
|
4192
4213
|
hiddenSeriesIdSet: G,
|
|
4193
|
-
internalHiddenSeriesIds:
|
|
4214
|
+
internalHiddenSeriesIds: T,
|
|
4194
4215
|
annotationInteraction: D,
|
|
4195
4216
|
editorSeriesOptions: j,
|
|
4196
|
-
trackLayouts:
|
|
4197
|
-
annotationLayoutsForTrack:
|
|
4198
|
-
resolveSeriesYScale:
|
|
4217
|
+
trackLayouts: ce,
|
|
4218
|
+
annotationLayoutsForTrack: ye,
|
|
4219
|
+
resolveSeriesYScale: be,
|
|
4199
4220
|
chartWidth: V,
|
|
4200
4221
|
chartHeight: H,
|
|
4201
|
-
innerWidth:
|
|
4222
|
+
innerWidth: X,
|
|
4202
4223
|
resolvedChartLeftMargin: fe,
|
|
4203
4224
|
titleAreaHeight: re,
|
|
4204
4225
|
chartTopMargin: K,
|
|
4205
|
-
activeInteractionMode:
|
|
4226
|
+
activeInteractionMode: me,
|
|
4206
4227
|
isPresentationMode: W
|
|
4207
|
-
}),
|
|
4228
|
+
}), Se = Rr({
|
|
4208
4229
|
props: e,
|
|
4209
4230
|
emit: t,
|
|
4210
4231
|
selection: N,
|
|
4211
4232
|
spacePressed: P,
|
|
4212
|
-
trackLayouts:
|
|
4233
|
+
trackLayouts: ce,
|
|
4213
4234
|
chartTracks: oe,
|
|
4214
|
-
initialXDomain:
|
|
4215
|
-
innerWidth:
|
|
4216
|
-
innerHeight:
|
|
4235
|
+
initialXDomain: ge,
|
|
4236
|
+
innerWidth: X,
|
|
4237
|
+
innerHeight: q,
|
|
4217
4238
|
sharedOverlayElement: a,
|
|
4218
4239
|
sharedTransform: f,
|
|
4219
4240
|
independentTransforms: p,
|
|
4220
4241
|
sharedYDomains: m,
|
|
4221
4242
|
independentYDomains: h,
|
|
4222
|
-
isZoomMode:
|
|
4243
|
+
isZoomMode: he,
|
|
4223
4244
|
isPresentationMode: W,
|
|
4224
4245
|
editorSeriesOptions: j,
|
|
4225
|
-
resolveInitialTrackDomain:
|
|
4226
|
-
canZoomTrack:
|
|
4227
|
-
canZoomSharedTracks:
|
|
4228
|
-
configureZoom:
|
|
4229
|
-
cancelPendingZoom:
|
|
4230
|
-
clearHover: () =>
|
|
4231
|
-
resolveTrackAtPointer:
|
|
4232
|
-
}),
|
|
4246
|
+
resolveInitialTrackDomain: ve,
|
|
4247
|
+
canZoomTrack: xe.canZoomTrack,
|
|
4248
|
+
canZoomSharedTracks: xe.canZoomSharedTracks,
|
|
4249
|
+
configureZoom: xe.configureZoom,
|
|
4250
|
+
cancelPendingZoom: xe.cancelPendingZoom,
|
|
4251
|
+
clearHover: () => Ce.clearHover(),
|
|
4252
|
+
resolveTrackAtPointer: Z.resolveTrackAtPointer
|
|
4253
|
+
}), Ce = _r({
|
|
4233
4254
|
emit: t,
|
|
4234
4255
|
hoverState: g,
|
|
4235
4256
|
suppressHoverUntilMove: _,
|
|
4236
4257
|
hoverThrottle: M,
|
|
4237
4258
|
selection: N,
|
|
4238
|
-
trackLayouts:
|
|
4239
|
-
innerWidth:
|
|
4259
|
+
trackLayouts: ce,
|
|
4260
|
+
innerWidth: X,
|
|
4240
4261
|
resolvedChartLeftMargin: fe,
|
|
4241
4262
|
titleAreaHeight: re,
|
|
4242
4263
|
chartTopMargin: K,
|
|
4243
4264
|
sharedOverlayElement: a,
|
|
4244
4265
|
isPresentationMode: W,
|
|
4245
|
-
updateViewportDrag:
|
|
4246
|
-
resolveTrackAtPointer:
|
|
4247
|
-
}),
|
|
4266
|
+
updateViewportDrag: Se.updateViewportDrag,
|
|
4267
|
+
resolveTrackAtPointer: Z.resolveTrackAtPointer
|
|
4268
|
+
}), we = Hr({
|
|
4248
4269
|
props: e,
|
|
4249
4270
|
emit: t,
|
|
4250
4271
|
container: n,
|
|
4251
4272
|
titleMeasureElement: i,
|
|
4252
|
-
resizeObserver:
|
|
4273
|
+
resizeObserver: y,
|
|
4253
4274
|
observedWidth: o,
|
|
4254
4275
|
observedHeight: s,
|
|
4255
4276
|
measuredTitleWidth: c,
|
|
@@ -4260,43 +4281,43 @@ function Aa(e, t) {
|
|
|
4260
4281
|
spacePressed: P,
|
|
4261
4282
|
pointerInsideChart: F,
|
|
4262
4283
|
currentPage: v,
|
|
4263
|
-
pageCount:
|
|
4264
|
-
pagedTracks:
|
|
4284
|
+
pageCount: de,
|
|
4285
|
+
pagedTracks: Y,
|
|
4265
4286
|
gridOptions: ue,
|
|
4266
4287
|
chartSeries: ae,
|
|
4267
4288
|
chartTracks: oe,
|
|
4268
|
-
trackLayouts:
|
|
4269
|
-
innerWidth:
|
|
4270
|
-
innerHeight:
|
|
4271
|
-
sharedZoomDomain:
|
|
4272
|
-
initialXDomain:
|
|
4289
|
+
trackLayouts: ce,
|
|
4290
|
+
innerWidth: X,
|
|
4291
|
+
innerHeight: q,
|
|
4292
|
+
sharedZoomDomain: _e,
|
|
4293
|
+
initialXDomain: ge,
|
|
4273
4294
|
sharedTransform: f,
|
|
4274
|
-
activeInteractionMode:
|
|
4295
|
+
activeInteractionMode: me,
|
|
4275
4296
|
hiddenSeriesIdSet: G,
|
|
4276
|
-
internalHiddenSeriesIds:
|
|
4297
|
+
internalHiddenSeriesIds: T,
|
|
4277
4298
|
independentTransforms: p,
|
|
4278
4299
|
independentYDomains: h,
|
|
4279
|
-
resolveInitialTrackDomain:
|
|
4300
|
+
resolveInitialTrackDomain: ve,
|
|
4280
4301
|
annotationInteraction: D,
|
|
4281
4302
|
editorSeriesOptions: j,
|
|
4282
4303
|
isPresentationMode: W,
|
|
4283
|
-
clearHover:
|
|
4284
|
-
cancelAnnotation:
|
|
4285
|
-
configureZoom:
|
|
4286
|
-
resetViewport:
|
|
4287
|
-
cancelViewportDrag:
|
|
4288
|
-
cancelPendingHover:
|
|
4289
|
-
clearZoomBindings:
|
|
4304
|
+
clearHover: Ce.clearHover,
|
|
4305
|
+
cancelAnnotation: Z.cancelAnnotation,
|
|
4306
|
+
configureZoom: xe.configureZoom,
|
|
4307
|
+
resetViewport: Se.resetViewport,
|
|
4308
|
+
cancelViewportDrag: Se.cancelViewportDrag,
|
|
4309
|
+
cancelPendingHover: Ce.cancelPendingHover,
|
|
4310
|
+
clearZoomBindings: xe.clearZoomBindings
|
|
4290
4311
|
});
|
|
4291
|
-
return I =
|
|
4292
|
-
...
|
|
4312
|
+
return I = we.handleBeforeDataReferenceChange, L = we.handleDataReferenceChange, b({
|
|
4313
|
+
...E(e),
|
|
4293
4314
|
...B,
|
|
4294
4315
|
...ie,
|
|
4316
|
+
...Z,
|
|
4295
4317
|
...Se,
|
|
4296
4318
|
...Ce,
|
|
4297
|
-
...we,
|
|
4298
4319
|
margin: Lt,
|
|
4299
|
-
getPageSize:
|
|
4320
|
+
getPageSize: Vn,
|
|
4300
4321
|
currentPage: v,
|
|
4301
4322
|
selection: N,
|
|
4302
4323
|
pointerInsideChart: F,
|
|
@@ -4305,36 +4326,36 @@ function Aa(e, t) {
|
|
|
4305
4326
|
editorDraft: D.editorDraft,
|
|
4306
4327
|
contextMenu: D.contextMenu,
|
|
4307
4328
|
editorSeriesOptions: j,
|
|
4308
|
-
clipPathId:
|
|
4309
|
-
goToPage:
|
|
4310
|
-
setContainer: (e) =>
|
|
4311
|
-
setSvgElement: (e) =>
|
|
4312
|
-
setTitleMeasureElement: (e) =>
|
|
4313
|
-
setSharedOverlayElement: (e) =>
|
|
4329
|
+
clipPathId: S,
|
|
4330
|
+
goToPage: we.goToPage,
|
|
4331
|
+
setContainer: (e) => Fa(n, e),
|
|
4332
|
+
setSvgElement: (e) => Fa(r, e),
|
|
4333
|
+
setTitleMeasureElement: (e) => Fa(i, e),
|
|
4334
|
+
setSharedOverlayElement: (e) => Fa(a, e)
|
|
4314
4335
|
});
|
|
4315
4336
|
}
|
|
4316
4337
|
//#endregion
|
|
4317
4338
|
//#region src/components/annotation/WaveformAnnotationEditor.vue?vue&type=script&setup=true&lang.ts
|
|
4318
|
-
var
|
|
4339
|
+
var La = ["id"], Ra = { class: "waveform-annotation-editor__content" }, za = {
|
|
4319
4340
|
class: "waveform-annotation-editor__coordinates",
|
|
4320
4341
|
"aria-label": "标注坐标"
|
|
4321
|
-
},
|
|
4342
|
+
}, Ba = ["aria-invalid"], Va = {
|
|
4322
4343
|
class: "waveform-annotation-editor__coordinate-value",
|
|
4323
4344
|
"aria-hidden": "true"
|
|
4324
|
-
},
|
|
4345
|
+
}, Ha = ["id"], Ua = {
|
|
4325
4346
|
key: 0,
|
|
4326
4347
|
class: "waveform-annotation-editor__series",
|
|
4327
4348
|
"aria-label": "标注所属波形"
|
|
4328
|
-
},
|
|
4349
|
+
}, Wa = { class: "waveform-annotation-editor__series-label" }, Ga = ["value"], Ka = ["value"], qa = { key: 1 }, Ja = { class: "waveform-annotation-editor__field" }, Ya = { class: "waveform-annotation-editor__label-row" }, Xa = ["maxlength"], Za = { class: "waveform-annotation-editor__colors" }, Qa = {
|
|
4329
4350
|
class: "waveform-annotation-editor__color-field",
|
|
4330
4351
|
title: "调整标注边框色和透明度"
|
|
4331
|
-
},
|
|
4352
|
+
}, $a = {
|
|
4332
4353
|
class: "waveform-annotation-editor__color-field",
|
|
4333
4354
|
title: "调整标注文字色和透明度"
|
|
4334
|
-
},
|
|
4355
|
+
}, eo = {
|
|
4335
4356
|
class: "waveform-annotation-editor__color-field",
|
|
4336
4357
|
title: "调整标注背景色和透明度"
|
|
4337
|
-
},
|
|
4358
|
+
}, to = /*#__PURE__*/ et(/* @__PURE__ */ l({
|
|
4338
4359
|
__name: "WaveformAnnotationEditor",
|
|
4339
4360
|
props: {
|
|
4340
4361
|
annotation: {},
|
|
@@ -4354,7 +4375,7 @@ var ja = ["id"], Ma = { class: "waveform-annotation-editor__content" }, Na = {
|
|
|
4354
4375
|
let u = c(async () => typeof window > "u" ? {
|
|
4355
4376
|
name: "WaveformColorPickerSsrFallback",
|
|
4356
4377
|
render: () => null
|
|
4357
|
-
} : (await import("vue3-colorpicker")).ColorPicker), d = o, p = l, h =
|
|
4378
|
+
} : (await import("vue3-colorpicker")).ColorPicker), d = o, p = l, h = x(), g = le("waveform-annotation-editor-title"), _ = x(""), v = x(""), b = x(!1), C = x(""), w = x(""), E = x(""), A = t(() => b.value && (!v.value.trim() || !Number.isFinite(Number(v.value))) ? "请输入有效的时间" : ""), N = t(() => b.value && (A.value || d.timeError) || ""), P = t(() => _.value.trim().length > 0 && v.value.trim().length > 0 && Number.isFinite(Number(v.value)) && !N.value), F = t(() => _.value.length), I = t(() => {
|
|
4358
4379
|
let e = d.seriesOptions?.find((e) => e.seriesId === d.annotation.seriesId);
|
|
4359
4380
|
return e ? {
|
|
4360
4381
|
id: e.seriesId,
|
|
@@ -4365,14 +4386,14 @@ var ja = ["id"], Ma = { class: "waveform-annotation-editor__content" }, Na = {
|
|
|
4365
4386
|
});
|
|
4366
4387
|
function L() {
|
|
4367
4388
|
let e = Ue(d.annotation.style);
|
|
4368
|
-
_.value = d.annotation.text,
|
|
4389
|
+
_.value = d.annotation.text, v.value = Pt(d.annotation.x, d.timeUnit), b.value = !1, C.value = e.borderColor, w.value = e.textColor, E.value = e.backgroundColor, f(() => h.value?.focus());
|
|
4369
4390
|
}
|
|
4370
|
-
|
|
4391
|
+
k(() => d.annotation.id, L, { immediate: !0 });
|
|
4371
4392
|
function R(e) {
|
|
4372
|
-
|
|
4393
|
+
v.value = e == null ? "" : String(e), b.value = !1;
|
|
4373
4394
|
}
|
|
4374
4395
|
function z() {
|
|
4375
|
-
|
|
4396
|
+
b.value = !0, p("time-change", v.value);
|
|
4376
4397
|
}
|
|
4377
4398
|
async function B() {
|
|
4378
4399
|
z(), await f(), P.value && p("confirm", {
|
|
@@ -4380,8 +4401,8 @@ var ja = ["id"], Ma = { class: "waveform-annotation-editor__content" }, Na = {
|
|
|
4380
4401
|
text: _.value.trim(),
|
|
4381
4402
|
style: {
|
|
4382
4403
|
borderColor: C.value,
|
|
4383
|
-
textColor:
|
|
4384
|
-
backgroundColor:
|
|
4404
|
+
textColor: w.value,
|
|
4405
|
+
backgroundColor: E.value.trim() || "rgba(255, 255, 255, 0.92)"
|
|
4385
4406
|
}
|
|
4386
4407
|
});
|
|
4387
4408
|
}
|
|
@@ -4392,7 +4413,7 @@ var ja = ["id"], Ma = { class: "waveform-annotation-editor__content" }, Na = {
|
|
|
4392
4413
|
let t = e.target;
|
|
4393
4414
|
t.value && p("series-change", t.value);
|
|
4394
4415
|
}
|
|
4395
|
-
return (t, o) => (
|
|
4416
|
+
return (t, o) => (y(), n(D(oe), {
|
|
4396
4417
|
visible: !0,
|
|
4397
4418
|
width: 440,
|
|
4398
4419
|
"mask-closable": !0,
|
|
@@ -4405,23 +4426,23 @@ var ja = ["id"], Ma = { class: "waveform-annotation-editor__content" }, Na = {
|
|
|
4405
4426
|
onCancel: o[4] ||= (e) => p("cancel"),
|
|
4406
4427
|
onOk: B
|
|
4407
4428
|
}, {
|
|
4408
|
-
title:
|
|
4409
|
-
default:
|
|
4410
|
-
a("div",
|
|
4429
|
+
title: j(() => [a("span", { id: D(g) }, T(d.mode === "add" ? "添加标注" : "编辑标注"), 9, La)]),
|
|
4430
|
+
default: j(() => [a("div", Ra, [
|
|
4431
|
+
a("div", za, [
|
|
4411
4432
|
a("label", {
|
|
4412
4433
|
class: "waveform-annotation-editor__coordinate-input",
|
|
4413
4434
|
"aria-invalid": !!N.value
|
|
4414
4435
|
}, [
|
|
4415
4436
|
o[5] ||= a("b", null, "X", -1),
|
|
4416
|
-
s(
|
|
4417
|
-
value:
|
|
4437
|
+
s(D(ae), {
|
|
4438
|
+
value: v.value === "" ? void 0 : Number(v.value),
|
|
4418
4439
|
controls: !0,
|
|
4419
4440
|
step: .001,
|
|
4420
4441
|
keyboard: !0,
|
|
4421
4442
|
status: N.value ? "error" : void 0,
|
|
4422
4443
|
"aria-label": "标注横轴时间",
|
|
4423
4444
|
"aria-invalid": !!N.value,
|
|
4424
|
-
"aria-describedby": N.value ? `${
|
|
4445
|
+
"aria-describedby": N.value ? `${D(g)}-time-error` : void 0,
|
|
4425
4446
|
onBlur: z,
|
|
4426
4447
|
"onUpdate:value": R
|
|
4427
4448
|
}, null, 8, [
|
|
@@ -4430,49 +4451,49 @@ var ja = ["id"], Ma = { class: "waveform-annotation-editor__content" }, Na = {
|
|
|
4430
4451
|
"aria-invalid",
|
|
4431
4452
|
"aria-describedby"
|
|
4432
4453
|
]),
|
|
4433
|
-
a("code",
|
|
4434
|
-
], 8,
|
|
4435
|
-
N.value ? (
|
|
4454
|
+
a("code", Va, T(v.value), 1)
|
|
4455
|
+
], 8, Ba),
|
|
4456
|
+
N.value ? (y(), i("p", {
|
|
4436
4457
|
key: 0,
|
|
4437
|
-
id: `${
|
|
4458
|
+
id: `${D(g)}-time-error`,
|
|
4438
4459
|
class: "waveform-annotation-editor__coordinate-error",
|
|
4439
4460
|
role: "alert"
|
|
4440
|
-
},
|
|
4441
|
-
a("span", null, [o[6] ||= a("b", null, "Y", -1), a("code", null,
|
|
4461
|
+
}, T(N.value), 9, Ha)) : r("", !0),
|
|
4462
|
+
a("span", null, [o[6] ||= a("b", null, "Y", -1), a("code", null, T(D(Ot)(d.annotation.y)), 1)])
|
|
4442
4463
|
]),
|
|
4443
4464
|
o[13] ||= a("p", {
|
|
4444
4465
|
class: "waveform-annotation-editor__coordinate-hint",
|
|
4445
4466
|
role: "note"
|
|
4446
4467
|
}, " 修改 X 轴后失焦时会自动吸附最近的采样点 ", -1),
|
|
4447
|
-
I.value ? (
|
|
4468
|
+
I.value ? (y(), i("label", Ua, [
|
|
4448
4469
|
a("i", {
|
|
4449
4470
|
style: m({ backgroundColor: I.value.color }),
|
|
4450
4471
|
"aria-hidden": "true"
|
|
4451
4472
|
}, null, 4),
|
|
4452
|
-
a("span",
|
|
4453
|
-
d.seriesOptions?.length ? (
|
|
4473
|
+
a("span", Wa, [o[7] ||= a("small", null, "标注波形", -1), a("b", null, T(I.value.name), 1)]),
|
|
4474
|
+
d.seriesOptions?.length ? (y(), i("select", {
|
|
4454
4475
|
key: 0,
|
|
4455
4476
|
value: d.annotation.seriesId,
|
|
4456
4477
|
"aria-label": "选择标注波形",
|
|
4457
4478
|
onChange: H
|
|
4458
|
-
}, [(
|
|
4479
|
+
}, [(y(!0), i(e, null, S(d.seriesOptions, (e) => (y(), i("option", {
|
|
4459
4480
|
key: e.seriesId,
|
|
4460
4481
|
value: e.seriesId
|
|
4461
|
-
},
|
|
4482
|
+
}, T(e.name) + T(e.unit ? ` (${e.unit})` : ""), 9, Ka))), 128))], 40, Ga)) : I.value.unit ? (y(), i("code", qa, T(I.value.unit), 1)) : r("", !0)
|
|
4462
4483
|
])) : r("", !0),
|
|
4463
|
-
a("label",
|
|
4484
|
+
a("label", Ja, [a("span", Ya, [o[8] ||= a("b", null, "标注文本", -1), a("small", null, T(F.value) + "/" + T(D(40)), 1)]), M(a("textarea", {
|
|
4464
4485
|
ref_key: "textarea",
|
|
4465
4486
|
ref: h,
|
|
4466
4487
|
"onUpdate:modelValue": o[0] ||= (e) => _.value = e,
|
|
4467
4488
|
rows: "4",
|
|
4468
|
-
maxlength:
|
|
4489
|
+
maxlength: D(40),
|
|
4469
4490
|
"aria-label": "标注文本",
|
|
4470
4491
|
placeholder: "输入这处波形的说明",
|
|
4471
4492
|
onKeydown: V
|
|
4472
|
-
}, null, 40,
|
|
4473
|
-
a("fieldset",
|
|
4493
|
+
}, null, 40, Xa), [[O, _.value]])]),
|
|
4494
|
+
a("fieldset", Za, [
|
|
4474
4495
|
o[12] ||= a("legend", null, "颜色与透明度", -1),
|
|
4475
|
-
a("label",
|
|
4496
|
+
a("label", Qa, [o[9] ||= a("span", null, "边框色", -1), s(D(u), {
|
|
4476
4497
|
"pure-color": C.value,
|
|
4477
4498
|
"onUpdate:pureColor": o[1] ||= (e) => C.value = e,
|
|
4478
4499
|
"aria-label": "标注边框色",
|
|
@@ -4482,9 +4503,9 @@ var ja = ["id"], Ma = { class: "waveform-annotation-editor__content" }, Na = {
|
|
|
4482
4503
|
"disable-alpha": !1,
|
|
4483
4504
|
"blur-close": !0
|
|
4484
4505
|
}, null, 8, ["pure-color"])]),
|
|
4485
|
-
a("label",
|
|
4486
|
-
"pure-color":
|
|
4487
|
-
"onUpdate:pureColor": o[2] ||= (e) =>
|
|
4506
|
+
a("label", $a, [o[10] ||= a("span", null, "文字色", -1), s(D(u), {
|
|
4507
|
+
"pure-color": w.value,
|
|
4508
|
+
"onUpdate:pureColor": o[2] ||= (e) => w.value = e,
|
|
4488
4509
|
"aria-label": "标注文字色",
|
|
4489
4510
|
"use-type": "pure",
|
|
4490
4511
|
"picker-type": "chrome",
|
|
@@ -4492,9 +4513,9 @@ var ja = ["id"], Ma = { class: "waveform-annotation-editor__content" }, Na = {
|
|
|
4492
4513
|
"disable-alpha": !1,
|
|
4493
4514
|
"blur-close": !0
|
|
4494
4515
|
}, null, 8, ["pure-color"])]),
|
|
4495
|
-
a("label",
|
|
4496
|
-
"pure-color":
|
|
4497
|
-
"onUpdate:pureColor": o[3] ||= (e) =>
|
|
4516
|
+
a("label", eo, [o[11] ||= a("span", null, "背景色", -1), s(D(u), {
|
|
4517
|
+
"pure-color": E.value,
|
|
4518
|
+
"onUpdate:pureColor": o[3] ||= (e) => E.value = e,
|
|
4498
4519
|
"aria-label": "标注背景色",
|
|
4499
4520
|
"use-type": "pure",
|
|
4500
4521
|
"picker-type": "chrome",
|
|
@@ -4507,13 +4528,13 @@ var ja = ["id"], Ma = { class: "waveform-annotation-editor__content" }, Na = {
|
|
|
4507
4528
|
_: 1
|
|
4508
4529
|
}, 8, ["ok-button-props"]));
|
|
4509
4530
|
}
|
|
4510
|
-
}), [["__scopeId", "data-v-01ecd3a4"]]),
|
|
4531
|
+
}), [["__scopeId", "data-v-01ecd3a4"]]), no = { class: "waveform-tooltip__series-content" }, ro = { class: "waveform-tooltip__series-label" }, io = {
|
|
4511
4532
|
key: 0,
|
|
4512
4533
|
class: "waveform-tooltip__value"
|
|
4513
|
-
},
|
|
4534
|
+
}, ao = {
|
|
4514
4535
|
key: 1,
|
|
4515
4536
|
class: "waveform-tooltip__value waveform-tooltip__value--missing"
|
|
4516
|
-
},
|
|
4537
|
+
}, oo = 12, so = 8, co = 560, lo = /*#__PURE__*/ et(/* @__PURE__ */ l({
|
|
4517
4538
|
__name: "WaveformTooltip",
|
|
4518
4539
|
props: {
|
|
4519
4540
|
visible: { type: Boolean },
|
|
@@ -4525,45 +4546,44 @@ var ja = ["id"], Ma = { class: "waveform-annotation-editor__content" }, Na = {
|
|
|
4525
4546
|
containerHeight: {}
|
|
4526
4547
|
},
|
|
4527
4548
|
setup(n) {
|
|
4528
|
-
let s = n
|
|
4529
|
-
|
|
4530
|
-
|
|
4531
|
-
|
|
4532
|
-
|
|
4533
|
-
|
|
4534
|
-
|
|
4535
|
-
|
|
4536
|
-
|
|
4537
|
-
|
|
4538
|
-
return 16 + ao * s.seriesPoints.reduce((t, n) => t + c(l(n), e), 0) + 5;
|
|
4549
|
+
let s = n, c = x(null), l = x({
|
|
4550
|
+
width: 0,
|
|
4551
|
+
height: 0
|
|
4552
|
+
});
|
|
4553
|
+
function u() {
|
|
4554
|
+
let e = c.value?.getBoundingClientRect(), t = e?.width ?? 0, n = e?.height ?? 0;
|
|
4555
|
+
(t !== l.value.width || n !== l.value.height) && (l.value = {
|
|
4556
|
+
width: t,
|
|
4557
|
+
height: n
|
|
4558
|
+
});
|
|
4539
4559
|
}
|
|
4560
|
+
k(c, (e, t, n) => {
|
|
4561
|
+
if (u(), !e) return;
|
|
4562
|
+
let r = new ResizeObserver(u);
|
|
4563
|
+
r.observe(e), n(() => r.disconnect());
|
|
4564
|
+
}, { flush: "post" }), v(u);
|
|
4540
4565
|
let d = t(() => {
|
|
4541
4566
|
if (!s.visible || !s.hoveredPoint) return { display: "none" };
|
|
4542
|
-
let e = s.position.x +
|
|
4543
|
-
left: `${e}px`,
|
|
4544
|
-
maxWidth: `${Math.min(ro, n)}px`
|
|
4545
|
-
} : t >= to ? {
|
|
4546
|
-
right: `${s.containerWidth - s.position.x + eo}px`,
|
|
4547
|
-
maxWidth: `${Math.min(ro, r)}px`
|
|
4548
|
-
} : {
|
|
4549
|
-
left: `${to}px`,
|
|
4550
|
-
maxWidth: `${i}px`
|
|
4551
|
-
}, o = Number.parseFloat(a.maxWidth);
|
|
4567
|
+
let e = s.position.x + oo, t = s.position.x - oo - l.value.width, n = Math.max(1, Math.min(co, s.containerWidth - so * 2));
|
|
4552
4568
|
return {
|
|
4553
|
-
...
|
|
4554
|
-
|
|
4569
|
+
...e + l.value.width <= s.containerWidth - so ? { left: `${e}px` } : t >= so ? { right: `${s.containerWidth - s.position.x + oo}px` } : { left: `${so}px` },
|
|
4570
|
+
maxWidth: `${n}px`,
|
|
4571
|
+
visibility: l.value.width > 0 ? "visible" : "hidden",
|
|
4572
|
+
top: `${Math.max(so, Math.min(s.position.y - 18, s.containerHeight - l.value.height - so))}px`
|
|
4555
4573
|
};
|
|
4556
4574
|
});
|
|
4557
|
-
return (t, s) => n.visible && n.hoveredPoint ? (
|
|
4575
|
+
return (t, s) => n.visible && n.hoveredPoint ? (y(), i("div", {
|
|
4558
4576
|
key: 0,
|
|
4577
|
+
ref_key: "tooltipElement",
|
|
4578
|
+
ref: c,
|
|
4559
4579
|
class: "waveform-tooltip waveform-chart__tooltip",
|
|
4560
4580
|
style: m(d.value)
|
|
4561
|
-
}, [(
|
|
4581
|
+
}, [(y(!0), i(e, null, S(n.seriesPoints, (t) => (y(), i("span", {
|
|
4562
4582
|
key: `${t.trackIndex}-${t.name}`,
|
|
4563
4583
|
class: "waveform-tooltip__series waveform-chart__tooltip-series"
|
|
4564
|
-
}, [a("i", { style: m({ backgroundColor: t.color }) }, null, 4), a("span",
|
|
4584
|
+
}, [a("i", { style: m({ backgroundColor: t.color }) }, null, 4), a("span", no, [a("span", ro, [o(T(t.shotNo?.trim() || "未配置炮号") + ": " + T(t.name), 1), t.unit ? (y(), i(e, { key: 0 }, [o("(" + T(t.unit) + ")", 1)], 64)) : r("", !0)]), t.point ? (y(), i("span", io, "(x:" + T(D(Nt)(t.point.x, n.timeUnit)) + " y:" + T(D(Dt)(t.point.y)) + ")", 1)) : (y(), i("span", ao, "无数据"))])]))), 128))], 4)) : r("", !0);
|
|
4565
4585
|
}
|
|
4566
|
-
}), [["__scopeId", "data-v-
|
|
4586
|
+
}), [["__scopeId", "data-v-0d0d1d3c"]]), uo = /* @__PURE__ */ l({
|
|
4567
4587
|
__name: "WaveformHoverHost",
|
|
4568
4588
|
props: {
|
|
4569
4589
|
state: {},
|
|
@@ -4574,7 +4594,7 @@ var ja = ["id"], Ma = { class: "waveform-annotation-editor__content" }, Na = {
|
|
|
4574
4594
|
},
|
|
4575
4595
|
setup(e) {
|
|
4576
4596
|
let r = e, i = t(() => r.state.points.find((e) => e.point)?.point ?? null);
|
|
4577
|
-
return (t, r) => (
|
|
4597
|
+
return (t, r) => (y(), n(lo, {
|
|
4578
4598
|
visible: e.visible && i.value !== null,
|
|
4579
4599
|
position: e.state.position,
|
|
4580
4600
|
"time-unit": e.timeUnit,
|
|
@@ -4592,16 +4612,16 @@ var ja = ["id"], Ma = { class: "waveform-annotation-editor__content" }, Na = {
|
|
|
4592
4612
|
"container-height"
|
|
4593
4613
|
]));
|
|
4594
4614
|
}
|
|
4595
|
-
}),
|
|
4596
|
-
circle:
|
|
4597
|
-
square:
|
|
4598
|
-
triangle:
|
|
4599
|
-
diamond:
|
|
4615
|
+
}), fo = 13, po = 2, mo = 14, ho = 8, go = 24, _o = {
|
|
4616
|
+
circle: te,
|
|
4617
|
+
square: re,
|
|
4618
|
+
triangle: K,
|
|
4619
|
+
diamond: ne
|
|
4600
4620
|
};
|
|
4601
|
-
function
|
|
4602
|
-
return e === "none" ? null :
|
|
4621
|
+
function vo(e, t = 48) {
|
|
4622
|
+
return e === "none" ? null : ee().type(_o[e]).size(t)() ?? null;
|
|
4603
4623
|
}
|
|
4604
|
-
function
|
|
4624
|
+
function yo(e, t, n = 48) {
|
|
4605
4625
|
if (e === "none" || t.length === 0) return null;
|
|
4606
4626
|
if (e === "circle") {
|
|
4607
4627
|
let e = Math.sqrt(n / Math.PI);
|
|
@@ -4618,24 +4638,24 @@ function go(e, t, n = 48) {
|
|
|
4618
4638
|
let r = Math.sqrt(n / (2 * Math.tan(Math.PI / 6))), i = r * Math.tan(Math.PI / 6);
|
|
4619
4639
|
return t.map(({ x: e, y: t }) => `M${e},${t - r}L${e + i},${t}L${e},${t + r}L${e - i},${t}Z`).join("");
|
|
4620
4640
|
}
|
|
4621
|
-
function
|
|
4641
|
+
function bo(e) {
|
|
4622
4642
|
return e === "none" ? null : "M1 8H25";
|
|
4623
4643
|
}
|
|
4624
|
-
function
|
|
4644
|
+
function xo(e) {
|
|
4625
4645
|
if (e === "dashed") return "8 5";
|
|
4626
4646
|
if (e === "dash-dot") return "8 5 1.5 5";
|
|
4627
4647
|
}
|
|
4628
|
-
function
|
|
4629
|
-
let t = (Number.isFinite(e) && e > 0 ? Math.min(e,
|
|
4648
|
+
function So(e) {
|
|
4649
|
+
let t = (Number.isFinite(e) && e > 0 ? Math.min(e, go) : ho) / 2, n = fo - t, r = fo + t;
|
|
4630
4650
|
return [
|
|
4631
|
-
`M${n} ${
|
|
4632
|
-
`M${
|
|
4633
|
-
`M${n} ${
|
|
4651
|
+
`M${n} ${po}H${r}`,
|
|
4652
|
+
`M${fo} ${po}V${mo}`,
|
|
4653
|
+
`M${n} ${mo}H${r}`
|
|
4634
4654
|
].join("");
|
|
4635
4655
|
}
|
|
4636
4656
|
//#endregion
|
|
4637
4657
|
//#region src/components/rendering/WaveformSeriesLayer.vue?vue&type=script&setup=true&lang.ts
|
|
4638
|
-
var
|
|
4658
|
+
var Co = ["clip-path"], wo = ["data-series-id", "data-series-name"], To = [
|
|
4639
4659
|
"data-series-id",
|
|
4640
4660
|
"data-series-name",
|
|
4641
4661
|
"data-y-axis-index",
|
|
@@ -4644,11 +4664,11 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4644
4664
|
"d",
|
|
4645
4665
|
"stroke",
|
|
4646
4666
|
"stroke-dasharray"
|
|
4647
|
-
],
|
|
4667
|
+
], Eo = ["data-series-id"], Do = [
|
|
4648
4668
|
"d",
|
|
4649
4669
|
"stroke",
|
|
4650
4670
|
"stroke-width"
|
|
4651
|
-
],
|
|
4671
|
+
], Oo = ["data-series-id", "data-point-type"], ko = ["d", "fill"], Ao = /*#__PURE__*/ et(/* @__PURE__ */ l({
|
|
4652
4672
|
__name: "WaveformSeriesLayer",
|
|
4653
4673
|
props: {
|
|
4654
4674
|
track: {},
|
|
@@ -4656,7 +4676,7 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4656
4676
|
},
|
|
4657
4677
|
setup(n) {
|
|
4658
4678
|
let a = n, o = t(() => a.track.seriesPaths.map((e) => {
|
|
4659
|
-
let t =
|
|
4679
|
+
let t = yo(e.series.pointType, e.pointRenderPoints.map((t) => ({
|
|
4660
4680
|
x: a.track.xScale(t.x),
|
|
4661
4681
|
y: e.yScale(t.y)
|
|
4662
4682
|
}))), n = e.series.errorBar.capWidth / 2, r = e.errorBarRenderPoints.map((t) => {
|
|
@@ -4673,17 +4693,17 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4673
4693
|
errorBarPath: r || null
|
|
4674
4694
|
};
|
|
4675
4695
|
}));
|
|
4676
|
-
return (t, a) => !n.track.isEmpty && n.track.hasVisibleSeries ? (
|
|
4696
|
+
return (t, a) => !n.track.isEmpty && n.track.hasVisibleSeries ? (y(), i("g", {
|
|
4677
4697
|
key: 0,
|
|
4678
4698
|
class: "waveform-track__series",
|
|
4679
4699
|
"clip-path": `url(#${n.clipPathId}-${n.track.index})`
|
|
4680
|
-
}, [(
|
|
4700
|
+
}, [(y(!0), i(e, null, S(o.value, (e) => (y(), i("g", {
|
|
4681
4701
|
key: e.series.id,
|
|
4682
4702
|
class: "waveform-track__series-item waveform-chart__series",
|
|
4683
4703
|
"data-series-id": e.series.id,
|
|
4684
4704
|
"data-series-name": e.series.name || void 0
|
|
4685
4705
|
}, [
|
|
4686
|
-
e.path ? (
|
|
4706
|
+
e.path ? (y(), i("path", {
|
|
4687
4707
|
key: 0,
|
|
4688
4708
|
class: "waveform-track__line waveform-chart__line",
|
|
4689
4709
|
"data-series-id": e.series.id,
|
|
@@ -4693,51 +4713,51 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4693
4713
|
"data-line-style": e.series.lineStyle,
|
|
4694
4714
|
d: e.path,
|
|
4695
4715
|
stroke: e.series.color,
|
|
4696
|
-
"stroke-dasharray":
|
|
4697
|
-
}, null, 8,
|
|
4698
|
-
e.series.errorBar.visible ? (
|
|
4716
|
+
"stroke-dasharray": D(xo)(e.series.lineStyle)
|
|
4717
|
+
}, null, 8, To)) : r("", !0),
|
|
4718
|
+
e.series.errorBar.visible ? (y(), i("g", {
|
|
4699
4719
|
key: 1,
|
|
4700
4720
|
class: "waveform-track__error-bars waveform-chart__error-bars",
|
|
4701
4721
|
"data-series-id": e.series.id
|
|
4702
|
-
}, [e.errorBarPath ? (
|
|
4722
|
+
}, [e.errorBarPath ? (y(), i("path", {
|
|
4703
4723
|
key: 0,
|
|
4704
4724
|
class: "waveform-track__error-bar waveform-chart__error-bar",
|
|
4705
4725
|
d: e.errorBarPath,
|
|
4706
4726
|
stroke: e.series.errorBar.color || e.series.color,
|
|
4707
4727
|
"stroke-width": e.series.errorBar.width
|
|
4708
|
-
}, null, 8,
|
|
4709
|
-
e.series.pointType === "none" ? r("", !0) : (
|
|
4728
|
+
}, null, 8, Do)) : r("", !0)], 8, Eo)) : r("", !0),
|
|
4729
|
+
e.series.pointType === "none" ? r("", !0) : (y(), i("g", {
|
|
4710
4730
|
key: 2,
|
|
4711
4731
|
class: "waveform-track__points waveform-chart__points",
|
|
4712
4732
|
"data-series-id": e.series.id,
|
|
4713
4733
|
"data-point-type": e.series.pointType
|
|
4714
|
-
}, [e.pointPath ? (
|
|
4734
|
+
}, [e.pointPath ? (y(), i("path", {
|
|
4715
4735
|
key: 0,
|
|
4716
4736
|
class: "waveform-track__point waveform-chart__point",
|
|
4717
4737
|
d: e.pointPath,
|
|
4718
4738
|
fill: e.series.color
|
|
4719
|
-
}, null, 8,
|
|
4720
|
-
], 8,
|
|
4739
|
+
}, null, 8, ko)) : r("", !0)], 8, Oo))
|
|
4740
|
+
], 8, wo))), 128))], 8, Co)) : r("", !0);
|
|
4721
4741
|
}
|
|
4722
|
-
}), [["__scopeId", "data-v-42a3fd47"]]),
|
|
4742
|
+
}), [["__scopeId", "data-v-42a3fd47"]]), jo = ["transform"], Mo = ["transform"], No = {
|
|
4723
4743
|
class: "waveform-track__axis-endpoint waveform-track__axis-endpoint--start waveform-chart__axis-endpoint waveform-chart__axis-endpoint--start",
|
|
4724
4744
|
x: "0",
|
|
4725
4745
|
y: "7",
|
|
4726
4746
|
dy: "0.71em",
|
|
4727
4747
|
"text-anchor": "start"
|
|
4728
|
-
},
|
|
4748
|
+
}, Po = ["x"], Fo = [
|
|
4729
4749
|
"data-y-axis-index",
|
|
4730
4750
|
"data-y-axis-side",
|
|
4731
4751
|
"transform"
|
|
4732
|
-
],
|
|
4752
|
+
], Io = { key: 2 }, Lo = [
|
|
4733
4753
|
"x",
|
|
4734
4754
|
"y",
|
|
4735
4755
|
"width"
|
|
4736
|
-
],
|
|
4756
|
+
], Ro = ["fill", "transform"], zo = ["data-y-axis-title-index"], Bo = [
|
|
4737
4757
|
"x",
|
|
4738
4758
|
"y",
|
|
4739
4759
|
"width"
|
|
4740
|
-
],
|
|
4760
|
+
], Vo = ["fill", "transform"], Ho = /* @__PURE__ */ l({
|
|
4741
4761
|
__name: "WaveformTrackAxes",
|
|
4742
4762
|
props: {
|
|
4743
4763
|
track: {},
|
|
@@ -4748,7 +4768,7 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4748
4768
|
yLabel: {}
|
|
4749
4769
|
},
|
|
4750
4770
|
setup(t) {
|
|
4751
|
-
let n = t, o =
|
|
4771
|
+
let n = t, o = x(), s = x([]);
|
|
4752
4772
|
function c(e) {
|
|
4753
4773
|
return e.name.trim() || n.yLabel || "";
|
|
4754
4774
|
}
|
|
@@ -4766,20 +4786,15 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4766
4786
|
if (n.track.yAxes.forEach((e, t) => {
|
|
4767
4787
|
let r = s.value[t];
|
|
4768
4788
|
if (!r) return;
|
|
4769
|
-
let
|
|
4770
|
-
|
|
4771
|
-
axisMax: a,
|
|
4772
|
-
topTickValue: o,
|
|
4773
|
-
unit: c
|
|
4774
|
-
})).tickSize(-4).tickPadding(7).tickSizeOuter(0).tickValues(e.tickValues), u = W(r);
|
|
4775
|
-
u.call(l), u.selectAll("path.domain").attr("display", n.axes?.y?.lineVisible === !1 ? "none" : null);
|
|
4789
|
+
let i = e.seriesList[0]?.unit, a = (e.side === "left" ? F(e.scale) : I(e.scale)).tickFormat((t) => ar(Number(t), e.scale.domain(), e.tickValues, i)).tickSize(-4).tickPadding(7).tickSizeOuter(0).tickValues(e.tickValues), o = G(r);
|
|
4790
|
+
o.call(a), o.selectAll("path.domain").attr("display", n.axes?.y?.lineVisible === !1 ? "none" : null);
|
|
4776
4791
|
}), !o.value) return;
|
|
4777
|
-
let e =
|
|
4778
|
-
e.call(
|
|
4792
|
+
let e = G(o.value);
|
|
4793
|
+
e.call(P(n.track.xScale).tickValues(n.track.xAxisTickValues).tickFormat((e) => At(Number(e), n.track.xScale.domain(), n.timeUnit, "tick", n.axes?.x?.labelFormatter)).tickSize(-4).tickPadding(7).tickSizeOuter(0)), e.selectAll("path.domain").attr("display", n.axes?.x?.lineVisible === !1 ? "none" : null);
|
|
4779
4794
|
}
|
|
4780
4795
|
return g(async () => {
|
|
4781
4796
|
await f(), m();
|
|
4782
|
-
}),
|
|
4797
|
+
}), k([
|
|
4783
4798
|
() => n.track.xScale,
|
|
4784
4799
|
() => n.track.yAxes,
|
|
4785
4800
|
() => n.track.xAxisTickValues,
|
|
@@ -4790,29 +4805,29 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4790
4805
|
() => n.axes?.y?.lineVisible
|
|
4791
4806
|
], async () => {
|
|
4792
4807
|
await f(), m();
|
|
4793
|
-
}, { flush: "post" }), (n, s) => (
|
|
4794
|
-
t.track.showXAxis ? (
|
|
4808
|
+
}, { flush: "post" }), (n, s) => (y(), i(e, null, [
|
|
4809
|
+
t.track.showXAxis ? (y(), i("g", {
|
|
4795
4810
|
key: 0,
|
|
4796
4811
|
ref_key: "xAxisElement",
|
|
4797
4812
|
ref: o,
|
|
4798
4813
|
class: p(["waveform-track__axis waveform-track__axis--x waveform-chart__axis waveform-chart__axis--x", { "waveform-track__axis--line-hidden": t.axes?.x?.lineVisible === !1 }]),
|
|
4799
4814
|
transform: `translate(0, ${t.track.height})`
|
|
4800
|
-
}, null, 10,
|
|
4801
|
-
t.track.showXAxis ? (
|
|
4815
|
+
}, null, 10, jo)) : r("", !0),
|
|
4816
|
+
t.track.showXAxis ? (y(), i("g", {
|
|
4802
4817
|
key: 1,
|
|
4803
4818
|
class: "waveform-track__axis-endpoints waveform-chart__axis-endpoints",
|
|
4804
4819
|
transform: `translate(0, ${t.track.height})`,
|
|
4805
4820
|
"font-family": "sans-serif",
|
|
4806
4821
|
"font-size": "10",
|
|
4807
4822
|
"aria-hidden": "true"
|
|
4808
|
-
}, [a("text",
|
|
4823
|
+
}, [a("text", No, T(t.track.endpointLabels.start), 1), a("text", {
|
|
4809
4824
|
class: "waveform-track__axis-endpoint waveform-track__axis-endpoint--end waveform-chart__axis-endpoint waveform-chart__axis-endpoint--end",
|
|
4810
4825
|
x: t.track.width ?? t.innerWidth,
|
|
4811
4826
|
y: "7",
|
|
4812
4827
|
dy: "0.71em",
|
|
4813
4828
|
"text-anchor": "end"
|
|
4814
|
-
},
|
|
4815
|
-
(
|
|
4829
|
+
}, T(t.track.endpointLabels.end), 9, Po)], 8, Mo)) : r("", !0),
|
|
4830
|
+
(y(!0), i(e, null, S(t.track.isEmpty ? [] : t.track.yAxes, (e) => (y(), i("g", {
|
|
4816
4831
|
key: `y-axis-${t.track.index}-${e.index}`,
|
|
4817
4832
|
ref_for: !0,
|
|
4818
4833
|
ref: (t) => u(t, e.index),
|
|
@@ -4820,66 +4835,66 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4820
4835
|
"data-y-axis-index": e.index,
|
|
4821
4836
|
"data-y-axis-side": e.side,
|
|
4822
4837
|
transform: `translate(${e.x}, 0)`
|
|
4823
|
-
}, null, 10,
|
|
4824
|
-
!t.cleanView && !t.track.isEmpty && t.track.hasVisibleSeries && t.track.seriesList.length === 1 && t.track.showYAxisLabel && t.track.series && c(t.track.series) && d(t.track.height, t.track.index) ? (
|
|
4838
|
+
}, null, 10, Fo))), 128)),
|
|
4839
|
+
!t.cleanView && !t.track.isEmpty && t.track.hasVisibleSeries && t.track.seriesList.length === 1 && t.track.showYAxisLabel && t.track.series && c(t.track.series) && d(t.track.height, t.track.index) ? (y(), i("g", Io, [a("rect", {
|
|
4825
4840
|
class: "waveform-track__y-axis-label-bg waveform-chart__y-axis-label-bg",
|
|
4826
|
-
x: t.track.yAxisLabelX -
|
|
4841
|
+
x: t.track.yAxisLabelX - D(12) / 2,
|
|
4827
4842
|
y: t.track.height / 2 - 40,
|
|
4828
|
-
width:
|
|
4843
|
+
width: D(12),
|
|
4829
4844
|
height: "80",
|
|
4830
4845
|
rx: "2"
|
|
4831
|
-
}, null, 8,
|
|
4846
|
+
}, null, 8, Lo), a("text", {
|
|
4832
4847
|
class: "waveform-track__y-axis-label waveform-chart__y-axis-label",
|
|
4833
4848
|
fill: t.track.series?.color,
|
|
4834
4849
|
transform: `translate(${t.track.yAxisLabelX}, ${t.track.height / 2}) rotate(-90)`,
|
|
4835
4850
|
"text-anchor": "middle",
|
|
4836
4851
|
"dominant-baseline": "central"
|
|
4837
|
-
},
|
|
4838
|
-
(
|
|
4852
|
+
}, T(t.track.series ? c(t.track.series) : ""), 9, Ro)])) : r("", !0),
|
|
4853
|
+
(y(!0), i(e, null, S(!t.cleanView && t.track.yAxes.length > 1 ? t.track.yAxes.filter(l) : [], (e) => (y(), i("g", {
|
|
4839
4854
|
key: `y-axis-title-${t.track.index}-${e.index}`,
|
|
4840
4855
|
class: "waveform-track__multi-axis-title",
|
|
4841
4856
|
"data-y-axis-title-index": e.index
|
|
4842
4857
|
}, [a("rect", {
|
|
4843
4858
|
class: "waveform-track__y-axis-label-bg waveform-chart__y-axis-label-bg",
|
|
4844
|
-
x: e.labelX -
|
|
4859
|
+
x: e.labelX - D(12) / 2,
|
|
4845
4860
|
y: t.track.height / 2 - 40,
|
|
4846
|
-
width:
|
|
4861
|
+
width: D(12),
|
|
4847
4862
|
height: "80",
|
|
4848
4863
|
rx: "2"
|
|
4849
|
-
}, null, 8,
|
|
4864
|
+
}, null, 8, Bo), a("text", {
|
|
4850
4865
|
class: "waveform-track__y-axis-label waveform-chart__y-axis-label",
|
|
4851
4866
|
fill: e.seriesList[0].color,
|
|
4852
4867
|
transform: `translate(${e.labelX}, ${t.track.height / 2}) rotate(-90)`,
|
|
4853
4868
|
"text-anchor": "middle",
|
|
4854
4869
|
"dominant-baseline": "central"
|
|
4855
|
-
},
|
|
4870
|
+
}, T(c(e.seriesList[0])), 9, Vo)], 8, zo))), 128))
|
|
4856
4871
|
], 64));
|
|
4857
4872
|
}
|
|
4858
|
-
}),
|
|
4873
|
+
}), Uo = [
|
|
4859
4874
|
"width",
|
|
4860
4875
|
"height",
|
|
4861
4876
|
"fill"
|
|
4862
|
-
],
|
|
4877
|
+
], Wo = ["clip-path"], Go = { class: "waveform-track__grid waveform-track__grid--minor waveform-chart__grid waveform-chart__grid--minor" }, Ko = [
|
|
4863
4878
|
"stroke",
|
|
4864
4879
|
"x1",
|
|
4865
4880
|
"x2",
|
|
4866
4881
|
"y2"
|
|
4867
|
-
],
|
|
4882
|
+
], qo = [
|
|
4868
4883
|
"stroke",
|
|
4869
4884
|
"x2",
|
|
4870
4885
|
"y1",
|
|
4871
4886
|
"y2"
|
|
4872
|
-
],
|
|
4887
|
+
], Jo = { class: "waveform-track__grid waveform-track__grid--major waveform-chart__grid waveform-chart__grid--major" }, Yo = [
|
|
4873
4888
|
"stroke",
|
|
4874
4889
|
"x1",
|
|
4875
4890
|
"x2",
|
|
4876
4891
|
"y2"
|
|
4877
|
-
],
|
|
4892
|
+
], Xo = [
|
|
4878
4893
|
"stroke",
|
|
4879
4894
|
"x2",
|
|
4880
4895
|
"y1",
|
|
4881
4896
|
"y2"
|
|
4882
|
-
],
|
|
4897
|
+
], Zo = ["clip-path"], Qo = [
|
|
4883
4898
|
"data-y-axis-index",
|
|
4884
4899
|
"x2",
|
|
4885
4900
|
"y1",
|
|
@@ -4887,7 +4902,7 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4887
4902
|
"stroke",
|
|
4888
4903
|
"stroke-width",
|
|
4889
4904
|
"stroke-dasharray"
|
|
4890
|
-
],
|
|
4905
|
+
], $o = ["x", "y"], es = /* @__PURE__ */ l({
|
|
4891
4906
|
__name: "WaveformTrackBackdrop",
|
|
4892
4907
|
props: {
|
|
4893
4908
|
track: {},
|
|
@@ -4904,20 +4919,20 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4904
4919
|
let [t, r] = e.scale.domain();
|
|
4905
4920
|
return !n.zeroLine.visible || t > 0 || r < 0 ? null : e.scale(0);
|
|
4906
4921
|
}
|
|
4907
|
-
return (n, s) => (
|
|
4908
|
-
!t.track.isEmpty && !t.cleanView ? (
|
|
4922
|
+
return (n, s) => (y(), i(e, null, [
|
|
4923
|
+
!t.track.isEmpty && !t.cleanView ? (y(), i("rect", {
|
|
4909
4924
|
key: 0,
|
|
4910
4925
|
class: "waveform-track__plot-background waveform-chart__plot-background",
|
|
4911
4926
|
width: t.track.width ?? t.innerWidth,
|
|
4912
4927
|
height: t.track.height,
|
|
4913
4928
|
fill: t.frameStyle.backgroundColor,
|
|
4914
4929
|
"aria-hidden": "true"
|
|
4915
|
-
}, null, 8,
|
|
4916
|
-
!t.track.isEmpty && t.track.hasVisibleSeries && !t.cleanView ? (
|
|
4930
|
+
}, null, 8, Uo)) : r("", !0),
|
|
4931
|
+
!t.track.isEmpty && t.track.hasVisibleSeries && !t.cleanView ? (y(), i("g", {
|
|
4917
4932
|
key: 1,
|
|
4918
4933
|
"clip-path": `url(#${t.clipPathId}-${t.track.index})`,
|
|
4919
4934
|
"aria-hidden": "true"
|
|
4920
|
-
}, [a("g",
|
|
4935
|
+
}, [a("g", Go, [t.track.gridLines.vertical ? (y(!0), i(e, { key: 0 }, S(t.track.xMinorTicks, (e) => (y(), i("line", {
|
|
4921
4936
|
key: `x-minor-${t.track.index}-${e}`,
|
|
4922
4937
|
"data-grid-direction": "vertical",
|
|
4923
4938
|
stroke: t.track.gridLines.verticalColor,
|
|
@@ -4925,7 +4940,7 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4925
4940
|
x2: t.track.xScale(e),
|
|
4926
4941
|
y1: "0",
|
|
4927
4942
|
y2: t.track.height
|
|
4928
|
-
}, null, 8,
|
|
4943
|
+
}, null, 8, Ko))), 128)) : r("", !0), t.track.gridLines.horizontal ? (y(!0), i(e, { key: 1 }, S(t.track.yMinorTicks, (e) => (y(), i("line", {
|
|
4929
4944
|
key: `y-minor-${t.track.index}-${e}`,
|
|
4930
4945
|
"data-grid-direction": "horizontal",
|
|
4931
4946
|
stroke: t.track.gridLines.horizontalColor,
|
|
@@ -4933,7 +4948,7 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4933
4948
|
x2: t.track.width ?? t.innerWidth,
|
|
4934
4949
|
y1: t.track.yScale(e),
|
|
4935
4950
|
y2: t.track.yScale(e)
|
|
4936
|
-
}, null, 8,
|
|
4951
|
+
}, null, 8, qo))), 128)) : r("", !0)]), a("g", Jo, [t.track.gridLines.vertical ? (y(!0), i(e, { key: 0 }, S(t.track.xMajorTicks, (e) => (y(), i("line", {
|
|
4937
4952
|
key: `x-major-${t.track.index}-${e}`,
|
|
4938
4953
|
"data-grid-direction": "vertical",
|
|
4939
4954
|
stroke: t.track.gridLines.verticalColor,
|
|
@@ -4941,7 +4956,7 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4941
4956
|
x2: t.track.xScale(e),
|
|
4942
4957
|
y1: "0",
|
|
4943
4958
|
y2: t.track.height
|
|
4944
|
-
}, null, 8,
|
|
4959
|
+
}, null, 8, Yo))), 128)) : r("", !0), t.track.gridLines.horizontal ? (y(!0), i(e, { key: 1 }, S(t.track.yMajorTicks, (e) => (y(), i("line", {
|
|
4945
4960
|
key: `y-major-${t.track.index}-${e}`,
|
|
4946
4961
|
"data-grid-direction": "horizontal",
|
|
4947
4962
|
stroke: t.track.gridLines.horizontalColor,
|
|
@@ -4949,13 +4964,13 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4949
4964
|
x2: t.track.width ?? t.innerWidth,
|
|
4950
4965
|
y1: t.track.yScale(e),
|
|
4951
4966
|
y2: t.track.yScale(e)
|
|
4952
|
-
}, null, 8,
|
|
4953
|
-
!t.track.isEmpty && t.track.hasVisibleSeries && t.zeroLine.visible && !t.cleanView ? (
|
|
4967
|
+
}, null, 8, Xo))), 128)) : r("", !0)])], 8, Wo)) : r("", !0),
|
|
4968
|
+
!t.track.isEmpty && t.track.hasVisibleSeries && t.zeroLine.visible && !t.cleanView ? (y(), i("g", {
|
|
4954
4969
|
key: 2,
|
|
4955
4970
|
class: "waveform-track__zero-lines waveform-chart__zero-lines",
|
|
4956
4971
|
"clip-path": `url(#${t.clipPathId}-${t.track.index})`,
|
|
4957
4972
|
"aria-hidden": "true"
|
|
4958
|
-
}, [(
|
|
4973
|
+
}, [(y(!0), i(e, null, S(t.track.yAxes, (n) => (y(), i(e, { key: `zero-line-${t.track.index}-${n.index}` }, [o(n) === null ? r("", !0) : (y(), i("line", {
|
|
4959
4974
|
key: 0,
|
|
4960
4975
|
class: "waveform-track__zero-line waveform-chart__zero-line",
|
|
4961
4976
|
"data-y-axis-index": n.index,
|
|
@@ -4966,8 +4981,8 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4966
4981
|
stroke: t.zeroLine.color,
|
|
4967
4982
|
"stroke-width": t.zeroLine.width,
|
|
4968
4983
|
"stroke-dasharray": t.zeroLine.dash || void 0
|
|
4969
|
-
}, null, 8,
|
|
4970
|
-
!t.track.isEmpty && t.track.hasVisibleSeries && t.frameNumber !== void 0 && !t.cleanView ? (
|
|
4984
|
+
}, null, 8, Qo))], 64))), 128))], 8, Zo)) : r("", !0),
|
|
4985
|
+
!t.track.isEmpty && t.track.hasVisibleSeries && t.frameNumber !== void 0 && !t.cleanView ? (y(), i("text", {
|
|
4971
4986
|
key: 3,
|
|
4972
4987
|
class: "waveform-track__watermark waveform-chart__watermark",
|
|
4973
4988
|
x: (t.track.width ?? t.innerWidth) / 2,
|
|
@@ -4976,10 +4991,10 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4976
4991
|
"text-anchor": "middle",
|
|
4977
4992
|
"dominant-baseline": "central",
|
|
4978
4993
|
"aria-hidden": "true"
|
|
4979
|
-
},
|
|
4994
|
+
}, T(t.frameNumber), 13, $o)) : r("", !0)
|
|
4980
4995
|
], 64));
|
|
4981
4996
|
}
|
|
4982
|
-
}),
|
|
4997
|
+
}), ts = [
|
|
4983
4998
|
"data-track-index",
|
|
4984
4999
|
"data-track-id",
|
|
4985
5000
|
"data-track-empty",
|
|
@@ -4989,19 +5004,19 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
4989
5004
|
"data-track-top",
|
|
4990
5005
|
"data-track-height",
|
|
4991
5006
|
"transform"
|
|
4992
|
-
],
|
|
5007
|
+
], ns = [
|
|
4993
5008
|
"width",
|
|
4994
5009
|
"height",
|
|
4995
5010
|
"stroke",
|
|
4996
5011
|
"stroke-width",
|
|
4997
5012
|
"stroke-dasharray",
|
|
4998
5013
|
"stroke-linecap"
|
|
4999
|
-
],
|
|
5014
|
+
], rs = [
|
|
5000
5015
|
"data-interactive",
|
|
5001
5016
|
"data-independent-overlay-index",
|
|
5002
5017
|
"width",
|
|
5003
5018
|
"height"
|
|
5004
|
-
],
|
|
5019
|
+
], is = ["x", "y"], as = /* @__PURE__ */ l({
|
|
5005
5020
|
__name: "WaveformTrack",
|
|
5006
5021
|
props: {
|
|
5007
5022
|
track: {},
|
|
@@ -5049,7 +5064,7 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5049
5064
|
backgroundColor: a.frameStyle?.backgroundColor || "transparent"
|
|
5050
5065
|
};
|
|
5051
5066
|
});
|
|
5052
|
-
return (t, n) => (
|
|
5067
|
+
return (t, n) => (y(), i("g", {
|
|
5053
5068
|
class: p(["waveform-track waveform-chart__track", { "waveform-track--empty waveform-chart__track--empty": e.track.isEmpty }]),
|
|
5054
5069
|
"data-track-index": e.track.index,
|
|
5055
5070
|
"data-track-id": e.track.id,
|
|
@@ -5061,7 +5076,7 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5061
5076
|
"data-track-height": e.track.height,
|
|
5062
5077
|
transform: `translate(${e.track.left ?? 0}, ${e.track.top})`
|
|
5063
5078
|
}, [
|
|
5064
|
-
s(
|
|
5079
|
+
s(es, {
|
|
5065
5080
|
track: e.track,
|
|
5066
5081
|
"clip-path-id": e.clipPathId,
|
|
5067
5082
|
"inner-width": e.innerWidth,
|
|
@@ -5078,7 +5093,7 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5078
5093
|
"frame-style",
|
|
5079
5094
|
"zero-line"
|
|
5080
5095
|
]),
|
|
5081
|
-
s(
|
|
5096
|
+
s(Ho, {
|
|
5082
5097
|
track: e.track,
|
|
5083
5098
|
"inner-width": e.innerWidth,
|
|
5084
5099
|
"clean-view": e.cleanView,
|
|
@@ -5093,7 +5108,7 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5093
5108
|
"time-unit",
|
|
5094
5109
|
"y-label"
|
|
5095
5110
|
]),
|
|
5096
|
-
e.track.isEmpty ? r("", !0) : (
|
|
5111
|
+
e.track.isEmpty ? r("", !0) : (y(), i("rect", {
|
|
5097
5112
|
key: 0,
|
|
5098
5113
|
class: "waveform-track__plot-frame waveform-chart__plot-frame",
|
|
5099
5114
|
width: e.track.width ?? e.innerWidth,
|
|
@@ -5104,12 +5119,12 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5104
5119
|
"stroke-dasharray": c.value.borderStyle === "dashed" ? "6 4" : c.value.borderStyle === "dotted" ? "1 3" : void 0,
|
|
5105
5120
|
"stroke-linecap": c.value.borderStyle === "dotted" ? "round" : void 0,
|
|
5106
5121
|
"aria-hidden": "true"
|
|
5107
|
-
}, null, 8,
|
|
5108
|
-
s(
|
|
5122
|
+
}, null, 8, ns)),
|
|
5123
|
+
s(Ao, {
|
|
5109
5124
|
track: e.track,
|
|
5110
5125
|
"clip-path-id": e.clipPathId
|
|
5111
5126
|
}, null, 8, ["track", "clip-path-id"]),
|
|
5112
|
-
!e.track.isEmpty && e.track.hasVisibleSeries && e.displayMode === "independent" ? (
|
|
5127
|
+
!e.track.isEmpty && e.track.hasVisibleSeries && e.displayMode === "independent" ? (y(), i("rect", {
|
|
5113
5128
|
key: 1,
|
|
5114
5129
|
class: p(["waveform-track__overlay waveform-track__overlay--independent waveform-chart__overlay waveform-chart__overlay--independent", {
|
|
5115
5130
|
"is-zoomable": e.interactive && e.zoomable && e.interactionMode === "zoom",
|
|
@@ -5127,41 +5142,41 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5127
5142
|
onPointerleave: n[4] ||= (e) => o("pointer-leave"),
|
|
5128
5143
|
onClick: n[5] ||= (e) => o("click", e),
|
|
5129
5144
|
onContextmenu: n[6] ||= (e) => o("contextmenu", e)
|
|
5130
|
-
}, null, 42,
|
|
5131
|
-
!e.track.isEmpty && !e.track.hasVisibleSeries && !e.cleanView ? (
|
|
5145
|
+
}, null, 42, rs)) : r("", !0),
|
|
5146
|
+
!e.track.isEmpty && !e.track.hasVisibleSeries && !e.cleanView ? (y(), i("text", {
|
|
5132
5147
|
key: 2,
|
|
5133
5148
|
class: "waveform-track__no-visible-series",
|
|
5134
5149
|
x: (e.track.width ?? e.innerWidth) / 2,
|
|
5135
5150
|
y: e.track.height / 2,
|
|
5136
5151
|
"text-anchor": "middle",
|
|
5137
5152
|
"dominant-baseline": "central"
|
|
5138
|
-
}, " 暂无可见曲线 ", 8,
|
|
5139
|
-
], 10,
|
|
5153
|
+
}, " 暂无可见曲线 ", 8, is)) : r("", !0)
|
|
5154
|
+
], 10, ts));
|
|
5140
5155
|
}
|
|
5141
|
-
}),
|
|
5156
|
+
}), os = [
|
|
5142
5157
|
"width",
|
|
5143
5158
|
"height",
|
|
5144
5159
|
"data-position",
|
|
5145
5160
|
"data-orientation"
|
|
5146
|
-
],
|
|
5161
|
+
], ss = [
|
|
5147
5162
|
"disabled",
|
|
5148
5163
|
"aria-pressed",
|
|
5149
5164
|
"aria-label",
|
|
5150
5165
|
"onClick"
|
|
5151
|
-
],
|
|
5166
|
+
], cs = [
|
|
5152
5167
|
"data-line-type",
|
|
5153
5168
|
"data-line-style",
|
|
5154
5169
|
"data-point-type",
|
|
5155
5170
|
"data-error-bar-visible"
|
|
5156
|
-
],
|
|
5171
|
+
], ls = [
|
|
5157
5172
|
"d",
|
|
5158
5173
|
"stroke",
|
|
5159
5174
|
"stroke-dasharray"
|
|
5160
|
-
],
|
|
5175
|
+
], us = [
|
|
5161
5176
|
"d",
|
|
5162
5177
|
"stroke",
|
|
5163
5178
|
"stroke-width"
|
|
5164
|
-
],
|
|
5179
|
+
], ds = ["d", "fill"], fs = ["title"], ps = /*#__PURE__*/ et(/* @__PURE__ */ l({
|
|
5165
5180
|
__name: "WaveformLegend",
|
|
5166
5181
|
props: {
|
|
5167
5182
|
series: {},
|
|
@@ -5185,7 +5200,7 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5185
5200
|
function d(e) {
|
|
5186
5201
|
s.interactive && c("toggle", e);
|
|
5187
5202
|
}
|
|
5188
|
-
return (t, o) => (
|
|
5203
|
+
return (t, o) => (y(), i("foreignObject", {
|
|
5189
5204
|
class: "waveform-legend waveform-chart__legend",
|
|
5190
5205
|
x: "0",
|
|
5191
5206
|
y: "0",
|
|
@@ -5201,7 +5216,7 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5201
5216
|
class: p(["waveform-legend__panel", [`waveform-legend__panel--${n.orientation}`, { "waveform-legend__panel--interactive": n.interactive }]]),
|
|
5202
5217
|
style: m({ backgroundColor: n.backgroundColor }),
|
|
5203
5218
|
role: "list"
|
|
5204
|
-
}, [(
|
|
5219
|
+
}, [(y(!0), i(e, null, S(n.series, (e) => (y(), i("button", {
|
|
5205
5220
|
key: e.id,
|
|
5206
5221
|
class: p(["waveform-legend__item waveform-chart__legend-item", { "is-hidden": u(e.id) }]),
|
|
5207
5222
|
type: "button",
|
|
@@ -5209,8 +5224,8 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5209
5224
|
disabled: !n.interactive,
|
|
5210
5225
|
"aria-pressed": n.interactive ? !u(e.id) : void 0,
|
|
5211
5226
|
"aria-label": n.interactive ? `${u(e.id) ? "显示" : "隐藏"}曲线 ${e.name}` : void 0,
|
|
5212
|
-
onClick:
|
|
5213
|
-
}, [(
|
|
5227
|
+
onClick: N((t) => d(e.id), ["stop"])
|
|
5228
|
+
}, [(y(), i("svg", {
|
|
5214
5229
|
class: "waveform-legend__swatch",
|
|
5215
5230
|
viewBox: "0 0 26 16",
|
|
5216
5231
|
"aria-hidden": "true",
|
|
@@ -5219,45 +5234,45 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5219
5234
|
"data-point-type": e.pointType,
|
|
5220
5235
|
"data-error-bar-visible": e.errorBar.visible || void 0
|
|
5221
5236
|
}, [
|
|
5222
|
-
|
|
5237
|
+
D(bo)(e.lineType) ? (y(), i("path", {
|
|
5223
5238
|
key: 0,
|
|
5224
5239
|
class: "waveform-legend__line",
|
|
5225
|
-
d:
|
|
5240
|
+
d: D(bo)(e.lineType) ?? void 0,
|
|
5226
5241
|
stroke: e.color,
|
|
5227
|
-
"stroke-dasharray":
|
|
5242
|
+
"stroke-dasharray": D(xo)(e.lineStyle),
|
|
5228
5243
|
"stroke-width": "1.5",
|
|
5229
5244
|
fill: "none"
|
|
5230
|
-
}, null, 8,
|
|
5231
|
-
e.errorBar.visible ? (
|
|
5245
|
+
}, null, 8, ls)) : r("", !0),
|
|
5246
|
+
e.errorBar.visible ? (y(), i("path", {
|
|
5232
5247
|
key: 1,
|
|
5233
5248
|
class: "waveform-legend__error-bar",
|
|
5234
|
-
d:
|
|
5249
|
+
d: D(So)(e.errorBar.capWidth),
|
|
5235
5250
|
stroke: e.errorBar.color || e.color,
|
|
5236
5251
|
"stroke-width": e.errorBar.width,
|
|
5237
5252
|
"stroke-linecap": "butt",
|
|
5238
5253
|
fill: "none"
|
|
5239
|
-
}, null, 8,
|
|
5240
|
-
e.pointType === "none" ? r("", !0) : (
|
|
5254
|
+
}, null, 8, us)) : r("", !0),
|
|
5255
|
+
e.pointType === "none" ? r("", !0) : (y(), i("path", {
|
|
5241
5256
|
key: 2,
|
|
5242
5257
|
class: "waveform-legend__point",
|
|
5243
|
-
d:
|
|
5258
|
+
d: D(vo)(e.pointType, 30) ?? void 0,
|
|
5244
5259
|
fill: e.color,
|
|
5245
5260
|
transform: "translate(13 8)"
|
|
5246
|
-
}, null, 8,
|
|
5247
|
-
], 8,
|
|
5261
|
+
}, null, 8, ds))
|
|
5262
|
+
], 8, cs)), a("span", {
|
|
5248
5263
|
class: "waveform-legend__label",
|
|
5249
5264
|
title: e.name
|
|
5250
|
-
},
|
|
5265
|
+
}, T(e.name), 9, fs)], 10, ss))), 128))], 6)], 2)], 8, os));
|
|
5251
5266
|
}
|
|
5252
|
-
}), [["__scopeId", "data-v-2ae12e71"]]),
|
|
5267
|
+
}), [["__scopeId", "data-v-2ae12e71"]]), ms = {
|
|
5253
5268
|
class: "waveform-chart__hover-layer",
|
|
5254
5269
|
"pointer-events": "none",
|
|
5255
5270
|
"aria-hidden": "true"
|
|
5256
|
-
},
|
|
5271
|
+
}, hs = ["clip-path", "transform"], gs = [
|
|
5257
5272
|
"x1",
|
|
5258
5273
|
"x2",
|
|
5259
5274
|
"y2"
|
|
5260
|
-
],
|
|
5275
|
+
], _s = /*#__PURE__*/ et(/* @__PURE__ */ l({
|
|
5261
5276
|
__name: "WaveformHoverLayer",
|
|
5262
5277
|
props: {
|
|
5263
5278
|
state: {},
|
|
@@ -5273,7 +5288,7 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5273
5288
|
x: e.xScale(n)
|
|
5274
5289
|
}] : [];
|
|
5275
5290
|
}));
|
|
5276
|
-
return (t, r) => (
|
|
5291
|
+
return (t, r) => (y(), i("g", ms, [(y(!0), i(e, null, S(o.value, (e) => (y(), i("g", {
|
|
5277
5292
|
key: e.track.index,
|
|
5278
5293
|
class: "waveform-track__crosshair waveform-chart__crosshair",
|
|
5279
5294
|
"clip-path": `url(#${n.clipPathId}-${e.track.index})`,
|
|
@@ -5283,9 +5298,9 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5283
5298
|
x2: e.x,
|
|
5284
5299
|
y1: "0",
|
|
5285
5300
|
y2: e.track.height
|
|
5286
|
-
}, null, 8,
|
|
5301
|
+
}, null, 8, gs)], 8, hs))), 128))]));
|
|
5287
5302
|
}
|
|
5288
|
-
}), [["__scopeId", "data-v-54a5a37d"]]),
|
|
5303
|
+
}), [["__scopeId", "data-v-54a5a37d"]]), vs = [
|
|
5289
5304
|
"data-display-mode",
|
|
5290
5305
|
"data-interaction-mode",
|
|
5291
5306
|
"data-presentation-mode",
|
|
@@ -5294,151 +5309,151 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5294
5309
|
"data-plot-margin-top",
|
|
5295
5310
|
"data-plot-margin-bottom",
|
|
5296
5311
|
"data-title-area-height"
|
|
5297
|
-
],
|
|
5312
|
+
], ys = [
|
|
5298
5313
|
"role",
|
|
5299
5314
|
"aria-level",
|
|
5300
5315
|
"aria-hidden"
|
|
5301
|
-
],
|
|
5316
|
+
], bs = ["data-title-scale", "data-title-wrapped"], xs = [
|
|
5302
5317
|
"width",
|
|
5303
5318
|
"height",
|
|
5304
5319
|
"aria-label"
|
|
5305
|
-
],
|
|
5320
|
+
], Ss = ["id"], Cs = ["width", "height"], ws = ["transform"], Ts = {
|
|
5306
5321
|
key: 0,
|
|
5307
5322
|
class: "waveform-chart__grid-slots",
|
|
5308
5323
|
"aria-hidden": "true"
|
|
5309
|
-
},
|
|
5324
|
+
}, Es = ["transform"], Ds = ["width", "height"], Os = ["width", "height"], ks = [
|
|
5310
5325
|
"x",
|
|
5311
5326
|
"y",
|
|
5312
5327
|
"width",
|
|
5313
5328
|
"height"
|
|
5314
|
-
],
|
|
5329
|
+
], As = {
|
|
5315
5330
|
key: 4,
|
|
5316
5331
|
class: "waveform-chart__legend-layer"
|
|
5317
|
-
},
|
|
5332
|
+
}, js = [
|
|
5318
5333
|
"data-legend-track-index",
|
|
5319
5334
|
"data-legend-track-id",
|
|
5320
5335
|
"transform"
|
|
5321
|
-
],
|
|
5336
|
+
], Ms = ["x", "y"], Ns = ["x", "y"], Ps = /* @__PURE__ */ l({
|
|
5322
5337
|
__name: "WaveformChartView",
|
|
5323
5338
|
props: { controller: {} },
|
|
5324
5339
|
setup(t) {
|
|
5325
|
-
let { displayMode: o, activeInteractionMode: c, isCleanView: l, isPresentationMode: u, selection: d, containerStyle: f, overlayMode: h, resolvedChartLeftMargin: g, titleAreaHeight: _, resolvedPlotMargin:
|
|
5326
|
-
function
|
|
5340
|
+
let { displayMode: o, activeInteractionMode: c, isCleanView: l, isPresentationMode: u, selection: d, containerStyle: f, overlayMode: h, resolvedChartLeftMargin: g, titleAreaHeight: _, resolvedPlotMargin: v, pointerInsideChart: b, handleNativeContextMenu: x, titleAreaReserved: C, titleAreaStyle: w, titleVisible: O, titleMeasureStyle: k, resolvedTitleText: A, titleVisualStyle: j, titleTextStyle: M, titleLayout: N, chartWidth: P, drawingHeight: F, hasWaveformData: I, requestViewportReset: L, trackLayouts: R, clipPathId: z, chartTopMargin: B, gridCells: V, hasVisibleWaveformData: H, zoomable: U, isZoomMode: W, innerWidth: G, innerHeight: ee, handleSharedPointerMove: te, beginSharedViewportDrag: ne, finishViewportDrag: re, cancelViewportDrag: K, handlePointerLeave: q, handleAnnotationClick: J, handleAnnotationContextMenu: ie, resolveFrameNumber: ae, frameStyle: oe, axes: ce, resolvedZeroLine: le, timeUnit: ue, yLabel: de, handleIndependentPointerMove: Y, beginViewportDrag: fe, hoverState: X, showTooltip: pe, selectionBox: me, renderedAnnotations: he, annotationsVisible: ge, handleExistingAnnotationContextMenu: _e, beginAnnotationDrag: ve, handleAnnotationMove: ye, endAnnotationDrag: be, resolveLegendPosition: xe, resolveLegendOrientation: Z, legendBackgroundColor: Se, legendInteractive: Ce, resolvedHiddenSeriesIds: we, toggleSeriesVisibility: Te, resolvedXLabel: Ee, xAxisTitleY: De, hasChartArea: Oe, gridOptions: ke, pageCount: Ae, currentPage: je, getPageSize: Me, pageableTracks: Ne, goToPage: Pe, annotationInteraction: Fe, editorDraft: Ie, contextMenu: Le, editorSeries: Re, editorSeriesOptions: ze, timeError: Be, confirmAnnotation: Ve, cancelAnnotation: He, changeDraftSeries: Ue, changeDraftTime: We, editContextAnnotation: Ge, deleteContextAnnotation: Ke, chartHeight: qe, setContainer: Je, setSvgElement: Ye, setTitleMeasureElement: Xe, setSharedOverlayElement: Ze } = E(t.controller);
|
|
5341
|
+
function Qe() {
|
|
5327
5342
|
b.value = !1, q.value();
|
|
5328
5343
|
}
|
|
5329
|
-
return (t,
|
|
5330
|
-
ref:
|
|
5344
|
+
return (t, E) => (y(), i("div", {
|
|
5345
|
+
ref: D(Je),
|
|
5331
5346
|
class: p(["waveform-chart", [
|
|
5332
|
-
`waveform-chart--${
|
|
5333
|
-
`waveform-chart--interaction-${
|
|
5347
|
+
`waveform-chart--${D(o)}`,
|
|
5348
|
+
`waveform-chart--interaction-${D(c)}`,
|
|
5334
5349
|
{
|
|
5335
|
-
"waveform-chart--clean":
|
|
5336
|
-
"waveform-chart--presentation":
|
|
5337
|
-
"waveform-chart--panning":
|
|
5350
|
+
"waveform-chart--clean": D(l),
|
|
5351
|
+
"waveform-chart--presentation": D(u),
|
|
5352
|
+
"waveform-chart--panning": D(d)?.kind === "pan"
|
|
5338
5353
|
}
|
|
5339
5354
|
]]),
|
|
5340
|
-
style: m(
|
|
5341
|
-
"data-display-mode":
|
|
5342
|
-
"data-interaction-mode":
|
|
5343
|
-
"data-presentation-mode":
|
|
5344
|
-
"data-overlay-mode":
|
|
5345
|
-
"data-chart-left-margin":
|
|
5346
|
-
"data-plot-margin-top":
|
|
5347
|
-
"data-plot-margin-bottom":
|
|
5348
|
-
"data-title-area-height":
|
|
5349
|
-
onPointerenter:
|
|
5350
|
-
onPointerleave:
|
|
5351
|
-
onContextmenuCapture:
|
|
5355
|
+
style: m(D(f)),
|
|
5356
|
+
"data-display-mode": D(o),
|
|
5357
|
+
"data-interaction-mode": D(c),
|
|
5358
|
+
"data-presentation-mode": D(u),
|
|
5359
|
+
"data-overlay-mode": D(h),
|
|
5360
|
+
"data-chart-left-margin": D(g),
|
|
5361
|
+
"data-plot-margin-top": D(v).top,
|
|
5362
|
+
"data-plot-margin-bottom": D(v).bottom,
|
|
5363
|
+
"data-title-area-height": D(_),
|
|
5364
|
+
onPointerenter: E[8] ||= (e) => b.value = !0,
|
|
5365
|
+
onPointerleave: Qe,
|
|
5366
|
+
onContextmenuCapture: E[9] ||= (...e) => D(x) && D(x)(...e)
|
|
5352
5367
|
}, [
|
|
5353
|
-
|
|
5368
|
+
D(C) ? (y(), i("div", {
|
|
5354
5369
|
key: 0,
|
|
5355
5370
|
class: "waveform-chart__title-area",
|
|
5356
|
-
style: m(
|
|
5357
|
-
role:
|
|
5358
|
-
"aria-level":
|
|
5359
|
-
"aria-hidden":
|
|
5371
|
+
style: m(D(w)),
|
|
5372
|
+
role: D(O) ? "heading" : void 0,
|
|
5373
|
+
"aria-level": D(O) ? 2 : void 0,
|
|
5374
|
+
"aria-hidden": D(l) || void 0
|
|
5360
5375
|
}, [a("span", {
|
|
5361
|
-
ref:
|
|
5376
|
+
ref: D(Xe),
|
|
5362
5377
|
class: "waveform-chart__title-measure",
|
|
5363
|
-
style: m(
|
|
5378
|
+
style: m(D(k)),
|
|
5364
5379
|
"aria-hidden": "true"
|
|
5365
|
-
},
|
|
5380
|
+
}, T(D(A)), 5), D(O) ? (y(), i("span", {
|
|
5366
5381
|
key: 0,
|
|
5367
5382
|
class: "waveform-chart__title-visual",
|
|
5368
|
-
style: m(
|
|
5383
|
+
style: m(D(j))
|
|
5369
5384
|
}, [a("span", {
|
|
5370
5385
|
class: "waveform-chart__title-text",
|
|
5371
|
-
style: m(
|
|
5372
|
-
"data-title-scale":
|
|
5373
|
-
"data-title-wrapped":
|
|
5374
|
-
},
|
|
5375
|
-
(
|
|
5376
|
-
ref:
|
|
5386
|
+
style: m(D(M)),
|
|
5387
|
+
"data-title-scale": D(N).scale,
|
|
5388
|
+
"data-title-wrapped": D(N).wrapped || void 0
|
|
5389
|
+
}, T(D(A)), 13, bs)], 4)) : r("", !0)], 12, ys)) : r("", !0),
|
|
5390
|
+
(y(), i("svg", {
|
|
5391
|
+
ref: D(Ye),
|
|
5377
5392
|
class: "waveform-chart__svg",
|
|
5378
|
-
width:
|
|
5379
|
-
height:
|
|
5393
|
+
width: D(P),
|
|
5394
|
+
height: D(F),
|
|
5380
5395
|
role: "img",
|
|
5381
|
-
"aria-label":
|
|
5382
|
-
onDblclick:
|
|
5396
|
+
"aria-label": D(I) ? "波形折线图" : "暂无波形数据",
|
|
5397
|
+
onDblclick: E[7] ||= (...e) => D(L) && D(L)(...e)
|
|
5383
5398
|
}, [
|
|
5384
|
-
a("defs", null, [(
|
|
5385
|
-
id: `${
|
|
5386
|
-
key: `${
|
|
5399
|
+
a("defs", null, [(y(!0), i(e, null, S(D(R), (e) => (y(), i("clipPath", {
|
|
5400
|
+
id: `${D(z)}-${e.index}`,
|
|
5401
|
+
key: `${D(z)}-${e.index}`,
|
|
5387
5402
|
clipPathUnits: "userSpaceOnUse"
|
|
5388
5403
|
}, [a("rect", {
|
|
5389
5404
|
width: e.width,
|
|
5390
5405
|
height: e.height
|
|
5391
|
-
}, null, 8,
|
|
5392
|
-
a("g", { transform: `translate(${
|
|
5393
|
-
|
|
5406
|
+
}, null, 8, Cs)], 8, Ss))), 128))]),
|
|
5407
|
+
a("g", { transform: `translate(${D(g)}, ${D(B)})` }, [
|
|
5408
|
+
D(o) !== "compact" && !D(l) ? (y(), i("g", Ts, [(y(!0), i(e, null, S(D(V), (e) => (y(), i("g", {
|
|
5394
5409
|
key: `grid-slot-${e.slotIndex}`,
|
|
5395
5410
|
transform: `translate(${e.left}, ${e.top})`
|
|
5396
|
-
}, [e.series ? r("", !0) : (
|
|
5411
|
+
}, [e.series ? r("", !0) : (y(), i("rect", {
|
|
5397
5412
|
key: 0,
|
|
5398
5413
|
class: "waveform-chart__grid-slot-placeholder",
|
|
5399
5414
|
width: e.width,
|
|
5400
5415
|
height: e.cellHeight
|
|
5401
|
-
}, null, 8,
|
|
5402
|
-
|
|
5416
|
+
}, null, 8, Ds))], 8, Es))), 128))])) : r("", !0),
|
|
5417
|
+
D(o) !== "independent" && D(R).length && D(H) ? (y(), i("rect", {
|
|
5403
5418
|
key: 1,
|
|
5404
|
-
ref:
|
|
5419
|
+
ref: D(Ze),
|
|
5405
5420
|
class: p(["waveform-chart__overlay waveform-chart__overlay--shared", {
|
|
5406
|
-
"is-zoomable": !
|
|
5407
|
-
"is-annotating": !
|
|
5421
|
+
"is-zoomable": !D(u) && D(U) && D(W),
|
|
5422
|
+
"is-annotating": !D(u) && D(c) === "annotation"
|
|
5408
5423
|
}]),
|
|
5409
|
-
width:
|
|
5410
|
-
height:
|
|
5411
|
-
onPointermove:
|
|
5412
|
-
onPointerdown:
|
|
5413
|
-
onPointerup:
|
|
5414
|
-
onPointercancel:
|
|
5415
|
-
onPointerleave:
|
|
5416
|
-
onClick:
|
|
5417
|
-
onContextmenu:
|
|
5418
|
-
}, null, 42,
|
|
5419
|
-
(
|
|
5424
|
+
width: D(G),
|
|
5425
|
+
height: D(ee),
|
|
5426
|
+
onPointermove: E[0] ||= (...e) => D(te) && D(te)(...e),
|
|
5427
|
+
onPointerdown: E[1] ||= (...e) => D(ne) && D(ne)(...e),
|
|
5428
|
+
onPointerup: E[2] ||= (...e) => D(re) && D(re)(...e),
|
|
5429
|
+
onPointercancel: E[3] ||= (...e) => D(K) && D(K)(...e),
|
|
5430
|
+
onPointerleave: E[4] ||= (...e) => D(q) && D(q)(...e),
|
|
5431
|
+
onClick: E[5] ||= (...e) => D(J) && D(J)(...e),
|
|
5432
|
+
onContextmenu: E[6] ||= (...e) => D(ie) && D(ie)(...e)
|
|
5433
|
+
}, null, 42, Os)) : r("", !0),
|
|
5434
|
+
(y(!0), i(e, null, S(D(R), (e) => (y(), n(D(as), {
|
|
5420
5435
|
key: `${e.index}-${e.id}`,
|
|
5421
5436
|
track: e,
|
|
5422
|
-
"clip-path-id":
|
|
5423
|
-
"inner-width":
|
|
5424
|
-
zoomable:
|
|
5425
|
-
interactive: !
|
|
5426
|
-
"display-mode":
|
|
5427
|
-
"interaction-mode":
|
|
5428
|
-
"frame-number":
|
|
5429
|
-
"frame-style":
|
|
5430
|
-
axes:
|
|
5431
|
-
"clean-view":
|
|
5432
|
-
"zero-line":
|
|
5433
|
-
"time-unit":
|
|
5434
|
-
"y-label":
|
|
5435
|
-
onPointerMove: (t) =>
|
|
5436
|
-
onPointerDown: (t) =>
|
|
5437
|
-
onPointerUp:
|
|
5438
|
-
onPointerCancel:
|
|
5439
|
-
onPointerLeave:
|
|
5440
|
-
onClick: (t) =>
|
|
5441
|
-
onContextmenu: (t) =>
|
|
5437
|
+
"clip-path-id": D(z),
|
|
5438
|
+
"inner-width": D(G),
|
|
5439
|
+
zoomable: D(U),
|
|
5440
|
+
interactive: !D(u),
|
|
5441
|
+
"display-mode": D(o),
|
|
5442
|
+
"interaction-mode": D(c),
|
|
5443
|
+
"frame-number": D(ae)(e.id),
|
|
5444
|
+
"frame-style": D(oe),
|
|
5445
|
+
axes: D(ce),
|
|
5446
|
+
"clean-view": D(l),
|
|
5447
|
+
"zero-line": D(le),
|
|
5448
|
+
"time-unit": D(ue),
|
|
5449
|
+
"y-label": D(de),
|
|
5450
|
+
onPointerMove: (t) => D(Y)(t, e.index),
|
|
5451
|
+
onPointerDown: (t) => D(fe)(t, e.index, !0),
|
|
5452
|
+
onPointerUp: D(re),
|
|
5453
|
+
onPointerCancel: D(K),
|
|
5454
|
+
onPointerLeave: D(q),
|
|
5455
|
+
onClick: (t) => D(J)(t, e.index),
|
|
5456
|
+
onContextmenu: (t) => D(ie)(t, e.index)
|
|
5442
5457
|
}, null, 8, [
|
|
5443
5458
|
"track",
|
|
5444
5459
|
"clip-path-id",
|
|
@@ -5462,35 +5477,35 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5462
5477
|
"onClick",
|
|
5463
5478
|
"onContextmenu"
|
|
5464
5479
|
]))), 128)),
|
|
5465
|
-
s(
|
|
5466
|
-
state:
|
|
5467
|
-
tracks:
|
|
5468
|
-
"clip-path-id":
|
|
5469
|
-
visible:
|
|
5480
|
+
s(D(_s), {
|
|
5481
|
+
state: D(X),
|
|
5482
|
+
tracks: D(R),
|
|
5483
|
+
"clip-path-id": D(z),
|
|
5484
|
+
visible: D(pe) && !D(u)
|
|
5470
5485
|
}, null, 8, [
|
|
5471
5486
|
"state",
|
|
5472
5487
|
"tracks",
|
|
5473
5488
|
"clip-path-id",
|
|
5474
5489
|
"visible"
|
|
5475
5490
|
]),
|
|
5476
|
-
|
|
5491
|
+
D(me) && D(d)?.kind === "box" ? (y(), i("rect", {
|
|
5477
5492
|
key: 2,
|
|
5478
5493
|
class: "waveform-chart__zoom-selection",
|
|
5479
|
-
x:
|
|
5480
|
-
y:
|
|
5481
|
-
width:
|
|
5482
|
-
height:
|
|
5494
|
+
x: D(me).x,
|
|
5495
|
+
y: D(me).y,
|
|
5496
|
+
width: D(me).width,
|
|
5497
|
+
height: D(me).height,
|
|
5483
5498
|
"aria-hidden": "true"
|
|
5484
|
-
}, null, 8,
|
|
5485
|
-
|
|
5499
|
+
}, null, 8, ks)) : r("", !0),
|
|
5500
|
+
D(l) ? r("", !0) : (y(), n(D(tt), {
|
|
5486
5501
|
key: 3,
|
|
5487
|
-
annotations:
|
|
5488
|
-
visible:
|
|
5489
|
-
interactive: !
|
|
5490
|
-
onContextmenu:
|
|
5491
|
-
onDragStart:
|
|
5492
|
-
onMove:
|
|
5493
|
-
onDragEnd:
|
|
5502
|
+
annotations: D(he),
|
|
5503
|
+
visible: D(ge),
|
|
5504
|
+
interactive: !D(u),
|
|
5505
|
+
onContextmenu: D(_e),
|
|
5506
|
+
onDragStart: D(ve),
|
|
5507
|
+
onMove: D(ye),
|
|
5508
|
+
onDragEnd: D(be)
|
|
5494
5509
|
}, null, 8, [
|
|
5495
5510
|
"annotations",
|
|
5496
5511
|
"visible",
|
|
@@ -5500,23 +5515,23 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5500
5515
|
"onMove",
|
|
5501
5516
|
"onDragEnd"
|
|
5502
5517
|
])),
|
|
5503
|
-
|
|
5518
|
+
D(l) ? r("", !0) : (y(), i("g", As, [(y(!0), i(e, null, S(D(R), (e) => (y(), i("g", {
|
|
5504
5519
|
key: `legend-${e.index}-${e.id}`,
|
|
5505
5520
|
class: "waveform-chart__legend-track",
|
|
5506
5521
|
"data-legend-track-index": e.index,
|
|
5507
5522
|
"data-legend-track-id": e.id,
|
|
5508
5523
|
transform: `translate(${e.left}, ${e.top})`
|
|
5509
|
-
}, [!e.isEmpty && e.legendSeries.length > 1 ? (
|
|
5524
|
+
}, [!e.isEmpty && e.legendSeries.length > 1 ? (y(), n(D(ps), {
|
|
5510
5525
|
key: 0,
|
|
5511
5526
|
series: e.legendSeries,
|
|
5512
|
-
position:
|
|
5513
|
-
orientation:
|
|
5514
|
-
"background-color":
|
|
5515
|
-
interactive:
|
|
5516
|
-
"hidden-series-ids":
|
|
5517
|
-
width: e.width ??
|
|
5527
|
+
position: D(xe)(e.id),
|
|
5528
|
+
orientation: D(Z)(D(xe)(e.id)),
|
|
5529
|
+
"background-color": D(Se),
|
|
5530
|
+
interactive: D(Ce),
|
|
5531
|
+
"hidden-series-ids": D(we),
|
|
5532
|
+
width: e.width ?? D(G),
|
|
5518
5533
|
height: e.height,
|
|
5519
|
-
onToggle:
|
|
5534
|
+
onToggle: D(Te)
|
|
5520
5535
|
}, null, 8, [
|
|
5521
5536
|
"series",
|
|
5522
5537
|
"position",
|
|
@@ -5527,51 +5542,51 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5527
5542
|
"width",
|
|
5528
5543
|
"height",
|
|
5529
5544
|
"onToggle"
|
|
5530
|
-
])) : r("", !0)], 8,
|
|
5531
|
-
], 8,
|
|
5532
|
-
|
|
5545
|
+
])) : r("", !0)], 8, js))), 128))]))
|
|
5546
|
+
], 8, ws),
|
|
5547
|
+
D(Ee) && !D(l) ? (y(), i("text", {
|
|
5533
5548
|
key: 0,
|
|
5534
5549
|
class: "waveform-chart__label waveform-chart__x-label",
|
|
5535
|
-
x:
|
|
5536
|
-
y:
|
|
5550
|
+
x: D(g) + D(G) / 2,
|
|
5551
|
+
y: D(De),
|
|
5537
5552
|
"text-anchor": "middle"
|
|
5538
|
-
},
|
|
5539
|
-
|
|
5553
|
+
}, T(D(Ee)), 9, Ms)) : r("", !0),
|
|
5554
|
+
D(Oe) && !D(I) ? (y(), i("text", {
|
|
5540
5555
|
key: 1,
|
|
5541
5556
|
class: "waveform-chart__empty",
|
|
5542
|
-
x:
|
|
5543
|
-
y:
|
|
5557
|
+
x: D(P) / 2,
|
|
5558
|
+
y: D(F) / 2,
|
|
5544
5559
|
"text-anchor": "middle"
|
|
5545
|
-
}, " 暂无有效波形数据 ", 8,
|
|
5546
|
-
], 40,
|
|
5547
|
-
|
|
5560
|
+
}, " 暂无有效波形数据 ", 8, Ns)) : r("", !0)
|
|
5561
|
+
], 40, xs)),
|
|
5562
|
+
D(ke).showPagination && D(Ae) > 1 && !D(l) ? (y(), n(D(se), {
|
|
5548
5563
|
key: 1,
|
|
5549
5564
|
class: "waveform-chart__pagination",
|
|
5550
5565
|
"aria-label": "波形分页",
|
|
5551
|
-
current:
|
|
5552
|
-
"page-size":
|
|
5553
|
-
total:
|
|
5566
|
+
current: D(je),
|
|
5567
|
+
"page-size": D(Me)(D(ke)),
|
|
5568
|
+
total: D(Ne).length,
|
|
5554
5569
|
"show-size-changer": !1,
|
|
5555
5570
|
"show-quick-jumper": !1,
|
|
5556
|
-
onChange:
|
|
5571
|
+
onChange: D(Pe)
|
|
5557
5572
|
}, null, 8, [
|
|
5558
5573
|
"current",
|
|
5559
5574
|
"page-size",
|
|
5560
5575
|
"total",
|
|
5561
5576
|
"onChange"
|
|
5562
5577
|
])) : r("", !0),
|
|
5563
|
-
|
|
5578
|
+
D(Ie) && !D(l) && !D(u) ? (y(), n(to, {
|
|
5564
5579
|
key: 2,
|
|
5565
|
-
annotation:
|
|
5566
|
-
mode:
|
|
5567
|
-
series:
|
|
5568
|
-
"series-options":
|
|
5569
|
-
"time-unit":
|
|
5570
|
-
"time-error":
|
|
5571
|
-
onConfirm:
|
|
5572
|
-
onCancel:
|
|
5573
|
-
onSeriesChange:
|
|
5574
|
-
onTimeChange:
|
|
5580
|
+
annotation: D(Ie).annotation,
|
|
5581
|
+
mode: D(Ie).mode,
|
|
5582
|
+
series: D(Re),
|
|
5583
|
+
"series-options": D(ze),
|
|
5584
|
+
"time-unit": D(ue),
|
|
5585
|
+
"time-error": D(Be),
|
|
5586
|
+
onConfirm: D(Ve),
|
|
5587
|
+
onCancel: D(He),
|
|
5588
|
+
onSeriesChange: D(Ue),
|
|
5589
|
+
onTimeChange: D(We)
|
|
5575
5590
|
}, null, 8, [
|
|
5576
5591
|
"annotation",
|
|
5577
5592
|
"mode",
|
|
@@ -5584,15 +5599,15 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5584
5599
|
"onSeriesChange",
|
|
5585
5600
|
"onTimeChange"
|
|
5586
5601
|
])) : r("", !0),
|
|
5587
|
-
!
|
|
5602
|
+
!D(l) && !D(u) ? (y(), n(D(nt), {
|
|
5588
5603
|
key: 3,
|
|
5589
|
-
visible:
|
|
5590
|
-
x:
|
|
5591
|
-
y:
|
|
5592
|
-
"can-edit": !!
|
|
5593
|
-
onEdit:
|
|
5594
|
-
onDelete:
|
|
5595
|
-
onClose:
|
|
5604
|
+
visible: D(Le) !== null,
|
|
5605
|
+
x: D(Le)?.x || 0,
|
|
5606
|
+
y: D(Le)?.y || 0,
|
|
5607
|
+
"can-edit": !!D(Le)?.annotationId,
|
|
5608
|
+
onEdit: D(Ge),
|
|
5609
|
+
onDelete: D(Ke),
|
|
5610
|
+
onClose: D(Fe).closeContextMenu
|
|
5596
5611
|
}, null, 8, [
|
|
5597
5612
|
"visible",
|
|
5598
5613
|
"x",
|
|
@@ -5602,12 +5617,12 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5602
5617
|
"onDelete",
|
|
5603
5618
|
"onClose"
|
|
5604
5619
|
])) : r("", !0),
|
|
5605
|
-
s(
|
|
5606
|
-
state:
|
|
5607
|
-
visible:
|
|
5608
|
-
"time-unit":
|
|
5609
|
-
"container-width":
|
|
5610
|
-
"container-height":
|
|
5620
|
+
s(D(uo), {
|
|
5621
|
+
state: D(X),
|
|
5622
|
+
visible: D(pe) && !D(u),
|
|
5623
|
+
"time-unit": D(ue),
|
|
5624
|
+
"container-width": D(P),
|
|
5625
|
+
"container-height": D(qe)
|
|
5611
5626
|
}, null, 8, [
|
|
5612
5627
|
"state",
|
|
5613
5628
|
"visible",
|
|
@@ -5615,9 +5630,9 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5615
5630
|
"container-width",
|
|
5616
5631
|
"container-height"
|
|
5617
5632
|
])
|
|
5618
|
-
], 46,
|
|
5633
|
+
], 46, vs));
|
|
5619
5634
|
}
|
|
5620
|
-
}),
|
|
5635
|
+
}), Fs = /* @__PURE__ */ l({
|
|
5621
5636
|
__name: "WaveformChart",
|
|
5622
5637
|
props: {
|
|
5623
5638
|
data: {},
|
|
@@ -5701,12 +5716,12 @@ var bo = ["clip-path"], xo = ["data-series-id", "data-series-name"], So = [
|
|
|
5701
5716
|
"sampling-error"
|
|
5702
5717
|
],
|
|
5703
5718
|
setup(e, { expose: t, emit: r }) {
|
|
5704
|
-
let i =
|
|
5719
|
+
let i = Ia(e, r);
|
|
5705
5720
|
return t({
|
|
5706
5721
|
resetViewport: i.resetViewport,
|
|
5707
5722
|
setViewportDomain: i.setViewportDomain
|
|
5708
|
-
}), (e, t) => (
|
|
5723
|
+
}), (e, t) => (y(), n(Ps, { controller: D(i) }, null, 8, ["controller"]));
|
|
5709
5724
|
}
|
|
5710
5725
|
});
|
|
5711
5726
|
//#endregion
|
|
5712
|
-
export {
|
|
5727
|
+
export { gn as DEFAULT_WAVEFORM_RENDERING_OPTIONS, Fs as WaveformChart, gt as buildMinorTicks, xi as calculateWasmRange, It as clamp, kt as displayTime, Si as findWasmVisibleRange, Mt as formatAxisTime, jt as formatEndpointTime, Nt as formatTooltipTime, yi as initializeWasmSampling, sn as normalizeWaveformData, un as normalizeWaveformSeries, ht as paddedDomain, pt as parseWaveformAnnotations, Ft as resolveTrackGeometry, En as resolveWaveformRenderingOptions, bi as sampleWaveformWasm, Pn as selectRenderablePoints, ft as serializeWaveformAnnotations };
|