@astrato-io/visualizations 0.6.4 → 0.6.5
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/CHANGELOG.md +0 -0
- package/THIRD_PARTY_NOTICES.md +94 -4
- package/chunks/ClickAwayListener-BbeNMAvj.js +52 -0
- package/chunks/{LinearProgress-CUZ0D8_t.js → LinearProgress-B1FeWaen.js} +54 -54
- package/chunks/app-filter-bar.compiler-BGJ7HAbr.js +64 -0
- package/chunks/bar.compiler-CT0ZbQKc.js +374 -0
- package/chunks/{src-Cum_2NLV.js → builder-B6dWSIdD.js} +5779 -5635
- package/chunks/{coloring-C16AUZEi.js → coloring-B1XAfg6b.js} +234 -233
- package/chunks/{src-BC7cGcJ-.js → definitions-D3OVqmXl.js} +438 -360
- package/chunks/{escobar-BGqT1EsE.js → escobar-eDjtGpkC.js} +4645 -4619
- package/chunks/filter.compiler-DBsyRBJt.js +70 -0
- package/chunks/{filtering-Yq4DEa0t.js → filtering-tqjAyJH5.js} +432 -313
- package/chunks/{grouping-type-BX_9Ix5q.js → grouping-type-On4s9Thj.js} +1 -1
- package/chunks/handlers-VTBfIZYZ.js +13072 -0
- package/chunks/isEqual-BDxAhUo8.js +7514 -0
- package/chunks/line.compiler-CzdM5Ld0.js +198 -0
- package/chunks/{metadata-CPXdYoln.js → metadata-BGElBy5Z.js} +1 -1
- package/chunks/number.compiler-G-R7y16P.js +53 -0
- package/chunks/{src-C0LgoUWY.js → operations-CTNUX6Sy.js} +9576 -9432
- package/chunks/{range-DrzdfBX4.js → range-CiwTbMig.js} +2 -2
- package/chunks/{registry-CExpGJ1N.js → registry-CsQQzukD.js} +153 -153
- package/chunks/{requirements-DNhuShLS.js → requirements-DYjZCFyf.js} +1 -1
- package/chunks/{shared-CKDL4hx9.js → shared-CBvcC5YV.js} +460 -413
- package/chunks/{standalone-D5vnf-9y.js → standalone-0M4HlmDW2.js} +823 -822
- package/chunks/standalone-0ashe9w1.js +411 -0
- package/chunks/{standalone-C85u7U6I.js → standalone-B7jax8wa.js} +93 -94
- package/chunks/standalone-BK0VYU-l.js +463 -0
- package/chunks/{standalone-BDCwI6Hn.js → standalone-BMIbT1b2.js} +815 -815
- package/chunks/standalone-BZV5vOwA.js +6 -0
- package/chunks/standalone-BhDrWj4p.js +1980 -0
- package/chunks/{standalone-CNyNHKVx.js → standalone-BtSHCp2U2.js} +97 -98
- package/chunks/{standalone-CDQnr6qT.js → standalone-BvaKdky9.js} +95 -96
- package/chunks/standalone-BwtM31-f.js +2 -0
- package/chunks/{standalone-CY57qwZ-.js → standalone-C3gg736V.js} +153 -153
- package/chunks/{standalone-DFPva_ku.js → standalone-CC1VUjO32.js} +60 -60
- package/chunks/{standalone-CCNtaJ7s.js → standalone-C_rYnZ0N.js} +41 -41
- package/chunks/{standalone-CZynjFG7.js → standalone-CoLrAxRV.js} +3701 -3482
- package/chunks/{standalone-jiz0L2Dg.js → standalone-DC-aUgXC.js} +104 -104
- package/chunks/standalone-DCtRoTWg.js +675 -0
- package/chunks/standalone-DUDFTBqL.js +833 -0
- package/chunks/standalone-DhZkX9Td.js +2 -0
- package/chunks/{standalone-Dx3MLlrO.js → standalone-DtLElfuM.js} +141 -141
- package/chunks/{standalone-BmfMt74U.js → standalone-G9Q4Uczu.js} +192 -192
- package/chunks/{standalone-BH5NqDwp.js → standalone-JuLF-OoH.js} +390 -391
- package/chunks/standalone-_DeX21JJ.js +383 -0
- package/chunks/{standalone-lBm9hQ-q.js → standalone-gFhKZh8m.js} +34 -34
- package/chunks/standalone-tDNy-SFH.js +281 -0
- package/chunks/{standalone-rJ45Zfl1.js → standalone-v1oxfU20.js} +10 -10
- package/chunks/{standalone-BYm1UjLr.js → standalone-vzBY6q0I2.js} +18 -18
- package/chunks/table.compiler-tb914oj3.js +222 -0
- package/chunks/{ui-D1HQNIBy.js → ui-DQWtv2iM.js} +13485 -3973
- package/chunks/{useFieldName-oqQ3bvnO.js → useFieldName-BvdcoJRl.js} +1 -1
- package/chunks/{utils-Ba9T0TqC.js → utils-Bg7K-t6K.js} +7306 -6024
- package/chunks/{src-DvX5LU9T.js → view-Bn83C8d9.js} +2555 -4831
- package/definitions.js +3 -3
- package/docs/operations/astrato-app-filter-bar.md +17 -17
- package/docs/operations/bar.md +989 -1071
- package/docs/operations/combo.md +717 -738
- package/docs/operations/date-picker.md +25 -25
- package/docs/operations/distribution-gauge.md +471 -607
- package/docs/operations/dot.md +787 -879
- package/docs/operations/filter.md +139 -163
- package/docs/operations/gauge.md +491 -627
- package/docs/operations/heatMap.md +834 -916
- package/docs/operations/histogram.md +166 -180
- package/docs/operations/iframe.md +5 -5
- package/docs/operations/image.md +16 -16
- package/docs/operations/index.md +12 -12
- package/docs/operations/line.md +811 -888
- package/docs/operations/number.md +470 -536
- package/docs/operations/pie.md +825 -958
- package/docs/operations/radar.md +599 -679
- package/docs/operations/sankey.md +462 -584
- package/docs/operations/scatter.md +823 -929
- package/docs/operations/shape.md +34 -34
- package/docs/operations/simpleTextObject.md +18 -25
- package/docs/operations/slider.md +33 -43
- package/docs/operations/table.md +1160 -1150
- package/docs/operations/tree.md +354 -361
- package/docs/operations/treemap.md +545 -637
- package/docs/operations/waterfall.md +369 -379
- package/docs/operations/word-cloud.md +512 -583
- package/getters.js +3 -3
- package/index.js +51 -51
- package/metadata.js +3 -3
- package/operations.js +7 -7
- package/package.json +80 -86
- package/src/definitions/index.d.ts +2 -2
- package/src/definitions/{shared/lib → model/definitions}/available-fields.d.ts +0 -1
- package/src/definitions/{shared/lib/compilers/index.d.ts → model/definitions/compilers/compile.d.ts} +1 -1
- package/src/definitions/model/definitions/data-item-resolution.d.ts +19 -0
- package/src/definitions/model/definitions/descriptors/descriptor-metadata.d.ts +1341 -0
- package/src/definitions/model/definitions/descriptors/json-schema.d.ts +2 -0
- package/src/definitions/model/definitions/diagnostics.d.ts +5 -0
- package/src/definitions/model/definitions/field-suggestions.d.ts +2 -0
- package/src/definitions/model/definitions/index.d.ts +23 -0
- package/src/definitions/{shared/lib → model/definitions}/registry/compile.d.ts +1 -1
- package/src/definitions/model/definitions/registry/descriptor-registry.d.ts +3 -0
- package/src/definitions/model/definitions/schema-registry.d.ts +660 -0
- package/src/definitions/{shared/lib → model/definitions}/schemas/broad-chart.schema.d.ts +1 -1
- package/src/definitions/{shared/lib → model/definitions}/schemas/common.schema.d.ts +0 -1
- package/src/definitions/model/definitions/schemas/index.d.ts +9 -0
- package/src/definitions/{shared/lib → model/definitions}/schemas/object.schema.d.ts +6 -6
- package/src/definitions/{shared/lib → model/definitions}/types/definition.types.d.ts +1 -1
- package/src/definitions/model/definitions/types/index.d.ts +3 -0
- package/src/definitions/{shared/lib/registry → model/definitions}/validation.d.ts +1 -1
- package/chunks/Radio-Ciu-F4CU.js +0 -957
- package/chunks/ToggleButton-BCJc3Jlc.js +0 -153
- package/chunks/_baseFlatten-DPXPOrea.js +0 -7076
- package/chunks/app-filter-bar.compiler-j_CVoWTa.js +0 -55
- package/chunks/bar.compiler-oqaPzIut.js +0 -370
- package/chunks/data-item-resolution-1lvYB5ln.js +0 -53
- package/chunks/event-bus-KiSiCJrC.js +0 -2683
- package/chunks/filter.compiler-CuLtc_02.js +0 -60
- package/chunks/gauge-target-type-BkKXAqkX.js +0 -4
- package/chunks/interfaces-VUY4_yVO.js +0 -8742
- package/chunks/line-settings-DfYTUyPz.js +0 -4
- package/chunks/line.compiler-BpA_6Tc7.js +0 -188
- package/chunks/number.compiler-DbkWcG4S.js +0 -44
- package/chunks/pie-uv42Eqal.js +0 -10
- package/chunks/src-Dun_jXtz.js +0 -10295
- package/chunks/standalone-87YV_m9n.js +0 -687
- package/chunks/standalone-BLVAWLNJ.js +0 -385
- package/chunks/standalone-BPomtAVs.js +0 -2
- package/chunks/standalone-BXyBcUOQ.js +0 -2
- package/chunks/standalone-BllF4rDp.js +0 -383
- package/chunks/standalone-BqWyrnZI.js +0 -281
- package/chunks/standalone-DQxxNwF8.js +0 -675
- package/chunks/standalone-DS9T0FZ-.js +0 -830
- package/chunks/standalone-DzixzZAL.js +0 -411
- package/chunks/standalone-QJ1kKMnO.js +0 -6
- package/chunks/table.compiler-BrXkm4Fz.js +0 -213
- package/chunks/toInteger-DVZr-D1j.js +0 -11
- package/chunks/treemap-x_zmJoG7.js +0 -23
- package/chunks/types-dVVCsDWD.js +0 -4
- package/chunks/view-CLqWMV7Z.js +0 -156
- package/src/definitions/shared/index.d.ts +0 -5
- package/src/definitions/shared/lib/registry/descriptor-registry.d.ts +0 -587
- package/src/definitions/shared/lib/registry/index.d.ts +0 -3
- package/src/definitions/shared/lib/schemas/index.d.ts +0 -9
- package/src/definitions/shared/lib/types/index.d.ts +0 -3
- package/src/definitions/{shared/lib → model/definitions}/schemas/app-filter-bar.schema.d.ts +0 -0
- package/src/definitions/{shared/lib → model/definitions}/schemas/bar.schema.d.ts +0 -0
- package/src/definitions/{shared/lib → model/definitions}/schemas/filter.schema.d.ts +0 -0
- package/src/definitions/{shared/lib → model/definitions}/schemas/line.schema.d.ts +0 -0
- package/src/definitions/{shared/lib → model/definitions}/schemas/number.schema.d.ts +0 -0
- package/src/definitions/{shared/lib → model/definitions}/schemas/table.schema.d.ts +4 -4
- /package/src/definitions/{shared/lib → model/definitions}/types/compilation.types.d.ts +0 -0
- /package/src/definitions/{shared/lib → model/definitions}/types/descriptor.types.d.ts +0 -0
|
@@ -0,0 +1,463 @@
|
|
|
1
|
+
import { o as e, r as t } from "./rolldown-runtime-DleVn1XH.js";
|
|
2
|
+
import { Cn as n, Fn as r, Gn as i, Hn as a, Ks as o, Mo as s, No as c, Sa as l, Si as u, Un as d, Wn as f, Ys as p, fc as m, hn as h, mc as g, po as _, vo as v, yo as y, zn as b, zs as x } from "./isEqual-BDxAhUo8.js";
|
|
3
|
+
import { $t as S, Ei as C, I as w, P as T, Yi as ee, hn as te } from "./utils-Bg7K-t6K.js";
|
|
4
|
+
import { Im as E } from "./handlers-VTBfIZYZ.js";
|
|
5
|
+
import { t as D } from "./stroke-dash-UgMEcCS4.js";
|
|
6
|
+
import { Vt as O, mt as k } from "./ui-DQWtv2iM.js";
|
|
7
|
+
import { B as A, Ct as ne, Dt as re, Et as ie, Ft as j, G as ae, J as oe, Jt as se, Kt as ce, L as le, M as ue, Pt as de, Q as fe, Qt as M, Rt as pe, St as N, Tt as P, U as F, V as I, Wt as L, X as R, Xt as z, Y as B, Yt as V, Z as me, Zt as H, _t as he, at as ge, ct as _e, dn as U, dt as W, ft as ve, ht as G, i as ye, j as be, kt as xe, lt as Se, mt as K, n as Ce, on as we, ot as Te, pt as q, q as Ee, rt as De, st as Oe, ut as ke, vt as Ae } from "./escobar-eDjtGpkC.js";
|
|
8
|
+
import { f as J, r as je, t as Me } from "./coloring-B1XAfg6b.js";
|
|
9
|
+
import { t as Ne } from "./set-coloring-datafield-B3uIS1Pe.js";
|
|
10
|
+
var Y = /* @__PURE__ */ e(ee()), Pe = (e) => {
|
|
11
|
+
let { coloring: t } = e || {}, n = e.dimensions.filter(u);
|
|
12
|
+
switch (t?.type) {
|
|
13
|
+
case p.Categorical: return ne(e, [], n[1] || n[0]);
|
|
14
|
+
case p.Gradient: return P(e);
|
|
15
|
+
case p.Single: return m(n[0].dataItem);
|
|
16
|
+
default: return null;
|
|
17
|
+
}
|
|
18
|
+
}, Fe = (e, t, i) => {
|
|
19
|
+
let a = e.dimensions.filter(u), o = e.measures.filter(u), s = a[0], c = b(e.lineSettings, e.dimensions, e.measures), l = !1, p = {};
|
|
20
|
+
if (s && e?.axes?.dimension?.continuousAxis) {
|
|
21
|
+
let e = g(s.dataItem), t = !!s.datePart, i = e !== null && (n(e) || r(e));
|
|
22
|
+
l = !t && i;
|
|
23
|
+
}
|
|
24
|
+
let h = Pe(e);
|
|
25
|
+
if (p = N(h ? Ne(e, h) : e, t, p), p = ae(e, p, i.collections, l, !0), c) {
|
|
26
|
+
let t = o[0]?.secondaryAxis ? e?.axes?.secondaryMeasure : e?.axes?.primaryMeasure;
|
|
27
|
+
p[z(e, o[0])] = {
|
|
28
|
+
invert: F(!0, t),
|
|
29
|
+
data: { collection: "collection" },
|
|
30
|
+
...I(t)
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
return f(e) && o.forEach((e) => {
|
|
34
|
+
let t = m(e.dataItem);
|
|
35
|
+
t && (p[M.YAxisScale]?.data)?.fields?.push(d(t));
|
|
36
|
+
}), {
|
|
37
|
+
...i,
|
|
38
|
+
scales: p
|
|
39
|
+
};
|
|
40
|
+
}, Ie = (e, t, n, r) => {
|
|
41
|
+
let i = re(e, t, n, r), a = [], o = e.dimensions.filter(u), s = e.measures.filter(u), c = ue((e.supportingMeasures ?? []).filter(u)), l = b(e.lineSettings, e.dimensions, e.measures), p = f(e);
|
|
42
|
+
if (i.collections[0]?.data.extract[0] && (i.collections[0].data.extract[0].props = {
|
|
43
|
+
...i.collections[0].data.extract[0].props,
|
|
44
|
+
...c
|
|
45
|
+
}), o.length === 1 && s.length > 1 && l) {
|
|
46
|
+
let e = m(o[0].dataItem), t = s.map((e) => {
|
|
47
|
+
let t = m(e.dataItem);
|
|
48
|
+
return p ? d(t) : t;
|
|
49
|
+
});
|
|
50
|
+
i.collections[0].data.extract = s.map((n, r) => {
|
|
51
|
+
let i = m(n.dataItem), a = t[r];
|
|
52
|
+
return {
|
|
53
|
+
field: m(o[0].dataItem),
|
|
54
|
+
props: {
|
|
55
|
+
[e]: { field: e },
|
|
56
|
+
end: { field: a },
|
|
57
|
+
...t.reduce((e, t, n) => (e[`measure${n}`] = { field: t }, e), {}),
|
|
58
|
+
series: i,
|
|
59
|
+
color: i,
|
|
60
|
+
...c
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
if (o[1] && !l) {
|
|
66
|
+
let e = {
|
|
67
|
+
key: ie.LineSeries,
|
|
68
|
+
data: { extract: [{
|
|
69
|
+
field: m(o[1].dataItem),
|
|
70
|
+
props: {
|
|
71
|
+
[m(o[1].dataItem)]: { field: m(o[1].dataItem) },
|
|
72
|
+
...c
|
|
73
|
+
}
|
|
74
|
+
}] }
|
|
75
|
+
};
|
|
76
|
+
a.push(e);
|
|
77
|
+
}
|
|
78
|
+
return {
|
|
79
|
+
...i,
|
|
80
|
+
collections: [...i.collections, ...a]
|
|
81
|
+
};
|
|
82
|
+
}, X = (e) => ({
|
|
83
|
+
enabled: e.dataLabels?.show || !1,
|
|
84
|
+
fontSize: se(e.dataLabels?.size),
|
|
85
|
+
backdropColor: e.dataLabels?.backdropColor,
|
|
86
|
+
textColor: e.dataLabels?.textColor,
|
|
87
|
+
isColored: e.dataLabels?.isColored,
|
|
88
|
+
colorType: e.dataLabels?.showBackdrop ? v.Backdrop : v.Text,
|
|
89
|
+
density: e.dataLabels?.density || y.Medium
|
|
90
|
+
}), Le = (e, t, n, r, i) => {
|
|
91
|
+
let a = e.dimensions.find(u);
|
|
92
|
+
if (!a) return [];
|
|
93
|
+
let o = {
|
|
94
|
+
scale: V(e),
|
|
95
|
+
ref: m(a.dataItem)
|
|
96
|
+
}, s = {
|
|
97
|
+
scale: z(e, i),
|
|
98
|
+
ref: "end"
|
|
99
|
+
}, c = H(e);
|
|
100
|
+
return r.filter((e) => e !== i).map((r) => {
|
|
101
|
+
let i = m(r.dataItem), a = ve(e, t, n, r, !0, M.Collection, (e) => e.series?.value === i);
|
|
102
|
+
return {
|
|
103
|
+
...a,
|
|
104
|
+
settings: {
|
|
105
|
+
...a.settings,
|
|
106
|
+
x: c ? s : o,
|
|
107
|
+
y: c ? o : s
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
});
|
|
111
|
+
}, Re = (e, t, n, r) => {
|
|
112
|
+
let i = e.measures.filter(u), a = i.filter((e) => e.dataLabels?.show), s = i[0];
|
|
113
|
+
if (!s || !a.length || !e.dimensions.find(u)) return n;
|
|
114
|
+
let c = Le(e, t, n, a, s), l = a.map((n, a) => {
|
|
115
|
+
let s = K(e, n, o.Point), c = m(n.dataItem), l = X(n), u = [s], d = { [s]: l };
|
|
116
|
+
return A({
|
|
117
|
+
componentKey: `line-stacked-labels-${a}`,
|
|
118
|
+
targetComponentKeys: u,
|
|
119
|
+
targetSelector: `.${W}`,
|
|
120
|
+
label: ({ data: e, formatter: t }) => {
|
|
121
|
+
let r = e[`measure${i.indexOf(n)}`]?.value;
|
|
122
|
+
return e.series?.value !== c || typeof r != "number" ? "" : n.formatter ? t(n.formatter)(r, void 0, e) : String(r);
|
|
123
|
+
},
|
|
124
|
+
skipBrush: !0
|
|
125
|
+
}, d, r, t);
|
|
126
|
+
});
|
|
127
|
+
return {
|
|
128
|
+
...n,
|
|
129
|
+
components: [
|
|
130
|
+
...n.components,
|
|
131
|
+
...c,
|
|
132
|
+
...l
|
|
133
|
+
]
|
|
134
|
+
};
|
|
135
|
+
}, ze = (e, t, n, r) => {
|
|
136
|
+
let i = {}, a = {}, s = A({
|
|
137
|
+
targetComponentKeys: e.measures.filter(u).map((t) => {
|
|
138
|
+
let n = m(t.dataItem), r = K(e, t, o.Point);
|
|
139
|
+
return a[r] = n, i[r] = X(t), r;
|
|
140
|
+
}).filter((e) => i[e].enabled),
|
|
141
|
+
targetSelector: `.${W}`,
|
|
142
|
+
label: ({ data: e, node: t }) => e[a[t.key]]?.label,
|
|
143
|
+
skipBrush: !0
|
|
144
|
+
}, i, r, t);
|
|
145
|
+
return {
|
|
146
|
+
...n,
|
|
147
|
+
components: [...n.components, s]
|
|
148
|
+
};
|
|
149
|
+
}, Be = (e, t, n, r) => {
|
|
150
|
+
let i = e.measures.find(u);
|
|
151
|
+
if (!i?.dataLabels?.show) return n;
|
|
152
|
+
let a = m(i.dataItem), s = f(e), c = d(a);
|
|
153
|
+
s && G(n, 0, { [c]: { field: c } });
|
|
154
|
+
let l = K(e, i, o.Point), p = X(i), h = { [l]: p }, g = A({
|
|
155
|
+
componentKey: "line-dimension-stacked-labels",
|
|
156
|
+
targetComponentKeys: [l],
|
|
157
|
+
targetSelector: `.${W}`,
|
|
158
|
+
label: ({ data: e, formatter: t }) => {
|
|
159
|
+
let n = e[s ? c : a]?.value;
|
|
160
|
+
return typeof n == "number" ? i.formatter ? t(i.formatter)(n, void 0, e) : String(n) : "";
|
|
161
|
+
},
|
|
162
|
+
skipBrush: !0
|
|
163
|
+
}, h, r, t);
|
|
164
|
+
return {
|
|
165
|
+
...n,
|
|
166
|
+
components: [...n.components, g]
|
|
167
|
+
};
|
|
168
|
+
}, Ve = (e, t, n, r, i, a) => {
|
|
169
|
+
if (!x(e)) return n;
|
|
170
|
+
let o = b(e.lineSettings, e.dimensions, e.measures), s = o && e.dimensions.filter(u).length === 1 && e.measures.filter(u).length > 1, c = o && e.dimensions.filter(u).length > 1 && e.measures.filter(u).length === 1;
|
|
171
|
+
return o && !s && !c ? n : s ? Re(e, t, n, a) : c ? Be(e, t, n, a) : ze(e, t, n, a);
|
|
172
|
+
}, He = "line-end-labels", Ue = 6, We = 160, Ge = [2, 2], Ke = (e) => Object.values(we).includes(e.type) && e.layout?.dock === s.Right, qe = (e, t, n, r, i, c) => {
|
|
173
|
+
if (!e.lineSettings?.endLabels?.show || H(e) || b(e.lineSettings, e.dimensions, e.measures)) return n;
|
|
174
|
+
let l = e.dimensions.filter(u), d = e.measures.filter(u);
|
|
175
|
+
if (!l[0] || !d.length) return n;
|
|
176
|
+
let f = l[1], p = f ? m(f.dataItem) : void 0, h = d.length > 1, g = e.lineSettings.endLabels.showBackdrop ?? !1, _ = (e.lineSettings.endLabels.position ?? E.Plot) === E.Right, v = t.fonts.general.color ?? O.fontDark, y = ({ node: e }) => e?.attrs?.fill ?? v, x = (e) => new k(y(e)).betterContrast(new k(v), new k(O.fontLight), new k(O.fontDark)).rgb(), S = (e) => {
|
|
177
|
+
let t = String(e?.label ?? e?.value ?? "");
|
|
178
|
+
return f?.formatter?.format ? String(te(f.formatter, e?.value)) : t;
|
|
179
|
+
}, C = d.map((n) => {
|
|
180
|
+
let r = a(n), i = ({ data: e }) => p ? e?.[p] : void 0;
|
|
181
|
+
return {
|
|
182
|
+
component: K(e, n, o.Point),
|
|
183
|
+
selector: `.${W}`,
|
|
184
|
+
strategy: {
|
|
185
|
+
type: "end",
|
|
186
|
+
settings: {
|
|
187
|
+
fontFamily: t.fonts.general.fontFamily,
|
|
188
|
+
fontSize: O.dataPoint.valueFontSize,
|
|
189
|
+
spacing: !0,
|
|
190
|
+
label: {
|
|
191
|
+
series: p,
|
|
192
|
+
label: p ? (e) => {
|
|
193
|
+
let t = S(i(e));
|
|
194
|
+
return h ? `${t} · ${r}` : t;
|
|
195
|
+
} : () => r,
|
|
196
|
+
linkData: p ? ({ data: e }) => e : void 0,
|
|
197
|
+
fontWeight: "bold",
|
|
198
|
+
offset: Ue,
|
|
199
|
+
maxWidth: We,
|
|
200
|
+
...g ? {
|
|
201
|
+
fill: x,
|
|
202
|
+
backdrop: (e) => ({
|
|
203
|
+
fill: y(e),
|
|
204
|
+
padding: Ge
|
|
205
|
+
})
|
|
206
|
+
} : {}
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
};
|
|
211
|
+
}), w = {
|
|
212
|
+
type: U.Labels,
|
|
213
|
+
key: He,
|
|
214
|
+
brush: p && !c?.disable?.interactions ? ce(L([""], {
|
|
215
|
+
...c,
|
|
216
|
+
disable: { brushing: c?.disable?.brushing }
|
|
217
|
+
})) : void 0,
|
|
218
|
+
layout: _ ? {
|
|
219
|
+
dock: s.Right,
|
|
220
|
+
displayOrder: j.Labels
|
|
221
|
+
} : { displayOrder: j.Labels },
|
|
222
|
+
settings: { sources: C }
|
|
223
|
+
}, T = _ ? n.components.map((e) => Ke(e) ? {
|
|
224
|
+
...e,
|
|
225
|
+
layout: {
|
|
226
|
+
...e.layout,
|
|
227
|
+
displayOrder: j.LegendOutsideLabels
|
|
228
|
+
}
|
|
229
|
+
} : e) : n.components;
|
|
230
|
+
return {
|
|
231
|
+
...n,
|
|
232
|
+
components: [...T, w]
|
|
233
|
+
};
|
|
234
|
+
}, Je = (e, t, n) => n.components.some((e) => e.key === "line-end-labels") ? {
|
|
235
|
+
...n,
|
|
236
|
+
components: n.components.map((e) => {
|
|
237
|
+
if (e.type !== U.Tooltip || !e.settings?.filter) return e;
|
|
238
|
+
let t = e.settings.filter;
|
|
239
|
+
return {
|
|
240
|
+
...e,
|
|
241
|
+
settings: {
|
|
242
|
+
...e.settings,
|
|
243
|
+
filter: (e) => e.some((e) => e.key === "line-end-labels") ? [] : t(e)
|
|
244
|
+
}
|
|
245
|
+
};
|
|
246
|
+
})
|
|
247
|
+
} : n;
|
|
248
|
+
je();
|
|
249
|
+
var Ye = (e, t, n, i, a) => {
|
|
250
|
+
let o = e.dimensions.filter(u), s = e.measures.filter(u), c = o[0], l = s.some((e) => !!e.forecasts?.length), d = g(c?.dataItem), f = !!c.datePart;
|
|
251
|
+
return !l || !r(d) || !c || f ? n : [
|
|
252
|
+
oe,
|
|
253
|
+
Xe,
|
|
254
|
+
Z,
|
|
255
|
+
Ze,
|
|
256
|
+
$e,
|
|
257
|
+
Qe
|
|
258
|
+
].reduce((n, r) => r(e, t, n, i, a), n);
|
|
259
|
+
}, Xe = (e, t, n) => {
|
|
260
|
+
let r = e.measures.filter(u).filter((e) => !!e.forecasts).reduce((r, i) => {
|
|
261
|
+
let a = i.forecasts.map((r, a) => {
|
|
262
|
+
let s = Q(e, t, n, i, r), l = h(i.dataItem, r, `${a}`), u = K(e, i, o.Line, `-forecast-line-${a}`), d = V(e), f = z(e, i);
|
|
263
|
+
return Se({
|
|
264
|
+
coordinates: {
|
|
265
|
+
major: { scale: d },
|
|
266
|
+
minor: {
|
|
267
|
+
scale: f,
|
|
268
|
+
ref: l
|
|
269
|
+
}
|
|
270
|
+
},
|
|
271
|
+
layers: {
|
|
272
|
+
curve: e.lineSettings?.lineCurve,
|
|
273
|
+
line: {
|
|
274
|
+
stroke: s,
|
|
275
|
+
strokeWidth: r.strokeWidth,
|
|
276
|
+
strokeDasharray: D(r.strokeDash),
|
|
277
|
+
show: !0
|
|
278
|
+
}
|
|
279
|
+
},
|
|
280
|
+
orientation: H(e) ? c.Vertical : void 0
|
|
281
|
+
}, n, l, u);
|
|
282
|
+
});
|
|
283
|
+
return [...r, ...a];
|
|
284
|
+
}, []);
|
|
285
|
+
return {
|
|
286
|
+
...n,
|
|
287
|
+
components: [...r, ...n.components]
|
|
288
|
+
};
|
|
289
|
+
}, Z = (e, t, n) => {
|
|
290
|
+
let r = e.dimensions.filter(u), i = e.measures.filter(u), a = m(r[0]?.dataItem), s = i.filter((e) => !!e.forecasts).map((r) => r.forecasts.map((i, s) => {
|
|
291
|
+
let c = Q(e, t, n, r, i), l = h(r.dataItem, i, `${s}`), u = [], d = (e) => e[l]?.value === null || e[m(r.dataItem)]?.value === null;
|
|
292
|
+
if (G(n, 0, {
|
|
293
|
+
[l]: { field: l },
|
|
294
|
+
[a]: { field: a }
|
|
295
|
+
}), i.showDataPoints) {
|
|
296
|
+
let t = K(e, r, o.Point, `-forecast-line-${s}`);
|
|
297
|
+
u.push(q(e, r, l, c, t, !1, d));
|
|
298
|
+
}
|
|
299
|
+
let f = K(e, r, o.Point, `-forecast-line-${s}-tooltip`);
|
|
300
|
+
return u.push(q(e, r, l, c, f, !0, d)), u;
|
|
301
|
+
}).reduce((e, t) => [...e, ...t], [])).reduce((e, t) => [...e, ...t], []);
|
|
302
|
+
return {
|
|
303
|
+
...n,
|
|
304
|
+
components: [...n.components, ...s]
|
|
305
|
+
};
|
|
306
|
+
}, Ze = (e, t, n, r, i) => {
|
|
307
|
+
let a = e.dimensions.filter(u), o = e.measures.filter(u).find((e) => !!e.forecasts && !!e.forecasts[0]?.showForecastStart);
|
|
308
|
+
if (!i || !o) return n;
|
|
309
|
+
let s = m(a[0].dataItem), c = h(o.dataItem, o.forecasts[0], "0"), l = i[0].items.find((e) => e[c] !== null && e[c] !== void 0);
|
|
310
|
+
if (!l) return n;
|
|
311
|
+
let d = {
|
|
312
|
+
value: l[s],
|
|
313
|
+
label: {
|
|
314
|
+
text: o.forecasts[0].refLineLabel ?? "",
|
|
315
|
+
showValue: !1,
|
|
316
|
+
fill: "#4c4c3e"
|
|
317
|
+
},
|
|
318
|
+
stroke: "#96969680"
|
|
319
|
+
}, f = V(e), p = {
|
|
320
|
+
type: U.RefLine,
|
|
321
|
+
layout: { displayOrder: j.ForecastLine },
|
|
322
|
+
lines: { x: [Te(d, f, t, a[0].formatter)] }
|
|
323
|
+
};
|
|
324
|
+
return {
|
|
325
|
+
...n,
|
|
326
|
+
components: [...n.components, p]
|
|
327
|
+
};
|
|
328
|
+
}, Qe = (e, t, n) => {
|
|
329
|
+
let r = e.measures.filter(u), a = e.coloring?.type;
|
|
330
|
+
if (!a || !n.scales[a]) return n;
|
|
331
|
+
let o = { ...n.scales }, s = o[a];
|
|
332
|
+
return r.forEach((r) => {
|
|
333
|
+
r.forecasts?.forEach((i, a) => {
|
|
334
|
+
let o = Q(e, t, n, r, i);
|
|
335
|
+
if (i.label && typeof o == "string") {
|
|
336
|
+
let e = h(r.dataItem, i, `${a}`);
|
|
337
|
+
s.data.push(e), (s?.range).push(o);
|
|
338
|
+
}
|
|
339
|
+
});
|
|
340
|
+
}), s.label = (e) => {
|
|
341
|
+
let t = "";
|
|
342
|
+
return r.forEach((n) => {
|
|
343
|
+
m(n.dataItem) === e.datum.value?.toString() ? t = i(n) ?? n.label ?? n.dataItem?.name : n.forecasts?.forEach((r, i) => {
|
|
344
|
+
h(n.dataItem, r, `${i}`) === e.datum.value && (t = r.label ?? "");
|
|
345
|
+
});
|
|
346
|
+
}), t;
|
|
347
|
+
}, {
|
|
348
|
+
...n,
|
|
349
|
+
scales: o
|
|
350
|
+
};
|
|
351
|
+
}, $e = (e, t, n, r, i) => {
|
|
352
|
+
let a = e.measures.filter(u).reduce((t, n) => {
|
|
353
|
+
let r = (n.forecasts ?? []).map((t, r) => K(e, n, o.Point, `-forecast-line-${r}-tooltip`));
|
|
354
|
+
return t.concat(r);
|
|
355
|
+
}, []);
|
|
356
|
+
return R(e, t, n, {
|
|
357
|
+
filter: (e) => e.filter((e) => a.findIndex((t) => t === e.key) !== -1),
|
|
358
|
+
placement: {
|
|
359
|
+
type: "pointer",
|
|
360
|
+
area: "target"
|
|
361
|
+
},
|
|
362
|
+
extract: me(e, t, et, fe)
|
|
363
|
+
}, `tooltip-${U.Point}-forecast`, i);
|
|
364
|
+
}, et = (e, t, n, r, a, o, s) => {
|
|
365
|
+
let c = [];
|
|
366
|
+
return e.forEach((e) => {
|
|
367
|
+
e.forecasts?.forEach((r, a) => {
|
|
368
|
+
let o = h(e.dataItem, r, `${a}`), l = t.data[o];
|
|
369
|
+
if (!l) return;
|
|
370
|
+
let u = l.value, d = i(e), f = r.label || d || e.label || e.dataItem.name || "", p = u;
|
|
371
|
+
!s && e.formatter ? p = n.formatter(e.formatter)(u) : s && e.formatter && (p = n.formatter(De(e.formatter))(u)), c.push({
|
|
372
|
+
label: f,
|
|
373
|
+
value: p
|
|
374
|
+
});
|
|
375
|
+
});
|
|
376
|
+
}), c;
|
|
377
|
+
}, Q = (e, t, n, r, i) => {
|
|
378
|
+
let a = new Me(e, t).getMeasureColor(n, r);
|
|
379
|
+
switch (i.inheritColor) {
|
|
380
|
+
case _.Lighter: return J(a).brighter().toString();
|
|
381
|
+
case _.Darker: return J(a).darker().toString();
|
|
382
|
+
default: return a;
|
|
383
|
+
}
|
|
384
|
+
}, tt = (e, t, n) => Ee(e, t, n), $ = class extends be {
|
|
385
|
+
constructor() {
|
|
386
|
+
super([
|
|
387
|
+
Ie,
|
|
388
|
+
Fe,
|
|
389
|
+
pe,
|
|
390
|
+
Ae,
|
|
391
|
+
Oe,
|
|
392
|
+
_e,
|
|
393
|
+
he,
|
|
394
|
+
Ve,
|
|
395
|
+
qe,
|
|
396
|
+
ge,
|
|
397
|
+
B,
|
|
398
|
+
Je,
|
|
399
|
+
tt,
|
|
400
|
+
xe,
|
|
401
|
+
Ye,
|
|
402
|
+
de,
|
|
403
|
+
ke,
|
|
404
|
+
le
|
|
405
|
+
]);
|
|
406
|
+
}
|
|
407
|
+
};
|
|
408
|
+
function nt(e, t) {
|
|
409
|
+
let n = e.dimensions.filter(u).map((e) => m(e.dataItem)), r = n[0], i = e.measures.filter((e) => {
|
|
410
|
+
let t = e.advancedCalculation;
|
|
411
|
+
return u(e) && t?.type === "growth" && t.startFromZero && typeof t.offset == "number" && t.offset < 0 && !t.nonTimePeriod;
|
|
412
|
+
}).map((e) => m(e.dataItem)).filter((e) => e !== null);
|
|
413
|
+
return !t || !r || i.length === 0 || e.querySettings?.hideZeroValues ? t : t.map((e) => {
|
|
414
|
+
let t = e.items[0];
|
|
415
|
+
if (!t || t[r] == null) return e;
|
|
416
|
+
let a = t[r], o = n.slice(1).filter((e) => e !== null), s = (e) => JSON.stringify(o.map((t) => e[t])), c = /* @__PURE__ */ new Set(), l = e.items.map((e) => e[r] === a ? (c.add(s(e)), {
|
|
417
|
+
...e,
|
|
418
|
+
...Object.fromEntries(i.map((e) => [e, 0]))
|
|
419
|
+
}) : e), u = [];
|
|
420
|
+
e.items.forEach((t) => {
|
|
421
|
+
let n = s(t);
|
|
422
|
+
if (c.has(n)) return;
|
|
423
|
+
c.add(n);
|
|
424
|
+
let l = Object.fromEntries(e.fields.map((e) => [e.dataItemId, null]));
|
|
425
|
+
o.forEach((e) => {
|
|
426
|
+
l[e] = t[e];
|
|
427
|
+
}), l[r] = a, i.forEach((e) => {
|
|
428
|
+
l[e] = 0;
|
|
429
|
+
}), u.push(l);
|
|
430
|
+
});
|
|
431
|
+
let d = l.findIndex((e) => e[r] !== a), f = d === -1 ? l.length : d, p = e.groupings ? Object.fromEntries(Object.entries(e.groupings).map(([e, t]) => [Number(e) < f ? e : Number(e) + u.length, t])) : void 0;
|
|
432
|
+
return {
|
|
433
|
+
...e,
|
|
434
|
+
items: [
|
|
435
|
+
...l.slice(0, f),
|
|
436
|
+
...u,
|
|
437
|
+
...l.slice(f)
|
|
438
|
+
],
|
|
439
|
+
...p ? { groupings: p } : {}
|
|
440
|
+
};
|
|
441
|
+
});
|
|
442
|
+
}
|
|
443
|
+
var rt = C(), it = S(({ vSpec: e, vTheme: t, data: n, elementSize: r, vizProperties: i }) => {
|
|
444
|
+
let a = T(), [s] = (0, Y.useState)(() => new $()), c = w(), u = (0, Y.useMemo)(() => ({
|
|
445
|
+
...i,
|
|
446
|
+
disable: {
|
|
447
|
+
...i.disable,
|
|
448
|
+
brushingAxis: !0
|
|
449
|
+
}
|
|
450
|
+
}), [i]), d = t || l, f = Ce();
|
|
451
|
+
if (!e || !n || !r) return null;
|
|
452
|
+
let p = s.compile(e, d, nt(e, n), r, u, o.Line, a, c, f);
|
|
453
|
+
return p ? /* @__PURE__ */ (0, rt.jsx)(ye, {
|
|
454
|
+
config: i,
|
|
455
|
+
definition: p,
|
|
456
|
+
size: r,
|
|
457
|
+
vSpec: e
|
|
458
|
+
}) : null;
|
|
459
|
+
}), at = /* @__PURE__ */ t({
|
|
460
|
+
LineChart: () => it,
|
|
461
|
+
LineChartCompiler: () => $
|
|
462
|
+
});
|
|
463
|
+
export { $ as n, at as t };
|