From b8213e340b35886834b8b3d92e1051066edc42e4 Mon Sep 17 00:00:00 2001 From: "Michael S. Molina" Date: Fri, 18 Aug 2023 10:04:33 -0300 Subject: [PATCH 1/2] chore: Pass the dashboard id when requesting filter values --- .../src/components/Chart/chartAction.js | 19 ++++++------------- .../FilterBar/FilterControls/FilterValue.tsx | 5 ++++- .../FiltersConfigForm/FiltersConfigForm.tsx | 6 ++++-- .../components/nativeFilters/utils.ts | 3 +++ 4 files changed, 17 insertions(+), 16 deletions(-) diff --git a/superset-frontend/src/components/Chart/chartAction.js b/superset-frontend/src/components/Chart/chartAction.js index 7b4b70377b205..e9170e60dddbc 100644 --- a/superset-frontend/src/components/Chart/chartAction.js +++ b/superset-frontend/src/components/Chart/chartAction.js @@ -212,21 +212,14 @@ export async function getChartDataRequest({ resultType = 'full', force = false, method = 'POST', - requestParams = {}, ownState = {}, }) { - let querySettings = { - ...requestParams, - }; - - if (domainShardingEnabled) { - querySettings = { - ...querySettings, - mode: 'cors', - credentials: 'include', - }; - } - + const querySettings = domainShardingEnabled + ? { + mode: 'cors', + credentials: 'include', + } + : {}; const [useLegacyApi, parseMethod] = getQuerySettings(formData); if (useLegacyApi) { return legacyChartDataRequest( diff --git a/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/FilterValue.tsx b/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/FilterValue.tsx index b64f1bc8d9330..5235edcdc353d 100644 --- a/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/FilterValue.tsx +++ b/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/FilterValue.tsx @@ -101,6 +101,9 @@ const FilterValue: React.FC = ({ const dependencies = useFilterDependencies(id, dataMaskSelected); const shouldRefresh = useShouldFilterRefresh(); const [state, setState] = useState([]); + const dashboardId = useSelector( + state => state.dashboardInfo.id, + ); const [error, setError] = useState(); const [formData, setFormData] = useState>({ inView: false, @@ -146,6 +149,7 @@ const FilterValue: React.FC = ({ groupby, adhoc_filters, time_range, + dashboardId, }); const filterOwnState = filter.dataMask?.ownState || {}; // TODO: We should try to improve our useEffect hooks to depend more on @@ -170,7 +174,6 @@ const FilterValue: React.FC = ({ getChartDataRequest({ formData: newFormData, force: false, - requestParams: { dashboardId: 0 }, ownState: filterOwnState, }) .then(({ response, json }) => { diff --git a/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx b/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx index dcfbf3d43d2ff..94b336af92d1a 100644 --- a/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx +++ b/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx @@ -354,7 +354,9 @@ const FiltersConfigForm = ( const [activeTabKey, setActiveTabKey] = useState( FilterTabs.configuration.key, ); - + const dashboardId = useSelector( + state => state.dashboardInfo.id, + ); const [undoFormValues, setUndoFormValues] = useState { if (isFeatureEnabled(FeatureFlag.GLOBAL_ASYNC_QUERIES)) { diff --git a/superset-frontend/src/dashboard/components/nativeFilters/utils.ts b/superset-frontend/src/dashboard/components/nativeFilters/utils.ts index 7086ac8512a0b..b4284a8a63d1c 100644 --- a/superset-frontend/src/dashboard/components/nativeFilters/utils.ts +++ b/superset-frontend/src/dashboard/components/nativeFilters/utils.ts @@ -54,7 +54,9 @@ export const getFormData = ({ time_range, granularity_sqla, type, + dashboardId, }: Partial & { + dashboardId: number; datasetId?: number; dependencies?: object; groupby?: string; @@ -91,6 +93,7 @@ export const getFormData = ({ inView: true, viz_type: filterType, type, + dashboardId, }; }; From bde9f41c1528817d2203974f2ab39086bf06fe29 Mon Sep 17 00:00:00 2001 From: "Michael S. Molina" Date: Fri, 18 Aug 2023 11:58:04 -0300 Subject: [PATCH 2/2] Reverts getChartDataRequest change --- .../src/components/Chart/chartAction.js | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/superset-frontend/src/components/Chart/chartAction.js b/superset-frontend/src/components/Chart/chartAction.js index e9170e60dddbc..d1dcfd3a001ba 100644 --- a/superset-frontend/src/components/Chart/chartAction.js +++ b/superset-frontend/src/components/Chart/chartAction.js @@ -212,14 +212,20 @@ export async function getChartDataRequest({ resultType = 'full', force = false, method = 'POST', + requestParams = {}, ownState = {}, }) { - const querySettings = domainShardingEnabled - ? { - mode: 'cors', - credentials: 'include', - } - : {}; + let querySettings = { + ...requestParams, + }; + + if (domainShardingEnabled) { + querySettings = { + ...querySettings, + mode: 'cors', + credentials: 'include', + }; + } const [useLegacyApi, parseMethod] = getQuerySettings(formData); if (useLegacyApi) { return legacyChartDataRequest(