@blaze-cms/react-page-builder 0.133.0-project-admin-customisations.0 → 0.133.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/CHANGELOG.md +76 -6
  2. package/lib/components/Button.js +3 -1
  3. package/lib/components/Button.js.map +1 -1
  4. package/lib/components/ContentGroupSection/ContentGroupSection.js +4 -1
  5. package/lib/components/ContentGroupSection/ContentGroupSection.js.map +1 -1
  6. package/lib/components/DataSummary/helpers/build-loop-props-content.js +2 -3
  7. package/lib/components/DataSummary/helpers/build-loop-props-content.js.map +1 -1
  8. package/lib/components/DataSummary/helpers/get-link-to-published-content.js +0 -2
  9. package/lib/components/DataSummary/helpers/get-link-to-published-content.js.map +1 -1
  10. package/lib/components/List/helpers/get-sort-props.js +9 -6
  11. package/lib/components/List/helpers/get-sort-props.js.map +1 -1
  12. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js +2 -2
  13. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  14. package/lib/components/SearchFilter/SearchFilterContainer.js +58 -22
  15. package/lib/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  16. package/lib/components/SearchFilter/helpers/build-filters-query.js +18 -16
  17. package/lib/components/SearchFilter/helpers/build-filters-query.js.map +1 -1
  18. package/lib/components/SearchFilter/helpers/build-url-query.js +3 -2
  19. package/lib/components/SearchFilter/helpers/build-url-query.js.map +1 -1
  20. package/lib/components/SearchFilter/helpers/get-initial-filter-values.js +33 -0
  21. package/lib/components/SearchFilter/helpers/get-initial-filter-values.js.map +1 -0
  22. package/lib/components/SearchFilter/helpers/get-updated-filter-by.js +38 -0
  23. package/lib/components/SearchFilter/helpers/get-updated-filter-by.js.map +1 -0
  24. package/lib/components/SearchFilter/helpers/index.js +8 -1
  25. package/lib/components/SearchFilter/helpers/index.js.map +1 -1
  26. package/lib/components/SocialFollow/sf.config.js +2 -1
  27. package/lib/components/SocialFollow/sf.config.js.map +1 -1
  28. package/lib/helpers/build-raw-query.js +7 -6
  29. package/lib/helpers/build-raw-query.js.map +1 -1
  30. package/lib/helpers/build-sort-values.js +4 -1
  31. package/lib/helpers/build-sort-values.js.map +1 -1
  32. package/lib-es/components/Button.js +2 -1
  33. package/lib-es/components/Button.js.map +1 -1
  34. package/lib-es/components/ContentGroupSection/ContentGroupSection.js +8 -4
  35. package/lib-es/components/ContentGroupSection/ContentGroupSection.js.map +1 -1
  36. package/lib-es/components/DataSummary/helpers/build-loop-props-content.js +2 -3
  37. package/lib-es/components/DataSummary/helpers/build-loop-props-content.js.map +1 -1
  38. package/lib-es/components/DataSummary/helpers/get-link-to-published-content.js +1 -2
  39. package/lib-es/components/DataSummary/helpers/get-link-to-published-content.js.map +1 -1
  40. package/lib-es/components/List/helpers/get-sort-props.js +9 -6
  41. package/lib-es/components/List/helpers/get-sort-props.js.map +1 -1
  42. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js +3 -3
  43. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  44. package/lib-es/components/SearchFilter/SearchFilterContainer.js +54 -13
  45. package/lib-es/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  46. package/lib-es/components/SearchFilter/helpers/build-filters-query.js +18 -16
  47. package/lib-es/components/SearchFilter/helpers/build-filters-query.js.map +1 -1
  48. package/lib-es/components/SearchFilter/helpers/build-url-query.js +1 -2
  49. package/lib-es/components/SearchFilter/helpers/build-url-query.js.map +1 -1
  50. package/lib-es/components/SearchFilter/helpers/get-initial-filter-values.js +21 -0
  51. package/lib-es/components/SearchFilter/helpers/get-initial-filter-values.js.map +1 -0
  52. package/lib-es/components/SearchFilter/helpers/get-updated-filter-by.js +19 -0
  53. package/lib-es/components/SearchFilter/helpers/get-updated-filter-by.js.map +1 -0
  54. package/lib-es/components/SearchFilter/helpers/index.js +3 -2
  55. package/lib-es/components/SearchFilter/helpers/index.js.map +1 -1
  56. package/lib-es/components/SocialFollow/sf.config.js +3 -2
  57. package/lib-es/components/SocialFollow/sf.config.js.map +1 -1
  58. package/lib-es/helpers/build-raw-query.js +5 -4
  59. package/lib-es/helpers/build-raw-query.js.map +1 -1
  60. package/lib-es/helpers/build-sort-values.js +1 -1
  61. package/lib-es/helpers/build-sort-values.js.map +1 -1
  62. package/package.json +11 -11
  63. package/src/components/Button.js +6 -1
  64. package/src/components/ContentGroupSection/ContentGroupSection.js +1 -1
  65. package/src/components/DataSummary/helpers/build-loop-props-content.js +2 -3
  66. package/src/components/DataSummary/helpers/get-link-to-published-content.js +1 -4
  67. package/src/components/List/helpers/get-sort-props.js +4 -6
  68. package/src/components/SearchFilter/SearchFilter/SearchFilter.js +6 -3
  69. package/src/components/SearchFilter/SearchFilterContainer.js +42 -14
  70. package/src/components/SearchFilter/helpers/build-filters-query.js +23 -20
  71. package/src/components/SearchFilter/helpers/build-url-query.js +1 -3
  72. package/src/components/SearchFilter/helpers/get-initial-filter-values.js +24 -0
  73. package/src/components/SearchFilter/helpers/get-updated-filter-by.js +18 -0
  74. package/src/components/SearchFilter/helpers/index.js +5 -3
  75. package/src/components/SocialFollow/sf.config.js +2 -2
  76. package/src/helpers/build-raw-query.js +5 -1
  77. package/src/helpers/build-sort-values.js +1 -1
  78. package/tests/unit/src/components/DataSummary/helpers/build-loop-props-content.test.js +0 -41
  79. package/tests/unit/src/components/DataSummary/helpers/get-link-to-published-content.test.js +0 -21
  80. package/tests/unit/src/components/List/helpers/get-sort-props.test.js +23 -0
  81. package/tests/unit/src/components/SearchFilter/helpers/build-query.test.js +6 -0
  82. package/tests/unit/src/components/SearchFilter/helpers/get-updated-filter-by.test.js +28 -0
  83. package/tests/unit/src/components/SocialFollow/__snapshots__/SocialFollow.test.js.snap +1 -1
  84. package/tests/unit/src/helpers/build-raw-query.test.js +70 -1
  85. package/tests/unit/src/helpers/build-sort-values.test.js +20 -0
  86. package/tests/unit/src/helpers/get-generic-render-variables.test.js +25 -0
  87. package/tests/unit/src/components/PlaceholderIcon/__snapshots__/index.test.js.snap +0 -72
  88. package/tests/unit/src/components/PlaceholderIcon/index.test.js +0 -20
  89. /package/tests/unit/src/components/SearchFilter/helpers/{build-new-query.test.js → build-new-url.test.js} +0 -0
