@blaze-cms/react-page-builder 0.133.0-alpha.2 → 0.133.0-alpha.4
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 +29 -0
- package/lib/components/Button.js +3 -1
- package/lib/components/Button.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilter/SearchFilter.js +2 -2
- package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilterContainer.js +58 -22
- package/lib/components/SearchFilter/SearchFilterContainer.js.map +1 -1
- package/lib/components/SearchFilter/helpers/build-filters-query.js +18 -16
- package/lib/components/SearchFilter/helpers/build-filters-query.js.map +1 -1
- package/lib/components/SearchFilter/helpers/build-url-query.js +0 -1
- package/lib/components/SearchFilter/helpers/build-url-query.js.map +1 -1
- package/lib/components/SearchFilter/helpers/get-initial-filter-values.js +33 -0
- package/lib/components/SearchFilter/helpers/get-initial-filter-values.js.map +1 -0
- package/lib/components/SearchFilter/helpers/get-updated-filter-by.js +38 -0
- package/lib/components/SearchFilter/helpers/get-updated-filter-by.js.map +1 -0
- package/lib/components/SearchFilter/helpers/index.js +8 -1
- package/lib/components/SearchFilter/helpers/index.js.map +1 -1
- package/lib/components/SocialFollow/sf.config.js +2 -1
- package/lib/components/SocialFollow/sf.config.js.map +1 -1
- package/lib/helpers/get-generic-render-variables.js +17 -12
- package/lib/helpers/get-generic-render-variables.js.map +1 -1
- package/lib-es/components/Button.js +2 -1
- package/lib-es/components/Button.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js +3 -3
- package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilterContainer.js +54 -13
- package/lib-es/components/SearchFilter/SearchFilterContainer.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/build-filters-query.js +18 -16
- package/lib-es/components/SearchFilter/helpers/build-filters-query.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/build-url-query.js +0 -1
- package/lib-es/components/SearchFilter/helpers/build-url-query.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/get-initial-filter-values.js +21 -0
- package/lib-es/components/SearchFilter/helpers/get-initial-filter-values.js.map +1 -0
- package/lib-es/components/SearchFilter/helpers/get-updated-filter-by.js +19 -0
- package/lib-es/components/SearchFilter/helpers/get-updated-filter-by.js.map +1 -0
- package/lib-es/components/SearchFilter/helpers/index.js +3 -2
- package/lib-es/components/SearchFilter/helpers/index.js.map +1 -1
- package/lib-es/components/SocialFollow/sf.config.js +3 -2
- package/lib-es/components/SocialFollow/sf.config.js.map +1 -1
- package/lib-es/helpers/get-generic-render-variables.js +2 -1
- package/lib-es/helpers/get-generic-render-variables.js.map +1 -1
- package/package.json +6 -6
- package/src/components/Button.js +6 -1
- package/src/components/SearchFilter/SearchFilter/SearchFilter.js +6 -3
- package/src/components/SearchFilter/SearchFilterContainer.js +42 -14
- package/src/components/SearchFilter/helpers/build-filters-query.js +23 -20
- package/src/components/SearchFilter/helpers/build-url-query.js +0 -2
- package/src/components/SearchFilter/helpers/get-initial-filter-values.js +24 -0
- package/src/components/SearchFilter/helpers/get-updated-filter-by.js +18 -0
- package/src/components/SearchFilter/helpers/index.js +5 -3
- package/src/components/SocialFollow/sf.config.js +2 -2
- package/src/helpers/get-generic-render-variables.js +2 -1
- package/tests/unit/src/components/SearchFilter/helpers/get-updated-filter-by.test.js +28 -0
- package/tests/unit/src/components/SocialFollow/__snapshots__/SocialFollow.test.js.snap +1 -1
- /package/tests/unit/src/components/SearchFilter/helpers/{build-new-query.test.js → build-new-url.test.js} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,35 @@
|
|
|
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.133.0-alpha.4](https://github.com/thebyte9/blaze/compare/v0.133.0-alpha.3...v0.133.0-alpha.4) (2023-10-02)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* client route urls on logout button ([85d5b07](https://github.com/thebyte9/blaze/commit/85d5b079d9abcba1fe21e8781bb3332d03d2dec2))
|
|
12
|
+
* filters now inherit filterBy if needed ([#3978](https://github.com/thebyte9/blaze/issues/3978)) ([19bfdc9](https://github.com/thebyte9/blaze/commit/19bfdc94ee4cf6be00d87f58409dff37e25eab87))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
# [0.133.0-alpha.3](https://github.com/thebyte9/blaze/compare/v0.133.0-alpha.2...v0.133.0-alpha.3) (2023-09-18)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### Bug Fixes
|
|
22
|
+
|
|
23
|
+
* add core styles for hiding filters settings ([b04bcec](https://github.com/thebyte9/blaze/commit/b04bcec8c7de83543100708232f22c4b2deb2675))
|
|
24
|
+
* ammend sort tests and update branch ([e503ed5](https://github.com/thebyte9/blaze/commit/e503ed593ea062cbbf38aa146696121c7c58ed7c))
|
|
25
|
+
* device detection fix ([9a52d80](https://github.com/thebyte9/blaze/commit/9a52d8002239d5b9b68e07a2ed747f4742b05323))
|
|
26
|
+
* hide unnecessary buttons on mobile nd desktop ([f0bc7a6](https://github.com/thebyte9/blaze/commit/f0bc7a6e960d8ec8a347c77456d54255d25e6825))
|
|
27
|
+
* merge ([34eace9](https://github.com/thebyte9/blaze/commit/34eace90e5925d034f8ba3eb83a52bcd6a4af9f1))
|
|
28
|
+
* merge dev ([28ea01d](https://github.com/thebyte9/blaze/commit/28ea01d9956654776cab99c2ef7bc035fcfd9975))
|
|
29
|
+
* redirect correctly after using logout button ([#4051](https://github.com/thebyte9/blaze/issues/4051)) ([6d4383f](https://github.com/thebyte9/blaze/commit/6d4383f5e0f9c794b6ba2f9833d5acf2a3a2320e))
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
6
35
|
# [0.133.0-alpha.2](https://github.com/thebyte9/blaze/compare/v0.133.0-alpha.1...v0.133.0-alpha.2) (2023-09-06)
|
|
7
36
|
|
|
8
37
|
|
package/lib/components/Button.js
CHANGED
|
@@ -21,6 +21,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
21
21
|
});
|
|
22
22
|
exports["default"] = void 0;
|
|
23
23
|
require("core-js/modules/es.function.name.js");
|
|
24
|
+
require("core-js/modules/es.string.starts-with.js");
|
|
24
25
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
25
26
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
26
27
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
@@ -85,7 +86,8 @@ var Button = function Button(props) {
|
|
|
85
86
|
var logout = function logout() {
|
|
86
87
|
(0, _coreAuthUi.handleLogout)(client);
|
|
87
88
|
if ((0, _helpers.hasChildren)(children)) return setShowChildren(true);
|
|
88
|
-
|
|
89
|
+
if (!urlToUse) return router.reload();
|
|
90
|
+
return urlToUse.startsWith('/') ? router.push('/Resolver', urlToUse) : window.location.href = urlToUse;
|
|
89
91
|
};
|
|
90
92
|
var handleClick = function handleClick() {
|
|
91
93
|
if (isLogoutButton) logout();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.js","names":["_react","_interopRequireWildcard","require","_reactCookie","_router","_classnames","_interopRequireDefault","_button","_coreAuthUi","_client","_propTypes","_utilsHandlebars","_ClickWrapper","_BlazeLink","_HOC","_utils","_constants","_helpers","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","Button","props","type","text","url","icon","name","style","children","clickAction","childSeoVisibility","afterClickText","parent","otherProps","_objectWithoutProperties2","client","useApolloClient","router","useRouter","isLogoutButton","LOGOUT","_useCookies","useCookies","_useCookies2","_slicedToArray2","cookies","blazeCookie","blaze_auth","_useState","useState","_useState2","showChildren","setShowChildren","_useStringTemplate","useStringTemplate","_useStringTemplate$da","data","textToUse","afterClickTextToUse","urlToUse","useEffect","asPath","checkIfButtonShouldRender","hasChildren","logout","handleLogout","reload","handleClick","buttonType","modifiers","getClassModifiers","currentProps","href","title","DynamicButton","BlazeLink","BlazeButton","updateChildrensParent","itemId","itemEntity","renderedChildren","renderChildren","onClose","_getClickWrapperOptio","getClickWrapperOptions","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","contentClassName","classnames","createElement","className","_extends2","onClick","propTypes","PropTypes","string","size","bool","oneOfType","arrayOf","node","defaultProps","_default","withTitle","exports"],"sources":["../../src/components/Button.js"],"sourcesContent":["import React, { useState, Fragment, useEffect } from 'react';\nimport { useCookies } from 'react-cookie';\nimport { useRouter } from 'next/router';\nimport classnames from 'classnames';\nimport BlazeButton from '@blaze-react/button';\nimport { handleLogout } from '@blaze-cms/core-auth-ui';\nimport { useApolloClient } from '@apollo/client';\nimport PropTypes, { bool, string } from 'prop-types';\nimport { useStringTemplate } from '@blaze-cms/utils-handlebars';\nimport ClickWrapper from './ClickWrapper';\nimport BlazeLink from './BlazeLink';\nimport { withTitle } from '../HOC';\nimport { getClassModifiers } from '../utils';\nimport { LOGOUT } from '../constants';\nimport {\n renderChildren,\n updateChildrensParent,\n hasChildren,\n getClickWrapperOptions\n} from '../helpers';\n\nconst Button = props => {\n const {\n type,\n text,\n url,\n icon,\n name,\n style,\n children,\n clickAction,\n childSeoVisibility,\n afterClickText,\n parent,\n ...otherProps\n } = props;\n const client = useApolloClient();\n const router = useRouter();\n const isLogoutButton = clickAction === LOGOUT;\n const [cookies] = useCookies();\n const { blaze_auth: blazeCookie } = cookies;\n const [showChildren, setShowChildren] = useState(false);\n const {\n data: [textToUse, afterClickTextToUse, urlToUse]\n } = useStringTemplate(parent, [text, afterClickText, url]);\n\n useEffect(\n () => {\n setShowChildren(false);\n },\n [router.asPath]\n );\n\n const checkIfButtonShouldRender = () => {\n if (isLogoutButton) return !!blazeCookie;\n if (!text && !icon) return false;\n return !!(url || hasChildren(children));\n };\n\n const logout = () => {\n handleLogout(client);\n if (hasChildren(children)) return setShowChildren(true);\n return url ? router.reload(urlToUse) : router.reload();\n };\n\n const handleClick = () => {\n if (isLogoutButton) logout();\n if (!url && !isLogoutButton) setShowChildren(!showChildren);\n };\n\n if (!checkIfButtonShouldRender()) return null;\n\n const buttonType = !text && icon ? 'icon' : type;\n const modifiers = getClassModifiers(buttonType, { icon, style, ...otherProps });\n const currentProps = url ? { href: urlToUse, title: name } : { name };\n const DynamicButton = url && !isLogoutButton ? BlazeLink : BlazeButton;\n updateChildrensParent(children, parent.itemId, parent.itemEntity);\n\n const renderedChildren = renderChildren(children, { onClose: handleClick });\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(children, props);\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const contentClassName = classnames('button__content', {\n 'button__content--show': showChildren\n });\n\n return (\n <Wrapper {...wrapperProps}>\n {childSeoVisibility && <div className={contentClassName}>{renderedChildren}</div>}\n {!childSeoVisibility && showChildren && renderedChildren}\n <DynamicButton className={modifiers} onClick={handleClick} {...currentProps}>\n {icon && <i className={icon} />}\n {showChildren ? afterClickTextToUse : textToUse}\n </DynamicButton>\n </Wrapper>\n );\n};\n\nButton.propTypes = {\n parent: PropTypes.object,\n clickAction: PropTypes.string,\n text: PropTypes.string,\n afterClickText: string,\n name: PropTypes.string,\n type: PropTypes.string,\n url: PropTypes.string,\n size: PropTypes.string,\n icon: PropTypes.string,\n style: PropTypes.string,\n childSeoVisibility: bool,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nButton.defaultProps = {\n parent: {},\n clickAction: '',\n text: '',\n afterClickText: '',\n name: '',\n type: '',\n url: null,\n size: '',\n icon: '',\n style: '',\n children: [],\n childSeoVisibility: false\n};\n\nexport default withTitle(Button);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Button.js","names":["_react","_interopRequireWildcard","require","_reactCookie","_router","_classnames","_interopRequireDefault","_button","_coreAuthUi","_client","_propTypes","_utilsHandlebars","_ClickWrapper","_BlazeLink","_HOC","_utils","_constants","_helpers","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","Button","props","type","text","url","icon","name","style","children","clickAction","childSeoVisibility","afterClickText","parent","otherProps","_objectWithoutProperties2","client","useApolloClient","router","useRouter","isLogoutButton","LOGOUT","_useCookies","useCookies","_useCookies2","_slicedToArray2","cookies","blazeCookie","blaze_auth","_useState","useState","_useState2","showChildren","setShowChildren","_useStringTemplate","useStringTemplate","_useStringTemplate$da","data","textToUse","afterClickTextToUse","urlToUse","useEffect","asPath","checkIfButtonShouldRender","hasChildren","logout","handleLogout","reload","startsWith","window","location","href","handleClick","buttonType","modifiers","getClassModifiers","currentProps","title","DynamicButton","BlazeLink","BlazeButton","updateChildrensParent","itemId","itemEntity","renderedChildren","renderChildren","onClose","_getClickWrapperOptio","getClickWrapperOptions","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","contentClassName","classnames","createElement","className","_extends2","onClick","propTypes","PropTypes","string","size","bool","oneOfType","arrayOf","node","defaultProps","_default","withTitle","exports"],"sources":["../../src/components/Button.js"],"sourcesContent":["import React, { useState, Fragment, useEffect } from 'react';\nimport { useCookies } from 'react-cookie';\nimport { useRouter } from 'next/router';\nimport classnames from 'classnames';\nimport BlazeButton from '@blaze-react/button';\nimport { handleLogout } from '@blaze-cms/core-auth-ui';\nimport { useApolloClient } from '@apollo/client';\nimport PropTypes, { bool, string } from 'prop-types';\nimport { useStringTemplate } from '@blaze-cms/utils-handlebars';\nimport ClickWrapper from './ClickWrapper';\nimport BlazeLink from './BlazeLink';\nimport { withTitle } from '../HOC';\nimport { getClassModifiers } from '../utils';\nimport { LOGOUT } from '../constants';\nimport {\n renderChildren,\n updateChildrensParent,\n hasChildren,\n getClickWrapperOptions\n} from '../helpers';\n\nconst Button = props => {\n const {\n type,\n text,\n url,\n icon,\n name,\n style,\n children,\n clickAction,\n childSeoVisibility,\n afterClickText,\n parent,\n ...otherProps\n } = props;\n const client = useApolloClient();\n const router = useRouter();\n const isLogoutButton = clickAction === LOGOUT;\n const [cookies] = useCookies();\n const { blaze_auth: blazeCookie } = cookies;\n const [showChildren, setShowChildren] = useState(false);\n const {\n data: [textToUse, afterClickTextToUse, urlToUse]\n } = useStringTemplate(parent, [text, afterClickText, url]);\n\n useEffect(\n () => {\n setShowChildren(false);\n },\n [router.asPath]\n );\n\n const checkIfButtonShouldRender = () => {\n if (isLogoutButton) return !!blazeCookie;\n if (!text && !icon) return false;\n return !!(url || hasChildren(children));\n };\n\n const logout = () => {\n handleLogout(client);\n if (hasChildren(children)) return setShowChildren(true);\n\n if (!urlToUse) return router.reload();\n\n return urlToUse.startsWith('/')\n ? router.push('/Resolver', urlToUse)\n : (window.location.href = urlToUse);\n };\n\n const handleClick = () => {\n if (isLogoutButton) logout();\n if (!url && !isLogoutButton) setShowChildren(!showChildren);\n };\n\n if (!checkIfButtonShouldRender()) return null;\n\n const buttonType = !text && icon ? 'icon' : type;\n const modifiers = getClassModifiers(buttonType, { icon, style, ...otherProps });\n const currentProps = url ? { href: urlToUse, title: name } : { name };\n const DynamicButton = url && !isLogoutButton ? BlazeLink : BlazeButton;\n updateChildrensParent(children, parent.itemId, parent.itemEntity);\n\n const renderedChildren = renderChildren(children, { onClose: handleClick });\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(children, props);\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const contentClassName = classnames('button__content', {\n 'button__content--show': showChildren\n });\n\n return (\n <Wrapper {...wrapperProps}>\n {childSeoVisibility && <div className={contentClassName}>{renderedChildren}</div>}\n {!childSeoVisibility && showChildren && renderedChildren}\n <DynamicButton className={modifiers} onClick={handleClick} {...currentProps}>\n {icon && <i className={icon} />}\n {showChildren ? afterClickTextToUse : textToUse}\n </DynamicButton>\n </Wrapper>\n );\n};\n\nButton.propTypes = {\n parent: PropTypes.object,\n clickAction: PropTypes.string,\n text: PropTypes.string,\n afterClickText: string,\n name: PropTypes.string,\n type: PropTypes.string,\n url: PropTypes.string,\n size: PropTypes.string,\n icon: PropTypes.string,\n style: PropTypes.string,\n childSeoVisibility: bool,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nButton.defaultProps = {\n parent: {},\n clickAction: '',\n text: '',\n afterClickText: '',\n name: '',\n type: '',\n url: null,\n size: '',\n icon: '',\n style: '',\n children: [],\n childSeoVisibility: false\n};\n\nexport default withTitle(Button);\n"],"mappings":"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"}
|
|
@@ -54,7 +54,7 @@ var SearchFilter = function SearchFilter(_ref) {
|
|
|
54
54
|
moreFiltersDesktopCollapsed = _useState4[0],
|
|
55
55
|
setMoreFiltersDesktopCollapsed = _useState4[1];
|
|
56
56
|
var doSubmit = function doSubmit(newValues) {
|
|
57
|
-
var newQuery = (0, _helpers.buildUrlQuery)(newValues, filters, listComponentName, query);
|
|
57
|
+
var newQuery = filterValues ? (0, _helpers.buildUrlQuery)(newValues, filters, listComponentName, query) : '';
|
|
58
58
|
handleSearch(newQuery);
|
|
59
59
|
setMoreFiltersDesktopCollapsed(true);
|
|
60
60
|
setMoreFiltersMobileCollapsed(true);
|
|
@@ -155,7 +155,7 @@ var SearchFilter = function SearchFilter(_ref) {
|
|
|
155
155
|
onClick: function onClick() {
|
|
156
156
|
return setMoreFiltersDesktopCollapsed(!moreFiltersDesktopCollapsed);
|
|
157
157
|
}
|
|
158
|
-
},
|
|
158
|
+
}, moreFiltersDesktopCollapsed ? 'More filters' : 'Less filters'), /*#__PURE__*/_react["default"].createElement("div", {
|
|
159
159
|
className: moreFiltersDesktopWrapperClass
|
|
160
160
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
161
161
|
className: _constants.MORE_FILTERS_CLASSES.DESKTOP_CONTENT
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchFilter.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_classnames","_lodash","_FiltersList","_helpers","_CloseMobileForm","_ResetDesktopForm","_MobileFormToolbar","_constants","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","SearchFilter","_ref","searchFilterRef","listComponentName","data","filters","hasUrl","entity","handleSearch","name","isCollapsedOnResponsive","displaySearchFilter","setDisplaySearchFilter","groupAfterDesktop","groupAfterMobile","filterValues","setAppliedFilters","query","_useState","useState","_useState2","_slicedToArray2","moreFiltersMobileCollapsed","setMoreFiltersMobileCollapsed","_useState3","_useState4","moreFiltersDesktopCollapsed","setMoreFiltersDesktopCollapsed","doSubmit","newValues","newQuery","buildUrlQuery","handleSubmit","debounce","useEffect","shouldSearch","type","formClass","classnames","_getResponsiveFilterC","getResponsiveFilterClassnames","moreFiltersMobileWrapperClass","moreFiltersMobileTogglerClass","moreFiltersDesktopWrapperClass","moreFiltersDesktopTogglerClass","formId","concat","handleReset","updateFilterValues","shouldSubmit","shouldGroup","createElement","Fragment","ref","className","id","onSubmit","e","preventDefault","handleClose","slice","onClick","MORE_FILTERS_CLASSES","MOBILE_CONTENT","isDeviceDesktop","DESKTOP_CONTENT","DESKTOP_BUTTONS","SEARCH","MOBILE_BUTTONS","role","REFINE","propTypes","PropTypes","object","isRequired","array","bool","string","func","number","defaultProps","_default","exports"],"sources":["../../../../src/components/SearchFilter/SearchFilter/SearchFilter.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport debounce from 'lodash.debounce';\nimport FiltersList from './FiltersList';\nimport { isDeviceDesktop, buildUrlQuery, getResponsiveFilterClassnames } from '../helpers';\nimport CloseMobileForm from './CloseMobileForm';\nimport ResetDesktopForm from './ResetDesktopForm';\nimport MobileFormToolbar from './MobileFormToolbar';\nimport { SEARCH, REFINE, MORE_FILTERS_CLASSES } from '../constants';\n\nconst SearchFilter = ({\n searchFilterRef,\n listComponentName,\n data,\n filters,\n hasUrl,\n entity,\n handleSearch,\n name,\n isCollapsedOnResponsive,\n displaySearchFilter,\n setDisplaySearchFilter,\n groupAfterDesktop,\n groupAfterMobile,\n filterValues,\n setAppliedFilters,\n query\n}) => {\n const [moreFiltersMobileCollapsed, setMoreFiltersMobileCollapsed] = useState(true);\n const [moreFiltersDesktopCollapsed, setMoreFiltersDesktopCollapsed] = useState(true);\n\n const doSubmit = newValues => {\n const newQuery = buildUrlQuery(newValues, filters, listComponentName, query);\n handleSearch(newQuery);\n setMoreFiltersDesktopCollapsed(true);\n setMoreFiltersMobileCollapsed(true);\n };\n\n const handleSubmit = debounce(newValues => {\n doSubmit(newValues);\n }, 200);\n\n useEffect(\n () => {\n if (filterValues.shouldSearch) {\n handleSubmit(filterValues);\n setAppliedFilters({ type: 'resetSearch' });\n }\n },\n [filterValues, handleSubmit, setAppliedFilters]\n );\n\n const formClass = classnames('filter__form filter__form--initial', {\n 'filter__form--mobile': isCollapsedOnResponsive && displaySearchFilter,\n 'filter__form--collapsible': isCollapsedOnResponsive\n });\n\n const {\n moreFiltersMobileWrapperClass,\n moreFiltersMobileTogglerClass,\n moreFiltersDesktopWrapperClass,\n moreFiltersDesktopTogglerClass\n } = getResponsiveFilterClassnames(moreFiltersDesktopCollapsed, moreFiltersMobileCollapsed);\n\n const formId = `filter-${name}-form`;\n\n const handleReset = () => {\n setAppliedFilters({ type: 'reset' });\n doSubmit();\n };\n\n const updateFilterValues = (newValues, shouldSubmit) => {\n setAppliedFilters({ newValues, shouldSearch: shouldSubmit, type: 'update' });\n };\n\n const shouldGroup = !!(groupAfterDesktop || groupAfterMobile);\n\n return (\n <>\n <form\n ref={searchFilterRef}\n className={formClass}\n data-testid={formId}\n id={formId}\n onSubmit={e => {\n e.preventDefault();\n doSubmit(filterValues);\n }}>\n {displaySearchFilter && (\n <CloseMobileForm handleClose={() => setDisplaySearchFilter(false)} />\n )}\n\n <div className=\"filter filter--search-refine\">\n <ResetDesktopForm handleReset={handleReset} />\n\n <div className=\"filter__wrapper filter__wrapper--search-refine\">\n {!shouldGroup && (\n <FiltersList\n shouldSearch={!hasUrl}\n data={data}\n filters={filters}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n )}\n\n {shouldGroup && (\n <>\n <FiltersList\n shouldSearch={!hasUrl}\n data={data}\n filters={filters.slice(0, groupAfterMobile)}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n\n {!!groupAfterMobile && (\n <button\n data-testId=\"search-filter-mobile-toggler\"\n className={moreFiltersMobileTogglerClass}\n type=\"button\"\n onClick={() => setMoreFiltersMobileCollapsed(!moreFiltersMobileCollapsed)}>\n Filters\n </button>\n )}\n\n <div className={moreFiltersMobileWrapperClass}>\n <div className={MORE_FILTERS_CLASSES.MOBILE_CONTENT}>\n <FiltersList\n shouldSearch={!hasUrl && isDeviceDesktop()}\n data={data}\n filters={filters.slice(\n groupAfterMobile,\n groupAfterDesktop ? groupAfterDesktop - 1 : 0\n )}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n\n {!!groupAfterDesktop && (\n <button\n data-testId=\"search-filter-desktop-toggler\"\n className={moreFiltersDesktopTogglerClass}\n type=\"button\"\n onClick={() =>\n setMoreFiltersDesktopCollapsed(!moreFiltersDesktopCollapsed)\n }>\n More filters\n </button>\n )}\n\n <div className={moreFiltersDesktopWrapperClass}>\n <div className={MORE_FILTERS_CLASSES.DESKTOP_CONTENT}>\n <FiltersList\n shouldSearch={false}\n data={data}\n filters={filters.slice(groupAfterDesktop)}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n </div>\n\n <div className={MORE_FILTERS_CLASSES.DESKTOP_BUTTONS}>\n <ResetDesktopForm handleReset={handleReset} />\n\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n </div>\n </div>\n </div>\n\n <div className={MORE_FILTERS_CLASSES.MOBILE_BUTTONS}>\n <ResetDesktopForm handleReset={handleReset} />\n\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n </div>\n </div>\n </>\n )}\n\n <br />\n\n {!displaySearchFilter && (\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n )}\n </div>\n </div>\n\n {displaySearchFilter && <MobileFormToolbar formId={formId} handleReset={handleReset} />}\n </form>\n\n {isCollapsedOnResponsive &&\n !displaySearchFilter && (\n <div className=\"filter__refine filter__refine--mobile-close\" data-testid=\"refine-mobile\">\n <div role=\"button\" onClick={() => setDisplaySearchFilter(true)}>\n {REFINE}\n </div>\n </div>\n )}\n </>\n );\n};\n\nSearchFilter.propTypes = {\n data: PropTypes.object.isRequired,\n filters: PropTypes.array.isRequired,\n searchFilterRef: PropTypes.object.isRequired,\n hasUrl: PropTypes.bool.isRequired,\n entity: PropTypes.string.isRequired,\n handleSearch: PropTypes.func.isRequired,\n name: PropTypes.string.isRequired,\n displaySearchFilter: PropTypes.bool.isRequired,\n setDisplaySearchFilter: PropTypes.func.isRequired,\n isCollapsedOnResponsive: PropTypes.bool.isRequired,\n groupAfterDesktop: PropTypes.number.isRequired,\n groupAfterMobile: PropTypes.number.isRequired,\n filterValues: PropTypes.object.isRequired,\n setAppliedFilters: PropTypes.func.isRequired,\n listComponentName: PropTypes.string,\n query: PropTypes.object\n};\n\nSearchFilter.defaultProps = {\n listComponentName: '',\n query: {}\n};\n\nexport default SearchFilter;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SearchFilter.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_classnames","_lodash","_FiltersList","_helpers","_CloseMobileForm","_ResetDesktopForm","_MobileFormToolbar","_constants","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","SearchFilter","_ref","searchFilterRef","listComponentName","data","filters","hasUrl","entity","handleSearch","name","isCollapsedOnResponsive","displaySearchFilter","setDisplaySearchFilter","groupAfterDesktop","groupAfterMobile","filterValues","setAppliedFilters","query","_useState","useState","_useState2","_slicedToArray2","moreFiltersMobileCollapsed","setMoreFiltersMobileCollapsed","_useState3","_useState4","moreFiltersDesktopCollapsed","setMoreFiltersDesktopCollapsed","doSubmit","newValues","newQuery","buildUrlQuery","handleSubmit","debounce","useEffect","shouldSearch","type","formClass","classnames","_getResponsiveFilterC","getResponsiveFilterClassnames","moreFiltersMobileWrapperClass","moreFiltersMobileTogglerClass","moreFiltersDesktopWrapperClass","moreFiltersDesktopTogglerClass","formId","concat","handleReset","updateFilterValues","shouldSubmit","shouldGroup","createElement","Fragment","ref","className","id","onSubmit","e","preventDefault","handleClose","slice","onClick","MORE_FILTERS_CLASSES","MOBILE_CONTENT","isDeviceDesktop","DESKTOP_CONTENT","DESKTOP_BUTTONS","SEARCH","MOBILE_BUTTONS","role","REFINE","propTypes","PropTypes","object","isRequired","array","bool","string","func","number","defaultProps","_default","exports"],"sources":["../../../../src/components/SearchFilter/SearchFilter/SearchFilter.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport debounce from 'lodash.debounce';\nimport FiltersList from './FiltersList';\nimport { isDeviceDesktop, getResponsiveFilterClassnames, buildUrlQuery } from '../helpers';\n\nimport CloseMobileForm from './CloseMobileForm';\nimport ResetDesktopForm from './ResetDesktopForm';\nimport MobileFormToolbar from './MobileFormToolbar';\nimport { SEARCH, REFINE, MORE_FILTERS_CLASSES } from '../constants';\n\nconst SearchFilter = ({\n searchFilterRef,\n listComponentName,\n data,\n filters,\n hasUrl,\n entity,\n handleSearch,\n name,\n isCollapsedOnResponsive,\n displaySearchFilter,\n setDisplaySearchFilter,\n groupAfterDesktop,\n groupAfterMobile,\n filterValues,\n setAppliedFilters,\n query\n}) => {\n const [moreFiltersMobileCollapsed, setMoreFiltersMobileCollapsed] = useState(true);\n const [moreFiltersDesktopCollapsed, setMoreFiltersDesktopCollapsed] = useState(true);\n\n const doSubmit = newValues => {\n const newQuery = filterValues\n ? buildUrlQuery(newValues, filters, listComponentName, query)\n : '';\n handleSearch(newQuery);\n setMoreFiltersDesktopCollapsed(true);\n setMoreFiltersMobileCollapsed(true);\n };\n\n const handleSubmit = debounce(newValues => {\n doSubmit(newValues);\n }, 200);\n\n useEffect(\n () => {\n if (filterValues.shouldSearch) {\n handleSubmit(filterValues);\n setAppliedFilters({ type: 'resetSearch' });\n }\n },\n [filterValues, handleSubmit, setAppliedFilters]\n );\n\n const formClass = classnames('filter__form filter__form--initial', {\n 'filter__form--mobile': isCollapsedOnResponsive && displaySearchFilter,\n 'filter__form--collapsible': isCollapsedOnResponsive\n });\n\n const {\n moreFiltersMobileWrapperClass,\n moreFiltersMobileTogglerClass,\n moreFiltersDesktopWrapperClass,\n moreFiltersDesktopTogglerClass\n } = getResponsiveFilterClassnames(moreFiltersDesktopCollapsed, moreFiltersMobileCollapsed);\n\n const formId = `filter-${name}-form`;\n\n const handleReset = () => {\n setAppliedFilters({ type: 'reset' });\n doSubmit();\n };\n\n const updateFilterValues = (newValues, shouldSubmit) => {\n setAppliedFilters({ newValues, shouldSearch: shouldSubmit, type: 'update' });\n };\n\n const shouldGroup = !!(groupAfterDesktop || groupAfterMobile);\n\n return (\n <>\n <form\n ref={searchFilterRef}\n className={formClass}\n data-testid={formId}\n id={formId}\n onSubmit={e => {\n e.preventDefault();\n doSubmit(filterValues);\n }}>\n {displaySearchFilter && (\n <CloseMobileForm handleClose={() => setDisplaySearchFilter(false)} />\n )}\n\n <div className=\"filter filter--search-refine\">\n <ResetDesktopForm handleReset={handleReset} />\n\n <div className=\"filter__wrapper filter__wrapper--search-refine\">\n {!shouldGroup && (\n <FiltersList\n shouldSearch={!hasUrl}\n data={data}\n filters={filters}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n )}\n\n {shouldGroup && (\n <>\n <FiltersList\n shouldSearch={!hasUrl}\n data={data}\n filters={filters.slice(0, groupAfterMobile)}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n\n {!!groupAfterMobile && (\n <button\n data-testId=\"search-filter-mobile-toggler\"\n className={moreFiltersMobileTogglerClass}\n type=\"button\"\n onClick={() => setMoreFiltersMobileCollapsed(!moreFiltersMobileCollapsed)}>\n Filters\n </button>\n )}\n\n <div className={moreFiltersMobileWrapperClass}>\n <div className={MORE_FILTERS_CLASSES.MOBILE_CONTENT}>\n <FiltersList\n shouldSearch={!hasUrl && isDeviceDesktop()}\n data={data}\n filters={filters.slice(\n groupAfterMobile,\n groupAfterDesktop ? groupAfterDesktop - 1 : 0\n )}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n\n {!!groupAfterDesktop && (\n <button\n data-testId=\"search-filter-desktop-toggler\"\n className={moreFiltersDesktopTogglerClass}\n type=\"button\"\n onClick={() =>\n setMoreFiltersDesktopCollapsed(!moreFiltersDesktopCollapsed)\n }>\n {moreFiltersDesktopCollapsed ? 'More filters' : 'Less filters'}\n </button>\n )}\n\n <div className={moreFiltersDesktopWrapperClass}>\n <div className={MORE_FILTERS_CLASSES.DESKTOP_CONTENT}>\n <FiltersList\n shouldSearch={false}\n data={data}\n filters={filters.slice(groupAfterDesktop)}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n </div>\n\n <div className={MORE_FILTERS_CLASSES.DESKTOP_BUTTONS}>\n <ResetDesktopForm handleReset={handleReset} />\n\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n </div>\n </div>\n </div>\n\n <div className={MORE_FILTERS_CLASSES.MOBILE_BUTTONS}>\n <ResetDesktopForm handleReset={handleReset} />\n\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n </div>\n </div>\n </>\n )}\n\n <br />\n\n {!displaySearchFilter && (\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n )}\n </div>\n </div>\n\n {displaySearchFilter && <MobileFormToolbar formId={formId} handleReset={handleReset} />}\n </form>\n\n {isCollapsedOnResponsive &&\n !displaySearchFilter && (\n <div className=\"filter__refine filter__refine--mobile-close\" data-testid=\"refine-mobile\">\n <div role=\"button\" onClick={() => setDisplaySearchFilter(true)}>\n {REFINE}\n </div>\n </div>\n )}\n </>\n );\n};\n\nSearchFilter.propTypes = {\n data: PropTypes.object.isRequired,\n filters: PropTypes.array.isRequired,\n searchFilterRef: PropTypes.object.isRequired,\n hasUrl: PropTypes.bool.isRequired,\n entity: PropTypes.string.isRequired,\n handleSearch: PropTypes.func.isRequired,\n name: PropTypes.string.isRequired,\n displaySearchFilter: PropTypes.bool.isRequired,\n setDisplaySearchFilter: PropTypes.func.isRequired,\n isCollapsedOnResponsive: PropTypes.bool.isRequired,\n groupAfterDesktop: PropTypes.number.isRequired,\n groupAfterMobile: PropTypes.number.isRequired,\n filterValues: PropTypes.object.isRequired,\n setAppliedFilters: PropTypes.func.isRequired,\n listComponentName: PropTypes.string,\n query: PropTypes.object\n};\n\nSearchFilter.defaultProps = {\n listComponentName: '',\n query: {}\n};\n\nexport default SearchFilter;\n"],"mappings":"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"}
|
|
@@ -25,6 +25,7 @@ require("core-js/modules/es.array.concat.js");
|
|
|
25
25
|
require("core-js/modules/es.date.now.js");
|
|
26
26
|
require("core-js/modules/es.date.to-string.js");
|
|
27
27
|
var _react = _interopRequireWildcard(require("react"));
|
|
28
|
+
var _nextjsComponents = require("@blaze-cms/nextjs-components");
|
|
28
29
|
var _router = require("next/router");
|
|
29
30
|
var _client = require("@apollo/client");
|
|
30
31
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -37,6 +38,7 @@ var _helpers2 = require("../../helpers");
|
|
|
37
38
|
var _constants = require("./constants");
|
|
38
39
|
var _constants2 = require("../../constants");
|
|
39
40
|
var _searchFilterReducer = _interopRequireDefault(require("./searchFilterReducer"));
|
|
41
|
+
var _hooks = require("../../hooks");
|
|
40
42
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
41
43
|
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; }
|
|
42
44
|
var getFiltersUrlQuery = function getFiltersUrlQuery(query, listName) {
|
|
@@ -65,7 +67,10 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
|
|
|
65
67
|
filterBy = _ref.filterBy,
|
|
66
68
|
filterByProperty = _ref.filterByProperty,
|
|
67
69
|
shouldAddFilters = _ref.shouldAddFilters,
|
|
68
|
-
listComponentName = _ref.listComponentName
|
|
70
|
+
listComponentName = _ref.listComponentName,
|
|
71
|
+
parent = _ref.parent;
|
|
72
|
+
var _useContext = (0, _react.useContext)(_nextjsComponents.MainContext),
|
|
73
|
+
isPreview = _useContext.isPreview;
|
|
69
74
|
var router = (0, _router.useRouter)();
|
|
70
75
|
var asPath = router.asPath;
|
|
71
76
|
var searchFilterRef = (0, _react.useRef)(null);
|
|
@@ -81,17 +86,46 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
|
|
|
81
86
|
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
82
87
|
urlPath = _useState6[0],
|
|
83
88
|
setUrlPath = _useState6[1]; // used as asPath can take too long to update
|
|
84
|
-
var _parseUrl = (0, _queryString.parseUrl)(urlPath),
|
|
85
|
-
currentUrl = _parseUrl.url,
|
|
86
|
-
query = _parseUrl.query;
|
|
87
|
-
var updatedQuery = getFiltersUrlQuery(query, listComponentName);
|
|
88
89
|
var _useReducer = (0, _react.useReducer)(_searchFilterReducer["default"], null),
|
|
89
90
|
_useReducer2 = (0, _slicedToArray2["default"])(_useReducer, 2),
|
|
90
91
|
filterValues = _useReducer2[0],
|
|
91
92
|
dispatch = _useReducer2[1];
|
|
93
|
+
var _parseUrl = (0, _queryString.parseUrl)(urlPath),
|
|
94
|
+
currentUrl = _parseUrl.url,
|
|
95
|
+
query = _parseUrl.query;
|
|
96
|
+
var updatedQuery = getFiltersUrlQuery(query, listComponentName);
|
|
97
|
+
var parentId = parent.itemId,
|
|
98
|
+
parentEntity = parent.itemEntity;
|
|
92
99
|
(0, _react.useEffect)(function () {
|
|
93
100
|
if (asPath) setUrlPath(asPath);
|
|
94
101
|
}, [asPath]);
|
|
102
|
+
var _useGetEntitySchemasA = (0, _hooks.useGetEntitySchemasAsObj)([parentEntity, entity]),
|
|
103
|
+
_useGetEntitySchemasA2 = _useGetEntitySchemasA.data,
|
|
104
|
+
mainSchemas = _useGetEntitySchemasA2 === void 0 ? {} : _useGetEntitySchemasA2,
|
|
105
|
+
schemasLoading = _useGetEntitySchemasA.loading;
|
|
106
|
+
var _mainSchemas$parentEn = mainSchemas[parentEntity],
|
|
107
|
+
parentSchema = _mainSchemas$parentEn === void 0 ? {} : _mainSchemas$parentEn,
|
|
108
|
+
_mainSchemas$entity = mainSchemas[entity],
|
|
109
|
+
filterEntitySchema = _mainSchemas$entity === void 0 ? {} : _mainSchemas$entity;
|
|
110
|
+
var _ref2 = parentSchema || {},
|
|
111
|
+
_ref2$actions = _ref2.actions,
|
|
112
|
+
actions = _ref2$actions === void 0 ? {} : _ref2$actions;
|
|
113
|
+
var getAction = isPreview ? actions.get : actions.getPublished;
|
|
114
|
+
var inheritedFilters = (0, _helpers2.getInheritedFilters)(filterBy, filterByProperty);
|
|
115
|
+
var queryProps = (0, _helpers2.getQueryProps)(inheritedFilters, parentSchema, filterEntitySchema);
|
|
116
|
+
var _useQuery = (0, _client.useQuery)((0, _query.generateSingleItemQuery)(getAction, queryProps), {
|
|
117
|
+
variables: {
|
|
118
|
+
id: parentId
|
|
119
|
+
},
|
|
120
|
+
skip: schemasLoading || !inheritedFilters.length
|
|
121
|
+
}),
|
|
122
|
+
_useQuery$data = _useQuery.data,
|
|
123
|
+
_useQuery$data2 = _useQuery$data === void 0 ? {} : _useQuery$data,
|
|
124
|
+
parentData = _useQuery$data2.entityData,
|
|
125
|
+
parentQueryLoading = _useQuery.loading;
|
|
126
|
+
var _getUpdatedFilterBy = (0, _helpers.getUpdatedFilterBy)(filterBy, filterByProperty, parentData),
|
|
127
|
+
updatedFilterBy = _getUpdatedFilterBy.updatedFilterBy,
|
|
128
|
+
updatedFilterByProperty = _getUpdatedFilterBy.updatedFilterByProperty;
|
|
95
129
|
var action = (0, _query.getSearchPublishedContent)(_constants.RAW_RESULTS);
|
|
96
130
|
var _getFilterRangesAndCh = (0, _helpers.getFilterRangesAndCheckboxesValues)(filters),
|
|
97
131
|
_getFilterRangesAndCh2 = (0, _slicedToArray2["default"])(_getFilterRangesAndCh, 2),
|
|
@@ -101,33 +135,33 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
|
|
|
101
135
|
docType = _getEntityData.docType;
|
|
102
136
|
var filtersQuery = (0, _helpers.buildFiltersQuery)({
|
|
103
137
|
shouldAddFilters: shouldAddFilters,
|
|
104
|
-
query: filterValues
|
|
105
|
-
filterBy:
|
|
106
|
-
filterByProperty:
|
|
138
|
+
query: filterValues,
|
|
139
|
+
filterBy: updatedFilterBy,
|
|
140
|
+
filterByProperty: updatedFilterByProperty,
|
|
107
141
|
rangeValues: rangeValues,
|
|
108
142
|
queryKeys: Object.keys(updatedQuery)
|
|
109
143
|
});
|
|
110
144
|
var rawQueryStringified = (0, _helpers.buildRawQueryStringified)(checkboxSelectValues, rangeValues, docType, filtersQuery);
|
|
111
|
-
var
|
|
145
|
+
var _useQuery2 = (0, _client.useQuery)(action, {
|
|
112
146
|
variables: {
|
|
113
147
|
rawQueryStringified: rawQueryStringified,
|
|
114
148
|
limit: 0
|
|
115
149
|
},
|
|
116
150
|
// we only want aggs so limit=0 for no search results
|
|
117
|
-
skip: !rawQueryStringified
|
|
151
|
+
skip: !rawQueryStringified || parentQueryLoading
|
|
118
152
|
}),
|
|
119
|
-
data =
|
|
120
|
-
error =
|
|
121
|
-
loading =
|
|
153
|
+
data = _useQuery2.data,
|
|
154
|
+
error = _useQuery2.error,
|
|
155
|
+
loading = _useQuery2.loading;
|
|
122
156
|
if (error) return error.message;
|
|
123
157
|
if (!filters.length) return null;
|
|
124
|
-
var
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
filterData =
|
|
130
|
-
if (!filterValues && !loading && (filterData || !rawQueryStringified)) {
|
|
158
|
+
var _ref3 = data || {},
|
|
159
|
+
_ref3$searchPublished = _ref3.searchPublishedContent,
|
|
160
|
+
_ref3$searchPublished2 = _ref3$searchPublished === void 0 ? {} : _ref3$searchPublished,
|
|
161
|
+
_ref3$searchPublished3 = _ref3$searchPublished2.rawResults,
|
|
162
|
+
_ref3$searchPublished4 = _ref3$searchPublished3 === void 0 ? {} : _ref3$searchPublished3,
|
|
163
|
+
filterData = _ref3$searchPublished4.aggregations;
|
|
164
|
+
if (!filterValues && !loading && !parentQueryLoading && (filterData || !rawQueryStringified)) {
|
|
131
165
|
var newValues = (0, _helpers.getFilterValues)(filterData, filters, updatedQuery);
|
|
132
166
|
dispatch({
|
|
133
167
|
newValues: newValues,
|
|
@@ -205,7 +239,8 @@ SearchFilterContainer.propTypes = {
|
|
|
205
239
|
filterBy: _propTypes["default"].array,
|
|
206
240
|
filterByProperty: _propTypes["default"].array,
|
|
207
241
|
shouldAddFilters: _propTypes["default"].bool,
|
|
208
|
-
listComponentName: _propTypes["default"].string
|
|
242
|
+
listComponentName: _propTypes["default"].string,
|
|
243
|
+
parent: _propTypes["default"].object
|
|
209
244
|
};
|
|
210
245
|
SearchFilterContainer.defaultProps = {
|
|
211
246
|
url: null,
|
|
@@ -217,7 +252,8 @@ SearchFilterContainer.defaultProps = {
|
|
|
217
252
|
filterBy: [],
|
|
218
253
|
filterByProperty: [],
|
|
219
254
|
shouldAddFilters: false,
|
|
220
|
-
listComponentName: ''
|
|
255
|
+
listComponentName: '',
|
|
256
|
+
parent: {}
|
|
221
257
|
};
|
|
222
258
|
var _default = (0, _HOC.withTitle)(SearchFilterContainer);
|
|
223
259
|
exports["default"] = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchFilterContainer.js","names":["_react","_interopRequireWildcard","require","_router","_client","_propTypes","_interopRequireDefault","_queryString","_SearchFilter","_HOC","_query","_helpers","_helpers2","_constants","_constants2","_searchFilterReducer","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","getFiltersUrlQuery","query","listName","updatedQuery","listKey","concat","keys","forEach","queryKey","isListKey","indexOf","decodedQueryValue","Array","isArray","map","value","decodeURIComponent","strippedKey","substring","length","SearchFilterContainer","_ref","entity","url","filters","name","isCollapsedOnResponsive","groupAfterMobile","groupAfterDesktop","filterBy","filterByProperty","shouldAddFilters","listComponentName","router","useRouter","asPath","searchFilterRef","useRef","_useState","useState","_useState2","_slicedToArray2","setKey","_useState3","_useState4","displaySearchFilter","setDisplaySearchFilter","_useState5","_useState6","urlPath","setUrlPath","_parseUrl","parseUrl","currentUrl","_useReducer","useReducer","searchFilterReducer","_useReducer2","filterValues","dispatch","useEffect","action","getSearchPublishedContent","RAW_RESULTS","_getFilterRangesAndCh","getFilterRangesAndCheckboxesValues","_getFilterRangesAndCh2","checkboxSelectValues","rangeValues","_getEntityData","getEntityData","docType","filtersQuery","buildFiltersQuery","queryKeys","rawQueryStringified","buildRawQueryStringified","_useQuery","useQuery","variables","limit","skip","data","error","loading","message","_ref2","_ref2$searchPublished","searchPublishedContent","_ref2$searchPublished2","_ref2$searchPublished3","rawResults","_ref2$searchPublished4","filterData","aggregations","newValues","getFilterValues","shouldSearch","type","handleSearch","newQuery","hashBit","split","parsedHashBit","scrollToFirstList","baseQuery","push","shallow","scroll","then","Date","now","newUrl","buildNewUrl","_document$getElements","document","getElementsByClassName","_document$getElements2","list","shouldScrollToFirstList","window","scrollTo","left","top","pageYOffset","SCROLL_OFFSET","getBoundingClientRect","createElement","setAppliedFilters","hasUrl","propTypes","PropTypes","string","array","isRequired","bool","number","defaultProps","_default","withTitle","exports"],"sources":["../../../src/components/SearchFilter/SearchFilterContainer.js"],"sourcesContent":["import React, { useState, useRef, useReducer, useEffect } from 'react';\nimport { useRouter } from 'next/router';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { parseUrl } from 'query-string';\nimport SearchFilter from './SearchFilter';\nimport { withTitle } from '../../HOC';\nimport { getSearchPublishedContent } from '../../application/query';\nimport {\n buildNewUrl,\n buildRawQueryStringified,\n getFilterValues,\n buildFiltersQuery,\n getFilterRangesAndCheckboxesValues\n} from './helpers';\nimport { getEntityData } from '../../helpers';\nimport { RAW_RESULTS } from './constants';\nimport { SCROLL_OFFSET } from '../../constants';\nimport searchFilterReducer from './searchFilterReducer';\n\nconst getFiltersUrlQuery = (query, listName) => {\n if (!listName) return query;\n const updatedQuery = {};\n const listKey = `pb[${listName}]`;\n Object.keys(query).forEach(queryKey => {\n const isListKey = queryKey.indexOf(`${listName}`) !== -1;\n if (!isListKey) return;\n const decodedQueryValue = Array.isArray(query[queryKey])\n ? query[queryKey].map(value => decodeURIComponent(value))\n : decodeURIComponent(query[queryKey]);\n const strippedKey = queryKey.substring(listKey.length + 1, queryKey.length - 1);\n if (isListKey) updatedQuery[strippedKey] = decodedQueryValue;\n });\n\n return updatedQuery;\n};\n\nconst SearchFilterContainer = ({\n entity,\n url,\n filters,\n name,\n isCollapsedOnResponsive,\n groupAfterMobile,\n groupAfterDesktop,\n filterBy,\n filterByProperty,\n shouldAddFilters,\n listComponentName\n}) => {\n const router = useRouter();\n const { asPath } = router;\n const searchFilterRef = useRef(null);\n const [key, setKey] = useState(`filter-${name}`);\n const [displaySearchFilter, setDisplaySearchFilter] = useState(false);\n const [urlPath, setUrlPath] = useState(asPath); // used as asPath can take too long to update\n const { url: currentUrl, query } = parseUrl(urlPath);\n const updatedQuery = getFiltersUrlQuery(query, listComponentName);\n\n const [filterValues, dispatch] = useReducer(searchFilterReducer, null);\n\n useEffect(\n () => {\n if (asPath) setUrlPath(asPath);\n },\n [asPath]\n );\n\n const action = getSearchPublishedContent(RAW_RESULTS);\n const [checkboxSelectValues, rangeValues] = getFilterRangesAndCheckboxesValues(filters);\n\n const { docType } = getEntityData(entity);\n\n const filtersQuery = buildFiltersQuery({\n shouldAddFilters,\n query: filterValues || {},\n filterBy,\n filterByProperty,\n rangeValues,\n queryKeys: Object.keys(updatedQuery)\n });\n\n const rawQueryStringified = buildRawQueryStringified(\n checkboxSelectValues,\n rangeValues,\n docType,\n filtersQuery\n );\n\n const { data, error, loading } = useQuery(action, {\n variables: { rawQueryStringified, limit: 0 }, // we only want aggs so limit=0 for no search results\n skip: !rawQueryStringified\n });\n\n if (error) return error.message;\n if (!filters.length) return null;\n\n const { searchPublishedContent: { rawResults: { aggregations: filterData } = {} } = {} } =\n data || {};\n\n if (!filterValues && !loading && (filterData || !rawQueryStringified)) {\n const newValues = getFilterValues(filterData, filters, updatedQuery);\n dispatch({ newValues, shouldSearch: false, type: 'update' });\n return null;\n }\n\n const handleSearch = newQuery => {\n setDisplaySearchFilter(false);\n const hashBit = asPath.split('#')[1] || '';\n const parsedHashBit = hashBit ? `#${hashBit}` : '';\n scrollToFirstList();\n if (!newQuery) {\n const baseQuery = `${currentUrl}${parsedHashBit}`;\n setUrlPath(baseQuery);\n return router.push('/Resolver', baseQuery, { shallow: !url, scroll: false }).then(() => {\n setKey(`filter-${name}:${Date.now()}`); // remove after range component update\n });\n }\n const newUrl = buildNewUrl(url, currentUrl, newQuery, hashBit);\n setUrlPath(newUrl);\n return router.push('/Resolver', newUrl, { shallow: !url, scroll: false });\n };\n\n const scrollToFirstList = () => {\n const [list] = document.getElementsByClassName('list-top');\n const shouldScrollToFirstList = !url && list;\n\n if (shouldScrollToFirstList) {\n window.scrollTo({\n left: 0,\n top: window.pageYOffset - SCROLL_OFFSET + list.getBoundingClientRect().top\n });\n } else {\n window.scrollTo(0, 0);\n }\n };\n\n if (!filterValues) return null;\n\n return (\n <SearchFilter\n key={key}\n setAppliedFilters={dispatch}\n query={updatedQuery}\n listComponentName={listComponentName}\n searchFilterRef={searchFilterRef}\n data={filterData}\n filters={filters}\n hasUrl={!!url}\n entity={entity}\n handleSearch={handleSearch}\n filterValues={filterValues}\n name={name}\n isCollapsedOnResponsive={isCollapsedOnResponsive}\n displaySearchFilter={displaySearchFilter}\n setDisplaySearchFilter={setDisplaySearchFilter}\n groupAfterMobile={groupAfterMobile}\n groupAfterDesktop={groupAfterDesktop}\n />\n );\n};\n\nSearchFilterContainer.propTypes = {\n entity: PropTypes.string,\n url: PropTypes.string,\n filters: PropTypes.array,\n name: PropTypes.string.isRequired,\n isCollapsedOnResponsive: PropTypes.bool,\n groupAfterMobile: PropTypes.number,\n groupAfterDesktop: PropTypes.number,\n filterBy: PropTypes.array,\n filterByProperty: PropTypes.array,\n shouldAddFilters: PropTypes.bool,\n listComponentName: PropTypes.string\n};\n\nSearchFilterContainer.defaultProps = {\n url: null,\n filters: [],\n entity: '',\n isCollapsedOnResponsive: true,\n groupAfterMobile: 0,\n groupAfterDesktop: 0,\n filterBy: [],\n filterByProperty: [],\n shouldAddFilters: false,\n listComponentName: ''\n};\n\nexport default withTitle(SearchFilterContainer);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SearchFilterContainer.js","names":["_react","_interopRequireWildcard","require","_nextjsComponents","_router","_client","_propTypes","_interopRequireDefault","_queryString","_SearchFilter","_HOC","_query","_helpers","_helpers2","_constants","_constants2","_searchFilterReducer","_hooks","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","getFiltersUrlQuery","query","listName","updatedQuery","listKey","concat","keys","forEach","queryKey","isListKey","indexOf","decodedQueryValue","Array","isArray","map","value","decodeURIComponent","strippedKey","substring","length","SearchFilterContainer","_ref","entity","url","filters","name","isCollapsedOnResponsive","groupAfterMobile","groupAfterDesktop","filterBy","filterByProperty","shouldAddFilters","listComponentName","parent","_useContext","useContext","MainContext","isPreview","router","useRouter","asPath","searchFilterRef","useRef","_useState","useState","_useState2","_slicedToArray2","setKey","_useState3","_useState4","displaySearchFilter","setDisplaySearchFilter","_useState5","_useState6","urlPath","setUrlPath","_useReducer","useReducer","searchFilterReducer","_useReducer2","filterValues","dispatch","_parseUrl","parseUrl","currentUrl","parentId","itemId","parentEntity","itemEntity","useEffect","_useGetEntitySchemasA","useGetEntitySchemasAsObj","_useGetEntitySchemasA2","data","mainSchemas","schemasLoading","loading","_mainSchemas$parentEn","parentSchema","_mainSchemas$entity","filterEntitySchema","_ref2","_ref2$actions","actions","getAction","getPublished","inheritedFilters","getInheritedFilters","queryProps","getQueryProps","_useQuery","useQuery","generateSingleItemQuery","variables","id","skip","_useQuery$data","_useQuery$data2","parentData","entityData","parentQueryLoading","_getUpdatedFilterBy","getUpdatedFilterBy","updatedFilterBy","updatedFilterByProperty","action","getSearchPublishedContent","RAW_RESULTS","_getFilterRangesAndCh","getFilterRangesAndCheckboxesValues","_getFilterRangesAndCh2","checkboxSelectValues","rangeValues","_getEntityData","getEntityData","docType","filtersQuery","buildFiltersQuery","queryKeys","rawQueryStringified","buildRawQueryStringified","_useQuery2","limit","error","message","_ref3","_ref3$searchPublished","searchPublishedContent","_ref3$searchPublished2","_ref3$searchPublished3","rawResults","_ref3$searchPublished4","filterData","aggregations","newValues","getFilterValues","shouldSearch","type","handleSearch","newQuery","hashBit","split","parsedHashBit","scrollToFirstList","baseQuery","push","shallow","scroll","then","Date","now","newUrl","buildNewUrl","_document$getElements","document","getElementsByClassName","_document$getElements2","list","shouldScrollToFirstList","window","scrollTo","left","top","pageYOffset","SCROLL_OFFSET","getBoundingClientRect","createElement","setAppliedFilters","hasUrl","propTypes","PropTypes","string","array","isRequired","bool","number","object","defaultProps","_default","withTitle","exports"],"sources":["../../../src/components/SearchFilter/SearchFilterContainer.js"],"sourcesContent":["import React, { useState, useEffect, useRef, useReducer, useContext } from 'react';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { useRouter } from 'next/router';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { parseUrl } from 'query-string';\nimport SearchFilter from './SearchFilter';\nimport { withTitle } from '../../HOC';\nimport { getSearchPublishedContent, generateSingleItemQuery } from '../../application/query';\nimport {\n buildNewUrl,\n buildRawQueryStringified,\n getFilterValues,\n buildFiltersQuery,\n getFilterRangesAndCheckboxesValues,\n getUpdatedFilterBy\n} from './helpers';\nimport { getEntityData, getInheritedFilters, getQueryProps } from '../../helpers';\nimport { RAW_RESULTS } from './constants';\nimport { SCROLL_OFFSET } from '../../constants';\nimport searchFilterReducer from './searchFilterReducer';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\n\nconst getFiltersUrlQuery = (query, listName) => {\n if (!listName) return query;\n const updatedQuery = {};\n const listKey = `pb[${listName}]`;\n Object.keys(query).forEach(queryKey => {\n const isListKey = queryKey.indexOf(`${listName}`) !== -1;\n if (!isListKey) return;\n const decodedQueryValue = Array.isArray(query[queryKey])\n ? query[queryKey].map(value => decodeURIComponent(value))\n : decodeURIComponent(query[queryKey]);\n const strippedKey = queryKey.substring(listKey.length + 1, queryKey.length - 1);\n if (isListKey) updatedQuery[strippedKey] = decodedQueryValue;\n });\n\n return updatedQuery;\n};\n\nconst SearchFilterContainer = ({\n entity,\n url,\n filters,\n name,\n isCollapsedOnResponsive,\n groupAfterMobile,\n groupAfterDesktop,\n filterBy,\n filterByProperty,\n shouldAddFilters,\n listComponentName,\n parent\n}) => {\n const { isPreview } = useContext(MainContext);\n const router = useRouter();\n const { asPath } = router;\n const searchFilterRef = useRef(null);\n const [key, setKey] = useState(`filter-${name}`);\n const [displaySearchFilter, setDisplaySearchFilter] = useState(false);\n const [urlPath, setUrlPath] = useState(asPath); // used as asPath can take too long to update\n const [filterValues, dispatch] = useReducer(searchFilterReducer, null);\n const { url: currentUrl, query } = parseUrl(urlPath);\n const updatedQuery = getFiltersUrlQuery(query, listComponentName);\n const { itemId: parentId, itemEntity: parentEntity } = parent;\n\n useEffect(\n () => {\n if (asPath) setUrlPath(asPath);\n },\n [asPath]\n );\n const { data: mainSchemas = {}, loading: schemasLoading } = useGetEntitySchemasAsObj([\n parentEntity,\n entity\n ]);\n const { [parentEntity]: parentSchema = {}, [entity]: filterEntitySchema = {} } = mainSchemas;\n const { actions = {} } = parentSchema || {};\n const getAction = isPreview ? actions.get : actions.getPublished;\n const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);\n const queryProps = getQueryProps(inheritedFilters, parentSchema, filterEntitySchema);\n const { data: { entityData: parentData } = {}, loading: parentQueryLoading } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: parentId },\n skip: schemasLoading || !inheritedFilters.length\n }\n );\n const { updatedFilterBy, updatedFilterByProperty } = getUpdatedFilterBy(\n filterBy,\n filterByProperty,\n parentData\n );\n\n const action = getSearchPublishedContent(RAW_RESULTS);\n const [checkboxSelectValues, rangeValues] = getFilterRangesAndCheckboxesValues(filters);\n\n const { docType } = getEntityData(entity);\n\n const filtersQuery = buildFiltersQuery({\n shouldAddFilters,\n query: filterValues,\n filterBy: updatedFilterBy,\n filterByProperty: updatedFilterByProperty,\n rangeValues,\n queryKeys: Object.keys(updatedQuery)\n });\n\n const rawQueryStringified = buildRawQueryStringified(\n checkboxSelectValues,\n rangeValues,\n docType,\n filtersQuery\n );\n\n const { data, error, loading } = useQuery(action, {\n variables: { rawQueryStringified, limit: 0 }, // we only want aggs so limit=0 for no search results\n skip: !rawQueryStringified || parentQueryLoading\n });\n\n if (error) return error.message;\n if (!filters.length) return null;\n\n const { searchPublishedContent: { rawResults: { aggregations: filterData } = {} } = {} } =\n data || {};\n\n if (!filterValues && !loading && !parentQueryLoading && (filterData || !rawQueryStringified)) {\n const newValues = getFilterValues(filterData, filters, updatedQuery);\n dispatch({ newValues, shouldSearch: false, type: 'update' });\n return null;\n }\n\n const handleSearch = newQuery => {\n setDisplaySearchFilter(false);\n const hashBit = asPath.split('#')[1] || '';\n const parsedHashBit = hashBit ? `#${hashBit}` : '';\n scrollToFirstList();\n if (!newQuery) {\n const baseQuery = `${currentUrl}${parsedHashBit}`;\n setUrlPath(baseQuery);\n return router.push('/Resolver', baseQuery, { shallow: !url, scroll: false }).then(() => {\n setKey(`filter-${name}:${Date.now()}`); // remove after range component update\n });\n }\n const newUrl = buildNewUrl(url, currentUrl, newQuery, hashBit);\n setUrlPath(newUrl);\n return router.push('/Resolver', newUrl, { shallow: !url, scroll: false });\n };\n\n const scrollToFirstList = () => {\n const [list] = document.getElementsByClassName('list-top');\n const shouldScrollToFirstList = !url && list;\n\n if (shouldScrollToFirstList) {\n window.scrollTo({\n left: 0,\n top: window.pageYOffset - SCROLL_OFFSET + list.getBoundingClientRect().top\n });\n } else {\n window.scrollTo(0, 0);\n }\n };\n\n if (!filterValues) return null;\n\n return (\n <SearchFilter\n key={key}\n setAppliedFilters={dispatch}\n query={updatedQuery}\n listComponentName={listComponentName}\n searchFilterRef={searchFilterRef}\n data={filterData}\n filters={filters}\n hasUrl={!!url}\n entity={entity}\n handleSearch={handleSearch}\n filterValues={filterValues}\n name={name}\n isCollapsedOnResponsive={isCollapsedOnResponsive}\n displaySearchFilter={displaySearchFilter}\n setDisplaySearchFilter={setDisplaySearchFilter}\n groupAfterMobile={groupAfterMobile}\n groupAfterDesktop={groupAfterDesktop}\n />\n );\n};\n\nSearchFilterContainer.propTypes = {\n entity: PropTypes.string,\n url: PropTypes.string,\n filters: PropTypes.array,\n name: PropTypes.string.isRequired,\n isCollapsedOnResponsive: PropTypes.bool,\n groupAfterMobile: PropTypes.number,\n groupAfterDesktop: PropTypes.number,\n filterBy: PropTypes.array,\n filterByProperty: PropTypes.array,\n shouldAddFilters: PropTypes.bool,\n listComponentName: PropTypes.string,\n parent: PropTypes.object\n};\n\nSearchFilterContainer.defaultProps = {\n url: null,\n filters: [],\n entity: '',\n isCollapsedOnResponsive: true,\n groupAfterMobile: 0,\n groupAfterDesktop: 0,\n filterBy: [],\n filterByProperty: [],\n shouldAddFilters: false,\n listComponentName: '',\n parent: {}\n};\n\nexport default withTitle(SearchFilterContainer);\n"],"mappings":"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"}
|
|
@@ -53,29 +53,31 @@ var builFilterObject = function builFilterObject(_ref) {
|
|
|
53
53
|
};
|
|
54
54
|
var buildFiltersQuery = function buildFiltersQuery(_ref2) {
|
|
55
55
|
var shouldAddFilters = _ref2.shouldAddFilters,
|
|
56
|
-
query = _ref2.query,
|
|
57
56
|
filterBy = _ref2.filterBy,
|
|
58
57
|
filterByProperty = _ref2.filterByProperty,
|
|
59
58
|
rangeValues = _ref2.rangeValues,
|
|
60
|
-
queryKeys = _ref2.queryKeys
|
|
59
|
+
queryKeys = _ref2.queryKeys,
|
|
60
|
+
query = _ref2.query;
|
|
61
61
|
if (!shouldAddFilters) return [];
|
|
62
62
|
var mustFilters = [];
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
63
|
+
if (query) {
|
|
64
|
+
Object.keys(query).forEach(function (queryKey) {
|
|
65
|
+
if (QUERY_KEYS_TO_IGNORE.includes(queryKey)) return;
|
|
66
|
+
if (!queryKey || !query[queryKey]) return;
|
|
67
|
+
var queryValue = query[queryKey];
|
|
68
|
+
var isRange = rangeValues.includes(queryKey);
|
|
69
|
+
var isInQuery = queryKeys.includes(queryKey);
|
|
70
|
+
builFilterObject({
|
|
71
|
+
queryKey: queryKey,
|
|
72
|
+
value: queryValue,
|
|
73
|
+
filters: mustFilters,
|
|
74
|
+
isRange: isRange,
|
|
75
|
+
isInQuery: isInQuery
|
|
76
|
+
});
|
|
75
77
|
});
|
|
76
|
-
}
|
|
78
|
+
}
|
|
77
79
|
if (filterByProperty && filterByProperty.length) {
|
|
78
|
-
filterByProperty
|
|
80
|
+
filterByProperty.forEach(function (filterByPropOption) {
|
|
79
81
|
var _filterByPropOption$s = filterByPropOption.split('/'),
|
|
80
82
|
_filterByPropOption$s2 = (0, _slicedToArray2["default"])(_filterByPropOption$s, 1),
|
|
81
83
|
filterByPropKey = _filterByPropOption$s2[0];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-filters-query.js","names":["QUERY_KEYS_TO_IGNORE","builFilterObject","_ref","queryKey","value","filters","isRange","isInQuery","min","minValue","max","maxValue","push","range","_defineProperty2","gte","Number","lte","key","concat","isArray","Array","singleFilterObj","match","forEach","filterValue","buildFiltersQuery","_ref2","shouldAddFilters","
|
|
1
|
+
{"version":3,"file":"build-filters-query.js","names":["QUERY_KEYS_TO_IGNORE","builFilterObject","_ref","queryKey","value","filters","isRange","isInQuery","min","minValue","max","maxValue","push","range","_defineProperty2","gte","Number","lte","key","concat","isArray","Array","singleFilterObj","match","forEach","filterValue","buildFiltersQuery","_ref2","shouldAddFilters","filterBy","filterByProperty","rangeValues","queryKeys","query","mustFilters","Object","keys","includes","queryValue","length","filterByPropOption","_filterByPropOption$s","split","_filterByPropOption$s2","_slicedToArray2","filterByPropKey","filterByOption","indexOf","_filterByOption$split","_filterByOption$split2","filteryByValue","filterByKeyword","_default","exports"],"sources":["../../../../src/components/SearchFilter/helpers/build-filters-query.js"],"sourcesContent":["const QUERY_KEYS_TO_IGNORE = ['dataNotSet', 'shouldSearch', 'search_term'];\n\nconst builFilterObject = ({ queryKey, value, filters, isRange, isInQuery }) => {\n if (isRange) {\n // don't add to query if value matches range values\n if (isInQuery || (value.min !== value.minValue && value.max !== value.maxValue)) {\n filters.push({\n range: {\n [queryKey]: {\n gte: Number(value.minValue),\n lte: Number(value.maxValue)\n }\n }\n });\n }\n return;\n }\n\n const key = isRange ? queryKey : `${queryKey}.keyword`;\n\n const isArray = Array.isArray(value);\n if (!isArray) {\n const singleFilterObj = { match: { [key]: value } };\n filters.push(singleFilterObj);\n return;\n }\n\n value.forEach(filterValue => {\n filters.push({ match: { [key]: filterValue } });\n });\n};\n\nconst buildFiltersQuery = ({\n shouldAddFilters,\n\n filterBy,\n filterByProperty,\n rangeValues,\n queryKeys,\n query\n}) => {\n if (!shouldAddFilters) return [];\n const mustFilters = [];\n if (query) {\n Object.keys(query).forEach(queryKey => {\n if (QUERY_KEYS_TO_IGNORE.includes(queryKey)) return;\n if (!queryKey || !query[queryKey]) return;\n const queryValue = query[queryKey];\n\n const isRange = rangeValues.includes(queryKey);\n const isInQuery = queryKeys.includes(queryKey);\n builFilterObject({ queryKey, value: queryValue, filters: mustFilters, isRange, isInQuery });\n });\n }\n\n if (filterByProperty && filterByProperty.length) {\n filterByProperty.forEach(filterByPropOption => {\n const [filterByPropKey] = filterByPropOption.split('/');\n filterBy.forEach(filterByOption => {\n if (filterByOption.indexOf(filterByPropKey) === -1) return;\n const [, filteryByValue] = filterByOption.split('/');\n const filterByKeyword = `${filterByPropKey}.keyword`;\n if (!filteryByValue) return;\n mustFilters.push({ match: { [filterByKeyword]: filteryByValue } });\n });\n });\n }\n\n return mustFilters;\n};\n\nexport default buildFiltersQuery;\n"],"mappings":"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"}
|
|
@@ -20,7 +20,6 @@ var _helpers = require("../../../helpers");
|
|
|
20
20
|
var buildUrlQuery = function buildUrlQuery(filterValues, filters) {
|
|
21
21
|
var listComponentName = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
|
|
22
22
|
var query = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
23
|
-
if (!filterValues) return '';
|
|
24
23
|
var newQuery = [];
|
|
25
24
|
var queryKeys = [];
|
|
26
25
|
var searchValue = filterValues[_constants.SEARCH_TERM];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-url-query.js","names":["_constants","require","_parseFilterValue","_interopRequireDefault","_helpers","buildUrlQuery","filterValues","filters","listComponentName","arguments","length","undefined","query","newQuery","queryKeys","searchValue","SEARCH_TERM","searchKey","buildQueryKey","push","concat","forEach","_ref","propsToDisplay","type","TEXT_SEARCH","prop","value","filterKey","parsedValue","parseFilterValue","includes","Object","keys","key","indexOf","join","_default","exports"],"sources":["../../../../src/components/SearchFilter/helpers/build-url-query.js"],"sourcesContent":["import { SEARCH_TERM, TEXT_SEARCH } from '../constants';\nimport parseFilterValue from './parse-filter-value';\nimport { buildQueryKey } from '../../../helpers';\n\nconst buildUrlQuery = (filterValues, filters, listComponentName = '', query = {}) => {\n
|
|
1
|
+
{"version":3,"file":"build-url-query.js","names":["_constants","require","_parseFilterValue","_interopRequireDefault","_helpers","buildUrlQuery","filterValues","filters","listComponentName","arguments","length","undefined","query","newQuery","queryKeys","searchValue","SEARCH_TERM","searchKey","buildQueryKey","push","concat","forEach","_ref","propsToDisplay","type","TEXT_SEARCH","prop","value","filterKey","parsedValue","parseFilterValue","includes","Object","keys","key","indexOf","join","_default","exports"],"sources":["../../../../src/components/SearchFilter/helpers/build-url-query.js"],"sourcesContent":["import { SEARCH_TERM, TEXT_SEARCH } from '../constants';\nimport parseFilterValue from './parse-filter-value';\nimport { buildQueryKey } from '../../../helpers';\n\nconst buildUrlQuery = (filterValues, filters, listComponentName = '', query = {}) => {\n const newQuery = [];\n const queryKeys = [];\n const searchValue = filterValues[SEARCH_TERM];\n const searchKey = buildQueryKey(SEARCH_TERM, listComponentName);\n queryKeys.push(searchKey);\n if (searchValue) newQuery.push(`${searchKey}=${searchValue}`);\n\n filters.forEach(({ propsToDisplay, type }) => {\n if (type === TEXT_SEARCH) return;\n propsToDisplay.forEach(prop => {\n const value = filterValues[prop];\n const filterKey = buildQueryKey(prop, listComponentName);\n queryKeys.push(filterKey);\n const parsedValue = parseFilterValue(filterKey, type, value, newQuery);\n if (parsedValue && !newQuery.includes(parsedValue)) newQuery.push(parsedValue);\n });\n });\n\n Object.keys(query).forEach(key => {\n if (queryKeys.indexOf(key) === -1) newQuery.push(`${key}=${query[key]}`);\n });\n\n return newQuery.join('&');\n};\n\nexport default buildUrlQuery;\n"],"mappings":";;;;;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAEA,IAAMI,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,YAAY,EAAEC,OAAO,EAAyC;EAAA,IAAvCC,iBAAiB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAAA,IAAEG,KAAK,GAAAH,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAC9E,IAAMI,QAAQ,GAAG,EAAE;EACnB,IAAMC,SAAS,GAAG,EAAE;EACpB,IAAMC,WAAW,GAAGT,YAAY,CAACU,sBAAW,CAAC;EAC7C,IAAMC,SAAS,GAAG,IAAAC,sBAAa,EAACF,sBAAW,EAAER,iBAAiB,CAAC;EAC/DM,SAAS,CAACK,IAAI,CAACF,SAAS,CAAC;EACzB,IAAIF,WAAW,EAAEF,QAAQ,CAACM,IAAI,IAAAC,MAAA,CAAIH,SAAS,OAAAG,MAAA,CAAIL,WAAW,CAAE,CAAC;EAE7DR,OAAO,CAACc,OAAO,CAAC,UAAAC,IAAA,EAA8B;IAAA,IAA3BC,cAAc,GAAAD,IAAA,CAAdC,cAAc;MAAEC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACrC,IAAIA,IAAI,KAAKC,sBAAW,EAAE;IAC1BF,cAAc,CAACF,OAAO,CAAC,UAAAK,IAAI,EAAI;MAC7B,IAAMC,KAAK,GAAGrB,YAAY,CAACoB,IAAI,CAAC;MAChC,IAAME,SAAS,GAAG,IAAAV,sBAAa,EAACQ,IAAI,EAAElB,iBAAiB,CAAC;MACxDM,SAAS,CAACK,IAAI,CAACS,SAAS,CAAC;MACzB,IAAMC,WAAW,GAAG,IAAAC,4BAAgB,EAACF,SAAS,EAAEJ,IAAI,EAAEG,KAAK,EAAEd,QAAQ,CAAC;MACtE,IAAIgB,WAAW,IAAI,CAAChB,QAAQ,CAACkB,QAAQ,CAACF,WAAW,CAAC,EAAEhB,QAAQ,CAACM,IAAI,CAACU,WAAW,CAAC;IAChF,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFG,MAAM,CAACC,IAAI,CAACrB,KAAK,CAAC,CAACS,OAAO,CAAC,UAAAa,GAAG,EAAI;IAChC,IAAIpB,SAAS,CAACqB,OAAO,CAACD,GAAG,CAAC,KAAK,CAAC,CAAC,EAAErB,QAAQ,CAACM,IAAI,IAAAC,MAAA,CAAIc,GAAG,OAAAd,MAAA,CAAIR,KAAK,CAACsB,GAAG,CAAC,CAAE,CAAC;EAC1E,CAAC,CAAC;EAEF,OAAOrB,QAAQ,CAACuB,IAAI,CAAC,GAAG,CAAC;AAC3B,CAAC;AAAC,IAAAC,QAAA,GAEahC,aAAa;AAAAiC,OAAA,cAAAD,QAAA"}
|