mirror of
https://github.com/SigNoz/signoz.git
synced 2025-12-22 18:06:35 +00:00
* feat: show range bound chart based on the selected time range * feat: handle no data * feat: show bigger point if only data point exists * feat: show bigger point if only data point exists * feat: widget ui fixes * feat: no data - full view fix * fix: show closed point on hover * feat: handle widget time preference in case of dashboard, edit view, full view and chart preview
37 lines
1008 B
TypeScript
37 lines
1008 B
TypeScript
import getStartEndRangeTime from 'lib/getStartEndRangeTime';
|
|
import { UseQueryResult } from 'react-query';
|
|
import store from 'store';
|
|
import { SuccessResponse } from 'types/api';
|
|
import {
|
|
MetricRangePayloadProps,
|
|
QueryRangePayload,
|
|
} from 'types/api/metrics/getQueryRange';
|
|
|
|
export const getTimeRange = (
|
|
widgetQueryRange?: UseQueryResult<
|
|
SuccessResponse<MetricRangePayloadProps, unknown>,
|
|
Error
|
|
>,
|
|
): Record<string, number> => {
|
|
const widgetParams =
|
|
(widgetQueryRange?.data?.params as QueryRangePayload) || null;
|
|
|
|
if (widgetParams && widgetParams?.start && widgetParams?.end) {
|
|
return {
|
|
startTime: widgetParams.start / 1000,
|
|
endTime: widgetParams.end / 1000,
|
|
};
|
|
}
|
|
const { globalTime } = store.getState();
|
|
|
|
const { start: globalStartTime, end: globalEndTime } = getStartEndRangeTime({
|
|
type: 'GLOBAL_TIME',
|
|
interval: globalTime.selectedTime,
|
|
});
|
|
|
|
return {
|
|
startTime: (parseInt(globalStartTime, 10) * 1e3) / 1000,
|
|
endTime: (parseInt(globalEndTime, 10) * 1e3) / 1000,
|
|
};
|
|
};
|