package/CHANGELOG.md CHANGED
@@ -3,22 +3,92 @@
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-project-admin-customisations.0](https://github.com/thebyte9/blaze/compare/v0.132.0...v0.133.0-project-admin-customisations.0) (2023-09-01)
6
+ # [0.133.0](https://github.com/thebyte9/blaze/compare/v0.133.0-alpha.6...v0.133.0) (2023-10-04)
7
+
8
+ **Note:** Version bump only for package @blaze-cms/react-page-builder
9
+
10
+
11
+
12
+
13
+
14
+ # [0.133.0-alpha.6](https://github.com/thebyte9/blaze/compare/v0.133.0-alpha.5...v0.133.0-alpha.6) (2023-10-03)
7
15
 
8
16
 
9
17
  ### Bug Fixes
10
18
 
11
- * added score sort when search filter is applied ([#3231](https://github.com/thebyte9/blaze/issues/3231)) ([a8a086c](https://github.com/thebyte9/blaze/commit/a8a086cb3b44e8f906f8b11b992c193282f0e249))
12
- * added sort to az lists ([#3899](https://github.com/thebyte9/blaze/issues/3899)) ([f9d6fa5](https://github.com/thebyte9/blaze/commit/f9d6fa519749025057b44a704975409cfd416ea0))
13
- * handle data summary urls in loops correctly ([#3993](https://github.com/thebyte9/blaze/issues/3993)) ([008e1a1](https://github.com/thebyte9/blaze/commit/008e1a1f24f065b4060302c2c32d1aa32dd8a007))
19
+ * fixed resert filters breaking when no data was passed ([#4075](https://github.com/thebyte9/blaze/issues/4075)) ([3940977](https://github.com/thebyte9/blaze/commit/39409772074bff7a0e29a9c14223e881363b92e1))
20
+ * handle multiple sort properties correctly ([#4076](https://github.com/thebyte9/blaze/issues/4076)) ([524c48a](https://github.com/thebyte9/blaze/commit/524c48a72e33344d114000738f20d54c00f978d7))
21
+
22
+
23
+
14
24
 
15
25
 
26
+ # [0.133.0-alpha.5](https://github.com/thebyte9/blaze/compare/v0.133.0-alpha.4...v0.133.0-alpha.5) (2023-10-03)
27
+
28
+ **Note:** Version bump only for package @blaze-cms/react-page-builder
29
+
16
30
 
17
- # [0.129.0-project-admin-customisations.1](https://github.com/thebyte9/blaze/compare/v0.129.0-project-admin-customisations.0...v0.129.0-project-admin-customisations.1) (2023-05-05)
18
31
 
19
32
 
20
33
 
21
- # [0.129.0-project-admin-customisations.0](https://github.com/thebyte9/blaze/compare/v0.128.2...v0.129.0-project-admin-customisations.0) (2023-05-03)
34
+ # [0.133.0-alpha.4](https://github.com/thebyte9/blaze/compare/v0.133.0-alpha.3...v0.133.0-alpha.4) (2023-10-02)
35
+
36
+
37
+ ### Bug Fixes
38
+
39
+ * client route urls on logout button ([85d5b07](https://github.com/thebyte9/blaze/commit/85d5b079d9abcba1fe21e8781bb3332d03d2dec2))
40
+ * filters now inherit filterBy if needed ([#3978](https://github.com/thebyte9/blaze/issues/3978)) ([19bfdc9](https://github.com/thebyte9/blaze/commit/19bfdc94ee4cf6be00d87f58409dff37e25eab87))
41
+
42
+
43
+
44
+
45
+
46
+ # [0.133.0-alpha.3](https://github.com/thebyte9/blaze/compare/v0.133.0-alpha.2...v0.133.0-alpha.3) (2023-09-18)
47
+
48
+
49
+ ### Bug Fixes
50
+
51
+ * add core styles for hiding filters settings ([b04bcec](https://github.com/thebyte9/blaze/commit/b04bcec8c7de83543100708232f22c4b2deb2675))
52
+ * ammend sort tests and update branch ([e503ed5](https://github.com/thebyte9/blaze/commit/e503ed593ea062cbbf38aa146696121c7c58ed7c))
53
+ * device detection fix ([9a52d80](https://github.com/thebyte9/blaze/commit/9a52d8002239d5b9b68e07a2ed747f4742b05323))
54
+ * hide unnecessary buttons on mobile nd desktop ([f0bc7a6](https://github.com/thebyte9/blaze/commit/f0bc7a6e960d8ec8a347c77456d54255d25e6825))
55
+ * merge ([34eace9](https://github.com/thebyte9/blaze/commit/34eace90e5925d034f8ba3eb83a52bcd6a4af9f1))
56
+ * merge dev ([28ea01d](https://github.com/thebyte9/blaze/commit/28ea01d9956654776cab99c2ef7bc035fcfd9975))
57
+ * redirect correctly after using logout button ([#4051](https://github.com/thebyte9/blaze/issues/4051)) ([6d4383f](https://github.com/thebyte9/blaze/commit/6d4383f5e0f9c794b6ba2f9833d5acf2a3a2320e))
58
+
59
+
60
+
61
+
62
+
63
+ # [0.133.0-alpha.2](https://github.com/thebyte9/blaze/compare/v0.133.0-alpha.1...v0.133.0-alpha.2) (2023-09-06)
64
+
65
+
66
+ ### Bug Fixes
67
+
68
+ * handle sort order when user sort not applied ([#4040](https://github.com/thebyte9/blaze/issues/4040)) ([7e674ef](https://github.com/thebyte9/blaze/commit/7e674ef7798d3032351dd4ef50c88d81f2130be4))
69
+
70
+
71
+
72
+
73
+
74
+ # [0.133.0-alpha.1](https://github.com/thebyte9/blaze/compare/v0.133.0-alpha.0...v0.133.0-alpha.1) (2023-09-05)
75
+
76
+
77
+ ### Bug Fixes
78
+
79
+ * handle search filters where custom sort applied ([#4039](https://github.com/thebyte9/blaze/issues/4039)) ([857dd75](https://github.com/thebyte9/blaze/commit/857dd75ca26812dc2db29d634800727c32dce502))
80
+
81
+
82
+
83
+
84
+
85
+ # [0.133.0-alpha.0](https://github.com/thebyte9/blaze/compare/v0.132.0...v0.133.0-alpha.0) (2023-08-25)
86
+
87
+
88
+ ### Bug Fixes
89
+
90
+ * added score sort when search filter is applied ([#3231](https://github.com/thebyte9/blaze/issues/3231)) ([a8a086c](https://github.com/thebyte9/blaze/commit/a8a086cb3b44e8f906f8b11b992c193282f0e249))
91
+ * added sort to az lists ([#3899](https://github.com/thebyte9/blaze/issues/3899)) ([f9d6fa5](https://github.com/thebyte9/blaze/commit/f9d6fa519749025057b44a704975409cfd416ea0))
22
92
 
23
93
 
24
94
 
@@ -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
- return url ? router.reload(urlToUse) : router.reload();
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","e","r","t","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","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","object","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","e","r","t","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","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","object","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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"}
@@ -7,12 +7,15 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports["default"] = void 0;
9
9
  require("core-js/modules/es.function.name.js");
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
11
  var _react = _interopRequireDefault(require("react"));
11
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
13
  var _helpers = require("../../helpers");
14
+ var _excluded = ["children", "name"];
13
15
  var ContentGroupSection = function ContentGroupSection(_ref) {
14
16
  var children = _ref.children,
15
- name = _ref.name;
17
+ name = _ref.name,
18
+ props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
16
19
  if (!(0, _helpers.hasChildren)(children)) return null;
17
20
  return /*#__PURE__*/_react["default"].createElement("div", {
18
21
  key: name,
@@ -1 +1 @@
1
- {"version":3,"file":"ContentGroupSection.js","names":["_react","_interopRequireDefault","require","_propTypes","_helpers","ContentGroupSection","_ref","children","name","hasChildren","createElement","key","className","propTypes","PropTypes","oneOfType","arrayOf","node","string","defaultProps","_default","exports"],"sources":["../../../src/components/ContentGroupSection/ContentGroupSection.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { hasChildren } from '../../helpers';\n\nconst ContentGroupSection = ({ children, name }) => {\n if (!hasChildren(children)) return null;\n\n return (\n <div key={name} className=\"content-group-section\">\n {children}\n </div>\n );\n};\n\nContentGroupSection.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n name: PropTypes.string\n};\n\nContentGroupSection.defaultProps = { children: null, name: '' };\n\nexport default ContentGroupSection;\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAEA,IAAMG,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAAC,IAAA,EAA2B;EAAA,IAArBC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,IAAI,GAAAF,IAAA,CAAJE,IAAI;EAC3C,IAAI,CAAC,IAAAC,oBAAW,EAACF,QAAQ,CAAC,EAAE,OAAO,IAAI;EAEvC,oBACEP,MAAA,YAAAU,aAAA;IAAKC,GAAG,EAAEH,IAAK;IAACI,SAAS,EAAC;EAAuB,GAC9CL,QACE,CAAC;AAEV,CAAC;AAEDF,mBAAmB,CAACQ,SAAS,GAAG;EAC9BN,QAAQ,EAAEO,qBAAS,CAACC,SAAS,CAAC,CAACD,qBAAS,CAACE,OAAO,CAACF,qBAAS,CAACG,IAAI,CAAC,EAAEH,qBAAS,CAACG,IAAI,CAAC,CAAC;EAClFT,IAAI,EAAEM,qBAAS,CAACI;AAClB,CAAC;AAEDb,mBAAmB,CAACc,YAAY,GAAG;EAAEZ,QAAQ,EAAE,IAAI;EAAEC,IAAI,EAAE;AAAG,CAAC;AAAC,IAAAY,QAAA,GAEjDf,mBAAmB;AAAAgB,OAAA,cAAAD,QAAA"}
1
+ {"version":3,"file":"ContentGroupSection.js","names":["_react","_interopRequireDefault","require","_propTypes","_helpers","_excluded","ContentGroupSection","_ref","children","name","props","_objectWithoutProperties2","hasChildren","createElement","key","className","propTypes","PropTypes","oneOfType","arrayOf","node","string","defaultProps","_default","exports"],"sources":["../../../src/components/ContentGroupSection/ContentGroupSection.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { hasChildren } from '../../helpers';\n\nconst ContentGroupSection = ({ children, name, ...props }) => {\n if (!hasChildren(children)) return null;\n\n return (\n <div key={name} className=\"content-group-section\">\n {children}\n </div>\n );\n};\n\nContentGroupSection.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n name: PropTypes.string\n};\n\nContentGroupSection.defaultProps = { children: null, name: '' };\n\nexport default ContentGroupSection;\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAA4C,IAAAG,SAAA;AAE5C,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAAC,IAAA,EAAqC;EAAA,IAA/BC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IAAKC,KAAK,OAAAC,yBAAA,aAAAJ,IAAA,EAAAF,SAAA;EACrD,IAAI,CAAC,IAAAO,oBAAW,EAACJ,QAAQ,CAAC,EAAE,OAAO,IAAI;EAEvC,oBACER,MAAA,YAAAa,aAAA;IAAKC,GAAG,EAAEL,IAAK;IAACM,SAAS,EAAC;EAAuB,GAC9CP,QACE,CAAC;AAEV,CAAC;AAEDF,mBAAmB,CAACU,SAAS,GAAG;EAC9BR,QAAQ,EAAES,qBAAS,CAACC,SAAS,CAAC,CAACD,qBAAS,CAACE,OAAO,CAACF,qBAAS,CAACG,IAAI,CAAC,EAAEH,qBAAS,CAACG,IAAI,CAAC,CAAC;EAClFX,IAAI,EAAEQ,qBAAS,CAACI;AAClB,CAAC;AAEDf,mBAAmB,CAACgB,YAAY,GAAG;EAAEd,QAAQ,EAAE,IAAI;EAAEC,IAAI,EAAE;AAAG,CAAC;AAAC,IAAAc,QAAA,GAEjDjB,mBAAmB;AAAAkB,OAAA,cAAAD,QAAA"}
@@ -63,11 +63,10 @@ var buildLoopPropsContent = function buildLoopPropsContent() {
63
63
  modifier = _options$modifier === void 0 ? '' : _options$modifier;
64
64
  return propertiesToDisplay.map(function (key) {
65
65
  var loopValue = loopValues[key];
66
- var loopValueItem = loopValue && loopValue[i];
67
- var propValue = loopValueItem ? getLoopValue(loopValueItem) : regularValues[key];
66
+ var propValue = loopValue ? getLoopValue(loopValue[i]) : regularValues[key];
68
67
  if (!propValue) return null;
69
68
  var processedValue = (0, _helpers.processDataSummaryValue)(propValue, options);
70
- var linkToPublishedContent = (0, _getLinkToPublishedContent["default"])(key, data, loopValueItem);
69
+ var linkToPublishedContent = (0, _getLinkToPublishedContent["default"])(key, data);
71
70
  return [(0, _lodash["default"])(label), processedValue, linkToPublishedContent, modifier];
72
71
  });
73
72
  })).filter(Boolean);
@@ -1 +1 @@
1
- {"version":3,"file":"build-loop-props-content.js","names":["_lodash","_interopRequireDefault","require","_lodash2","_getLinkToPublishedContent","_getLoopPropsLimit","_getPropValue","_helpers","getLoopValue","value","keyField","separateValues","propsToDisplay","loopProps","data","regularValues","loopValues","forEach","options","propertiesToDisplay","prop","getPropValue","isArrayValue","Array","isArray","isLoopableProp","includes","buildLoopPropsContent","arguments","length","undefined","limit","loopPropsWithContent","_separateValues","_separateValues2","_slicedToArray2","loopLimit","getLoopPropsLimit","_loop","i","propsArray","flatten","map","label","_options$modifier","modifier","key","loopValue","loopValueItem","propValue","processedValue","processDataSummaryValue","linkToPublishedContent","getLinkToPublishedContent","upperFirst","filter","Boolean","push","_default","exports"],"sources":["../../../../src/components/DataSummary/helpers/build-loop-props-content.js"],"sourcesContent":["import upperFirst from 'lodash.upperfirst';\nimport flatten from 'lodash.flatten';\nimport getLinkToPublishedContent from './get-link-to-published-content';\nimport getLoopPropsLimit from './get-loop-props-limit';\nimport getPropValue from './get-prop-value';\nimport { processDataSummaryValue } from '../../../helpers';\n\nconst getLoopValue = value => {\n const { keyField } = value;\n return value[keyField];\n};\n\nconst separateValues = (propsToDisplay, loopProps, data) => {\n const regularValues = {};\n const loopValues = {};\n\n propsToDisplay.forEach(options => {\n const { propertiesToDisplay } = options;\n propertiesToDisplay.forEach(prop => {\n const value = getPropValue(prop, data, options);\n const isArrayValue = Array.isArray(value);\n if (!value) return;\n const isLoopableProp = loopProps.includes(prop) && isArrayValue;\n\n if (isLoopableProp) {\n loopValues[prop] = value;\n } else {\n regularValues[prop] = value;\n }\n });\n });\n return [regularValues, loopValues];\n};\n\nconst buildLoopPropsContent = (loopProps = [], propsToDisplay = [], limit = 0, data = {}) => {\n const loopPropsWithContent = [];\n const [regularValues, loopValues] = separateValues(propsToDisplay, loopProps, data);\n\n const loopLimit = getLoopPropsLimit(loopValues, limit);\n\n for (let i = 0; i < loopLimit; i += 1) {\n const propsArray = flatten(\n propsToDisplay.map(options => {\n const { propertiesToDisplay, label, modifier = '' } = options;\n\n return propertiesToDisplay.map(key => {\n const loopValue = loopValues[key];\n const loopValueItem = loopValue && loopValue[i];\n const propValue = loopValueItem ? getLoopValue(loopValueItem) : regularValues[key];\n if (!propValue) return null;\n\n const processedValue = processDataSummaryValue(propValue, options);\n const linkToPublishedContent = getLinkToPublishedContent(key, data, loopValueItem);\n return [upperFirst(label), processedValue, linkToPublishedContent, modifier];\n });\n })\n ).filter(Boolean);\n loopPropsWithContent.push(propsArray);\n }\n\n return flatten(loopPropsWithContent);\n};\n\nexport default buildLoopPropsContent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"build-loop-props-content.js","names":["_lodash","_interopRequireDefault","require","_lodash2","_getLinkToPublishedContent","_getLoopPropsLimit","_getPropValue","_helpers","getLoopValue","value","keyField","separateValues","propsToDisplay","loopProps","data","regularValues","loopValues","forEach","options","propertiesToDisplay","prop","getPropValue","isArrayValue","Array","isArray","isLoopableProp","includes","buildLoopPropsContent","arguments","length","undefined","limit","loopPropsWithContent","_separateValues","_separateValues2","_slicedToArray2","loopLimit","getLoopPropsLimit","_loop","i","propsArray","flatten","map","label","_options$modifier","modifier","key","loopValue","propValue","processedValue","processDataSummaryValue","linkToPublishedContent","getLinkToPublishedContent","upperFirst","filter","Boolean","push","_default","exports"],"sources":["../../../../src/components/DataSummary/helpers/build-loop-props-content.js"],"sourcesContent":["import upperFirst from 'lodash.upperfirst';\nimport flatten from 'lodash.flatten';\nimport getLinkToPublishedContent from './get-link-to-published-content';\nimport getLoopPropsLimit from './get-loop-props-limit';\nimport getPropValue from './get-prop-value';\nimport { processDataSummaryValue } from '../../../helpers';\n\nconst getLoopValue = value => {\n const { keyField } = value;\n return value[keyField];\n};\n\nconst separateValues = (propsToDisplay, loopProps, data) => {\n const regularValues = {};\n const loopValues = {};\n\n propsToDisplay.forEach(options => {\n const { propertiesToDisplay } = options;\n propertiesToDisplay.forEach(prop => {\n const value = getPropValue(prop, data, options);\n const isArrayValue = Array.isArray(value);\n if (!value) return;\n const isLoopableProp = loopProps.includes(prop) && isArrayValue;\n\n if (isLoopableProp) {\n loopValues[prop] = value;\n } else {\n regularValues[prop] = value;\n }\n });\n });\n return [regularValues, loopValues];\n};\n\nconst buildLoopPropsContent = (loopProps = [], propsToDisplay = [], limit = 0, data = {}) => {\n const loopPropsWithContent = [];\n const [regularValues, loopValues] = separateValues(propsToDisplay, loopProps, data);\n\n const loopLimit = getLoopPropsLimit(loopValues, limit);\n\n for (let i = 0; i < loopLimit; i += 1) {\n const propsArray = flatten(\n propsToDisplay.map(options => {\n const { propertiesToDisplay, label, modifier = '' } = options;\n\n return propertiesToDisplay.map(key => {\n const loopValue = loopValues[key];\n const propValue = loopValue ? getLoopValue(loopValue[i]) : regularValues[key];\n if (!propValue) return null;\n\n const processedValue = processDataSummaryValue(propValue, options);\n const linkToPublishedContent = getLinkToPublishedContent(key, data);\n return [upperFirst(label), processedValue, linkToPublishedContent, modifier];\n });\n })\n ).filter(Boolean);\n loopPropsWithContent.push(propsArray);\n }\n\n return flatten(loopPropsWithContent);\n};\n\nexport default buildLoopPropsContent;\n"],"mappings":"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"}
@@ -11,12 +11,10 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
11
11
  var getLinkToPublishedContent = function getLinkToPublishedContent() {
12
12
  var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
13
13
  var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
14
- var currentValue = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
15
14
  var _key$split = key.split('.'),
16
15
  _key$split2 = (0, _slicedToArray2["default"])(_key$split, 1),
17
16
  baseKey = _key$split2[0];
18
17
  if (!props[baseKey]) return '';
19
- if (currentValue && typeof currentValue.url !== 'undefined') return currentValue.url;
20
18
  var content = Array.isArray(props[baseKey]) ? props[baseKey][0] : props[baseKey];
21
19
  return content && content.url ? content.url : '';
22
20
  };
@@ -1 +1 @@
1
- {"version":3,"file":"get-link-to-published-content.js","names":["getLinkToPublishedContent","key","arguments","length","undefined","props","currentValue","_key$split","split","_key$split2","_slicedToArray2","baseKey","url","content","Array","isArray","_default","exports"],"sources":["../../../../src/components/DataSummary/helpers/get-link-to-published-content.js"],"sourcesContent":["const getLinkToPublishedContent = (key = '', props = {}, currentValue = null) => {\n const [baseKey] = key.split('.');\n if (!props[baseKey]) return '';\n\n if (currentValue && typeof currentValue.url !== 'undefined') return currentValue.url;\n\n const content = Array.isArray(props[baseKey]) ? props[baseKey][0] : props[baseKey];\n return content && content.url ? content.url : '';\n};\n\nexport default getLinkToPublishedContent;\n"],"mappings":";;;;;;;;;;AAAA,IAAMA,yBAAyB,GAAG,SAA5BA,yBAAyBA,CAAA,EAAkD;EAAA,IAA9CC,GAAG,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;EAAA,IAAEI,YAAY,GAAAJ,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI;EAC1E,IAAAK,UAAA,GAAkBN,GAAG,CAACO,KAAK,CAAC,GAAG,CAAC;IAAAC,WAAA,OAAAC,eAAA,aAAAH,UAAA;IAAzBI,OAAO,GAAAF,WAAA;EACd,IAAI,CAACJ,KAAK,CAACM,OAAO,CAAC,EAAE,OAAO,EAAE;EAE9B,IAAIL,YAAY,IAAI,OAAOA,YAAY,CAACM,GAAG,KAAK,WAAW,EAAE,OAAON,YAAY,CAACM,GAAG;EAEpF,IAAMC,OAAO,GAAGC,KAAK,CAACC,OAAO,CAACV,KAAK,CAACM,OAAO,CAAC,CAAC,GAAGN,KAAK,CAACM,OAAO,CAAC,CAAC,CAAC,CAAC,GAAGN,KAAK,CAACM,OAAO,CAAC;EAClF,OAAOE,OAAO,IAAIA,OAAO,CAACD,GAAG,GAAGC,OAAO,CAACD,GAAG,GAAG,EAAE;AAClD,CAAC;AAAC,IAAAI,QAAA,GAEahB,yBAAyB;AAAAiB,OAAA,cAAAD,QAAA"}
1
+ {"version":3,"file":"get-link-to-published-content.js","names":["getLinkToPublishedContent","key","arguments","length","undefined","props","_key$split","split","_key$split2","_slicedToArray2","baseKey","content","Array","isArray","url","_default","exports"],"sources":["../../../../src/components/DataSummary/helpers/get-link-to-published-content.js"],"sourcesContent":["const getLinkToPublishedContent = (key = '', props = {}) => {\n const [baseKey] = key.split('.');\n if (!props[baseKey]) return '';\n const content = Array.isArray(props[baseKey]) ? props[baseKey][0] : props[baseKey];\n return content && content.url ? content.url : '';\n};\n\nexport default getLinkToPublishedContent;\n"],"mappings":";;;;;;;;;;AAAA,IAAMA,yBAAyB,GAAG,SAA5BA,yBAAyBA,CAAA,EAA6B;EAAA,IAAzBC,GAAG,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;EACrD,IAAAI,UAAA,GAAkBL,GAAG,CAACM,KAAK,CAAC,GAAG,CAAC;IAAAC,WAAA,OAAAC,eAAA,aAAAH,UAAA;IAAzBI,OAAO,GAAAF,WAAA;EACd,IAAI,CAACH,KAAK,CAACK,OAAO,CAAC,EAAE,OAAO,EAAE;EAC9B,IAAMC,OAAO,GAAGC,KAAK,CAACC,OAAO,CAACR,KAAK,CAACK,OAAO,CAAC,CAAC,GAAGL,KAAK,CAACK,OAAO,CAAC,CAAC,CAAC,CAAC,GAAGL,KAAK,CAACK,OAAO,CAAC;EAClF,OAAOC,OAAO,IAAIA,OAAO,CAACG,GAAG,GAAGH,OAAO,CAACG,GAAG,GAAG,EAAE;AAClD,CAAC;AAAC,IAAAC,QAAA,GAEaf,yBAAyB;AAAAgB,OAAA,cAAAD,QAAA"}
@@ -19,16 +19,19 @@ var getSortProps = function getSortProps(_ref) {
19
19
  querySortBy = _ref.querySortBy,
20
20
  defaultSortBy = _ref.defaultSortBy,
21
21
  isTextSearchFilterApplied = _ref.isTextSearchFilterApplied;
22
- var sort = querySort || (sortProperties.length ? null : defaultSort);
23
- var sortby = null;
24
- if (querySortBy) sortby = [querySortBy];else if (!sortProperties.length) sortby = defaultSortBy;
25
22
  var updatedSortProperties = (0, _toConsumableArray2["default"])(sortProperties);
23
+ if (!querySort && !sortProperties.length) {
24
+ updatedSortProperties.unshift({
25
+ sort: defaultSort,
26
+ propsToDisplay: defaultSortBy
27
+ });
28
+ }
26
29
  if (isTextSearchFilterApplied) updatedSortProperties.unshift({
27
30
  isScore: true
28
31
  });
29
- if (sort) updatedSortProperties.unshift({
30
- sort: sort,
31
- propsToDisplay: sortby
32
+ if (querySort) updatedSortProperties.unshift({
33
+ sort: querySort,
34
+ propsToDisplay: [querySortBy]
32
35
  });
33
36
  var sortbyFilters = updatedSortProperties.map(function (_ref2) {
34
37
  var filterProps = _ref2.propsToDisplay;
@@ -1 +1 @@
1
- {"version":3,"file":"get-sort-props.js","names":["getSortProps","_ref","querySort","sortProperties","defaultSort","querySortBy","defaultSortBy","isTextSearchFilterApplied","sort","length","sortby","updatedSortProperties","_toConsumableArray2","unshift","isScore","propsToDisplay","sortbyFilters","map","_ref2","filterProps","filter","Boolean","flat","_default","exports"],"sources":["../../../../src/components/List/helpers/get-sort-props.js"],"sourcesContent":["const getSortProps = ({\n querySort,\n sortProperties,\n defaultSort,\n querySortBy,\n defaultSortBy,\n isTextSearchFilterApplied\n}) => {\n const sort = querySort || (sortProperties.length ? null : defaultSort);\n let sortby = null;\n if (querySortBy) sortby = [querySortBy];\n else if (!sortProperties.length) sortby = defaultSortBy;\n\n const updatedSortProperties = [...sortProperties];\n if (isTextSearchFilterApplied) updatedSortProperties.unshift({ isScore: true });\n if (sort) updatedSortProperties.unshift({ sort, propsToDisplay: sortby });\n\n const sortbyFilters = updatedSortProperties\n .map(({ propsToDisplay: filterProps }) => filterProps)\n .filter(Boolean)\n .flat();\n return { sortbyFilters, updatedSortProperties };\n};\n\nexport default getSortProps;\n"],"mappings":";;;;;;;;;;;;;;AAAA,IAAMA,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAOZ;EAAA,IANJC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,cAAc,GAAAF,IAAA,CAAdE,cAAc;IACdC,WAAW,GAAAH,IAAA,CAAXG,WAAW;IACXC,WAAW,GAAAJ,IAAA,CAAXI,WAAW;IACXC,aAAa,GAAAL,IAAA,CAAbK,aAAa;IACbC,yBAAyB,GAAAN,IAAA,CAAzBM,yBAAyB;EAEzB,IAAMC,IAAI,GAAGN,SAAS,KAAKC,cAAc,CAACM,MAAM,GAAG,IAAI,GAAGL,WAAW,CAAC;EACtE,IAAIM,MAAM,GAAG,IAAI;EACjB,IAAIL,WAAW,EAAEK,MAAM,GAAG,CAACL,WAAW,CAAC,CAAC,KACnC,IAAI,CAACF,cAAc,CAACM,MAAM,EAAEC,MAAM,GAAGJ,aAAa;EAEvD,IAAMK,qBAAqB,OAAAC,mBAAA,aAAOT,cAAc,CAAC;EACjD,IAAII,yBAAyB,EAAEI,qBAAqB,CAACE,OAAO,CAAC;IAAEC,OAAO,EAAE;EAAK,CAAC,CAAC;EAC/E,IAAIN,IAAI,EAAEG,qBAAqB,CAACE,OAAO,CAAC;IAAEL,IAAI,EAAJA,IAAI;IAAEO,cAAc,EAAEL;EAAO,CAAC,CAAC;EAEzE,IAAMM,aAAa,GAAGL,qBAAqB,CACxCM,GAAG,CAAC,UAAAC,KAAA;IAAA,IAAmBC,WAAW,GAAAD,KAAA,CAA3BH,cAAc;IAAA,OAAoBI,WAAW;EAAA,EAAC,CACrDC,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,CAAC;EACT,OAAO;IAAEN,aAAa,EAAbA,aAAa;IAAEL,qBAAqB,EAArBA;EAAsB,CAAC;AACjD,CAAC;AAAC,IAAAY,QAAA,GAEavB,YAAY;AAAAwB,OAAA,cAAAD,QAAA"}
1
+ {"version":3,"file":"get-sort-props.js","names":["getSortProps","_ref","querySort","sortProperties","defaultSort","querySortBy","defaultSortBy","isTextSearchFilterApplied","updatedSortProperties","_toConsumableArray2","length","unshift","sort","propsToDisplay","isScore","sortbyFilters","map","_ref2","filterProps","filter","Boolean","flat","_default","exports"],"sources":["../../../../src/components/List/helpers/get-sort-props.js"],"sourcesContent":["const getSortProps = ({\n querySort,\n sortProperties,\n defaultSort,\n querySortBy,\n defaultSortBy,\n isTextSearchFilterApplied\n}) => {\n const updatedSortProperties = [...sortProperties];\n if (!querySort && !sortProperties.length) {\n updatedSortProperties.unshift({ sort: defaultSort, propsToDisplay: defaultSortBy });\n }\n if (isTextSearchFilterApplied) updatedSortProperties.unshift({ isScore: true });\n if (querySort) updatedSortProperties.unshift({ sort: querySort, propsToDisplay: [querySortBy] });\n\n const sortbyFilters = updatedSortProperties\n .map(({ propsToDisplay: filterProps }) => filterProps)\n .filter(Boolean)\n .flat();\n return { sortbyFilters, updatedSortProperties };\n};\n\nexport default getSortProps;\n"],"mappings":";;;;;;;;;;;;;;AAAA,IAAMA,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAOZ;EAAA,IANJC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,cAAc,GAAAF,IAAA,CAAdE,cAAc;IACdC,WAAW,GAAAH,IAAA,CAAXG,WAAW;IACXC,WAAW,GAAAJ,IAAA,CAAXI,WAAW;IACXC,aAAa,GAAAL,IAAA,CAAbK,aAAa;IACbC,yBAAyB,GAAAN,IAAA,CAAzBM,yBAAyB;EAEzB,IAAMC,qBAAqB,OAAAC,mBAAA,aAAON,cAAc,CAAC;EACjD,IAAI,CAACD,SAAS,IAAI,CAACC,cAAc,CAACO,MAAM,EAAE;IACxCF,qBAAqB,CAACG,OAAO,CAAC;MAAEC,IAAI,EAAER,WAAW;MAAES,cAAc,EAAEP;IAAc,CAAC,CAAC;EACrF;EACA,IAAIC,yBAAyB,EAAEC,qBAAqB,CAACG,OAAO,CAAC;IAAEG,OAAO,EAAE;EAAK,CAAC,CAAC;EAC/E,IAAIZ,SAAS,EAAEM,qBAAqB,CAACG,OAAO,CAAC;IAAEC,IAAI,EAAEV,SAAS;IAAEW,cAAc,EAAE,CAACR,WAAW;EAAE,CAAC,CAAC;EAEhG,IAAMU,aAAa,GAAGP,qBAAqB,CACxCQ,GAAG,CAAC,UAAAC,KAAA;IAAA,IAAmBC,WAAW,GAAAD,KAAA,CAA3BJ,cAAc;IAAA,OAAoBK,WAAW;EAAA,EAAC,CACrDC,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,CAAC;EACT,OAAO;IAAEN,aAAa,EAAbA,aAAa;IAAEP,qBAAqB,EAArBA;EAAsB,CAAC;AACjD,CAAC;AAAC,IAAAc,QAAA,GAEatB,YAAY;AAAAuB,OAAA,cAAAD,QAAA"}
@@ -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
- }, "More filters"), /*#__PURE__*/_react["default"].createElement("div", {
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":";;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,WAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,OAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,YAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AAEA,IAAAO,gBAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,iBAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,kBAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,UAAA,GAAAV,OAAA;AAAoE,SAAAW,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAb,wBAAAiB,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,cAAAN,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAEpE,IAAMW,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAiBZ;EAAA,IAhBJC,eAAe,GAAAD,IAAA,CAAfC,eAAe;IACfC,iBAAiB,GAAAF,IAAA,CAAjBE,iBAAiB;IACjBC,IAAI,GAAAH,IAAA,CAAJG,IAAI;IACJC,OAAO,GAAAJ,IAAA,CAAPI,OAAO;IACPC,MAAM,GAAAL,IAAA,CAANK,MAAM;IACNC,MAAM,GAAAN,IAAA,CAANM,MAAM;IACNC,YAAY,GAAAP,IAAA,CAAZO,YAAY;IACZC,IAAI,GAAAR,IAAA,CAAJQ,IAAI;IACJC,uBAAuB,GAAAT,IAAA,CAAvBS,uBAAuB;IACvBC,mBAAmB,GAAAV,IAAA,CAAnBU,mBAAmB;IACnBC,sBAAsB,GAAAX,IAAA,CAAtBW,sBAAsB;IACtBC,iBAAiB,GAAAZ,IAAA,CAAjBY,iBAAiB;IACjBC,gBAAgB,GAAAb,IAAA,CAAhBa,gBAAgB;IAChBC,YAAY,GAAAd,IAAA,CAAZc,YAAY;IACZC,iBAAiB,GAAAf,IAAA,CAAjBe,iBAAiB;IACjBC,KAAK,GAAAhB,IAAA,CAALgB,KAAK;EAEL,IAAAC,SAAA,GAAoE,IAAAC,eAAQ,EAAC,IAAI,CAAC;IAAAC,UAAA,OAAAC,eAAA,aAAAH,SAAA;IAA3EI,0BAA0B,GAAAF,UAAA;IAAEG,6BAA6B,GAAAH,UAAA;EAChE,IAAAI,UAAA,GAAsE,IAAAL,eAAQ,EAAC,IAAI,CAAC;IAAAM,UAAA,OAAAJ,eAAA,aAAAG,UAAA;IAA7EE,2BAA2B,GAAAD,UAAA;IAAEE,8BAA8B,GAAAF,UAAA;EAElE,IAAMG,QAAQ,GAAG,SAAXA,QAAQA,CAAGC,SAAS,EAAI;IAC5B,IAAMC,QAAQ,GAAGf,YAAY,GACzB,IAAAgB,sBAAa,EAACF,SAAS,EAAExB,OAAO,EAAEF,iBAAiB,EAAEc,KAAK,CAAC,GAC3D,EAAE;IACNT,YAAY,CAACsB,QAAQ,CAAC;IACtBH,8BAA8B,CAAC,IAAI,CAAC;IACpCJ,6BAA6B,CAAC,IAAI,CAAC;EACrC,CAAC;EAED,IAAMS,YAAY,GAAG,IAAAC,kBAAQ,EAAC,UAAAJ,SAAS,EAAI;IACzCD,QAAQ,CAACC,SAAS,CAAC;EACrB,CAAC,EAAE,GAAG,CAAC;EAEP,IAAAK,gBAAS,EACP,YAAM;IACJ,IAAInB,YAAY,CAACoB,YAAY,EAAE;MAC7BH,YAAY,CAACjB,YAAY,CAAC;MAC1BC,iBAAiB,CAAC;QAAEoB,IAAI,EAAE;MAAc,CAAC,CAAC;IAC5C;EACF,CAAC,EACD,CAACrB,YAAY,EAAEiB,YAAY,EAAEhB,iBAAiB,CAChD,CAAC;EAED,IAAMqB,SAAS,GAAG,IAAAC,sBAAU,EAAC,oCAAoC,EAAE;IACjE,sBAAsB,EAAE5B,uBAAuB,IAAIC,mBAAmB;IACtE,2BAA2B,EAAED;EAC/B,CAAC,CAAC;EAEF,IAAA6B,qBAAA,GAKI,IAAAC,sCAA6B,EAACd,2BAA2B,EAAEJ,0BAA0B,CAAC;IAJxFmB,6BAA6B,GAAAF,qBAAA,CAA7BE,6BAA6B;IAC7BC,6BAA6B,GAAAH,qBAAA,CAA7BG,6BAA6B;IAC7BC,8BAA8B,GAAAJ,qBAAA,CAA9BI,8BAA8B;IAC9BC,8BAA8B,GAAAL,qBAAA,CAA9BK,8BAA8B;EAGhC,IAAMC,MAAM,aAAAC,MAAA,CAAarC,IAAI,UAAO;EAEpC,IAAMsC,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAS;IACxB/B,iBAAiB,CAAC;MAAEoB,IAAI,EAAE;IAAQ,CAAC,CAAC;IACpCR,QAAQ,CAAC,CAAC;EACZ,CAAC;EAED,IAAMoB,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAInB,SAAS,EAAEoB,YAAY,EAAK;IACtDjC,iBAAiB,CAAC;MAAEa,SAAS,EAATA,SAAS;MAAEM,YAAY,EAAEc,YAAY;MAAEb,IAAI,EAAE;IAAS,CAAC,CAAC;EAC9E,CAAC;EAED,IAAMc,WAAW,GAAG,CAAC,EAAErC,iBAAiB,IAAIC,gBAAgB,CAAC;EAE7D,oBACEjD,MAAA,YAAAsF,aAAA,CAAAtF,MAAA,YAAAuF,QAAA,qBACEvF,MAAA,YAAAsF,aAAA;IACEE,GAAG,EAAEnD,eAAgB;IACrBoD,SAAS,EAAEjB,SAAU;IACrB,eAAaQ,MAAO;IACpBU,EAAE,EAAEV,MAAO;IACXW,QAAQ,EAAE,SAAAA,SAAAC,CAAC,EAAI;MACbA,CAAC,CAACC,cAAc,CAAC,CAAC;MAClB9B,QAAQ,CAACb,YAAY,CAAC;IACxB;EAAE,GACDJ,mBAAmB,iBAClB9C,MAAA,YAAAsF,aAAA,CAAC7E,gBAAA,WAAe;IAACqF,WAAW,EAAE,SAAAA,YAAA;MAAA,OAAM/C,sBAAsB,CAAC,KAAK,CAAC;IAAA;EAAC,CAAE,CACrE,eAED/C,MAAA,YAAAsF,aAAA;IAAKG,SAAS,EAAC;EAA8B,gBAC3CzF,MAAA,YAAAsF,aAAA,CAAC5E,iBAAA,WAAgB;IAACwE,WAAW,EAAEA;EAAY,CAAE,CAAC,eAE9ClF,MAAA,YAAAsF,aAAA;IAAKG,SAAS,EAAC;EAAgD,GAC5D,CAACJ,WAAW,iBACXrF,MAAA,YAAAsF,aAAA,CAAC/E,YAAA,WAAW;IACV+D,YAAY,EAAE,CAAC7B,MAAO;IACtBF,IAAI,EAAEA,IAAK;IACXC,OAAO,EAAEA,OAAQ;IACjBC,MAAM,EAAEA,MAAO;IACfC,MAAM,EAAEA,MAAO;IACfQ,YAAY,EAAEA,YAAa;IAC3BiC,kBAAkB,EAAEA;EAAmB,CACxC,CACF,EAEAE,WAAW,iBACVrF,MAAA,YAAAsF,aAAA,CAAAtF,MAAA,YAAAuF,QAAA,qBACEvF,MAAA,YAAAsF,aAAA,CAAC/E,YAAA,WAAW;IACV+D,YAAY,EAAE,CAAC7B,MAAO;IACtBF,IAAI,EAAEA,IAAK;IACXC,OAAO,EAAEA,OAAO,CAACuD,KAAK,CAAC,CAAC,EAAE9C,gBAAgB,CAAE;IAC5CR,MAAM,EAAEA,MAAO;IACfC,MAAM,EAAEA,MAAO;IACfQ,YAAY,EAAEA,YAAa;IAC3BiC,kBAAkB,EAAEA;EAAmB,CACxC,CAAC,EAED,CAAC,CAAClC,gBAAgB,iBACjBjD,MAAA,YAAAsF,aAAA;IACE,eAAY,8BAA8B;IAC1CG,SAAS,EAAEZ,6BAA8B;IACzCN,IAAI,EAAC,QAAQ;IACbyB,OAAO,EAAE,SAAAA,QAAA;MAAA,OAAMtC,6BAA6B,CAAC,CAACD,0BAA0B,CAAC;IAAA;EAAC,GAAC,SAErE,CACT,eAEDzD,MAAA,YAAAsF,aAAA;IAAKG,SAAS,EAAEb;EAA8B,gBAC5C5E,MAAA,YAAAsF,aAAA;IAAKG,SAAS,EAAEQ,+BAAoB,CAACC;EAAe,gBAClDlG,MAAA,YAAAsF,aAAA,CAAC/E,YAAA,WAAW;IACV+D,YAAY,EAAE,CAAC7B,MAAM,IAAI,IAAA0D,wBAAe,EAAC,CAAE;IAC3C5D,IAAI,EAAEA,IAAK;IACXC,OAAO,EAAEA,OAAO,CAACuD,KAAK,CACpB9C,gBAAgB,EAChBD,iBAAiB,GAAGA,iBAAiB,GAAG,CAAC,GAAG,CAC9C,CAAE;IACFP,MAAM,EAAEA,MAAO;IACfC,MAAM,EAAEA,MAAO;IACfQ,YAAY,EAAEA,YAAa;IAC3BiC,kBAAkB,EAAEA;EAAmB,CACxC,CAAC,EAED,CAAC,CAACnC,iBAAiB,iBAClBhD,MAAA,YAAAsF,aAAA;IACE,eAAY,+BAA+B;IAC3CG,SAAS,EAAEV,8BAA+B;IAC1CR,IAAI,EAAC,QAAQ;IACbyB,OAAO,EAAE,SAAAA,QAAA;MAAA,OACPlC,8BAA8B,CAAC,CAACD,2BAA2B,CAAC;IAAA;EAC7D,GACAA,2BAA2B,GAAG,cAAc,GAAG,cAC1C,CACT,eAED7D,MAAA,YAAAsF,aAAA;IAAKG,SAAS,EAAEX;EAA+B,gBAC7C9E,MAAA,YAAAsF,aAAA;IAAKG,SAAS,EAAEQ,+BAAoB,CAACG;EAAgB,gBACnDpG,MAAA,YAAAsF,aAAA,CAAC/E,YAAA,WAAW;IACV+D,YAAY,EAAE,KAAM;IACpB/B,IAAI,EAAEA,IAAK;IACXC,OAAO,EAAEA,OAAO,CAACuD,KAAK,CAAC/C,iBAAiB,CAAE;IAC1CP,MAAM,EAAEA,MAAO;IACfC,MAAM,EAAEA,MAAO;IACfQ,YAAY,EAAEA,YAAa;IAC3BiC,kBAAkB,EAAEA;EAAmB,CACxC,CACE,CAAC,eAENnF,MAAA,YAAAsF,aAAA;IAAKG,SAAS,EAAEQ,+BAAoB,CAACI;EAAgB,gBACnDrG,MAAA,YAAAsF,aAAA,CAAC5E,iBAAA,WAAgB;IAACwE,WAAW,EAAEA;EAAY,CAAE,CAAC,eAE9ClF,MAAA,YAAAsF,aAAA;IAAQG,SAAS,EAAC,2BAA2B;IAAClB,IAAI,EAAC;EAAQ,GACxD+B,iBACK,CACL,CACF,CACF,CAAC,eAENtG,MAAA,YAAAsF,aAAA;IAAKG,SAAS,EAAEQ,+BAAoB,CAACM;EAAe,gBAClDvG,MAAA,YAAAsF,aAAA,CAAC5E,iBAAA,WAAgB;IAACwE,WAAW,EAAEA;EAAY,CAAE,CAAC,eAE9ClF,MAAA,YAAAsF,aAAA;IAAQG,SAAS,EAAC,2BAA2B;IAAClB,IAAI,EAAC;EAAQ,GACxD+B,iBACK,CACL,CACF,CACL,CACH,eAEDtG,MAAA,YAAAsF,aAAA,WAAK,CAAC,EAEL,CAACxC,mBAAmB,iBACnB9C,MAAA,YAAAsF,aAAA;IAAQG,SAAS,EAAC,2BAA2B;IAAClB,IAAI,EAAC;EAAQ,GACxD+B,iBACK,CAEP,CACF,CAAC,EAELxD,mBAAmB,iBAAI9C,MAAA,YAAAsF,aAAA,CAAC3E,kBAAA,WAAiB;IAACqE,MAAM,EAAEA,MAAO;IAACE,WAAW,EAAEA;EAAY,CAAE,CAClF,CAAC,EAENrC,uBAAuB,IACtB,CAACC,mBAAmB,iBAClB9C,MAAA,YAAAsF,aAAA;IAAKG,SAAS,EAAC,6CAA6C;IAAC,eAAY;EAAe,gBACtFzF,MAAA,YAAAsF,aAAA;IAAKkB,IAAI,EAAC,QAAQ;IAACR,OAAO,EAAE,SAAAA,QAAA;MAAA,OAAMjD,sBAAsB,CAAC,IAAI,CAAC;IAAA;EAAC,GAC5D0D,iBACE,CACF,CAET,CAAC;AAEP,CAAC;AAEDtE,YAAY,CAACuE,SAAS,GAAG;EACvBnE,IAAI,EAAEoE,qBAAS,CAACC,MAAM,CAACC,UAAU;EACjCrE,OAAO,EAAEmE,qBAAS,CAACG,KAAK,CAACD,UAAU;EACnCxE,eAAe,EAAEsE,qBAAS,CAACC,MAAM,CAACC,UAAU;EAC5CpE,MAAM,EAAEkE,qBAAS,CAACI,IAAI,CAACF,UAAU;EACjCnE,MAAM,EAAEiE,qBAAS,CAACK,MAAM,CAACH,UAAU;EACnClE,YAAY,EAAEgE,qBAAS,CAACM,IAAI,CAACJ,UAAU;EACvCjE,IAAI,EAAE+D,qBAAS,CAACK,MAAM,CAACH,UAAU;EACjC/D,mBAAmB,EAAE6D,qBAAS,CAACI,IAAI,CAACF,UAAU;EAC9C9D,sBAAsB,EAAE4D,qBAAS,CAACM,IAAI,CAACJ,UAAU;EACjDhE,uBAAuB,EAAE8D,qBAAS,CAACI,IAAI,CAACF,UAAU;EAClD7D,iBAAiB,EAAE2D,qBAAS,CAACO,MAAM,CAACL,UAAU;EAC9C5D,gBAAgB,EAAE0D,qBAAS,CAACO,MAAM,CAACL,UAAU;EAC7C3D,YAAY,EAAEyD,qBAAS,CAACC,MAAM,CAACC,UAAU;EACzC1D,iBAAiB,EAAEwD,qBAAS,CAACM,IAAI,CAACJ,UAAU;EAC5CvE,iBAAiB,EAAEqE,qBAAS,CAACK,MAAM;EACnC5D,KAAK,EAAEuD,qBAAS,CAACC;AACnB,CAAC;AAEDzE,YAAY,CAACgF,YAAY,GAAG;EAC1B7E,iBAAiB,EAAE,EAAE;EACrBc,KAAK,EAAE,CAAC;AACV,CAAC;AAAC,IAAAgE,QAAA,GAEajF,YAAY;AAAAkF,OAAA,cAAAD,QAAA"}
@@ -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: filterBy,
106
- filterByProperty: 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 _useQuery = (0, _client.useQuery)(action, {
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 = _useQuery.data,
120
- error = _useQuery.error,
121
- loading = _useQuery.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 _ref2 = data || {},
125
- _ref2$searchPublished = _ref2.searchPublishedContent,
126
- _ref2$searchPublished2 = _ref2$searchPublished === void 0 ? {} : _ref2$searchPublished,
127
- _ref2$searchPublished3 = _ref2$searchPublished2.rawResults,
128
- _ref2$searchPublished4 = _ref2$searchPublished3 === void 0 ? {} : _ref2$searchPublished3,
129
- filterData = _ref2$searchPublished4.aggregations;
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;