@blaze-cms/react-page-builder 0.139.0-alpha.0 → 0.139.0-alpha.3

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.
Files changed (46) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/lib/components/SearchContent/SearchContent.js +55 -52
  3. package/lib/components/SearchContent/SearchContent.js.map +1 -1
  4. package/lib/components/SearchContent/SearchContentResults.js +16 -17
  5. package/lib/components/SearchContent/SearchContentResults.js.map +1 -1
  6. package/lib/components/SearchContent/SearchContentToggleIcon.js +8 -16
  7. package/lib/components/SearchContent/SearchContentToggleIcon.js.map +1 -1
  8. package/lib/components/SearchContent/constants.js +12 -0
  9. package/lib/components/SearchContent/constants.js.map +1 -0
  10. package/lib/helpers/build-checkbox-filters.js +38 -0
  11. package/lib/helpers/build-checkbox-filters.js.map +1 -0
  12. package/lib/helpers/build-raw-query-base.js +4 -12
  13. package/lib/helpers/build-raw-query-base.js.map +1 -1
  14. package/lib/helpers/build-set-filters.js +3 -9
  15. package/lib/helpers/build-set-filters.js.map +1 -1
  16. package/lib/helpers/get-checkbox-filters.js +15 -0
  17. package/lib/helpers/get-checkbox-filters.js.map +1 -0
  18. package/lib-es/components/SearchContent/SearchContent.js +53 -49
  19. package/lib-es/components/SearchContent/SearchContent.js.map +1 -1
  20. package/lib-es/components/SearchContent/SearchContentResults.js +16 -17
  21. package/lib-es/components/SearchContent/SearchContentResults.js.map +1 -1
  22. package/lib-es/components/SearchContent/SearchContentToggleIcon.js +13 -23
  23. package/lib-es/components/SearchContent/SearchContentToggleIcon.js.map +1 -1
  24. package/lib-es/components/SearchContent/constants.js +4 -0
  25. package/lib-es/components/SearchContent/constants.js.map +1 -0
  26. package/lib-es/helpers/build-checkbox-filters.js +28 -0
  27. package/lib-es/helpers/build-checkbox-filters.js.map +1 -0
  28. package/lib-es/helpers/build-raw-query-base.js +1 -8
  29. package/lib-es/helpers/build-raw-query-base.js.map +1 -1
  30. package/lib-es/helpers/build-set-filters.js +3 -9
  31. package/lib-es/helpers/build-set-filters.js.map +1 -1
  32. package/lib-es/helpers/get-checkbox-filters.js +7 -0
  33. package/lib-es/helpers/get-checkbox-filters.js.map +1 -0
  34. package/package.json +3 -3
  35. package/src/components/SearchContent/SearchContent.js +66 -52
  36. package/src/components/SearchContent/SearchContentResults.js +17 -17
  37. package/src/components/SearchContent/SearchContentToggleIcon.js +10 -23
  38. package/src/components/SearchContent/constants.js +6 -0
  39. package/src/helpers/build-checkbox-filters.js +23 -0
  40. package/src/helpers/build-raw-query-base.js +1 -6
  41. package/src/helpers/build-set-filters.js +3 -11
  42. package/src/helpers/get-checkbox-filters.js +7 -0
  43. package/tests/unit/src/components/SearchContent/SearchContent.test.js +32 -7
  44. package/tests/unit/src/components/SearchContent/__snapshots__/SearchContent.test.js.snap +66 -2
  45. package/tests/unit/src/helpers/build-checkbox-filters.test.js +27 -0
  46. package/tests/unit/src/helpers/get-checkbox-filters.test.js +33 -0
