Skip to content
Snippets Groups Projects
Commit 91c2ec9d authored by esikkala's avatar esikkala
Browse files

Disable filter deleting when another facet is updating

parent dc9d62c0
No related branches found
No related tags found
No related merge requests found
......@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
import ChipsArray from './ChipsArray';
const ActiveFilters = props => {
const { uriFilters, textFilters, timespanFilters, facets } = props;
const { uriFilters, textFilters, timespanFilters, facets, someFacetIsFetching } = props;
const facetValues = [];
Object.keys(uriFilters).map(activeFacetID => {
Object.values(uriFilters[activeFacetID]).forEach(value => {
......@@ -36,6 +36,7 @@ const ActiveFilters = props => {
data={facetValues}
facetClass={props.facetClass}
updateFacetOption={props.updateFacetOption}
someFacetIsFetching={someFacetIsFetching}
/>
);
};
......@@ -47,7 +48,8 @@ ActiveFilters.propTypes = {
spatialFilters: PropTypes.object.isRequired,
textFilters: PropTypes.object.isRequired,
timespanFilters: PropTypes.object.isRequired,
updateFacetOption: PropTypes.func.isRequired
updateFacetOption: PropTypes.func.isRequired,
someFacetIsFetching: PropTypes.bool.isRequired
};
export default ActiveFilters;
......@@ -18,13 +18,15 @@ const styles = theme => ({
class ChipsArray extends React.Component {
handleDelete = item => () => {
if (item.filterType === 'uriFilter') {
this.props.updateFacetOption({
facetClass: this.props.facetClass,
facetID: item.facetID,
option: item.filterType,
value: item.value
});
if (!this.props.someFacetIsFetching) {
if (item.filterType === 'uriFilter') {
this.props.updateFacetOption({
facetClass: this.props.facetClass,
facetID: item.facetID,
option: item.filterType,
value: item.value
});
}
}
};
......@@ -88,7 +90,8 @@ ChipsArray.propTypes = {
classes: PropTypes.object.isRequired,
data: PropTypes.array.isRequired,
facetClass: PropTypes.string.isRequired,
updateFacetOption: PropTypes.func.isRequired
updateFacetOption: PropTypes.func.isRequired,
someFacetIsFetching: PropTypes.bool.isRequired
};
export default withStyles(styles)(ChipsArray);
......@@ -192,6 +192,7 @@ class FacetBar extends React.Component {
fetchingResultCount={this.props.fetchingResultCount}
updateFacetOption={this.props.updateFacetOption}
fetchResultCount={this.props.fetchResultCount}
someFacetIsFetching={someFacetIsFetching}
/>
</Paper>
{Object.keys(facets).map(facetID => this.renderFacet(facetID, someFacetIsFetching))}
......
......@@ -34,7 +34,7 @@ class FacetInfo extends React.Component {
}
render() {
const { classes, facetClass, resultClass, resultCount } = this.props;
const { classes, facetClass, resultClass, resultCount, someFacetIsFetching } = this.props;
const { facets } = this.props.facetData;
let uriFilters = {};
let spatialFilters = {};
......@@ -90,6 +90,7 @@ class FacetInfo extends React.Component {
textFilters={textFilters}
timespanFilters={timespanFilters}
updateFacetOption={this.props.updateFacetOption}
someFacetIsFetching={someFacetIsFetching}
/>
</div>
<Divider className={classes.facetInfoDivider} />
......@@ -110,7 +111,8 @@ FacetInfo.propTypes = {
resultCount: PropTypes.number.isRequired,
fetchingResultCount: PropTypes.bool.isRequired,
updateFacetOption: PropTypes.func.isRequired,
fetchResultCount: PropTypes.func.isRequired
fetchResultCount: PropTypes.func.isRequired,
someFacetIsFetching: PropTypes.bool.isRequired
};
export default withStyles(styles)(FacetInfo);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment