-
+
{serie.event.id}
- {serie.name || serie.event.displayName || serie.event.name}
+
+ {serie.name || serie.event.displayName || serie.event.name}
+
-
+ {/*
*/}
-
- {number.format(serie.metrics[metric])}
- {unit &&
{unit}}
+
+ {renderValue(serie.metrics[metric], 'ml-1 font-light text-xl')}
- {!!serie.metrics.previous[metric] && (
-
- {number.format(serie.metrics.previous[metric]?.value)}
- {unit}
-
- )}
+
diff --git a/apps/web/src/components/report/chart/ReportAreaChart.tsx b/apps/web/src/components/report/chart/ReportAreaChart.tsx
index 64a6b188..8d88b55a 100644
--- a/apps/web/src/components/report/chart/ReportAreaChart.tsx
+++ b/apps/web/src/components/report/chart/ReportAreaChart.tsx
@@ -1,10 +1,9 @@
import React from 'react';
import type { IChartData } from '@/app/_trpc/client';
-import { AutoSizer } from '@/components/AutoSizer';
import { useFormatDateInterval } from '@/hooks/useFormatDateInterval';
+import { useNumber } from '@/hooks/useNumerFormatter';
import { useRechartDataModel } from '@/hooks/useRechartDataModel';
import { useVisibleSeries } from '@/hooks/useVisibleSeries';
-import { cn } from '@/utils/cn';
import { getChartColor } from '@/utils/theme';
import {
Area,
@@ -38,6 +37,7 @@ export function ReportAreaChart({
const { series, setVisibleSeries } = useVisibleSeries(data);
const formatDate = useFormatDateInterval(interval);
const rechartData = useRechartDataModel(series);
+ const number = useNumber();
return (
<>
@@ -59,6 +59,7 @@ export function ReportAreaChart({
axisLine={false}
tickLine={false}
allowDecimals={false}
+ tickFormatter={number.short}
/>
{series.map((serie) => {
diff --git a/apps/web/src/components/report/chart/ReportHistogramChart.tsx b/apps/web/src/components/report/chart/ReportHistogramChart.tsx
index 402a6bbb..969b07e0 100644
--- a/apps/web/src/components/report/chart/ReportHistogramChart.tsx
+++ b/apps/web/src/components/report/chart/ReportHistogramChart.tsx
@@ -1,10 +1,9 @@
import React from 'react';
import type { IChartData } from '@/app/_trpc/client';
-import { AutoSizer } from '@/components/AutoSizer';
import { useFormatDateInterval } from '@/hooks/useFormatDateInterval';
+import { useNumber } from '@/hooks/useNumerFormatter';
import { useRechartDataModel } from '@/hooks/useRechartDataModel';
import { useVisibleSeries } from '@/hooks/useVisibleSeries';
-import { cn } from '@/utils/cn';
import { getChartColor, theme } from '@/utils/theme';
import { Bar, BarChart, CartesianGrid, Tooltip, XAxis, YAxis } from 'recharts';
@@ -40,8 +39,8 @@ export function ReportHistogramChart({
const { editMode, previous } = useChartContext();
const formatDate = useFormatDateInterval(interval);
const { series, setVisibleSeries } = useVisibleSeries(data);
-
const rechartData = useRechartDataModel(series);
+ const number = useNumber();
return (
<>
@@ -64,6 +63,7 @@ export function ReportHistogramChart({
width={getYAxisWidth(data.metrics.max)}
allowDecimals={false}
domain={[0, data.metrics.max]}
+ tickFormatter={number.short}
/>
{series.map((serie) => {
return (
diff --git a/apps/web/src/components/report/chart/ReportLineChart.tsx b/apps/web/src/components/report/chart/ReportLineChart.tsx
index 4284f983..d6559e59 100644
--- a/apps/web/src/components/report/chart/ReportLineChart.tsx
+++ b/apps/web/src/components/report/chart/ReportLineChart.tsx
@@ -2,11 +2,10 @@
import React from 'react';
import type { IChartData } from '@/app/_trpc/client';
-import { AutoSizer } from '@/components/AutoSizer';
import { useFormatDateInterval } from '@/hooks/useFormatDateInterval';
+import { useNumber } from '@/hooks/useNumerFormatter';
import { useRechartDataModel } from '@/hooks/useRechartDataModel';
import { useVisibleSeries } from '@/hooks/useVisibleSeries';
-import { cn } from '@/utils/cn';
import { getChartColor } from '@/utils/theme';
import {
CartesianGrid,
@@ -40,7 +39,7 @@ export function ReportLineChart({
const formatDate = useFormatDateInterval(interval);
const { series, setVisibleSeries } = useVisibleSeries(data);
const rechartData = useRechartDataModel(series);
-
+ const number = useNumber();
return (
<>
@@ -57,6 +56,7 @@ export function ReportLineChart({
axisLine={false}
tickLine={false}
allowDecimals={false}
+ tickFormatter={number.short}
/>
} />
{
+ if (isNil(value)) {
+ return 'N/A';
+ }
+ return new Intl.NumberFormat(locale, {
+ maximumSignificantDigits: 20,
+ }).format(value);
+ };
+ const short = (value: number | null | undefined) => {
+ if (isNil(value)) {
+ return 'N/A';
+ }
+ return new Intl.NumberFormat(locale, {
+ notation: 'compact',
+ }).format(value);
+ };
+
return {
- format: (value: number | null | undefined) => {
- if (isNil(value)) {
- return 'N/A';
- }
- return new Intl.NumberFormat(locale, {
- maximumSignificantDigits: 20,
- }).format(value);
- },
+ format,
+ short,
};
}