package/CHANGELOG.md CHANGED
@@ -3,6 +3,28 @@
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-alpha.3](https://github.com/thebyte9/blaze/compare/v0.139.0-alpha.2...v0.139.0-alpha.3) (2024-01-09)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * search filter close bug ([#4160](https://github.com/thebyte9/blaze/issues/4160)) ([76bae35](https://github.com/thebyte9/blaze/commit/76bae35e6a4aa896f8966d3b8b99c87400363874))
12
+
13
+
14
+
15
+
16
+
17
+ # [0.139.0-alpha.1](https://github.com/thebyte9/blaze/compare/v0.139.0-alpha.0...v0.139.0-alpha.1) (2023-12-20)
18
+
19
+
20
+ ### Features
21
+
22
+ * added new filter options for sponsored and featured ([#4172](https://github.com/thebyte9/blaze/issues/4172)) ([11051f6](https://github.com/thebyte9/blaze/commit/11051f630c3fb0b74aa9d79e1e154151d438cc69))
23
+
24
+
25
+
26
+
27
+
6
28
  # [0.139.0-alpha.0](https://github.com/thebyte9/blaze/compare/v0.138.0...v0.139.0-alpha.0) (2023-12-19)
7
29
 
8
30
 
@@ -26,17 +26,21 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
26
26
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
27
  var SearchContent = function SearchContent(_ref) {
28
28
  var entities = _ref.entities,
29
- searchInputAlignment = _ref.searchInputAlignment,
30
29
  searchInputWrapperMobile = _ref.searchInputWrapperMobile,
31
30
  searchInputWrapperDesktop = _ref.searchInputWrapperDesktop,
32
31
  isMobile = _ref.isMobile,
33
32
  placeholder = _ref.placeholder,
34
33
  modifier = _ref.modifier,
35
34
  collapsedSearch = _ref.collapsedSearch;
35
+ var searchContentRef = (0, _react.useRef)(null);
36
36
  var _useState = (0, _react.useState)(collapsedSearch),
37
37
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
38
38
  collapsed = _useState2[0],
39
39
  setCollapsed = _useState2[1];
40
+ var _useState3 = (0, _react.useState)(false),
41
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
42
+ showResults = _useState4[0],
43
+ setShowResults = _useState4[1];
40
44
  var router = (0, _router.useRouter)();
41
45
  var _useDebounceSearch = (0, _pluginSearchUi.useDebounceSearch)({
42
46
  entities: entities,
@@ -49,15 +53,32 @@ var SearchContent = function SearchContent(_ref) {
49
53
  debouncedSearchTerm = _useDebounceSearch.debouncedSearchTerm;
50
54
  (0, _react.useEffect)(function () {
51
55
  var handleRouteChange = function handleRouteChange() {
52
- return setSearchTerm('');
56
+ setSearchTerm('');
57
+ setShowResults(false);
58
+ if (collapsedSearch) setCollapsed(true);
53
59
  };
54
60
  router.events.on('routeChangeStart', handleRouteChange);
55
61
  return function () {
56
62
  router.events.off('routeChangeStart', handleRouteChange);
57
63
  };
58
- }, [router.events, setSearchTerm]);
64
+ }, [collapsedSearch, router.events, setSearchTerm]);
65
+ (0, _react.useEffect)(function () {
66
+ var handleClickOutside = function handleClickOutside(event) {
67
+ if (searchContentRef.current && !searchContentRef.current.contains(event.target)) {
68
+ setShowResults(false);
69
+ if (collapsedSearch) {
70
+ setCollapsed(true);
71
+ setSearchTerm('');
72
+ }
73
+ }
74
+ };
75
+ document.addEventListener('click', handleClickOutside);
76
+ return function () {
77
+ document.removeEventListener('click', handleClickOutside);
78
+ };
79
+ }, [collapsedSearch, setSearchTerm]);
59
80
  var responsiveClasses = isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop;
60
- var handleClick = function handleClick(e, url) {
81
+ var handleNavigation = function handleNavigation(e, url) {
61
82
  e.preventDefault();
62
83
  router.push(url);
63
84
  };
@@ -66,69 +87,52 @@ var SearchContent = function SearchContent(_ref) {
66
87
  router.push("/search?search_term=".concat(e.target.value));
67
88
  }
68
89
  };
69
- var handleOnBlur = function handleOnBlur() {
70
- if (!collapsedSearch) return;
71
- if (!debouncedSearchTerm || debouncedSearchTerm === '') setCollapsed(true);
72
- };
73
- var handleClearSearchResults = function handleClearSearchResults() {
74
- setSearchTerm('');
90
+ var handleIconClick = function handleIconClick() {
91
+ var isCloseIcon = collapsedSearch ? !collapsed : debouncedSearchTerm;
92
+ if (collapsedSearch) setCollapsed(!collapsed);
93
+ if (isCloseIcon) {
94
+ setSearchTerm('');
95
+ setShowResults(false);
96
+ } else {
97
+ setShowResults(true);
98
+ }
75
99
  };
76
100
  var className = ['search-content', modifier, responsiveClasses].filter(Boolean).join(' ');
77
- return collapsed ? /*#__PURE__*/_react["default"].createElement("div", {
78
- className: className
101
+ var searchModifier = collapsed ? 'search-content--collapse' : 'search-content--expanded';
102
+ return /*#__PURE__*/_react["default"].createElement("div", {
103
+ className: className,
104
+ ref: searchContentRef
79
105
  }, /*#__PURE__*/_react["default"].createElement("div", {
80
- className: "search-content--collapse__wrapper"
106
+ className: "".concat(searchModifier, "__wrapper")
81
107
  }, /*#__PURE__*/_react["default"].createElement("label", {
82
- className: "search-content--collapse__label"
108
+ className: "".concat(searchModifier, "__label")
83
109
  }, /*#__PURE__*/_react["default"].createElement("span", {
84
- className: "search-content--collapse__icon_wrapper"
85
- }, /*#__PURE__*/_react["default"].createElement("svg", {
86
- className: "search-content--collapse__icon",
87
- viewBox: "0 0 20 20"
88
- }, /*#__PURE__*/_react["default"].createElement("path", {
89
- fillRule: "evenodd",
90
- d: "M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z",
91
- clipRule: "evenodd"
92
- }))), /*#__PURE__*/_react["default"].createElement("input", {
93
- onFocus: function onFocus() {
94
- return setCollapsed(false);
95
- },
96
- onChange: function onChange(e) {
97
- return setSearchTerm(e.target.value);
98
- },
99
- type: "text",
100
- name: "search",
101
- className: "search-content--collapse__input"
102
- })))) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
103
- className: className
104
- }, /*#__PURE__*/_react["default"].createElement("div", {
105
- className: "search-content--expanded__wrapper"
106
- }, /*#__PURE__*/_react["default"].createElement("label", {
107
- className: "search-content--expanded__label"
108
- }, /*#__PURE__*/_react["default"].createElement("span", {
109
- className: "search-content--expanded__icon_wrapper"
110
+ className: "".concat(searchModifier, "__icon_wrapper")
110
111
  }, /*#__PURE__*/_react["default"].createElement(_SearchContentToggleIcon["default"], {
111
- results: results,
112
- onClear: handleClearSearchResults
113
- })), /*#__PURE__*/_react["default"].createElement("input", {
112
+ searchTerm: debouncedSearchTerm,
113
+ onClick: handleIconClick,
114
+ useCloseIcon: collapsedSearch ? !collapsed : debouncedSearchTerm
115
+ })), !collapsed && /*#__PURE__*/_react["default"].createElement("input", {
116
+ className: "".concat(searchModifier, "__input"),
114
117
  type: "text",
115
118
  name: "search",
119
+ placeholder: placeholder,
120
+ value: searchTerm,
116
121
  onChange: function onChange(e) {
117
122
  return setSearchTerm(e.target.value);
118
123
  },
119
124
  onKeyPress: handleKeyPress,
120
- className: "search-content--expanded__input",
121
- placeholder: placeholder,
122
- value: searchTerm,
123
- onBlur: handleOnBlur
124
- }))), /*#__PURE__*/_react["default"].createElement(_SearchContentResults["default"], {
125
+ onFocus: function onFocus() {
126
+ return setShowResults(true);
127
+ },
128
+ "data-testid": "search-content-input"
129
+ }))), showResults && /*#__PURE__*/_react["default"].createElement(_SearchContentResults["default"], {
125
130
  results: results,
126
131
  debouncedSearchTerm: debouncedSearchTerm,
127
- handleClick: handleClick
128
- })));
132
+ handleClick: handleNavigation
133
+ }));
129
134
  };
