You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by vi...@apache.org on 2020/08/05 06:23:48 UTC
[incubator-superset] branch master updated: fix: show label for
filters in filter box in explore (#10412)
This is an automated email from the ASF dual-hosted git repository.
villebro pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-superset.git
The following commit(s) were added to refs/heads/master by this push:
new 57dc762 fix: show label for filters in filter box in explore (#10412)
57dc762 is described below
commit 57dc7622b4e246d7b900efaebf06f5cbd1b59c6a
Author: simchaNielsen <56...@users.noreply.github.com>
AuthorDate: Wed Aug 5 09:23:11 2020 +0300
fix: show label for filters in filter box in explore (#10412)
* fix: show label for filters in filter box in explore
* test: add test for label in filter box
* test: add test / fix lint
* fix: fix CR notes
* refactor: add label propType to FilterBoxItemControl.jsx
---
.../components/FilterBoxItemControl_spec.jsx | 4 ++
.../components/controls/CollectionControl.jsx | 58 ++++++++++++----------
.../components/controls/FilterBoxItemControl.jsx | 3 ++
3 files changed, 38 insertions(+), 27 deletions(-)
diff --git a/superset-frontend/spec/javascripts/explore/components/FilterBoxItemControl_spec.jsx b/superset-frontend/spec/javascripts/explore/components/FilterBoxItemControl_spec.jsx
index fb94245..d530025 100644
--- a/superset-frontend/spec/javascripts/explore/components/FilterBoxItemControl_spec.jsx
+++ b/superset-frontend/spec/javascripts/explore/components/FilterBoxItemControl_spec.jsx
@@ -27,6 +27,7 @@ import FormRow from 'src/components/FormRow';
import datasources from '../../../fixtures/mockDatasource';
const defaultProps = {
+ label: 'some label',
datasource: datasources['7__table'],
onChange: sinon.spy(),
};
@@ -51,6 +52,9 @@ describe('FilterBoxItemControl', () => {
it('renderForms does the job', () => {
const popover = shallow(inst.renderForm());
expect(popover.find(FormRow)).toHaveLength(8);
+ expect(popover.find(FormRow).get(1).props.control.props.value).toEqual(
+ 'some label',
+ );
});
it('convert type for single value filter_box', () => {
diff --git a/superset-frontend/src/explore/components/controls/CollectionControl.jsx b/superset-frontend/src/explore/components/controls/CollectionControl.jsx
index cdc6303..0a19864 100644
--- a/superset-frontend/src/explore/components/controls/CollectionControl.jsx
+++ b/superset-frontend/src/explore/components/controls/CollectionControl.jsx
@@ -92,33 +92,37 @@ export default class CollectionControl extends React.Component {
lockAxis="y"
onSortEnd={this.onSortEnd.bind(this)}
>
- {this.props.value.map((o, i) => (
- <SortableListGroupItem
- className="clearfix"
- key={this.props.keyAccessor(o)}
- index={i}
- >
- <div className="pull-left m-r-5">
- <SortableDragger />
- </div>
- <div className="pull-left">
- <Control
- {...this.props}
- {...o}
- onChange={this.onChange.bind(this, i)}
- />
- </div>
- <div className="pull-right">
- <InfoTooltipWithTrigger
- icon="times"
- label="remove-item"
- tooltip="remove item"
- bsStyle="primary"
- onClick={this.removeItem.bind(this, i)}
- />
- </div>
- </SortableListGroupItem>
- ))}
+ {this.props.value.map((o, i) => {
+ // label relevant only for header, not here
+ const { label, ...commonProps } = this.props;
+ return (
+ <SortableListGroupItem
+ className="clearfix"
+ key={this.props.keyAccessor(o)}
+ index={i}
+ >
+ <div className="pull-left m-r-5">
+ <SortableDragger />
+ </div>
+ <div className="pull-left">
+ <Control
+ {...commonProps}
+ {...o}
+ onChange={this.onChange.bind(this, i)}
+ />
+ </div>
+ <div className="pull-right">
+ <InfoTooltipWithTrigger
+ icon="times"
+ label="remove-item"
+ tooltip="remove item"
+ bsStyle="primary"
+ onClick={this.removeItem.bind(this, i)}
+ />
+ </div>
+ </SortableListGroupItem>
+ );
+ })}
</SortableListGroup>
);
}
diff --git a/superset-frontend/src/explore/components/controls/FilterBoxItemControl.jsx b/superset-frontend/src/explore/components/controls/FilterBoxItemControl.jsx
index 3df9ae8..8e4b21e 100644
--- a/superset-frontend/src/explore/components/controls/FilterBoxItemControl.jsx
+++ b/superset-frontend/src/explore/components/controls/FilterBoxItemControl.jsx
@@ -52,6 +52,7 @@ const propTypes = {
clearable: PropTypes.bool,
multiple: PropTypes.bool,
column: PropTypes.string,
+ label: PropTypes.string,
metric: PropTypes.string,
searchAllOptions: PropTypes.bool,
defaultValue: PropTypes.string,
@@ -77,11 +78,13 @@ export default class FilterBoxItemControl extends React.Component {
clearable,
multiple,
searchAllOptions,
+ label,
defaultValue,
} = props;
const state = {
column,
metric,
+ label,
asc,
clearable,
multiple,