From e0a7002a291dd363ac54574eb13c99fa4b482c95 Mon Sep 17 00:00:00 2001 From: Sonia Manoubi Date: Fri, 4 Feb 2022 15:49:09 +0100 Subject: [PATCH] fix: api call on apply button --- frontend/src/container/NewWidget/index.tsx | 28 +++++++++++++--------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/frontend/src/container/NewWidget/index.tsx b/frontend/src/container/NewWidget/index.tsx index f2067c1bd0..832aec9f4b 100644 --- a/frontend/src/container/NewWidget/index.tsx +++ b/frontend/src/container/NewWidget/index.tsx @@ -17,6 +17,7 @@ import { SaveDashboard, SaveDashboardProps, } from 'store/actions/dashboard/saveDashboard'; +import { UpdateQuery, UpdateQueryProps } from 'store/actions/dashboard/updateQuery'; import { AppState } from 'store/reducers'; import AppActions from 'types/actions'; import { GlobalTime } from 'types/actions/globalTime'; @@ -39,6 +40,7 @@ const NewWidget = ({ applySettingsToPanel, saveSettingOfPanel, getQueryResults, + updateQuery }: Props): JSX.Element => { const { dashboards } = useSelector( (state) => state.dashboards, @@ -120,7 +122,16 @@ const NewWidget = ({ dashboardId, ]); - const onClickApplyHandler = useCallback(() => { + const onClickApplyHandler = () => { + selectedWidget?.query.forEach((element, index) => { + updateQuery({ + widgetId: selectedWidget?.id || '', + query: element.query || '', + legend: element.legend || '', + currentIndex: index + }); + }) + applySettingsToPanel({ description, isStacked: stacked, @@ -130,16 +141,7 @@ const NewWidget = ({ title, widgetId: selectedWidget?.id || '', }); - }, [ - applySettingsToPanel, - description, - opacity, - selectedTime, - selectedWidget?.id, - selectedNullZeroValue, - stacked, - title, - ]); + } const onClickDiscardHandler = useCallback(() => { push(generatePath(ROUTES.DASHBOARD, { dashboardId })); @@ -220,6 +222,9 @@ interface DispatchProps { getQueryResults: ( props: GetQueryResultsProps, ) => (dispatch: Dispatch) => void; + updateQuery: ( + props: UpdateQueryProps, + ) => (dispatch: Dispatch) => void; } const mapDispatchToProps = ( @@ -228,6 +233,7 @@ const mapDispatchToProps = ( applySettingsToPanel: bindActionCreators(ApplySettingsToPanel, dispatch), saveSettingOfPanel: bindActionCreators(SaveDashboard, dispatch), getQueryResults: bindActionCreators(GetQueryResults, dispatch), + updateQuery: bindActionCreators(UpdateQuery, dispatch) }); type Props = DispatchProps & NewWidgetProps;