@blaze-cms/react-page-builder 0.146.0-alpha.2 → 0.146.0-alpha.21

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 (228) hide show
  1. package/CHANGELOG.md +132 -0
  2. package/lib/components/Card/Card.js +14 -9
  3. package/lib/components/Card/Card.js.map +1 -1
  4. package/lib/components/Card/CardsContainer.js +8 -4
  5. package/lib/components/Card/CardsContainer.js.map +1 -1
  6. package/lib/components/Card/CardsFactory.js +37 -7
  7. package/lib/components/Card/CardsFactory.js.map +1 -1
  8. package/lib/components/Card/CardsRender.js +8 -4
  9. package/lib/components/Card/CardsRender.js.map +1 -1
  10. package/lib/components/Card/helpers/index.js +6 -6
  11. package/lib/components/Card/helpers/index.js.map +1 -1
  12. package/lib/components/Image/Lightbox/Lightbox.js +2 -2
  13. package/lib/components/Image/Lightbox/Lightbox.js.map +1 -1
  14. package/lib/components/List/ListRender.js.map +1 -1
  15. package/lib/components/MenuItem/MenuEntitiesItem.js +204 -0
  16. package/lib/components/MenuItem/MenuEntitiesItem.js.map +1 -0
  17. package/lib/components/MenuItem/MenuItem.js +25 -68
  18. package/lib/components/MenuItem/MenuItem.js.map +1 -1
  19. package/lib/components/MenuItem/MenuItemRender.js +104 -0
  20. package/lib/components/MenuItem/MenuItemRender.js.map +1 -0
  21. package/lib/components/MenuItem/helpers/index.js +15 -0
  22. package/lib/components/MenuItem/helpers/index.js.map +1 -0
  23. package/lib/components/MenuItem/helpers/inject-helper-into-template.js +17 -0
  24. package/lib/components/MenuItem/helpers/inject-helper-into-template.js.map +1 -0
  25. package/lib/components/Modal/Modal.js +2 -2
  26. package/lib/components/Modal/Modal.js.map +1 -1
  27. package/lib/components/ModalAdapter/ModalAdapter.js +21 -0
  28. package/lib/components/ModalAdapter/ModalAdapter.js.map +1 -0
  29. package/lib/components/ModalAdapter/index.js +11 -0
  30. package/lib/components/ModalAdapter/index.js.map +1 -0
  31. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js +22 -4
  32. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  33. package/lib/components/SearchFilter/SearchFilterContainer.js +22 -27
  34. package/lib/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  35. package/lib/components/SearchFilter/components/Select.js.map +1 -1
  36. package/lib/components/SearchFilter/helpers/build-list-name-query.js +31 -0
  37. package/lib/components/SearchFilter/helpers/build-list-name-query.js.map +1 -0
  38. package/lib/components/SearchFilter/helpers/decode-encode.js.map +1 -1
  39. package/lib/components/SearchFilter/helpers/index.js +7 -0
  40. package/lib/components/SearchFilter/helpers/index.js.map +1 -1
  41. package/lib/components/Video/Video.js +2 -1
  42. package/lib/components/Video/Video.js.map +1 -1
  43. package/lib/components/Video/VideoContext.js +12 -0
  44. package/lib/components/Video/VideoContext.js.map +1 -0
  45. package/lib/components/Video/VideoModal.js +2 -2
  46. package/lib/components/Video/VideoModal.js.map +1 -1
  47. package/lib/components/Video/VideoRender.js +36 -3
  48. package/lib/components/Video/VideoRender.js.map +1 -1
  49. package/lib/components/Video/constants.js +14 -0
  50. package/lib/components/Video/constants.js.map +1 -0
  51. package/lib/components/Video/helpers/emit-gtm-event.js +31 -0
  52. package/lib/components/Video/helpers/emit-gtm-event.js.map +1 -0
  53. package/lib/components/Video/providers/JWPlayer/JWPlayerController.js +28 -8
  54. package/lib/components/Video/providers/JWPlayer/JWPlayerController.js.map +1 -1
  55. package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js +16 -4
  56. package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
  57. package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js +57 -0
  58. package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
  59. package/lib/helpers/build-filters-query.js +1 -2
  60. package/lib/helpers/build-filters-query.js.map +1 -1
  61. package/lib/{components/Card/helpers → helpers}/filter-query-setup.js +10 -7
  62. package/lib/helpers/filter-query-setup.js.map +1 -0
  63. package/lib/{components/Card/helpers → helpers}/filters-setup.js +8 -5
  64. package/lib/helpers/filters-setup.js.map +1 -0
  65. package/lib/helpers/get-updated-items-to-display.js.map +1 -0
  66. package/lib/helpers/get-updated-sort-properties.js.map +1 -0
  67. package/lib/helpers/index.js +42 -0
  68. package/lib/helpers/index.js.map +1 -1
  69. package/lib/helpers/should-return.js.map +1 -0
  70. package/lib/{components/Card/helpers → helpers}/should-skip-single-query.js +1 -1
  71. package/lib/helpers/should-skip-single-query.js.map +1 -0
  72. package/lib/hooks/index.js +14 -0
  73. package/lib/hooks/index.js.map +1 -1
  74. package/lib/hooks/use-filter-aggregation-values.js +54 -0
  75. package/lib/hooks/use-filter-aggregation-values.js.map +1 -0
  76. package/lib/hooks/use-portal.js +30 -0
  77. package/lib/hooks/use-portal.js.map +1 -0
  78. package/lib-es/components/Card/Card.js +14 -9
  79. package/lib-es/components/Card/Card.js.map +1 -1
  80. package/lib-es/components/Card/CardsContainer.js +9 -5
  81. package/lib-es/components/Card/CardsContainer.js.map +1 -1
  82. package/lib-es/components/Card/CardsFactory.js +40 -9
  83. package/lib-es/components/Card/CardsFactory.js.map +1 -1
  84. package/lib-es/components/Card/CardsRender.js +9 -5
  85. package/lib-es/components/Card/CardsRender.js.map +1 -1
  86. package/lib-es/components/Card/helpers/index.js +6 -6
  87. package/lib-es/components/Card/helpers/index.js.map +1 -1
  88. package/lib-es/components/Image/Lightbox/Lightbox.js +1 -1
  89. package/lib-es/components/Image/Lightbox/Lightbox.js.map +1 -1
  90. package/lib-es/components/List/ListRender.js.map +1 -1
  91. package/lib-es/components/MenuItem/MenuEntitiesItem.js +178 -0
  92. package/lib-es/components/MenuItem/MenuEntitiesItem.js.map +1 -0
  93. package/lib-es/components/MenuItem/MenuItem.js +28 -57
  94. package/lib-es/components/MenuItem/MenuItem.js.map +1 -1
  95. package/lib-es/components/MenuItem/MenuItemRender.js +84 -0
  96. package/lib-es/components/MenuItem/MenuItemRender.js.map +1 -0
  97. package/lib-es/components/MenuItem/helpers/index.js +3 -0
  98. package/lib-es/components/MenuItem/helpers/index.js.map +1 -0
  99. package/lib-es/components/MenuItem/helpers/inject-helper-into-template.js +8 -0
  100. package/lib-es/components/MenuItem/helpers/inject-helper-into-template.js.map +1 -0
  101. package/lib-es/components/Modal/Modal.js +1 -1
  102. package/lib-es/components/Modal/Modal.js.map +1 -1
  103. package/lib-es/components/ModalAdapter/ModalAdapter.js +13 -0
  104. package/lib-es/components/ModalAdapter/ModalAdapter.js.map +1 -0
  105. package/lib-es/components/ModalAdapter/index.js +3 -0
  106. package/lib-es/components/ModalAdapter/index.js.map +1 -0
  107. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js +15 -4
  108. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  109. package/lib-es/components/SearchFilter/SearchFilterContainer.js +23 -20
  110. package/lib-es/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  111. package/lib-es/components/SearchFilter/components/Select.js.map +1 -1
  112. package/lib-es/components/SearchFilter/helpers/build-list-name-query.js +15 -0
  113. package/lib-es/components/SearchFilter/helpers/build-list-name-query.js.map +1 -0
  114. package/lib-es/components/SearchFilter/helpers/decode-encode.js.map +1 -1
  115. package/lib-es/components/SearchFilter/helpers/index.js +2 -1
  116. package/lib-es/components/SearchFilter/helpers/index.js.map +1 -1
  117. package/lib-es/components/Video/Video.js +2 -1
  118. package/lib-es/components/Video/Video.js.map +1 -1
  119. package/lib-es/components/Video/VideoContext.js +6 -0
  120. package/lib-es/components/Video/VideoContext.js.map +1 -0
  121. package/lib-es/components/Video/VideoModal.js +1 -1
  122. package/lib-es/components/Video/VideoModal.js.map +1 -1
  123. package/lib-es/components/Video/VideoRender.js +28 -3
  124. package/lib-es/components/Video/VideoRender.js.map +1 -1
  125. package/lib-es/components/Video/constants.js +7 -0
  126. package/lib-es/components/Video/constants.js.map +1 -0
  127. package/lib-es/components/Video/helpers/emit-gtm-event.js +25 -0
  128. package/lib-es/components/Video/helpers/emit-gtm-event.js.map +1 -0
  129. package/lib-es/components/Video/providers/JWPlayer/JWPlayerController.js +28 -4
  130. package/lib-es/components/Video/providers/JWPlayer/JWPlayerController.js.map +1 -1
  131. package/lib-es/components/Video/providers/JWPlayer/JWPlayerProvider.js +10 -4
  132. package/lib-es/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
  133. package/lib-es/components/Video/providers/YouTube/YoutubeEmbeded.js +60 -2
  134. package/lib-es/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
  135. package/lib-es/helpers/build-filters-query.js +1 -2
  136. package/lib-es/helpers/build-filters-query.js.map +1 -1
  137. package/lib-es/{components/Card/helpers → helpers}/filter-query-setup.js +5 -3
  138. package/lib-es/helpers/filter-query-setup.js.map +1 -0
  139. package/lib-es/{components/Card/helpers → helpers}/filters-setup.js +4 -2
  140. package/lib-es/helpers/filters-setup.js.map +1 -0
  141. package/lib-es/helpers/get-updated-items-to-display.js.map +1 -0
  142. package/lib-es/helpers/get-updated-sort-properties.js.map +1 -0
  143. package/lib-es/helpers/index.js +6 -0
  144. package/lib-es/helpers/index.js.map +1 -1
  145. package/lib-es/helpers/should-return.js.map +1 -0
  146. package/lib-es/{components/Card/helpers → helpers}/should-skip-single-query.js +1 -1
  147. package/lib-es/helpers/should-skip-single-query.js.map +1 -0
  148. package/lib-es/hooks/index.js +2 -0
  149. package/lib-es/hooks/index.js.map +1 -1
  150. package/lib-es/hooks/use-filter-aggregation-values.js +31 -0
  151. package/lib-es/hooks/use-filter-aggregation-values.js.map +1 -0
  152. package/lib-es/hooks/use-portal.js +14 -0
  153. package/lib-es/hooks/use-portal.js.map +1 -0
  154. package/package.json +7 -7
  155. package/src/components/Card/Card.js +25 -16
  156. package/src/components/Card/CardsContainer.js +7 -3
  157. package/src/components/Card/CardsFactory.js +34 -6
  158. package/src/components/Card/CardsRender.js +6 -2
  159. package/src/components/Card/helpers/index.js +6 -6
  160. package/src/components/Image/Lightbox/Lightbox.js +1 -1
  161. package/src/components/List/ListRender.js +0 -1
  162. package/src/components/MenuItem/MenuEntitiesItem.js +204 -0
  163. package/src/components/MenuItem/MenuItem.js +15 -58
  164. package/src/components/MenuItem/MenuItemRender.js +92 -0
  165. package/src/components/MenuItem/helpers/index.js +3 -0
  166. package/src/components/MenuItem/helpers/inject-helper-into-template.js +11 -0
  167. package/src/components/Modal/Modal.js +1 -1
  168. package/src/components/ModalAdapter/ModalAdapter.js +12 -0
  169. package/src/components/ModalAdapter/index.js +3 -0
  170. package/src/components/SearchFilter/SearchFilter/SearchFilter.js +16 -5
  171. package/src/components/SearchFilter/SearchFilterContainer.js +21 -22
  172. package/src/components/SearchFilter/components/Select.js +2 -0
  173. package/src/components/SearchFilter/helpers/build-list-name-query.js +18 -0
  174. package/src/components/SearchFilter/helpers/decode-encode.js +0 -1
  175. package/src/components/SearchFilter/helpers/index.js +2 -0
  176. package/src/components/Video/Video.js +1 -1
  177. package/src/components/Video/VideoContext.js +7 -0
  178. package/src/components/Video/VideoModal.js +1 -1
  179. package/src/components/Video/VideoRender.js +28 -3
  180. package/src/components/Video/constants.js +6 -0
  181. package/src/components/Video/helpers/emit-gtm-event.js +25 -0
  182. package/src/components/Video/providers/JWPlayer/JWPlayerController.js +21 -4
  183. package/src/components/Video/providers/JWPlayer/JWPlayerProvider.js +7 -5
  184. package/src/components/Video/providers/YouTube/YoutubeEmbeded.js +65 -2
  185. package/src/helpers/build-filters-query.js +1 -3
  186. package/src/{components/Card/helpers → helpers}/filter-query-setup.js +5 -3
  187. package/src/{components/Card/helpers → helpers}/filters-setup.js +5 -2
  188. package/src/helpers/index.js +6 -0
  189. package/src/{components/Card/helpers → helpers}/should-skip-single-query.js +1 -1
  190. package/src/hooks/index.js +2 -0
  191. package/src/hooks/use-filter-aggregation-values.js +37 -0
  192. package/src/hooks/use-portal.js +18 -0
  193. package/tests/unit/src/components/Card/Card.test.js +16 -1
  194. package/tests/unit/src/components/Card/__snapshots__/Card.test.js.snap +83 -0
  195. package/tests/unit/src/components/Card/helpers/get-updated-items-to-display.test.js +1 -1
  196. package/tests/unit/src/components/Image/Lightbox/Lightbox.test.js +4 -0
  197. package/tests/unit/src/components/Image/Lightbox/__snapshots__/Lightbox.test.js.snap +3 -38
  198. package/tests/unit/src/components/MenuItem/MenuEntitiesItem.test.js +23 -0
  199. package/tests/unit/src/components/MenuItem/MenuItem.test.js +30 -11
  200. package/tests/unit/src/components/MenuItem/MenuItemRender.test.js +55 -0
  201. package/tests/unit/src/components/MenuItem/__snapshots__/MenuEntitiesItem.test.js.snap +3 -0
  202. package/tests/unit/src/components/MenuItem/__snapshots__/MenuItem.test.js.snap +5 -51
  203. package/tests/unit/src/components/MenuItem/helpers/inject-helper-into-template.test.js +44 -0
  204. package/tests/unit/src/components/MenuItem/mocks.js +71 -0
  205. package/tests/unit/src/components/Modal/Modal.test.js +4 -0
  206. package/tests/unit/src/components/Modal/__snapshots__/Modal.test.js.snap +7 -42
  207. package/tests/unit/src/components/SearchFilter/__snapshots__/SearchFilterContainer.test.js.snap +7 -1
  208. package/lib/components/Card/helpers/filter-query-setup.js.map +0 -1
  209. package/lib/components/Card/helpers/filters-setup.js.map +0 -1
  210. package/lib/components/Card/helpers/get-updated-items-to-display.js.map +0 -1
  211. package/lib/components/Card/helpers/get-updated-sort-properties.js.map +0 -1
  212. package/lib/components/Card/helpers/should-return.js.map +0 -1
  213. package/lib/components/Card/helpers/should-skip-single-query.js.map +0 -1
  214. package/lib-es/components/Card/helpers/filter-query-setup.js.map +0 -1
  215. package/lib-es/components/Card/helpers/filters-setup.js.map +0 -1
  216. package/lib-es/components/Card/helpers/get-updated-items-to-display.js.map +0 -1
  217. package/lib-es/components/Card/helpers/get-updated-sort-properties.js.map +0 -1
  218. package/lib-es/components/Card/helpers/should-return.js.map +0 -1
  219. package/lib-es/components/Card/helpers/should-skip-single-query.js.map +0 -1
  220. /package/lib/{components/Card/helpers → helpers}/get-updated-items-to-display.js +0 -0
  221. /package/lib/{components/Card/helpers → helpers}/get-updated-sort-properties.js +0 -0
  222. /package/lib/{components/Card/helpers → helpers}/should-return.js +0 -0
  223. /package/lib-es/{components/Card/helpers → helpers}/get-updated-items-to-display.js +0 -0
  224. /package/lib-es/{components/Card/helpers → helpers}/get-updated-sort-properties.js +0 -0
  225. /package/lib-es/{components/Card/helpers → helpers}/should-return.js +0 -0
  226. /package/src/{components/Card/helpers → helpers}/get-updated-items-to-display.js +0 -0
  227. /package/src/{components/Card/helpers → helpers}/get-updated-sort-properties.js +0 -0
  228. /package/src/{components/Card/helpers → helpers}/should-return.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItem.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_fa","_constants","_helpers","_BlazeLink","_MenuContext","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","MenuItem","_ref","children","eventType","text","modifier","url","_useState","useState","_useState2","_slicedToArray2","displayChildren","setDisplayChildren","_useContext","useContext","MenuContext","showMobileMenu","useEffect","isHoverEvent","HOVER","childrenDisplayClass","HIDDEN","handleItemEvent","_ref2","type","MOUSE_ENTER","MOUSE_LEAVE","hasValidChildren","hasChildren","createElement","className","onMouseEnter","onMouseLeave","href","role","onClick","FaChevronUp","FaChevronDown","concat","propTypes","PropTypes","string","isRequired","oneOfType","arrayOf","node","defaultProps","_default","exports"],"sources":["../../../src/components/MenuItem/MenuItem.js"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { FaChevronDown, FaChevronUp } from 'react-icons/fa';\nimport { HOVER, MOUSE_ENTER, MOUSE_LEAVE, HIDDEN } from '../../constants';\nimport { hasChildren } from '../../helpers';\nimport BlazeLink from '../BlazeLink';\nimport MenuContext from '../Menu/MenuContext';\n\nconst MenuItem = ({ children, eventType, text, modifier, url }) => {\n const [displayChildren, setDisplayChildren] = useState(false);\n const { showMobileMenu } = useContext(MenuContext);\n\n useEffect(\n () => {\n if (!showMobileMenu) setDisplayChildren(false);\n },\n [showMobileMenu]\n );\n\n const isHoverEvent = eventType === HOVER;\n const childrenDisplayClass = displayChildren ? '' : HIDDEN;\n\n const handleItemEvent = ({ type }) => {\n if (isHoverEvent) {\n if (type === MOUSE_ENTER) {\n setDisplayChildren(true);\n }\n if (type === MOUSE_LEAVE) {\n setDisplayChildren(false);\n }\n }\n };\n const hasValidChildren = hasChildren(children);\n\n return (\n <li className={modifier} onMouseEnter={handleItemEvent} onMouseLeave={handleItemEvent}>\n <div className=\"menu--item--link\">\n {url ? (\n <BlazeLink href={url}>{text}</BlazeLink>\n ) : (\n <span role=\"button\" onClick={handleItemEvent}>\n {text}\n </span>\n )}\n {hasValidChildren && (\n <i\n role=\"button\"\n className=\"menu--item--link--icon\"\n onClick={() => setDisplayChildren(!displayChildren)}>\n {displayChildren ? <FaChevronUp /> : <FaChevronDown />}\n </i>\n )}\n </div>\n {hasValidChildren && (\n <div className={`menu--item-children ${childrenDisplayClass}`}>{children}</div>\n )}\n </li>\n );\n};\n\nMenuItem.propTypes = {\n modifier: PropTypes.string,\n text: PropTypes.string,\n url: PropTypes.string,\n eventType: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nMenuItem.defaultProps = {\n url: '',\n modifier: '',\n text: '',\n children: null\n};\n\nexport default MenuItem;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"MenuItem.js","names":["_react","_interopRequireDefault","require","_propTypes","_MenuItemRender","_MenuEntitiesItem","_excluded","MenuItem","_ref","entities","parent","props","_objectWithoutProperties2","hasEntities","length","createElement","_extends2","propTypes","children","PropTypes","oneOfType","arrayOf","node","eventType","string","isRequired","modifier","object","text","url","array","defaultProps","_default","exports"],"sources":["../../../src/components/MenuItem/MenuItem.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport MenuItemRender from './MenuItemRender';\nimport MenuEntitiesItem from './MenuEntitiesItem';\n\nconst MenuItem = ({ entities, parent, ...props }) => {\n const hasEntities = entities && entities.length;\n\n if (!hasEntities) return <MenuItemRender parent={parent} {...props} />;\n\n return <MenuEntitiesItem entities={entities} parent={parent} {...props} />;\n};\n\nMenuItem.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n eventType: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n parent: PropTypes.object,\n text: PropTypes.string,\n url: PropTypes.string,\n entities: PropTypes.array\n};\n\nMenuItem.defaultProps = {\n children: null,\n modifier: '',\n parent: {},\n text: '',\n url: '',\n entities: []\n};\n\nexport default MenuItem;\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,eAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,iBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAAkD,IAAAI,SAAA;AAElD,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,IAAA,EAAuC;EAAA,IAAjCC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAKC,KAAK,OAAAC,yBAAA,aAAAJ,IAAA,EAAAF,SAAA;EAC5C,IAAMO,WAAW,GAAGJ,QAAQ,IAAIA,QAAQ,CAACK,MAAM;EAE/C,IAAI,CAACD,WAAW,EAAE,oBAAOb,MAAA,YAAAe,aAAA,CAACX,eAAA,WAAc,MAAAY,SAAA;IAACN,MAAM,EAAEA;EAAO,GAAKC,KAAK,CAAG,CAAC;EAEtE,oBAAOX,MAAA,YAAAe,aAAA,CAACV,iBAAA,WAAgB,MAAAW,SAAA;IAACP,QAAQ,EAAEA,QAAS;IAACC,MAAM,EAAEA;EAAO,GAAKC,KAAK,CAAG,CAAC;AAC5E,CAAC;AAEDJ,QAAQ,CAACU,SAAS,GAAG;EACnBC,QAAQ,EAAEC,qBAAS,CAACC,SAAS,CAAC,CAACD,qBAAS,CAACE,OAAO,CAACF,qBAAS,CAACG,IAAI,CAAC,EAAEH,qBAAS,CAACG,IAAI,CAAC,CAAC;EAClFC,SAAS,EAAEJ,qBAAS,CAACK,MAAM,CAACC,UAAU;EACtCC,QAAQ,EAAEP,qBAAS,CAACK,MAAM;EAC1Bd,MAAM,EAAES,qBAAS,CAACQ,MAAM;EACxBC,IAAI,EAAET,qBAAS,CAACK,MAAM;EACtBK,GAAG,EAAEV,qBAAS,CAACK,MAAM;EACrBf,QAAQ,EAAEU,qBAAS,CAACW;AACtB,CAAC;AAEDvB,QAAQ,CAACwB,YAAY,GAAG;EACtBb,QAAQ,EAAE,IAAI;EACdQ,QAAQ,EAAE,EAAE;EACZhB,MAAM,EAAE,CAAC,CAAC;EACVkB,IAAI,EAAE,EAAE;EACRC,GAAG,EAAE,EAAE;EACPpB,QAAQ,EAAE;AACZ,CAAC;AAAC,IAAAuB,QAAA,GAAAC,OAAA,cAEa1B,QAAQ","ignoreList":[]}
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.array.iterator.js");
4
+ require("core-js/modules/es.object.define-property.js");
5
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
6
+ require("core-js/modules/es.object.to-string.js");
7
+ require("core-js/modules/es.string.iterator.js");
8
+ require("core-js/modules/es.weak-map.js");
9
+ require("core-js/modules/web.dom-collections.iterator.js");
10
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
11
+ var _typeof = require("@babel/runtime/helpers/typeof");
12
+ Object.defineProperty(exports, "__esModule", {
13
+ value: true
14
+ });
15
+ exports["default"] = void 0;
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+ var _react = _interopRequireWildcard(require("react"));
18
+ var _propTypes = _interopRequireDefault(require("prop-types"));
19
+ var _fa = require("react-icons/fa");
20
+ var _utilsHandlebars = require("@blaze-cms/utils-handlebars");
21
+ var _constants = require("../../constants");
22
+ var _helpers = require("../../helpers");
23
+ var _BlazeLink = _interopRequireDefault(require("../BlazeLink"));
24
+ var _MenuContext = _interopRequireDefault(require("../Menu/MenuContext"));
25
+ var _helpers2 = require("./helpers");
26
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
27
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
28
+ var MenuItemRender = function MenuItemRender(_ref) {
29
+ var children = _ref.children,
30
+ eventType = _ref.eventType,
31
+ text = _ref.text,
32
+ modifier = _ref.modifier,
33
+ url = _ref.url,
34
+ parent = _ref.parent;
35
+ var _useState = (0, _react.useState)(false),
36
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
37
+ displayChildren = _useState2[0],
38
+ setDisplayChildren = _useState2[1];
39
+ var _useContext = (0, _react.useContext)(_MenuContext["default"]),
40
+ showMobileMenu = _useContext.showMobileMenu;
41
+ var _useStringTemplate = (0, _utilsHandlebars.useStringTemplate)(parent, [text]),
42
+ loadingText = _useStringTemplate.loading,
43
+ _useStringTemplate$da = (0, _slicedToArray2["default"])(_useStringTemplate.data, 1),
44
+ textToUse = _useStringTemplate$da[0];
45
+ var _useStringTemplate2 = (0, _utilsHandlebars.useStringTemplate)(parent, [(0, _helpers2.injectHelperIntoTemplate)(url, 'url_encode')]),
46
+ loadingUrl = _useStringTemplate2.loading,
47
+ _useStringTemplate2$d = (0, _slicedToArray2["default"])(_useStringTemplate2.data, 1),
48
+ urlToUse = _useStringTemplate2$d[0];
49
+ (0, _react.useEffect)(function () {
50
+ if (!showMobileMenu) setDisplayChildren(false);
51
+ }, [showMobileMenu]);
52
+ if (loadingUrl || loadingText) return '';
53
+ var isHoverEvent = eventType === _constants.HOVER;
54
+ var childrenDisplayClass = displayChildren ? '' : _constants.HIDDEN;
55
+ var handleItemEvent = function handleItemEvent(_ref2) {
56
+ var type = _ref2.type;
57
+ if (isHoverEvent) {
58
+ if (type === _constants.MOUSE_ENTER) {
59
+ setDisplayChildren(true);
60
+ }
61
+ if (type === _constants.MOUSE_LEAVE) {
62
+ setDisplayChildren(false);
63
+ }
64
+ }
65
+ };
66
+ var hasValidChildren = (0, _helpers.hasChildren)(children);
67
+ return /*#__PURE__*/_react["default"].createElement("li", {
68
+ className: modifier,
69
+ onMouseEnter: handleItemEvent,
70
+ onMouseLeave: handleItemEvent
71
+ }, /*#__PURE__*/_react["default"].createElement("div", {
72
+ className: "menu--item--link"
73
+ }, urlToUse ? /*#__PURE__*/_react["default"].createElement(_BlazeLink["default"], {
74
+ href: urlToUse
75
+ }, textToUse) : /*#__PURE__*/_react["default"].createElement("span", {
76
+ role: "button",
77
+ onClick: handleItemEvent
78
+ }, textToUse), hasValidChildren && /*#__PURE__*/_react["default"].createElement("i", {
79
+ role: "button",
80
+ className: "menu--item--link--icon",
81
+ onClick: function onClick() {
82
+ return setDisplayChildren(!displayChildren);
83
+ }
84
+ }, displayChildren ? /*#__PURE__*/_react["default"].createElement(_fa.FaChevronUp, null) : /*#__PURE__*/_react["default"].createElement(_fa.FaChevronDown, null))), hasValidChildren && /*#__PURE__*/_react["default"].createElement("div", {
85
+ className: "menu--item-children ".concat(childrenDisplayClass)
86
+ }, children));
87
+ };
88
+ MenuItemRender.propTypes = {
89
+ modifier: _propTypes["default"].string,
90
+ text: _propTypes["default"].string,
91
+ url: _propTypes["default"].string,
92
+ eventType: _propTypes["default"].string.isRequired,
93
+ parent: _propTypes["default"].object,
94
+ children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node])
95
+ };
96
+ MenuItemRender.defaultProps = {
97
+ url: '',
98
+ modifier: '',
99
+ text: '',
100
+ children: null,
101
+ parent: {}
102
+ };
103
+ var _default = exports["default"] = MenuItemRender;
104
+ //# sourceMappingURL=MenuItemRender.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuItemRender.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_fa","_utilsHandlebars","_constants","_helpers","_BlazeLink","_MenuContext","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","MenuItemRender","_ref","children","eventType","text","modifier","url","parent","_useState","useState","_useState2","_slicedToArray2","displayChildren","setDisplayChildren","_useContext","useContext","MenuContext","showMobileMenu","_useStringTemplate","useStringTemplate","loadingText","loading","_useStringTemplate$da","data","textToUse","_useStringTemplate2","injectHelperIntoTemplate","loadingUrl","_useStringTemplate2$d","urlToUse","useEffect","isHoverEvent","HOVER","childrenDisplayClass","HIDDEN","handleItemEvent","_ref2","type","MOUSE_ENTER","MOUSE_LEAVE","hasValidChildren","hasChildren","createElement","className","onMouseEnter","onMouseLeave","href","role","onClick","FaChevronUp","FaChevronDown","concat","propTypes","PropTypes","string","isRequired","object","oneOfType","arrayOf","node","defaultProps","_default","exports"],"sources":["../../../src/components/MenuItem/MenuItemRender.js"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { FaChevronDown, FaChevronUp } from 'react-icons/fa';\nimport { useStringTemplate } from '@blaze-cms/utils-handlebars';\nimport { HOVER, MOUSE_ENTER, MOUSE_LEAVE, HIDDEN } from '../../constants';\nimport { hasChildren } from '../../helpers';\nimport BlazeLink from '../BlazeLink';\nimport MenuContext from '../Menu/MenuContext';\nimport { injectHelperIntoTemplate } from './helpers';\n\nconst MenuItemRender = ({ children, eventType, text, modifier, url, parent }) => {\n const [displayChildren, setDisplayChildren] = useState(false);\n const { showMobileMenu } = useContext(MenuContext);\n const {\n loading: loadingText,\n data: [textToUse]\n } = useStringTemplate(parent, [text]);\n\n const {\n loading: loadingUrl,\n data: [urlToUse]\n } = useStringTemplate(parent, [injectHelperIntoTemplate(url, 'url_encode')]);\n\n useEffect(\n () => {\n if (!showMobileMenu) setDisplayChildren(false);\n },\n [showMobileMenu]\n );\n\n if (loadingUrl || loadingText) return '';\n\n const isHoverEvent = eventType === HOVER;\n const childrenDisplayClass = displayChildren ? '' : HIDDEN;\n\n const handleItemEvent = ({ type }) => {\n if (isHoverEvent) {\n if (type === MOUSE_ENTER) {\n setDisplayChildren(true);\n }\n if (type === MOUSE_LEAVE) {\n setDisplayChildren(false);\n }\n }\n };\n const hasValidChildren = hasChildren(children);\n\n return (\n <li className={modifier} onMouseEnter={handleItemEvent} onMouseLeave={handleItemEvent}>\n <div className=\"menu--item--link\">\n {urlToUse ? (\n <BlazeLink href={urlToUse}>{textToUse}</BlazeLink>\n ) : (\n <span role=\"button\" onClick={handleItemEvent}>\n {textToUse}\n </span>\n )}\n {hasValidChildren && (\n <i\n role=\"button\"\n className=\"menu--item--link--icon\"\n onClick={() => setDisplayChildren(!displayChildren)}>\n {displayChildren ? <FaChevronUp /> : <FaChevronDown />}\n </i>\n )}\n </div>\n\n {hasValidChildren && (\n <div className={`menu--item-children ${childrenDisplayClass}`}>{children}</div>\n )}\n </li>\n );\n};\n\nMenuItemRender.propTypes = {\n modifier: PropTypes.string,\n text: PropTypes.string,\n url: PropTypes.string,\n eventType: PropTypes.string.isRequired,\n parent: PropTypes.object,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nMenuItemRender.defaultProps = {\n url: '',\n modifier: '',\n text: '',\n children: null,\n parent: {}\n};\n\nexport default MenuItemRender;\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ Object.defineProperty(exports, "injectHelperIntoTemplate", {
9
+ enumerable: true,
10
+ get: function get() {
11
+ return _injectHelperIntoTemplate["default"];
12
+ }
13
+ });
14
+ var _injectHelperIntoTemplate = _interopRequireDefault(require("./inject-helper-into-template"));
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_injectHelperIntoTemplate","_interopRequireDefault","require"],"sources":["../../../../src/components/MenuItem/helpers/index.js"],"sourcesContent":["import injectHelperIntoTemplate from './inject-helper-into-template';\n\nexport { injectHelperIntoTemplate };\n"],"mappings":";;;;;;;;;;;;;AAAA,IAAAA,yBAAA,GAAAC,sBAAA,CAAAC,OAAA","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ require("core-js/modules/es.regexp.exec.js");
9
+ require("core-js/modules/es.string.replace.js");
10
+ var injectHelperIntoTemplate = function injectHelperIntoTemplate(template, helper) {
11
+ if (!helper || !template) return template;
12
+ var result = template.replace(/{{{([^{}]+)}}}/g, "{{{".concat(helper, " $1}}}"));
13
+ result = result.replace(/{{([^{}]+)}}(?!})/g, "{{".concat(helper, " $1}}"));
14
+ return result;
15
+ };
16
+ var _default = exports["default"] = injectHelperIntoTemplate;
17
+ //# sourceMappingURL=inject-helper-into-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inject-helper-into-template.js","names":["injectHelperIntoTemplate","template","helper","result","replace","concat","_default","exports"],"sources":["../../../../src/components/MenuItem/helpers/inject-helper-into-template.js"],"sourcesContent":["const injectHelperIntoTemplate = (template, helper) => {\n if (!helper || !template) return template;\n\n let result = template.replace(/{{{([^{}]+)}}}/g, `{{{${helper} $1}}}`);\n\n result = result.replace(/{{([^{}]+)}}(?!})/g, `{{${helper} $1}}`);\n\n return result;\n};\n\nexport default injectHelperIntoTemplate;\n"],"mappings":";;;;;;;;;AAAA,IAAMA,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAIC,QAAQ,EAAEC,MAAM,EAAK;EACrD,IAAI,CAACA,MAAM,IAAI,CAACD,QAAQ,EAAE,OAAOA,QAAQ;EAEzC,IAAIE,MAAM,GAAGF,QAAQ,CAACG,OAAO,CAAC,iBAAiB,QAAAC,MAAA,CAAQH,MAAM,WAAQ,CAAC;EAEtEC,MAAM,GAAGA,MAAM,CAACC,OAAO,CAAC,oBAAoB,OAAAC,MAAA,CAAOH,MAAM,UAAO,CAAC;EAEjE,OAAOC,MAAM;AACf,CAAC;AAAC,IAAAG,QAAA,GAAAC,OAAA,cAEaP,wBAAwB","ignoreList":[]}
@@ -9,7 +9,7 @@ exports["default"] = void 0;
9
9
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
- var _modal = _interopRequireDefault(require("@blaze-react/modal"));
12
+ var _ModalAdapter = _interopRequireDefault(require("../ModalAdapter"));
13
13
  var _helpers = require("../../helpers");
