@blaze-cms/react-page-builder 0.123.0-alpha.7 → 0.123.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 (75) hide show
  1. package/CHANGELOG.md +106 -792
  2. package/lib/components/Card/Card.js +20 -6
  3. package/lib/components/Card/Card.js.map +1 -1
  4. package/lib/components/Card/CardContainer.js +20 -4
  5. package/lib/components/Card/CardContainer.js.map +1 -1
  6. package/lib/components/CarouselWrapper.js +12 -5
  7. package/lib/components/CarouselWrapper.js.map +1 -1
  8. package/lib/components/DataSummary/helpers/get-link-based-on-value.js +4 -0
  9. package/lib/components/DataSummary/helpers/get-link-based-on-value.js.map +1 -1
  10. package/lib/components/List/components/Cards/CardsRenderItem.js +23 -4
  11. package/lib/components/List/components/Cards/CardsRenderItem.js.map +1 -1
  12. package/lib/components/Menu/Menu.js +4 -3
  13. package/lib/components/Menu/Menu.js.map +1 -1
  14. package/lib/components/SearchContent/index.js +32 -23
  15. package/lib/components/SearchContent/index.js.map +1 -1
  16. package/lib/components/SearchFilter/SearchFilter/FiltersList.js +16 -11
  17. package/lib/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
  18. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js +15 -50
  19. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  20. package/lib/components/SearchFilter/components/Select.js +22 -10
  21. package/lib/components/SearchFilter/components/Select.js.map +1 -1
  22. package/lib/components/index.js +5 -0
  23. package/lib/components/index.js.map +1 -1
  24. package/lib/constants/index.js +5 -2
  25. package/lib/constants/index.js.map +1 -1
  26. package/lib-es/components/Card/Card.js +18 -4
  27. package/lib-es/components/Card/Card.js.map +1 -1
  28. package/lib-es/components/Card/CardContainer.js +21 -5
  29. package/lib-es/components/Card/CardContainer.js.map +1 -1
  30. package/lib-es/components/CarouselWrapper.js +12 -5
  31. package/lib-es/components/CarouselWrapper.js.map +1 -1
  32. package/lib-es/components/DataSummary/helpers/get-link-based-on-value.js +5 -1
  33. package/lib-es/components/DataSummary/helpers/get-link-based-on-value.js.map +1 -1
  34. package/lib-es/components/List/components/Cards/CardsRenderItem.js +23 -4
  35. package/lib-es/components/List/components/Cards/CardsRenderItem.js.map +1 -1
  36. package/lib-es/components/Menu/Menu.js +4 -3
  37. package/lib-es/components/Menu/Menu.js.map +1 -1
  38. package/lib-es/components/SearchContent/index.js +29 -22
  39. package/lib-es/components/SearchContent/index.js.map +1 -1
  40. package/lib-es/components/SearchFilter/SearchFilter/FiltersList.js +20 -16
  41. package/lib-es/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
  42. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js +10 -40
  43. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  44. package/lib-es/components/SearchFilter/components/Select.js +22 -6
  45. package/lib-es/components/SearchFilter/components/Select.js.map +1 -1
  46. package/lib-es/components/index.js +4 -1
  47. package/lib-es/components/index.js.map +1 -1
  48. package/lib-es/constants/index.js +3 -1
  49. package/lib-es/constants/index.js.map +1 -1
  50. package/package.json +3 -3
  51. package/src/components/Card/Card.js +28 -3
  52. package/src/components/Card/CardContainer.js +18 -2
  53. package/src/components/CarouselWrapper.js +8 -5
  54. package/src/components/DataSummary/helpers/get-link-based-on-value.js +9 -1
  55. package/src/components/List/components/Cards/CardsRenderItem.js +22 -3
  56. package/src/components/Menu/Menu.js +4 -3
  57. package/src/components/SearchContent/index.js +27 -18
  58. package/src/components/SearchFilter/SearchFilter/FiltersList.js +5 -2
  59. package/src/components/SearchFilter/SearchFilter/SearchFilter.js +113 -148
  60. package/src/components/SearchFilter/components/Select.js +29 -6
  61. package/src/components/index.js +2 -1
  62. package/src/constants/index.js +3 -1
  63. package/tests/unit/src/components/Card/__snapshots__/Card.test.js.snap +10 -10
  64. package/tests/unit/src/components/Card/__snapshots__/CardContainer.test.js.snap +8 -8
  65. package/tests/unit/src/components/Card/__snapshots__/CardRender.test.js.snap +2 -2
  66. package/tests/unit/src/components/Card/mockData.js +2 -0
  67. package/tests/unit/src/components/DataSummary/helpers/get-link-based-on-value.test.js +29 -0
  68. package/tests/unit/src/components/List/components/Cards/__snapshots__/CardsRender.test.js.snap +12 -12
  69. package/tests/unit/src/components/Menu/Menu.test.js +3 -1
  70. package/tests/unit/src/components/Menu/__snapshots__/Menu.test.js.snap +3 -0
  71. package/tests/unit/src/components/SearchFilter/SearchFilter/SearchFilter.test.js +64 -86
  72. package/tests/unit/src/components/SearchFilter/SearchFilter/__snapshots__/SearchFilter.test.js.snap +133 -61
  73. package/tests/unit/src/components/SearchFilter/components/Select.test.js +58 -4
  74. package/tests/unit/src/components/SearchFilter/components/__snapshots__/Select.test.js.snap +28 -5
  75. package/tests/unit/src/components/__snapshots__/index.test.js.snap +4 -0
@@ -22,7 +22,12 @@ const CardsRenderItem = ({
22
22
  propsToDisplay,
23
23
  shouldRenderBanner,
24
24
  bannerIndex,
25
- priority
25
+ priority,
26
+ enableOverlay,
27
+ autoScrollTimer,
28
+ arrowSize,
29
+ overlayModifier,
30
+ titleOverlayModifier
26
31
  }) => {
27
32
  const {
28
33
  initialOffset,
@@ -67,7 +72,11 @@ const CardsRenderItem = ({
67
72
  cardProps: cardProps,
68
73
  gtmId: name,
69
74
  gtmChildren: gtmChildren,
70
- priority: priority
75
+ priority: priority,
76
+ arrowSize: arrowSize,
77
+ enableOverlay: enableOverlay,
78
+ overlayModifier: overlayModifier,
79
+ titleOverlayModifier: titleOverlayModifier
71
80
  }, cardProps))), shouldRenderBanner && /*#__PURE__*/React.createElement(Banner, _extends({}, bannerProps, {
72
81
  cardBannerIndex: bannerIndex
73
82
  })));
@@ -88,7 +97,12 @@ CardsRenderItem.propTypes = {
88
97
  modifier: PropTypes.string,
89
98
  cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),
90
99
  gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),
91
- priority: PropTypes.bool
100
+ priority: PropTypes.bool,
101
+ enableOverlay: PropTypes.bool,
102
+ overlayModifier: PropTypes.string,
103
+ titleOverlayModifier: PropTypes.string,
104
+ autoScrollTimer: PropTypes.number,
105
+ arrowSize: PropTypes.string
92
106
  };
