diff --git a/CHANGES.md b/CHANGES.md
index ecd75925..726d69d6 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -1,5 +1,9 @@
# Changes
+Version 1.0.0-alpha.2 (released 2020-08-05)
+
+* Add additional props to BucketAggregation component - flexible overrides
+
Version 1.0.0-alpha.1 (released 2020-05-15)
* Remove 'use strict' directive from the built CommonJS module dist,
diff --git a/package-lock.json b/package-lock.json
index 413dcf70..dd9b3215 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "react-searchkit",
- "version": "1.0.0-alpha.0",
+ "version": "1.0.0-alpha.2",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
diff --git a/package.json b/package.json
index b113b458..5f244738 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "react-searchkit",
- "version": "1.0.0-alpha.1",
+ "version": "1.0.0-alpha.2",
"description": "React components to build your search UI application",
"main": "dist/cjs/index.js",
"browser": "dist/cjs/index.js",
diff --git a/src/lib/components/BucketAggregation/BucketAggregation.js b/src/lib/components/BucketAggregation/BucketAggregation.js
index 67a32a13..b6e0a5eb 100644
--- a/src/lib/components/BucketAggregation/BucketAggregation.js
+++ b/src/lib/components/BucketAggregation/BucketAggregation.js
@@ -27,7 +27,7 @@ class BucketAggregation extends Component {
};
_renderValues = (resultBuckets, selectedFilters) => {
- const { overridableId } = this.props;
+ const { overridableId, valuesLabels } = this.props;
return (
);
};
@@ -59,6 +60,7 @@ class BucketAggregation extends Component {
userSelectionFilters,
resultsAggregations,
overridableId,
+ ...props
} = this.props;
const selectedFilters = this._getSelectedFilters(userSelectionFilters);
const resultBuckets = this._getResultBuckets(resultsAggregations);
@@ -70,6 +72,7 @@ class BucketAggregation extends Component {
title={this.title}
containerCmp={valuesCmp}
overridableId={overridableId}
+ {...props}
/>
);
}
@@ -87,6 +90,10 @@ BucketAggregation.propTypes = {
updateQueryFilters: PropTypes.func.isRequired,
renderValuesContainerElement: PropTypes.func,
renderValueElement: PropTypes.func,
+ valuesLabels: PropTypes.arrayOf(PropTypes.shape({
+ value: PropTypes.string.isRequired,
+ label: PropTypes.string.isRequired,
+ })),
overridableId: PropTypes.string,
};
diff --git a/src/lib/components/BucketAggregation/BucketAggregationValues.js b/src/lib/components/BucketAggregation/BucketAggregationValues.js
index 6c8f155d..b5e0e303 100644
--- a/src/lib/components/BucketAggregation/BucketAggregationValues.js
+++ b/src/lib/components/BucketAggregation/BucketAggregationValues.js
@@ -11,6 +11,7 @@ import PropTypes from 'prop-types';
import { Checkbox, List } from 'semantic-ui-react';
import Overridable from 'react-overridable';
import { buildUID } from '../../util';
+import _get from 'lodash/get';
class BucketAggregationValues extends Component {
constructor(props) {
@@ -62,8 +63,7 @@ class BucketAggregationValues extends Component {
};
render() {
- const { buckets, selectedFilters, overridableId } = this.props;
-
+ const { buckets, selectedFilters, valuesLabels, overridableId } = this.props;
const valuesCmp = buckets.map((bucket) => {
const isSelected = this._isSelected(
this.aggName,
@@ -75,6 +75,14 @@ class BucketAggregationValues extends Component {
};
const getChildAggCmps = (bucket) =>
this.getChildAggCmps(bucket, selectedFilters);
+ let label = null;
+ if(valuesLabels){
+ label = _get(
+ valuesLabels.find(e => e.value === bucket.key ),
+ 'label',
+ bucket.key
+ );
+ }
return (
);
@@ -116,9 +125,11 @@ const ValueElement = (props) => {
isSelected,
onFilterClicked,
getChildAggCmps,
+ valueLabel,
overridableId,
} = props;
- const label = `${bucket.key} (${bucket.doc_count})`;
+
+ const label = valueLabel ? valueLabel : `${bucket.key} (${bucket.doc_count})`;
const childAggCmps = getChildAggCmps(bucket);
return (
{
);
};
-const ContainerElement = ({ valuesCmp, overridableId }) => (
- {
+ return
{valuesCmp}
-);
+};
export default Overridable.component(
'BucketAggregationValues',
diff --git a/src/lib/components/EmptyResults/EmptyResults.js b/src/lib/components/EmptyResults/EmptyResults.js
index 0eb80457..bb984029 100644
--- a/src/lib/components/EmptyResults/EmptyResults.js
+++ b/src/lib/components/EmptyResults/EmptyResults.js
@@ -26,6 +26,7 @@ class EmptyResults extends Component {
totalResults,
error,
queryString,
+ extraContent,
overridableId,
} = this.props;
return (
@@ -35,6 +36,7 @@ class EmptyResults extends Component {