130
135
  SearchContent.propTypes = {
131
- searchInputAlignment: _propTypes["default"].string,
132
136
  searchInputWrapperMobile: _propTypes["default"].string,
133
137
  searchInputWrapperDesktop: _propTypes["default"].string,
134
138
  placeholder: _propTypes["default"].string,
@@ -138,7 +142,6 @@ SearchContent.propTypes = {
138
142
  collapsedSearch: _propTypes["default"].bool
139
143
  };
140
144
  SearchContent.defaultProps = {
141
- searchInputAlignment: '',
142
145
  searchInputWrapperMobile: '',
143
146
  searchInputWrapperDesktop: '',
144
147
  placeholder: '',
@@ -1 +1 @@
1
- {"version":3,"file":"SearchContent.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_router","_pluginSearchUi","_SearchContentResults","_SearchContentToggleIcon","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","SearchContent","_ref","entities","searchInputAlignment","searchInputWrapperMobile","searchInputWrapperDesktop","isMobile","placeholder","modifier","collapsedSearch","_useState","useState","_useState2","_slicedToArray2","collapsed","setCollapsed","router","useRouter","_useDebounceSearch","useDebounceSearch","initialSearchTerm","resultKeys","results","searchTerm","setSearchTerm","debouncedSearchTerm","useEffect","handleRouteChange","events","on","off","responsiveClasses","handleClick","e","url","preventDefault","push","handleKeyPress","target","value","concat","handleOnBlur","handleClearSearchResults","className","filter","Boolean","join","createElement","viewBox","fillRule","d","clipRule","onFocus","onChange","type","name","Fragment","onClear","onKeyPress","onBlur","propTypes","PropTypes","string","bool","array","isRequired","defaultProps","_default","exports"],"sources":["../../../src/components/SearchContent/SearchContent.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { useDebounceSearch } from '@blaze-cms/plugin-search-ui';\nimport SearchContentResults from './SearchContentResults';\nimport SearchContentToggleIcon from './SearchContentToggleIcon';\n\nconst SearchContent = ({\n entities,\n searchInputAlignment,\n searchInputWrapperMobile,\n searchInputWrapperDesktop,\n isMobile,\n placeholder,\n modifier,\n collapsedSearch\n}) => {\n const [collapsed, setCollapsed] = useState(collapsedSearch);\n const router = useRouter();\n\n const { results, searchTerm, setSearchTerm, debouncedSearchTerm } = useDebounceSearch({\n entities,\n initialSearchTerm: '',\n resultKeys: 'id, name, image { url }, url'\n });\n\n useEffect(\n () => {\n const handleRouteChange = () => setSearchTerm('');\n router.events.on('routeChangeStart', handleRouteChange);\n\n return () => {\n router.events.off('routeChangeStart', handleRouteChange);\n };\n },\n [router.events, setSearchTerm]\n );\n\n const responsiveClasses = isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop;\n\n const handleClick = (e, url) => {\n e.preventDefault();\n router.push(url);\n };\n\n const handleKeyPress = e => {\n if (e.key === 'Enter' && e.target.value !== '') {\n router.push(`/search?search_term=${e.target.value}`);\n }\n };\n\n const handleOnBlur = () => {\n if (!collapsedSearch) return;\n if (!debouncedSearchTerm || debouncedSearchTerm === '') setCollapsed(true);\n };\n\n const handleClearSearchResults = () => {\n setSearchTerm('');\n };\n\n const className = ['search-content', modifier, responsiveClasses].filter(Boolean).join(' ');\n return collapsed ? (\n <div className={className}>\n <div className=\"search-content--collapse__wrapper\">\n <label className=\"search-content--collapse__label\">\n <span className=\"search-content--collapse__icon_wrapper\">\n <svg className=\"search-content--collapse__icon\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <input\n onFocus={() => setCollapsed(false)}\n onChange={e => setSearchTerm(e.target.value)}\n type=\"text\"\n name=\"search\"\n className=\"search-content--collapse__input\"\n />\n </label>\n </div>\n </div>\n ) : (\n <>\n <div className={className}>\n <div className=\"search-content--expanded__wrapper\">\n <label className=\"search-content--expanded__label\">\n <span className=\"search-content--expanded__icon_wrapper\">\n <SearchContentToggleIcon results={results} onClear={handleClearSearchResults} />\n </span>\n <input\n type=\"text\"\n name=\"search\"\n onChange={e => setSearchTerm(e.target.value)}\n onKeyPress={handleKeyPress}\n className=\"search-content--expanded__input\"\n placeholder={placeholder}\n value={searchTerm}\n onBlur={handleOnBlur}\n />\n </label>\n </div>\n <SearchContentResults\n results={results}\n debouncedSearchTerm={debouncedSearchTerm}\n handleClick={handleClick}\n />\n </div>\n </>\n );\n};\n\nSearchContent.propTypes = {\n searchInputAlignment: PropTypes.string,\n searchInputWrapperMobile: PropTypes.string,\n searchInputWrapperDesktop: PropTypes.string,\n placeholder: PropTypes.string,\n isMobile: PropTypes.bool,\n entities: PropTypes.array.isRequired,\n modifier: PropTypes.string,\n collapsedSearch: PropTypes.bool\n};\n\nSearchContent.defaultProps = {\n searchInputAlignment: '',\n searchInputWrapperMobile: '',\n searchInputWrapperDesktop: '',\n placeholder: '',\n isMobile: false,\n modifier: '',\n collapsedSearch: false\n};\n\nexport default SearchContent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"SearchContent.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_router","_pluginSearchUi","_SearchContentResults","_SearchContentToggleIcon","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","SearchContent","_ref","entities","searchInputWrapperMobile","searchInputWrapperDesktop","isMobile","placeholder","modifier","collapsedSearch","searchContentRef","useRef","_useState","useState","_useState2","_slicedToArray2","collapsed","setCollapsed","_useState3","_useState4","showResults","setShowResults","router","useRouter","_useDebounceSearch","useDebounceSearch","initialSearchTerm","resultKeys","results","searchTerm","setSearchTerm","debouncedSearchTerm","useEffect","handleRouteChange","events","on","off","handleClickOutside","event","current","contains","target","document","addEventListener","removeEventListener","responsiveClasses","handleNavigation","e","url","preventDefault","push","handleKeyPress","value","concat","handleIconClick","isCloseIcon","className","filter","Boolean","join","searchModifier","createElement","ref","onClick","useCloseIcon","type","name","onChange","onKeyPress","onFocus","handleClick","propTypes","PropTypes","string","bool","array","isRequired","defaultProps","_default","exports"],"sources":["../../../src/components/SearchContent/SearchContent.js"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { useDebounceSearch } from '@blaze-cms/plugin-search-ui';\nimport SearchContentResults from './SearchContentResults';\nimport SearchContentToggleIcon from './SearchContentToggleIcon';\n\nconst SearchContent = ({\n entities,\n searchInputWrapperMobile,\n searchInputWrapperDesktop,\n isMobile,\n placeholder,\n modifier,\n collapsedSearch\n}) => {\n const searchContentRef = useRef(null);\n const [collapsed, setCollapsed] = useState(collapsedSearch);\n const [showResults, setShowResults] = useState(false);\n const router = useRouter();\n\n const { results, searchTerm, setSearchTerm, debouncedSearchTerm } = useDebounceSearch({\n entities,\n initialSearchTerm: '',\n resultKeys: 'id, name, image { url }, url'\n });\n\n useEffect(\n () => {\n const handleRouteChange = () => {\n setSearchTerm('');\n setShowResults(false);\n if (collapsedSearch) setCollapsed(true);\n };\n router.events.on('routeChangeStart', handleRouteChange);\n\n return () => {\n router.events.off('routeChangeStart', handleRouteChange);\n };\n },\n [collapsedSearch, router.events, setSearchTerm]\n );\n\n useEffect(\n () => {\n const handleClickOutside = event => {\n if (searchContentRef.current && !searchContentRef.current.contains(event.target)) {\n setShowResults(false);\n if (collapsedSearch) {\n setCollapsed(true);\n setSearchTerm('');\n }\n }\n };\n\n document.addEventListener('click', handleClickOutside);\n\n return () => {\n document.removeEventListener('click', handleClickOutside);\n };\n },\n [collapsedSearch, setSearchTerm]\n );\n\n const responsiveClasses = isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop;\n\n const handleNavigation = (e, url) => {\n e.preventDefault();\n router.push(url);\n };\n\n const handleKeyPress = e => {\n if (e.key === 'Enter' && e.target.value !== '') {\n router.push(`/search?search_term=${e.target.value}`);\n }\n };\n\n const handleIconClick = () => {\n const isCloseIcon = collapsedSearch ? !collapsed : debouncedSearchTerm;\n\n if (collapsedSearch) setCollapsed(!collapsed);\n\n if (isCloseIcon) {\n setSearchTerm('');\n setShowResults(false);\n } else {\n setShowResults(true);\n }\n };\n\n const className = ['search-content', modifier, responsiveClasses].filter(Boolean).join(' ');\n const searchModifier = collapsed ? 'search-content--collapse' : 'search-content--expanded';\n\n return (\n <div className={className} ref={searchContentRef}>\n <div className={`${searchModifier}__wrapper`}>\n <label className={`${searchModifier}__label`}>\n <span className={`${searchModifier}__icon_wrapper`}>\n <SearchContentToggleIcon\n searchTerm={debouncedSearchTerm}\n onClick={handleIconClick}\n useCloseIcon={collapsedSearch ? !collapsed : debouncedSearchTerm}\n />\n </span>\n {!collapsed && (\n <input\n className={`${searchModifier}__input`}\n type=\"text\"\n name=\"search\"\n placeholder={placeholder}\n value={searchTerm}\n onChange={e => setSearchTerm(e.target.value)}\n onKeyPress={handleKeyPress}\n onFocus={() => setShowResults(true)}\n data-testid=\"search-content-input\"\n />\n )}\n </label>\n </div>\n {showResults && (\n <SearchContentResults\n results={results}\n debouncedSearchTerm={debouncedSearchTerm}\n handleClick={handleNavigation}\n />\n )}\n </div>\n );\n};\n\nSearchContent.propTypes = {\n searchInputWrapperMobile: PropTypes.string,\n searchInputWrapperDesktop: PropTypes.string,\n placeholder: PropTypes.string,\n isMobile: PropTypes.bool,\n entities: PropTypes.array.isRequired,\n modifier: PropTypes.string,\n collapsedSearch: PropTypes.bool\n};\n\nSearchContent.defaultProps = {\n searchInputWrapperMobile: '',\n searchInputWrapperDesktop: '',\n placeholder: '',\n isMobile: false,\n modifier: '',\n collapsedSearch: false\n};\n\nexport default SearchContent;\n"],"mappings":"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"}
@@ -13,23 +13,22 @@ var SearchContentResults = function SearchContentResults(_ref) {
13
13
  var results = _ref.results,
14
14
  debouncedSearchTerm = _ref.debouncedSearchTerm,
15
15
  onClick = _ref.onClick;
16
- if (debouncedSearchTerm !== '') {
17
- return /*#__PURE__*/_react["default"].createElement("div", {
18
- className: "search-content--results__wrapper"
19
- }, /*#__PURE__*/_react["default"].createElement("div", {
20
- className: "search-content--results__wrapper--message"
21
- }, /*#__PURE__*/_react["default"].createElement("div", {
22
- className: "search-content--results__content"
23
- }, results.length === 0 && /*#__PURE__*/_react["default"].createElement("div", {
24
- className: "search-content--results__message"
25
- }, /*#__PURE__*/_react["default"].createElement(_BlazeLink["default"], {
26
- href: "/search?search_term=".concat(debouncedSearchTerm)
27
- }, "Search all results for: ".concat(debouncedSearchTerm))), results.length > 0 && /*#__PURE__*/_react["default"].createElement(_SearchContentItems["default"], {
28
- results: results,
29
- onClick: onClick
30
- }))));
31
- }
32
- return null;
16
+ if (!debouncedSearchTerm) return null;
17
+ var hasResults = results.length > 0;
18
+ return /*#__PURE__*/_react["default"].createElement("div", {
19
+ className: "search-content--results__wrapper"
20
+ }, /*#__PURE__*/_react["default"].createElement("div", {
21
+ className: "search-content--results__wrapper--message"
22
+ }, /*#__PURE__*/_react["default"].createElement("div", {
23
+ className: "search-content--results__content"
24
+ }, hasResults ? /*#__PURE__*/_react["default"].createElement(_SearchContentItems["default"], {
25
+ results: results,
26
+ onClick: onClick
27
+ }) : /*#__PURE__*/_react["default"].createElement("div", {
28
+ className: "search-content--results__message"
29
+ }, /*#__PURE__*/_react["default"].createElement(_BlazeLink["default"], {
30
+ href: "/search?search_term=".concat(debouncedSearchTerm)
31
+ }, "Search all results for: ".concat(debouncedSearchTerm))))));
33
32
  };
34
33
  var _default = SearchContentResults;
35
34
  exports["default"] = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"SearchContentResults.js","names":["_react","_interopRequireDefault","require","_BlazeLink","_SearchContentItems","SearchContentResults","_ref","results","debouncedSearchTerm","onClick","createElement","className","length","href","concat","_default","exports"],"sources":["../../../src/components/SearchContent/SearchContentResults.js"],"sourcesContent":["import React from 'react';\nimport BlazeLink from '../BlazeLink';\nimport SearchContentItems from './SearchContentItems';\n\nconst SearchContentResults = ({ results, debouncedSearchTerm, onClick }) => {\n if (debouncedSearchTerm !== '') {\n return (\n <div className=\"search-content--results__wrapper\">\n <div className=\"search-content--results__wrapper--message\">\n <div className=\"search-content--results__content\">\n {results.length === 0 && (\n <div className=\"search-content--results__message\">\n <BlazeLink href={`/search?search_term=${debouncedSearchTerm}`}>\n {`Search all results for: ${debouncedSearchTerm}`}\n </BlazeLink>\n </div>\n )}\n {results.length > 0 && <SearchContentItems results={results} onClick={onClick} />}\n </div>\n </div>\n </div>\n );\n }\n return null;\n};\n\nexport default SearchContentResults;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,mBAAA,GAAAH,sBAAA,CAAAC,OAAA;AAEA,IAAMG,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAAC,IAAA,EAAkD;EAAA,IAA5CC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IAAEC,mBAAmB,GAAAF,IAAA,CAAnBE,mBAAmB;IAAEC,OAAO,GAAAH,IAAA,CAAPG,OAAO;EACnE,IAAID,mBAAmB,KAAK,EAAE,EAAE;IAC9B,oBACER,MAAA,YAAAU,aAAA;MAAKC,SAAS,EAAC;IAAkC,gBAC/CX,MAAA,YAAAU,aAAA;MAAKC,SAAS,EAAC;IAA2C,gBACxDX,MAAA,YAAAU,aAAA;MAAKC,SAAS,EAAC;IAAkC,GAC9CJ,OAAO,CAACK,MAAM,KAAK,CAAC,iBACnBZ,MAAA,YAAAU,aAAA;MAAKC,SAAS,EAAC;IAAkC,gBAC/CX,MAAA,YAAAU,aAAA,CAACP,UAAA,WAAS;MAACU,IAAI,yBAAAC,MAAA,CAAyBN,mBAAmB;IAAG,8BAAAM,MAAA,CAChCN,mBAAmB,CACtC,CACR,CACN,EACAD,OAAO,CAACK,MAAM,GAAG,CAAC,iBAAIZ,MAAA,YAAAU,aAAA,CAACN,mBAAA,WAAkB;MAACG,OAAO,EAAEA,OAAQ;MAACE,OAAO,EAAEA;IAAQ,CAAE,CAC7E,CACF,CACF,CAAC;EAEV;EACA,OAAO,IAAI;AACb,CAAC;AAAC,IAAAM,QAAA,GAEaV,oBAAoB;AAAAW,OAAA,cAAAD,QAAA"}
1
+ {"version":3,"file":"SearchContentResults.js","names":["_react","_interopRequireDefault","require","_BlazeLink","_SearchContentItems","SearchContentResults","_ref","results","debouncedSearchTerm","onClick","hasResults","length","createElement","className","href","concat","_default","exports"],"sources":["../../../src/components/SearchContent/SearchContentResults.js"],"sourcesContent":["import React from 'react';\nimport BlazeLink from '../BlazeLink';\nimport SearchContentItems from './SearchContentItems';\n\nconst SearchContentResults = ({ results, debouncedSearchTerm, onClick }) => {\n if (!debouncedSearchTerm) return null;\n const hasResults = results.length > 0;\n return (\n <div className=\"search-content--results__wrapper\">\n <div className=\"search-content--results__wrapper--message\">\n <div className=\"search-content--results__content\">\n {hasResults ? (\n <SearchContentItems results={results} onClick={onClick} />\n ) : (\n <div className=\"search-content--results__message\">\n <BlazeLink href={`/search?search_term=${debouncedSearchTerm}`}>\n {`Search all results for: ${debouncedSearchTerm}`}\n </BlazeLink>\n </div>\n )}\n </div>\n </div>\n </div>\n );\n};\n\nexport default SearchContentResults;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,mBAAA,GAAAH,sBAAA,CAAAC,OAAA;AAEA,IAAMG,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAAC,IAAA,EAAkD;EAAA,IAA5CC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IAAEC,mBAAmB,GAAAF,IAAA,CAAnBE,mBAAmB;IAAEC,OAAO,GAAAH,IAAA,CAAPG,OAAO;EACnE,IAAI,CAACD,mBAAmB,EAAE,OAAO,IAAI;EACrC,IAAME,UAAU,GAAGH,OAAO,CAACI,MAAM,GAAG,CAAC;EACrC,oBACEX,MAAA,YAAAY,aAAA;IAAKC,SAAS,EAAC;EAAkC,gBAC/Cb,MAAA,YAAAY,aAAA;IAAKC,SAAS,EAAC;EAA2C,gBACxDb,MAAA,YAAAY,aAAA;IAAKC,SAAS,EAAC;EAAkC,GAC9CH,UAAU,gBACTV,MAAA,YAAAY,aAAA,CAACR,mBAAA,WAAkB;IAACG,OAAO,EAAEA,OAAQ;IAACE,OAAO,EAAEA;EAAQ,CAAE,CAAC,gBAE1DT,MAAA,YAAAY,aAAA;IAAKC,SAAS,EAAC;EAAkC,gBAC/Cb,MAAA,YAAAY,aAAA,CAACT,UAAA,WAAS;IAACW,IAAI,yBAAAC,MAAA,CAAyBP,mBAAmB;EAAG,8BAAAO,MAAA,CAChCP,mBAAmB,CACtC,CACR,CAEJ,CACF,CACF,CAAC;AAEV,CAAC;AAAC,IAAAQ,QAAA,GAEaX,oBAAoB;AAAAY,OAAA,cAAAD,QAAA"}
@@ -7,27 +7,19 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports["default"] = void 0;
9
9
  var _react = _interopRequireDefault(require("react"));
10
+ var _constants = require("./constants");
10
11
  var SearchContentToggleIcon = function SearchContentToggleIcon(_ref) {
11
- var results = _ref.results,
12
- onClear = _ref.onClear;
13
- if (results && results.length > 0) {
14
- return /*#__PURE__*/_react["default"].createElement("svg", {
15
- className: "search-content--expanded__icon",
16
- viewBox: "0 0 20 20",
17
- onClick: onClear
18
- }, /*#__PURE__*/_react["default"].createElement("path", {
19
- fillRule: "evenodd",
20
- d: "M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",
21
- clipRule: "evenodd"
22
- }));
23
- }
12
+ var onClick = _ref.onClick,
13
+ useCloseIcon = _ref.useCloseIcon;
24
14
  return /*#__PURE__*/_react["default"].createElement("svg", {
25
15
  className: "search-content--expanded__icon",
26
- viewBox: "0 0 20 20"
16
+ viewBox: "0 0 20 20",
17
+ onClick: onClick,
18
+ "data-testid": useCloseIcon ? 'search-content-icon-close' : 'search-content-icon'
27
19
  }, /*#__PURE__*/_react["default"].createElement("path", {
28
20
  fillRule: "evenodd",
29
- d: "M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z",
30
- clipRule: "evenodd"
21
+ clipRule: "evenodd",
22
+ d: useCloseIcon ? _constants.CLOSE_ICON : _constants.SEARCH_ICON
31
23
  }));
32
24
  };
33
25
  var _default = SearchContentToggleIcon;
@@ -1 +1 @@
1
- {"version":3,"file":"SearchContentToggleIcon.js","names":["_react","_interopRequireDefault","require","SearchContentToggleIcon","_ref","results","onClear","length","createElement","className","viewBox","onClick","fillRule","d","clipRule","_default","exports"],"sources":["../../../src/components/SearchContent/SearchContentToggleIcon.js"],"sourcesContent":["import React from 'react';\n\nconst SearchContentToggleIcon = ({ results, onClear }) => {\n if (results && results.length > 0) {\n return (\n <svg className=\"search-content--expanded__icon\" viewBox=\"0 0 20 20\" onClick={onClear}>\n <path\n fillRule=\"evenodd\"\n d=\"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z\"\n clipRule=\"evenodd\"\n />\n </svg>\n );\n }\n\n return (\n <svg className=\"search-content--expanded__icon\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n );\n};\n\nexport default SearchContentToggleIcon;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAMC,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAAC,IAAA,EAA6B;EAAA,IAAvBC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IAAEC,OAAO,GAAAF,IAAA,CAAPE,OAAO;EACjD,IAAID,OAAO,IAAIA,OAAO,CAACE,MAAM,GAAG,CAAC,EAAE;IACjC,oBACEP,MAAA,YAAAQ,aAAA;MAAKC,SAAS,EAAC,gCAAgC;MAACC,OAAO,EAAC,WAAW;MAACC,OAAO,EAAEL;IAAQ,gBACnFN,MAAA,YAAAQ,aAAA;MACEI,QAAQ,EAAC,SAAS;MAClBC,CAAC,EAAC,oMAAoM;MACtMC,QAAQ,EAAC;IAAS,CACnB,CACE,CAAC;EAEV;EAEA,oBACEd,MAAA,YAAAQ,aAAA;IAAKC,SAAS,EAAC,gCAAgC;IAACC,OAAO,EAAC;EAAW,gBACjEV,MAAA,YAAAQ,aAAA;IACEI,QAAQ,EAAC,SAAS;IAClBC,CAAC,EAAC,kHAAkH;IACpHC,QAAQ,EAAC;EAAS,CACnB,CACE,CAAC;AAEV,CAAC;AAAC,IAAAC,QAAA,GAEaZ,uBAAuB;AAAAa,OAAA,cAAAD,QAAA"}
1
+ {"version":3,"file":"SearchContentToggleIcon.js","names":["_react","_interopRequireDefault","require","_constants","SearchContentToggleIcon","_ref","onClick","useCloseIcon","createElement","className","viewBox","fillRule","clipRule","d","CLOSE_ICON","SEARCH_ICON","_default","exports"],"sources":["../../../src/components/SearchContent/SearchContentToggleIcon.js"],"sourcesContent":["import React from 'react';\nimport { CLOSE_ICON, SEARCH_ICON } from './constants';\n\nconst SearchContentToggleIcon = ({ onClick, useCloseIcon }) => (\n <svg\n className=\"search-content--expanded__icon\"\n viewBox=\"0 0 20 20\"\n onClick={onClick}\n data-testid={useCloseIcon ? 'search-content-icon-close' : 'search-content-icon'}>\n <path fillRule=\"evenodd\" clipRule=\"evenodd\" d={useCloseIcon ? CLOSE_ICON : SEARCH_ICON} />\n </svg>\n);\n\nexport default SearchContentToggleIcon;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAEA,IAAME,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAAC,IAAA;EAAA,IAAMC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IAAEC,YAAY,GAAAF,IAAA,CAAZE,YAAY;EAAA,oBACtDP,MAAA,YAAAQ,aAAA;IACEC,SAAS,EAAC,gCAAgC;IAC1CC,OAAO,EAAC,WAAW;IACnBJ,OAAO,EAAEA,OAAQ;IACjB,eAAaC,YAAY,GAAG,2BAA2B,GAAG;EAAsB,gBAChFP,MAAA,YAAAQ,aAAA;IAAMG,QAAQ,EAAC,SAAS;IAACC,QAAQ,EAAC,SAAS;IAACC,CAAC,EAAEN,YAAY,GAAGO,qBAAU,GAAGC;EAAY,CAAE,CACtF,CAAC;AAAA,CACP;AAAC,IAAAC,QAAA,GAEaZ,uBAAuB;AAAAa,OAAA,cAAAD,QAAA"}
@@ -0,0 +1,12 @@
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.SEARCH_ICON = exports.CLOSE_ICON = void 0;
8
+ var SEARCH_ICON = 'M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z';
9
+ exports.SEARCH_ICON = SEARCH_ICON;
10
+ var CLOSE_ICON = 'M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z';
11
+ exports.CLOSE_ICON = CLOSE_ICON;
12
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","names":["SEARCH_ICON","exports","CLOSE_ICON"],"sources":["../../../src/components/SearchContent/constants.js"],"sourcesContent":["const SEARCH_ICON =\n 'M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z';\nconst CLOSE_ICON =\n 'M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z';\n\nexport { SEARCH_ICON, CLOSE_ICON };\n"],"mappings":";;;;;;;AAAA,IAAMA,WAAW,GACf,kHAAkH;AAACC,OAAA,CAAAD,WAAA,GAAAA,WAAA;AACrH,IAAME,UAAU,GACd,oMAAoM;AAACD,OAAA,CAAAC,UAAA,GAAAA,UAAA"}
@@ -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("core-js/modules/es.array.reduce.js");
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 = buildCheckboxFilters(checkboxFilters);
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","buildCheckboxFilters","checkboxFilters","reduce","acc","checkboxFilter","match","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","bool","should","buildItemsToDisplayValues","itemsToDisplay","itemToDisplayIds","getItemsToDisplayIds","ids","buildShouldValues","docTypes","Array","isArray","docType","buildRawQueryBase","_ref3","_ref4","id","_ref3$filterValues","filterValues","_ref3$filterValues2","_ref3$filterValues2$c","_ref3$filterValues2$l","filterOperator","_ref3$addListFiltersT","addListFiltersToQuery","listFilterFinalValues","checkboxFiltersValue","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';\n\nconst buildCheckboxFilters = checkboxFilters =>\n checkboxFilters.reduce((acc, checkboxFilter) => {\n acc.push({ match: { [checkboxFilter]: true } });\n return acc;\n }, []);\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
+ {"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 getCheckboxFilters = function getCheckboxFilters(checkboxFilters, name) {
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
- if (filterByFeatured) {
42
- getCheckboxFilters(checkboxFilters, _constants.FEATURED);
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","getCheckboxFilters","checkboxFilters","name","push","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","FEATURED","SPONSORED","shouldApplyFilterValues","length","listFilterValues","_default","exports"],"sources":["../../src/helpers/build-set-filters.js"],"sourcesContent":["import { FEATURED, SPONSORED } from '../constants';\n\nconst getCheckboxFilters = (checkboxFilters, name) => {\n checkboxFilters.push(name);\n};\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\n if (filterByFeatured) {\n getCheckboxFilters(checkboxFilters, FEATURED);\n }\n if (filterBySponsored) {\n getCheckboxFilters(checkboxFilters, SPONSORED);\n }\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;AAEA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,eAAe,EAAEC,IAAI,EAAK;EACpDD,eAAe,CAACE,IAAI,CAACD,IAAI,CAAC;AAC5B,CAAC;AAED,IAAME,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,IAAM3B,eAAe,GAAG,EAAE;EAE1B,IAAI0B,gBAAgB,EAAE;IACpB3B,kBAAkB,CAACC,eAAe,EAAE4B,mBAAQ,CAAC;EAC/C;EACA,IAAID,iBAAiB,EAAE;IACrB5B,kBAAkB,CAACC,eAAe,EAAE6B,oBAAS,CAAC;EAChD;EAEA,IAAMC,uBAAuB,GAAG1B,QAAQ,CAAC2B,MAAM,IAAIN,gBAAgB,CAACM,MAAM;EAC1E,IAAI,CAACD,uBAAuB,EAAE,OAAO;IAAE9B,eAAe,EAAfA,eAAe;IAAEgC,gBAAgB,EAAE,CAAC;EAAE,CAAC;EAE9E,IAAMA,gBAAgB,GAAG7B,eAAe,CAACC,QAAQ,CAAC;EAClD,OAAO;IAAEJ,eAAe,EAAfA,eAAe;IAAEgC,gBAAgB,EAAhBA;EAAiB,CAAC;AAC9C,CAAC;AAAC,IAAAC,QAAA,GAEaZ,eAAe;AAAAa,OAAA,cAAAD,QAAA"}
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"}