93
107
  CardsRenderItem.defaultProps = {
94
108
  priority: false,
@@ -97,7 +111,12 @@ CardsRenderItem.defaultProps = {
97
111
  propsToDisplay: [],
98
112
  modifier: '',
99
113
  cardChildren: [],
100
- gtmChildren: []
114
+ gtmChildren: [],
115
+ enableOverlay: false,
116
+ autoScrollTimer: 0,
117
+ overlayModifier: '',
118
+ titleOverlayModifier: '',
119
+ arrowSize: ''
101
120
  };
102
121
  export default CardsRenderItem;
103
122
  //# sourceMappingURL=CardsRenderItem.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/List/components/Cards/CardsRenderItem.js"],"names":["React","PropTypes","Waypoint","Card","shouldRenderWaypoint","renderChildren","parsePropsToDisplay","checkIfShouldRenderGtm","Banner","CardsRenderItem","cardProps","listProps","bannerProps","index","entity","currentListLength","cardChildren","gtmChildren","modifier","gridModifier","propsToDisplayModifiers","propsToDisplay","shouldRenderBanner","bannerIndex","priority","initialOffset","isInfinite","style","name","id","triggerInfiniteScroll","displayCount","displayCategory","displayThumbnail","displayTitle","listTotal","itemsPerPage","currentItemIndex","renderWaypoint","shouldRenderGtm","parsedPropsToDisplay","propTypes","object","isRequired","number","array","bool","string","oneOfType","arrayOf","node","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Waypoint } from 'react-waypoint';\nimport Card from '../../../Card/Card';\nimport { shouldRenderWaypoint, renderChildren, parsePropsToDisplay } from '../../../../helpers';\nimport { checkIfShouldRenderGtm } from '../helpers';\nimport Banner from '../../../Banner';\n\nconst CardsRenderItem = ({\n cardProps,\n listProps,\n bannerProps,\n index,\n entity,\n currentListLength,\n cardChildren,\n gtmChildren,\n modifier,\n gridModifier,\n propsToDisplayModifiers,\n propsToDisplay,\n shouldRenderBanner,\n bannerIndex,\n priority\n}) => {\n const {\n initialOffset,\n isInfinite,\n style,\n name,\n id,\n triggerInfiniteScroll,\n displayCount,\n displayCategory = true,\n displayThumbnail = true,\n displayTitle = true,\n listTotal,\n itemsPerPage\n } = listProps;\n\n const currentItemIndex = initialOffset + index;\n const renderWaypoint =\n isInfinite && shouldRenderWaypoint(index, currentListLength, currentItemIndex, listTotal);\n const shouldRenderGtm =\n gtmChildren && checkIfShouldRenderGtm(itemsPerPage, currentListLength, index);\n\n const parsedPropsToDisplay = parsePropsToDisplay(cardProps, propsToDisplay);\n\n return (\n <>\n {shouldRenderGtm && renderChildren(gtmChildren)}\n {displayCount && (\n <div className=\"heading heading--section heading--section--count\">\n <span className=\"section-number\">{currentItemIndex + 1}</span>\n <span className=\"section-total\">/{listTotal}</span>\n </div>\n )}\n <div className=\"list__item list__item--compact\">\n {renderWaypoint && <Waypoint onEnter={triggerInfiniteScroll} />}\n <Card\n id={id}\n entity={entity}\n gridModifier={gridModifier}\n propsToDisplay={parsedPropsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n cardProps={cardProps}\n gtmId={name}\n gtmChildren={gtmChildren}\n priority={priority}\n {...cardProps}\n />\n </div>\n {shouldRenderBanner && <Banner {...bannerProps} cardBannerIndex={bannerIndex} />}\n </>\n );\n};\n\nCardsRenderItem.propTypes = {\n cardProps: PropTypes.object.isRequired,\n listProps: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired,\n currentListLength: PropTypes.number.isRequired,\n propsToDisplayModifiers: PropTypes.array.isRequired,\n shouldRenderBanner: PropTypes.bool.isRequired,\n bannerIndex: PropTypes.number.isRequired,\n bannerProps: PropTypes.object,\n gridModifier: PropTypes.string,\n propsToDisplay: PropTypes.array,\n entity: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n priority: PropTypes.bool\n};\n\nCardsRenderItem.defaultProps = {\n priority: false,\n bannerProps: null,\n gridModifier: '',\n propsToDisplay: [],\n modifier: '',\n cardChildren: [],\n gtmChildren: []\n};\n\nexport default CardsRenderItem;\n"],"file":"CardsRenderItem.js"}
1
+ {"version":3,"sources":["../../../../../src/components/List/components/Cards/CardsRenderItem.js"],"names":["React","PropTypes","Waypoint","Card","shouldRenderWaypoint","renderChildren","parsePropsToDisplay","checkIfShouldRenderGtm","Banner","CardsRenderItem","cardProps","listProps","bannerProps","index","entity","currentListLength","cardChildren","gtmChildren","modifier","gridModifier","propsToDisplayModifiers","propsToDisplay","shouldRenderBanner","bannerIndex","priority","enableOverlay","autoScrollTimer","arrowSize","overlayModifier","titleOverlayModifier","initialOffset","isInfinite","style","name","id","triggerInfiniteScroll","displayCount","displayCategory","displayThumbnail","displayTitle","listTotal","itemsPerPage","currentItemIndex","renderWaypoint","shouldRenderGtm","parsedPropsToDisplay","propTypes","object","isRequired","number","array","bool","string","oneOfType","arrayOf","node","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Waypoint } from 'react-waypoint';\nimport Card from '../../../Card/Card';\nimport { shouldRenderWaypoint, renderChildren, parsePropsToDisplay } from '../../../../helpers';\nimport { checkIfShouldRenderGtm } from '../helpers';\nimport Banner from '../../../Banner';\n\nconst CardsRenderItem = ({\n cardProps,\n listProps,\n bannerProps,\n index,\n entity,\n currentListLength,\n cardChildren,\n gtmChildren,\n modifier,\n gridModifier,\n propsToDisplayModifiers,\n propsToDisplay,\n shouldRenderBanner,\n bannerIndex,\n priority,\n enableOverlay,\n autoScrollTimer,\n arrowSize,\n overlayModifier,\n titleOverlayModifier\n}) => {\n const {\n initialOffset,\n isInfinite,\n style,\n name,\n id,\n triggerInfiniteScroll,\n displayCount,\n displayCategory = true,\n displayThumbnail = true,\n displayTitle = true,\n listTotal,\n itemsPerPage\n } = listProps;\n\n const currentItemIndex = initialOffset + index;\n const renderWaypoint =\n isInfinite && shouldRenderWaypoint(index, currentListLength, currentItemIndex, listTotal);\n const shouldRenderGtm =\n gtmChildren && checkIfShouldRenderGtm(itemsPerPage, currentListLength, index);\n\n const parsedPropsToDisplay = parsePropsToDisplay(cardProps, propsToDisplay);\n\n return (\n <>\n {shouldRenderGtm && renderChildren(gtmChildren)}\n {displayCount && (\n <div className=\"heading heading--section heading--section--count\">\n <span className=\"section-number\">{currentItemIndex + 1}</span>\n <span className=\"section-total\">/{listTotal}</span>\n </div>\n )}\n <div className=\"list__item list__item--compact\">\n {renderWaypoint && <Waypoint onEnter={triggerInfiniteScroll} />}\n <Card\n id={id}\n entity={entity}\n gridModifier={gridModifier}\n propsToDisplay={parsedPropsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n cardProps={cardProps}\n gtmId={name}\n gtmChildren={gtmChildren}\n priority={priority}\n arrowSize={arrowSize}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...cardProps}\n />\n </div>\n {shouldRenderBanner && <Banner {...bannerProps} cardBannerIndex={bannerIndex} />}\n </>\n );\n};\n\nCardsRenderItem.propTypes = {\n cardProps: PropTypes.object.isRequired,\n listProps: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired,\n currentListLength: PropTypes.number.isRequired,\n propsToDisplayModifiers: PropTypes.array.isRequired,\n shouldRenderBanner: PropTypes.bool.isRequired,\n bannerIndex: PropTypes.number.isRequired,\n bannerProps: PropTypes.object,\n gridModifier: PropTypes.string,\n propsToDisplay: PropTypes.array,\n entity: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n priority: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number,\n arrowSize: PropTypes.string\n};\n\nCardsRenderItem.defaultProps = {\n priority: false,\n bannerProps: null,\n gridModifier: '',\n propsToDisplay: [],\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: '',\n arrowSize: ''\n};\n\nexport default CardsRenderItem;\n"],"file":"CardsRenderItem.js"}
@@ -64,7 +64,7 @@ const Menu = _ref => {
64
64
  className: isMobile ? childrenMobileModifier : childrenDesktopModifier
65
65
  }, logoOnDesktop && logoOnDesktopAlignment === 'left' && /*#__PURE__*/React.createElement("a", {
66
66
  href: "/",
67
- className: ""
67
+ className: "menu--desktop__logo-wrapper"
68
68
  }, /*#__PURE__*/React.createElement("img", {
69
69
  src: logoOnMobileUrl,
70
70
  alt: logoOnMobileAlt,
@@ -83,7 +83,7 @@ const Menu = _ref => {
83
83
  isMobile: isMobile
84
84
  })), logoOnDesktop && logoOnDesktopAlignment === 'right' && /*#__PURE__*/React.createElement("a", {
85
85
  href: "/",
86
- className: ""
86
+ className: "menu--desktop__logo-wrapper"
87
87
  }, /*#__PURE__*/React.createElement("img", {
88
88
  src: logoOnMobileUrl,
89
89
  alt: logoOnMobileAlt,
@@ -94,7 +94,7 @@ const Menu = _ref => {
94
94
  Menu.propTypes = {
95
95
  collapse: PropTypes.bool.isRequired,
96
96
  logoOnMobile: PropTypes.bool.isRequired,
97
- logoOnDesktop: PropTypes.bool.isRequired,
97
+ logoOnDesktop: PropTypes.bool,
98
98
  logoOnMobileUrl: PropTypes.string,
99
99
  logoOnMobileAlt: PropTypes.string,
100
100
  logoOnMobileModifier: PropTypes.string,
@@ -114,6 +114,7 @@ Menu.propTypes = {
114
114
  children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])
115
115
  };
116
116
  Menu.defaultProps = {
117
+ logoOnDesktop: false,
117
118
  logoOnMobileUrl: '',
118
119
  logoOnMobileAlt: '',
119
120
  logoOnMobileModifier: '',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Menu/Menu.js"],"names":["React","useState","PropTypes","BlazeButton","MdMenu","MdClose","useCheckMobileScreen","HIDDEN","SearchContent","Menu","children","collapse","modifier","mobileMenuModifier","mobileMenuChildrenModifier","mobileIconAlignment","mobileButtonModifier","hamburgerIconModifier","searchInputAlignment","searchInputWrapperMobile","searchInputWrapperDesktop","logoOnMobile","logoOnDesktop","logoOnMobileUrl","logoOnMobileAlt","logoOnMobileModifier","logoOnDesktopModifier","logoOnDesktopAlignment","closeIconModifier","entity","rest","isMobile","showMobileMenu","setShowMobileMenu","shouldDisplayCollapsed","mobileButtonClass","shouldDisplayChildren","childrenDesktopModifier","childrenMobileModifier","isMobileMenuExpanded","propTypes","bool","isRequired","string","oneOfType","arrayOf","node","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeButton from '@blaze-react/button';\nimport { MdMenu, MdClose } from 'react-icons/md';\nimport { useCheckMobileScreen } from '../../hooks';\nimport { HIDDEN } from '../../constants';\nimport SearchContent from '../SearchContent';\n\nconst Menu = ({\n children,\n collapse,\n modifier,\n mobileMenuModifier,\n mobileMenuChildrenModifier,\n mobileIconAlignment,\n mobileButtonModifier,\n hamburgerIconModifier,\n searchInputAlignment,\n searchInputWrapperMobile,\n searchInputWrapperDesktop,\n logoOnMobile,\n logoOnDesktop,\n logoOnMobileUrl,\n logoOnMobileAlt,\n logoOnMobileModifier,\n logoOnDesktopModifier,\n logoOnDesktopAlignment,\n closeIconModifier,\n entity,\n ...rest\n}) => {\n const isMobile = useCheckMobileScreen();\n const [showMobileMenu, setShowMobileMenu] = useState(false);\n\n const shouldDisplayCollapsed = collapse && isMobile;\n const mobileButtonClass = shouldDisplayCollapsed && isMobile ? mobileButtonModifier : HIDDEN;\n const shouldDisplayChildren = shouldDisplayCollapsed ? showMobileMenu : true;\n const childrenDesktopModifier =\n shouldDisplayChildren && !isMobile ? modifier : `${modifier} ${HIDDEN}`;\n\n const childrenMobileModifier =\n shouldDisplayChildren && isMobile ? `${mobileMenuChildrenModifier}` : ` ${HIDDEN}`;\n\n const isMobileMenuExpanded = showMobileMenu ? `${mobileMenuModifier}` : '';\n\n return (\n <>\n {collapse && (\n <div className=\"menu--mobile-wrapper\">\n <div\n className={`flex w-screen z-50 justify-${mobileIconAlignment} ${isMobileMenuExpanded}`}>\n <BlazeButton\n className={mobileButtonClass}\n onClick={() => setShowMobileMenu(!showMobileMenu)}>\n <i>\n {showMobileMenu ? (\n <MdClose className={closeIconModifier} />\n ) : (\n <MdMenu className={hamburgerIconModifier} />\n )}\n </i>\n </BlazeButton>\n </div>\n </div>\n )}\n {logoOnMobile && (\n <a href=\"/\">\n <img src={logoOnMobileUrl} alt={logoOnMobileAlt} className={logoOnMobileModifier} />\n </a>\n )}\n\n <div className=\"menu--desktop-wrapper\">\n <ul className={isMobile ? childrenMobileModifier : childrenDesktopModifier}>\n {logoOnDesktop &&\n logoOnDesktopAlignment === 'left' && (\n <a href=\"/\" className=\"\">\n <img\n src={logoOnMobileUrl}\n alt={logoOnMobileAlt}\n className={logoOnDesktopModifier}\n />\n </a>\n )}\n {searchInputAlignment === 'left' && (\n <li>\n <SearchContent\n searchInputWrapperMobile={searchInputWrapperMobile}\n searchInputWrapperDesktop={searchInputWrapperDesktop}\n searchInputAlignment={searchInputAlignment}\n entity={entity}\n isMobile={isMobile}\n />\n </li>\n )}\n {children}\n {searchInputAlignment === 'right' && (\n <li>\n <SearchContent\n searchInputWrapperMobile={searchInputWrapperMobile}\n searchInputWrapperDesktop={searchInputWrapperDesktop}\n searchInputAlignment={searchInputAlignment}\n entity={entity}\n isMobile={isMobile}\n />\n </li>\n )}\n {logoOnDesktop &&\n logoOnDesktopAlignment === 'right' && (\n <a href=\"/\" className=\"\">\n <img\n src={logoOnMobileUrl}\n alt={logoOnMobileAlt}\n className={logoOnDesktopModifier}\n />\n </a>\n )}\n </ul>\n </div>\n </>\n );\n};\n\nMenu.propTypes = {\n collapse: PropTypes.bool.isRequired,\n logoOnMobile: PropTypes.bool.isRequired,\n logoOnDesktop: PropTypes.bool.isRequired,\n logoOnMobileUrl: PropTypes.string,\n logoOnMobileAlt: PropTypes.string,\n logoOnMobileModifier: PropTypes.string,\n logoOnDesktopModifier: PropTypes.string,\n logoOnDesktopAlignment: PropTypes.string,\n hamburgerIconModifier: PropTypes.string,\n closeIconModifier: PropTypes.string,\n mobileButtonModifier: PropTypes.string,\n mobileMenuModifier: PropTypes.string,\n mobileMenuChildrenModifier: PropTypes.string,\n modifier: PropTypes.string,\n mobileIconAlignment: PropTypes.string,\n entity: PropTypes.string,\n searchInputAlignment: PropTypes.string,\n searchInputWrapperMobile: PropTypes.string,\n searchInputWrapperDesktop: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nMenu.defaultProps = {\n logoOnMobileUrl: '',\n logoOnMobileAlt: '',\n logoOnMobileModifier: '',\n logoOnDesktopModifier: '',\n hamburgerIconModifier: '',\n closeIconModifier: '',\n mobileButtonModifier: '',\n mobileIconAlignment: '',\n mobileMenuModifier: '',\n mobileMenuChildrenModifier: '',\n logoOnDesktopAlignment: 'left',\n searchInputAlignment: 'right',\n searchInputWrapperMobile: '',\n searchInputWrapperDesktop: '',\n modifier: '',\n entity: 'PublishedPage',\n children: []\n};\n\nexport default Menu;\n"],"file":"Menu.js"}
1
+ {"version":3,"sources":["../../../src/components/Menu/Menu.js"],"names":["React","useState","PropTypes","BlazeButton","MdMenu","MdClose","useCheckMobileScreen","HIDDEN","SearchContent","Menu","children","collapse","modifier","mobileMenuModifier","mobileMenuChildrenModifier","mobileIconAlignment","mobileButtonModifier","hamburgerIconModifier","searchInputAlignment","searchInputWrapperMobile","searchInputWrapperDesktop","logoOnMobile","logoOnDesktop","logoOnMobileUrl","logoOnMobileAlt","logoOnMobileModifier","logoOnDesktopModifier","logoOnDesktopAlignment","closeIconModifier","entity","rest","isMobile","showMobileMenu","setShowMobileMenu","shouldDisplayCollapsed","mobileButtonClass","shouldDisplayChildren","childrenDesktopModifier","childrenMobileModifier","isMobileMenuExpanded","propTypes","bool","isRequired","string","oneOfType","arrayOf","node","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeButton from '@blaze-react/button';\nimport { MdMenu, MdClose } from 'react-icons/md';\nimport { useCheckMobileScreen } from '../../hooks';\nimport { HIDDEN } from '../../constants';\nimport SearchContent from '../SearchContent';\n\nconst Menu = ({\n children,\n collapse,\n modifier,\n mobileMenuModifier,\n mobileMenuChildrenModifier,\n mobileIconAlignment,\n mobileButtonModifier,\n hamburgerIconModifier,\n searchInputAlignment,\n searchInputWrapperMobile,\n searchInputWrapperDesktop,\n logoOnMobile,\n logoOnDesktop,\n logoOnMobileUrl,\n logoOnMobileAlt,\n logoOnMobileModifier,\n logoOnDesktopModifier,\n logoOnDesktopAlignment,\n closeIconModifier,\n entity,\n ...rest\n}) => {\n const isMobile = useCheckMobileScreen();\n const [showMobileMenu, setShowMobileMenu] = useState(false);\n\n const shouldDisplayCollapsed = collapse && isMobile;\n const mobileButtonClass = shouldDisplayCollapsed && isMobile ? mobileButtonModifier : HIDDEN;\n const shouldDisplayChildren = shouldDisplayCollapsed ? showMobileMenu : true;\n const childrenDesktopModifier =\n shouldDisplayChildren && !isMobile ? modifier : `${modifier} ${HIDDEN}`;\n\n const childrenMobileModifier =\n shouldDisplayChildren && isMobile ? `${mobileMenuChildrenModifier}` : ` ${HIDDEN}`;\n\n const isMobileMenuExpanded = showMobileMenu ? `${mobileMenuModifier}` : '';\n\n return (\n <>\n {collapse && (\n <div className=\"menu--mobile-wrapper\">\n <div\n className={`flex w-screen z-50 justify-${mobileIconAlignment} ${isMobileMenuExpanded}`}>\n <BlazeButton\n className={mobileButtonClass}\n onClick={() => setShowMobileMenu(!showMobileMenu)}>\n <i>\n {showMobileMenu ? (\n <MdClose className={closeIconModifier} />\n ) : (\n <MdMenu className={hamburgerIconModifier} />\n )}\n </i>\n </BlazeButton>\n </div>\n </div>\n )}\n {logoOnMobile && (\n <a href=\"/\">\n <img src={logoOnMobileUrl} alt={logoOnMobileAlt} className={logoOnMobileModifier} />\n </a>\n )}\n\n <div className=\"menu--desktop-wrapper\">\n <ul className={isMobile ? childrenMobileModifier : childrenDesktopModifier}>\n {logoOnDesktop &&\n logoOnDesktopAlignment === 'left' && (\n <a href=\"/\" className=\"menu--desktop__logo-wrapper\">\n <img\n src={logoOnMobileUrl}\n alt={logoOnMobileAlt}\n className={logoOnDesktopModifier}\n />\n </a>\n )}\n {searchInputAlignment === 'left' && (\n <li>\n <SearchContent\n searchInputWrapperMobile={searchInputWrapperMobile}\n searchInputWrapperDesktop={searchInputWrapperDesktop}\n searchInputAlignment={searchInputAlignment}\n entity={entity}\n isMobile={isMobile}\n />\n </li>\n )}\n {children}\n {searchInputAlignment === 'right' && (\n <li>\n <SearchContent\n searchInputWrapperMobile={searchInputWrapperMobile}\n searchInputWrapperDesktop={searchInputWrapperDesktop}\n searchInputAlignment={searchInputAlignment}\n entity={entity}\n isMobile={isMobile}\n />\n </li>\n )}\n {logoOnDesktop &&\n logoOnDesktopAlignment === 'right' && (\n <a href=\"/\" className=\"menu--desktop__logo-wrapper\">\n <img\n src={logoOnMobileUrl}\n alt={logoOnMobileAlt}\n className={logoOnDesktopModifier}\n />\n </a>\n )}\n </ul>\n </div>\n </>\n );\n};\n\nMenu.propTypes = {\n collapse: PropTypes.bool.isRequired,\n logoOnMobile: PropTypes.bool.isRequired,\n logoOnDesktop: PropTypes.bool,\n logoOnMobileUrl: PropTypes.string,\n logoOnMobileAlt: PropTypes.string,\n logoOnMobileModifier: PropTypes.string,\n logoOnDesktopModifier: PropTypes.string,\n logoOnDesktopAlignment: PropTypes.string,\n hamburgerIconModifier: PropTypes.string,\n closeIconModifier: PropTypes.string,\n mobileButtonModifier: PropTypes.string,\n mobileMenuModifier: PropTypes.string,\n mobileMenuChildrenModifier: PropTypes.string,\n modifier: PropTypes.string,\n mobileIconAlignment: PropTypes.string,\n entity: PropTypes.string,\n searchInputAlignment: PropTypes.string,\n searchInputWrapperMobile: PropTypes.string,\n searchInputWrapperDesktop: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nMenu.defaultProps = {\n logoOnDesktop: false,\n logoOnMobileUrl: '',\n logoOnMobileAlt: '',\n logoOnMobileModifier: '',\n logoOnDesktopModifier: '',\n hamburgerIconModifier: '',\n closeIconModifier: '',\n mobileButtonModifier: '',\n mobileIconAlignment: '',\n mobileMenuModifier: '',\n mobileMenuChildrenModifier: '',\n logoOnDesktopAlignment: 'left',\n searchInputAlignment: 'right',\n searchInputWrapperMobile: '',\n searchInputWrapperDesktop: '',\n modifier: '',\n entity: 'PublishedPage',\n children: []\n};\n\nexport default Menu;\n"],"file":"Menu.js"}
@@ -7,6 +7,7 @@ import BlazeLink from '../BlazeLink';
7
7
 
8
8
  const SearchContent = ({
9
9
  entity,
10
+ searchInputAlignment,
10
11
  searchInputWrapperMobile,
11
12
  searchInputWrapperDesktop,
12
13
  isMobile
@@ -50,13 +51,19 @@ const SearchContent = ({
50
51
  }
51
52
  });
52
53
  if (loading) return null;
53
- if (error) return `Error! ${error}`;
54
+ if (error) return null;
54
55
 
55
56
  const handleClick = (e, url) => {
56
57
  e.preventDefault();
57
58
  router.push(url);
58
59
  };
59
60
 
61
+ const handleKeyPress = e => {
62
+ if (e.key === 'Enter' && e.target.value !== '') {
63
+ router.push(`/search?search_term=${e.target.value}`);
64
+ }
65
+ };
66
+
60
67
  const renderResults = () => {
61
68
  // eslint-disable-next-line no-undef
62
69
  const {
@@ -68,7 +75,7 @@ const SearchContent = ({
68
75
  name,
69
76
  url
70
77
  }) => {
71
- if (name.match(searchTerm)) {
78
+ if (name.includes(searchTerm)) {
72
79
  return /*#__PURE__*/React.createElement(BlazeLink, {
73
80
  href: url,
74
81
  onClick: e => handleClick(e, url)
@@ -86,65 +93,65 @@ const SearchContent = ({
86
93
  return collapsed ? /*#__PURE__*/React.createElement("div", {
87
94
  className: isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop
88
95
  }, /*#__PURE__*/React.createElement("div", {
89
- className: "w-11 mx-auto"
96
+ className: "search-content--collapse__wrapper"
90
97
  }, /*#__PURE__*/React.createElement("label", {
91
- className: "relative block"
98
+ className: "search-content--collapse__label"
92
99
  }, /*#__PURE__*/React.createElement("span", {
93
- className: "absolute inset-y-0 right-3 flex items-center pl-2 cursor-pointer"
100
+ className: "search-content--collapse__icon_wrapper"
94
101
  }, /*#__PURE__*/React.createElement("svg", {
95
- className: "h-5 w-5 fill-slate-300",
102
+ className: "search-content--collapse__icon",
96
103
  viewBox: "0 0 20 20"
97
104
  }, /*#__PURE__*/React.createElement("path", {
98
105
  fillRule: "evenodd",
99
106
  d: "M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z",
100
107
  clipRule: "evenodd"
101
- }))), /*#__PURE__*/React.createElement("span", {
102
- className: "sr-only"
103
- }, "Search"), /*#__PURE__*/React.createElement("input", {
108
+ }))), /*#__PURE__*/React.createElement("input", {
104
109
  onFocus: () => setCollapsed(false),
105
110
  onChange: e => setSearchTerm(e.target.value),
106
111
  type: "text",
107
112
  name: "search",
108
113
  value: "",
109
- className: "disabled:bg-white block bg-white w-full rounded-none border-white py-2 pl-5 pr-3 placeholder:italic placeholder:text-gray-400 focus:outline-none sm:text-sm"
114
+ className: "search-content--collapse__input"
110
115
  })))) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
111
116
  className: `${isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}`
112
117
  }, /*#__PURE__*/React.createElement("div", {
113
- className: "w-96 mx-auto rounded-3xl"
118
+ className: "search-content--expanded__wrapper"
114
119
  }, /*#__PURE__*/React.createElement("label", {
115
- className: "relative block"
120
+ className: "search-content--expanded__label"
116
121
  }, /*#__PURE__*/React.createElement("span", {
117
- className: "absolute inset-y-0 right-3 flex items-center pl-2"
122
+ className: "search-content--expanded__icon_wrapper"
118
123
  }, /*#__PURE__*/React.createElement("svg", {
119
- className: "h-5 w-5 fill-slate-300",
124
+ className: "search-content--expanded__icon",
120
125
  viewBox: "0 0 20 20"
121
126
  }, /*#__PURE__*/React.createElement("path", {
122
127
  fillRule: "evenodd",
123
128
  d: "M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z",
124
129
  clipRule: "evenodd"
125
- }))), /*#__PURE__*/React.createElement("span", {
126
- className: "sr-only"
127
- }, "Search"), /*#__PURE__*/React.createElement("input", {
130
+ }))), /*#__PURE__*/React.createElement("input", {
128
131
  type: "text",
129
132
  name: "search",
130
133
  onChange: e => setSearchTerm(e.target.value),
131
- className: "block w-full rounded-full rounded-white py-2 pl-3 pr-3 placeholder:italic placeholder:text-slate-400 focus:outline-none sm:text-sm",
134
+ onKeyPress: handleKeyPress,
135
+ className: "search-content--expanded__input",
132
136
  placeholder: "Search for anything...",
133
137
  onBlur: () => {
134
138
  if (!searchTerm || searchTerm === '') setCollapsed(true);
135
139
  }
136
140
  }))), data && searchResultsMessage !== '' && /*#__PURE__*/React.createElement("div", {
137
- className: "bg-white ml-1 mr-1 rounded rounded-lg relative top-0 flex flex-col z-50 border-2 border-gray-50"
141
+ className: "search-content--results__wrapper"
142
+ }, /*#__PURE__*/React.createElement("div", {
143
+ className: "search-content--results__wrapper--message"
138
144
  }, /*#__PURE__*/React.createElement("div", {
139
145
  className: "text-sm pt-2"
140
146
  }, searchResultsMessage), /*#__PURE__*/React.createElement("div", {
141
- className: "text-left px-4 py-2"
147
+ className: "search-content--results__message"
142
148
  }, /*#__PURE__*/React.createElement("div", {
143
- className: "text-bold"
144
- }, renderResults())))));
149
+ className: "search-content--results__content"
150
+ }, renderResults()))))));
145
151
  };
146
152
 
147
153
  SearchContent.propTypes = {
154
+ searchInputAlignment: PropTypes.string,
148
155
  searchInputWrapperMobile: PropTypes.string,
149
156
  searchInputWrapperDesktop: PropTypes.string,
150
157
  isMobile: PropTypes.bool,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/SearchContent/index.js"],"names":["React","useState","PropTypes","gql","useQuery","useRouter","getPublishedContent","BlazeLink","SearchContent","entity","searchInputWrapperMobile","searchInputWrapperDesktop","isMobile","collapsed","setCollapsed","searchTerm","setSearchTerm","router","capitalize","s","charAt","toUpperCase","slice","a","b","split","entityName","rawQueryStringified","JSON","stringify","size","query","bool","should","match","docType","minimum_should_match","loading","error","data","variables","offset","limit","handleClick","e","url","preventDefault","push","renderResults","results","searchPublishedContent","map","name","searchResultsMessage","target","value","propTypes","string","isRequired","defaultProps","searchInputAlignment"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { gql, useQuery } from '@apollo/client';\nimport { useRouter } from 'next/router';\nimport { getPublishedContent } from '../../application/query';\nimport BlazeLink from '../BlazeLink';\n\nconst SearchContent = ({\n entity,\n searchInputWrapperMobile,\n searchInputWrapperDesktop,\n isMobile\n}) => {\n const [collapsed, setCollapsed] = useState(true);\n const [searchTerm, setSearchTerm] = useState(null);\n const router = useRouter();\n\n const capitalize = s => {\n if (typeof s !== 'string') return '';\n return s.charAt(0).toUpperCase() + s.slice(1);\n };\n\n const [a, b] = entity.split('_');\n\n const entityName = capitalize(a) + capitalize(b);\n\n const rawQueryStringified = JSON.stringify({\n size: 0,\n query: {\n bool: {\n should: [\n {\n match: {\n docType: entity\n }\n }\n ],\n minimum_should_match: 1\n }\n }\n });\n\n const query = gql`\n ${getPublishedContent(entityName)}\n `;\n\n const { loading, error, data } = useQuery(query, {\n variables: { rawQueryStringified, offset: 0, limit: 5 }\n });\n\n if (loading) return null;\n if (error) return `Error! ${error}`;\n\n const handleClick = (e, url) => {\n e.preventDefault();\n router.push(url);\n };\n\n const renderResults = () => {\n // eslint-disable-next-line no-undef\n const { results } = data?.searchPublishedContent;\n\n if (results && searchTerm && searchTerm !== '') {\n return results.map(({ name, url }) => {\n if (name.match(searchTerm)) {\n return (\n <BlazeLink href={url} onClick={e => handleClick(e, url)}>\n {name}\n </BlazeLink>\n );\n }\n\n return null;\n });\n }\n\n return [];\n };\n\n const searchResultsMessage = searchTerm ? `Search results for: ${searchTerm}` : '';\n\n return collapsed ? (\n <div className={isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}>\n <div className=\"w-11 mx-auto\">\n <label className=\"relative block\">\n <span className=\"absolute inset-y-0 right-3 flex items-center pl-2 cursor-pointer\">\n <svg className=\"h-5 w-5 fill-slate-300\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <span className=\"sr-only\">Search</span>\n <input\n onFocus={() => setCollapsed(false)}\n onChange={e => setSearchTerm(e.target.value)}\n type=\"text\"\n name=\"search\"\n value=\"\"\n className=\"disabled:bg-white block bg-white w-full rounded-none border-white py-2 pl-5 pr-3 placeholder:italic placeholder:text-gray-400 focus:outline-none sm:text-sm\"\n />\n </label>\n </div>\n </div>\n ) : (\n <>\n <div className={`${isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}`}>\n <div className=\"w-96 mx-auto rounded-3xl\">\n <label className=\"relative block\">\n <span className=\"absolute inset-y-0 right-3 flex items-center pl-2\">\n <svg className=\"h-5 w-5 fill-slate-300\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <span className=\"sr-only\">Search</span>\n <input\n type=\"text\"\n name=\"search\"\n onChange={e => setSearchTerm(e.target.value)}\n className=\"block w-full rounded-full rounded-white py-2 pl-3 pr-3 placeholder:italic placeholder:text-slate-400 focus:outline-none sm:text-sm\"\n placeholder=\"Search for anything...\"\n onBlur={() => {\n if (!searchTerm || searchTerm === '') setCollapsed(true);\n }}\n />\n </label>\n </div>\n {data &&\n searchResultsMessage !== '' && (\n <div className=\"bg-white ml-1 mr-1 rounded rounded-lg relative top-0 flex flex-col z-50 border-2 border-gray-50\">\n <div className=\"text-sm pt-2\">{searchResultsMessage}</div>\n\n <div className=\"text-left px-4 py-2\">\n <div className=\"text-bold\">{renderResults()}</div>\n </div>\n </div>\n )}\n </div>\n </>\n );\n};\n\nSearchContent.propTypes = {\n searchInputWrapperMobile: PropTypes.string,\n searchInputWrapperDesktop: PropTypes.string,\n isMobile: PropTypes.bool,\n entity: PropTypes.string.isRequired\n};\n\nSearchContent.defaultProps = {\n searchInputAlignment: '',\n searchInputWrapperMobile: '',\n searchInputWrapperDesktop: '',\n isMobile: false\n};\n\nexport default SearchContent;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/components/SearchContent/index.js"],"names":["React","useState","PropTypes","gql","useQuery","useRouter","getPublishedContent","BlazeLink","SearchContent","entity","searchInputAlignment","searchInputWrapperMobile","searchInputWrapperDesktop","isMobile","collapsed","setCollapsed","searchTerm","setSearchTerm","router","capitalize","s","charAt","toUpperCase","slice","a","b","split","entityName","rawQueryStringified","JSON","stringify","size","query","bool","should","match","docType","minimum_should_match","loading","error","data","variables","offset","limit","handleClick","e","url","preventDefault","push","handleKeyPress","key","target","value","renderResults","results","searchPublishedContent","map","name","includes","searchResultsMessage","propTypes","string","isRequired","defaultProps"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,GAAT,EAAcC,QAAd,QAA8B,gBAA9B;AACA,SAASC,SAAT,QAA0B,aAA1B;AACA,SAASC,mBAAT,QAAoC,yBAApC;AACA,OAAOC,SAAP,MAAsB,cAAtB;;AAEA,MAAMC,aAAa,GAAG,CAAC;AACrBC,EAAAA,MADqB;AAErBC,EAAAA,oBAFqB;AAGrBC,EAAAA,wBAHqB;AAIrBC,EAAAA,yBAJqB;AAKrBC,EAAAA;AALqB,CAAD,KAMhB;AACJ,QAAM,CAACC,SAAD,EAAYC,YAAZ,IAA4Bd,QAAQ,CAAC,IAAD,CAA1C;AACA,QAAM,CAACe,UAAD,EAAaC,aAAb,IAA8BhB,QAAQ,CAAC,IAAD,CAA5C;AACA,QAAMiB,MAAM,GAAGb,SAAS,EAAxB;;AAEA,QAAMc,UAAU,GAAGC,CAAC,IAAI;AACtB,QAAI,OAAOA,CAAP,KAAa,QAAjB,EAA2B,OAAO,EAAP;AAC3B,WAAOA,CAAC,CAACC,MAAF,CAAS,CAAT,EAAYC,WAAZ,KAA4BF,CAAC,CAACG,KAAF,CAAQ,CAAR,CAAnC;AACD,GAHD;;AAKA,QAAM,CAACC,CAAD,EAAIC,CAAJ,IAAShB,MAAM,CAACiB,KAAP,CAAa,GAAb,CAAf;AAEA,QAAMC,UAAU,GAAGR,UAAU,CAACK,CAAD,CAAV,GAAgBL,UAAU,CAACM,CAAD,CAA7C;AAEA,QAAMG,mBAAmB,GAAGC,IAAI,CAACC,SAAL,CAAe;AACzCC,IAAAA,IAAI,EAAE,CADmC;AAEzCC,IAAAA,KAAK,EAAE;AACLC,MAAAA,IAAI,EAAE;AACJC,QAAAA,MAAM,EAAE,CACN;AACEC,UAAAA,KAAK,EAAE;AACLC,YAAAA,OAAO,EAAE3B;AADJ;AADT,SADM,CADJ;AAQJ4B,QAAAA,oBAAoB,EAAE;AARlB;AADD;AAFkC,GAAf,CAA5B;AAgBA,QAAML,KAAK,GAAG7B,GAAI;AACpB,MAAMG,mBAAmB,CAACqB,UAAD,CAAa;AACtC,GAFE;AAIA,QAAM;AAAEW,IAAAA,OAAF;AAAWC,IAAAA,KAAX;AAAkBC,IAAAA;AAAlB,MAA2BpC,QAAQ,CAAC4B,KAAD,EAAQ;AAC/CS,IAAAA,SAAS,EAAE;AAAEb,MAAAA,mBAAF;AAAuBc,MAAAA,MAAM,EAAE,CAA/B;AAAkCC,MAAAA,KAAK,EAAE;AAAzC;AADoC,GAAR,CAAzC;AAIA,MAAIL,OAAJ,EAAa,OAAO,IAAP;AACb,MAAIC,KAAJ,EAAW,OAAO,IAAP;;AAEX,QAAMK,WAAW,GAAG,CAACC,CAAD,EAAIC,GAAJ,KAAY;AAC9BD,IAAAA,CAAC,CAACE,cAAF;AACA7B,IAAAA,MAAM,CAAC8B,IAAP,CAAYF,GAAZ;AACD,GAHD;;AAKA,QAAMG,cAAc,GAAGJ,CAAC,IAAI;AAC1B,QAAIA,CAAC,CAACK,GAAF,KAAU,OAAV,IAAqBL,CAAC,CAACM,MAAF,CAASC,KAAT,KAAmB,EAA5C,EAAgD;AAC9ClC,MAAAA,MAAM,CAAC8B,IAAP,CAAa,uBAAsBH,CAAC,CAACM,MAAF,CAASC,KAAM,EAAlD;AACD;AACF,GAJD;;AAMA,QAAMC,aAAa,GAAG,MAAM;AAC1B;AACA,UAAM;AAAEC,MAAAA;AAAF,QAAcd,IAAd,aAAcA,IAAd,uBAAcA,IAAI,CAAEe,sBAA1B;;AAEA,QAAID,OAAO,IAAItC,UAAX,IAAyBA,UAAU,KAAK,EAA5C,EAAgD;AAC9C,aAAOsC,OAAO,CAACE,GAAR,CAAY,CAAC;AAAEC,QAAAA,IAAF;AAAQX,QAAAA;AAAR,OAAD,KAAmB;AACpC,YAAIW,IAAI,CAACC,QAAL,CAAc1C,UAAd,CAAJ,EAA+B;AAC7B,8BACE,oBAAC,SAAD;AAAW,YAAA,IAAI,EAAE8B,GAAjB;AAAsB,YAAA,OAAO,EAAED,CAAC,IAAID,WAAW,CAACC,CAAD,EAAIC,GAAJ;AAA/C,aACGW,IADH,CADF;AAKD;;AAED,eAAO,IAAP;AACD,OAVM,CAAP;AAWD;;AAED,WAAO,EAAP;AACD,GAnBD;;AAqBA,QAAME,oBAAoB,GAAG3C,UAAU,GAAI,uBAAsBA,UAAW,EAArC,GAAyC,EAAhF;AAEA,SAAOF,SAAS,gBACd;AAAK,IAAA,SAAS,EAAED,QAAQ,GAAGF,wBAAH,GAA8BC;AAAtD,kBACE;AAAK,IAAA,SAAS,EAAC;AAAf,kBACE;AAAO,IAAA,SAAS,EAAC;AAAjB,kBACE;AAAM,IAAA,SAAS,EAAC;AAAhB,kBACE;AAAK,IAAA,SAAS,EAAC,gCAAf;AAAgD,IAAA,OAAO,EAAC;AAAxD,kBACE;AACE,IAAA,QAAQ,EAAC,SADX;AAEE,IAAA,CAAC,EAAC,kHAFJ;AAGE,IAAA,QAAQ,EAAC;AAHX,IADF,CADF,CADF,eAUE;AACE,IAAA,OAAO,EAAE,MAAMG,YAAY,CAAC,KAAD,CAD7B;AAEE,IAAA,QAAQ,EAAE8B,CAAC,IAAI5B,aAAa,CAAC4B,CAAC,CAACM,MAAF,CAASC,KAAV,CAF9B;AAGE,IAAA,IAAI,EAAC,MAHP;AAIE,IAAA,IAAI,EAAC,QAJP;AAKE,IAAA,KAAK,EAAC,EALR;AAME,IAAA,SAAS,EAAC;AANZ,IAVF,CADF,CADF,CADc,gBAyBd,uDACE;AAAK,IAAA,SAAS,EAAG,GAAEvC,QAAQ,GAAGF,wBAAH,GAA8BC,yBAA0B;AAAnF,kBACE;AAAK,IAAA,SAAS,EAAC;AAAf,kBACE;AAAO,IAAA,SAAS,EAAC;AAAjB,kBACE;AAAM,IAAA,SAAS,EAAC;AAAhB,kBACE;AAAK,IAAA,SAAS,EAAC,gCAAf;AAAgD,IAAA,OAAO,EAAC;AAAxD,kBACE;AACE,IAAA,QAAQ,EAAC,SADX;AAEE,IAAA,CAAC,EAAC,kHAFJ;AAGE,IAAA,QAAQ,EAAC;AAHX,IADF,CADF,CADF,eAUE;AACE,IAAA,IAAI,EAAC,MADP;AAEE,IAAA,IAAI,EAAC,QAFP;AAGE,IAAA,QAAQ,EAAEiC,CAAC,IAAI5B,aAAa,CAAC4B,CAAC,CAACM,MAAF,CAASC,KAAV,CAH9B;AAIE,IAAA,UAAU,EAAEH,cAJd;AAKE,IAAA,SAAS,EAAC,iCALZ;AAME,IAAA,WAAW,EAAC,wBANd;AAOE,IAAA,MAAM,EAAE,MAAM;AACZ,UAAI,CAACjC,UAAD,IAAeA,UAAU,KAAK,EAAlC,EAAsCD,YAAY,CAAC,IAAD,CAAZ;AACvC;AATH,IAVF,CADF,CADF,EAyBGyB,IAAI,IACHmB,oBAAoB,KAAK,EAD1B,iBAEG;AAAK,IAAA,SAAS,EAAC;AAAf,kBACE;AAAK,IAAA,SAAS,EAAC;AAAf,kBACE;AAAK,IAAA,SAAS,EAAC;AAAf,KAA+BA,oBAA/B,CADF,eAGE;AAAK,IAAA,SAAS,EAAC;AAAf,kBACE;AAAK,IAAA,SAAS,EAAC;AAAf,KAAmDN,aAAa,EAAhE,CADF,CAHF,CADF,CA3BN,CADF,CAzBF;AAkED,CAnJD;;AAqJA7C,aAAa,CAACoD,SAAd,GAA0B;AACxBlD,EAAAA,oBAAoB,EAAER,SAAS,CAAC2D,MADR;AAExBlD,EAAAA,wBAAwB,EAAET,SAAS,CAAC2D,MAFZ;AAGxBjD,EAAAA,yBAAyB,EAAEV,SAAS,CAAC2D,MAHb;AAIxBhD,EAAAA,QAAQ,EAAEX,SAAS,CAAC+B,IAJI;AAKxBxB,EAAAA,MAAM,EAAEP,SAAS,CAAC2D,MAAV,CAAiBC;AALD,CAA1B;AAQAtD,aAAa,CAACuD,YAAd,GAA6B;AAC3BrD,EAAAA,oBAAoB,EAAE,EADK;AAE3BC,EAAAA,wBAAwB,EAAE,EAFC;AAG3BC,EAAAA,yBAAyB,EAAE,EAHA;AAI3BC,EAAAA,QAAQ,EAAE;AAJiB,CAA7B;AAOA,eAAeL,aAAf","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { gql, useQuery } from '@apollo/client';\nimport { useRouter } from 'next/router';\nimport { getPublishedContent } from '../../application/query';\nimport BlazeLink from '../BlazeLink';\n\nconst SearchContent = ({\n entity,\n searchInputAlignment,\n searchInputWrapperMobile,\n searchInputWrapperDesktop,\n isMobile\n}) => {\n const [collapsed, setCollapsed] = useState(true);\n const [searchTerm, setSearchTerm] = useState(null);\n const router = useRouter();\n\n const capitalize = s => {\n if (typeof s !== 'string') return '';\n return s.charAt(0).toUpperCase() + s.slice(1);\n };\n\n const [a, b] = entity.split('_');\n\n const entityName = capitalize(a) + capitalize(b);\n\n const rawQueryStringified = JSON.stringify({\n size: 0,\n query: {\n bool: {\n should: [\n {\n match: {\n docType: entity\n }\n }\n ],\n minimum_should_match: 1\n }\n }\n });\n\n const query = gql`\n ${getPublishedContent(entityName)}\n `;\n\n const { loading, error, data } = useQuery(query, {\n variables: { rawQueryStringified, offset: 0, limit: 5 }\n });\n\n if (loading) return null;\n if (error) return null;\n\n const handleClick = (e, url) => {\n e.preventDefault();\n router.push(url);\n };\n\n const handleKeyPress = e => {\n if (e.key === 'Enter' && e.target.value !== '') {\n router.push(`/search?search_term=${e.target.value}`);\n }\n };\n\n const renderResults = () => {\n // eslint-disable-next-line no-undef\n const { results } = data?.searchPublishedContent;\n\n if (results && searchTerm && searchTerm !== '') {\n return results.map(({ name, url }) => {\n if (name.includes(searchTerm)) {\n return (\n <BlazeLink href={url} onClick={e => handleClick(e, url)}>\n {name}\n </BlazeLink>\n );\n }\n\n return null;\n });\n }\n\n return [];\n };\n\n const searchResultsMessage = searchTerm ? `Search results for: ${searchTerm}` : '';\n\n return collapsed ? (\n <div className={isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}>\n <div className=\"search-content--collapse__wrapper\">\n <label className=\"search-content--collapse__label\">\n <span className=\"search-content--collapse__icon_wrapper\">\n <svg className=\"search-content--collapse__icon\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <input\n onFocus={() => setCollapsed(false)}\n onChange={e => setSearchTerm(e.target.value)}\n type=\"text\"\n name=\"search\"\n value=\"\"\n className=\"search-content--collapse__input\"\n />\n </label>\n </div>\n </div>\n ) : (\n <>\n <div className={`${isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}`}>\n <div className=\"search-content--expanded__wrapper\">\n <label className=\"search-content--expanded__label\">\n <span className=\"search-content--expanded__icon_wrapper\">\n <svg className=\"search-content--expanded__icon\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <input\n type=\"text\"\n name=\"search\"\n onChange={e => setSearchTerm(e.target.value)}\n onKeyPress={handleKeyPress}\n className=\"search-content--expanded__input\"\n placeholder=\"Search for anything...\"\n onBlur={() => {\n if (!searchTerm || searchTerm === '') setCollapsed(true);\n }}\n />\n </label>\n </div>\n {data &&\n searchResultsMessage !== '' && (\n <div className=\"search-content--results__wrapper\">\n <div className=\"search-content--results__wrapper--message\">\n <div className=\"text-sm pt-2\">{searchResultsMessage}</div>\n\n <div className=\"search-content--results__message\">\n <div className=\"search-content--results__content\">{renderResults()}</div>\n </div>\n </div>\n </div>\n )}\n </div>\n </>\n );\n};\n\nSearchContent.propTypes = {\n searchInputAlignment: PropTypes.string,\n searchInputWrapperMobile: PropTypes.string,\n searchInputWrapperDesktop: PropTypes.string,\n isMobile: PropTypes.bool,\n entity: PropTypes.string.isRequired\n};\n\nSearchContent.defaultProps = {\n searchInputAlignment: '',\n searchInputWrapperMobile: '',\n searchInputWrapperDesktop: '',\n isMobile: false\n};\n\nexport default SearchContent;\n"],"file":"index.js"}
@@ -1,3 +1,6 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ const _excluded = ["type", "label", "propsToDisplay", "elementTitle"];
1
4
  import React, { useContext } from 'react';
2
5
  import PropTypes from 'prop-types';
3
6
  import { MainContext } from '@blaze-cms/nextjs-components';
@@ -16,13 +19,15 @@ const FiltersList = ({
16
19
  const {
17
20
  itemId
18
21
  } = useContext(MainContext);
19
- return filters.map(({
20
- type,
21
- label,
22
- propsToDisplay,
23
- rangeInterval,
24
- elementTitle
25
- }, index) => {
22
+ return filters.map((_ref, index) => {
23
+ let {
24
+ type,
25
+ label,
26
+ propsToDisplay,
27
+ elementTitle
28
+ } = _ref,
29
+ otherProps = _objectWithoutProperties(_ref, _excluded);
30
+
26
31
  if (!propsToDisplay && !propsToDisplay.length) return null;
27
32
  const dynamicKey = [itemId, index].join('-');
28
33
  const isDataAvailable = !!data && Object.keys(data).length;
@@ -36,19 +41,19 @@ const FiltersList = ({
36
41
  return /*#__PURE__*/React.createElement("div", {
37
42
  key: dynamicKey,
38
43
  className: "filter__section filter__section--search-refine filter__section--search"
39
- }, /*#__PURE__*/React.createElement(TextSearch, {
44
+ }, /*#__PURE__*/React.createElement(TextSearch, _extends({}, otherProps, {
40
45
  label: label,
41
46
  elementTitle: elementTitle,
42
47
  searchValue: filterValues[SEARCH_TERM],
43
48
  updateFilterValues: updateFilterValues,
44
49
  filterValues: filterValues
45
- }));
50
+ })));
46
51
 
47
52
  case CHECKBOX:
48
53
  return !!shouldDisplayFilter && /*#__PURE__*/React.createElement("div", {
49
54
  key: dynamicKey,
50
55
  className: "filter__section filter__section--search-refine filter__section--checkboxes"
51
- }, /*#__PURE__*/React.createElement(Checkbox, {
56
+ }, /*#__PURE__*/React.createElement(Checkbox, _extends({}, otherProps, {
52
57
  data: data,
53
58
  prop: propsToDisplay[0],
54
59
  label: label,
@@ -57,13 +62,13 @@ const FiltersList = ({
57
62
  filterValues: filterValues,
58
63
  updateFilterValues: updateFilterValues,
59
64
  shouldSearch: shouldSearch
60
- }));
65
+ })));
61
66
 
62
67
  case SELECT:
63
68
  return !!shouldDisplayFilter && /*#__PURE__*/React.createElement("div", {
64
69
  key: dynamicKey,
65
70
  className: "filter__section filter__section--search-refine filter__section--selects"
66
- }, /*#__PURE__*/React.createElement(SelectFilter, {
71
+ }, /*#__PURE__*/React.createElement(SelectFilter, _extends({}, otherProps, {
67
72
  data: data,
68
73
  prop: propsToDisplay[0],
69
74
  label: label,
@@ -72,23 +77,22 @@ const FiltersList = ({
72
77
  filterValues: filterValues,
73
78
  updateFilterValues: updateFilterValues,
74
79
  shouldSearch: shouldSearch
75
- }));
80
+ })));
76
81
 
77
82
  case RANGE:
78
83
  return !!areAggregationsAvailable && /*#__PURE__*/React.createElement("div", {
79
84
  key: dynamicKey,
80
85
  className: "range-slider__wrapper"
81
- }, /*#__PURE__*/React.createElement(Range, {
86
+ }, /*#__PURE__*/React.createElement(Range, _extends({}, otherProps, {
82
87
  dataAggregations: dataAggregations,
83
88
  propsToDisplay: propsToDisplay,
84
- rangeInterval: rangeInterval,
85
89
  label: label,
86
90
  elementTitle: elementTitle,
87
91
  entity: entity,
88
92
  filterValues: filterValues,
89
93
  updateFilterValues: updateFilterValues,
90
94
  shouldSearch: shouldSearch
91
- }));
95
+ })));
92
96
 
93
97
  default:
94
98
  return null;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/SearchFilter/SearchFilter/FiltersList.js"],"names":["React","useContext","PropTypes","MainContext","TextSearch","Checkbox","SelectFilter","Range","CHECKBOX","SELECT","TEXT_SEARCH","RANGE","SEARCH_TERM","FiltersList","data","filters","hasUrl","entity","filterValues","updateFilterValues","shouldSearch","itemId","map","type","label","propsToDisplay","rangeInterval","elementTitle","index","length","dynamicKey","join","isDataAvailable","Object","keys","dataAggregations","areAggregationsAvailable","results","shouldDisplayFilter","buckets","propTypes","bool","isRequired","string","object","func","array","defaultProps"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { TextSearch, Checkbox, SelectFilter, Range } from '../components';\nimport { CHECKBOX, SELECT, TEXT_SEARCH, RANGE, SEARCH_TERM } from '../constants';\n\nconst FiltersList = ({\n data,\n filters,\n hasUrl,\n entity,\n filterValues,\n updateFilterValues,\n shouldSearch\n}) => {\n const { itemId } = useContext(MainContext);\n\n return filters.map(({ type, label, propsToDisplay, rangeInterval, elementTitle }, index) => {\n if (!propsToDisplay && !propsToDisplay.length) return null;\n\n const dynamicKey = [itemId, index].join('-');\n const isDataAvailable = !!data && Object.keys(data).length;\n const dataAggregations = isDataAvailable ? data : null;\n const areAggregationsAvailable = isDataAvailable && !!dataAggregations;\n const results = areAggregationsAvailable && dataAggregations[propsToDisplay[0]];\n const shouldDisplayFilter = results && results.buckets && results.buckets.length;\n\n switch (type) {\n case TEXT_SEARCH:\n return (\n <div\n key={dynamicKey}\n className=\"filter__section filter__section--search-refine filter__section--search\">\n <TextSearch\n label={label}\n elementTitle={elementTitle}\n searchValue={filterValues[SEARCH_TERM]}\n updateFilterValues={updateFilterValues}\n filterValues={filterValues}\n />\n </div>\n );\n case CHECKBOX:\n return (\n !!shouldDisplayFilter && (\n <div\n key={dynamicKey}\n className=\"filter__section filter__section--search-refine filter__section--checkboxes\">\n <Checkbox\n data={data}\n prop={propsToDisplay[0]}\n label={label}\n elementTitle={elementTitle}\n hasUrl={hasUrl}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n shouldSearch={shouldSearch}\n />\n </div>\n )\n );\n case SELECT:\n return (\n !!shouldDisplayFilter && (\n <div\n key={dynamicKey}\n className=\"filter__section filter__section--search-refine filter__section--selects\">\n <SelectFilter\n data={data}\n prop={propsToDisplay[0]}\n label={label}\n elementTitle={elementTitle}\n hasUrl={hasUrl}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n shouldSearch={shouldSearch}\n />\n </div>\n )\n );\n case RANGE:\n return (\n !!areAggregationsAvailable && (\n <div key={dynamicKey} className=\"range-slider__wrapper\">\n <Range\n dataAggregations={dataAggregations}\n propsToDisplay={propsToDisplay}\n rangeInterval={rangeInterval}\n label={label}\n elementTitle={elementTitle}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n shouldSearch={shouldSearch}\n />\n </div>\n )\n );\n default:\n return null;\n }\n });\n};\n\nFiltersList.propTypes = {\n hasUrl: PropTypes.bool.isRequired,\n entity: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n data: PropTypes.object,\n filters: PropTypes.array,\n shouldSearch: PropTypes.bool\n};\n\nFiltersList.defaultProps = {\n shouldSearch: false,\n data: {},\n filters: []\n};\n\nexport default FiltersList;\n"],"file":"FiltersList.js"}
1
+ {"version":3,"sources":["../../../../src/components/SearchFilter/SearchFilter/FiltersList.js"],"names":["React","useContext","PropTypes","MainContext","TextSearch","Checkbox","SelectFilter","Range","CHECKBOX","SELECT","TEXT_SEARCH","RANGE","SEARCH_TERM","FiltersList","data","filters","hasUrl","entity","filterValues","updateFilterValues","shouldSearch","itemId","map","index","type","label","propsToDisplay","elementTitle","otherProps","length","dynamicKey","join","isDataAvailable","Object","keys","dataAggregations","areAggregationsAvailable","results","shouldDisplayFilter","buckets","propTypes","bool","isRequired","string","object","func","array","defaultProps"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { TextSearch, Checkbox, SelectFilter, Range } from '../components';\nimport { CHECKBOX, SELECT, TEXT_SEARCH, RANGE, SEARCH_TERM } from '../constants';\n\nconst FiltersList = ({\n data,\n filters,\n hasUrl,\n entity,\n filterValues,\n updateFilterValues,\n shouldSearch\n}) => {\n const { itemId } = useContext(MainContext);\n\n return filters.map(({ type, label, propsToDisplay, elementTitle, ...otherProps }, index) => {\n if (!propsToDisplay && !propsToDisplay.length) return null;\n\n const dynamicKey = [itemId, index].join('-');\n const isDataAvailable = !!data && Object.keys(data).length;\n const dataAggregations = isDataAvailable ? data : null;\n const areAggregationsAvailable = isDataAvailable && !!dataAggregations;\n const results = areAggregationsAvailable && dataAggregations[propsToDisplay[0]];\n const shouldDisplayFilter = results && results.buckets && results.buckets.length;\n\n switch (type) {\n case TEXT_SEARCH:\n return (\n <div\n key={dynamicKey}\n className=\"filter__section filter__section--search-refine filter__section--search\">\n <TextSearch\n {...otherProps}\n label={label}\n elementTitle={elementTitle}\n searchValue={filterValues[SEARCH_TERM]}\n updateFilterValues={updateFilterValues}\n filterValues={filterValues}\n />\n </div>\n );\n case CHECKBOX:\n return (\n !!shouldDisplayFilter && (\n <div\n key={dynamicKey}\n className=\"filter__section filter__section--search-refine filter__section--checkboxes\">\n <Checkbox\n {...otherProps}\n data={data}\n prop={propsToDisplay[0]}\n label={label}\n elementTitle={elementTitle}\n hasUrl={hasUrl}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n shouldSearch={shouldSearch}\n />\n </div>\n )\n );\n case SELECT:\n return (\n !!shouldDisplayFilter && (\n <div\n key={dynamicKey}\n className=\"filter__section filter__section--search-refine filter__section--selects\">\n <SelectFilter\n {...otherProps}\n data={data}\n prop={propsToDisplay[0]}\n label={label}\n elementTitle={elementTitle}\n hasUrl={hasUrl}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n shouldSearch={shouldSearch}\n />\n </div>\n )\n );\n case RANGE:\n return (\n !!areAggregationsAvailable && (\n <div key={dynamicKey} className=\"range-slider__wrapper\">\n <Range\n {...otherProps}\n dataAggregations={dataAggregations}\n propsToDisplay={propsToDisplay}\n label={label}\n elementTitle={elementTitle}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n shouldSearch={shouldSearch}\n />\n </div>\n )\n );\n default:\n return null;\n }\n });\n};\n\nFiltersList.propTypes = {\n hasUrl: PropTypes.bool.isRequired,\n entity: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n data: PropTypes.object,\n filters: PropTypes.array,\n shouldSearch: PropTypes.bool\n};\n\nFiltersList.defaultProps = {\n shouldSearch: false,\n data: {},\n filters: []\n};\n\nexport default FiltersList;\n"],"file":"FiltersList.js"}
@@ -58,8 +58,6 @@ const SearchFilter = ({
58
58
  groupAfterDesktop,
59
59
  groupAfterMobile
60
60
  }) => {
61
- const [isDesktop, setIsDesktop] = useState(true);
62
- const [pageWidth, setPageWidth] = useState(null);
63
61
  const [moreFiltersMobileCollapsed, setMoreFiltersMobileCollapsed] = useState(true);
64
62
  const [moreFiltersDesktopCollapsed, setMoreFiltersDesktopCollapsed] = useState(true);
65
63
  const [filterValues, dispatch] = useReducer(reducer, initialFilterValues);
@@ -67,27 +65,6 @@ const SearchFilter = ({
67
65
  const newQuery = buildQuery(newValues, filters);
68
66
  handleSearch(newQuery);
69
67
  }, 200);
70
- useEffect(() => {
71
- if (window && !pageWidth) {
72
- setPageWidth(window.innerWidth);
73
- setIsDesktop(isDeviceDesktop());
74
- }
75
-
76
- const handleResize = ({
77
- target: {
78
- innerWidth
79
- }
80
- }) => {
81
- setIsDesktop(isDeviceDesktop());
82
- setPageWidth(innerWidth);
83
- if (isDesktop) setDisplaySearchFilter(false);
84
- };
85
-
86
- window.addEventListener('resize', handleResize);
87
- return () => {
88
- window.removeEventListener('resize', handleResize);
89
- };
90
- }, [isDesktop, pageWidth, setDisplaySearchFilter]);
91
68
  useEffect(() => {
92
69
  if (filterValues.shouldSearch) {
93
70
  handleSubmit(filterValues);
@@ -96,16 +73,9 @@ const SearchFilter = ({
96
73
  });
97
74
  }
98
75
  }, [filterValues, handleSubmit]);
99
- let isDesktopFormDisplayed = true;
100
- let isMobileFormDisplayed = false;
101
-
102
- if (!isDesktop && isCollapsedOnResponsive) {
103
- isMobileFormDisplayed = displaySearchFilter;
104
- isDesktopFormDisplayed = false;
105
- }
106
-
107
- const formClass = classnames({
108
- 'filter__form filter__form--mobile': isMobileFormDisplayed
76
+ const formClass = classnames('filter__form filter__form--initial', {
77
+ 'filter__form--mobile': isCollapsedOnResponsive && displaySearchFilter,
78
+ 'filter__form--collapsible': isCollapsedOnResponsive
109
79
  });
110
80
  const {
111
81
  moreFiltersMobileWrapperClass,
@@ -133,7 +103,7 @@ const SearchFilter = ({
133
103
 
134
104
  const shouldGroup = !!(groupAfterDesktop || groupAfterMobile);
135
105
  const shouldSearch = !hasUrl;
136
- return /*#__PURE__*/React.createElement(React.Fragment, null, isDesktopFormDisplayed || isMobileFormDisplayed ? /*#__PURE__*/React.createElement("form", {
106
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("form", {
137
107
  ref: searchFilterRef,
138
108
  className: formClass,
139
109
  "data-testid": formId,
@@ -143,11 +113,11 @@ const SearchFilter = ({
143
113
  const newQuery = buildQuery(filterValues, filters);
144
114
  handleSearch(newQuery);
145
115
  }
146
- }, isMobileFormDisplayed && /*#__PURE__*/React.createElement(CloseMobileForm, {
116
+ }, displaySearchFilter && /*#__PURE__*/React.createElement(CloseMobileForm, {
147
117
  handleClose: () => setDisplaySearchFilter(false)
148
118
  }), /*#__PURE__*/React.createElement("div", {
149
119
  className: "filter filter--search-refine"
150
- }, isDesktopFormDisplayed && /*#__PURE__*/React.createElement(ResetDesktopForm, {
120
+ }, /*#__PURE__*/React.createElement(ResetDesktopForm, {
151
121
  handleReset: handleReset
152
122
  }), /*#__PURE__*/React.createElement("div", {
153
123
  className: "filter__wrapper filter__wrapper--search-refine"
@@ -213,19 +183,19 @@ const SearchFilter = ({
213
183
  }), /*#__PURE__*/React.createElement("button", {
214
184
  className: "button button--full-width",
215
185
  type: "submit"
216
- }, SEARCH)))), /*#__PURE__*/React.createElement("br", null), isDesktopFormDisplayed && /*#__PURE__*/React.createElement("button", {
186
+ }, SEARCH)))), /*#__PURE__*/React.createElement("br", null), !displaySearchFilter && /*#__PURE__*/React.createElement("button", {
217
187
  className: "button button--full-width",
218
188
  type: "submit"
219
- }, SEARCH))), isMobileFormDisplayed && /*#__PURE__*/React.createElement(MobileFormToolbar, {
189
+ }, SEARCH))), displaySearchFilter && /*#__PURE__*/React.createElement(MobileFormToolbar, {
220
190
  formId: formId,
221
191
  handleReset: handleReset
222
- })) : /*#__PURE__*/React.createElement(React.Fragment, null, isCollapsedOnResponsive && /*#__PURE__*/React.createElement("div", {
192
+ })), isCollapsedOnResponsive && !displaySearchFilter && /*#__PURE__*/React.createElement("div", {
223
193
  className: "filter__refine filter__refine--mobile-close",
224
194
  "data-testid": "refine-mobile"
225
195
  }, /*#__PURE__*/React.createElement("div", {
226
196
  role: "button",
227
197
  onClick: () => setDisplaySearchFilter(true)
228
- }, REFINE))));
198
+ }, REFINE)));
229
199
  };
230
200
 
231
201
  SearchFilter.propTypes = {