1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-09-28 17:55:15 +02:00
unleash.unleash/frontend/src/component/feature/FeatureView/FeatureMetrics/FeatureMetricsHours/FeatureMetricsHours.tsx
Ivar Conradi Østhus 670b97dede
fix: set suggested min value to 0 (#2363)
This PR does one thing, it sets the y-axis to start at "0" when showing
request counts over time.


![image](https://user-images.githubusercontent.com/158948/200946347-b3e803c6-6ace-4ecc-b5cf-aa92a5505331.png)

fixes #2107
2022-11-09 21:43:13 +00:00

58 lines
1.3 KiB
TypeScript

import GeneralSelect, {
IGeneralSelectProps,
} from 'component/common/GeneralSelect/GeneralSelect';
interface IFeatureMetricsHoursProps {
hoursBack: number;
setHoursBack: (value: number) => void;
}
export const FEATURE_METRIC_HOURS_BACK_MAX = 48;
export const FeatureMetricsHours = ({
hoursBack,
setHoursBack,
}: IFeatureMetricsHoursProps) => {
const onChange: IGeneralSelectProps['onChange'] = key => {
setHoursBack(parseFeatureMetricsHour(key));
};
return (
<GeneralSelect
label="Period"
name="feature-metrics-period"
id="feature-metrics-period"
options={hourOptions}
value={String(hoursBack)}
onChange={onChange}
fullWidth
/>
);
};
const parseFeatureMetricsHour = (value: unknown) => {
switch (value) {
case '1':
return 2;
case '24':
return 24;
default:
return FEATURE_METRIC_HOURS_BACK_MAX;
}
};
const hourOptions: { key: `${number}`; label: string }[] = [
{
key: '1',
label: 'Last hour',
},
{
key: '24',
label: 'Last 24 hours',
},
{
key: `${FEATURE_METRIC_HOURS_BACK_MAX}`,
label: `Last ${FEATURE_METRIC_HOURS_BACK_MAX} hours`,
},
];