@hybridcore/ui 1.6.10 → 1.6.12

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.
@@ -1,47 +1,49 @@
1
- import { jsxs as i, jsx as r, Fragment as l } from "react/jsx-runtime";
2
- import { Typography as h, Divider as C } from "@mui/material";
3
- import { Loading as d } from "../../loading/index.js";
4
- import { CandlestickChart as c } from "../candlestick/index.js";
1
+ import { jsxs as a, jsx as r, Fragment as l } from "react/jsx-runtime";
2
+ import { Typography as C, Divider as h } from "@mui/material";
3
+ import { Loading as c } from "../../loading/index.js";
4
+ import { CandlestickChart as d } from "../candlestick/index.js";
5
5
  import { ColumnLineMix as f } from "../column-line-mix/index.js";
6
6
  import { DonutChart as s } from "../donut-chart/index.js";
7
7
  import { DrillDownTreemap as u } from "../drill-down-treemap/index.js";
8
8
  import { DrillDownVoronoiTreemap as D } from "../drill-down-voronoi-treemap/index.js";
9
- import { Heatmap as L } from "../heatmap/index.js";
10
- import { LineChart as g } from "../line/index.js";
11
- import { LogaritmicScale as x } from "../logaritmic-scale/index.js";
12
- import { MultipleValueAxes as k } from "../multiple-value-axes/index.js";
13
- import { NestedPie as S } from "../nested-pie/index.js";
14
- import { PackedCircles as P } from "../packed-circles/index.js";
15
- import { PieChart as w } from "../pie-chart/index.js";
16
- import { StackedAreaRadar as A } from "../stacked-area-radar/index.js";
17
- import { StackedColumnChart as T } from "../stacked-column-chart/index.js";
18
- import { XYChart as W } from "../xy-chart/index.js";
19
- import { useChartWrapperLogic as M } from "./logic.js";
20
- import { ChartWrapperRoot as V, ChartWrapperHeader as v, ChartWrapperContent as y } from "./styled.js";
21
- const _ = (a) => {
22
- const { title: m, type: o, chartProps: e, loading: p, ownerState: t, sx: n } = M(a);
23
- return /* @__PURE__ */ i(V, { ownerState: t, sx: n, children: [
24
- /* @__PURE__ */ r(v, { ownerState: t, children: /* @__PURE__ */ r(h, { sx: { paddingLeft: "0.5rem" }, variant: "h3", children: m }) }),
25
- /* @__PURE__ */ r(C, {}),
26
- /* @__PURE__ */ r(y, { ownerState: t, children: p ? /* @__PURE__ */ r(d, { show: !0, position: "absolute" }) : /* @__PURE__ */ i(l, { children: [
27
- o === "MultipleValueAxes" && /* @__PURE__ */ r(k, { ...e }),
28
- o === "XYChart" && /* @__PURE__ */ r(W, { ...e }),
29
- o === "HeatLegend" && /* @__PURE__ */ r(L, { ...e }),
30
- o === "PieChart" && /* @__PURE__ */ r(w, { ...e }),
9
+ import { ForecastConeChart as L } from "../forecast-cone/index.js";
10
+ import { Heatmap as g } from "../heatmap/index.js";
11
+ import { LineChart as x } from "../line/index.js";
12
+ import { LogaritmicScale as k } from "../logaritmic-scale/index.js";
13
+ import { MultipleValueAxes as S } from "../multiple-value-axes/index.js";
14
+ import { NestedPie as P } from "../nested-pie/index.js";
15
+ import { PackedCircles as w } from "../packed-circles/index.js";
16
+ import { PieChart as A } from "../pie-chart/index.js";
17
+ import { StackedAreaRadar as T } from "../stacked-area-radar/index.js";
18
+ import { StackedColumnChart as W } from "../stacked-column-chart/index.js";
19
+ import { XYChart as M } from "../xy-chart/index.js";
20
+ import { useChartWrapperLogic as V } from "./logic.js";
21
+ import { ChartWrapperRoot as v, ChartWrapperHeader as y, ChartWrapperContent as F } from "./styled.js";
22
+ const rr = (i) => {
23
+ const { title: m, type: o, chartProps: e, loading: p, ownerState: t, sx: n } = V(i);
24
+ return /* @__PURE__ */ a(v, { ownerState: t, sx: n, children: [
25
+ /* @__PURE__ */ r(y, { ownerState: t, children: /* @__PURE__ */ r(C, { sx: { paddingLeft: "0.5rem" }, variant: "h3", children: m }) }),
26
+ /* @__PURE__ */ r(h, {}),
27
+ /* @__PURE__ */ r(F, { ownerState: t, children: p ? /* @__PURE__ */ r(c, { show: !0, position: "absolute" }) : /* @__PURE__ */ a(l, { children: [
28
+ o === "MultipleValueAxes" && /* @__PURE__ */ r(S, { ...e }),
29
+ o === "XYChart" && /* @__PURE__ */ r(M, { ...e }),
30
+ o === "HeatLegend" && /* @__PURE__ */ r(g, { ...e }),
31
+ o === "PieChart" && /* @__PURE__ */ r(A, { ...e }),
31
32
  o === "DonutChart" && /* @__PURE__ */ r(s, { ...e }),
32
- o === "StackedColumnChart" && /* @__PURE__ */ r(T, { ...e }),
33
- o === "StackedAreaRadar" && /* @__PURE__ */ r(A, { ...e }),
34
- o === "LineChart" && /* @__PURE__ */ r(g, { ...e }),
35
- o === "NestedPie" && /* @__PURE__ */ r(S, { ...e }),
36
- o === "SingleLevelPackedCircles" && /* @__PURE__ */ r(P, { ...e }),
37
- o === "LogarithmicScale" && /* @__PURE__ */ r(x, { ...e }),
33
+ o === "StackedColumnChart" && /* @__PURE__ */ r(W, { ...e }),
34
+ o === "StackedAreaRadar" && /* @__PURE__ */ r(T, { ...e }),
35
+ o === "LineChart" && /* @__PURE__ */ r(x, { ...e }),
36
+ o === "NestedPie" && /* @__PURE__ */ r(P, { ...e }),
37
+ o === "SingleLevelPackedCircles" && /* @__PURE__ */ r(w, { ...e }),
38
+ o === "LogarithmicScale" && /* @__PURE__ */ r(k, { ...e }),
38
39
  o === "ColumnAndLineMix" && /* @__PURE__ */ r(f, { ...e }),
39
40
  o === "DrillDownTreemap" && /* @__PURE__ */ r(u, { ...e }),
40
41
  o === "DrillDownVoronoiTreemap" && /* @__PURE__ */ r(D, { ...e }),
41
- o === "CandlestickChart" && /* @__PURE__ */ r(c, { ...e })
42
+ o === "CandlestickChart" && /* @__PURE__ */ r(d, { ...e }),
43
+ o === "ForecastCone" && /* @__PURE__ */ r(L, { ...e })
42
44
  ] }) })
43
45
  ] });
44
46
  };
45
47
  export {
46
- _ as ChartWrapper
48
+ rr as ChartWrapper
47
49
  };
@@ -0,0 +1,52 @@
1
+ import { jsxs as d, jsx as e } from "react/jsx-runtime";
2
+ import { useForecastConeChartLogic as h } from "./logic.js";
3
+ import { ForecastConeChartRoot as f } from "./styled.js";
4
+ const x = (o) => {
5
+ const { chartDivRef: r, data: n, chartId: i, loading: t, emptyMessage: s, sx: a, other: c, ownerState: l } = h(o);
6
+ return /* @__PURE__ */ d(f, { ownerState: l, sx: a, ...c, children: [
7
+ /* @__PURE__ */ e(
8
+ "div",
9
+ {
10
+ ref: r,
11
+ id: i,
12
+ style: { width: "100%", height: "100%" }
13
+ }
14
+ ),
15
+ t && /* @__PURE__ */ e(
16
+ "div",
17
+ {
18
+ style: {
19
+ position: "absolute",
20
+ inset: 0,
21
+ background: "rgba(255,255,255,0.8)",
22
+ display: "flex",
23
+ alignItems: "center",
24
+ justifyContent: "center",
25
+ fontSize: "1.2rem",
26
+ color: "#555",
27
+ zIndex: 10
28
+ },
29
+ children: "Loading..."
30
+ }
31
+ ),
32
+ !t && n.length === 0 && /* @__PURE__ */ e(
33
+ "div",
34
+ {
35
+ style: {
36
+ position: "absolute",
37
+ inset: 0,
38
+ display: "flex",
39
+ alignItems: "center",
40
+ justifyContent: "center",
41
+ color: "#999",
42
+ fontSize: "1.1rem",
43
+ zIndex: 10
44
+ },
45
+ children: s
46
+ }
47
+ )
48
+ ] });
49
+ };
50
+ export {
51
+ x as ForecastConeChart
52
+ };
@@ -0,0 +1,345 @@
1
+ import { R as we, A as Ae } from "../../../AnimatedTheme-ktdO3Bel.js";
2
+ import { useTheme as Fe, useThemeProps as De } from "@mui/material";
3
+ import Ne from "lodash";
4
+ import { useRef as S, useLayoutEffect as ke } from "react";
5
+ import { getTooltipDateFormat as Te, attachCursorTooltip as Oe } from "../_common/tooltip.js";
6
+ import { applyValueFormat as Ce } from "../_common/utils.js";
7
+ import { c as d, a as ie } from "../../../Entity-BJCuhdq_.js";
8
+ import { X as Xe, V as Pe } from "../../../AxisRenderer-BCQoUJw6.js";
9
+ import { X as Ie } from "../../../XYCursor-CVUSpqb9.js";
10
+ import { A as Ye, a as je } from "../../../AxisRendererY-AXWvGU6r.js";
11
+ import { L as Se } from "../../../Legend-CFvQiIfn.js";
12
+ import { L as R } from "../../../LineSeries-D_IL2qGF.js";
13
+ import { G as Le, D as Re } from "../../../GaplessDateAxis-B2g2jgSG.js";
14
+ import { D as $e } from "../../../DateAxis-DEXKps1S.js";
15
+ class Me {
16
+ constructor(e, s) {
17
+ Object.defineProperty(this, "_line", {
18
+ enumerable: !0,
19
+ configurable: !0,
20
+ writable: !0,
21
+ value: 0
22
+ }), Object.defineProperty(this, "_point", {
23
+ enumerable: !0,
24
+ configurable: !0,
25
+ writable: !0,
26
+ value: 0
27
+ }), Object.defineProperty(this, "_context", {
28
+ enumerable: !0,
29
+ configurable: !0,
30
+ writable: !0,
31
+ value: void 0
32
+ }), Object.defineProperty(this, "_x0", {
33
+ enumerable: !0,
34
+ configurable: !0,
35
+ writable: !0,
36
+ value: 0
37
+ }), Object.defineProperty(this, "_x1", {
38
+ enumerable: !0,
39
+ configurable: !0,
40
+ writable: !0,
41
+ value: 0
42
+ }), Object.defineProperty(this, "_y0", {
43
+ enumerable: !0,
44
+ configurable: !0,
45
+ writable: !0,
46
+ value: 0
47
+ }), Object.defineProperty(this, "_y1", {
48
+ enumerable: !0,
49
+ configurable: !0,
50
+ writable: !0,
51
+ value: 0
52
+ }), Object.defineProperty(this, "_t0", {
53
+ enumerable: !0,
54
+ configurable: !0,
55
+ writable: !0,
56
+ value: 0
57
+ }), Object.defineProperty(this, "_tension", {
58
+ enumerable: !0,
59
+ configurable: !0,
60
+ writable: !0,
61
+ value: 0
62
+ }), this._context = e, this._tension = s;
63
+ }
64
+ areaStart() {
65
+ this._line = 0;
66
+ }
67
+ areaEnd() {
68
+ this._line = NaN;
69
+ }
70
+ lineStart() {
71
+ this._x0 = this._x1 = this._y0 = this._y1 = this._t0 = NaN, this._point = 0;
72
+ }
73
+ lineEnd() {
74
+ switch (this._point) {
75
+ case 2:
76
+ this._context.lineTo(this._x1, this._y1);
77
+ break;
78
+ case 3:
79
+ L(this, this._t0, ue(this, this._t0));
80
+ break;
81
+ }
82
+ (this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;
83
+ }
84
+ point(e, s) {
85
+ let o = NaN;
86
+ if (e = +e, s = +s, !(e === this._x1 && s === this._y1)) {
87
+ switch (this._point) {
88
+ case 0:
89
+ this._point = 1, this._line ? this._context.lineTo(e, s) : this._context.moveTo(e, s);
90
+ break;
91
+ case 1:
92
+ this._point = 2;
93
+ break;
94
+ case 2:
95
+ this._point = 3, L(this, ue(this, o = le(this, e, s)), o);
96
+ break;
97
+ default:
98
+ L(this, this._t0, o = le(this, e, s));
99
+ break;
100
+ }
101
+ this._x0 = this._x1, this._x1 = e, this._y0 = this._y1, this._y1 = s, this._t0 = o;
102
+ }
103
+ }
104
+ }
105
+ function ae(r) {
106
+ function e(s) {
107
+ return new Me(s, r);
108
+ }
109
+ return e;
110
+ }
111
+ function ne(r) {
112
+ return r < 0 ? -1 : 1;
113
+ }
114
+ function le(r, e, s) {
115
+ let o = r._x1 - r._x0, l = e - r._x1, a = (r._y1 - r._y0) / (o || l < 0 && -0), n = (s - r._y1) / (l || o < 0 && -0), p = (a * l + n * o) / (o + l);
116
+ return (ne(a) + ne(n)) * Math.min(Math.abs(a), Math.abs(n), 0.5 * Math.abs(p)) || 0;
117
+ }
118
+ function ue(r, e) {
119
+ let s = r._x1 - r._x0;
120
+ return s ? (3 * (r._y1 - r._y0) / s - e) / 2 : e;
121
+ }
122
+ function L(r, e, s) {
123
+ let o = r._x0, l = r._y0, a = r._x1, n = r._y1, p = (a - o) / 1.5 * (1 - r._tension);
124
+ r._context.bezierCurveTo(o + p, l + p * e, a - p, n - p * s, a, n);
125
+ }
126
+ class x extends R {
127
+ _afterNew() {
128
+ this._setDefault("curveFactory", ae(this.get("tension", 0.5))), super._afterNew();
129
+ }
130
+ _updateChildren() {
131
+ this.isDirty("tension") && (this.set("curveFactory", ae(this.get("tension", 0.5))), this._valuesDirty = !0), super._updateChildren();
132
+ }
133
+ }
134
+ Object.defineProperty(x, "className", {
135
+ enumerable: !0,
136
+ configurable: !0,
137
+ writable: !0,
138
+ value: "SmoothedXLineSeries"
139
+ });
140
+ Object.defineProperty(x, "classNames", {
141
+ enumerable: !0,
142
+ configurable: !0,
143
+ writable: !0,
144
+ value: R.classNames.concat([x.className])
145
+ });
146
+ const Ve = [
147
+ { lowerField: "low95", upperField: "high95", label: "95% expected move" },
148
+ { lowerField: "low68", upperField: "high68", label: "68% expected move" }
149
+ ], Ee = [0.15, 0.3, 0.45], Ue = 1.1, Be = {
150
+ millisecond: 1,
151
+ second: 1e3,
152
+ minute: 6e4,
153
+ hour: 36e5,
154
+ day: 864e5,
155
+ week: 6048e5,
156
+ month: 2592e6,
157
+ year: 31536e6
158
+ }, at = (r) => {
159
+ const e = Fe(), s = De({ props: r, name: "HCForecastCone" }), {
160
+ data: o = [],
161
+ dateField: l = "date",
162
+ historyField: a = "close",
163
+ centreField: n = "center",
164
+ bands: p = Ve,
165
+ nowValue: N,
166
+ color: $ = e.palette.warning.main,
167
+ connectMissingData: k = !0,
168
+ skipEmptyDates: M = !0,
169
+ baseInterval: V,
170
+ chartId: E = "forecast-cone-chart",
171
+ height: ce = "100%",
172
+ width: pe = "100%",
173
+ loading: U = !1,
174
+ emptyMessage: B = "No data available",
175
+ sx: he,
176
+ ...de
177
+ } = s, u = Ne.orderBy(o, [l]).map((t) => ({ ...t })), y = u.findIndex(
178
+ (t) => t[n] !== null && t[n] !== void 0
179
+ );
180
+ k && y > 0 && (u[y][a] === null || u[y][a] === void 0) && (u[y][a] = u[y][n]);
181
+ const me = {
182
+ ...s,
183
+ height: ce,
184
+ width: pe,
185
+ chartId: E,
186
+ loading: U,
187
+ emptyMessage: B,
188
+ baseInterval: V
189
+ }, H = S(null), G = S(null), T = S(null);
190
+ return ke(() => {
191
+ var J, K, Q;
192
+ if (!T.current) return;
193
+ const t = we.new(T.current);
194
+ G.current = t, t.setThemes([Ae.new(t)]), t.interfaceColors.setAll({
195
+ text: d(e.palette.text.primary),
196
+ grid: d(e.palette.divider),
197
+ stroke: d(e.palette.divider)
198
+ }), Ce(t);
199
+ const c = t.container.children.push(
200
+ Xe.new(t, {
201
+ panX: !0,
202
+ panY: !1,
203
+ wheelX: "none",
204
+ wheelY: "none",
205
+ maxTooltipDistance: -1,
206
+ pinchZoomX: !0,
207
+ layout: t.verticalLayout
208
+ })
209
+ );
210
+ H.current = c, c.set(
211
+ "cursor",
212
+ Ie.new(t, { behavior: "none" })
213
+ ).lineY.set("visible", !1);
214
+ const w = V ?? { timeUnit: "hour", count: 1 }, fe = M ? Le : $e, _ = c.xAxes.push(
215
+ fe.new(t, {
216
+ maxDeviation: 0.1,
217
+ groupData: !1,
218
+ baseInterval: w,
219
+ renderer: Ye.new(t, {})
220
+ })
221
+ );
222
+ (J = _.get("renderer")) == null || J.grid.template.setAll({
223
+ stroke: d(e.palette.divider),
224
+ strokeOpacity: 1
225
+ });
226
+ const A = c.yAxes.push(
227
+ Pe.new(t, {
228
+ renderer: je.new(t, {})
229
+ })
230
+ );
231
+ (K = A.get("renderer")) == null || K.grid.template.setAll({
232
+ stroke: d(e.palette.divider),
233
+ strokeOpacity: 1
234
+ });
235
+ const F = d($), _e = c.children.push(
236
+ Se.new(t, { centerX: ie, x: ie })
237
+ ), O = () => Re.new(t, { dateFormat: "i", dateFields: [l] }), C = [];
238
+ p.forEach((i, f) => {
239
+ const h = c.series.push(
240
+ x.new(t, {
241
+ name: i.label ?? `Band ${f + 1}`,
242
+ xAxis: _,
243
+ yAxis: A,
244
+ valueYField: i.upperField,
245
+ openValueYField: i.lowerField,
246
+ valueXField: l,
247
+ fill: F,
248
+ stroke: F
249
+ })
250
+ );
251
+ h.strokes.template.set("strokeOpacity", 0), h.fills.template.setAll({
252
+ visible: !0,
253
+ fill: F,
254
+ fillOpacity: i.fillOpacity ?? Ee[f] ?? 0.2
255
+ }), h.data.processor = O(), h.data.setAll(u), C.push(h);
256
+ });
257
+ let m;
258
+ n && (m = c.series.push(
259
+ x.new(t, {
260
+ name: "Forecast centre",
261
+ xAxis: _,
262
+ yAxis: A,
263
+ valueYField: n,
264
+ valueXField: l,
265
+ stroke: d(e.palette.error.main)
266
+ })
267
+ ), m.strokes.template.setAll({
268
+ strokeWidth: 1.5,
269
+ strokeDasharray: [4, 4]
270
+ }), m.fills.template.set("visible", !1), m.data.processor = O(), m.data.setAll(u));
271
+ const D = c.series.push(
272
+ R.new(t, {
273
+ name: "History",
274
+ xAxis: _,
275
+ yAxis: A,
276
+ valueYField: a,
277
+ valueXField: l,
278
+ // When false, the history line breaks at missing dates (gap > ~1 base
279
+ // interval) instead of bridging across them.
280
+ connect: k,
281
+ autoGapCount: Ue,
282
+ stroke: d(e.palette.primary.main)
283
+ })
284
+ );
285
+ D.strokes.template.setAll({ strokeWidth: 2 }), D.data.processor = O(), D.data.setAll(u), _e.data.setAll(c.series.values);
286
+ const W = u.findIndex(
287
+ (i) => i[n] !== null && i[n] !== void 0
288
+ ), be = [...u].reverse().find(
289
+ (i) => i[a] !== null && i[a] !== void 0
290
+ ), z = W >= 0 ? u[W] : be, Z = N !== void 0 ? new Date(N).getTime() : z ? new Date(z[l]).getTime() : NaN, ve = (Be[w.timeUnit] ?? 0) * w.count / 2, q = Number.isNaN(Z) ? NaN : Z + ve;
291
+ Number.isNaN(q) || (Q = _.createAxisRange(
292
+ _.makeDataItem({ value: q })
293
+ ).get("grid")) == null || Q.setAll({
294
+ visible: !0,
295
+ stroke: d(e.palette.text.secondary),
296
+ strokeOpacity: 0.7,
297
+ strokeDasharray: [2, 3]
298
+ });
299
+ const ye = Te(w);
300
+ return Oe({
301
+ root: t,
302
+ chart: c,
303
+ theme: e,
304
+ getText: () => {
305
+ var re;
306
+ const i = (g) => g == null ? "—" : t.numberFormatter.format(g), f = D.get("tooltipDataItem"), h = m == null ? void 0 : m.get("tooltipDataItem"), X = h ?? f ?? ((re = C[0]) == null ? void 0 : re.get("tooltipDataItem")), ee = X == null ? void 0 : X.get("valueX"), te = typeof ee == "number" ? t.dateFormatter.format(new Date(ee), ye) : "", b = [], P = f == null ? void 0 : f.get("valueY");
307
+ P != null && b.push(`History: ${i(P)}`);
308
+ const I = h == null ? void 0 : h.get("valueY");
309
+ return I != null && b.push(`Centre: ${i(I)}`), p.forEach((g, se) => {
310
+ var oe;
311
+ const v = (oe = C[se]) == null ? void 0 : oe.get("tooltipDataItem"), Y = v == null ? void 0 : v.get("valueY"), j = v == null ? void 0 : v.get("openValueY");
312
+ if (Y != null && j !== void 0 && j !== null) {
313
+ const ge = (Y - j) / 2, xe = g.label ?? `Band ${se + 1}`;
314
+ b.push(`[${F.toCSSHex()}]●[/] ${xe}: ±${i(ge)}`);
315
+ }
316
+ }), b.length === 0 ? "" : te ? `[bold]${te}[/]
317
+ ${b.join(`
318
+ `)}` : b.join(`
319
+ `);
320
+ }
321
+ }), c.appear(1e3, 100), () => {
322
+ t.dispose(), G.current = null, H.current = null;
323
+ };
324
+ }, [
325
+ e.palette.mode,
326
+ o,
327
+ p,
328
+ $,
329
+ N,
330
+ k,
331
+ M
332
+ ]), {
333
+ chartDivRef: T,
334
+ data: u,
335
+ chartId: E,
336
+ loading: U,
337
+ emptyMessage: B,
338
+ sx: he,
339
+ other: de,
340
+ ownerState: me
341
+ };
342
+ };
343
+ export {
344
+ at as useForecastConeChartLogic
345
+ };
@@ -0,0 +1,12 @@
1
+ import { styled as t } from "@mui/material";
2
+ const i = t("div", {
3
+ name: "HCForecastCone",
4
+ slot: "Root"
5
+ })(({ ownerState: o }) => ({
6
+ position: "relative",
7
+ width: o.width,
8
+ height: o.height
9
+ }));
10
+ export {
11
+ i as ForecastConeChartRoot
12
+ };
package/dist/main.d.ts CHANGED
@@ -7,6 +7,7 @@ import { Collection } from 'ol';
7
7
  import { CommonProps } from '@mui/material/OverridableComponent';
8
8
  import { ComponentsOverrides } from '@mui/material/styles';
9
9
  import { ComponentsOverrides as ComponentsOverrides_2 } from '@mui/material';
10
+ import { ComponentsVariants } from '@mui/material';
10
11
  import { Coordinate } from 'ol/coordinate';
11
12
  import { CoordinateFormat } from 'ol/coordinate';
12
13
  import { createTheme } from '@mui/material';
@@ -244,7 +245,8 @@ export declare type ChartNameType =
244
245
  | "ColumnAndLineMix"
245
246
  | "DrillDownTreemap"
246
247
  | "DrillDownVoronoiTreemap"
247
- | "CandlestickChart";
248
+ | "CandlestickChart"
249
+ | "ForecastCone";
248
250
 
249
251
  export declare interface ChartProps {
250
252
  dimensions: ChartDimension[];
@@ -708,6 +710,69 @@ export declare const FlexRow: StyledComponent<BoxOwnProps<Theme> & Omit<Omit<Det
708
710
  ref?: ((instance: HTMLDivElement | null) => void | DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | RefObject<HTMLDivElement> | null | undefined;
709
711
  }, keyof BoxOwnProps<Theme>> & MUIStyledCommonProps<Theme>, {}, {}>;
710
712
 
713
+ /** One confidence band: the area filled between its lower and upper bound fields. */
714
+ export declare interface ForecastBand {
715
+ /** Data key holding this band's lower bound (per row). */
716
+ lowerField: string;
717
+ /** Data key holding this band's upper bound (per row). */
718
+ upperField: string;
719
+ /** Legend/tooltip label, e.g. "95% expected move". */
720
+ label?: string;
721
+ /** Fill opacity; defaults to a decreasing ramp (outer bands lighter). */
722
+ fillOpacity?: number;
723
+ }
724
+
725
+ export declare const ForecastConeChart: (inProps: ForecastConeChartProps) => JSX_2.Element;
726
+
727
+ export declare type ForecastConeChartComponentOverride<Theme = unknown> = {
728
+ defaultProps?: Partial<ForecastConeChartProps>;
729
+ styleOverrides?: ComponentsOverrides_2<Theme>["HCForecastCone"];
730
+ variants?: ComponentsVariants["HCForecastCone"];
731
+ };
732
+
733
+ export declare interface ForecastConeChartProps {
734
+ /**
735
+ * Rows for the whole timeline. History rows carry `historyField`; forecast
736
+ * rows carry `centreField` and each band's lower/upper fields. A row may be
737
+ * both (the "now" anchor). All optional so the chart can be spread from the
738
+ * generic chart props at the wrapper.
739
+ */
740
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
741
+ data?: any[];
742
+ /** Timestamp field (epoch ms or ISO). Default "date". */
743
+ dateField?: string;
744
+ /** Actual/history value field (null on forecast rows). Default "value". */
745
+ historyField?: string;
746
+ /** Forecast centre field (null on history rows). Default "centre". */
747
+ centreField?: string;
748
+ /** Bands ordered outer → inner; drawn back-to-front so inner paints on top. */
749
+ bands?: ForecastBand[];
750
+ /** Vertical "now" marker; defaults to the last history timestamp. */
751
+ nowValue?: number | string;
752
+ /** Band/centre hue (theme token or CSS color). Defaults to a theme token. */
753
+ color?: string;
754
+ /**
755
+ * History line behaviour across missing dates. `true` (default) bridges gaps
756
+ * (and connects the history end to the cone apex); `false` breaks the line
757
+ * wherever a history point is missing and drops the bridge to the forecast.
758
+ * Affects the history series only — the bands/centre are contiguous.
759
+ */
760
+ connectMissingData?: boolean;
761
+ /**
762
+ * When `true`, the date axis drops intervals with no data (`GaplessDateAxis`),
763
+ * so only dates with values are shown. Default `false` keeps the continuous
764
+ * timeline.
765
+ */
766
+ skipEmptyDates?: boolean;
767
+ baseInterval?: BaseInterval;
768
+ chartId?: string;
769
+ height?: string | number;
770
+ width?: string | number;
771
+ loading?: boolean;
772
+ emptyMessage?: string;
773
+ sx?: SxProps<Theme>;
774
+ }
775
+
711
776
  /**
712
777
  * Format a raw value for display: numbers get locale grouping + the configured
713
778
  * decimals, then the prefix/suffix are wrapped around the result. Non-numeric
@@ -2449,6 +2514,22 @@ declare module "@mui/material/styles" {
2449
2514
 
2450
2515
 
2451
2516
 
2517
+ declare module "@mui/material/styles" {
2518
+ interface ComponentNameToClassKey {
2519
+ HCForecastCone: "root";
2520
+ }
2521
+
2522
+ interface ComponentsPropsList {
2523
+ HCForecastCone: Partial<ForecastConeChartProps>;
2524
+ }
2525
+
2526
+ interface Components<Theme = unknown> {
2527
+ HCForecastCone?: ForecastConeChartComponentOverride<Theme>;
2528
+ }
2529
+ }
2530
+
2531
+
2532
+
2452
2533
  declare module "@mui/material/styles" {
2453
2534
  interface ComponentNameToClassKey {
2454
2535
  HCHeatmap: "root";
package/dist/main.js CHANGED
@@ -6,179 +6,181 @@ import { Card as n } from "./components/card/index.js";
6
6
  import { CardAlternate as s } from "./components/card-alternate/index.js";
7
7
  import { ChartWrapper as C } from "./components/charts/chart-wrapper/index.js";
8
8
  import { CandlestickChart as T } from "./components/charts/candlestick/index.js";
9
- import { ColumnLineMix as u } from "./components/charts/column-line-mix/index.js";
10
- import { DonutChart as L } from "./components/charts/donut-chart/index.js";
11
- import { DrillDownTreemap as I } from "./components/charts/drill-down-treemap/index.js";
12
- import { DrillDownVoronoiTreemap as y } from "./components/charts/drill-down-voronoi-treemap/index.js";
13
- import { Heatmap as b } from "./components/charts/heatmap/index.js";
14
- import { HighlightLineChart as V } from "./components/charts/highlighting-line-data/index.js";
15
- import { LineChart as v } from "./components/charts/line/index.js";
16
- import { LogaritmicScale as R } from "./components/charts/logaritmic-scale/index.js";
17
- import { MultipleValueAxes as E } from "./components/charts/multiple-value-axes/index.js";
18
- import { NestedPie as H } from "./components/charts/nested-pie/index.js";
19
- import { PackedCircles as W } from "./components/charts/packed-circles/index.js";
20
- import { PieChart as O } from "./components/charts/pie-chart/index.js";
21
- import { StackedAreaRadar as N } from "./components/charts/stacked-area-radar/index.js";
22
- import { StackedColumnChart as z } from "./components/charts/stacked-column-chart/index.js";
23
- import { XYChart as Y } from "./components/charts/xy-chart/index.js";
24
- import { formatValue as J, humanizeLabel as K, resolveConditionalStyle as Q } from "./components/charts/_common/format.js";
25
- import { DEFAULT_VIRIDIS_COOL as $ } from "./components/charts/_common/utils.js";
26
- import { Button as or } from "./components/button/index.js";
27
- import { ColorPicker as tr } from "./components/color-picker/index.js";
28
- import { CollapsibleCard as mr } from "./components/collapsible-card/index.js";
29
- import { ConditionalWrapper as xr } from "./components/conditional-wrapper/index.js";
30
- import { alert as ir, confirm as lr } from "./components/confirm/index.js";
31
- import { HCNotificationProvider as cr } from "./components/notification/index.js";
32
- import { Container as dr } from "./components/container/index.js";
33
- import { ContextMenu as Pr } from "./components/context-menu/index.js";
34
- import { DataGrid as Dr } from "./components/data-grid/index.js";
35
- import { DataMap as hr } from "./components/data-map/index.js";
36
- import { DisseminationList as Sr } from "./components/data-security-selectors/dissemination-list/index.js";
37
- import { SecurityLevel as gr } from "./components/data-security-selectors/security-level/index.js";
38
- import { A as Ar, D as br } from "./index-e9xTIYWt.js";
39
- import { DEFAULT_RELATIVE_PRESET_LABELS as Vr } from "./components/date-picker-with-custom-range/logic.js";
40
- import { DateTimePicker as vr } from "./components/date-time-picker/index.js";
41
- import { Divider as Rr } from "./components/divider/index.js";
42
- import { DateRangePicker as Er } from "./components/date-range-picker/index.js";
43
- import { DocumentViewer as Hr } from "./components/document-viewer/index.js";
44
- import { DurationSelect as Wr } from "./components/duration-select/index.js";
45
- import { EditableText as Or } from "./components/editable-text/index.js";
46
- import { GeometryPicker as Nr } from "./components/geometry-picker/index.js";
47
- import { Geometry as zr } from "./components/geometry-picker/geometry/index.js";
48
- import { Parser as Yr } from "./components/geometry-picker/parser/index.js";
49
- import { HeatMap as Jr } from "./components/heat-map/index.js";
50
- import { IconButton as Qr } from "./components/icon-button/index.js";
51
- import { InstanceForm as $r } from "./components/instance-form/index.js";
52
- import { InstanceHierarchyTable as oo } from "./components/instance-hierarchy-table/index.js";
53
- import { InstanceTable as to } from "./components/instance-table/index.js";
54
- import { InstanceVariableList as mo } from "./components/instance-variable-list/index.js";
55
- import { LinearIndicator as xo } from "./components/linear-indicator/index.js";
56
- import { Loading as io } from "./components/loading/index.js";
57
- import { Map as no } from "./components/map/index.js";
58
- import { MetricCard as so } from "./components/metric-card/index.js";
59
- import { ObjectProfileCard as Po } from "./components/object-profile-card/index.js";
60
- import { PaginatedList as Do } from "./components/paginated-list/index.js";
61
- import { PhoneInput as ho } from "./components/phone-input/index.js";
62
- import { Placeholder as So } from "./components/placeholder/index.js";
63
- import { PositionalTooltip as go } from "./components/positional-tooltip/index.js";
64
- import { PrrMap as Ao } from "./components/prr-map/index.js";
65
- import { RangeSelector as Fo } from "./components/range-selector/index.js";
66
- import { RasterGridMap as ko } from "./components/raster-grid-map/index.js";
67
- import { SearchInput as Mo } from "./components/search-input/index.js";
68
- import { ScrollDrag as wo } from "./components/scroll-drag/index.js";
69
- import { SimplePivotTable as Go } from "./components/simple-pivot-table/index.js";
70
- import { SortableList as Bo } from "./components/sortable-list/index.js";
71
- import { StatsBox as _o } from "./components/stats-box/index.js";
72
- import { StaticText as Uo } from "./components/static-text/index.js";
73
- import { Tabs as jo } from "./components/tabs/index.js";
74
- import { TextOverflow as Xo } from "./components/text-overflow/index.js";
75
- import { TemplateFilters as qo } from "./components/template-filters/index.js";
76
- import { TemplateForm as Ko } from "./components/template-form/index.js";
77
- import { TemplatePropertyFilters as Zo } from "./components/template-property-filters/index.js";
78
- import { Property as re } from "./components/template-property-filters/property.js";
79
- import { TimelineWidget as ee } from "./components/timeline/index.js";
80
- import { ToggleViewButton as pe } from "./components/toggle-view-button/index.js";
81
- import { TreeSelect as ae } from "./components/tree-select/index.js";
82
- import { TreeViewFilter as fe } from "./components/treeview-filter/index.js";
83
- import { Uploader as le } from "./components/uploader/index.js";
84
- import { VisuallyHiddenInput as ce } from "./components/visually-hidden-input/styled.js";
85
- import { Widget as de } from "./components/widget/styled.js";
86
- import { FlexCol as Pe } from "./components/flex-col/index.js";
87
- import { FlexRow as De } from "./components/flex-row/index.js";
88
- import { notify as he, removeNotification as Le } from "./components/notification/store.js";
9
+ import { ForecastConeChart as h } from "./components/charts/forecast-cone/index.js";
10
+ import { ColumnLineMix as L } from "./components/charts/column-line-mix/index.js";
11
+ import { DonutChart as I } from "./components/charts/donut-chart/index.js";
12
+ import { DrillDownTreemap as y } from "./components/charts/drill-down-treemap/index.js";
13
+ import { DrillDownVoronoiTreemap as F } from "./components/charts/drill-down-voronoi-treemap/index.js";
14
+ import { Heatmap as V } from "./components/charts/heatmap/index.js";
15
+ import { HighlightLineChart as v } from "./components/charts/highlighting-line-data/index.js";
16
+ import { LineChart as R } from "./components/charts/line/index.js";
17
+ import { LogaritmicScale as E } from "./components/charts/logaritmic-scale/index.js";
18
+ import { MultipleValueAxes as H } from "./components/charts/multiple-value-axes/index.js";
19
+ import { NestedPie as W } from "./components/charts/nested-pie/index.js";
20
+ import { PackedCircles as O } from "./components/charts/packed-circles/index.js";
21
+ import { PieChart as N } from "./components/charts/pie-chart/index.js";
22
+ import { StackedAreaRadar as z } from "./components/charts/stacked-area-radar/index.js";
23
+ import { StackedColumnChart as Y } from "./components/charts/stacked-column-chart/index.js";
24
+ import { XYChart as J } from "./components/charts/xy-chart/index.js";
25
+ import { formatValue as Q, humanizeLabel as Z, resolveConditionalStyle as $ } from "./components/charts/_common/format.js";
26
+ import { DEFAULT_VIRIDIS_COOL as or } from "./components/charts/_common/utils.js";
27
+ import { Button as tr } from "./components/button/index.js";
28
+ import { ColorPicker as mr } from "./components/color-picker/index.js";
29
+ import { CollapsibleCard as xr } from "./components/collapsible-card/index.js";
30
+ import { ConditionalWrapper as ir } from "./components/conditional-wrapper/index.js";
31
+ import { alert as nr, confirm as cr } from "./components/confirm/index.js";
32
+ import { HCNotificationProvider as dr } from "./components/notification/index.js";
33
+ import { Container as Pr } from "./components/container/index.js";
34
+ import { ContextMenu as Dr } from "./components/context-menu/index.js";
35
+ import { DataGrid as ur } from "./components/data-grid/index.js";
36
+ import { DataMap as Sr } from "./components/data-map/index.js";
37
+ import { DisseminationList as gr } from "./components/data-security-selectors/dissemination-list/index.js";
38
+ import { SecurityLevel as Ar } from "./components/data-security-selectors/security-level/index.js";
39
+ import { A as br, D as Vr } from "./index-e9xTIYWt.js";
40
+ import { DEFAULT_RELATIVE_PRESET_LABELS as vr } from "./components/date-picker-with-custom-range/logic.js";
41
+ import { DateTimePicker as Rr } from "./components/date-time-picker/index.js";
42
+ import { Divider as Er } from "./components/divider/index.js";
43
+ import { DateRangePicker as Hr } from "./components/date-range-picker/index.js";
44
+ import { DocumentViewer as Wr } from "./components/document-viewer/index.js";
45
+ import { DurationSelect as Or } from "./components/duration-select/index.js";
46
+ import { EditableText as Nr } from "./components/editable-text/index.js";
47
+ import { GeometryPicker as zr } from "./components/geometry-picker/index.js";
48
+ import { Geometry as Yr } from "./components/geometry-picker/geometry/index.js";
49
+ import { Parser as Jr } from "./components/geometry-picker/parser/index.js";
50
+ import { HeatMap as Qr } from "./components/heat-map/index.js";
51
+ import { IconButton as $r } from "./components/icon-button/index.js";
52
+ import { InstanceForm as oo } from "./components/instance-form/index.js";
53
+ import { InstanceHierarchyTable as to } from "./components/instance-hierarchy-table/index.js";
54
+ import { InstanceTable as mo } from "./components/instance-table/index.js";
55
+ import { InstanceVariableList as xo } from "./components/instance-variable-list/index.js";
56
+ import { LinearIndicator as io } from "./components/linear-indicator/index.js";
57
+ import { Loading as no } from "./components/loading/index.js";
58
+ import { Map as so } from "./components/map/index.js";
59
+ import { MetricCard as Po } from "./components/metric-card/index.js";
60
+ import { ObjectProfileCard as Do } from "./components/object-profile-card/index.js";
61
+ import { PaginatedList as uo } from "./components/paginated-list/index.js";
62
+ import { PhoneInput as So } from "./components/phone-input/index.js";
63
+ import { Placeholder as go } from "./components/placeholder/index.js";
64
+ import { PositionalTooltip as Ao } from "./components/positional-tooltip/index.js";
65
+ import { PrrMap as bo } from "./components/prr-map/index.js";
66
+ import { RangeSelector as ko } from "./components/range-selector/index.js";
67
+ import { RasterGridMap as Mo } from "./components/raster-grid-map/index.js";
68
+ import { SearchInput as wo } from "./components/search-input/index.js";
69
+ import { ScrollDrag as Go } from "./components/scroll-drag/index.js";
70
+ import { SimplePivotTable as Bo } from "./components/simple-pivot-table/index.js";
71
+ import { SortableList as _o } from "./components/sortable-list/index.js";
72
+ import { StatsBox as Uo } from "./components/stats-box/index.js";
73
+ import { StaticText as jo } from "./components/static-text/index.js";
74
+ import { Tabs as Xo } from "./components/tabs/index.js";
75
+ import { TextOverflow as qo } from "./components/text-overflow/index.js";
76
+ import { TemplateFilters as Ko } from "./components/template-filters/index.js";
77
+ import { TemplateForm as Zo } from "./components/template-form/index.js";
78
+ import { TemplatePropertyFilters as re } from "./components/template-property-filters/index.js";
79
+ import { Property as ee } from "./components/template-property-filters/property.js";
80
+ import { TimelineWidget as pe } from "./components/timeline/index.js";
81
+ import { ToggleViewButton as ae } from "./components/toggle-view-button/index.js";
82
+ import { TreeSelect as fe } from "./components/tree-select/index.js";
83
+ import { TreeViewFilter as le } from "./components/treeview-filter/index.js";
84
+ import { Uploader as ce } from "./components/uploader/index.js";
85
+ import { VisuallyHiddenInput as de } from "./components/visually-hidden-input/styled.js";
86
+ import { Widget as Pe } from "./components/widget/styled.js";
87
+ import { FlexCol as De } from "./components/flex-col/index.js";
88
+ import { FlexRow as ue } from "./components/flex-row/index.js";
89
+ import { notify as Se, removeNotification as Ie } from "./components/notification/store.js";
89
90
  export {
90
91
  x as Access,
91
92
  i as AccessUtils,
92
- Ar as AdapterDayjs,
93
- or as Button,
93
+ br as AdapterDayjs,
94
+ tr as Button,
94
95
  T as CandlestickChart,
95
96
  n as Card,
96
97
  s as CardAlternate,
97
98
  C as ChartWrapper,
98
- mr as CollapsibleCard,
99
- tr as ColorPicker,
100
- u as ColumnLineMix,
101
- xr as ConditionalWrapper,
102
- dr as Container,
103
- Pr as ContextMenu,
104
- Vr as DEFAULT_RELATIVE_PRESET_LABELS,
105
- $ as DEFAULT_VIRIDIS_COOL,
106
- Dr as DataGrid,
107
- hr as DataMap,
108
- br as DatePickerWithCustomRange,
109
- Er as DateRangePicker,
110
- vr as DateTimePicker,
111
- Sr as DisseminationList,
112
- Rr as Divider,
113
- Hr as DocumentViewer,
114
- L as DonutChart,
115
- I as DrillDownTreemap,
116
- y as DrillDownVoronoiTreemap,
117
- Wr as DurationSelect,
118
- Or as EditableText,
119
- Pe as FlexCol,
120
- De as FlexRow,
121
- zr as GeometryDraw,
122
- Yr as GeometryParser,
123
- Nr as GeometryPicker,
124
- cr as HCNotificationProvider,
125
- Jr as HeatMap,
126
- b as Heatmap,
127
- V as HighlightLineChart,
128
- Qr as IconButton,
129
- $r as InstanceForm,
130
- oo as InstanceHierarchyTable,
131
- to as InstanceTable,
132
- mo as InstanceVariableList,
133
- v as LineChart,
134
- xo as LinearIndicator,
135
- io as Loading,
99
+ xr as CollapsibleCard,
100
+ mr as ColorPicker,
101
+ L as ColumnLineMix,
102
+ ir as ConditionalWrapper,
103
+ Pr as Container,
104
+ Dr as ContextMenu,
105
+ vr as DEFAULT_RELATIVE_PRESET_LABELS,
106
+ or as DEFAULT_VIRIDIS_COOL,
107
+ ur as DataGrid,
108
+ Sr as DataMap,
109
+ Vr as DatePickerWithCustomRange,
110
+ Hr as DateRangePicker,
111
+ Rr as DateTimePicker,
112
+ gr as DisseminationList,
113
+ Er as Divider,
114
+ Wr as DocumentViewer,
115
+ I as DonutChart,
116
+ y as DrillDownTreemap,
117
+ F as DrillDownVoronoiTreemap,
118
+ Or as DurationSelect,
119
+ Nr as EditableText,
120
+ De as FlexCol,
121
+ ue as FlexRow,
122
+ h as ForecastConeChart,
123
+ Yr as GeometryDraw,
124
+ Jr as GeometryParser,
125
+ zr as GeometryPicker,
126
+ dr as HCNotificationProvider,
127
+ Qr as HeatMap,
128
+ V as Heatmap,
129
+ v as HighlightLineChart,
130
+ $r as IconButton,
131
+ oo as InstanceForm,
132
+ to as InstanceHierarchyTable,
133
+ mo as InstanceTable,
134
+ xo as InstanceVariableList,
135
+ R as LineChart,
136
+ io as LinearIndicator,
137
+ no as Loading,
136
138
  m as LocalizationProvider,
137
- R as LogaritmicScale,
138
- no as Map,
139
- so as MetricCard,
140
- E as MultipleValueAxes,
141
- H as NestedPie,
142
- Po as ObjectProfileCard,
143
- W as PackedCircles,
144
- Do as PaginatedList,
145
- ho as PhoneInput,
146
- O as PieChart,
147
- So as Placeholder,
148
- go as PositionalTooltip,
149
- re as PropertyFilterInput,
150
- Ao as PrrMap,
151
- Fo as RangeSelector,
152
- ko as RasterGridMap,
153
- wo as ScrollDrag,
154
- Mo as SearchInput,
155
- gr as SecurityLevel,
156
- Go as SimplePivotTable,
157
- Bo as SortableList,
158
- N as StackedAreaRadar,
159
- z as StackedColumnChart,
160
- Uo as StaticText,
161
- _o as StatsBox,
162
- jo as Tabs,
163
- qo as TemplateFilters,
164
- Ko as TemplateForm,
165
- Zo as TemplatePropertyFilters,
166
- Xo as TextOverflow,
139
+ E as LogaritmicScale,
140
+ so as Map,
141
+ Po as MetricCard,
142
+ H as MultipleValueAxes,
143
+ W as NestedPie,
144
+ Do as ObjectProfileCard,
145
+ O as PackedCircles,
146
+ uo as PaginatedList,
147
+ So as PhoneInput,
148
+ N as PieChart,
149
+ go as Placeholder,
150
+ Ao as PositionalTooltip,
151
+ ee as PropertyFilterInput,
152
+ bo as PrrMap,
153
+ ko as RangeSelector,
154
+ Mo as RasterGridMap,
155
+ Go as ScrollDrag,
156
+ wo as SearchInput,
157
+ Ar as SecurityLevel,
158
+ Bo as SimplePivotTable,
159
+ _o as SortableList,
160
+ z as StackedAreaRadar,
161
+ Y as StackedColumnChart,
162
+ jo as StaticText,
163
+ Uo as StatsBox,
164
+ Xo as Tabs,
165
+ Ko as TemplateFilters,
166
+ Zo as TemplateForm,
167
+ re as TemplatePropertyFilters,
168
+ qo as TextOverflow,
167
169
  e as ThemeProvider,
168
- ee as TimelineWidget,
169
- pe as ToggleViewButton,
170
- ae as TreeSelect,
171
- fe as TreeViewFilter,
172
- le as Uploader,
173
- ce as VisuallyHiddenInput,
174
- de as Widget,
175
- Y as XYChart,
176
- ir as alert,
177
- lr as confirm,
170
+ pe as TimelineWidget,
171
+ ae as ToggleViewButton,
172
+ fe as TreeSelect,
173
+ le as TreeViewFilter,
174
+ ce as Uploader,
175
+ de as VisuallyHiddenInput,
176
+ Pe as Widget,
177
+ J as XYChart,
178
+ nr as alert,
179
+ cr as confirm,
178
180
  t as createTheme,
179
- J as formatValue,
180
- K as humanizeLabel,
181
- he as notify,
182
- Le as removeNotification,
183
- Q as resolveConditionalStyle
181
+ Q as formatValue,
182
+ Z as humanizeLabel,
183
+ Se as notify,
184
+ Ie as removeNotification,
185
+ $ as resolveConditionalStyle
184
186
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@hybridcore/ui",
3
3
  "description": "Hybrid Core UI Library",
4
- "version": "1.6.10",
4
+ "version": "1.6.12",
5
5
  "author": "Hybrid Core",
6
6
  "license": "ISC",
7
7
  "type": "module",