@bento-core/facet-filter 1.0.1-CDS.2 → 1.0.1-c3dc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -81
- package/dist/FacetFilterController.js +27 -26
- package/dist/FacetFilterView.js +6 -1
- package/dist/components/facet/FacetStyle.js +1 -1
- package/dist/components/facet/FacetView.js +12 -12
- package/dist/components/facet/ReduxFacetView.js +7 -9
- package/dist/components/inputs/FilterItemStyle.js +1 -1
- package/dist/components/inputs/checkbox/CheckboxStyle.js +4 -3
- package/dist/components/inputs/checkbox/CheckboxView.js +38 -33
- package/dist/components/inputs/checkbox/ReduxCheckbox.js +1 -4
- package/dist/components/inputs/checkbox/assets/checkedbox.svg +4 -0
- package/dist/components/inputs/checkbox/assets/emptycheckbox.svg +5 -0
- package/dist/components/inputs/slider/InputMinMaxStyle.js +20 -1
- package/dist/components/inputs/slider/InputMinMaxView.js +2 -1
- package/dist/components/inputs/slider/SliderView.js +144 -9
- package/dist/utils/Sort.js +8 -11
- package/package.json +10 -4
- package/src/FacetFilterController.js +24 -21
- package/src/FacetFilterView.js +9 -1
- package/src/components/facet/FacetStyle.js +1 -1
- package/src/components/facet/FacetView.js +14 -19
- package/src/components/facet/ReduxFacetView.js +5 -6
- package/src/components/inputs/FilterItemStyle.js +1 -1
- package/src/components/inputs/checkbox/CheckboxStyle.js +4 -3
- package/src/components/inputs/checkbox/CheckboxView.js +36 -23
- package/src/components/inputs/checkbox/ReduxCheckbox.js +1 -5
- package/src/components/inputs/checkbox/assets/checkedbox.svg +4 -0
- package/src/components/inputs/checkbox/assets/emptycheckbox.svg +5 -0
- package/src/components/inputs/slider/InputMinMaxStyle.js +18 -0
- package/src/components/inputs/slider/InputMinMaxView.js +1 -0
- package/src/components/inputs/slider/SliderView.js +186 -11
- package/src/utils/Sort.js +9 -16
package/README.md
CHANGED
|
@@ -72,17 +72,12 @@ import FacetFilter from 'bento-core';
|
|
|
72
72
|
```
|
|
73
73
|
import { InputTypes } from 'bento-core';
|
|
74
74
|
|
|
75
|
-
// fields for labelds and counts
|
|
76
|
-
const GROUP = 'group'; // access labels
|
|
77
|
-
const COUNT = 'subjects'; // access count value
|
|
78
|
-
|
|
79
75
|
export const facetsConfig = [{
|
|
80
76
|
section: CASES,
|
|
81
77
|
label: 'Program',
|
|
82
78
|
apiForFiltering: 'filterSubjectCountByProgram',
|
|
83
79
|
datafield: 'programs',
|
|
84
|
-
field: GROUP,
|
|
85
|
-
count: COUNT,
|
|
80
|
+
field: GROUP,
|
|
86
81
|
type: InputTypes.CHECKBOX,
|
|
87
82
|
sort_type: sortType.ALPHABET,
|
|
88
83
|
show: true,
|
|
@@ -249,84 +244,12 @@ className={clsx(classes.sectionSummaryText, classes[facetClasses])}
|
|
|
249
244
|
## 10 CLearAllFilterButton Component
|
|
250
245
|
Bento Core provides 1. function to clear all active filters, 2. disable flag (true incase of no active filters). Client is responsible for defining view (custom html).
|
|
251
246
|
```
|
|
252
|
-
import {
|
|
253
|
-
import { getFilters } from '@bento-core/facet-filter';
|
|
247
|
+
import { generateClearAllFilterBtn } from 'bento-core';
|
|
254
248
|
|
|
255
249
|
const CustomClearAllFiltersBtn = ({ onClearAllFilters, disable }) => {
|
|
256
250
|
//...custom component 1. bind onClearFilters fn
|
|
257
251
|
// 2. disable flag to disable button
|
|
258
|
-
}
|
|
259
|
-
// get filter data
|
|
260
|
-
// filterState: state.statusReducer.filterState, (from reducer)
|
|
261
|
-
// const activeFilters = getFilters(filterState) // formating
|
|
262
|
-
|
|
263
|
-
<ClearAllFiltersBtn
|
|
264
|
-
Component={CustomClearAllFiltersBtn}
|
|
265
|
-
activeFilters={activeFilters}
|
|
266
|
-
/>
|
|
267
|
-
```
|
|
268
|
-
|
|
269
|
-
## 11 Facet Value Component
|
|
270
|
-
```
|
|
271
|
-
// response
|
|
272
|
-
// filterCaseCountByProgram: [{group: "COP", subjects: 301}]
|
|
273
|
-
|
|
274
|
-
// facet = {
|
|
275
|
-
// section: CASES,
|
|
276
|
-
// label: 'Program',
|
|
277
|
-
// apiForFiltering: 'filterSubjectCountByProgram',
|
|
278
|
-
// datafield: 'programs',
|
|
279
|
-
// field: GROUP,
|
|
280
|
-
// count: COUNT,
|
|
281
|
-
// type: InputTypes.CHECKBOX,
|
|
282
|
-
// sort_type: sortType.ALPHABET,
|
|
283
|
-
// show: true,
|
|
284
|
-
// customCount = (text) => `(${text})`,
|
|
285
|
-
// }
|
|
286
|
-
|
|
287
|
-
const {
|
|
288
|
-
field = 'group',
|
|
289
|
-
count = 'subjects',
|
|
290
|
-
customCount = (text) => `(${text})`,
|
|
291
|
-
} = facet;
|
|
292
|
-
const {
|
|
293
|
-
isChecked = false,
|
|
294
|
-
index,
|
|
295
|
-
section,
|
|
296
|
-
tooltip,
|
|
297
|
-
} = checkboxItem;
|
|
298
|
-
|
|
299
|
-
// 1. by default facet value component display group ("COP")
|
|
300
|
-
// 2. set customName to display customize value
|
|
301
|
-
// 3. by default facet value component display subjects (301)
|
|
302
|
-
// 4. set customSubjects to display customize value or adjust correct field for subject count
|
|
303
|
-
// 5. tooltip - provide text value to tooltip text
|
|
304
|
-
|
|
305
|
-
/**
|
|
306
|
-
* Add Bento frontend filter count/subjects
|
|
307
|
-
* Add tootip text
|
|
308
|
-
*/
|
|
309
|
-
const filterData = facetsConfig.reduce((acc, item) => {
|
|
310
|
-
const facetValues = searchData[item.apiPath];
|
|
311
|
-
if (!facetValues) {
|
|
312
|
-
return acc;
|
|
313
|
-
}
|
|
314
|
-
const subjectCounts = [...facetValues].map((checkbox) => {
|
|
315
|
-
const text = tooltipText[item.tooltipKey];
|
|
316
|
-
return {
|
|
317
|
-
...checkbox,
|
|
318
|
-
customSubjects: checkbox.count,
|
|
319
|
-
tooltip: text ? text[checkbox.group] : undefined,
|
|
320
|
-
};
|
|
321
|
-
});
|
|
322
|
-
return { ...acc, [item.apiPath]: [...subjectCounts] };
|
|
323
|
-
}, {});
|
|
252
|
+
}
|
|
324
253
|
|
|
325
|
-
|
|
326
|
-
data={filterData}
|
|
327
|
-
facetSectionConfig={facetSectionVariables}
|
|
328
|
-
facetsConfig={facetsConfig}
|
|
329
|
-
CustomFacetSection={CustomFacetSection}
|
|
330
|
-
CustomFacetView={CustomFacetView}
|
|
331
|
-
/>
|
|
254
|
+
const ClearAllFiltersButton = () => generateClearAllFilterBtn(CustomClearAllFiltersBtn);
|
|
332
255
|
```
|
|
@@ -12,13 +12,13 @@ var _FacetFilterView = _interopRequireDefault(require("./FacetFilterView"));
|
|
|
12
12
|
const _excluded = ["section"];
|
|
13
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
14
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
15
|
-
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
16
|
-
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
17
15
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
18
16
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
19
17
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
20
18
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
21
19
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
20
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
21
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
22
22
|
const FacetFilterController = props => {
|
|
23
23
|
/**
|
|
24
24
|
* update checkbox state
|
|
@@ -29,8 +29,7 @@ const FacetFilterController = props => {
|
|
|
29
29
|
filterState,
|
|
30
30
|
data,
|
|
31
31
|
facetsConfig,
|
|
32
|
-
facetSectionConfig
|
|
33
|
-
tooltipText = {}
|
|
32
|
+
facetSectionConfig
|
|
34
33
|
} = props;
|
|
35
34
|
const updateFacetState = filterSections => {
|
|
36
35
|
const updateSections = [...filterSections];
|
|
@@ -38,16 +37,9 @@ const FacetFilterController = props => {
|
|
|
38
37
|
for (const [key, value] of Object.entries(filterState)) {
|
|
39
38
|
updateSections.forEach(sideBar => {
|
|
40
39
|
if (sideBar.type === _Types.InputTypes.CHECKBOX && sideBar.datafield === key) {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
} = sideBar;
|
|
44
|
-
const updateFacetVals = facetValues.map(item => {
|
|
45
|
-
const facetVal = item[sideBar.field];
|
|
46
|
-
return _objectSpread(_objectSpread({}, item), {}, {
|
|
47
|
-
isChecked: value[facetVal] ? value[facetVal] : false
|
|
48
|
-
});
|
|
40
|
+
sideBar.facetValues.forEach(item => {
|
|
41
|
+
item.isChecked = value[item.name] ? value[item.name] : false;
|
|
49
42
|
});
|
|
50
|
-
sideBar.facetValues = updateFacetVals;
|
|
51
43
|
}
|
|
52
44
|
if (sideBar.type === _Types.InputTypes.SLIDER && sideBar.datafield === key) {
|
|
53
45
|
sideBar.facetValues = value;
|
|
@@ -57,13 +49,9 @@ const FacetFilterController = props => {
|
|
|
57
49
|
} else {
|
|
58
50
|
updateSections.forEach(sideBar => {
|
|
59
51
|
if (sideBar.type === _Types.InputTypes.CHECKBOX) {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
}
|
|
63
|
-
const updateFacetVals = facetValues.map(item => _objectSpread(_objectSpread({}, item), {}, {
|
|
64
|
-
isChecked: false
|
|
65
|
-
}));
|
|
66
|
-
sideBar.facetValues = updateFacetVals;
|
|
52
|
+
sideBar.facetValues.forEach(item => {
|
|
53
|
+
item.isChecked = false;
|
|
54
|
+
});
|
|
67
55
|
}
|
|
68
56
|
/**
|
|
69
57
|
* set default value for slider - on clear all filter
|
|
@@ -108,7 +96,6 @@ const FacetFilterController = props => {
|
|
|
108
96
|
* Construct filter object
|
|
109
97
|
* 1. add facet values to facets
|
|
110
98
|
* 2. add 'name' key to each facet value
|
|
111
|
-
* 3. add '
|
|
112
99
|
*/
|
|
113
100
|
const addFacetValues = facets => {
|
|
114
101
|
const updateFacets = [];
|
|
@@ -118,13 +105,19 @@ const FacetFilterController = props => {
|
|
|
118
105
|
facetValues: []
|
|
119
106
|
});
|
|
120
107
|
const {
|
|
108
|
+
field,
|
|
121
109
|
ApiLowerBoundName,
|
|
122
110
|
ApiUpperBoundName,
|
|
123
111
|
apiForFiltering
|
|
124
112
|
} = updateFacet;
|
|
125
113
|
if (data[apiForFiltering]) {
|
|
126
114
|
if (Array.isArray(data[apiForFiltering])) {
|
|
127
|
-
|
|
115
|
+
const updateField = data[apiForFiltering].map(item => {
|
|
116
|
+
const addField = _objectSpread({}, item);
|
|
117
|
+
addField.name = item[field];
|
|
118
|
+
return addField;
|
|
119
|
+
});
|
|
120
|
+
updateFacet.facetValues = updateField;
|
|
128
121
|
}
|
|
129
122
|
/**
|
|
130
123
|
* add object to facet values
|
|
@@ -132,12 +125,19 @@ const FacetFilterController = props => {
|
|
|
132
125
|
if (facet.type === _Types.InputTypes.SLIDER) {
|
|
133
126
|
const lowerBound = data[apiForFiltering][ApiLowerBoundName];
|
|
134
127
|
const upperBound = data[apiForFiltering][ApiUpperBoundName];
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
128
|
+
if (lowerBound === 0 && upperBound === 0) {
|
|
129
|
+
updateFacet.filterOut = true;
|
|
130
|
+
} else {
|
|
131
|
+
updateFacet.minLowerBound = lowerBound;
|
|
132
|
+
updateFacet.maxUpperBound = upperBound;
|
|
133
|
+
updateFacet.facetValues = [lowerBound, upperBound];
|
|
134
|
+
updateFacet.style = facet.style;
|
|
135
|
+
}
|
|
138
136
|
}
|
|
139
137
|
}
|
|
140
|
-
|
|
138
|
+
if (!updateFacet.filterOut) {
|
|
139
|
+
updateFacets.push(updateFacet);
|
|
140
|
+
}
|
|
141
141
|
});
|
|
142
142
|
}
|
|
143
143
|
return updateFacets;
|
|
@@ -147,6 +147,7 @@ const FacetFilterController = props => {
|
|
|
147
147
|
* Generate facet sections state
|
|
148
148
|
*
|
|
149
149
|
*/
|
|
150
|
+
// const displayFacets = facetsConfig.filter((facet) => facet.show).slice(0, 16);
|
|
150
151
|
const displayFacets = facetsConfig.filter(facet => facet.show);
|
|
151
152
|
const facetStates = addFacetValues(displayFacets);
|
|
152
153
|
const updateState = updateFacetState(facetStates);
|
package/dist/FacetFilterView.js
CHANGED
|
@@ -9,6 +9,7 @@ var _core = require("@material-ui/core");
|
|
|
9
9
|
var _FacetFilterStyle = _interopRequireDefault(require("./FacetFilterStyle"));
|
|
10
10
|
var _FacetSectionView = _interopRequireDefault(require("./components/section/FacetSectionView"));
|
|
11
11
|
var _ReduxFacetView = _interopRequireDefault(require("./components/facet/ReduxFacetView"));
|
|
12
|
+
var _FilterItems = _interopRequireDefault(require("./components/inputs/FilterItems"));
|
|
12
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
14
|
/* eslint-disable arrow-body-style */
|
|
14
15
|
/* eslint-disable padded-blocks */
|
|
@@ -28,7 +29,11 @@ const BentoFacetFilter = _ref => {
|
|
|
28
29
|
}, section.items.map(facet => /*#__PURE__*/_react.default.createElement(_ReduxFacetView.default, {
|
|
29
30
|
facet: facet,
|
|
30
31
|
CustomView: CustomFacetView
|
|
31
|
-
}
|
|
32
|
+
}, /*#__PURE__*/_react.default.createElement(_core.List, {
|
|
33
|
+
className: "List_".concat(facet.label)
|
|
34
|
+
}, /*#__PURE__*/_react.default.createElement(_FilterItems.default, {
|
|
35
|
+
facet: facet
|
|
36
|
+
}))))))));
|
|
32
37
|
};
|
|
33
38
|
var _default = (0, _core.withStyles)(_FacetFilterStyle.default)(BentoFacetFilter);
|
|
34
39
|
exports.default = _default;
|
|
@@ -27,9 +27,7 @@ const FacetView = _ref => {
|
|
|
27
27
|
facet,
|
|
28
28
|
onClearFacetSection,
|
|
29
29
|
onClearSliderSection,
|
|
30
|
-
CustomView
|
|
31
|
-
autoComplete,
|
|
32
|
-
upload
|
|
30
|
+
CustomView
|
|
33
31
|
} = _ref;
|
|
34
32
|
const [expand, setExpand] = (0, _react.useState)(false);
|
|
35
33
|
const onExpandFacet = () => setExpand(!expand);
|
|
@@ -37,11 +35,13 @@ const FacetView = _ref => {
|
|
|
37
35
|
/**
|
|
38
36
|
* expand section incase of active local search
|
|
39
37
|
*/
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}
|
|
38
|
+
// useEffect(() => {
|
|
39
|
+
// if ((autoComplete && autoComplete.length > 0)
|
|
40
|
+
// || (upload && upload.length > 0)) {
|
|
41
|
+
// setExpand(true);
|
|
42
|
+
// }
|
|
43
|
+
// }, [autoComplete, upload]);
|
|
44
|
+
|
|
45
45
|
const [sortBy, setSortBy] = (0, _react.useState)(null);
|
|
46
46
|
const onSortFacet = type => {
|
|
47
47
|
setSortBy(type);
|
|
@@ -61,7 +61,7 @@ const FacetView = _ref => {
|
|
|
61
61
|
type,
|
|
62
62
|
facetValues
|
|
63
63
|
} = facet;
|
|
64
|
-
const selectedItems = facetValues && facetValues.filter(item => item
|
|
64
|
+
const selectedItems = facetValues && facetValues.filter(item => item.isChecked);
|
|
65
65
|
const displayFacet = _objectSpread({}, facet);
|
|
66
66
|
displayFacet.facetValues = selectedItems;
|
|
67
67
|
const isActiveFacet = [...selectedItems].length > 0;
|
|
@@ -82,7 +82,7 @@ const FacetView = _ref => {
|
|
|
82
82
|
className: (0, _clsx.default)(classes.subSectionSummaryText, {
|
|
83
83
|
["activeFacet".concat(facet.section)]: isActiveFacet
|
|
84
84
|
})
|
|
85
|
-
}, facet.label)),
|
|
85
|
+
}, facet.label)), facetValues.length === 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
86
86
|
className: classes.NonSortGroup
|
|
87
87
|
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
88
88
|
className: classes.NonSortGroupItem
|
|
@@ -114,10 +114,10 @@ const FacetView = _ref => {
|
|
|
114
114
|
onClick: () => {
|
|
115
115
|
onSortFacet(_Sort.sortType.NUMERIC);
|
|
116
116
|
}
|
|
117
|
-
}, "Sort by count"))),
|
|
117
|
+
}, "Sort by count"))), /*#__PURE__*/_react.default.createElement(_FilterItems.default, {
|
|
118
118
|
facet: facet,
|
|
119
119
|
sortBy: sortBy
|
|
120
|
-
})), !expand && type === _Types.InputTypes.CHECKBOX &&
|
|
120
|
+
})), !expand && type === _Types.InputTypes.CHECKBOX && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_core.List, {
|
|
121
121
|
id: "filter_Items"
|
|
122
122
|
}, /*#__PURE__*/_react.default.createElement(_FilterItems.default, {
|
|
123
123
|
facet: displayFacet
|
|
@@ -10,14 +10,12 @@ var _Actions = require("../../store/actions/Actions");
|
|
|
10
10
|
var _FacetView = _interopRequireDefault(require("./FacetView"));
|
|
11
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
12
|
const ReduxFacetView = props => /*#__PURE__*/_react.default.createElement(_FacetView.default, props);
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
};
|
|
20
|
-
};
|
|
13
|
+
|
|
14
|
+
// const mapStateToProps = (state) => ({
|
|
15
|
+
// autoComplete: state?.localFind?.autocomplete || [],
|
|
16
|
+
// upload: state?.localFind?.upload || [],
|
|
17
|
+
// });
|
|
18
|
+
|
|
21
19
|
const mapDispatchToProps = dispatch => ({
|
|
22
20
|
onClearFacetSection: facet => {
|
|
23
21
|
dispatch((0, _Actions.clearFacetSection)(facet));
|
|
@@ -26,5 +24,5 @@ const mapDispatchToProps = dispatch => ({
|
|
|
26
24
|
dispatch((0, _Actions.clearSliderSection)(facet));
|
|
27
25
|
}
|
|
28
26
|
});
|
|
29
|
-
var _default = (0, _reactRedux.connect)(
|
|
27
|
+
var _default = (0, _reactRedux.connect)(null, mapDispatchToProps)(ReduxFacetView);
|
|
30
28
|
exports.default = _default;
|
|
@@ -6,10 +6,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _default = () => ({
|
|
8
8
|
listItemGutters: {
|
|
9
|
-
padding: '10px
|
|
9
|
+
padding: '10px 10px 10px 0px'
|
|
10
10
|
},
|
|
11
11
|
checkboxRoot: {
|
|
12
|
-
marginLeft: '
|
|
12
|
+
marginLeft: '8px',
|
|
13
13
|
height: 12
|
|
14
14
|
},
|
|
15
15
|
panelDetailText: {
|
|
@@ -30,7 +30,8 @@ var _default = () => ({
|
|
|
30
30
|
checkboxName: {
|
|
31
31
|
margin: '0',
|
|
32
32
|
color: '#000000',
|
|
33
|
-
fontSize: '
|
|
33
|
+
fontSize: '16px',
|
|
34
|
+
fontWeight: 300,
|
|
34
35
|
marginTop: '1.5px',
|
|
35
36
|
fontFamily: 'Nunito',
|
|
36
37
|
lineHeight: '120%'
|
|
@@ -9,17 +9,12 @@ var _styles = require("@material-ui/core/styles");
|
|
|
9
9
|
var _core = require("@material-ui/core");
|
|
10
10
|
var _clsx = _interopRequireDefault(require("clsx"));
|
|
11
11
|
var _icons = require("@material-ui/icons");
|
|
12
|
+
var _emptycheckbox = _interopRequireDefault(require("./assets/emptycheckbox.svg"));
|
|
13
|
+
var _checkedbox = _interopRequireDefault(require("./assets/checkedbox.svg"));
|
|
12
14
|
var _CheckboxStyle = _interopRequireDefault(require("./CheckboxStyle"));
|
|
13
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
/* eslint-disable react/jsx-wrap-multilines */
|
|
17
|
-
/* eslint-disable react/jsx-indent */
|
|
18
|
-
/* eslint-disable object-curly-newline */
|
|
19
|
-
/* eslint-disable object-shorthand */
|
|
20
|
-
/* eslint-disable react/jsx-one-expression-per-line */
|
|
21
|
-
/* eslint-disable no-useless-escape */
|
|
22
|
-
|
|
16
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
17
|
+
const alignment = 'flex-start';
|
|
23
18
|
const CheckBoxView = _ref => {
|
|
24
19
|
let {
|
|
25
20
|
classes,
|
|
@@ -29,19 +24,21 @@ const CheckBoxView = _ref => {
|
|
|
29
24
|
facet
|
|
30
25
|
} = _ref;
|
|
31
26
|
const {
|
|
27
|
+
name,
|
|
28
|
+
subjects,
|
|
32
29
|
isChecked = false,
|
|
33
30
|
index,
|
|
34
31
|
section,
|
|
35
|
-
tooltip
|
|
32
|
+
tooltip,
|
|
33
|
+
label
|
|
36
34
|
} = checkboxItem;
|
|
37
|
-
const {
|
|
38
|
-
field = 'group',
|
|
39
|
-
count = 'subjects',
|
|
40
|
-
customCount = text => "(".concat(text, ")")
|
|
41
|
-
} = facet;
|
|
42
35
|
const indexType = index % 2 === 0 ? 'Even' : 'Odd';
|
|
43
|
-
const checkedSection = "".concat(section).toLowerCase().replace(
|
|
44
|
-
const
|
|
36
|
+
const checkedSection = "".concat(section).toLowerCase().replace(' ', '_');
|
|
37
|
+
const labelCheckbox = {
|
|
38
|
+
inputProps: {
|
|
39
|
+
'aria-label': 'Checkbox item'
|
|
40
|
+
}
|
|
41
|
+
};
|
|
45
42
|
const handleToggle = () => {
|
|
46
43
|
const toggleCheckBoxItem = {
|
|
47
44
|
name: name,
|
|
@@ -56,7 +53,9 @@ const CheckBoxView = _ref => {
|
|
|
56
53
|
["".concat(checkedSection, "NameUnChecked")]: !isChecked,
|
|
57
54
|
["".concat(checkedSection, "NameChecked")]: isChecked
|
|
58
55
|
})
|
|
59
|
-
}, /*#__PURE__*/_react.default.createElement(_core.Typography, {
|
|
56
|
+
}, label ? /*#__PURE__*/_react.default.createElement(_core.Typography, {
|
|
57
|
+
className: classes.checkboxLabel
|
|
58
|
+
}, label) : /*#__PURE__*/_react.default.createElement(_core.Typography, {
|
|
60
59
|
className: classes.checkboxName
|
|
61
60
|
}, name));
|
|
62
61
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_core.ListItem, {
|
|
@@ -70,40 +69,46 @@ const CheckBoxView = _ref => {
|
|
|
70
69
|
className: (0, _clsx.default)({
|
|
71
70
|
["".concat(checkedSection, "Checked").concat(indexType)]: isChecked
|
|
72
71
|
})
|
|
73
|
-
}, /*#__PURE__*/_react.default.createElement(_core.Checkbox, {
|
|
74
|
-
id: "checkbox_".concat(facet.label, "_").concat(name)
|
|
75
|
-
|
|
72
|
+
}, /*#__PURE__*/_react.default.createElement(_core.Checkbox, _extends({
|
|
73
|
+
id: "checkbox_".concat(facet.label, "_").concat(name)
|
|
74
|
+
}, labelCheckbox, {
|
|
75
|
+
icon: /*#__PURE__*/_react.default.createElement(_core.Icon, {
|
|
76
76
|
style: {
|
|
77
|
-
fontSize:
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
}
|
|
77
|
+
fontSize: '18px',
|
|
78
|
+
lineHeight: '22px'
|
|
79
|
+
}
|
|
80
|
+
}, /*#__PURE__*/_react.default.createElement("img", {
|
|
81
|
+
src: _emptycheckbox.default,
|
|
82
|
+
alt: "checkbox-icon"
|
|
83
|
+
})),
|
|
81
84
|
onClick: handleToggle,
|
|
82
85
|
checked: isChecked,
|
|
83
|
-
checkedIcon: /*#__PURE__*/_react.default.createElement(
|
|
86
|
+
checkedIcon: /*#__PURE__*/_react.default.createElement(_core.Icon, {
|
|
84
87
|
style: {
|
|
85
|
-
fontSize:
|
|
88
|
+
fontSize: '18px',
|
|
89
|
+
lineHeight: '22px'
|
|
86
90
|
},
|
|
87
91
|
className: "".concat(checkedSection, "CheckedIcon")
|
|
88
|
-
}
|
|
92
|
+
}, /*#__PURE__*/_react.default.createElement("img", {
|
|
93
|
+
src: _checkedbox.default,
|
|
94
|
+
alt: "checkedBox-icon"
|
|
95
|
+
})),
|
|
89
96
|
disableRipple: true,
|
|
90
97
|
color: "secondary",
|
|
91
98
|
classes: {
|
|
92
99
|
root: classes.checkboxRoot
|
|
93
100
|
}
|
|
94
|
-
}), tooltip ? /*#__PURE__*/_react.default.createElement(_core.Tooltip, {
|
|
101
|
+
})), tooltip ? /*#__PURE__*/_react.default.createElement(_core.Tooltip, {
|
|
95
102
|
id: datafield,
|
|
96
103
|
title: tooltip
|
|
97
104
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
98
105
|
className: datafield
|
|
99
|
-
},
|
|
100
|
-
className: "".concat(checkedSection, "_md_space")
|
|
101
|
-
}), /*#__PURE__*/_react.default.createElement(_core.Typography, {
|
|
106
|
+
}, /*#__PURE__*/_react.default.createElement(LabelComponent, null))) : /*#__PURE__*/_react.default.createElement(LabelComponent, null), /*#__PURE__*/_react.default.createElement(_core.ListItemText, null), /*#__PURE__*/_react.default.createElement(_core.Typography, {
|
|
102
107
|
className: (0, _clsx.default)("".concat(checkedSection, "Subjects"), {
|
|
103
108
|
["".concat(checkedSection, "SubjectUnChecked")]: !isChecked,
|
|
104
109
|
["".concat(checkedSection, "SubjectChecked")]: isChecked
|
|
105
110
|
})
|
|
106
|
-
},
|
|
111
|
+
}, "(".concat(subjects, ")"))), /*#__PURE__*/_react.default.createElement(_core.Divider, {
|
|
107
112
|
style: {
|
|
108
113
|
backgroundColor: isChecked ? '#FFFFFF' : '#b1b1b1',
|
|
109
114
|
margin: '0px',
|
|
@@ -10,11 +10,8 @@ var _Actions = require("../../../store/actions/Actions");
|
|
|
10
10
|
var _CheckboxView = _interopRequireDefault(require("./CheckboxView"));
|
|
11
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
12
|
const ReduxCheckbox = props => /*#__PURE__*/_react.default.createElement(_CheckboxView.default, props);
|
|
13
|
-
const mapStateToProps = state => ({
|
|
14
|
-
filterState: state.statusReducer.filterState
|
|
15
|
-
});
|
|
16
13
|
const mapDispatchToProps = dispatch => ({
|
|
17
14
|
onToggle: view => dispatch((0, _Actions.toggleCheckBox)(view))
|
|
18
15
|
});
|
|
19
|
-
var _default = (0, _reactRedux.connect)(
|
|
16
|
+
var _default = (0, _reactRedux.connect)(null, mapDispatchToProps)(ReduxCheckbox);
|
|
20
17
|
exports.default = _default;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<rect width="14" height="14" fill="#6D5F5B"/>
|
|
3
|
+
<rect width="14" height="14" fill="#6D5F5B"/>
|
|
4
|
+
<rect x="0.5" y="0.5" width="13" height="13" fill="white" stroke="#6D5F5B"/>
|
|
5
|
+
</svg>
|
|
@@ -5,6 +5,25 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _default = () => ({
|
|
8
|
-
slider_INPUT_MIN: {
|
|
8
|
+
slider_INPUT_MIN: {
|
|
9
|
+
fontFamily: 'Montserrat',
|
|
10
|
+
fontSize: '13px',
|
|
11
|
+
fontWeight: 500,
|
|
12
|
+
color: '#717171',
|
|
13
|
+
background: '#F0F0F0',
|
|
14
|
+
'& input': {
|
|
15
|
+
width: '70px'
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
slider_INPUT_MAX: {
|
|
19
|
+
fontFamily: 'Montserrat',
|
|
20
|
+
fontSize: '13px',
|
|
21
|
+
fontWeight: 500,
|
|
22
|
+
color: '#717171',
|
|
23
|
+
background: '#F0F0F0',
|
|
24
|
+
'& input': {
|
|
25
|
+
width: '70px'
|
|
26
|
+
}
|
|
27
|
+
}
|
|
9
28
|
});
|
|
10
29
|
exports.default = _default;
|