@blaze-cms/react-page-builder 0.139.0-alpha.0 → 0.139.0-core-styles.0
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/CHANGELOG.md +15 -1
- package/lib/components/ContentGroupSection/ContentGroupSection.js +1 -4
- package/lib/components/ContentGroupSection/ContentGroupSection.js.map +1 -1
- package/lib/components/SearchFilter/components/Checkbox.js +1 -3
- package/lib/components/SearchFilter/components/Checkbox.js.map +1 -1
- package/lib/helpers/build-checkbox-filters.js +38 -0
- package/lib/helpers/build-checkbox-filters.js.map +1 -0
- package/lib/helpers/build-raw-query-base.js +4 -12
- package/lib/helpers/build-raw-query-base.js.map +1 -1
- package/lib/helpers/build-set-filters.js +3 -9
- package/lib/helpers/build-set-filters.js.map +1 -1
- package/lib/helpers/get-checkbox-filters.js +15 -0
- package/lib/helpers/get-checkbox-filters.js.map +1 -0
- package/lib-es/components/ContentGroupSection/ContentGroupSection.js +4 -8
- package/lib-es/components/ContentGroupSection/ContentGroupSection.js.map +1 -1
- package/lib-es/components/SearchFilter/components/Checkbox.js +1 -3
- package/lib-es/components/SearchFilter/components/Checkbox.js.map +1 -1
- package/lib-es/helpers/build-checkbox-filters.js +28 -0
- package/lib-es/helpers/build-checkbox-filters.js.map +1 -0
- package/lib-es/helpers/build-raw-query-base.js +1 -8
- package/lib-es/helpers/build-raw-query-base.js.map +1 -1
- package/lib-es/helpers/build-set-filters.js +3 -9
- package/lib-es/helpers/build-set-filters.js.map +1 -1
- package/lib-es/helpers/get-checkbox-filters.js +7 -0
- package/lib-es/helpers/get-checkbox-filters.js.map +1 -0
- package/package.json +10 -11
- package/src/components/ContentGroupSection/ContentGroupSection.js +1 -1
- package/src/components/SearchFilter/components/Checkbox.js +0 -2
- package/src/helpers/build-checkbox-filters.js +23 -0
- package/src/helpers/build-raw-query-base.js +1 -6
- package/src/helpers/build-set-filters.js +3 -11
- package/src/helpers/get-checkbox-filters.js +7 -0
- package/tests/unit/src/components/PlaceholderIcon/__snapshots__/index.test.js.snap +4 -4
- package/tests/unit/src/helpers/build-checkbox-filters.test.js +27 -0
- package/tests/unit/src/helpers/get-checkbox-filters.test.js +33 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,15 +3,29 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
-
# [0.139.0-
|
|
6
|
+
# [0.139.0-core-styles.0](https://github.com/thebyte9/blaze/compare/v0.138.0...v0.139.0-core-styles.0) (2024-01-03)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* searchfilter checkbox duplicate element title ([97ca0b1](https://github.com/thebyte9/blaze/commit/97ca0b1a554f9faa01c6696cb71770b2dc88194e))
|
|
7
12
|
|
|
8
13
|
|
|
9
14
|
### Features
|
|
10
15
|
|
|
16
|
+
* added new filter options for sponsored and featured ([#4172](https://github.com/thebyte9/blaze/issues/4172)) ([11051f6](https://github.com/thebyte9/blaze/commit/11051f630c3fb0b74aa9d79e1e154151d438cc69))
|
|
11
17
|
* allow full render of card items ([#4162](https://github.com/thebyte9/blaze/issues/4162)) ([2dd7d48](https://github.com/thebyte9/blaze/commit/2dd7d48a8b05141c8d4064856b70487e252d2c04))
|
|
12
18
|
|
|
13
19
|
|
|
14
20
|
|
|
21
|
+
# [0.129.0-project-admin-customisations.1](https://github.com/thebyte9/blaze/compare/v0.129.0-project-admin-customisations.0...v0.129.0-project-admin-customisations.1) (2023-05-05)
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
# [0.129.0-project-admin-customisations.0](https://github.com/thebyte9/blaze/compare/v0.128.2...v0.129.0-project-admin-customisations.0) (2023-05-03)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
15
29
|
|
|
16
30
|
|
|
17
31
|
# [0.138.0](https://github.com/thebyte9/blaze/compare/v0.138.0-alpha.0...v0.138.0) (2023-12-19)
|
|
@@ -7,15 +7,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports["default"] = void 0;
|
|
9
9
|
require("core-js/modules/es.function.name.js");
|
|
10
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
10
|
var _react = _interopRequireDefault(require("react"));
|
|
12
11
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
12
|
var _helpers = require("../../helpers");
|
|
14
|
-
var _excluded = ["children", "name"];
|
|
15
13
|
var ContentGroupSection = function ContentGroupSection(_ref) {
|
|
16
14
|
var children = _ref.children,
|
|
17
|
-
name = _ref.name
|
|
18
|
-
props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
15
|
+
name = _ref.name;
|
|
19
16
|
if (!(0, _helpers.hasChildren)(children)) return null;
|
|
20
17
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
21
18
|
key: name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentGroupSection.js","names":["_react","_interopRequireDefault","require","_propTypes","_helpers","
|
|
1
|
+
{"version":3,"file":"ContentGroupSection.js","names":["_react","_interopRequireDefault","require","_propTypes","_helpers","ContentGroupSection","_ref","children","name","hasChildren","createElement","key","className","propTypes","PropTypes","oneOfType","arrayOf","node","string","defaultProps","_default","exports"],"sources":["../../../src/components/ContentGroupSection/ContentGroupSection.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { hasChildren } from '../../helpers';\n\nconst ContentGroupSection = ({ children, name }) => {\n if (!hasChildren(children)) return null;\n\n return (\n <div key={name} className=\"content-group-section\">\n {children}\n </div>\n );\n};\n\nContentGroupSection.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n name: PropTypes.string\n};\n\nContentGroupSection.defaultProps = { children: null, name: '' };\n\nexport default ContentGroupSection;\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAEA,IAAMG,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAAC,IAAA,EAA2B;EAAA,IAArBC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,IAAI,GAAAF,IAAA,CAAJE,IAAI;EAC3C,IAAI,CAAC,IAAAC,oBAAW,EAACF,QAAQ,CAAC,EAAE,OAAO,IAAI;EAEvC,oBACEP,MAAA,YAAAU,aAAA;IAAKC,GAAG,EAAEH,IAAK;IAACI,SAAS,EAAC;EAAuB,GAC9CL,QACE,CAAC;AAEV,CAAC;AAEDF,mBAAmB,CAACQ,SAAS,GAAG;EAC9BN,QAAQ,EAAEO,qBAAS,CAACC,SAAS,CAAC,CAACD,qBAAS,CAACE,OAAO,CAACF,qBAAS,CAACG,IAAI,CAAC,EAAEH,qBAAS,CAACG,IAAI,CAAC,CAAC;EAClFT,IAAI,EAAEM,qBAAS,CAACI;AAClB,CAAC;AAEDb,mBAAmB,CAACc,YAAY,GAAG;EAAEZ,QAAQ,EAAE,IAAI;EAAEC,IAAI,EAAE;AAAG,CAAC;AAAC,IAAAY,QAAA,GAEjDf,mBAAmB;AAAAgB,OAAA,cAAAD,QAAA"}
|
|
@@ -82,9 +82,7 @@ var Checkbox = function Checkbox(_ref) {
|
|
|
82
82
|
});
|
|
83
83
|
});
|
|
84
84
|
var shouldDisplayMore = !checkboxLimit || checkboxLimit[prop] === _constants.LIMIT_MIN;
|
|
85
|
-
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null,
|
|
86
|
-
className: "heading heading--section"
|
|
87
|
-
}, elementTitle), label ? /*#__PURE__*/_react["default"].createElement("p", null, label) : '', /*#__PURE__*/_react["default"].createElement(_checkboxes.Checkboxes, {
|
|
85
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, label ? /*#__PURE__*/_react["default"].createElement("p", null, label) : '', /*#__PURE__*/_react["default"].createElement(_checkboxes.Checkboxes, {
|
|
88
86
|
className: "form-checkbox",
|
|
89
87
|
options: multiple,
|
|
90
88
|
onChange: function onChange(_ref3) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_lodash","_checkboxes","_fa","_HOC","_helpers","_constants","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Checkbox","_ref","data","prop","updateFilterValues","filterValues","label","elementTitle","shouldSearch","displayFilterCount","_useState","useState","_useState2","_slicedToArray2","checkboxLimit","setCheckboxLimit","handleCheckboxOptions","LIMIT_MIN","_defineProperty2","LIMIT_MAX","checkboxQueryParams","decodeValue","map","val","multiple","sortedValues","buckets","_ref2","count","doc_count","optionLabel","concat","filter","Boolean","sort","forEach","value","i","push","upperFirst","name","checked","includes","id","disabled","shouldDisplayMore","createElement","Fragment","className","Checkboxes","options","onChange","_ref3","eData","newCheckboxValues","_ref4","_ref5","length","role","onClick","FaChevronDown","MORE","FaChevronUp","LESS","propTypes","PropTypes","object","isRequired","string","func","bool","defaultProps","_default","withTitle","exports"],"sources":["../../../../src/components/SearchFilter/components/Checkbox.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport upperFirst from 'lodash.upperfirst';\nimport { Checkboxes } from '@blaze-react/checkboxes';\nimport { FaChevronDown, FaChevronUp } from 'react-icons/fa';\nimport { withTitle } from '../../../HOC';\nimport { decodeValue } from '../helpers';\nimport { LIMIT_MIN, LIMIT_MAX, MORE, LESS } from '../constants';\n\nconst Checkbox = ({\n data,\n prop,\n updateFilterValues,\n filterValues,\n label,\n elementTitle,\n shouldSearch,\n displayFilterCount\n}) => {\n const [checkboxLimit, setCheckboxLimit] = useState(null);\n if (!data[prop]) return null;\n\n const handleCheckboxOptions = () => {\n if (checkboxLimit[prop] === LIMIT_MIN) {\n setCheckboxLimit({ [prop]: LIMIT_MAX });\n } else {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n };\n\n if (!checkboxLimit) {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n\n if (!checkboxLimit) return null;\n\n let checkboxQueryParams = [];\n\n if (filterValues && filterValues[prop]) {\n checkboxQueryParams =\n typeof filterValues[prop] === 'string'\n ? [decodeValue(filterValues[prop])]\n : filterValues[prop].map(val => decodeValue(val));\n }\n const multiple = [];\n\n const sortedValues = data[prop].buckets\n .map(({ key, doc_count: count }) => {\n const optionLabel = displayFilterCount ? `${key} (${count})` : key;\n return [key, optionLabel, !count];\n })\n .filter(Boolean)\n .sort();\n\n sortedValues.forEach(\n (value, i) =>\n i < checkboxLimit[prop] &&\n multiple.push({\n label: upperFirst(value[1]),\n value: value[0],\n name: prop,\n checked: checkboxQueryParams.includes(value[0]),\n id: value[0],\n disabled: value[2]\n })\n );\n\n const shouldDisplayMore = !checkboxLimit || checkboxLimit[prop] === LIMIT_MIN;\n\n return (\n <>\n {elementTitle && <div className=\"heading heading--section\">{elementTitle}</div>}\n {label ? <p>{label}</p> : ''}\n <Checkboxes\n className=\"form-checkbox\"\n options={multiple}\n onChange={({ data: eData }) => {\n const newCheckboxValues = eData\n .filter(({ checked }) => checked)\n .map(({ value }) => value);\n updateFilterValues({ [prop]: newCheckboxValues }, shouldSearch);\n }}\n />\n {data[prop].buckets.length > LIMIT_MIN && (\n <div role=\"button\" className=\"see-more\" onClick={handleCheckboxOptions}>\n {shouldDisplayMore ? (\n <>\n <i>\n <FaChevronDown className=\"inline-icon\" />\n </i>\n {` See ${MORE}`}\n </>\n ) : (\n <>\n <i>\n <FaChevronUp className=\"inline-icon\" />\n </i>\n {` See ${LESS}`}\n </>\n )}\n </div>\n )}\n </>\n );\n};\n\nCheckbox.propTypes = {\n data: PropTypes.object.isRequired,\n prop: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n label: PropTypes.string,\n elementTitle: PropTypes.string,\n displayFilterCount: PropTypes.bool\n};\n\nCheckbox.defaultProps = {\n shouldSearch: false,\n label: '',\n elementTitle: '',\n displayFilterCount: false\n};\n\nexport default withTitle(Checkbox);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,GAAA,GAAAL,OAAA;AACA,IAAAM,IAAA,GAAAN,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AACA,IAAAQ,UAAA,GAAAR,OAAA;AAAgE,SAAAS,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAX,wBAAAe,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,cAAAN,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAEhE,IAAMW,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,IAAA,EASR;EAAA,IARJC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACJC,kBAAkB,GAAAH,IAAA,CAAlBG,kBAAkB;IAClBC,YAAY,GAAAJ,IAAA,CAAZI,YAAY;IACZC,KAAK,GAAAL,IAAA,CAALK,KAAK;IACLC,YAAY,GAAAN,IAAA,CAAZM,YAAY;IACZC,YAAY,GAAAP,IAAA,CAAZO,YAAY;IACZC,kBAAkB,GAAAR,IAAA,CAAlBQ,kBAAkB;EAElB,IAAAC,SAAA,GAA0C,IAAAC,eAAQ,EAAC,IAAI,CAAC;IAAAC,UAAA,OAAAC,eAAA,aAAAH,SAAA;IAAjDI,aAAa,GAAAF,UAAA;IAAEG,gBAAgB,GAAAH,UAAA;EACtC,IAAI,CAACV,IAAI,CAACC,IAAI,CAAC,EAAE,OAAO,IAAI;EAE5B,IAAMa,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAA,EAAS;IAClC,IAAIF,aAAa,CAACX,IAAI,CAAC,KAAKc,oBAAS,EAAE;MACrCF,gBAAgB,KAAAG,gBAAA,iBAAIf,IAAI,EAAGgB,oBAAS,CAAE,CAAC;IACzC,CAAC,MAAM;MACLJ,gBAAgB,KAAAG,gBAAA,iBAAIf,IAAI,EAAGc,oBAAS,CAAE,CAAC;IACzC;EACF,CAAC;EAED,IAAI,CAACH,aAAa,EAAE;IAClBC,gBAAgB,KAAAG,gBAAA,iBAAIf,IAAI,EAAGc,oBAAS,CAAE,CAAC;EACzC;EAEA,IAAI,CAACH,aAAa,EAAE,OAAO,IAAI;EAE/B,IAAIM,mBAAmB,GAAG,EAAE;EAE5B,IAAIf,YAAY,IAAIA,YAAY,CAACF,IAAI,CAAC,EAAE;IACtCiB,mBAAmB,GACjB,OAAOf,YAAY,CAACF,IAAI,CAAC,KAAK,QAAQ,GAClC,CAAC,IAAAkB,oBAAW,EAAChB,YAAY,CAACF,IAAI,CAAC,CAAC,CAAC,GACjCE,YAAY,CAACF,IAAI,CAAC,CAACmB,GAAG,CAAC,UAAAC,GAAG;MAAA,OAAI,IAAAF,oBAAW,EAACE,GAAG,CAAC;IAAA,EAAC;EACvD;EACA,IAAMC,QAAQ,GAAG,EAAE;EAEnB,IAAMC,YAAY,GAAGvB,IAAI,CAACC,IAAI,CAAC,CAACuB,OAAO,CACpCJ,GAAG,CAAC,UAAAK,KAAA,EAA+B;IAAA,IAA5BjC,GAAG,GAAAiC,KAAA,CAAHjC,GAAG;MAAakC,KAAK,GAAAD,KAAA,CAAhBE,SAAS;IACpB,IAAMC,WAAW,GAAGrB,kBAAkB,MAAAsB,MAAA,CAAMrC,GAAG,QAAAqC,MAAA,CAAKH,KAAK,SAAMlC,GAAG;IAClE,OAAO,CAACA,GAAG,EAAEoC,WAAW,EAAE,CAACF,KAAK,CAAC;EACnC,CAAC,CAAC,CACDI,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,CAAC;EAETT,YAAY,CAACU,OAAO,CAClB,UAACC,KAAK,EAAEC,CAAC;IAAA,OACPA,CAAC,GAAGvB,aAAa,CAACX,IAAI,CAAC,IACvBqB,QAAQ,CAACc,IAAI,CAAC;MACZhC,KAAK,EAAE,IAAAiC,kBAAU,EAACH,KAAK,CAAC,CAAC,CAAC,CAAC;MAC3BA,KAAK,EAAEA,KAAK,CAAC,CAAC,CAAC;MACfI,IAAI,EAAErC,IAAI;MACVsC,OAAO,EAAErB,mBAAmB,CAACsB,QAAQ,CAACN,KAAK,CAAC,CAAC,CAAC,CAAC;MAC/CO,EAAE,EAAEP,KAAK,CAAC,CAAC,CAAC;MACZQ,QAAQ,EAAER,KAAK,CAAC,CAAC;IACnB,CAAC,CAAC;EAAA,CACN,CAAC;EAED,IAAMS,iBAAiB,GAAG,CAAC/B,aAAa,IAAIA,aAAa,CAACX,IAAI,CAAC,KAAKc,oBAAS;EAE7E,oBACElD,MAAA,YAAA+E,aAAA,CAAA/E,MAAA,YAAAgF,QAAA,QACGxC,YAAY,iBAAIxC,MAAA,YAAA+E,aAAA;IAAKE,SAAS,EAAC;EAA0B,GAAEzC,YAAkB,CAAC,EAC9ED,KAAK,gBAAGvC,MAAA,YAAA+E,aAAA,YAAIxC,KAAS,CAAC,GAAG,EAAE,eAC5BvC,MAAA,YAAA+E,aAAA,CAACzE,WAAA,CAAA4E,UAAU;IACTD,SAAS,EAAC,eAAe;IACzBE,OAAO,EAAE1B,QAAS;IAClB2B,QAAQ,EAAE,SAAAA,SAAAC,KAAA,EAAqB;MAAA,IAAZC,KAAK,GAAAD,KAAA,CAAXlD,IAAI;MACf,IAAMoD,iBAAiB,GAAGD,KAAK,CAC5BrB,MAAM,CAAC,UAAAuB,KAAA;QAAA,IAAGd,OAAO,GAAAc,KAAA,CAAPd,OAAO;QAAA,OAAOA,OAAO;MAAA,EAAC,CAChCnB,GAAG,CAAC,UAAAkC,KAAA;QAAA,IAAGpB,KAAK,GAAAoB,KAAA,CAALpB,KAAK;QAAA,OAAOA,KAAK;MAAA,EAAC;MAC5BhC,kBAAkB,KAAAc,gBAAA,iBAAIf,IAAI,EAAGmD,iBAAiB,GAAI9C,YAAY,CAAC;IACjE;EAAE,CACH,CAAC,EACDN,IAAI,CAACC,IAAI,CAAC,CAACuB,OAAO,CAAC+B,MAAM,GAAGxC,oBAAS,iBACpClD,MAAA,YAAA+E,aAAA;IAAKY,IAAI,EAAC,QAAQ;IAACV,SAAS,EAAC,UAAU;IAACW,OAAO,EAAE3C;EAAsB,GACpE6B,iBAAiB,gBAChB9E,MAAA,YAAA+E,aAAA,CAAA/E,MAAA,YAAAgF,QAAA,qBACEhF,MAAA,YAAA+E,aAAA,yBACE/E,MAAA,YAAA+E,aAAA,CAACxE,GAAA,CAAAsF,aAAa;IAACZ,SAAS,EAAC;EAAa,CAAE,CACvC,CAAC,UAAAjB,MAAA,CACK8B,eAAI,CACb,CAAC,gBAEH9F,MAAA,YAAA+E,aAAA,CAAA/E,MAAA,YAAAgF,QAAA,qBACEhF,MAAA,YAAA+E,aAAA,yBACE/E,MAAA,YAAA+E,aAAA,CAACxE,GAAA,CAAAwF,WAAW;IAACd,SAAS,EAAC;EAAa,CAAE,CACrC,CAAC,UAAAjB,MAAA,CACKgC,eAAI,CACb,CAED,CAEP,CAAC;AAEP,CAAC;AAED/D,QAAQ,CAACgE,SAAS,GAAG;EACnB9D,IAAI,EAAE+D,qBAAS,CAACC,MAAM,CAACC,UAAU;EACjChE,IAAI,EAAE8D,qBAAS,CAACG,MAAM,CAACD,UAAU;EACjC9D,YAAY,EAAE4D,qBAAS,CAACC,MAAM,CAACC,UAAU;EACzC/D,kBAAkB,EAAE6D,qBAAS,CAACI,IAAI,CAACF,UAAU;EAC7C3D,YAAY,EAAEyD,qBAAS,CAACK,IAAI;EAC5BhE,KAAK,EAAE2D,qBAAS,CAACG,MAAM;EACvB7D,YAAY,EAAE0D,qBAAS,CAACG,MAAM;EAC9B3D,kBAAkB,EAAEwD,qBAAS,CAACK;AAChC,CAAC;AAEDtE,QAAQ,CAACuE,YAAY,GAAG;EACtB/D,YAAY,EAAE,KAAK;EACnBF,KAAK,EAAE,EAAE;EACTC,YAAY,EAAE,EAAE;EAChBE,kBAAkB,EAAE;AACtB,CAAC;AAAC,IAAA+D,QAAA,GAEa,IAAAC,cAAS,EAACzE,QAAQ,CAAC;AAAA0E,OAAA,cAAAF,QAAA"}
|
|
1
|
+
{"version":3,"file":"Checkbox.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_lodash","_checkboxes","_fa","_HOC","_helpers","_constants","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Checkbox","_ref","data","prop","updateFilterValues","filterValues","label","elementTitle","shouldSearch","displayFilterCount","_useState","useState","_useState2","_slicedToArray2","checkboxLimit","setCheckboxLimit","handleCheckboxOptions","LIMIT_MIN","_defineProperty2","LIMIT_MAX","checkboxQueryParams","decodeValue","map","val","multiple","sortedValues","buckets","_ref2","count","doc_count","optionLabel","concat","filter","Boolean","sort","forEach","value","i","push","upperFirst","name","checked","includes","id","disabled","shouldDisplayMore","createElement","Fragment","Checkboxes","className","options","onChange","_ref3","eData","newCheckboxValues","_ref4","_ref5","length","role","onClick","FaChevronDown","MORE","FaChevronUp","LESS","propTypes","PropTypes","object","isRequired","string","func","bool","defaultProps","_default","withTitle","exports"],"sources":["../../../../src/components/SearchFilter/components/Checkbox.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport upperFirst from 'lodash.upperfirst';\nimport { Checkboxes } from '@blaze-react/checkboxes';\nimport { FaChevronDown, FaChevronUp } from 'react-icons/fa';\nimport { withTitle } from '../../../HOC';\nimport { decodeValue } from '../helpers';\nimport { LIMIT_MIN, LIMIT_MAX, MORE, LESS } from '../constants';\n\nconst Checkbox = ({\n data,\n prop,\n updateFilterValues,\n filterValues,\n label,\n elementTitle,\n shouldSearch,\n displayFilterCount\n}) => {\n const [checkboxLimit, setCheckboxLimit] = useState(null);\n if (!data[prop]) return null;\n\n const handleCheckboxOptions = () => {\n if (checkboxLimit[prop] === LIMIT_MIN) {\n setCheckboxLimit({ [prop]: LIMIT_MAX });\n } else {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n };\n\n if (!checkboxLimit) {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n\n if (!checkboxLimit) return null;\n\n let checkboxQueryParams = [];\n\n if (filterValues && filterValues[prop]) {\n checkboxQueryParams =\n typeof filterValues[prop] === 'string'\n ? [decodeValue(filterValues[prop])]\n : filterValues[prop].map(val => decodeValue(val));\n }\n const multiple = [];\n\n const sortedValues = data[prop].buckets\n .map(({ key, doc_count: count }) => {\n const optionLabel = displayFilterCount ? `${key} (${count})` : key;\n return [key, optionLabel, !count];\n })\n .filter(Boolean)\n .sort();\n\n sortedValues.forEach(\n (value, i) =>\n i < checkboxLimit[prop] &&\n multiple.push({\n label: upperFirst(value[1]),\n value: value[0],\n name: prop,\n checked: checkboxQueryParams.includes(value[0]),\n id: value[0],\n disabled: value[2]\n })\n );\n\n const shouldDisplayMore = !checkboxLimit || checkboxLimit[prop] === LIMIT_MIN;\n return (\n <>\n {label ? <p>{label}</p> : ''}\n <Checkboxes\n className=\"form-checkbox\"\n options={multiple}\n onChange={({ data: eData }) => {\n const newCheckboxValues = eData\n .filter(({ checked }) => checked)\n .map(({ value }) => value);\n updateFilterValues({ [prop]: newCheckboxValues }, shouldSearch);\n }}\n />\n {data[prop].buckets.length > LIMIT_MIN && (\n <div role=\"button\" className=\"see-more\" onClick={handleCheckboxOptions}>\n {shouldDisplayMore ? (\n <>\n <i>\n <FaChevronDown className=\"inline-icon\" />\n </i>\n {` See ${MORE}`}\n </>\n ) : (\n <>\n <i>\n <FaChevronUp className=\"inline-icon\" />\n </i>\n {` See ${LESS}`}\n </>\n )}\n </div>\n )}\n </>\n );\n};\n\nCheckbox.propTypes = {\n data: PropTypes.object.isRequired,\n prop: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n label: PropTypes.string,\n elementTitle: PropTypes.string,\n displayFilterCount: PropTypes.bool\n};\n\nCheckbox.defaultProps = {\n shouldSearch: false,\n label: '',\n elementTitle: '',\n displayFilterCount: false\n};\n\nexport default withTitle(Checkbox);\n"],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
|
+
require("core-js/modules/es.array.reduce.js");
|
|
11
|
+
require("core-js/modules/es.object.to-string.js");
|
|
12
|
+
var getFilterValue = function getFilterValue(value) {
|
|
13
|
+
// To be updated with future filter options
|
|
14
|
+
switch (value) {
|
|
15
|
+
case 'not':
|
|
16
|
+
return false;
|
|
17
|
+
case 'on':
|
|
18
|
+
return true;
|
|
19
|
+
default:
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
var buildCheckboxFilters = function buildCheckboxFilters(checkboxFilters) {
|
|
24
|
+
return checkboxFilters.reduce(function (acc, checkboxFilter) {
|
|
25
|
+
if (typeof checkboxFilter === 'string') acc.push({
|
|
26
|
+
match: (0, _defineProperty2["default"])({}, checkboxFilter, true)
|
|
27
|
+
});else {
|
|
28
|
+
var filterValue = getFilterValue(checkboxFilter[1]);
|
|
29
|
+
acc.push({
|
|
30
|
+
match: (0, _defineProperty2["default"])({}, checkboxFilter[0], filterValue)
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
return acc;
|
|
34
|
+
}, []);
|
|
35
|
+
};
|
|
36
|
+
var _default = buildCheckboxFilters;
|
|
37
|
+
exports["default"] = _default;
|
|
38
|
+
//# sourceMappingURL=build-checkbox-filters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-checkbox-filters.js","names":["getFilterValue","value","buildCheckboxFilters","checkboxFilters","reduce","acc","checkboxFilter","push","match","_defineProperty2","filterValue","_default","exports"],"sources":["../../src/helpers/build-checkbox-filters.js"],"sourcesContent":["const getFilterValue = value => {\n // To be updated with future filter options\n switch (value) {\n case 'not':\n return false;\n case 'on':\n return true;\n default:\n return true;\n }\n};\n\nconst buildCheckboxFilters = checkboxFilters =>\n checkboxFilters.reduce((acc, checkboxFilter) => {\n if (typeof checkboxFilter === 'string') acc.push({ match: { [checkboxFilter]: true } });\n else {\n const filterValue = getFilterValue(checkboxFilter[1]);\n acc.push({ match: { [checkboxFilter[0]]: filterValue } });\n }\n return acc;\n }, []);\n\nexport default buildCheckboxFilters;\n"],"mappings":";;;;;;;;;;;AAAA,IAAMA,cAAc,GAAG,SAAjBA,cAAcA,CAAGC,KAAK,EAAI;EAC9B;EACA,QAAQA,KAAK;IACX,KAAK,KAAK;MACR,OAAO,KAAK;IACd,KAAK,IAAI;MACP,OAAO,IAAI;IACb;MACE,OAAO,IAAI;EACf;AACF,CAAC;AAED,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGC,eAAe;EAAA,OAC1CA,eAAe,CAACC,MAAM,CAAC,UAACC,GAAG,EAAEC,cAAc,EAAK;IAC9C,IAAI,OAAOA,cAAc,KAAK,QAAQ,EAAED,GAAG,CAACE,IAAI,CAAC;MAAEC,KAAK,MAAAC,gBAAA,iBAAKH,cAAc,EAAG,IAAI;IAAG,CAAC,CAAC,CAAC,KACnF;MACH,IAAMI,WAAW,GAAGV,cAAc,CAACM,cAAc,CAAC,CAAC,CAAC,CAAC;MACrDD,GAAG,CAACE,IAAI,CAAC;QAAEC,KAAK,MAAAC,gBAAA,iBAAKH,cAAc,CAAC,CAAC,CAAC,EAAGI,WAAW;MAAG,CAAC,CAAC;IAC3D;IACA,OAAOL,GAAG;EACZ,CAAC,EAAE,EAAE,CAAC;AAAA;AAAC,IAAAM,QAAA,GAEMT,oBAAoB;AAAAU,OAAA,cAAAD,QAAA"}
|
|
@@ -13,29 +13,21 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
13
13
|
});
|
|
14
14
|
exports["default"] = void 0;
|
|
15
15
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
16
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
17
16
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
18
|
-
require("
|
|
19
|
-
require("core-js/modules/es.object.to-string.js");
|
|
17
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
20
18
|
require("core-js/modules/es.object.keys.js");
|
|
21
19
|
require("core-js/modules/es.array.map.js");
|
|
22
20
|
require("core-js/modules/es.array.includes.js");
|
|
23
21
|
require("core-js/modules/es.string.includes.js");
|
|
24
22
|
require("core-js/modules/es.array.filter.js");
|
|
23
|
+
require("core-js/modules/es.object.to-string.js");
|
|
25
24
|
require("core-js/modules/es.array.concat.js");
|
|
26
25
|
require("core-js/modules/es.array.is-array.js");
|
|
27
26
|
var _getItemsToDisplayIds = _interopRequireDefault(require("./get-items-to-display-ids"));
|
|
28
27
|
var _constants = require("../constants");
|
|
28
|
+
var _buildCheckboxFilters = _interopRequireDefault(require("./build-checkbox-filters"));
|
|
29
29
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
30
30
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
31
|
-
var buildCheckboxFilters = function buildCheckboxFilters(checkboxFilters) {
|
|
32
|
-
return checkboxFilters.reduce(function (acc, checkboxFilter) {
|
|
33
|
-
acc.push({
|
|
34
|
-
match: (0, _defineProperty2["default"])({}, checkboxFilter, true)
|
|
35
|
-
});
|
|
36
|
-
return acc;
|
|
37
|
-
}, []);
|
|
38
|
-
};
|
|
39
31
|
var buildFilterValues = function buildFilterValues(listFilterValues, relations, stringProps) {
|
|
40
32
|
var listFilterValuesKeys = Object.keys(listFilterValues);
|
|
41
33
|
return listFilterValuesKeys.map(function (key) {
|
|
@@ -112,7 +104,7 @@ var buildRawQueryBase = function buildRawQueryBase(_ref3) {
|
|
|
112
104
|
_ref3$addListFiltersT = _ref3.addListFiltersToQuery,
|
|
113
105
|
addListFiltersToQuery = _ref3$addListFiltersT === void 0 ? false : _ref3$addListFiltersT;
|
|
114
106
|
var listFilterFinalValues = buildFilterValues(listFilterValues, relations, stringProps);
|
|
115
|
-
var checkboxFiltersValue =
|
|
107
|
+
var checkboxFiltersValue = (0, _buildCheckboxFilters["default"])(checkboxFilters);
|
|
116
108
|
var itemsToDisplayValues = buildItemsToDisplayValues(itemsToDisplay);
|
|
117
109
|
var isOperatorOr = filterOperator === _constants.OR;
|
|
118
110
|
var queryFilters = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-raw-query-base.js","names":["_getItemsToDisplayIds","_interopRequireDefault","require","_constants","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","
|
|
1
|
+
{"version":3,"file":"build-raw-query-base.js","names":["_getItemsToDisplayIds","_interopRequireDefault","require","_constants","_buildCheckboxFilters","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","buildFilterValues","listFilterValues","relations","stringProps","listFilterValuesKeys","map","key","values","el","updatedKey","isRelation","includes","_key$split","split","_key$split2","_slicedToArray2","relationName","relationProp","_relations$filter","_ref","localField","_relations$filter2","relation","_ref2","_ref2$entityIdentifie","entityIdentifier","concat","fieldName","KEYWORD","match","bool","should","buildItemsToDisplayValues","itemsToDisplay","itemToDisplayIds","getItemsToDisplayIds","ids","buildShouldValues","docTypes","Array","isArray","docType","buildRawQueryBase","_ref3","_ref4","id","_ref3$filterValues","filterValues","_ref3$filterValues2","_ref3$filterValues2$c","checkboxFilters","_ref3$filterValues2$l","filterOperator","_ref3$addListFiltersT","addListFiltersToQuery","listFilterFinalValues","checkboxFiltersValue","buildCheckboxFilters","itemsToDisplayValues","isOperatorOr","OR","queryFilters","baseBoolObject","minimum_should_match","must","_toConsumableArray2","OR_OPERATOR","_baseBoolObject$must","mustNot","undefined","queryFilter","must_not","_default","exports"],"sources":["../../src/helpers/build-raw-query-base.js"],"sourcesContent":["import getItemsToDisplayIds from './get-items-to-display-ids';\nimport { OR, OR_OPERATOR, KEYWORD } from '../constants';\nimport buildCheckboxFilters from './build-checkbox-filters';\n\nconst buildFilterValues = (listFilterValues, relations, stringProps) => {\n const listFilterValuesKeys = Object.keys(listFilterValues);\n\n return listFilterValuesKeys.map(key => {\n const values = listFilterValues[key].map(el => {\n let updatedKey = key;\n\n const isRelation = key.includes('.');\n\n if (isRelation) {\n const [relationName, relationProp] = key.split('.');\n const [relation] = relations.filter(({ localField }) => localField === relationName);\n const { entityIdentifier = '' } = relation || {};\n if (entityIdentifier && entityIdentifier !== relationName)\n updatedKey = `${entityIdentifier}.${relationProp}`;\n }\n const fieldName = stringProps.includes(updatedKey) ? `${key}.${KEYWORD}` : key;\n return { match: { [fieldName]: el } };\n });\n return { bool: { should: values } };\n });\n};\n\nconst buildItemsToDisplayValues = itemsToDisplay => {\n if (!itemsToDisplay || !itemsToDisplay.length) return [];\n const itemToDisplayIds = getItemsToDisplayIds(itemsToDisplay);\n return [{ ids: { values: itemToDisplayIds } }];\n};\n\nconst buildShouldValues = docTypes => {\n if (Array.isArray(docTypes)) {\n return docTypes.map(docType => ({\n match: {\n docType\n }\n }));\n }\n return [\n {\n match: {\n docType: docTypes\n }\n }\n ];\n};\n\nconst buildRawQueryBase = ({\n docType,\n id,\n filterValues: { checkboxFilters = [], listFilterValues = {} } = {},\n filterOperator,\n relations,\n stringProps,\n itemsToDisplay,\n addListFiltersToQuery = false\n}) => {\n const listFilterFinalValues = buildFilterValues(listFilterValues, relations, stringProps);\n const checkboxFiltersValue = buildCheckboxFilters(checkboxFilters);\n const itemsToDisplayValues = buildItemsToDisplayValues(itemsToDisplay);\n const isOperatorOr = filterOperator === OR;\n\n const queryFilters = [];\n const baseBoolObject = {\n should: buildShouldValues(docType),\n minimum_should_match: 1,\n must: [...itemsToDisplayValues, ...checkboxFiltersValue]\n };\n\n if (isOperatorOr) {\n if (addListFiltersToQuery) {\n queryFilters.push(...listFilterFinalValues);\n } else {\n baseBoolObject.must.push({ bool: { [OR_OPERATOR]: [...listFilterFinalValues] } });\n }\n } else {\n baseBoolObject.must.push(...listFilterFinalValues);\n }\n\n const mustNot = id ? [{ ids: { values: [id] } }] : undefined;\n\n const queryFilter = queryFilters.length\n ? { [OR_OPERATOR]: queryFilters, minimum_should_match: 1 }\n : {};\n return {\n ...queryFilter,\n filter: {\n bool: baseBoolObject\n },\n must_not: mustNot\n };\n};\n\nexport default buildRawQueryBase;\n"],"mappings":"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"}
|
|
@@ -14,9 +14,7 @@ require("core-js/modules/es.array.slice.js");
|
|
|
14
14
|
require("core-js/modules/es.array.join.js");
|
|
15
15
|
require("core-js/modules/es.array.concat.js");
|
|
16
16
|
var _constants = require("../constants");
|
|
17
|
-
var
|
|
18
|
-
checkboxFilters.push(name);
|
|
19
|
-
};
|
|
17
|
+
var _getCheckboxFilters = _interopRequireDefault(require("./get-checkbox-filters"));
|
|
20
18
|
var getFilterValues = function getFilterValues(filterBy) {
|
|
21
19
|
return filterBy.reduce(function (acc, filter) {
|
|
22
20
|
var _filter$split = filter.split('/'),
|
|
@@ -38,12 +36,8 @@ var buildSetFilters = function buildSetFilters(_ref) {
|
|
|
38
36
|
filterByFeatured = _ref.filterByFeatured,
|
|
39
37
|
filterBySponsored = _ref.filterBySponsored;
|
|
40
38
|
var checkboxFilters = [];
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
}
|
|
44
|
-
if (filterBySponsored) {
|
|
45
|
-
getCheckboxFilters(checkboxFilters, _constants.SPONSORED);
|
|
46
|
-
}
|
|
39
|
+
(0, _getCheckboxFilters["default"])(checkboxFilters, _constants.FEATURED, filterByFeatured);
|
|
40
|
+
(0, _getCheckboxFilters["default"])(checkboxFilters, _constants.SPONSORED, filterBySponsored);
|
|
47
41
|
var shouldApplyFilterValues = filterBy.length && filterByProperty.length;
|
|
48
42
|
if (!shouldApplyFilterValues) return {
|
|
49
43
|
checkboxFilters: checkboxFilters,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-set-filters.js","names":["_constants","require","
|
|
1
|
+
{"version":3,"file":"build-set-filters.js","names":["_constants","require","_getCheckboxFilters","_interopRequireDefault","getFilterValues","filterBy","reduce","acc","filter","_filter$split","split","_filter$split2","_toArray2","fieldName","values","slice","value","join","previousValue","finalValue","concat","_toConsumableArray2","buildSetFilters","_ref","_ref$filterBy","_ref$filterByProperty","filterByProperty","filterByFeatured","filterBySponsored","checkboxFilters","getCheckboxFilters","FEATURED","SPONSORED","shouldApplyFilterValues","length","listFilterValues","_default","exports"],"sources":["../../src/helpers/build-set-filters.js"],"sourcesContent":["import { FEATURED, SPONSORED } from '../constants';\nimport getCheckboxFilters from './get-checkbox-filters';\n\nconst getFilterValues = filterBy =>\n filterBy.reduce((acc, filter) => {\n const [fieldName, ...values] = filter.split('/');\n const value = values.join('/');\n const previousValue = acc[fieldName];\n const finalValue = previousValue ? [...previousValue, value] : [value];\n\n acc[fieldName] = finalValue;\n return acc;\n }, {});\n\nconst buildSetFilters = ({\n filterBy = [],\n filterByProperty = [],\n filterByFeatured,\n filterBySponsored\n}) => {\n const checkboxFilters = [];\n getCheckboxFilters(checkboxFilters, FEATURED, filterByFeatured);\n getCheckboxFilters(checkboxFilters, SPONSORED, filterBySponsored);\n\n const shouldApplyFilterValues = filterBy.length && filterByProperty.length;\n if (!shouldApplyFilterValues) return { checkboxFilters, listFilterValues: {} };\n\n const listFilterValues = getFilterValues(filterBy);\n return { checkboxFilters, listFilterValues };\n};\n\nexport default buildSetFilters;\n"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,mBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAMG,eAAe,GAAG,SAAlBA,eAAeA,CAAGC,QAAQ;EAAA,OAC9BA,QAAQ,CAACC,MAAM,CAAC,UAACC,GAAG,EAAEC,MAAM,EAAK;IAC/B,IAAAC,aAAA,GAA+BD,MAAM,CAACE,KAAK,CAAC,GAAG,CAAC;MAAAC,cAAA,OAAAC,SAAA,aAAAH,aAAA;MAAzCI,SAAS,GAAAF,cAAA;MAAKG,MAAM,GAAAH,cAAA,CAAAI,KAAA;IAC3B,IAAMC,KAAK,GAAGF,MAAM,CAACG,IAAI,CAAC,GAAG,CAAC;IAC9B,IAAMC,aAAa,GAAGX,GAAG,CAACM,SAAS,CAAC;IACpC,IAAMM,UAAU,GAAGD,aAAa,MAAAE,MAAA,KAAAC,mBAAA,aAAOH,aAAa,IAAEF,KAAK,KAAI,CAACA,KAAK,CAAC;IAEtET,GAAG,CAACM,SAAS,CAAC,GAAGM,UAAU;IAC3B,OAAOZ,GAAG;EACZ,CAAC,EAAE,CAAC,CAAC,CAAC;AAAA;AAER,IAAMe,eAAe,GAAG,SAAlBA,eAAeA,CAAAC,IAAA,EAKf;EAAA,IAAAC,aAAA,GAAAD,IAAA,CAJJlB,QAAQ;IAARA,QAAQ,GAAAmB,aAAA,cAAG,EAAE,GAAAA,aAAA;IAAAC,qBAAA,GAAAF,IAAA,CACbG,gBAAgB;IAAhBA,gBAAgB,GAAAD,qBAAA,cAAG,EAAE,GAAAA,qBAAA;IACrBE,gBAAgB,GAAAJ,IAAA,CAAhBI,gBAAgB;IAChBC,iBAAiB,GAAAL,IAAA,CAAjBK,iBAAiB;EAEjB,IAAMC,eAAe,GAAG,EAAE;EAC1B,IAAAC,8BAAkB,EAACD,eAAe,EAAEE,mBAAQ,EAAEJ,gBAAgB,CAAC;EAC/D,IAAAG,8BAAkB,EAACD,eAAe,EAAEG,oBAAS,EAAEJ,iBAAiB,CAAC;EAEjE,IAAMK,uBAAuB,GAAG5B,QAAQ,CAAC6B,MAAM,IAAIR,gBAAgB,CAACQ,MAAM;EAC1E,IAAI,CAACD,uBAAuB,EAAE,OAAO;IAAEJ,eAAe,EAAfA,eAAe;IAAEM,gBAAgB,EAAE,CAAC;EAAE,CAAC;EAE9E,IAAMA,gBAAgB,GAAG/B,eAAe,CAACC,QAAQ,CAAC;EAClD,OAAO;IAAEwB,eAAe,EAAfA,eAAe;IAAEM,gBAAgB,EAAhBA;EAAiB,CAAC;AAC9C,CAAC;AAAC,IAAAC,QAAA,GAEad,eAAe;AAAAe,OAAA,cAAAD,QAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var getCheckboxFilters = function getCheckboxFilters(checkboxFilters, name, value) {
|
|
9
|
+
if (typeof value === 'string') {
|
|
10
|
+
if (value !== 'off') checkboxFilters.push([name, value]);
|
|
11
|
+
} else if (value) checkboxFilters.push(name);
|
|
12
|
+
};
|
|
13
|
+
var _default = getCheckboxFilters;
|
|
14
|
+
exports["default"] = _default;
|
|
15
|
+
//# sourceMappingURL=get-checkbox-filters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-checkbox-filters.js","names":["getCheckboxFilters","checkboxFilters","name","value","push","_default","exports"],"sources":["../../src/helpers/get-checkbox-filters.js"],"sourcesContent":["const getCheckboxFilters = (checkboxFilters, name, value) => {\n if (typeof value === 'string') {\n if (value !== 'off') checkboxFilters.push([name, value]);\n } else if (value) checkboxFilters.push(name);\n};\n\nexport default getCheckboxFilters;\n"],"mappings":";;;;;;;AAAA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,eAAe,EAAEC,IAAI,EAAEC,KAAK,EAAK;EAC3D,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7B,IAAIA,KAAK,KAAK,KAAK,EAAEF,eAAe,CAACG,IAAI,CAAC,CAACF,IAAI,EAAEC,KAAK,CAAC,CAAC;EAC1D,CAAC,MAAM,IAAIA,KAAK,EAAEF,eAAe,CAACG,IAAI,CAACF,IAAI,CAAC;AAC9C,CAAC;AAAC,IAAAG,QAAA,GAEaL,kBAAkB;AAAAM,OAAA,cAAAD,QAAA"}
|
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
2
|
-
const _excluded = ["children", "name"];
|
|
3
1
|
import React from 'react';
|
|
4
2
|
import PropTypes from 'prop-types';
|
|
5
3
|
import { hasChildren } from '../../helpers';
|
|
6
|
-
const ContentGroupSection =
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
} = _ref,
|
|
11
|
-
props = _objectWithoutProperties(_ref, _excluded);
|
|
4
|
+
const ContentGroupSection = ({
|
|
5
|
+
children,
|
|
6
|
+
name
|
|
7
|
+
}) => {
|
|
12
8
|
if (!hasChildren(children)) return null;
|
|
13
9
|
return /*#__PURE__*/React.createElement("div", {
|
|
14
10
|
key: name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentGroupSection.js","names":["React","PropTypes","hasChildren","ContentGroupSection","
|
|
1
|
+
{"version":3,"file":"ContentGroupSection.js","names":["React","PropTypes","hasChildren","ContentGroupSection","children","name","createElement","key","className","propTypes","oneOfType","arrayOf","node","string","defaultProps"],"sources":["../../../src/components/ContentGroupSection/ContentGroupSection.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { hasChildren } from '../../helpers';\n\nconst ContentGroupSection = ({ children, name }) => {\n if (!hasChildren(children)) return null;\n\n return (\n <div key={name} className=\"content-group-section\">\n {children}\n </div>\n );\n};\n\nContentGroupSection.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n name: PropTypes.string\n};\n\nContentGroupSection.defaultProps = { children: null, name: '' };\n\nexport default ContentGroupSection;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,WAAW,QAAQ,eAAe;AAE3C,MAAMC,mBAAmB,GAAGA,CAAC;EAAEC,QAAQ;EAAEC;AAAK,CAAC,KAAK;EAClD,IAAI,CAACH,WAAW,CAACE,QAAQ,CAAC,EAAE,OAAO,IAAI;EAEvC,oBACEJ,KAAA,CAAAM,aAAA;IAAKC,GAAG,EAAEF,IAAK;IAACG,SAAS,EAAC;EAAuB,GAC9CJ,QACE,CAAC;AAEV,CAAC;AAEDD,mBAAmB,CAACM,SAAS,GAAG;EAC9BL,QAAQ,EAAEH,SAAS,CAACS,SAAS,CAAC,CAACT,SAAS,CAACU,OAAO,CAACV,SAAS,CAACW,IAAI,CAAC,EAAEX,SAAS,CAACW,IAAI,CAAC,CAAC;EAClFP,IAAI,EAAEJ,SAAS,CAACY;AAClB,CAAC;AAEDV,mBAAmB,CAACW,YAAY,GAAG;EAAEV,QAAQ,EAAE,IAAI;EAAEC,IAAI,EAAE;AAAG,CAAC;AAE/D,eAAeF,mBAAmB"}
|
|
@@ -56,9 +56,7 @@ const Checkbox = ({
|
|
|
56
56
|
disabled: value[2]
|
|
57
57
|
}));
|
|
58
58
|
const shouldDisplayMore = !checkboxLimit || checkboxLimit[prop] === LIMIT_MIN;
|
|
59
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null,
|
|
60
|
-
className: "heading heading--section"
|
|
61
|
-
}, elementTitle), label ? /*#__PURE__*/React.createElement("p", null, label) : '', /*#__PURE__*/React.createElement(Checkboxes, {
|
|
59
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, label ? /*#__PURE__*/React.createElement("p", null, label) : '', /*#__PURE__*/React.createElement(Checkboxes, {
|
|
62
60
|
className: "form-checkbox",
|
|
63
61
|
options: multiple,
|
|
64
62
|
onChange: ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.js","names":["React","useState","PropTypes","upperFirst","Checkboxes","FaChevronDown","FaChevronUp","withTitle","decodeValue","LIMIT_MIN","LIMIT_MAX","MORE","LESS","Checkbox","data","prop","updateFilterValues","filterValues","label","elementTitle","shouldSearch","displayFilterCount","checkboxLimit","setCheckboxLimit","handleCheckboxOptions","checkboxQueryParams","map","val","multiple","sortedValues","buckets","key","doc_count","count","optionLabel","filter","Boolean","sort","forEach","value","i","push","name","checked","includes","id","disabled","shouldDisplayMore","createElement","Fragment","className","options","onChange","eData","newCheckboxValues","length","role","onClick","propTypes","object","isRequired","string","func","bool","defaultProps"],"sources":["../../../../src/components/SearchFilter/components/Checkbox.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport upperFirst from 'lodash.upperfirst';\nimport { Checkboxes } from '@blaze-react/checkboxes';\nimport { FaChevronDown, FaChevronUp } from 'react-icons/fa';\nimport { withTitle } from '../../../HOC';\nimport { decodeValue } from '../helpers';\nimport { LIMIT_MIN, LIMIT_MAX, MORE, LESS } from '../constants';\n\nconst Checkbox = ({\n data,\n prop,\n updateFilterValues,\n filterValues,\n label,\n elementTitle,\n shouldSearch,\n displayFilterCount\n}) => {\n const [checkboxLimit, setCheckboxLimit] = useState(null);\n if (!data[prop]) return null;\n\n const handleCheckboxOptions = () => {\n if (checkboxLimit[prop] === LIMIT_MIN) {\n setCheckboxLimit({ [prop]: LIMIT_MAX });\n } else {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n };\n\n if (!checkboxLimit) {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n\n if (!checkboxLimit) return null;\n\n let checkboxQueryParams = [];\n\n if (filterValues && filterValues[prop]) {\n checkboxQueryParams =\n typeof filterValues[prop] === 'string'\n ? [decodeValue(filterValues[prop])]\n : filterValues[prop].map(val => decodeValue(val));\n }\n const multiple = [];\n\n const sortedValues = data[prop].buckets\n .map(({ key, doc_count: count }) => {\n const optionLabel = displayFilterCount ? `${key} (${count})` : key;\n return [key, optionLabel, !count];\n })\n .filter(Boolean)\n .sort();\n\n sortedValues.forEach(\n (value, i) =>\n i < checkboxLimit[prop] &&\n multiple.push({\n label: upperFirst(value[1]),\n value: value[0],\n name: prop,\n checked: checkboxQueryParams.includes(value[0]),\n id: value[0],\n disabled: value[2]\n })\n );\n\n const shouldDisplayMore = !checkboxLimit || checkboxLimit[prop] === LIMIT_MIN;\n
|
|
1
|
+
{"version":3,"file":"Checkbox.js","names":["React","useState","PropTypes","upperFirst","Checkboxes","FaChevronDown","FaChevronUp","withTitle","decodeValue","LIMIT_MIN","LIMIT_MAX","MORE","LESS","Checkbox","data","prop","updateFilterValues","filterValues","label","elementTitle","shouldSearch","displayFilterCount","checkboxLimit","setCheckboxLimit","handleCheckboxOptions","checkboxQueryParams","map","val","multiple","sortedValues","buckets","key","doc_count","count","optionLabel","filter","Boolean","sort","forEach","value","i","push","name","checked","includes","id","disabled","shouldDisplayMore","createElement","Fragment","className","options","onChange","eData","newCheckboxValues","length","role","onClick","propTypes","object","isRequired","string","func","bool","defaultProps"],"sources":["../../../../src/components/SearchFilter/components/Checkbox.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport upperFirst from 'lodash.upperfirst';\nimport { Checkboxes } from '@blaze-react/checkboxes';\nimport { FaChevronDown, FaChevronUp } from 'react-icons/fa';\nimport { withTitle } from '../../../HOC';\nimport { decodeValue } from '../helpers';\nimport { LIMIT_MIN, LIMIT_MAX, MORE, LESS } from '../constants';\n\nconst Checkbox = ({\n data,\n prop,\n updateFilterValues,\n filterValues,\n label,\n elementTitle,\n shouldSearch,\n displayFilterCount\n}) => {\n const [checkboxLimit, setCheckboxLimit] = useState(null);\n if (!data[prop]) return null;\n\n const handleCheckboxOptions = () => {\n if (checkboxLimit[prop] === LIMIT_MIN) {\n setCheckboxLimit({ [prop]: LIMIT_MAX });\n } else {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n };\n\n if (!checkboxLimit) {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n\n if (!checkboxLimit) return null;\n\n let checkboxQueryParams = [];\n\n if (filterValues && filterValues[prop]) {\n checkboxQueryParams =\n typeof filterValues[prop] === 'string'\n ? [decodeValue(filterValues[prop])]\n : filterValues[prop].map(val => decodeValue(val));\n }\n const multiple = [];\n\n const sortedValues = data[prop].buckets\n .map(({ key, doc_count: count }) => {\n const optionLabel = displayFilterCount ? `${key} (${count})` : key;\n return [key, optionLabel, !count];\n })\n .filter(Boolean)\n .sort();\n\n sortedValues.forEach(\n (value, i) =>\n i < checkboxLimit[prop] &&\n multiple.push({\n label: upperFirst(value[1]),\n value: value[0],\n name: prop,\n checked: checkboxQueryParams.includes(value[0]),\n id: value[0],\n disabled: value[2]\n })\n );\n\n const shouldDisplayMore = !checkboxLimit || checkboxLimit[prop] === LIMIT_MIN;\n return (\n <>\n {label ? <p>{label}</p> : ''}\n <Checkboxes\n className=\"form-checkbox\"\n options={multiple}\n onChange={({ data: eData }) => {\n const newCheckboxValues = eData\n .filter(({ checked }) => checked)\n .map(({ value }) => value);\n updateFilterValues({ [prop]: newCheckboxValues }, shouldSearch);\n }}\n />\n {data[prop].buckets.length > LIMIT_MIN && (\n <div role=\"button\" className=\"see-more\" onClick={handleCheckboxOptions}>\n {shouldDisplayMore ? (\n <>\n <i>\n <FaChevronDown className=\"inline-icon\" />\n </i>\n {` See ${MORE}`}\n </>\n ) : (\n <>\n <i>\n <FaChevronUp className=\"inline-icon\" />\n </i>\n {` See ${LESS}`}\n </>\n )}\n </div>\n )}\n </>\n );\n};\n\nCheckbox.propTypes = {\n data: PropTypes.object.isRequired,\n prop: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n label: PropTypes.string,\n elementTitle: PropTypes.string,\n displayFilterCount: PropTypes.bool\n};\n\nCheckbox.defaultProps = {\n shouldSearch: false,\n label: '',\n elementTitle: '',\n displayFilterCount: false\n};\n\nexport default withTitle(Checkbox);\n"],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
const getFilterValue = value => {
|
|
2
|
+
// To be updated with future filter options
|
|
3
|
+
switch (value) {
|
|
4
|
+
case 'not':
|
|
5
|
+
return false;
|
|
6
|
+
case 'on':
|
|
7
|
+
return true;
|
|
8
|
+
default:
|
|
9
|
+
return true;
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
const buildCheckboxFilters = checkboxFilters => checkboxFilters.reduce((acc, checkboxFilter) => {
|
|
13
|
+
if (typeof checkboxFilter === 'string') acc.push({
|
|
14
|
+
match: {
|
|
15
|
+
[checkboxFilter]: true
|
|
16
|
+
}
|
|
17
|
+
});else {
|
|
18
|
+
const filterValue = getFilterValue(checkboxFilter[1]);
|
|
19
|
+
acc.push({
|
|
20
|
+
match: {
|
|
21
|
+
[checkboxFilter[0]]: filterValue
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
return acc;
|
|
26
|
+
}, []);
|
|
27
|
+
export default buildCheckboxFilters;
|
|
28
|
+
//# sourceMappingURL=build-checkbox-filters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-checkbox-filters.js","names":["getFilterValue","value","buildCheckboxFilters","checkboxFilters","reduce","acc","checkboxFilter","push","match","filterValue"],"sources":["../../src/helpers/build-checkbox-filters.js"],"sourcesContent":["const getFilterValue = value => {\n // To be updated with future filter options\n switch (value) {\n case 'not':\n return false;\n case 'on':\n return true;\n default:\n return true;\n }\n};\n\nconst buildCheckboxFilters = checkboxFilters =>\n checkboxFilters.reduce((acc, checkboxFilter) => {\n if (typeof checkboxFilter === 'string') acc.push({ match: { [checkboxFilter]: true } });\n else {\n const filterValue = getFilterValue(checkboxFilter[1]);\n acc.push({ match: { [checkboxFilter[0]]: filterValue } });\n }\n return acc;\n }, []);\n\nexport default buildCheckboxFilters;\n"],"mappings":"AAAA,MAAMA,cAAc,GAAGC,KAAK,IAAI;EAC9B;EACA,QAAQA,KAAK;IACX,KAAK,KAAK;MACR,OAAO,KAAK;IACd,KAAK,IAAI;MACP,OAAO,IAAI;IACb;MACE,OAAO,IAAI;EACf;AACF,CAAC;AAED,MAAMC,oBAAoB,GAAGC,eAAe,IAC1CA,eAAe,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEC,cAAc,KAAK;EAC9C,IAAI,OAAOA,cAAc,KAAK,QAAQ,EAAED,GAAG,CAACE,IAAI,CAAC;IAAEC,KAAK,EAAE;MAAE,CAACF,cAAc,GAAG;IAAK;EAAE,CAAC,CAAC,CAAC,KACnF;IACH,MAAMG,WAAW,GAAGT,cAAc,CAACM,cAAc,CAAC,CAAC,CAAC,CAAC;IACrDD,GAAG,CAACE,IAAI,CAAC;MAAEC,KAAK,EAAE;QAAE,CAACF,cAAc,CAAC,CAAC,CAAC,GAAGG;MAAY;IAAE,CAAC,CAAC;EAC3D;EACA,OAAOJ,GAAG;AACZ,CAAC,EAAE,EAAE,CAAC;AAER,eAAeH,oBAAoB"}
|
|
@@ -3,14 +3,7 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
3
3
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
4
|
import getItemsToDisplayIds from './get-items-to-display-ids';
|
|
5
5
|
import { OR, OR_OPERATOR, KEYWORD } from '../constants';
|
|
6
|
-
|
|
7
|
-
acc.push({
|
|
8
|
-
match: {
|
|
9
|
-
[checkboxFilter]: true
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
|
-
return acc;
|
|
13
|
-
}, []);
|
|
6
|
+
import buildCheckboxFilters from './build-checkbox-filters';
|
|
14
7
|
const buildFilterValues = (listFilterValues, relations, stringProps) => {
|
|
15
8
|
const listFilterValuesKeys = Object.keys(listFilterValues);
|
|
16
9
|
return listFilterValuesKeys.map(key => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-raw-query-base.js","names":["getItemsToDisplayIds","OR","OR_OPERATOR","KEYWORD","buildCheckboxFilters","
|
|
1
|
+
{"version":3,"file":"build-raw-query-base.js","names":["getItemsToDisplayIds","OR","OR_OPERATOR","KEYWORD","buildCheckboxFilters","buildFilterValues","listFilterValues","relations","stringProps","listFilterValuesKeys","Object","keys","map","key","values","el","updatedKey","isRelation","includes","relationName","relationProp","split","relation","filter","localField","entityIdentifier","fieldName","match","bool","should","buildItemsToDisplayValues","itemsToDisplay","length","itemToDisplayIds","ids","buildShouldValues","docTypes","Array","isArray","docType","buildRawQueryBase","id","filterValues","checkboxFilters","filterOperator","addListFiltersToQuery","listFilterFinalValues","checkboxFiltersValue","itemsToDisplayValues","isOperatorOr","queryFilters","baseBoolObject","minimum_should_match","must","push","mustNot","undefined","queryFilter","_objectSpread","must_not"],"sources":["../../src/helpers/build-raw-query-base.js"],"sourcesContent":["import getItemsToDisplayIds from './get-items-to-display-ids';\nimport { OR, OR_OPERATOR, KEYWORD } from '../constants';\nimport buildCheckboxFilters from './build-checkbox-filters';\n\nconst buildFilterValues = (listFilterValues, relations, stringProps) => {\n const listFilterValuesKeys = Object.keys(listFilterValues);\n\n return listFilterValuesKeys.map(key => {\n const values = listFilterValues[key].map(el => {\n let updatedKey = key;\n\n const isRelation = key.includes('.');\n\n if (isRelation) {\n const [relationName, relationProp] = key.split('.');\n const [relation] = relations.filter(({ localField }) => localField === relationName);\n const { entityIdentifier = '' } = relation || {};\n if (entityIdentifier && entityIdentifier !== relationName)\n updatedKey = `${entityIdentifier}.${relationProp}`;\n }\n const fieldName = stringProps.includes(updatedKey) ? `${key}.${KEYWORD}` : key;\n return { match: { [fieldName]: el } };\n });\n return { bool: { should: values } };\n });\n};\n\nconst buildItemsToDisplayValues = itemsToDisplay => {\n if (!itemsToDisplay || !itemsToDisplay.length) return [];\n const itemToDisplayIds = getItemsToDisplayIds(itemsToDisplay);\n return [{ ids: { values: itemToDisplayIds } }];\n};\n\nconst buildShouldValues = docTypes => {\n if (Array.isArray(docTypes)) {\n return docTypes.map(docType => ({\n match: {\n docType\n }\n }));\n }\n return [\n {\n match: {\n docType: docTypes\n }\n }\n ];\n};\n\nconst buildRawQueryBase = ({\n docType,\n id,\n filterValues: { checkboxFilters = [], listFilterValues = {} } = {},\n filterOperator,\n relations,\n stringProps,\n itemsToDisplay,\n addListFiltersToQuery = false\n}) => {\n const listFilterFinalValues = buildFilterValues(listFilterValues, relations, stringProps);\n const checkboxFiltersValue = buildCheckboxFilters(checkboxFilters);\n const itemsToDisplayValues = buildItemsToDisplayValues(itemsToDisplay);\n const isOperatorOr = filterOperator === OR;\n\n const queryFilters = [];\n const baseBoolObject = {\n should: buildShouldValues(docType),\n minimum_should_match: 1,\n must: [...itemsToDisplayValues, ...checkboxFiltersValue]\n };\n\n if (isOperatorOr) {\n if (addListFiltersToQuery) {\n queryFilters.push(...listFilterFinalValues);\n } else {\n baseBoolObject.must.push({ bool: { [OR_OPERATOR]: [...listFilterFinalValues] } });\n }\n } else {\n baseBoolObject.must.push(...listFilterFinalValues);\n }\n\n const mustNot = id ? [{ ids: { values: [id] } }] : undefined;\n\n const queryFilter = queryFilters.length\n ? { [OR_OPERATOR]: queryFilters, minimum_should_match: 1 }\n : {};\n return {\n ...queryFilter,\n filter: {\n bool: baseBoolObject\n },\n must_not: mustNot\n };\n};\n\nexport default buildRawQueryBase;\n"],"mappings":"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"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { FEATURED, SPONSORED } from '../constants';
|
|
2
|
-
|
|
3
|
-
checkboxFilters.push(name);
|
|
4
|
-
};
|
|
2
|
+
import getCheckboxFilters from './get-checkbox-filters';
|
|
5
3
|
const getFilterValues = filterBy => filterBy.reduce((acc, filter) => {
|
|
6
4
|
const [fieldName, ...values] = filter.split('/');
|
|
7
5
|
const value = values.join('/');
|
|
@@ -17,12 +15,8 @@ const buildSetFilters = ({
|
|
|
17
15
|
filterBySponsored
|
|
18
16
|
}) => {
|
|
19
17
|
const checkboxFilters = [];
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
if (filterBySponsored) {
|
|
24
|
-
getCheckboxFilters(checkboxFilters, SPONSORED);
|
|
25
|
-
}
|
|
18
|
+
getCheckboxFilters(checkboxFilters, FEATURED, filterByFeatured);
|
|
19
|
+
getCheckboxFilters(checkboxFilters, SPONSORED, filterBySponsored);
|
|
26
20
|
const shouldApplyFilterValues = filterBy.length && filterByProperty.length;
|
|
27
21
|
if (!shouldApplyFilterValues) return {
|
|
28
22
|
checkboxFilters,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-set-filters.js","names":["FEATURED","SPONSORED","getCheckboxFilters","
|
|
1
|
+
{"version":3,"file":"build-set-filters.js","names":["FEATURED","SPONSORED","getCheckboxFilters","getFilterValues","filterBy","reduce","acc","filter","fieldName","values","split","value","join","previousValue","finalValue","buildSetFilters","filterByProperty","filterByFeatured","filterBySponsored","checkboxFilters","shouldApplyFilterValues","length","listFilterValues"],"sources":["../../src/helpers/build-set-filters.js"],"sourcesContent":["import { FEATURED, SPONSORED } from '../constants';\nimport getCheckboxFilters from './get-checkbox-filters';\n\nconst getFilterValues = filterBy =>\n filterBy.reduce((acc, filter) => {\n const [fieldName, ...values] = filter.split('/');\n const value = values.join('/');\n const previousValue = acc[fieldName];\n const finalValue = previousValue ? [...previousValue, value] : [value];\n\n acc[fieldName] = finalValue;\n return acc;\n }, {});\n\nconst buildSetFilters = ({\n filterBy = [],\n filterByProperty = [],\n filterByFeatured,\n filterBySponsored\n}) => {\n const checkboxFilters = [];\n getCheckboxFilters(checkboxFilters, FEATURED, filterByFeatured);\n getCheckboxFilters(checkboxFilters, SPONSORED, filterBySponsored);\n\n const shouldApplyFilterValues = filterBy.length && filterByProperty.length;\n if (!shouldApplyFilterValues) return { checkboxFilters, listFilterValues: {} };\n\n const listFilterValues = getFilterValues(filterBy);\n return { checkboxFilters, listFilterValues };\n};\n\nexport default buildSetFilters;\n"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,SAAS,QAAQ,cAAc;AAClD,OAAOC,kBAAkB,MAAM,wBAAwB;AAEvD,MAAMC,eAAe,GAAGC,QAAQ,IAC9BA,QAAQ,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEC,MAAM,KAAK;EAC/B,MAAM,CAACC,SAAS,EAAE,GAAGC,MAAM,CAAC,GAAGF,MAAM,CAACG,KAAK,CAAC,GAAG,CAAC;EAChD,MAAMC,KAAK,GAAGF,MAAM,CAACG,IAAI,CAAC,GAAG,CAAC;EAC9B,MAAMC,aAAa,GAAGP,GAAG,CAACE,SAAS,CAAC;EACpC,MAAMM,UAAU,GAAGD,aAAa,GAAG,CAAC,GAAGA,aAAa,EAAEF,KAAK,CAAC,GAAG,CAACA,KAAK,CAAC;EAEtEL,GAAG,CAACE,SAAS,CAAC,GAAGM,UAAU;EAC3B,OAAOR,GAAG;AACZ,CAAC,EAAE,CAAC,CAAC,CAAC;AAER,MAAMS,eAAe,GAAGA,CAAC;EACvBX,QAAQ,GAAG,EAAE;EACbY,gBAAgB,GAAG,EAAE;EACrBC,gBAAgB;EAChBC;AACF,CAAC,KAAK;EACJ,MAAMC,eAAe,GAAG,EAAE;EAC1BjB,kBAAkB,CAACiB,eAAe,EAAEnB,QAAQ,EAAEiB,gBAAgB,CAAC;EAC/Df,kBAAkB,CAACiB,eAAe,EAAElB,SAAS,EAAEiB,iBAAiB,CAAC;EAEjE,MAAME,uBAAuB,GAAGhB,QAAQ,CAACiB,MAAM,IAAIL,gBAAgB,CAACK,MAAM;EAC1E,IAAI,CAACD,uBAAuB,EAAE,OAAO;IAAED,eAAe;IAAEG,gBAAgB,EAAE,CAAC;EAAE,CAAC;EAE9E,MAAMA,gBAAgB,GAAGnB,eAAe,CAACC,QAAQ,CAAC;EAClD,OAAO;IAAEe,eAAe;IAAEG;EAAiB,CAAC;AAC9C,CAAC;AAED,eAAeP,eAAe"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
const getCheckboxFilters = (checkboxFilters, name, value) => {
|
|
2
|
+
if (typeof value === 'string') {
|
|
3
|
+
if (value !== 'off') checkboxFilters.push([name, value]);
|
|
4
|
+
} else if (value) checkboxFilters.push(name);
|
|
5
|
+
};
|
|
6
|
+
export default getCheckboxFilters;
|
|
7
|
+
//# sourceMappingURL=get-checkbox-filters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-checkbox-filters.js","names":["getCheckboxFilters","checkboxFilters","name","value","push"],"sources":["../../src/helpers/get-checkbox-filters.js"],"sourcesContent":["const getCheckboxFilters = (checkboxFilters, name, value) => {\n if (typeof value === 'string') {\n if (value !== 'off') checkboxFilters.push([name, value]);\n } else if (value) checkboxFilters.push(name);\n};\n\nexport default getCheckboxFilters;\n"],"mappings":"AAAA,MAAMA,kBAAkB,GAAGA,CAACC,eAAe,EAAEC,IAAI,EAAEC,KAAK,KAAK;EAC3D,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7B,IAAIA,KAAK,KAAK,KAAK,EAAEF,eAAe,CAACG,IAAI,CAAC,CAACF,IAAI,EAAEC,KAAK,CAAC,CAAC;EAC1D,CAAC,MAAM,IAAIA,KAAK,EAAEF,eAAe,CAACG,IAAI,CAACF,IAAI,CAAC;AAC9C,CAAC;AAED,eAAeF,kBAAkB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blaze-cms/react-page-builder",
|
|
3
|
-
"version": "0.139.0-
|
|
3
|
+
"version": "0.139.0-core-styles.0",
|
|
4
4
|
"description": "Blaze react page builder",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib-es/index.js",
|
|
@@ -27,15 +27,15 @@
|
|
|
27
27
|
},
|
|
28
28
|
"license": "GPL-3.0",
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@blaze-cms/core-auth-ui": "
|
|
31
|
-
"@blaze-cms/core-errors": "
|
|
32
|
-
"@blaze-cms/core-errors-ui": "
|
|
30
|
+
"@blaze-cms/core-auth-ui": "0.139.0-core-styles.0",
|
|
31
|
+
"@blaze-cms/core-errors": "0.139.0-core-styles.0",
|
|
32
|
+
"@blaze-cms/core-errors-ui": "0.139.0-core-styles.0",
|
|
33
33
|
"@blaze-cms/image-cdn-react": "0.3.0-alpha.6",
|
|
34
|
-
"@blaze-cms/nextjs-components": "
|
|
35
|
-
"@blaze-cms/plugin-search-ui": "
|
|
36
|
-
"@blaze-cms/setup-ui": "
|
|
37
|
-
"@blaze-cms/utils": "
|
|
38
|
-
"@blaze-cms/utils-handlebars": "
|
|
34
|
+
"@blaze-cms/nextjs-components": "0.139.0-core-styles.0",
|
|
35
|
+
"@blaze-cms/plugin-search-ui": "0.139.0-core-styles.0",
|
|
36
|
+
"@blaze-cms/setup-ui": "0.139.0-core-styles.0",
|
|
37
|
+
"@blaze-cms/utils": "0.139.0-core-styles.0",
|
|
38
|
+
"@blaze-cms/utils-handlebars": "0.139.0-core-styles.0",
|
|
39
39
|
"@blaze-react/breadcrumb": "0.8.0-alpha.60",
|
|
40
40
|
"@blaze-react/button": "0.5.19",
|
|
41
41
|
"@blaze-react/checkboxes": "0.5.31",
|
|
@@ -88,6 +88,5 @@
|
|
|
88
88
|
"eslintIgnore": [
|
|
89
89
|
"lib/*",
|
|
90
90
|
"lib-es/*"
|
|
91
|
-
]
|
|
92
|
-
"gitHead": "64cc8089b98927fe80357371d988859045dcb339"
|
|
91
|
+
]
|
|
93
92
|
}
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { hasChildren } from '../../helpers';
|
|
4
4
|
|
|
5
|
-
const ContentGroupSection = ({ children, name
|
|
5
|
+
const ContentGroupSection = ({ children, name }) => {
|
|
6
6
|
if (!hasChildren(children)) return null;
|
|
7
7
|
|
|
8
8
|
return (
|
|
@@ -66,10 +66,8 @@ const Checkbox = ({
|
|
|
66
66
|
);
|
|
67
67
|
|
|
68
68
|
const shouldDisplayMore = !checkboxLimit || checkboxLimit[prop] === LIMIT_MIN;
|
|
69
|
-
|
|
70
69
|
return (
|
|
71
70
|
<>
|
|
72
|
-
{elementTitle && <div className="heading heading--section">{elementTitle}</div>}
|
|
73
71
|
{label ? <p>{label}</p> : ''}
|
|
74
72
|
<Checkboxes
|
|
75
73
|
className="form-checkbox"
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
const getFilterValue = value => {
|
|
2
|
+
// To be updated with future filter options
|
|
3
|
+
switch (value) {
|
|
4
|
+
case 'not':
|
|
5
|
+
return false;
|
|
6
|
+
case 'on':
|
|
7
|
+
return true;
|
|
8
|
+
default:
|
|
9
|
+
return true;
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
const buildCheckboxFilters = checkboxFilters =>
|
|
14
|
+
checkboxFilters.reduce((acc, checkboxFilter) => {
|
|
15
|
+
if (typeof checkboxFilter === 'string') acc.push({ match: { [checkboxFilter]: true } });
|
|
16
|
+
else {
|
|
17
|
+
const filterValue = getFilterValue(checkboxFilter[1]);
|
|
18
|
+
acc.push({ match: { [checkboxFilter[0]]: filterValue } });
|
|
19
|
+
}
|
|
20
|
+
return acc;
|
|
21
|
+
}, []);
|
|
22
|
+
|
|
23
|
+
export default buildCheckboxFilters;
|
|
@@ -1,11 +1,6 @@
|
|
|
1
1
|
import getItemsToDisplayIds from './get-items-to-display-ids';
|
|
2
2
|
import { OR, OR_OPERATOR, KEYWORD } from '../constants';
|
|
3
|
-
|
|
4
|
-
const buildCheckboxFilters = checkboxFilters =>
|
|
5
|
-
checkboxFilters.reduce((acc, checkboxFilter) => {
|
|
6
|
-
acc.push({ match: { [checkboxFilter]: true } });
|
|
7
|
-
return acc;
|
|
8
|
-
}, []);
|
|
3
|
+
import buildCheckboxFilters from './build-checkbox-filters';
|
|
9
4
|
|
|
10
5
|
const buildFilterValues = (listFilterValues, relations, stringProps) => {
|
|
11
6
|
const listFilterValuesKeys = Object.keys(listFilterValues);
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
import { FEATURED, SPONSORED } from '../constants';
|
|
2
|
-
|
|
3
|
-
const getCheckboxFilters = (checkboxFilters, name) => {
|
|
4
|
-
checkboxFilters.push(name);
|
|
5
|
-
};
|
|
2
|
+
import getCheckboxFilters from './get-checkbox-filters';
|
|
6
3
|
|
|
7
4
|
const getFilterValues = filterBy =>
|
|
8
5
|
filterBy.reduce((acc, filter) => {
|
|
@@ -22,13 +19,8 @@ const buildSetFilters = ({
|
|
|
22
19
|
filterBySponsored
|
|
23
20
|
}) => {
|
|
24
21
|
const checkboxFilters = [];
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
getCheckboxFilters(checkboxFilters, FEATURED);
|
|
28
|
-
}
|
|
29
|
-
if (filterBySponsored) {
|
|
30
|
-
getCheckboxFilters(checkboxFilters, SPONSORED);
|
|
31
|
-
}
|
|
22
|
+
getCheckboxFilters(checkboxFilters, FEATURED, filterByFeatured);
|
|
23
|
+
getCheckboxFilters(checkboxFilters, SPONSORED, filterBySponsored);
|
|
32
24
|
|
|
33
25
|
const shouldApplyFilterValues = filterBy.length && filterByProperty.length;
|
|
34
26
|
if (!shouldApplyFilterValues) return { checkboxFilters, listFilterValues: {} };
|
|
@@ -44,13 +44,13 @@ exports[`Placeholder component should render PlaceholderIcon 1`] = `
|
|
|
44
44
|
/>
|
|
45
45
|
<path
|
|
46
46
|
d="M5.00003877,4.07973585 C5.00003879,3.4834142 5.50109477,3 6.11917864,3 C6.73726251,3 7.2383185,3.4834142 7.2383185,4.07973585 C7.2383185,4.6760575 6.73726252,5.15947172 6.11917864,5.15947172 C5.82268209,5.15728623 5.53857972,5.04442179 5.32645457,4.84454876 C5.11586241,4.64208328 4.99827309,4.36656405 5.00003877,4.07973585 Z"
|
|
47
|
-
fill="
|
|
47
|
+
fill="red"
|
|
48
48
|
fill-rule="nonzero"
|
|
49
49
|
id="Path"
|
|
50
50
|
/>
|
|
51
51
|
<path
|
|
52
52
|
d="M3.375,14.625 C3.375,14.3143398 3.62683983,14.0625 3.9375,14.0625 L14.0625,14.0625 C14.3731602,14.0625 14.625,14.3143398 14.625,14.625 C14.625,14.9356602 14.3731602,15.1875 14.0625,15.1875 L3.9375,15.1875 C3.62683983,15.1875 3.375,14.9356602 3.375,14.625 Z"
|
|
53
|
-
fill="
|
|
53
|
+
fill="red"
|
|
54
54
|
fill-rule="nonzero"
|
|
55
55
|
id="Shape"
|
|
56
56
|
/>
|
|
@@ -58,7 +58,7 @@ exports[`Placeholder component should render PlaceholderIcon 1`] = `
|
|
|
58
58
|
height="16.7"
|
|
59
59
|
id="Rectangle"
|
|
60
60
|
rx="2"
|
|
61
|
-
stroke="
|
|
61
|
+
stroke="red"
|
|
62
62
|
stroke-width="1.3"
|
|
63
63
|
width="16.7"
|
|
64
64
|
x="0.65"
|
|
@@ -66,7 +66,7 @@ exports[`Placeholder component should render PlaceholderIcon 1`] = `
|
|
|
66
66
|
/>
|
|
67
67
|
<line
|
|
68
68
|
id="Line-2"
|
|
69
|
-
stroke="
|
|
69
|
+
stroke="red"
|
|
70
70
|
stroke-linecap="square"
|
|
71
71
|
stroke-width="1.3"
|
|
72
72
|
x1="1"
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import buildCheckboxFilters from '../../../../src/helpers/build-checkbox-filters';
|
|
2
|
+
|
|
3
|
+
describe('buildCheckboxFilters helper', () => {
|
|
4
|
+
it('should build filter if value is a string', () => {
|
|
5
|
+
const checkboxFilters = ['filterName'];
|
|
6
|
+
const result = buildCheckboxFilters(checkboxFilters);
|
|
7
|
+
expect(result).toEqual([{ match: { filterName: true } }]);
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
it('should handle new array filters', () => {
|
|
11
|
+
const checkboxFilters = [['filterName', 'not'], ['secondFilter', 'on']];
|
|
12
|
+
const result = buildCheckboxFilters(checkboxFilters);
|
|
13
|
+
expect(result).toEqual([{ match: { filterName: false } }, { match: { secondFilter: true } }]);
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
it('builds checkbox filters with a mix of string and array elements', () => {
|
|
17
|
+
const checkboxFilters = ['filterName', ['filterType', 'not']];
|
|
18
|
+
const result = buildCheckboxFilters(checkboxFilters);
|
|
19
|
+
expect(result).toEqual([{ match: { filterName: true } }, { match: { filterType: false } }]);
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
it('handles empty array input', () => {
|
|
23
|
+
const checkboxFilters = [];
|
|
24
|
+
const result = buildCheckboxFilters(checkboxFilters);
|
|
25
|
+
expect(result).toEqual([]);
|
|
26
|
+
});
|
|
27
|
+
});
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import getCheckboxFilters from '../../../../src/helpers/get-checkbox-filters';
|
|
2
|
+
|
|
3
|
+
describe('getCheckboxFilters helper', () => {
|
|
4
|
+
it('adds [name, value] to checkboxFilters when value is a non-"off" string', () => {
|
|
5
|
+
const checkboxFilters = [];
|
|
6
|
+
getCheckboxFilters(checkboxFilters, 'filterName', 'on');
|
|
7
|
+
expect(checkboxFilters).toEqual([['filterName', 'on']]);
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
it('does not add to checkboxFilters when value is "off"', () => {
|
|
11
|
+
const checkboxFilters = [];
|
|
12
|
+
getCheckboxFilters(checkboxFilters, 'filterName', 'off');
|
|
13
|
+
expect(checkboxFilters).toEqual([]);
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
it('does not add to checkboxFilters when value is falsy', () => {
|
|
17
|
+
const checkboxFilters = [];
|
|
18
|
+
getCheckboxFilters(checkboxFilters, 'filterName', null);
|
|
19
|
+
expect(checkboxFilters).toEqual([]);
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
it('adds name to checkboxFilters when value is truthy and not a string', () => {
|
|
23
|
+
const checkboxFilters = [];
|
|
24
|
+
getCheckboxFilters(checkboxFilters, 'filterName', true);
|
|
25
|
+
expect(checkboxFilters).toEqual(['filterName']);
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
it('adds name to checkboxFilters when value is truthy and not a string', () => {
|
|
29
|
+
const checkboxFilters = [];
|
|
30
|
+
getCheckboxFilters(checkboxFilters, 'filterName', true);
|
|
31
|
+
expect(checkboxFilters).toEqual(['filterName']);
|
|
32
|
+
});
|
|
33
|
+
});
|