This is an automated email from the ASF dual-hosted git repository.
graceguo pushed a commit to branch feature--dashboard-scoped-filter
in repository https://gitbox.apache.org/repos/asf/incubator-superset.git
The following commit(s) were added to
refs/heads/feature--dashboard-scoped-filter by this push:
new 9b34327 force show filter_box as unchecked (#8587)
9b34327 is described below
commit 9b34327fcbbbdd8d87239f9d9f6df0bb1f06e947
Author: Grace Guo <[email protected]>
AuthorDate: Fri Nov 15 14:05:09 2019 -0800
force show filter_box as unchecked (#8587)
---
.../components/filterscope/FilterScopeSelector.jsx | 10 ++++++----
.../src/dashboard/util/getRevertedFilterScope.js | 19 +++++++++++++------
2 files changed, 19 insertions(+), 10 deletions(-)
diff --git
a/superset/assets/src/dashboard/components/filterscope/FilterScopeSelector.jsx
b/superset/assets/src/dashboard/components/filterscope/FilterScopeSelector.jsx
index aeab376..bbf398a 100644
---
a/superset/assets/src/dashboard/components/filterscope/FilterScopeSelector.jsx
+++
b/superset/assets/src/dashboard/components/filterscope/FilterScopeSelector.jsx
@@ -86,10 +86,12 @@ export default class FilterScopeSelector extends
React.PureComponent {
selectedChartId: filterId,
});
const expanded = getFilterScopeParentNodes(nodes, 1);
- // display filter_box chart as checked, but do not show checkbox
- const chartIdsInFilterScope = getChartIdsInFilterScope({
- filterScope: dashboardFilters[filterId].scopes[columnName],
- });
+ // force display filter_box chart as unchecked, but show
checkbox as disabled
+ const chartIdsInFilterScope = (
+ getChartIdsInFilterScope({
+ filterScope: dashboardFilters[filterId].scopes[columnName],
+ }) || []
+ ).filter(id => id !== filterId);
return {
...mapByChartId,
diff --git a/superset/assets/src/dashboard/util/getRevertedFilterScope.js
b/superset/assets/src/dashboard/util/getRevertedFilterScope.js
index 92e4a29..b31f275 100644
--- a/superset/assets/src/dashboard/util/getRevertedFilterScope.js
+++ b/superset/assets/src/dashboard/util/getRevertedFilterScope.js
@@ -16,6 +16,8 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { getChartIdAndColumnFromFilterKey } from './getDashboardFilterKey';
+
export default function getRevertedFilterScope({
checked = [],
filterFields = [],
@@ -29,14 +31,19 @@ export default function getRevertedFilterScope({
};
}, {});
- return filterFields.reduce(
- (map, filterField) => ({
+ return filterFields.reduce((map, filterField) => {
+ const { chartId } = getChartIdAndColumnFromFilterKey(filterField);
+ // force display filter_box chart as unchecked, but show checkbox as
disabled
+ const updatedCheckedIds = (
+ checkedChartIdsByFilterField[filterField] || []
+ ).filter(id => id !== chartId);
+
+ return {
...map,
[filterField]: {
...filterScopeMap[filterField],
- checked: checkedChartIdsByFilterField[filterField],
+ checked: updatedCheckedIds,
},
- }),
- {},
- );
+ };
+ }, {});
}