14
14
  var _excluded = ["children", "elementTitle", "onClose"];
15
15
  var Modal = function Modal(_ref) {
@@ -19,7 +19,7 @@ var Modal = function Modal(_ref) {
19
19
  otherProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
20
20
  if (!(0, _helpers.hasChildren)(children)) return null;
21
21
  (0, _helpers.updateChildrensParent)(children, otherProps.parent.itemId, otherProps.parent.itemEntity);
22
- return /*#__PURE__*/_react["default"].createElement(_modal["default"], {
22
+ return /*#__PURE__*/_react["default"].createElement(_ModalAdapter["default"], {
23
23
  title: elementTitle,
24
24
  onClose: onClose
25
25
  }, (0, _helpers.renderChildren)(children));
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","names":["_react","_interopRequireDefault","require","_propTypes","_modal","_helpers","_excluded","Modal","_ref","children","elementTitle","onClose","otherProps","_objectWithoutProperties2","hasChildren","updateChildrensParent","parent","itemId","itemEntity","createElement","title","renderChildren","propTypes","PropTypes","func","string","oneOfType","arrayOf","node","defaultProps","_default","exports"],"sources":["../../../src/components/Modal/Modal.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeModal from '@blaze-react/modal';\nimport { renderChildren, updateChildrensParent, hasChildren } from '../../helpers';\n\nconst Modal = ({ children, elementTitle, onClose, ...otherProps }) => {\n if (!hasChildren(children)) return null;\n\n updateChildrensParent(children, otherProps.parent.itemId, otherProps.parent.itemEntity);\n return (\n <BlazeModal title={elementTitle} onClose={onClose}>\n {renderChildren(children)}\n </BlazeModal>\n );\n};\n\nModal.propTypes = {\n onClose: PropTypes.func,\n elementTitle: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nModal.defaultProps = {\n onClose: () => {},\n elementTitle: '',\n children: []\n};\n\nexport default Modal;\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAAmF,IAAAI,SAAA;AAEnF,IAAMC,KAAK,GAAG,SAARA,KAAKA,CAAAC,IAAA,EAA2D;EAAA,IAArDC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,YAAY,GAAAF,IAAA,CAAZE,YAAY;IAAEC,OAAO,GAAAH,IAAA,CAAPG,OAAO;IAAKC,UAAU,OAAAC,yBAAA,aAAAL,IAAA,EAAAF,SAAA;EAC7D,IAAI,CAAC,IAAAQ,oBAAW,EAACL,QAAQ,CAAC,EAAE,OAAO,IAAI;EAEvC,IAAAM,8BAAqB,EAACN,QAAQ,EAAEG,UAAU,CAACI,MAAM,CAACC,MAAM,EAAEL,UAAU,CAACI,MAAM,CAACE,UAAU,CAAC;EACvF,oBACElB,MAAA,YAAAmB,aAAA,CAACf,MAAA,WAAU;IAACgB,KAAK,EAAEV,YAAa;IAACC,OAAO,EAAEA;EAAQ,GAC/C,IAAAU,uBAAc,EAACZ,QAAQ,CACd,CAAC;AAEjB,CAAC;AAEDF,KAAK,CAACe,SAAS,GAAG;EAChBX,OAAO,EAAEY,qBAAS,CAACC,IAAI;EACvBd,YAAY,EAAEa,qBAAS,CAACE,MAAM;EAC9BhB,QAAQ,EAAEc,qBAAS,CAACG,SAAS,CAAC,CAACH,qBAAS,CAACI,OAAO,CAACJ,qBAAS,CAACK,IAAI,CAAC,EAAEL,qBAAS,CAACK,IAAI,CAAC;AACnF,CAAC;AAEDrB,KAAK,CAACsB,YAAY,GAAG;EACnBlB,OAAO,EAAE,SAAAA,QAAA,EAAM,CAAC,CAAC;EACjBD,YAAY,EAAE,EAAE;EAChBD,QAAQ,EAAE;AACZ,CAAC;AAAC,IAAAqB,QAAA,GAAAC,OAAA,cAEaxB,KAAK","ignoreList":[]}
1
+ {"version":3,"file":"Modal.js","names":["_react","_interopRequireDefault","require","_propTypes","_ModalAdapter","_helpers","_excluded","Modal","_ref","children","elementTitle","onClose","otherProps","_objectWithoutProperties2","hasChildren","updateChildrensParent","parent","itemId","itemEntity","createElement","title","renderChildren","propTypes","PropTypes","func","string","oneOfType","arrayOf","node","defaultProps","_default","exports"],"sources":["../../../src/components/Modal/Modal.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeModal from '../ModalAdapter';\nimport { renderChildren, updateChildrensParent, hasChildren } from '../../helpers';\n\nconst Modal = ({ children, elementTitle, onClose, ...otherProps }) => {\n if (!hasChildren(children)) return null;\n\n updateChildrensParent(children, otherProps.parent.itemId, otherProps.parent.itemEntity);\n return (\n <BlazeModal title={elementTitle} onClose={onClose}>\n {renderChildren(children)}\n </BlazeModal>\n );\n};\n\nModal.propTypes = {\n onClose: PropTypes.func,\n elementTitle: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nModal.defaultProps = {\n onClose: () => {},\n elementTitle: '',\n children: []\n};\n\nexport default Modal;\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,aAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAAmF,IAAAI,SAAA;AAEnF,IAAMC,KAAK,GAAG,SAARA,KAAKA,CAAAC,IAAA,EAA2D;EAAA,IAArDC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,YAAY,GAAAF,IAAA,CAAZE,YAAY;IAAEC,OAAO,GAAAH,IAAA,CAAPG,OAAO;IAAKC,UAAU,OAAAC,yBAAA,aAAAL,IAAA,EAAAF,SAAA;EAC7D,IAAI,CAAC,IAAAQ,oBAAW,EAACL,QAAQ,CAAC,EAAE,OAAO,IAAI;EAEvC,IAAAM,8BAAqB,EAACN,QAAQ,EAAEG,UAAU,CAACI,MAAM,CAACC,MAAM,EAAEL,UAAU,CAACI,MAAM,CAACE,UAAU,CAAC;EACvF,oBACElB,MAAA,YAAAmB,aAAA,CAACf,aAAA,WAAU;IAACgB,KAAK,EAAEV,YAAa;IAACC,OAAO,EAAEA;EAAQ,GAC/C,IAAAU,uBAAc,EAACZ,QAAQ,CACd,CAAC;AAEjB,CAAC;AAEDF,KAAK,CAACe,SAAS,GAAG;EAChBX,OAAO,EAAEY,qBAAS,CAACC,IAAI;EACvBd,YAAY,EAAEa,qBAAS,CAACE,MAAM;EAC9BhB,QAAQ,EAAEc,qBAAS,CAACG,SAAS,CAAC,CAACH,qBAAS,CAACI,OAAO,CAACJ,qBAAS,CAACK,IAAI,CAAC,EAAEL,qBAAS,CAACK,IAAI,CAAC;AACnF,CAAC;AAEDrB,KAAK,CAACsB,YAAY,GAAG;EACnBlB,OAAO,EAAE,SAAAA,QAAA,EAAM,CAAC,CAAC;EACjBD,YAAY,EAAE,EAAE;EAChBD,QAAQ,EAAE;AACZ,CAAC;AAAC,IAAAqB,QAAA,GAAAC,OAAA,cAEaxB,KAAK","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
+ var _objectDestructuringEmpty2 = _interopRequireDefault(require("@babel/runtime/helpers/objectDestructuringEmpty"));
11
+ var _react = _interopRequireDefault(require("react"));
12
+ var _modal = _interopRequireDefault(require("@blaze-react/modal"));
13
+ var _reactDom = _interopRequireDefault(require("react-dom"));
14
+ var _hooks = require("../../hooks");
15
+ var ModalAdapter = function ModalAdapter(_ref) {
16
+ var props = (0, _extends2["default"])({}, ((0, _objectDestructuringEmpty2["default"])(_ref), _ref));
17
+ var target = (0, _hooks.usePortal)();
18
+ return /*#__PURE__*/_reactDom["default"].createPortal( /*#__PURE__*/_react["default"].createElement(_modal["default"], props), target);
19
+ };
20
+ var _default = exports["default"] = ModalAdapter;
21
+ //# sourceMappingURL=ModalAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModalAdapter.js","names":["_react","_interopRequireDefault","require","_modal","_reactDom","_hooks","ModalAdapter","_ref","props","_extends2","_objectDestructuringEmpty2","target","usePortal","ReactDOM","createPortal","createElement","_default","exports"],"sources":["../../../src/components/ModalAdapter/ModalAdapter.js"],"sourcesContent":["import React from 'react';\nimport Modal from '@blaze-react/modal';\nimport ReactDOM from 'react-dom';\nimport { usePortal } from '../../hooks';\n\nconst ModalAdapter = ({ ...props }) => {\n const target = usePortal();\n\n return ReactDOM.createPortal(<Modal {...props} />, target);\n};\n\nexport default ModalAdapter;\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,SAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAEA,IAAMI,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAAqB;EAAA,IAAZC,KAAK,OAAAC,SAAA,sBAAAC,0BAAA,aAAAH,IAAA,GAAAA,IAAA;EAC9B,IAAMI,MAAM,GAAG,IAAAC,gBAAS,EAAC,CAAC;EAE1B,oBAAOC,oBAAQ,CAACC,YAAY,eAACd,MAAA,YAAAe,aAAA,CAACZ,MAAA,WAAK,EAAKK,KAAQ,CAAC,EAAEG,MAAM,CAAC;AAC5D,CAAC;AAAC,IAAAK,QAAA,GAAAC,OAAA,cAEaX,YAAY","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _ModalAdapter = _interopRequireDefault(require("./ModalAdapter"));
10
+ var _default = exports["default"] = _ModalAdapter["default"];
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_ModalAdapter","_interopRequireDefault","require","_default","exports","ModalAdapter"],"sources":["../../../src/components/ModalAdapter/index.js"],"sourcesContent":["import ModalAdapter from './ModalAdapter';\n\nexport default ModalAdapter;\n"],"mappings":";;;;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0C,IAAAC,QAAA,GAAAC,OAAA,cAE3BC,wBAAY","ignoreList":[]}
@@ -16,22 +16,24 @@ exports["default"] = void 0;
16
16
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
17
  require("core-js/modules/es.array.slice.js");
18
18
  require("core-js/modules/es.function.name.js");
19
+ require("core-js/modules/es.object.keys.js");
19
20
  var _react = _interopRequireWildcard(require("react"));
20
21
  var _propTypes = _interopRequireDefault(require("prop-types"));
21
22
  var _classnames = _interopRequireDefault(require("classnames"));
22
23
  var _lodash = _interopRequireDefault(require("lodash.debounce"));
23
24
  var _FiltersList = _interopRequireDefault(require("./FiltersList"));
24
- var _helpers = require("../helpers");
25
25
  var _CloseMobileForm = _interopRequireDefault(require("./CloseMobileForm"));
26
26
  var _ResetDesktopForm = _interopRequireDefault(require("./ResetDesktopForm"));
27
27
  var _MobileFormToolbar = _interopRequireDefault(require("./MobileFormToolbar"));
28
+ var _hooks = require("../../../hooks");
29
+ var _helpers = require("../helpers");
28
30
  var _constants = require("../constants");
29
31
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
30
32
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
31
33
  var SearchFilter = function SearchFilter(_ref) {
32
34
  var searchFilterRef = _ref.searchFilterRef,
33
35
  listComponentName = _ref.listComponentName,
34
- data = _ref.data,
36
+ filterData = _ref.data,
35
37
  filters = _ref.filters,
36
38
  hasUrl = _ref.hasUrl,
37
39
  entity = _ref.entity,
@@ -44,6 +46,7 @@ var SearchFilter = function SearchFilter(_ref) {
44
46
  groupAfterMobile = _ref.groupAfterMobile,
45
47
  filterValues = _ref.filterValues,
46
48
  setAppliedFilters = _ref.setAppliedFilters,
49
+ mobileRefineButtonText = _ref.mobileRefineButtonText,
47
50
  query = _ref.query;
48
51
  var _useState = (0, _react.useState)(true),
49
52
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
@@ -53,6 +56,14 @@ var SearchFilter = function SearchFilter(_ref) {
53
56
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
54
57
  moreFiltersDesktopCollapsed = _useState4[0],
55
58
  setMoreFiltersDesktopCollapsed = _useState4[1];
59
+ var _useFilterAggregation = (0, _hooks.useFilterAggregationValues)({
60
+ data: filterData,
61
+ filterValues: filterValues
62
+ }),
63
+ _useFilterAggregation2 = (0, _slicedToArray2["default"])(_useFilterAggregation, 3),
64
+ data = _useFilterAggregation2[0],
65
+ setStateValues = _useFilterAggregation2[1],
66
+ setSelectProp = _useFilterAggregation2[2];
56
67
  var doSubmit = function doSubmit(newValues) {
57
68
  var newQuery = filterValues ? (0, _helpers.buildUrlQuery)(newValues, filters, listComponentName, query) : '';
58
69
  handleSearch(newQuery);
@@ -87,6 +98,10 @@ var SearchFilter = function SearchFilter(_ref) {
87
98
  doSubmit();
88
99
  };
89
100
  var updateFilterValues = function updateFilterValues(newValues, shouldSubmit) {
101
+ var _Object$keys = Object.keys(newValues),
102
+ _Object$keys2 = (0, _slicedToArray2["default"])(_Object$keys, 1),
103
+ lastChangedFilter = _Object$keys2[0];
104
+ setSelectProp(lastChangedFilter);
90
105
  setAppliedFilters({
91
106
  newValues: newValues,
92
107
  shouldSearch: shouldSubmit,
@@ -102,6 +117,7 @@ var SearchFilter = function SearchFilter(_ref) {
102
117
  onSubmit: function onSubmit(e) {
103
118
  e.preventDefault();
104
119
  doSubmit(filterValues);
120
+ setStateValues(filterData);
105
121
  }
106
122
  }, displaySearchFilter && /*#__PURE__*/_react["default"].createElement(_CloseMobileForm["default"], {
107
123
  handleClose: function handleClose() {
@@ -197,7 +213,7 @@ var SearchFilter = function SearchFilter(_ref) {
197
213
  onClick: function onClick() {
198
214
  return setDisplaySearchFilter(true);
199
215
  }
200
- }, _constants.REFINE)));
216
+ }, mobileRefineButtonText || _constants.REFINE)));
201
217
  };
202
218
  SearchFilter.propTypes = {
203
219
  data: _propTypes["default"].object.isRequired,
@@ -215,9 +231,11 @@ SearchFilter.propTypes = {
215
231
  filterValues: _propTypes["default"].object.isRequired,
216
232
  setAppliedFilters: _propTypes["default"].func.isRequired,
217
233
  listComponentName: _propTypes["default"].string,
218
- query: _propTypes["default"].object
234
+ query: _propTypes["default"].object,
235
+ mobileRefineButtonText: _propTypes["default"].string
219
236
  };
220
237
  SearchFilter.defaultProps = {
238
+ mobileRefineButtonText: '',
221
239
  listComponentName: '',
222
240
  query: {}
223
241
  };
@@ -1 +1 @@
1
- {"version":3,"file":"SearchFilter.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_classnames","_lodash","_FiltersList","_helpers","_CloseMobileForm","_ResetDesktopForm","_MobileFormToolbar","_constants","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","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","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 aria-label={\n moreFiltersDesktopCollapsed\n ? 'Show more search filters'\n : 'Show less search filters'\n }\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 {!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\n className=\"filter__refine filter__refine--mobile-close\"\n data-testid=\"refine-mobile\"\n aria-label=\"Toggle Search Filter\">\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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","ignoreList":[]}
1
+ {"version":3,"file":"SearchFilter.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_classnames","_lodash","_FiltersList","_CloseMobileForm","_ResetDesktopForm","_MobileFormToolbar","_hooks","_helpers","_constants","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","SearchFilter","_ref","searchFilterRef","listComponentName","filterData","data","filters","hasUrl","entity","handleSearch","name","isCollapsedOnResponsive","displaySearchFilter","setDisplaySearchFilter","groupAfterDesktop","groupAfterMobile","filterValues","setAppliedFilters","mobileRefineButtonText","query","_useState","useState","_useState2","_slicedToArray2","moreFiltersMobileCollapsed","setMoreFiltersMobileCollapsed","_useState3","_useState4","moreFiltersDesktopCollapsed","setMoreFiltersDesktopCollapsed","_useFilterAggregation","useFilterAggregationValues","_useFilterAggregation2","setStateValues","setSelectProp","doSubmit","newValues","newQuery","buildUrlQuery","handleSubmit","debounce","useEffect","shouldSearch","type","formClass","classnames","_getResponsiveFilterC","getResponsiveFilterClassnames","moreFiltersMobileWrapperClass","moreFiltersMobileTogglerClass","moreFiltersDesktopWrapperClass","moreFiltersDesktopTogglerClass","formId","concat","handleReset","updateFilterValues","shouldSubmit","_Object$keys","keys","_Object$keys2","lastChangedFilter","shouldGroup","createElement","Fragment","ref","className","id","onSubmit","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 CloseMobileForm from './CloseMobileForm';\nimport ResetDesktopForm from './ResetDesktopForm';\nimport MobileFormToolbar from './MobileFormToolbar';\nimport { useFilterAggregationValues } from '../../../hooks';\nimport { isDeviceDesktop, getResponsiveFilterClassnames, buildUrlQuery } from '../helpers';\nimport { SEARCH, REFINE, MORE_FILTERS_CLASSES } from '../constants';\n\nconst SearchFilter = ({\n searchFilterRef,\n listComponentName,\n data: filterData,\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 mobileRefineButtonText,\n query\n}) => {\n const [moreFiltersMobileCollapsed, setMoreFiltersMobileCollapsed] = useState(true);\n const [moreFiltersDesktopCollapsed, setMoreFiltersDesktopCollapsed] = useState(true);\n\n const [data, setStateValues, setSelectProp] = useFilterAggregationValues({\n data: filterData,\n filterValues\n });\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 const [lastChangedFilter] = Object.keys(newValues);\n setSelectProp(lastChangedFilter);\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 setStateValues(filterData);\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 aria-label={\n moreFiltersDesktopCollapsed\n ? 'Show more search filters'\n : 'Show less search filters'\n }\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 {!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\n className=\"filter__refine filter__refine--mobile-close\"\n data-testid=\"refine-mobile\"\n aria-label=\"Toggle Search Filter\">\n <div role=\"button\" onClick={() => setDisplaySearchFilter(true)}>\n {mobileRefineButtonText || 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 mobileRefineButtonText: PropTypes.string\n};\n\nSearchFilter.defaultProps = {\n mobileRefineButtonText: '',\n listComponentName: '',\n query: {}\n};\n\nexport default SearchFilter;\n"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@
3
3
  require("core-js/modules/es.array.iterator.js");
4
4
  require("core-js/modules/es.object.define-property.js");
5
5
  require("core-js/modules/es.object.get-own-property-descriptor.js");
6
+ require("core-js/modules/es.object.to-string.js");
6
7
  require("core-js/modules/es.string.iterator.js");
7
8
  require("core-js/modules/es.weak-map.js");
8
9
  require("core-js/modules/web.dom-collections.iterator.js");
@@ -14,16 +15,10 @@ Object.defineProperty(exports, "__esModule", {
14
15
  exports["default"] = void 0;
15
16
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
16
17
  require("core-js/modules/es.array.concat.js");
17
- require("core-js/modules/es.array.for-each.js");
18
- require("core-js/modules/es.array.index-of.js");
19
- require("core-js/modules/es.array.is-array.js");
20
- require("core-js/modules/es.array.map.js");
21
18
  require("core-js/modules/es.date.now.js");
22
19
  require("core-js/modules/es.date.to-string.js");
23
20
  require("core-js/modules/es.function.name.js");
24
21
  require("core-js/modules/es.object.keys.js");
25
- require("core-js/modules/es.object.to-string.js");
26
- require("core-js/modules/web.dom-collections.for-each.js");
27
22
  var _react = _interopRequireWildcard(require("react"));
28
23
  var _nextjsComponents = require("@blaze-cms/nextjs-components");
29
24
  var _router = require("next/router");
@@ -41,21 +36,6 @@ var _searchFilterReducer = _interopRequireDefault(require("./searchFilterReducer
41
36
  var _hooks = require("../../hooks");
42
37
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
43
38
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
44
- var getFiltersUrlQuery = function getFiltersUrlQuery(query, listName) {
45
- if (!listName) return query;
46
- var updatedQuery = {};
47
- var listKey = "pb[".concat(listName, "]");
48
- Object.keys(query).forEach(function (queryKey) {
49
- var isListKey = queryKey.indexOf("".concat(listName)) !== -1;
50
- if (!isListKey) return;
51
- var decodedQueryValue = Array.isArray(query[queryKey]) ? query[queryKey].map(function (value) {
52
- return decodeURIComponent(value);
53
- }) : decodeURIComponent(query[queryKey]);
54
- var strippedKey = queryKey.substring(listKey.length + 1, queryKey.length - 1);
55
- if (isListKey) updatedQuery[strippedKey] = decodedQueryValue;
56
- });
57
- return updatedQuery;
58
- };
59
39
  var SearchFilterContainer = function SearchFilterContainer(_ref) {
60
40
  var entity = _ref.entity,
61
41
  url = _ref.url,
@@ -68,7 +48,8 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
68
48
  filterByProperty = _ref.filterByProperty,
69
49
  shouldAddFilters = _ref.shouldAddFilters,
70
50
  listComponentName = _ref.listComponentName,
71
- parent = _ref.parent;
51
+ parent = _ref.parent,
52
+ mobileRefineButtonText = _ref.mobileRefineButtonText;
72
53
  var _useContext = (0, _react.useContext)(_nextjsComponents.MainContext),
73
54
  isPreview = _useContext.isPreview;
74
55
  var router = (0, _router.useRouter)();
@@ -93,12 +74,23 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
93
74
  var _parseUrl = (0, _queryString.parseUrl)(urlPath),
94
75
  currentUrl = _parseUrl.url,
95
76
  query = _parseUrl.query;
96
- var updatedQuery = getFiltersUrlQuery(query, listComponentName);
77
+ var updatedQuery = (0, _helpers.buildListNameQuery)(query, listComponentName);
97
78
  var parentId = parent.itemId,
98
79
  parentEntity = parent.itemEntity;
99
80
  (0, _react.useEffect)(function () {
100
- if (asPath) setUrlPath(asPath);
101
- }, [asPath]);
81
+ var _parseUrl2 = (0, _queryString.parseUrl)(asPath),
82
+ newQuery = _parseUrl2.query;
83
+ var updatedNewQuery = (0, _helpers.buildListNameQuery)(newQuery, listComponentName);
84
+ var newValues = (0, _helpers.getFilterValues)({}, filters, updatedNewQuery);
85
+ if (newValues) dispatch({
86
+ newValues: newValues,
87
+ shouldSearch: false,
88
+ type: 'update'
89
+ });
90
+ setUrlPath(asPath);
91
+ },
92
+ // eslint-disable-next-line react-hooks/exhaustive-deps
93
+ [asPath]);
102
94
  var _useGetEntitySchemasA = (0, _hooks.useGetEntitySchemasAsObj)([parentEntity, entity]),
103
95
  _useGetEntitySchemasA2 = _useGetEntitySchemasA.data,
104
96
  mainSchemas = _useGetEntitySchemasA2 === void 0 ? {} : _useGetEntitySchemasA2,
@@ -224,10 +216,12 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
224
216
  displaySearchFilter: displaySearchFilter,
225
217
  setDisplaySearchFilter: setDisplaySearchFilter,
226
218
  groupAfterMobile: groupAfterMobile,
227
- groupAfterDesktop: groupAfterDesktop
219
+ groupAfterDesktop: groupAfterDesktop,
220
+ mobileRefineButtonText: mobileRefineButtonText
228
221
  });
229
222
  };
230
223
  SearchFilterContainer.propTypes = {
224
+ mobileRefineButtonText: _propTypes["default"].string,
231
225
  entity: _propTypes["default"].string,
232
226
  url: _propTypes["default"].string,
233
227
  filters: _propTypes["default"].array,
@@ -252,7 +246,8 @@ SearchFilterContainer.defaultProps = {
252
246
  filterByProperty: [],
253
247
  shouldAddFilters: false,
254
248
  listComponentName: '',
255
- parent: {}
249
+ parent: {},
250
+ mobileRefineButtonText: ''
256
251
  };
257
252
  var _default = exports["default"] = (0, _HOC.withTitle)(SearchFilterContainer);
258
253
  //# sourceMappingURL=SearchFilterContainer.js.map