@embeddable.com/remarkable-ui 0.1.15 → 0.1.17

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.
Files changed (83) hide show
  1. package/dist/BarChartDefaultHorizontalPro.js +43 -40
  2. package/dist/BarChartDefaultHorizontalPro.js.map +1 -1
  3. package/dist/BarChartDefaultPro.js +43 -40
  4. package/dist/BarChartDefaultPro.js.map +1 -1
  5. package/dist/BarChartGroupedHorizontalPro.js +48 -46
  6. package/dist/BarChartGroupedHorizontalPro.js.map +1 -1
  7. package/dist/BarChartGroupedPro.js +44 -41
  8. package/dist/BarChartGroupedPro.js.map +1 -1
  9. package/dist/BarChartStackedHorizontalPro.js +46 -43
  10. package/dist/BarChartStackedHorizontalPro.js.map +1 -1
  11. package/dist/BarChartStackedPro.js +48 -45
  12. package/dist/BarChartStackedPro.js.map +1 -1
  13. package/dist/{BaseButton-BJ_6r0uk.js → BaseButton-BKojrsLP.js} +2 -2
  14. package/dist/{BaseButton-BJ_6r0uk.js.map → BaseButton-BKojrsLP.js.map} +1 -1
  15. package/dist/{ChartCard-Cb0QE9kP.js → ChartCard-DLb6o61U.js} +11 -11
  16. package/dist/{ChartCard-Cb0QE9kP.js.map → ChartCard-DLb6o61U.js.map} +1 -1
  17. package/dist/ComparisonPeriod.type.emb-BK3kHVRE.js +14 -0
  18. package/dist/ComparisonPeriod.type.emb-BK3kHVRE.js.map +1 -0
  19. package/dist/ComparisonPeriodSelectFieldPro.js +6 -6
  20. package/dist/DateRangeSelectFieldPro.js +2 -2
  21. package/dist/DonutChartPro.js +2 -2
  22. package/dist/DonutLabelChartPro.js +2 -2
  23. package/dist/{EditorCard-DWz8Bm-e.js → EditorCard-COw7ouX6.js} +8 -8
  24. package/dist/{EditorCard-DWz8Bm-e.js.map → EditorCard-COw7ouX6.js.map} +1 -1
  25. package/dist/KpiChart-DhPJaw1n.js +79 -0
  26. package/dist/KpiChart-DhPJaw1n.js.map +1 -0
  27. package/dist/KpiChartNumberComparisonPro.js +56 -48
  28. package/dist/KpiChartNumberComparisonPro.js.map +1 -1
  29. package/dist/KpiChartNumberPro.js +4 -4
  30. package/dist/MultiSelectFieldPro.js +2 -2
  31. package/dist/PieChartPro.js +2 -2
  32. package/dist/{SingleSelectField-BJnoOYrw.js → SingleSelectField-BaBjHlCf.js} +3 -3
  33. package/dist/{SingleSelectField-BJnoOYrw.js.map → SingleSelectField-BaBjHlCf.js.map} +1 -1
  34. package/dist/SingleSelectFieldPro.js +2 -2
  35. package/dist/{charts.fillGaps.hooks-BFmuMVNT.js → charts.fillGaps.hooks-BwlVpKVy.js} +217 -189
  36. package/dist/charts.fillGaps.hooks-BwlVpKVy.js.map +1 -0
  37. package/dist/{component.constants-Bn9l4N1t.js → component.constants-DuGM1FcK.js} +9 -9
  38. package/dist/{component.constants-Bn9l4N1t.js.map → component.constants-DuGM1FcK.js.map} +1 -1
  39. package/dist/embeddable-components.json +10 -10
  40. package/dist/embeddable-theme-2b917.js +6 -5
  41. package/dist/embeddable-types-4ace4.js +4 -5
  42. package/dist/embeddable-types.js.map +1 -1
  43. package/dist/{formatter.utils-Ba_5cIcm.js → formatter.utils-C_jDZCA9.js} +2 -2
  44. package/dist/{formatter.utils-Ba_5cIcm.js.map → formatter.utils-C_jDZCA9.js.map} +1 -1
  45. package/dist/{index-CobXKlOi.js → index-0JzvLdB-.js} +4 -4
  46. package/dist/{index-CobXKlOi.js.map → index-0JzvLdB-.js.map} +1 -1
  47. package/dist/{index-DEzAFKmN.js → index-1ZIedoXi.js} +4 -4
  48. package/dist/{index-DEzAFKmN.js.map → index-1ZIedoXi.js.map} +1 -1
  49. package/dist/{index-6ilf5W1J.js → index-CIbTA8lC.js} +5 -5
  50. package/dist/{index-6ilf5W1J.js.map → index-CIbTA8lC.js.map} +1 -1
  51. package/dist/{index-Dwb4Z6Hd.js → index-CXq36TbG.js} +4 -4
  52. package/dist/{index-Dwb4Z6Hd.js.map → index-CXq36TbG.js.map} +1 -1
  53. package/dist/{index-DYBt2TuY.js → index-CmclYpTi.js} +14 -14
  54. package/dist/{index-DYBt2TuY.js.map → index-CmclYpTi.js.map} +1 -1
  55. package/dist/{index-BhW48cz5.js → index-DleI2gEG.js} +5 -5
  56. package/dist/{index-BhW48cz5.js.map → index-DleI2gEG.js.map} +1 -1
  57. package/dist/index.js +44 -44
  58. package/dist/{object.utils-C6JIOYmv.js → object.utils-BlUnrtY3.js} +466 -465
  59. package/dist/object.utils-BlUnrtY3.js.map +1 -0
  60. package/dist/{pies.utils-CSx7w1mv.js → pies.utils-cOIEuHyS.js} +4 -4
  61. package/dist/{pies.utils-CSx7w1mv.js.map → pies.utils-cOIEuHyS.js.map} +1 -1
  62. package/dist/remarkable-pro/components/charts/bars/BarChartDefaultHorizontalPro/index.d.ts.map +1 -1
  63. package/dist/remarkable-pro/components/charts/bars/BarChartDefaultPro/index.d.ts.map +1 -1
  64. package/dist/remarkable-pro/components/charts/bars/BarChartGroupedHorizontalPro/index.d.ts.map +1 -1
  65. package/dist/remarkable-pro/components/charts/bars/BarChartGroupedPro/index.d.ts.map +1 -1
  66. package/dist/remarkable-pro/components/charts/bars/BarChartStackedHorizontalPro/index.d.ts.map +1 -1
  67. package/dist/remarkable-pro/components/charts/bars/BarChartStackedPro/index.d.ts.map +1 -1
  68. package/dist/remarkable-pro/components/charts/bars/bars.utils.d.ts +2 -0
  69. package/dist/remarkable-pro/components/charts/bars/bars.utils.d.ts.map +1 -1
  70. package/dist/remarkable-pro/components/charts/kpis/KpiChartNumberComparisonPro/index.d.ts +1 -0
  71. package/dist/remarkable-pro/components/charts/kpis/KpiChartNumberComparisonPro/index.d.ts.map +1 -1
  72. package/dist/remarkable-pro/theme/formatter/formatter.constants.d.ts.map +1 -1
  73. package/dist/remarkable-pro/theme/styles/styles.utils.d.ts.map +1 -1
  74. package/dist/remarkable-ui/charts/kpis/KpiChart.d.ts.map +1 -1
  75. package/dist/remarkable-ui/charts/kpis/KpiChart.types.d.ts +1 -0
  76. package/dist/remarkable-ui/charts/kpis/KpiChart.types.d.ts.map +1 -1
  77. package/package.json +1 -1
  78. package/dist/ComparisonPeriod.type.emb-61HEPz26.js +0 -15
  79. package/dist/ComparisonPeriod.type.emb-61HEPz26.js.map +0 -1
  80. package/dist/KpiChart-CzUK0Dgw.js +0 -77
  81. package/dist/KpiChart-CzUK0Dgw.js.map +0 -1
  82. package/dist/charts.fillGaps.hooks-BFmuMVNT.js.map +0 -1
  83. package/dist/object.utils-C6JIOYmv.js.map +0 -1
@@ -1,37 +1,37 @@
1
- import { B as f, C as O, D as Q, m as I, E as R, F as J, G as X, L as tt, H as et, I as at, J as rt, K as st, M as nt, j as N, N as ot, O as lt, P as it, Q as L, R as ct } from "./component.constants-Bn9l4N1t.js";
2
- import { useRef as dt, useMemo as ut } from "react";
3
- import { r as mt, g as W, a as ft, b as H } from "./object.utils-C6JIOYmv.js";
4
- import { g as Y } from "./formatter.utils-Ba_5cIcm.js";
1
+ import { B as h, C as v, D as Q, m as A, E as R, F as J, G as X, L as tt, H as et, I as at, J as rt, K as st, M as nt, j as B, N as ot, O as lt, P as it, Q as L } from "./component.constants-DuGM1FcK.js";
2
+ import { useRef as ct, useMemo as dt } from "react";
3
+ import { r as ut, g as W, a as mt, b as H } from "./object.utils-BlUnrtY3.js";
4
+ import { g as N } from "./formatter.utils-C_jDZCA9.js";
5
5
  import { d as D } from "./utc-B2gCnkBk.js";
6
- import { useTheme as ht } from "@embeddable.com/react";
6
+ import { useTheme as ft } from "@embeddable.com/react";
7
7
  const j = {
8
8
  ...Q,
9
9
  scales: {
10
10
  x: {
11
11
  title: {
12
12
  display: !0,
13
- color: O("--em-chart-grid-font-color-default"),
13
+ color: v("--em-chart-grid-font-color-default"),
14
14
  font: {
15
- size: f("--em-chart-grid-font-title-size"),
16
- weight: f("--em-chart-grid-font-title-weight"),
15
+ size: h("--em-chart-grid-font-title-size"),
16
+ weight: h("--em-chart-grid-font-title-weight"),
17
17
  // TODO: fix family on dedicated ticket
18
18
  // family: getStyle('--em-chart-grid-font-font-family'),
19
- lineHeight: `${f("--em-chart-grid-font-line-height")}px`
19
+ lineHeight: `${h("--em-chart-grid-font-line-height")}px`
20
20
  }
21
21
  },
22
22
  ticks: {
23
23
  font: {
24
- size: f("--em-chart-grid-font-subtitle-size"),
25
- weight: f("--em-chart-grid-font-label-weight"),
24
+ size: h("--em-chart-grid-font-subtitle-size"),
25
+ weight: h("--em-chart-grid-font-label-weight"),
26
26
  // TODO: fix family on dedicated ticket
27
27
  // family: getStyle('--em-chart-grid-font-font-family'),
28
- lineHeight: `${f("--em-chart-grid-font-line-height")}px`
28
+ lineHeight: `${h("--em-chart-grid-font-line-height")}px`
29
29
  }
30
30
  },
31
31
  grid: {
32
32
  display: !1,
33
- color: O("--em-chart-grid-line-color-light"),
34
- lineWidth: f("--em-chart-grid-line-width-default")
33
+ color: v("--em-chart-grid-line-color-light"),
34
+ lineWidth: h("--em-chart-grid-line-width-default")
35
35
  },
36
36
  border: {
37
37
  display: !1
@@ -40,35 +40,35 @@ const j = {
40
40
  y: {
41
41
  title: {
42
42
  display: !0,
43
- color: O("--em-chart-grid-font-color-default"),
43
+ color: v("--em-chart-grid-font-color-default"),
44
44
  font: {
45
- size: f("--em-chart-grid-font-title-size"),
46
- weight: f("--em-chart-grid-font-title-weight"),
45
+ size: h("--em-chart-grid-font-title-size"),
46
+ weight: h("--em-chart-grid-font-title-weight"),
47
47
  // TODO: fix family on dedicated ticket
48
48
  // family: getStyle('--em-chart-grid-font-font-family'),
49
- lineHeight: `${f("--em-chart-grid-font-line-height")}px`
49
+ lineHeight: `${h("--em-chart-grid-font-line-height")}px`
50
50
  }
51
51
  },
52
52
  ticks: {
53
53
  font: {
54
- size: f("--em-chart-grid-font-subtitle-size"),
55
- weight: f("--em-chart-grid-font-label-weight"),
54
+ size: h("--em-chart-grid-font-subtitle-size"),
55
+ weight: h("--em-chart-grid-font-label-weight"),
56
56
  // TODO: fix family on dedicated ticket
57
57
  // family: getStyle('--em-chart-grid-font-font-family'),
58
- lineHeight: `${f("--em-chart-grid-font-line-height")}px`
58
+ lineHeight: `${h("--em-chart-grid-font-line-height")}px`
59
59
  }
60
60
  },
61
61
  grid: {
62
62
  display: !1,
63
- color: O("--em-chart-grid-line-color-light"),
64
- lineWidth: f("--em-chart-grid-line-width-default")
63
+ color: v("--em-chart-grid-line-color-light"),
64
+ lineWidth: h("--em-chart-grid-line-width-default")
65
65
  },
66
66
  border: {
67
67
  display: !1
68
68
  }
69
69
  }
70
70
  }
71
- }, gt = (t) => {
71
+ }, ht = (t) => {
72
72
  var e;
73
73
  return {
74
74
  ...t,
@@ -78,16 +78,16 @@ const j = {
78
78
  backgroundColor: r,
79
79
  borderColor: r
80
80
  };
81
- return I(s, a);
81
+ return A(s, a);
82
82
  })
83
83
  };
84
84
  }, G = (t, e) => e && t.datasetIndex === t.chart.data.datasets.length - 1 ? "auto" : !1, z = (t, e) => {
85
- const { datasets: a } = e.chart.data, n = e.dataIndex, r = a.reduce((s, o) => {
86
- const i = o.data[n];
87
- return s + (i || 0);
85
+ const { datasets: a } = e.chart.data, n = e.dataIndex, r = a.reduce((s, i) => {
86
+ const l = i.data[n];
87
+ return s + (l || 0);
88
88
  }, 0);
89
89
  return r > 0 ? r : "";
90
- }, pt = (t) => I(j, {
90
+ }, gt = (t) => A(j, {
91
91
  indexAxis: "x",
92
92
  plugins: {
93
93
  datalabels: {
@@ -110,7 +110,7 @@ const j = {
110
110
  stacked: t.stacked,
111
111
  grid: { display: !0 },
112
112
  ticks: {
113
- color: O("--em-chart-grid-font-color-muted")
113
+ color: v("--em-chart-grid-font-color-muted")
114
114
  // ...(config.stacked === 'percentage' && {
115
115
  // callback: (value: number | string) => value + '%',
116
116
  // }),
@@ -126,7 +126,7 @@ const j = {
126
126
  x: {
127
127
  stacked: t.stacked,
128
128
  ticks: {
129
- color: O("--em-chart-grid-font-color-default")
129
+ color: v("--em-chart-grid-font-color-default")
130
130
  },
131
131
  reverse: t.reverseXAxis,
132
132
  title: {
@@ -134,7 +134,7 @@ const j = {
134
134
  }
135
135
  }
136
136
  }
137
- }), Dt = (t) => I(j, {
137
+ }), pt = (t) => A(j, {
138
138
  indexAxis: "y",
139
139
  plugins: {
140
140
  datalabels: {
@@ -157,7 +157,7 @@ const j = {
157
157
  stacked: t.stacked,
158
158
  grid: { display: !0 },
159
159
  ticks: {
160
- color: O("--em-chart-grid-font-color-muted")
160
+ color: v("--em-chart-grid-font-color-muted")
161
161
  // ...(config.stacked === 'percentage' && {
162
162
  // callback: (value: number | string) => value + '%',
163
163
  // }),
@@ -173,7 +173,7 @@ const j = {
173
173
  y: {
174
174
  stacked: t.stacked,
175
175
  ticks: {
176
- color: O("--em-chart-grid-font-color-default")
176
+ color: v("--em-chart-grid-font-color-default")
177
177
  },
178
178
  reverse: t.reverseYAxis,
179
179
  title: {
@@ -181,15 +181,15 @@ const j = {
181
181
  }
182
182
  }
183
183
  }
184
- }), yt = (t) => {
184
+ }), Dt = (t) => {
185
185
  const {
186
186
  horizontal: e = !1,
187
187
  showLegend: a = !1,
188
188
  showTooltips: n = !0,
189
189
  showValueLabels: r = !1,
190
190
  showTotalLabels: s = !1
191
- } = t, i = (e ? Dt : pt)(t);
192
- return I(i, {
191
+ } = t, l = (e ? pt : gt)(t);
192
+ return A(l, {
193
193
  layout: {
194
194
  padding: {
195
195
  // Hack: dataLabels can get cut off if they are at the edge of the chart
@@ -199,14 +199,14 @@ const j = {
199
199
  },
200
200
  elements: {
201
201
  bar: {
202
- borderRadius: f("--em-chart-style-border-radius-default")
202
+ borderRadius: h("--em-chart-style-border-radius-default")
203
203
  // stacked === 'percentage' ? 0 : getStyleNumber('--em-chart-style-border-radius-default'),
204
204
  }
205
205
  },
206
206
  plugins: {
207
207
  legend: { display: a },
208
208
  datalabels: {
209
- display: (c) => r && c.dataset.data[c.dataIndex] !== 0 ? "auto" : !1
209
+ display: (o) => r && o.dataset.data[o.dataIndex] !== 0 ? "auto" : !1
210
210
  },
211
211
  tooltip: {
212
212
  enabled: n
@@ -216,94 +216,113 @@ const j = {
216
216
  };
217
217
  J.register(X, tt, et, at, rt, st, nt);
218
218
  const Lt = ({ data: t, onSegmentClick: e, options: a = {}, ...n }) => {
219
- const r = dt(null), s = I(yt(n), a), o = (i) => {
220
- const c = it(i, r);
221
- e == null || e(c);
219
+ const r = ct(null), s = A(Dt(n), a), i = (l) => {
220
+ const o = it(l, r);
221
+ e == null || e(o);
222
222
  };
223
- return /* @__PURE__ */ N.jsx("div", { className: ot.chartContainer, children: /* @__PURE__ */ N.jsx(
223
+ return /* @__PURE__ */ B.jsx("div", { className: ot.chartContainer, children: /* @__PURE__ */ B.jsx(
224
224
  lt,
225
225
  {
226
226
  ref: r,
227
- data: gt(t),
227
+ data: ht(t),
228
228
  options: s,
229
- onClick: o
229
+ onClick: i
230
230
  }
231
231
  ) });
232
232
  }, Ut = (t, e) => {
233
- const a = Y(e), { data: n = [], dimension: r, groupDimension: s, measure: o } = t, i = [...new Set(n.map((d) => d[r.name]).filter(Boolean))].sort(), c = [...new Set(n.map((d) => d[s.name]))], u = W(e), h = c.map((d, x) => {
234
- const C = H(
235
- `${u}.charts.backgroundColors`,
236
- d,
233
+ const a = N(e), { data: n = [], dimension: r, groupDimension: s, measure: i } = t, l = [...new Set(n.map((u) => u[r.name]).filter(Boolean))].sort(), o = [...new Set(n.map((u) => u[s.name]))], d = W(e), m = o.map((u, T) => {
234
+ const S = H(
235
+ `${d}.charts.backgroundColors`,
236
+ `${s.name}.${u}`,
237
237
  e.charts.backgroundColors ?? R,
238
- x
239
- ), A = H(
240
- `${u}.charts.borderColors`,
241
- d,
238
+ T
239
+ ), C = H(
240
+ `${d}.charts.borderColors`,
241
+ `${s.name}.${u}`,
242
242
  e.charts.borderColors ?? R,
243
- x
243
+ T
244
244
  );
245
245
  return {
246
- label: a.data(s, d),
247
- backgroundColor: C,
248
- borderColor: A,
249
- data: i.map((k) => {
250
- const v = n.find(
251
- (b) => b[s.name] === d && b[r.name] === k
246
+ label: a.data(s, u),
247
+ rawLabel: u,
248
+ backgroundColor: S,
249
+ borderColor: C,
250
+ data: l.map((k) => {
251
+ const w = n.find(
252
+ (O) => O[s.name] === u && O[r.name] === k
252
253
  );
253
- return v ? Number(v[o.name]) : 0;
254
+ return w ? Number(w[i.name]) : 0;
254
255
  })
255
256
  };
256
257
  });
257
258
  return {
258
- labels: i.map((d) => a.data(r, d)),
259
- datasets: h
259
+ labels: l,
260
+ datasets: m
260
261
  };
261
- }, _t = (t, e = mt) => {
262
- const a = Y(e);
262
+ }, _t = (t, e = ut) => {
263
+ const a = N(e);
263
264
  if (!t.data)
264
265
  return {
265
266
  labels: [],
266
267
  datasets: [{ data: [] }]
267
268
  };
268
- const n = W(e), r = ft(t.data, t.dimension, t.measures, t.maxItems);
269
+ const n = W(e), r = mt(t.data, t.dimension, t.measures, t.maxItems);
269
270
  return {
270
- labels: r.map((s) => {
271
- const o = s[t.dimension.name], i = a.data(t.dimension, o);
272
- return o === i ? ct.t(o) : i;
273
- }),
274
- datasets: t.measures.map((s, o) => {
275
- const i = H(
271
+ labels: r.map((s) => s[t.dimension.name]),
272
+ datasets: t.measures.map((s, i) => {
273
+ const l = H(
276
274
  `${n}.charts.backgroundColors`,
277
275
  s.name,
278
276
  e.charts.backgroundColors ?? L,
279
- o
280
- ), c = H(
277
+ i
278
+ ), o = H(
281
279
  `${n}.charts.borderColors`,
282
280
  s.name,
283
281
  e.charts.borderColors ?? L,
284
- o
282
+ i
285
283
  );
286
284
  return {
287
285
  label: a.dimensionOrMeasureTitle(s),
288
- data: r.map((u) => u[s.name]),
289
- backgroundColor: i,
290
- borderColor: c
286
+ data: r.map((d) => d[s.name]),
287
+ backgroundColor: l,
288
+ borderColor: o
291
289
  };
292
290
  })
293
291
  };
294
- }, Ft = (t, e) => {
295
- const { onBarClicked: a, measure: n, horizontal: r } = t, s = Y(e);
292
+ }, bt = (t, e) => {
293
+ const { datasets: a } = t.chart.data, n = t.dataIndex, r = a.reduce((s, i) => {
294
+ const l = i.data[n];
295
+ return s + (l || 0);
296
+ }, 0);
297
+ return e(r);
298
+ }, $t = (t, e) => {
299
+ const { onBarClicked: a, measure: n, dimension: r, horizontal: s, data: i } = t, l = N(e);
296
300
  return {
297
301
  plugins: {
298
302
  legend: { position: e.charts.legendPosition ?? "bottom" },
299
303
  datalabels: {
300
- formatter: (o) => s.data(t.measure, o)
304
+ labels: {
305
+ total: {
306
+ formatter: (o, d) => bt(
307
+ d,
308
+ (m) => l.data(t.measure, m)
309
+ )
310
+ },
311
+ value: {
312
+ formatter: (o) => l.data(t.measure, o)
313
+ }
314
+ }
301
315
  },
302
316
  tooltip: {
303
317
  callbacks: {
304
- label(o) {
305
- const i = o.raw;
306
- return `${o.dataset.label || ""}: ${s.data(n, i)}`;
318
+ title: (o) => {
319
+ var m;
320
+ const d = (m = o[0]) == null ? void 0 : m.label;
321
+ return l.data(r, d);
322
+ },
323
+ label: (o) => {
324
+ const d = o.raw;
325
+ return `${l.data(r, o.dataset.label) || ""}: ${l.data(n, d)}`;
307
326
  }
308
327
  }
309
328
  }
@@ -311,28 +330,37 @@ const Lt = ({ data: t, onSegmentClick: e, options: a = {}, ...n }) => {
311
330
  scales: {
312
331
  x: {
313
332
  ticks: {
314
- ...r && {
315
- callback: (o) => s.data(n, o)
333
+ callback: (o) => {
334
+ if (s)
335
+ return l.data(n, o);
336
+ if (!i || !i.labels) return;
337
+ const d = i.labels[Number(o)];
338
+ return l.data(r, d);
316
339
  }
317
340
  }
318
341
  },
319
342
  y: {
320
343
  ticks: {
321
- ...!r && {
322
- callback: (o) => s.data(n, o)
344
+ callback: (o) => {
345
+ if (!s)
346
+ return l.data(n, o);
347
+ if (!i || !i.labels) return;
348
+ const d = i.labels[Number(o)];
349
+ return l.data(r, d);
323
350
  }
324
351
  }
325
352
  }
326
353
  },
327
- onClick: (o, i, c) => {
328
- const u = i[0], h = u ? c.data.labels[u.index] : null, d = u ? c.data.datasets[u.datasetIndex].label : null;
354
+ onClick: (o, d, m) => {
355
+ var C;
356
+ const u = d[0], T = u ? m.data.labels[u.index] : null, S = u ? (C = m.data.datasets[u.datasetIndex]) == null ? void 0 : C.rawLabel : null;
329
357
  a({
330
- axisDimensionValue: h,
331
- groupingDimensionValue: d
358
+ axisDimensionValue: T,
359
+ groupingDimensionValue: S
332
360
  });
333
361
  }
334
362
  };
335
- }, T = {
363
+ }, y = {
336
364
  DEFAULT: "YYYY-MM-DDTHH:mm:ss.SSS",
337
365
  WITH_TIMEZONE: "YYYY-MM-DDTHH:mm:ss.SSS[Z]",
338
366
  WITHOUT_TIMEZONE: "YYYY-MM-DDTHH:mm:ss.SSS",
@@ -347,7 +375,7 @@ const Lt = ({ data: t, onSegmentClick: e, options: a = {}, ...n }) => {
347
375
  quarter: "month",
348
376
  // Will be handled specially
349
377
  year: "year"
350
- }, Tt = (t) => `${t.getFullYear()}-${String(t.getMonth() + 1).padStart(2, "0")}-${String(t.getDate()).padStart(2, "0")}`, bt = (t) => `${t.getUTCFullYear()}-${String(t.getUTCMonth() + 1).padStart(2, "0")}-${String(t.getUTCDate()).padStart(2, "0")}`, St = (t) => t.toISOString().includes("Z"), _ = (t) => St(t) ? bt(t) : Tt(t), Ot = (t) => t.startOf("month").month(Math.floor(t.month() / 3) * 3).startOf("month"), F = (t, e) => {
378
+ }, yt = (t) => `${t.getFullYear()}-${String(t.getMonth() + 1).padStart(2, "0")}-${String(t.getDate()).padStart(2, "0")}`, Tt = (t) => `${t.getUTCFullYear()}-${String(t.getUTCMonth() + 1).padStart(2, "0")}-${String(t.getUTCDate()).padStart(2, "0")}`, St = (t) => t.toISOString().includes("Z"), _ = (t) => St(t) ? Tt(t) : yt(t), Ot = (t) => t.startOf("month").month(Math.floor(t.month() / 3) * 3).startOf("month"), $ = (t, e) => {
351
379
  const a = K(e);
352
380
  return e === "week" ? t.startOf("week") : e === "quarter" ? Ot(t) : t.startOf(a);
353
381
  }, xt = (t, e) => {
@@ -358,125 +386,125 @@ const Lt = ({ data: t, onSegmentClick: e, options: a = {}, ...n }) => {
358
386
  return a;
359
387
  const n = a.relativeTimeString;
360
388
  if (n) {
361
- const i = (((s = e == null ? void 0 : e.defaults) == null ? void 0 : s.dateRangesOptions) ?? []).find((c) => c.value === n);
362
- if (i) {
363
- const c = i.getRange();
389
+ const l = (((s = e == null ? void 0 : e.defaults) == null ? void 0 : s.dateRangesOptions) ?? []).find((o) => o.value === n);
390
+ if (l) {
391
+ const o = l.getRange();
364
392
  return {
365
- from: c.from,
366
- to: c.to,
393
+ from: o.from,
394
+ to: o.to,
367
395
  relativeTimeString: n
368
396
  };
369
397
  }
370
398
  }
371
- }, Ct = (t, e) => {
372
- const { dimension: a, granularity: n = "day", sortOrder: r = "asc", dateBounds: s, theme: o } = e, i = s || xt(a, o);
399
+ }, vt = (t, e) => {
400
+ const { dimension: a, granularity: n = "day", sortOrder: r = "asc", dateBounds: s, theme: i } = e, l = s || xt(a, i);
373
401
  if (!t || t.length === 0)
374
402
  return t;
375
403
  if (!(a != null && a.name))
376
404
  throw new Error("dimension.name is required");
377
- const c = kt(a.name, n, t), u = t.map((l) => {
378
- const m = l[c];
379
- if (typeof m != "string")
405
+ const o = Ct(a.name, n, t), d = t.map((c) => {
406
+ const f = c[o];
407
+ if (typeof f != "string")
380
408
  return null;
381
- const g = D(m);
382
- return g.isValid() ? { ...l, _parsedDate: g } : null;
409
+ const g = D(f);
410
+ return g.isValid() ? { ...c, _parsedDate: g } : null;
383
411
  }).filter(
384
- (l) => l !== null
412
+ (c) => c !== null
385
413
  );
386
- if (u.length === 0)
414
+ if (d.length === 0)
387
415
  return console.warn("fillGaps: No valid dates found in data"), t;
388
- let h, d;
389
- if (i) {
390
- const l = i.from instanceof Date ? i.from : new Date(i.from), m = i.to instanceof Date ? i.to : new Date(i.to);
416
+ let m, u;
417
+ if (l) {
418
+ const c = l.from instanceof Date ? l.from : new Date(l.from), f = l.to instanceof Date ? l.to : new Date(l.to);
391
419
  if (n === "second" || n === "minute" || n === "hour")
392
- h = D(l), d = D(m);
420
+ m = D(c), u = D(f);
393
421
  else {
394
- const g = _(l), p = _(m);
395
- h = D(g), d = D(p);
422
+ const g = _(c), p = _(f);
423
+ m = D(g), u = D(p);
396
424
  }
397
- h = F(h, n), d = F(d, n);
425
+ m = $(m, n), u = $(u, n);
398
426
  } else {
399
- const l = u[0];
400
- if (!l)
427
+ const c = d[0];
428
+ if (!c)
401
429
  return t;
402
- let m = l._parsedDate, g = l._parsedDate;
403
- for (let p = 1; p < u.length; p++) {
404
- const w = u[p];
405
- if (w) {
406
- const S = w._parsedDate;
407
- S.isBefore(m) && (m = S), S.isAfter(g) && (g = S);
430
+ let f = c._parsedDate, g = c._parsedDate;
431
+ for (let p = 1; p < d.length; p++) {
432
+ const M = d[p];
433
+ if (M) {
434
+ const x = M._parsedDate;
435
+ x.isBefore(f) && (f = x), x.isAfter(g) && (g = x);
408
436
  }
409
437
  }
410
- h = m, d = g;
438
+ m = f, u = g;
411
439
  }
412
- const x = [], C = K(n), A = h.startOf(C), k = d.startOf(C);
440
+ const T = [], S = K(n), C = m.startOf(S), k = u.startOf(S);
413
441
  if (n === "week") {
414
- let l = A;
415
- for (; l.isBefore(k) || l.isSame(k, "day"); )
416
- x.push(l), l = l.add(7, "day");
442
+ let c = C;
443
+ for (; c.isBefore(k) || c.isSame(k, "day"); )
444
+ T.push(c), c = c.add(7, "day");
417
445
  } else {
418
- let l = A;
419
- for (; l.isBefore(k) || l.isSame(k, C); )
420
- x.push(l), n === "quarter" ? l = l.add(3, "month") : l = l.add(1, C);
446
+ let c = C;
447
+ for (; c.isBefore(k) || c.isSame(k, S); )
448
+ T.push(c), n === "quarter" ? c = c.add(3, "month") : c = c.add(1, S);
421
449
  }
422
- const v = /* @__PURE__ */ new Map();
423
- u.forEach((l) => {
424
- const m = $(l._parsedDate);
425
- v.set(m, l);
450
+ const w = /* @__PURE__ */ new Map();
451
+ d.forEach((c) => {
452
+ const f = F(c._parsedDate);
453
+ w.set(f, c);
426
454
  });
427
- const b = [];
428
- return x.forEach((l) => {
429
- const m = $(l), g = v.get(m);
455
+ const O = [];
456
+ return T.forEach((c) => {
457
+ const f = F(c), g = w.get(f);
430
458
  if (g) {
431
459
  const p = { ...g };
432
- delete p._parsedDate, b.push(p);
460
+ delete p._parsedDate, O.push(p);
433
461
  } else {
434
- const p = vt(t), w = wt(l, p), S = {
435
- [c]: w
436
- }, P = a.name, B = t[0];
437
- if (B)
438
- for (const M of Object.keys(B))
439
- M !== c && (M.startsWith(P) && M !== c ? S[M] = w : S[M] = null);
440
- b.push(S);
462
+ const p = kt(t), M = wt(c, p), x = {
463
+ [o]: M
464
+ }, V = a.name, Y = t[0];
465
+ if (Y)
466
+ for (const E of Object.keys(Y))
467
+ E !== o && (E.startsWith(V) && E !== o ? x[E] = M : x[E] = null);
468
+ O.push(x);
441
469
  }
442
- }), r === "desc" ? b.sort(
443
- (l, m) => D(m[c]).valueOf() - D(l[c]).valueOf()
444
- ) : b.sort(
445
- (l, m) => D(l[c]).valueOf() - D(m[c]).valueOf()
446
- ), b;
447
- }, $ = (t) => t.format("YYYY-MM-DDTHH:mm:ss"), kt = (t, e, a) => {
470
+ }), r === "desc" ? O.sort(
471
+ (c, f) => D(f[o]).valueOf() - D(c[o]).valueOf()
472
+ ) : O.sort(
473
+ (c, f) => D(c[o]).valueOf() - D(f[o]).valueOf()
474
+ ), O;
475
+ }, F = (t) => t.format("YYYY-MM-DDTHH:mm:ss"), Ct = (t, e, a) => {
448
476
  if (!a || a.length === 0) return t;
449
477
  const n = a[0];
450
478
  if (!n) return t;
451
479
  const r = `${t}.${e}`;
452
480
  return r in n ? r : t;
453
- }, vt = (t) => {
454
- if (!(t != null && t.length)) return T.DEFAULT;
481
+ }, kt = (t) => {
482
+ if (!(t != null && t.length)) return y.DEFAULT;
455
483
  const e = t[0];
456
- if (!e) return T.DEFAULT;
484
+ if (!e) return y.DEFAULT;
457
485
  for (const a of Object.values(e))
458
486
  if (typeof a == "string" && a.includes("T") && a.includes(":"))
459
- return a.endsWith("Z") ? T.WITH_TIMEZONE : a.includes(".") ? T.WITHOUT_TIMEZONE : T.WITHOUT_MILLISECONDS;
460
- return T.DEFAULT;
461
- }, wt = (t, e) => e.includes("[Z]") ? t.format(T.WITH_TIMEZONE) : e.includes(".SSS") ? t.format(T.WITHOUT_TIMEZONE) : t.format(T.WITHOUT_MILLISECONDS), K = (t) => U[t] || U.day, $t = (t, e) => {
462
- const a = ht(), n = ut(() => {
463
- var u, h;
487
+ return a.endsWith("Z") ? y.WITH_TIMEZONE : a.includes(".") ? y.WITHOUT_TIMEZONE : y.WITHOUT_MILLISECONDS;
488
+ return y.DEFAULT;
489
+ }, wt = (t, e) => e.includes("[Z]") ? t.format(y.WITH_TIMEZONE) : e.includes(".SSS") ? t.format(y.WITHOUT_TIMEZONE) : t.format(y.WITHOUT_MILLISECONDS), K = (t) => U[t] || U.day, Ft = (t, e) => {
490
+ const a = ft(), n = dt(() => {
491
+ var d, m;
464
492
  const r = t.data;
465
493
  if (e.nativeType !== "time" || !r || r.length === 0)
466
494
  return r;
467
- const s = ((u = e.inputs) == null ? void 0 : u.granularity) || Et(r, e);
468
- if (!s || !(((h = e.inputs) == null ? void 0 : h.dateBounds) ?? Mt(r, e, s)))
495
+ const s = ((d = e.inputs) == null ? void 0 : d.granularity) || Et(r, e);
496
+ if (!s || !(((m = e.inputs) == null ? void 0 : m.dateBounds) ?? Mt(r, e, s)))
469
497
  return r;
470
- const c = {
498
+ const o = {
471
499
  dimension: e,
472
500
  granularity: s,
473
501
  sortOrder: "asc",
474
502
  theme: a
475
503
  };
476
504
  try {
477
- return Ct(r, c);
478
- } catch (d) {
479
- return console.warn("Failed to apply fillGaps to chart data:", d), r;
505
+ return vt(r, o);
506
+ } catch (u) {
507
+ return console.warn("Failed to apply fillGaps to chart data:", u), r;
480
508
  }
481
509
  }, [t.data, e, a]);
482
510
  return {
@@ -486,13 +514,13 @@ const Lt = ({ data: t, onSegmentClick: e, options: a = {}, ...n }) => {
486
514
  }, Mt = (t, e, a) => {
487
515
  if (!t || t.length < 2)
488
516
  return !1;
489
- const n = e.name, r = t.map((o) => o[n]).filter(Boolean).map((o) => new Date(o)).filter((o) => !isNaN(o.getTime())).sort((o, i) => o.getTime() - i.getTime());
517
+ const n = e.name, r = t.map((i) => i[n]).filter(Boolean).map((i) => new Date(i)).filter((i) => !isNaN(i.getTime())).sort((i, l) => i.getTime() - l.getTime());
490
518
  if (r.length < 2)
491
519
  return !1;
492
520
  const s = It(a);
493
- for (let o = 1; o < r.length; o++) {
494
- const i = r[o], c = r[o - 1];
495
- if (i && c && i.getTime() - c.getTime() > s * 1.5)
521
+ for (let i = 1; i < r.length; i++) {
522
+ const l = r[i], o = r[i - 1];
523
+ if (l && o && l.getTime() - o.getTime() > s * 1.5)
496
524
  return !0;
497
525
  }
498
526
  return !1;
@@ -514,45 +542,45 @@ const Lt = ({ data: t, onSegmentClick: e, options: a = {}, ...n }) => {
514
542
  if (s.includes(".year")) return "year";
515
543
  }
516
544
  return null;
517
- }, Z = 1e3, q = 60 * Z, V = 60 * q, E = 24 * V, y = {
545
+ }, Z = 1e3, q = 60 * Z, P = 60 * q, I = 24 * P, b = {
518
546
  SECOND: Z,
519
547
  MINUTE: q,
520
- HOUR: V,
521
- DAY: E,
522
- WEEK: 7 * E,
523
- MONTH: 30 * E,
548
+ HOUR: P,
549
+ DAY: I,
550
+ WEEK: 7 * I,
551
+ MONTH: 30 * I,
524
552
  // Approximate
525
- QUARTER: 90 * E,
553
+ QUARTER: 90 * I,
526
554
  // Approximate
527
- YEAR: 365 * E
555
+ YEAR: 365 * I
528
556
  // Approximate
529
557
  }, It = (t) => {
530
558
  switch (t) {
531
559
  case "second":
532
- return y.SECOND;
560
+ return b.SECOND;
533
561
  case "minute":
534
- return y.MINUTE;
562
+ return b.MINUTE;
535
563
  case "hour":
536
- return y.HOUR;
564
+ return b.HOUR;
537
565
  case "day":
538
- return y.DAY;
566
+ return b.DAY;
539
567
  case "week":
540
- return y.WEEK;
568
+ return b.WEEK;
541
569
  case "month":
542
- return y.MONTH;
570
+ return b.MONTH;
543
571
  case "quarter":
544
- return y.QUARTER;
572
+ return b.QUARTER;
545
573
  case "year":
546
- return y.YEAR;
574
+ return b.YEAR;
547
575
  default:
548
- return y.DAY;
576
+ return b.DAY;
549
577
  }
550
578
  };
551
579
  export {
552
580
  Lt as B,
553
- Ft as a,
581
+ $t as a,
554
582
  Ut as b,
555
583
  _t as g,
556
- $t as u
584
+ Ft as u
557
585
  };
558
- //# sourceMappingURL=charts.fillGaps.hooks-BFmuMVNT.js.map
586
+ //# sourceMappingURL=charts.fillGaps.hooks-BwlVpKVy.js.map