@blaze-cms/react-page-builder 0.124.0 → 0.124.1-alpha.1

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 (211) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/lib/BannerContext/index.js.map +1 -1
  3. package/lib/HOC/withInfiniteScroll.js.map +1 -1
  4. package/lib/HOC/withTitle.js.map +1 -1
  5. package/lib/PBContext/index.js.map +1 -1
  6. package/lib/application/query/index.js.map +1 -1
  7. package/lib/components/BackToTop/BackToTop.js.map +1 -1
  8. package/lib/components/Banner/AdSlotRender.js.map +1 -1
  9. package/lib/components/Banner/Banner.js.map +1 -1
  10. package/lib/components/Banner/BannerRender.js.map +1 -1
  11. package/lib/components/Banner/helpers.js.map +1 -1
  12. package/lib/components/Banner/index.js.map +1 -1
  13. package/lib/components/BlazeLink.js.map +1 -1
  14. package/lib/components/Breadcrumb/Breadcrumb.js.map +1 -1
  15. package/lib/components/Button.js.map +1 -1
  16. package/lib/components/Card/Card.js.map +1 -1
  17. package/lib/components/Card/CardContainer.js.map +1 -1
  18. package/lib/components/Card/CardFactory.js.map +1 -1
  19. package/lib/components/Card/CardRender.js.map +1 -1
  20. package/lib/components/Card/helpers/filter-query-setup.js.map +1 -1
  21. package/lib/components/Card/helpers/filters-setup.js.map +1 -1
  22. package/lib/components/Card/helpers/get-dynamic-grid-classes.js.map +1 -1
  23. package/lib/components/Carousel/Carousel.js.map +1 -1
  24. package/lib/components/Carousel/CarouselImage/CarouselImage.js.map +1 -1
  25. package/lib/components/Carousel/CarouselRender/CarouselRender.js.map +1 -1
  26. package/lib/components/CarouselWrapper.js.map +1 -1
  27. package/lib/components/ClickWrapper.js.map +1 -1
  28. package/lib/components/Code/Code.js.map +1 -1
  29. package/lib/components/Code/ScriptTag.js.map +1 -1
  30. package/lib/components/Code/helpers/wrap-script-tags.js.map +1 -1
  31. package/lib/components/DataSummary/DataSummaryFactory.js.map +1 -1
  32. package/lib/components/DataSummary/DataSummaryRender.js.map +1 -1
  33. package/lib/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/HeadingLargeSummary.js.map +1 -1
  34. package/lib/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/HeadingLargeSummaryContent.js.map +1 -1
  35. package/lib/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/ItemDetailsSummary.js.map +1 -1
  36. package/lib/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/ItemDetailsSummaryContent.js.map +1 -1
  37. package/lib/components/DataSummary/DataSummaryTypes/LargeSummary/LargeSummary.js.map +1 -1
  38. package/lib/components/DataSummary/DataSummaryTypes/LargeSummary/LargeSummaryContent.js.map +1 -1
  39. package/lib/components/DataSummary/DataSummaryTypes/ListSummary/ListSummary.js.map +1 -1
  40. package/lib/components/DataSummary/DataSummaryTypes/ListSummary/ListSummaryContent.js.map +1 -1
  41. package/lib/components/DataSummary/DataSummaryTypes/TextSummary/TextSummary.js.map +1 -1
  42. package/lib/components/DataSummary/DataSummaryTypes/TextSummary/TextSummaryContent.js.map +1 -1
  43. package/lib/components/DataSummary/DataSummaryTypes/index.js.map +1 -1
  44. package/lib/components/DataSummary/helpers/build-loop-props-content.js.map +1 -1
  45. package/lib/components/DataSummary/helpers/build-props-to-display-with-content.js.map +1 -1
  46. package/lib/components/DataSummary/helpers/get-data-summary-query.js.map +1 -1
  47. package/lib/components/DataSummary/helpers/get-link-based-on-value.js.map +1 -1
  48. package/lib/components/DataSummary/helpers/get-prop-value.js.map +1 -1
  49. package/lib/components/DataSummary/helpers/get-value-from-array.js.map +1 -1
  50. package/lib/components/DataSummary/helpers/strip-summary-props-content.js.map +1 -1
  51. package/lib/components/EmailConfirm/EmailConfirm.js.map +1 -1
  52. package/lib/components/Image/GlobalLightbox/GlobalLightbox.js.map +1 -1
  53. package/lib/components/Image/GlobalLightbox/NavButton.js.map +1 -1
  54. package/lib/components/Image/GlobalLightbox/index.js.map +1 -1
  55. package/lib/components/Image/Image.js.map +1 -1
  56. package/lib/components/Image/ImageDetails.js.map +1 -1
  57. package/lib/components/Image/ImageFactory.js.map +1 -1
  58. package/lib/components/Image/ImageRender.js.map +1 -1
  59. package/lib/components/Image/Lightbox/Lightbox.js.map +1 -1
  60. package/lib/components/ItemList/ItemListButton/ItemListButton.js.map +1 -1
  61. package/lib/components/ItemList/ItemListCounter/ItemListCounter.js.map +1 -1
  62. package/lib/components/ItemList/ItemListNew/ItemListNew.js.map +1 -1
  63. package/lib/components/ItemList/helpers/get-item-list-ids.js.map +1 -1
  64. package/lib/components/ItemList/hooks/use-item-list-id.js.map +1 -1
  65. package/lib/components/Layout/Layout.js.map +1 -1
  66. package/lib/components/Layout/helpers/check-if-row-has-columns.js.map +1 -1
  67. package/lib/components/LazyImage/LazyImage.js.map +1 -1
  68. package/lib/components/LazyImage/index.js.map +1 -1
  69. package/lib/components/List/ListBuilder.js.map +1 -1
  70. package/lib/components/List/ListFactory.js.map +1 -1
  71. package/lib/components/List/ListRender.js.map +1 -1
  72. package/lib/components/List/components/Cards/CardRenderWithInfiniteScroll.js.map +1 -1
  73. package/lib/components/List/components/Cards/CardsRender.js.map +1 -1
  74. package/lib/components/List/components/Cards/CardsRenderItem.js.map +1 -1
  75. package/lib/components/List/components/Cards/CardsRenderWrapper.js.map +1 -1
  76. package/lib/components/List/components/Full/FullRender.js.map +1 -1
  77. package/lib/components/List/components/Full/FullRenderItem.js.map +1 -1
  78. package/lib/components/List/components/Full/FullRenderWithInfiniteScroll.js.map +1 -1
  79. package/lib/components/List/components/Header/ListHeader.js.map +1 -1
  80. package/lib/components/List/components/Pagination/Classic.js.map +1 -1
  81. package/lib/components/List/components/Pagination/ListPagination.js.map +1 -1
  82. package/lib/components/List/components/Pagination/LoadMore.js.map +1 -1
  83. package/lib/components/List/helpers/build-az-aggregations.js.map +1 -1
  84. package/lib/components/List/helpers/build-az-url.js.map +1 -1
  85. package/lib/components/List/helpers/build-pagination-items.js.map +1 -1
  86. package/lib/components/List/helpers/build-pagination-url.js.map +1 -1
  87. package/lib/components/List/helpers/has-required-item-list-details.js.map +1 -1
  88. package/lib/components/Login/LoggedInMessage.js.map +1 -1
  89. package/lib/components/Login/Login.js.map +1 -1
  90. package/lib/components/Login/LoginForm.js.map +1 -1
  91. package/lib/components/Menu/Menu.js.map +1 -1
  92. package/lib/components/Menu/MenuContext.js.map +1 -1
  93. package/lib/components/MenuItem/MenuItem.js.map +1 -1
  94. package/lib/components/Modal/Modal.js.map +1 -1
  95. package/lib/components/PasswordReset/PasswordReset.js.map +1 -1
  96. package/lib/components/PasswordReset/helpers/validatePassword.js.map +1 -1
  97. package/lib/components/PasswordResetRequest/PasswordResetRequest.js.map +1 -1
  98. package/lib/components/SearchContent/SearchContent.js.map +1 -1
  99. package/lib/components/SearchFilter/SearchFilter/CloseMobileForm.js.map +1 -1
  100. package/lib/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
  101. package/lib/components/SearchFilter/SearchFilter/MobileFormToolbar.js.map +1 -1
  102. package/lib/components/SearchFilter/SearchFilter/ResetDesktopForm.js.map +1 -1
  103. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  104. package/lib/components/SearchFilter/SearchFilterContainer.js +1 -1
  105. package/lib/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  106. package/lib/components/SearchFilter/components/Checkbox.js.map +1 -1
  107. package/lib/components/SearchFilter/components/Range.js +23 -6
  108. package/lib/components/SearchFilter/components/Range.js.map +1 -1
  109. package/lib/components/SearchFilter/components/Select.js.map +1 -1
  110. package/lib/components/SearchFilter/components/TextSearch.js.map +1 -1
  111. package/lib/components/SearchFilter/helpers/build-filters-query.js +28 -5
  112. package/lib/components/SearchFilter/helpers/build-filters-query.js.map +1 -1
  113. package/lib/components/SearchFilter/helpers/build-query.js.map +1 -1
  114. package/lib/components/SearchFilter/helpers/build-raw-query-stringified.js +16 -10
  115. package/lib/components/SearchFilter/helpers/build-raw-query-stringified.js.map +1 -1
  116. package/lib/components/SearchFilter/helpers/calculate-min-max.js.map +1 -1
  117. package/lib/components/SearchFilter/helpers/check-if-range-updated.js.map +1 -1
  118. package/lib/components/SearchFilter/helpers/get-filter-value-from-query.js.map +1 -1
  119. package/lib/components/SearchFilter/helpers/get-initial-filter-values.js +6 -6
  120. package/lib/components/SearchFilter/helpers/get-initial-filter-values.js.map +1 -1
  121. package/lib/components/SearchFilter/helpers/get-intersected-prop.js.map +1 -1
  122. package/lib/components/SearchFilter/helpers/get-range-value.js +4 -2
  123. package/lib/components/SearchFilter/helpers/get-range-value.js.map +1 -1
  124. package/lib/components/SearchFilter/helpers/get-responsive-filter-classnames.js.map +1 -1
  125. package/lib/components/SearchFilter/helpers/get-select-options.js.map +1 -1
  126. package/lib/components/SearchFilterSort/SearchFilterSort.js.map +1 -1
  127. package/lib/components/SearchFilterSort/helpers/handle-sort-update.js.map +1 -1
  128. package/lib/components/SearchFilterSort/helpers/update-sort.js.map +1 -1
  129. package/lib/components/SocialFollow/SFItem.js.map +1 -1
  130. package/lib/components/SocialFollow/SocialFollow.js.map +1 -1
  131. package/lib/components/SocialFollow/SocialFollowRender.js.map +1 -1
  132. package/lib/components/SubMenu/SubMenu.js.map +1 -1
  133. package/lib/components/TextBlock/TextBlockRender.js.map +1 -1
  134. package/lib/components/TextBlock/index.js.map +1 -1
  135. package/lib/components/Video/Video.js.map +1 -1
  136. package/lib/components/Video/VideoModal.js.map +1 -1
  137. package/lib/components/Video/VideoRender.js.map +1 -1
  138. package/lib/components/Video/providers/Default.js.map +1 -1
  139. package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
  140. package/lib/components/Video/providers/YouTube/YouTubeProvider.js.map +1 -1
  141. package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
  142. package/lib/components/Video/providers/get-provider.js.map +1 -1
  143. package/lib/components/Wrapper.js.map +1 -1
  144. package/lib/components/index.js.map +1 -1
  145. package/lib/helpers/build-inherited-filters.js.map +1 -1
  146. package/lib/helpers/build-raw-query-base.js.map +1 -1
  147. package/lib/helpers/build-raw-query.js.map +1 -1
  148. package/lib/helpers/build-search-values-checkbox-select.js.map +1 -1
  149. package/lib/helpers/check-props-to-use.js.map +1 -1
  150. package/lib/helpers/get-entities-with-banner.js.map +1 -1
  151. package/lib/helpers/get-entity-data.js.map +1 -1
  152. package/lib/helpers/get-entity-render-props.js.map +1 -1
  153. package/lib/helpers/get-filter-props.js.map +1 -1
  154. package/lib/helpers/get-generic-props.js.map +1 -1
  155. package/lib/helpers/get-generic-render-variables.js.map +1 -1
  156. package/lib/helpers/get-image-ids.js.map +1 -1
  157. package/lib/helpers/get-parsed-prop-values.js.map +1 -1
  158. package/lib/helpers/get-prop-values.js.map +1 -1
  159. package/lib/helpers/get-query-filters.js.map +1 -1
  160. package/lib/helpers/get-query-props.js.map +1 -1
  161. package/lib/helpers/get-updated-filter-by.js.map +1 -1
  162. package/lib/helpers/inject-banner.js.map +1 -1
  163. package/lib/helpers/inject-banners-to-entities.js.map +1 -1
  164. package/lib/helpers/inject-multiple-banners/get-banners-for-entities/get-banners-for-entities.js.map +1 -1
  165. package/lib/helpers/inject-multiple-banners/get-banners-for-nodes/get-banners-for-nodes.js.map +1 -1
  166. package/lib/helpers/inject-multiple-banners/get-banners-for-nodes/helpers/group-node-entities.js.map +1 -1
  167. package/lib/helpers/inject-multiple-banners/inject-multiple-banners.js.map +1 -1
  168. package/lib/helpers/is-filter-entitys-id.js.map +1 -1
  169. package/lib/helpers/parse-TextBlock.js.map +1 -1
  170. package/lib/helpers/parse-props-to-display.js.map +1 -1
  171. package/lib/helpers/render-children.js.map +1 -1
  172. package/lib/helpers/sort-response-data.js.map +1 -1
  173. package/lib/hooks/helpers/RenderComponent.js.map +1 -1
  174. package/lib/hooks/helpers/buildPBComponents.js.map +1 -1
  175. package/lib/hooks/helpers/getComponent.js.map +1 -1
  176. package/lib/hooks/helpers/inject-element-banners.js.map +1 -1
  177. package/lib/hooks/helpers/inject-textblock-banners.js.map +1 -1
  178. package/lib/hooks/helpers/insert-banners.js.map +1 -1
  179. package/lib/hooks/helpers/update-targetings.js.map +1 -1
  180. package/lib/hooks/use-banner-insertion.js.map +1 -1
  181. package/lib/hooks/use-check-mobile-screen.js.map +1 -1
  182. package/lib/hooks/use-get-entity-schema.js.map +1 -1
  183. package/lib/hooks/use-get-entity-schemas-as-obj.js.map +1 -1
  184. package/lib/hooks/use-get-image-id-from-relation.js.map +1 -1
  185. package/lib/hooks/use-get-images.js.map +1 -1
  186. package/lib/hooks/use-get-single-entity-schema.js.map +1 -1
  187. package/lib/hooks/use-page-builder.js.map +1 -1
  188. package/lib/utils/get-class-modifiers.js.map +1 -1
  189. package/lib/utils/get-image-data.js.map +1 -1
  190. package/lib-es/components/SearchFilter/SearchFilterContainer.js +1 -1
  191. package/lib-es/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  192. package/lib-es/components/SearchFilter/components/Range.js +19 -6
  193. package/lib-es/components/SearchFilter/components/Range.js.map +1 -1
  194. package/lib-es/components/SearchFilter/helpers/build-filters-query.js +24 -5
  195. package/lib-es/components/SearchFilter/helpers/build-filters-query.js.map +1 -1
  196. package/lib-es/components/SearchFilter/helpers/build-raw-query-stringified.js +15 -10
  197. package/lib-es/components/SearchFilter/helpers/build-raw-query-stringified.js.map +1 -1
  198. package/lib-es/components/SearchFilter/helpers/get-initial-filter-values.js +5 -4
  199. package/lib-es/components/SearchFilter/helpers/get-initial-filter-values.js.map +1 -1
  200. package/lib-es/components/SearchFilter/helpers/get-range-value.js +2 -2
  201. package/lib-es/components/SearchFilter/helpers/get-range-value.js.map +1 -1
  202. package/package.json +2 -2
  203. package/src/components/SearchFilter/SearchFilterContainer.js +1 -1
  204. package/src/components/SearchFilter/components/Range.js +11 -5
  205. package/src/components/SearchFilter/helpers/build-filters-query.js +25 -5
  206. package/src/components/SearchFilter/helpers/build-raw-query-stringified.js +17 -12
  207. package/src/components/SearchFilter/helpers/get-initial-filter-values.js +5 -2
  208. package/src/components/SearchFilter/helpers/get-range-value.js +2 -2
  209. package/tests/unit/src/components/SearchFilter/components/Range.test.js +24 -0
  210. package/tests/unit/src/components/SearchFilter/components/__snapshots__/Range.test.js.snap +3 -3
  211. package/tests/unit/src/components/SearchFilter/helpers/get-initial-filter-values.test.js +8 -2
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.js","names":["Checkbox","data","prop","updateFilterValues","filterValues","label","shouldSearch","displayFilterCount","checkboxLimit","setCheckboxLimit","handleCheckboxOptions","LIMIT_MIN","LIMIT_MAX","checkboxQueryParams","map","val","multiple","sortedValues","buckets","key","count","doc_count","optionLabel","filter","Boolean","sort","forEach","value","i","push","name","checked","includes","id","disabled","shouldDisplayMore","eData","newCheckboxValues","length","MORE","LESS","propTypes","PropTypes","object","isRequired","string","func","bool","defaultProps"],"sources":["../../../../src/components/SearchFilter/components/Checkbox.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport upperFirst from 'lodash.upperfirst';\nimport { Checkboxes } from '@blaze-react/checkboxes';\nimport { FaChevronDown, FaChevronUp } from 'react-icons/fa';\nimport { withTitle } from '../../../HOC';\nimport { decodeValue } from '../helpers';\nimport { LIMIT_MIN, LIMIT_MAX, MORE, LESS } from '../constants';\n\nconst Checkbox = ({\n data,\n prop,\n updateFilterValues,\n filterValues,\n label,\n shouldSearch,\n displayFilterCount\n}) => {\n const [checkboxLimit, setCheckboxLimit] = useState(null);\n if (!data[prop]) return null;\n\n const handleCheckboxOptions = () => {\n if (checkboxLimit[prop] === LIMIT_MIN) {\n setCheckboxLimit({ [prop]: LIMIT_MAX });\n } else {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n };\n\n if (!checkboxLimit) {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n\n if (!checkboxLimit) return null;\n\n let checkboxQueryParams = [];\n\n if (filterValues && filterValues[prop]) {\n checkboxQueryParams =\n typeof filterValues[prop] === 'string'\n ? [decodeValue(filterValues[prop])]\n : filterValues[prop].map(val => decodeValue(val));\n }\n const multiple = [];\n\n const sortedValues = data[prop].buckets\n .map(({ key, doc_count: count }) => {\n const optionLabel = displayFilterCount ? `${key} (${count})` : key;\n return [key, optionLabel, !count];\n })\n .filter(Boolean)\n .sort();\n\n sortedValues.forEach(\n (value, i) =>\n i < checkboxLimit[prop] &&\n multiple.push({\n label: upperFirst(value[1]),\n value: value[0],\n name: prop,\n checked: checkboxQueryParams.includes(value[0]),\n id: value[0],\n disabled: value[2]\n })\n );\n\n const shouldDisplayMore = !checkboxLimit || checkboxLimit[prop] === LIMIT_MIN;\n\n return (\n <>\n {label ? <p>{label}</p> : ''}\n <Checkboxes\n className=\"form-checkbox\"\n options={multiple}\n onChange={({ data: eData }) => {\n const newCheckboxValues = eData\n .filter(({ checked }) => checked)\n .map(({ value }) => value);\n updateFilterValues({ [prop]: newCheckboxValues }, shouldSearch);\n }}\n />\n {data[prop].buckets.length > LIMIT_MIN && (\n <div role=\"button\" className=\"see-more\" onClick={handleCheckboxOptions}>\n {shouldDisplayMore ? (\n <>\n <i>\n <FaChevronDown className=\"inline-icon\" />\n </i>\n {` See ${MORE}`}\n </>\n ) : (\n <>\n <i>\n <FaChevronUp className=\"inline-icon\" />\n </i>\n {` See ${LESS}`}\n </>\n )}\n </div>\n )}\n </>\n );\n};\n\nCheckbox.propTypes = {\n data: PropTypes.object.isRequired,\n prop: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n label: PropTypes.string,\n displayFilterCount: PropTypes.bool\n};\n\nCheckbox.defaultProps = {\n shouldSearch: false,\n label: '',\n displayFilterCount: false\n};\n\nexport default withTitle(Checkbox);\n"],"mappings":"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"}
1
+ {"version":3,"file":"Checkbox.js","names":["Checkbox","data","prop","updateFilterValues","filterValues","label","shouldSearch","displayFilterCount","useState","checkboxLimit","setCheckboxLimit","handleCheckboxOptions","LIMIT_MIN","LIMIT_MAX","checkboxQueryParams","decodeValue","map","val","multiple","sortedValues","buckets","key","count","doc_count","optionLabel","filter","Boolean","sort","forEach","value","i","push","upperFirst","name","checked","includes","id","disabled","shouldDisplayMore","eData","newCheckboxValues","length","MORE","LESS","propTypes","PropTypes","object","isRequired","string","func","bool","defaultProps","withTitle"],"sources":["../../../../src/components/SearchFilter/components/Checkbox.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport upperFirst from 'lodash.upperfirst';\nimport { Checkboxes } from '@blaze-react/checkboxes';\nimport { FaChevronDown, FaChevronUp } from 'react-icons/fa';\nimport { withTitle } from '../../../HOC';\nimport { decodeValue } from '../helpers';\nimport { LIMIT_MIN, LIMIT_MAX, MORE, LESS } from '../constants';\n\nconst Checkbox = ({\n data,\n prop,\n updateFilterValues,\n filterValues,\n label,\n shouldSearch,\n displayFilterCount\n}) => {\n const [checkboxLimit, setCheckboxLimit] = useState(null);\n if (!data[prop]) return null;\n\n const handleCheckboxOptions = () => {\n if (checkboxLimit[prop] === LIMIT_MIN) {\n setCheckboxLimit({ [prop]: LIMIT_MAX });\n } else {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n };\n\n if (!checkboxLimit) {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n\n if (!checkboxLimit) return null;\n\n let checkboxQueryParams = [];\n\n if (filterValues && filterValues[prop]) {\n checkboxQueryParams =\n typeof filterValues[prop] === 'string'\n ? [decodeValue(filterValues[prop])]\n : filterValues[prop].map(val => decodeValue(val));\n }\n const multiple = [];\n\n const sortedValues = data[prop].buckets\n .map(({ key, doc_count: count }) => {\n const optionLabel = displayFilterCount ? `${key} (${count})` : key;\n return [key, optionLabel, !count];\n })\n .filter(Boolean)\n .sort();\n\n sortedValues.forEach(\n (value, i) =>\n i < checkboxLimit[prop] &&\n multiple.push({\n label: upperFirst(value[1]),\n value: value[0],\n name: prop,\n checked: checkboxQueryParams.includes(value[0]),\n id: value[0],\n disabled: value[2]\n })\n );\n\n const shouldDisplayMore = !checkboxLimit || checkboxLimit[prop] === LIMIT_MIN;\n\n return (\n <>\n {label ? <p>{label}</p> : ''}\n <Checkboxes\n className=\"form-checkbox\"\n options={multiple}\n onChange={({ data: eData }) => {\n const newCheckboxValues = eData\n .filter(({ checked }) => checked)\n .map(({ value }) => value);\n updateFilterValues({ [prop]: newCheckboxValues }, shouldSearch);\n }}\n />\n {data[prop].buckets.length > LIMIT_MIN && (\n <div role=\"button\" className=\"see-more\" onClick={handleCheckboxOptions}>\n {shouldDisplayMore ? (\n <>\n <i>\n <FaChevronDown className=\"inline-icon\" />\n </i>\n {` See ${MORE}`}\n </>\n ) : (\n <>\n <i>\n <FaChevronUp className=\"inline-icon\" />\n </i>\n {` See ${LESS}`}\n </>\n )}\n </div>\n )}\n </>\n );\n};\n\nCheckbox.propTypes = {\n data: PropTypes.object.isRequired,\n prop: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n label: PropTypes.string,\n displayFilterCount: PropTypes.bool\n};\n\nCheckbox.defaultProps = {\n shouldSearch: false,\n label: '',\n displayFilterCount: false\n};\n\nexport default withTitle(Checkbox);\n"],"mappings":"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"}
@@ -27,6 +27,8 @@ require("core-js/modules/es.object.to-string.js");
27
27
 
28
28
  require("core-js/modules/web.dom-collections.for-each.js");
29
29
 
30
+ require("core-js/modules/es.array.concat.js");
31
+
30
32
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
31
33
 
32
34
  var _react = _interopRequireDefault(require("react"));
@@ -60,6 +62,7 @@ var Range = function Range(_ref) {
60
62
  label = _ref.label,
61
63
  entity = _ref.entity,
62
64
  propsToDisplay = _ref.propsToDisplay,
65
+ dataAggregations = _ref.dataAggregations,
63
66
  updateFilterValues = _ref.updateFilterValues,
64
67
  filterValues = _ref.filterValues,
65
68
  shouldSearch = _ref.shouldSearch;
@@ -82,10 +85,23 @@ var Range = function Range(_ref) {
82
85
  getEntitySchema = _useGetSingleEntitySc3 === void 0 ? {} : _useGetSingleEntitySc3,
83
86
  loading = _useGetSingleEntitySc.loading;
84
87
  if (loading || !rangeOption || !rangeValue) return '';
85
- var options = (0, _helpers.getSelectOptions)(getEntitySchema, propsToDisplay);
86
- var min = rangeValue.min,
87
- max = rangeValue.max;
88
+ var options = (0, _helpers.getSelectOptions)(getEntitySchema, propsToDisplay); // get range from aggregations so it updates
89
+
90
+ var _calculateMinMax = (0, _helpers.calculateMinMax)(dataAggregations[rangeOption], rangeInterval),
91
+ min = _calculateMinMax.min,
92
+ max = _calculateMinMax.max;
93
+
88
94
  var shouldShowRange = rangeOption && min !== max;
95
+ var minValue = rangeValue.minValue < min ? min : rangeValue.minValue;
96
+ var maxValue = rangeValue.maxValue > max ? max : rangeValue.maxValue;
97
+
98
+ var valueToUse = _objectSpread(_objectSpread({}, rangeValue), {}, {
99
+ min: min,
100
+ max: max,
101
+ minValue: minValue,
102
+ maxValue: maxValue
103
+ });
104
+
89
105
  var handleChange = (0, _lodash["default"])(function (option, value) {
90
106
  updateFilterValues((0, _defineProperty2["default"])({}, option, _objectSpread(_objectSpread({}, value), {}, {
91
107
  selectedOption: rangeOption
@@ -111,10 +127,10 @@ var Range = function Range(_ref) {
111
127
  updateFilterValues(updatedOptions, false);
112
128
  }
113
129
  })), shouldShowRange && /*#__PURE__*/_react["default"].createElement(_rangeFilter["default"], {
114
- key: rangeOption,
130
+ key: "".concat(rangeOption, "-").concat(minValue, "-").concat(maxValue),
115
131
  name: rangeOption,
116
132
  label: hasMultipleOptions ? '' : label,
117
- value: rangeValue,
133
+ value: valueToUse,
118
134
  id: rangeOption,
119
135
  onChange: function onChange(_ref3) {
120
136
  var value = _ref3.value;
@@ -130,7 +146,8 @@ Range.propTypes = {
130
146
  updateFilterValues: _propTypes["default"].func.isRequired,
131
147
  shouldSearch: _propTypes["default"].bool,
132
148
  rangeInterval: _propTypes["default"].number,
133
- label: _propTypes["default"].string
149
+ label: _propTypes["default"].string,
150
+ dataAggregations: _propTypes["default"].object.isRequired
134
151
  };
135
152
  Range.defaultProps = {
136
153
  shouldSearch: false,
@@ -1 +1 @@
1
- {"version":3,"file":"Range.js","names":["Range","rangeInterval","label","entity","propsToDisplay","updateFilterValues","filterValues","shouldSearch","router","debounceAmount","asPath","query","hasMultipleOptions","length","initialRangeOption","rangeOption","selectedOption","rangeValue","data","getEntitySchema","loading","options","min","max","shouldShowRange","handleChange","option","value","updatedOptions","forEach","prop","eMin","eMax","initValue","propTypes","PropTypes","array","isRequired","string","object","func","bool","number","defaultProps"],"sources":["../../../../src/components/SearchFilter/components/Range.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport debounce from 'lodash.debounce';\nimport RangeFilter from '@blaze-react/range-filter';\nimport { useRouter } from 'next/router';\nimport Select from '@blaze-react/select';\nimport { parseUrl } from 'query-string';\nimport { useGetSingleEntitySchema } from '../../../hooks';\nimport { withTitle } from '../../../HOC';\nimport { getSelectOptions, getIntersectedProp, getRangeValue } from '../helpers';\nimport { decodeValue } from '../helpers/decode-encode';\n\nconst Range = ({\n rangeInterval,\n label,\n entity,\n propsToDisplay,\n updateFilterValues,\n filterValues,\n shouldSearch\n}) => {\n const router = useRouter();\n const debounceAmount = shouldSearch ? 1200 : 100;\n const { query } = parseUrl(decodeValue(router.asPath));\n const hasMultipleOptions = propsToDisplay.length > 1;\n const initialRangeOption = getIntersectedProp(query, propsToDisplay) || propsToDisplay[0];\n const rangeOption =\n (filterValues[initialRangeOption] && filterValues[initialRangeOption].selectedOption) ||\n initialRangeOption;\n const rangeValue = filterValues[rangeOption];\n\n const { data: { getEntitySchema = {} } = {}, loading } = useGetSingleEntitySchema(\n entity,\n !hasMultipleOptions\n );\n\n if (loading || !rangeOption || !rangeValue) return '';\n\n const options = getSelectOptions(getEntitySchema, propsToDisplay);\n const { min, max } = rangeValue;\n const shouldShowRange = rangeOption && min !== max;\n\n const handleChange = debounce((option, value) => {\n updateFilterValues({ [option]: { ...value, selectedOption: rangeOption } }, shouldSearch);\n }, debounceAmount);\n\n return (\n <>\n {hasMultipleOptions && (\n <>\n <label>{label}</label>\n <Select\n value={rangeOption}\n id={rangeOption}\n options={options}\n required\n onChange={({ value }) => {\n const updatedOptions = {};\n propsToDisplay.forEach(prop => {\n const { min: eMin, max: eMax } = filterValues[prop];\n const initValue = getRangeValue(null, rangeInterval, eMin, eMax);\n updatedOptions[prop] = { ...initValue, selectedOption: value };\n });\n\n updateFilterValues(updatedOptions, false);\n }}\n />\n </>\n )}\n {shouldShowRange && (\n <RangeFilter\n key={rangeOption}\n name={rangeOption}\n label={hasMultipleOptions ? '' : label}\n value={rangeValue}\n id={rangeOption}\n onChange={({ value }) => {\n handleChange(rangeOption, value);\n }}\n />\n )}\n </>\n );\n};\n\nRange.propTypes = {\n propsToDisplay: PropTypes.array.isRequired,\n entity: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n rangeInterval: PropTypes.number,\n label: PropTypes.string\n};\n\nRange.defaultProps = {\n shouldSearch: false,\n rangeInterval: 1,\n label: ''\n};\n\nexport default withTitle(Range);\n"],"mappings":"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"}
1
+ {"version":3,"file":"Range.js","names":["Range","rangeInterval","label","entity","propsToDisplay","dataAggregations","updateFilterValues","filterValues","shouldSearch","router","useRouter","debounceAmount","parseUrl","decodeValue","asPath","query","hasMultipleOptions","length","initialRangeOption","getIntersectedProp","rangeOption","selectedOption","rangeValue","useGetSingleEntitySchema","data","getEntitySchema","loading","options","getSelectOptions","calculateMinMax","min","max","shouldShowRange","minValue","maxValue","valueToUse","handleChange","debounce","option","value","updatedOptions","forEach","prop","eMin","eMax","initValue","getRangeValue","propTypes","PropTypes","array","isRequired","string","object","func","bool","number","defaultProps","withTitle"],"sources":["../../../../src/components/SearchFilter/components/Range.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport debounce from 'lodash.debounce';\nimport RangeFilter from '@blaze-react/range-filter';\nimport { useRouter } from 'next/router';\nimport Select from '@blaze-react/select';\nimport { parseUrl } from 'query-string';\nimport { useGetSingleEntitySchema } from '../../../hooks';\nimport { withTitle } from '../../../HOC';\nimport { getSelectOptions, getIntersectedProp, getRangeValue, calculateMinMax } from '../helpers';\nimport { decodeValue } from '../helpers/decode-encode';\n\nconst Range = ({\n rangeInterval,\n label,\n entity,\n propsToDisplay,\n dataAggregations,\n updateFilterValues,\n filterValues,\n shouldSearch\n}) => {\n const router = useRouter();\n const debounceAmount = shouldSearch ? 1200 : 100;\n const { query } = parseUrl(decodeValue(router.asPath));\n const hasMultipleOptions = propsToDisplay.length > 1;\n const initialRangeOption = getIntersectedProp(query, propsToDisplay) || propsToDisplay[0];\n const rangeOption =\n (filterValues[initialRangeOption] && filterValues[initialRangeOption].selectedOption) ||\n initialRangeOption;\n const rangeValue = filterValues[rangeOption];\n\n const { data: { getEntitySchema = {} } = {}, loading } = useGetSingleEntitySchema(\n entity,\n !hasMultipleOptions\n );\n\n if (loading || !rangeOption || !rangeValue) return '';\n\n const options = getSelectOptions(getEntitySchema, propsToDisplay);\n // get range from aggregations so it updates\n const { min, max } = calculateMinMax(dataAggregations[rangeOption], rangeInterval);\n const shouldShowRange = rangeOption && min !== max;\n const minValue = rangeValue.minValue < min ? min : rangeValue.minValue;\n const maxValue = rangeValue.maxValue > max ? max : rangeValue.maxValue;\n const valueToUse = { ...rangeValue, min, max, minValue, maxValue };\n\n const handleChange = debounce((option, value) => {\n updateFilterValues({ [option]: { ...value, selectedOption: rangeOption } }, shouldSearch);\n }, debounceAmount);\n\n return (\n <>\n {hasMultipleOptions && (\n <>\n <label>{label}</label>\n <Select\n value={rangeOption}\n id={rangeOption}\n options={options}\n required\n onChange={({ value }) => {\n const updatedOptions = {};\n propsToDisplay.forEach(prop => {\n const { min: eMin, max: eMax } = filterValues[prop];\n const initValue = getRangeValue(null, rangeInterval, eMin, eMax);\n updatedOptions[prop] = { ...initValue, selectedOption: value };\n });\n\n updateFilterValues(updatedOptions, false);\n }}\n />\n </>\n )}\n {shouldShowRange && (\n <RangeFilter\n key={`${rangeOption}-${minValue}-${maxValue}`}\n name={rangeOption}\n label={hasMultipleOptions ? '' : label}\n value={valueToUse}\n id={rangeOption}\n onChange={({ value }) => {\n handleChange(rangeOption, value);\n }}\n />\n )}\n </>\n );\n};\n\nRange.propTypes = {\n propsToDisplay: PropTypes.array.isRequired,\n entity: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n rangeInterval: PropTypes.number,\n label: PropTypes.string,\n dataAggregations: PropTypes.object.isRequired\n};\n\nRange.defaultProps = {\n shouldSearch: false,\n rangeInterval: 1,\n label: ''\n};\n\nexport default withTitle(Range);\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","names":["SelectFilter","data","label","prop","updateFilterValues","filterValues","shouldSearch","displayLabelAsPlaceholder","displayFilterCount","filterValue","disabledOptions","buckets","options","map","key","count","doc_count","push","optionLabel","filter","Boolean","sort","labelText","labelToUse","defaultTextValue","DEFAULT_OPTION","value","valueToUse","propTypes","PropTypes","object","isRequired","string","func","bool","defaultProps"],"sources":["../../../../src/components/SearchFilter/components/Select.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Select from '@blaze-react/select';\nimport { withTitle } from '../../../HOC';\nimport { DEFAULT_OPTION } from '../constants';\n\nconst SelectFilter = ({\n data,\n label,\n prop,\n updateFilterValues,\n filterValues,\n shouldSearch,\n displayLabelAsPlaceholder,\n displayFilterCount\n}) => {\n const filterValue = filterValues[prop] || '';\n const disabledOptions = [];\n const { buckets = [] } = data[prop] || {};\n const options = buckets\n .map(({ key, doc_count: count }) => {\n if (!count) disabledOptions.push(key);\n const optionLabel = displayFilterCount ? `${key} (${count})` : key;\n return [key, optionLabel];\n })\n .filter(Boolean)\n .sort();\n\n const labelText = label || prop;\n let labelToUse = labelText;\n let defaultTextValue = DEFAULT_OPTION;\n if (displayLabelAsPlaceholder) {\n defaultTextValue = labelToUse;\n labelToUse = null;\n }\n\n return (\n <Select\n label={labelToUse}\n value={filterValue}\n id={prop}\n data-testid={`filter-${prop}`}\n options={options}\n defaultTextValue={defaultTextValue}\n onChange={({ value }) => {\n let valueToUse = value;\n if (value === defaultTextValue) valueToUse = '';\n updateFilterValues({ [prop]: valueToUse }, shouldSearch);\n }}\n disabled={disabledOptions}\n />\n );\n};\n\nSelectFilter.propTypes = {\n data: PropTypes.object.isRequired,\n prop: PropTypes.string.isRequired,\n filterValues: PropTypes.object,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n label: PropTypes.string,\n displayLabelAsPlaceholder: PropTypes.bool,\n displayFilterCount: PropTypes.bool\n};\n\nSelectFilter.defaultProps = {\n filterValues: {},\n shouldSearch: false,\n label: '',\n displayLabelAsPlaceholder: false,\n displayFilterCount: false\n};\n\nexport default withTitle(SelectFilter);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,YAAY,GAAG,SAAfA,YAAe,OASf;EAAA,IARJC,IAQI,QARJA,IAQI;EAAA,IAPJC,KAOI,QAPJA,KAOI;EAAA,IANJC,IAMI,QANJA,IAMI;EAAA,IALJC,kBAKI,QALJA,kBAKI;EAAA,IAJJC,YAII,QAJJA,YAII;EAAA,IAHJC,YAGI,QAHJA,YAGI;EAAA,IAFJC,yBAEI,QAFJA,yBAEI;EAAA,IADJC,kBACI,QADJA,kBACI;EACJ,IAAMC,WAAW,GAAGJ,YAAY,CAACF,IAAD,CAAZ,IAAsB,EAA1C;EACA,IAAMO,eAAe,GAAG,EAAxB;;EACA,YAAyBT,IAAI,CAACE,IAAD,CAAJ,IAAc,EAAvC;EAAA,0BAAQQ,OAAR;EAAA,IAAQA,OAAR,8BAAkB,EAAlB;;EACA,IAAMC,OAAO,GAAGD,OAAO,CACpBE,GADa,CACT,iBAA+B;IAAA,IAA5BC,GAA4B,SAA5BA,GAA4B;IAAA,IAAZC,KAAY,SAAvBC,SAAuB;IAClC,IAAI,CAACD,KAAL,EAAYL,eAAe,CAACO,IAAhB,CAAqBH,GAArB;IACZ,IAAMI,WAAW,GAAGV,kBAAkB,aAAMM,GAAN,eAAcC,KAAd,SAAyBD,GAA/D;IACA,OAAO,CAACA,GAAD,EAAMI,WAAN,CAAP;EACD,CALa,EAMbC,MANa,CAMNC,OANM,EAObC,IAPa,EAAhB;EASA,IAAMC,SAAS,GAAGpB,KAAK,IAAIC,IAA3B;EACA,IAAIoB,UAAU,GAAGD,SAAjB;EACA,IAAIE,gBAAgB,GAAGC,yBAAvB;;EACA,IAAIlB,yBAAJ,EAA+B;IAC7BiB,gBAAgB,GAAGD,UAAnB;IACAA,UAAU,GAAG,IAAb;EACD;;EAED,oBACE,gCAAC,kBAAD;IACE,KAAK,EAAEA,UADT;IAEE,KAAK,EAAEd,WAFT;IAGE,EAAE,EAAEN,IAHN;IAIE,gCAAuBA,IAAvB,CAJF;IAKE,OAAO,EAAES,OALX;IAME,gBAAgB,EAAEY,gBANpB;IAOE,QAAQ,EAAE,yBAAe;MAAA,IAAZE,KAAY,SAAZA,KAAY;MACvB,IAAIC,UAAU,GAAGD,KAAjB;MACA,IAAIA,KAAK,KAAKF,gBAAd,EAAgCG,UAAU,GAAG,EAAb;MAChCvB,kBAAkB,sCAAID,IAAJ,EAAWwB,UAAX,GAAyBrB,YAAzB,CAAlB;IACD,CAXH;IAYE,QAAQ,EAAEI;EAZZ,EADF;AAgBD,CA9CD;;AAgDAV,YAAY,CAAC4B,SAAb,GAAyB;EACvB3B,IAAI,EAAE4B,sBAAUC,MAAV,CAAiBC,UADA;EAEvB5B,IAAI,EAAE0B,sBAAUG,MAAV,CAAiBD,UAFA;EAGvB1B,YAAY,EAAEwB,sBAAUC,MAHD;EAIvB1B,kBAAkB,EAAEyB,sBAAUI,IAAV,CAAeF,UAJZ;EAKvBzB,YAAY,EAAEuB,sBAAUK,IALD;EAMvBhC,KAAK,EAAE2B,sBAAUG,MANM;EAOvBzB,yBAAyB,EAAEsB,sBAAUK,IAPd;EAQvB1B,kBAAkB,EAAEqB,sBAAUK;AARP,CAAzB;AAWAlC,YAAY,CAACmC,YAAb,GAA4B;EAC1B9B,YAAY,EAAE,EADY;EAE1BC,YAAY,EAAE,KAFY;EAG1BJ,KAAK,EAAE,EAHmB;EAI1BK,yBAAyB,EAAE,KAJD;EAK1BC,kBAAkB,EAAE;AALM,CAA5B;;eAQe,oBAAUR,YAAV,C"}
1
+ {"version":3,"file":"Select.js","names":["SelectFilter","data","label","prop","updateFilterValues","filterValues","shouldSearch","displayLabelAsPlaceholder","displayFilterCount","filterValue","disabledOptions","buckets","options","map","key","count","doc_count","push","optionLabel","filter","Boolean","sort","labelText","labelToUse","defaultTextValue","DEFAULT_OPTION","value","valueToUse","propTypes","PropTypes","object","isRequired","string","func","bool","defaultProps","withTitle"],"sources":["../../../../src/components/SearchFilter/components/Select.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Select from '@blaze-react/select';\nimport { withTitle } from '../../../HOC';\nimport { DEFAULT_OPTION } from '../constants';\n\nconst SelectFilter = ({\n data,\n label,\n prop,\n updateFilterValues,\n filterValues,\n shouldSearch,\n displayLabelAsPlaceholder,\n displayFilterCount\n}) => {\n const filterValue = filterValues[prop] || '';\n const disabledOptions = [];\n const { buckets = [] } = data[prop] || {};\n const options = buckets\n .map(({ key, doc_count: count }) => {\n if (!count) disabledOptions.push(key);\n const optionLabel = displayFilterCount ? `${key} (${count})` : key;\n return [key, optionLabel];\n })\n .filter(Boolean)\n .sort();\n\n const labelText = label || prop;\n let labelToUse = labelText;\n let defaultTextValue = DEFAULT_OPTION;\n if (displayLabelAsPlaceholder) {\n defaultTextValue = labelToUse;\n labelToUse = null;\n }\n\n return (\n <Select\n label={labelToUse}\n value={filterValue}\n id={prop}\n data-testid={`filter-${prop}`}\n options={options}\n defaultTextValue={defaultTextValue}\n onChange={({ value }) => {\n let valueToUse = value;\n if (value === defaultTextValue) valueToUse = '';\n updateFilterValues({ [prop]: valueToUse }, shouldSearch);\n }}\n disabled={disabledOptions}\n />\n );\n};\n\nSelectFilter.propTypes = {\n data: PropTypes.object.isRequired,\n prop: PropTypes.string.isRequired,\n filterValues: PropTypes.object,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n label: PropTypes.string,\n displayLabelAsPlaceholder: PropTypes.bool,\n displayFilterCount: PropTypes.bool\n};\n\nSelectFilter.defaultProps = {\n filterValues: {},\n shouldSearch: false,\n label: '',\n displayLabelAsPlaceholder: false,\n displayFilterCount: false\n};\n\nexport default withTitle(SelectFilter);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,YAAY,GAAG,SAAfA,YAAe,OASf;EAAA,IARJC,IAQI,QARJA,IAQI;EAAA,IAPJC,KAOI,QAPJA,KAOI;EAAA,IANJC,IAMI,QANJA,IAMI;EAAA,IALJC,kBAKI,QALJA,kBAKI;EAAA,IAJJC,YAII,QAJJA,YAII;EAAA,IAHJC,YAGI,QAHJA,YAGI;EAAA,IAFJC,yBAEI,QAFJA,yBAEI;EAAA,IADJC,kBACI,QADJA,kBACI;EACJ,IAAMC,WAAW,GAAGJ,YAAY,CAACF,IAAD,CAAZ,IAAsB,EAA1C;EACA,IAAMO,eAAe,GAAG,EAAxB;;EACA,YAAyBT,IAAI,CAACE,IAAD,CAAJ,IAAc,EAAvC;EAAA,0BAAQQ,OAAR;EAAA,IAAQA,OAAR,8BAAkB,EAAlB;;EACA,IAAMC,OAAO,GAAGD,OAAO,CACpBE,GADa,CACT,iBAA+B;IAAA,IAA5BC,GAA4B,SAA5BA,GAA4B;IAAA,IAAZC,KAAY,SAAvBC,SAAuB;IAClC,IAAI,CAACD,KAAL,EAAYL,eAAe,CAACO,IAAhB,CAAqBH,GAArB;IACZ,IAAMI,WAAW,GAAGV,kBAAkB,aAAMM,GAAN,eAAcC,KAAd,SAAyBD,GAA/D;IACA,OAAO,CAACA,GAAD,EAAMI,WAAN,CAAP;EACD,CALa,EAMbC,MANa,CAMNC,OANM,EAObC,IAPa,EAAhB;EASA,IAAMC,SAAS,GAAGpB,KAAK,IAAIC,IAA3B;EACA,IAAIoB,UAAU,GAAGD,SAAjB;EACA,IAAIE,gBAAgB,GAAGC,yBAAvB;;EACA,IAAIlB,yBAAJ,EAA+B;IAC7BiB,gBAAgB,GAAGD,UAAnB;IACAA,UAAU,GAAG,IAAb;EACD;;EAED,oBACE,gCAAC,kBAAD;IACE,KAAK,EAAEA,UADT;IAEE,KAAK,EAAEd,WAFT;IAGE,EAAE,EAAEN,IAHN;IAIE,gCAAuBA,IAAvB,CAJF;IAKE,OAAO,EAAES,OALX;IAME,gBAAgB,EAAEY,gBANpB;IAOE,QAAQ,EAAE,yBAAe;MAAA,IAAZE,KAAY,SAAZA,KAAY;MACvB,IAAIC,UAAU,GAAGD,KAAjB;MACA,IAAIA,KAAK,KAAKF,gBAAd,EAAgCG,UAAU,GAAG,EAAb;MAChCvB,kBAAkB,sCAAID,IAAJ,EAAWwB,UAAX,GAAyBrB,YAAzB,CAAlB;IACD,CAXH;IAYE,QAAQ,EAAEI;EAZZ,EADF;AAgBD,CA9CD;;AAgDAV,YAAY,CAAC4B,SAAb,GAAyB;EACvB3B,IAAI,EAAE4B,qBAAA,CAAUC,MAAV,CAAiBC,UADA;EAEvB5B,IAAI,EAAE0B,qBAAA,CAAUG,MAAV,CAAiBD,UAFA;EAGvB1B,YAAY,EAAEwB,qBAAA,CAAUC,MAHD;EAIvB1B,kBAAkB,EAAEyB,qBAAA,CAAUI,IAAV,CAAeF,UAJZ;EAKvBzB,YAAY,EAAEuB,qBAAA,CAAUK,IALD;EAMvBhC,KAAK,EAAE2B,qBAAA,CAAUG,MANM;EAOvBzB,yBAAyB,EAAEsB,qBAAA,CAAUK,IAPd;EAQvB1B,kBAAkB,EAAEqB,qBAAA,CAAUK;AARP,CAAzB;AAWAlC,YAAY,CAACmC,YAAb,GAA4B;EAC1B9B,YAAY,EAAE,EADY;EAE1BC,YAAY,EAAE,KAFY;EAG1BJ,KAAK,EAAE,EAHmB;EAI1BK,yBAAyB,EAAE,KAJD;EAK1BC,kBAAkB,EAAE;AALM,CAA5B;;eAQe,IAAA4B,cAAA,EAAUpC,YAAV,C"}
@@ -1 +1 @@
1
- {"version":3,"file":"TextSearch.js","names":["TextSearch","label","searchValue","updateFilterValues","SEARCH_TERM","eValue","value","e","preventDefault","propTypes","PropTypes","string","isRequired","func","defaultProps"],"sources":["../../../../src/components/SearchFilter/components/TextSearch.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Input from '@blaze-react/input';\nimport { MdSearch } from 'react-icons/md';\nimport { withTitle } from '../../../HOC';\nimport { SEARCH_TERM } from '../constants';\n\nconst TextSearch = ({ label, searchValue, updateFilterValues }) => (\n <div className=\"search\">\n <div className=\"search__wrapper\">\n <div className=\"form-field form-field--input form-field--search\">\n <Input\n id={SEARCH_TERM}\n value={searchValue}\n placeholder={label || 'Search'}\n onChange={({ value: eValue }) => {\n updateFilterValues({ [SEARCH_TERM]: eValue }, false);\n }}\n />\n </div>\n <button\n type=\"button\"\n className=\"icon-button icon-button--search\"\n onClick={e => {\n e.preventDefault();\n updateFilterValues({ [SEARCH_TERM]: searchValue }, true);\n }}>\n <i>\n <MdSearch />\n </i>\n </button>\n </div>\n </div>\n);\n\nTextSearch.propTypes = {\n searchValue: PropTypes.string.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n label: PropTypes.string\n};\n\nTextSearch.defaultProps = {\n label: ''\n};\n\nexport default withTitle(TextSearch);\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa;EAAA,IAAGC,KAAH,QAAGA,KAAH;EAAA,IAAUC,WAAV,QAAUA,WAAV;EAAA,IAAuBC,kBAAvB,QAAuBA,kBAAvB;EAAA,oBACjB;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE,gCAAC,iBAAD;IACE,EAAE,EAAEC,sBADN;IAEE,KAAK,EAAEF,WAFT;IAGE,WAAW,EAAED,KAAK,IAAI,QAHxB;IAIE,QAAQ,EAAE,yBAAuB;MAAA,IAAbI,MAAa,SAApBC,KAAoB;MAC/BH,kBAAkB,sCAAIC,sBAAJ,EAAkBC,MAAlB,GAA4B,KAA5B,CAAlB;IACD;EANH,EADF,CADF,eAWE;IACE,IAAI,EAAC,QADP;IAEE,SAAS,EAAC,iCAFZ;IAGE,OAAO,EAAE,iBAAAE,CAAC,EAAI;MACZA,CAAC,CAACC,cAAF;MACAL,kBAAkB,sCAAIC,sBAAJ,EAAkBF,WAAlB,GAAiC,IAAjC,CAAlB;IACD;EANH,gBAOE,wDACE,gCAAC,YAAD,OADF,CAPF,CAXF,CADF,CADiB;AAAA,CAAnB;;AA4BAF,UAAU,CAACS,SAAX,GAAuB;EACrBP,WAAW,EAAEQ,sBAAUC,MAAV,CAAiBC,UADT;EAErBT,kBAAkB,EAAEO,sBAAUG,IAAV,CAAeD,UAFd;EAGrBX,KAAK,EAAES,sBAAUC;AAHI,CAAvB;AAMAX,UAAU,CAACc,YAAX,GAA0B;EACxBb,KAAK,EAAE;AADiB,CAA1B;;eAIe,oBAAUD,UAAV,C"}
1
+ {"version":3,"file":"TextSearch.js","names":["TextSearch","label","searchValue","updateFilterValues","SEARCH_TERM","eValue","value","e","preventDefault","propTypes","PropTypes","string","isRequired","func","defaultProps","withTitle"],"sources":["../../../../src/components/SearchFilter/components/TextSearch.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Input from '@blaze-react/input';\nimport { MdSearch } from 'react-icons/md';\nimport { withTitle } from '../../../HOC';\nimport { SEARCH_TERM } from '../constants';\n\nconst TextSearch = ({ label, searchValue, updateFilterValues }) => (\n <div className=\"search\">\n <div className=\"search__wrapper\">\n <div className=\"form-field form-field--input form-field--search\">\n <Input\n id={SEARCH_TERM}\n value={searchValue}\n placeholder={label || 'Search'}\n onChange={({ value: eValue }) => {\n updateFilterValues({ [SEARCH_TERM]: eValue }, false);\n }}\n />\n </div>\n <button\n type=\"button\"\n className=\"icon-button icon-button--search\"\n onClick={e => {\n e.preventDefault();\n updateFilterValues({ [SEARCH_TERM]: searchValue }, true);\n }}>\n <i>\n <MdSearch />\n </i>\n </button>\n </div>\n </div>\n);\n\nTextSearch.propTypes = {\n searchValue: PropTypes.string.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n label: PropTypes.string\n};\n\nTextSearch.defaultProps = {\n label: ''\n};\n\nexport default withTitle(TextSearch);\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa;EAAA,IAAGC,KAAH,QAAGA,KAAH;EAAA,IAAUC,WAAV,QAAUA,WAAV;EAAA,IAAuBC,kBAAvB,QAAuBA,kBAAvB;EAAA,oBACjB;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE,gCAAC,iBAAD;IACE,EAAE,EAAEC,sBADN;IAEE,KAAK,EAAEF,WAFT;IAGE,WAAW,EAAED,KAAK,IAAI,QAHxB;IAIE,QAAQ,EAAE,yBAAuB;MAAA,IAAbI,MAAa,SAApBC,KAAoB;MAC/BH,kBAAkB,sCAAIC,sBAAJ,EAAkBC,MAAlB,GAA4B,KAA5B,CAAlB;IACD;EANH,EADF,CADF,eAWE;IACE,IAAI,EAAC,QADP;IAEE,SAAS,EAAC,iCAFZ;IAGE,OAAO,EAAE,iBAAAE,CAAC,EAAI;MACZA,CAAC,CAACC,cAAF;MACAL,kBAAkB,sCAAIC,sBAAJ,EAAkBF,WAAlB,GAAiC,IAAjC,CAAlB;IACD;EANH,gBAOE,wDACE,gCAAC,YAAD,OADF,CAPF,CAXF,CADF,CADiB;AAAA,CAAnB;;AA4BAF,UAAU,CAACS,SAAX,GAAuB;EACrBP,WAAW,EAAEQ,qBAAA,CAAUC,MAAV,CAAiBC,UADT;EAErBT,kBAAkB,EAAEO,qBAAA,CAAUG,IAAV,CAAeD,UAFd;EAGrBX,KAAK,EAAES,qBAAA,CAAUC;AAHI,CAAvB;AAMAX,UAAU,CAACc,YAAX,GAA0B;EACxBb,KAAK,EAAE;AADiB,CAA1B;;eAIe,IAAAc,cAAA,EAAUf,UAAV,C"}
@@ -13,6 +13,8 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
13
13
 
14
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
15
 
16
+ require("core-js/modules/es.number.constructor.js");
17
+
16
18
  require("core-js/modules/es.array.is-array.js");
17
19
 
18
20
  require("core-js/modules/es.array.for-each.js");
@@ -23,13 +25,34 @@ require("core-js/modules/web.dom-collections.for-each.js");
23
25
 
24
26
  require("core-js/modules/es.object.keys.js");
25
27
 
28
+ require("core-js/modules/es.array.includes.js");
29
+
30
+ require("core-js/modules/es.string.includes.js");
31
+
26
32
  require("core-js/modules/es.regexp.exec.js");
27
33
 
28
34
  require("core-js/modules/es.string.split.js");
29
35
 
30
36
  require("core-js/modules/es.array.index-of.js");
31
37
 
32
- var builFilterObject = function builFilterObject(key, value, filters) {
38
+ var QUERY_KEYS_TO_IGNORE = ['dataNotSet', 'shouldSearch', 'search_term'];
39
+
40
+ var builFilterObject = function builFilterObject(queryKey, value, filters, isRange) {
41
+ if (isRange) {
42
+ // don't add to query if value matches range values
43
+ if (value.min !== value.minValue && value.max !== value.maxValue) {
44
+ filters.push({
45
+ range: (0, _defineProperty2["default"])({}, queryKey, {
46
+ gte: Number(value.min),
47
+ lte: Number(value.max)
48
+ })
49
+ });
50
+ }
51
+
52
+ return;
53
+ }
54
+
55
+ var key = isRange ? queryKey : "".concat(queryKey, ".keyword");
33
56
  var isArray = Array.isArray(value);
34
57
 
35
58
  if (!isArray) {
@@ -47,14 +70,14 @@ var builFilterObject = function builFilterObject(key, value, filters) {
47
70
  });
48
71
  };
49
72
 
50
- var buildFiltersQuery = function buildFiltersQuery(query, filterBy, filterByProperty) {
73
+ var buildFiltersQuery = function buildFiltersQuery(query, filterBy, filterByProperty, rangeValues) {
51
74
  var mustFilters = [];
52
75
  Object.keys(query).forEach(function (queryKey) {
53
- if (queryKey === 'search_term' || queryKey === 'shouldSearch') return;
76
+ if (QUERY_KEYS_TO_IGNORE.includes(queryKey)) return;
54
77
  if (!queryKey || !query[queryKey]) return;
55
78
  var queryValue = query[queryKey];
56
- var queryKeyword = "".concat(queryKey, ".keyword");
57
- builFilterObject(queryKeyword, queryValue, mustFilters);
79
+ var isRange = rangeValues.includes(queryKey);
80
+ builFilterObject(queryKey, queryValue, mustFilters, isRange);
58
81
  });
59
82
 
60
83
  if (filterByProperty && filterByProperty.length) {
@@ -1 +1 @@
1
- {"version":3,"file":"build-filters-query.js","names":["builFilterObject","key","value","filters","isArray","Array","singleFilterObj","match","push","forEach","filterValue","buildFiltersQuery","query","filterBy","filterByProperty","mustFilters","Object","keys","queryKey","queryValue","queryKeyword","length","filterByPropOption","split","filterByPropKey","filterByOption","indexOf","filteryByValue","filterByKeyword"],"sources":["../../../../src/components/SearchFilter/helpers/build-filters-query.js"],"sourcesContent":["const builFilterObject = (key, value, filters) => {\n const isArray = Array.isArray(value);\n if (!isArray) {\n const singleFilterObj = { match: { [key]: value } };\n filters.push(singleFilterObj);\n return;\n }\n\n value.forEach(filterValue => {\n filters.push({ match: { [key]: filterValue } });\n });\n};\nconst buildFiltersQuery = (query, filterBy, filterByProperty) => {\n const mustFilters = [];\n Object.keys(query).forEach(queryKey => {\n if (queryKey === 'search_term' || queryKey === 'shouldSearch') return;\n if (!queryKey || !query[queryKey]) return;\n const queryValue = query[queryKey];\n const queryKeyword = `${queryKey}.keyword`;\n builFilterObject(queryKeyword, queryValue, mustFilters);\n });\n\n if (filterByProperty && filterByProperty.length) {\n filterByProperty &&\n filterByProperty.forEach(filterByPropOption => {\n const [filterByPropKey] = filterByPropOption.split('/');\n filterBy.forEach(filterByOption => {\n if (filterByOption.indexOf(filterByPropKey) === -1) return;\n const [, filteryByValue] = filterByOption.split('/');\n const filterByKeyword = `${filterByPropKey}.keyword`;\n if (!filteryByValue) return;\n mustFilters.push({ match: { [filterByKeyword]: filteryByValue } });\n });\n });\n }\n\n return mustFilters;\n};\n\nexport default buildFiltersQuery;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,GAAD,EAAMC,KAAN,EAAaC,OAAb,EAAyB;EAChD,IAAMC,OAAO,GAAGC,KAAK,CAACD,OAAN,CAAcF,KAAd,CAAhB;;EACA,IAAI,CAACE,OAAL,EAAc;IACZ,IAAME,eAAe,GAAG;MAAEC,KAAK,uCAAKN,GAAL,EAAWC,KAAX;IAAP,CAAxB;IACAC,OAAO,CAACK,IAAR,CAAaF,eAAb;IACA;EACD;;EAEDJ,KAAK,CAACO,OAAN,CAAc,UAAAC,WAAW,EAAI;IAC3BP,OAAO,CAACK,IAAR,CAAa;MAAED,KAAK,uCAAKN,GAAL,EAAWS,WAAX;IAAP,CAAb;EACD,CAFD;AAGD,CAXD;;AAYA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,KAAD,EAAQC,QAAR,EAAkBC,gBAAlB,EAAuC;EAC/D,IAAMC,WAAW,GAAG,EAApB;EACAC,MAAM,CAACC,IAAP,CAAYL,KAAZ,EAAmBH,OAAnB,CAA2B,UAAAS,QAAQ,EAAI;IACrC,IAAIA,QAAQ,KAAK,aAAb,IAA8BA,QAAQ,KAAK,cAA/C,EAA+D;IAC/D,IAAI,CAACA,QAAD,IAAa,CAACN,KAAK,CAACM,QAAD,CAAvB,EAAmC;IACnC,IAAMC,UAAU,GAAGP,KAAK,CAACM,QAAD,CAAxB;IACA,IAAME,YAAY,aAAMF,QAAN,aAAlB;IACAlB,gBAAgB,CAACoB,YAAD,EAAeD,UAAf,EAA2BJ,WAA3B,CAAhB;EACD,CAND;;EAQA,IAAID,gBAAgB,IAAIA,gBAAgB,CAACO,MAAzC,EAAiD;IAC/CP,gBAAgB,IACdA,gBAAgB,CAACL,OAAjB,CAAyB,UAAAa,kBAAkB,EAAI;MAC7C,4BAA0BA,kBAAkB,CAACC,KAAnB,CAAyB,GAAzB,CAA1B;MAAA;MAAA,IAAOC,eAAP;;MACAX,QAAQ,CAACJ,OAAT,CAAiB,UAAAgB,cAAc,EAAI;QACjC,IAAIA,cAAc,CAACC,OAAf,CAAuBF,eAAvB,MAA4C,CAAC,CAAjD,EAAoD;;QACpD,4BAA2BC,cAAc,CAACF,KAAf,CAAqB,GAArB,CAA3B;QAAA;QAAA,IAASI,cAAT;;QACA,IAAMC,eAAe,aAAMJ,eAAN,aAArB;QACA,IAAI,CAACG,cAAL,EAAqB;QACrBZ,WAAW,CAACP,IAAZ,CAAiB;UAAED,KAAK,uCAAKqB,eAAL,EAAuBD,cAAvB;QAAP,CAAjB;MACD,CAND;IAOD,CATD,CADF;EAWD;;EAED,OAAOZ,WAAP;AACD,CAzBD;;eA2BeJ,iB"}
1
+ {"version":3,"file":"build-filters-query.js","names":["QUERY_KEYS_TO_IGNORE","builFilterObject","queryKey","value","filters","isRange","min","minValue","max","maxValue","push","range","gte","Number","lte","key","isArray","Array","singleFilterObj","match","forEach","filterValue","buildFiltersQuery","query","filterBy","filterByProperty","rangeValues","mustFilters","Object","keys","includes","queryValue","length","filterByPropOption","split","filterByPropKey","filterByOption","indexOf","filteryByValue","filterByKeyword"],"sources":["../../../../src/components/SearchFilter/helpers/build-filters-query.js"],"sourcesContent":["const QUERY_KEYS_TO_IGNORE = ['dataNotSet', 'shouldSearch', 'search_term'];\n\nconst builFilterObject = (queryKey, value, filters, isRange) => {\n if (isRange) {\n // don't add to query if value matches range values\n if (value.min !== value.minValue && value.max !== value.maxValue) {\n filters.push({\n range: {\n [queryKey]: {\n gte: Number(value.min),\n lte: Number(value.max)\n }\n }\n });\n }\n return;\n }\n\n const key = isRange ? queryKey : `${queryKey}.keyword`;\n\n const isArray = Array.isArray(value);\n if (!isArray) {\n const singleFilterObj = { match: { [key]: value } };\n filters.push(singleFilterObj);\n return;\n }\n\n value.forEach(filterValue => {\n filters.push({ match: { [key]: filterValue } });\n });\n};\nconst buildFiltersQuery = (query, filterBy, filterByProperty, rangeValues) => {\n const mustFilters = [];\n Object.keys(query).forEach(queryKey => {\n if (QUERY_KEYS_TO_IGNORE.includes(queryKey)) return;\n if (!queryKey || !query[queryKey]) return;\n const queryValue = query[queryKey];\n\n const isRange = rangeValues.includes(queryKey);\n builFilterObject(queryKey, queryValue, mustFilters, isRange);\n });\n\n if (filterByProperty && filterByProperty.length) {\n filterByProperty &&\n filterByProperty.forEach(filterByPropOption => {\n const [filterByPropKey] = filterByPropOption.split('/');\n filterBy.forEach(filterByOption => {\n if (filterByOption.indexOf(filterByPropKey) === -1) return;\n const [, filteryByValue] = filterByOption.split('/');\n const filterByKeyword = `${filterByPropKey}.keyword`;\n if (!filteryByValue) return;\n mustFilters.push({ match: { [filterByKeyword]: filteryByValue } });\n });\n });\n }\n\n return mustFilters;\n};\n\nexport default buildFiltersQuery;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAMA,oBAAoB,GAAG,CAAC,YAAD,EAAe,cAAf,EAA+B,aAA/B,CAA7B;;AAEA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,QAAD,EAAWC,KAAX,EAAkBC,OAAlB,EAA2BC,OAA3B,EAAuC;EAC9D,IAAIA,OAAJ,EAAa;IACX;IACA,IAAIF,KAAK,CAACG,GAAN,KAAcH,KAAK,CAACI,QAApB,IAAgCJ,KAAK,CAACK,GAAN,KAAcL,KAAK,CAACM,QAAxD,EAAkE;MAChEL,OAAO,CAACM,IAAR,CAAa;QACXC,KAAK,uCACFT,QADE,EACS;UACVU,GAAG,EAAEC,MAAM,CAACV,KAAK,CAACG,GAAP,CADD;UAEVQ,GAAG,EAAED,MAAM,CAACV,KAAK,CAACK,GAAP;QAFD,CADT;MADM,CAAb;IAQD;;IACD;EACD;;EAED,IAAMO,GAAG,GAAGV,OAAO,GAAGH,QAAH,aAAiBA,QAAjB,aAAnB;EAEA,IAAMc,OAAO,GAAGC,KAAK,CAACD,OAAN,CAAcb,KAAd,CAAhB;;EACA,IAAI,CAACa,OAAL,EAAc;IACZ,IAAME,eAAe,GAAG;MAAEC,KAAK,uCAAKJ,GAAL,EAAWZ,KAAX;IAAP,CAAxB;IACAC,OAAO,CAACM,IAAR,CAAaQ,eAAb;IACA;EACD;;EAEDf,KAAK,CAACiB,OAAN,CAAc,UAAAC,WAAW,EAAI;IAC3BjB,OAAO,CAACM,IAAR,CAAa;MAAES,KAAK,uCAAKJ,GAAL,EAAWM,WAAX;IAAP,CAAb;EACD,CAFD;AAGD,CA5BD;;AA6BA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,KAAD,EAAQC,QAAR,EAAkBC,gBAAlB,EAAoCC,WAApC,EAAoD;EAC5E,IAAMC,WAAW,GAAG,EAApB;EACAC,MAAM,CAACC,IAAP,CAAYN,KAAZ,EAAmBH,OAAnB,CAA2B,UAAAlB,QAAQ,EAAI;IACrC,IAAIF,oBAAoB,CAAC8B,QAArB,CAA8B5B,QAA9B,CAAJ,EAA6C;IAC7C,IAAI,CAACA,QAAD,IAAa,CAACqB,KAAK,CAACrB,QAAD,CAAvB,EAAmC;IACnC,IAAM6B,UAAU,GAAGR,KAAK,CAACrB,QAAD,CAAxB;IAEA,IAAMG,OAAO,GAAGqB,WAAW,CAACI,QAAZ,CAAqB5B,QAArB,CAAhB;IACAD,gBAAgB,CAACC,QAAD,EAAW6B,UAAX,EAAuBJ,WAAvB,EAAoCtB,OAApC,CAAhB;EACD,CAPD;;EASA,IAAIoB,gBAAgB,IAAIA,gBAAgB,CAACO,MAAzC,EAAiD;IAC/CP,gBAAgB,IACdA,gBAAgB,CAACL,OAAjB,CAAyB,UAAAa,kBAAkB,EAAI;MAC7C,4BAA0BA,kBAAkB,CAACC,KAAnB,CAAyB,GAAzB,CAA1B;MAAA;MAAA,IAAOC,eAAP;;MACAX,QAAQ,CAACJ,OAAT,CAAiB,UAAAgB,cAAc,EAAI;QACjC,IAAIA,cAAc,CAACC,OAAf,CAAuBF,eAAvB,MAA4C,CAAC,CAAjD,EAAoD;;QACpD,4BAA2BC,cAAc,CAACF,KAAf,CAAqB,GAArB,CAA3B;QAAA;QAAA,IAASI,cAAT;;QACA,IAAMC,eAAe,aAAMJ,eAAN,aAArB;QACA,IAAI,CAACG,cAAL,EAAqB;QACrBX,WAAW,CAACjB,IAAZ,CAAiB;UAAES,KAAK,uCAAKoB,eAAL,EAAuBD,cAAvB;QAAP,CAAjB;MACD,CAND;IAOD,CATD,CADF;EAWD;;EAED,OAAOX,WAAP;AACD,CA1BD;;eA4BeL,iB"}
@@ -1 +1 @@
1
- {"version":3,"file":"build-query.js","names":["buildQuery","filterValues","filters","newQuery","searchValue","SEARCH_TERM","encodeURIComponent","push","forEach","propsToDisplay","type","TEXT_SEARCH","prop","value","parsedValue","includes","join"],"sources":["../../../../src/components/SearchFilter/helpers/build-query.js"],"sourcesContent":["import { SEARCH_TERM, TEXT_SEARCH } from '../constants';\nimport parseFilterValue from './parse-filter-value';\n\nconst buildQuery = (filterValues, filters) => {\n const newQuery = [];\n const searchValue = filterValues[SEARCH_TERM]\n ? encodeURIComponent(filterValues[SEARCH_TERM])\n : '';\n if (searchValue) newQuery.push(`${SEARCH_TERM}=${searchValue}`);\n\n filters.forEach(({ propsToDisplay, type }) => {\n if (type === TEXT_SEARCH) return;\n\n propsToDisplay.forEach(prop => {\n const value = filterValues[prop];\n const parsedValue = parseFilterValue(prop, type, value);\n if (parsedValue && !newQuery.includes(parsedValue)) {\n newQuery.push(parsedValue);\n }\n });\n });\n\n return newQuery.join('&');\n};\n\nexport default buildQuery;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAACC,YAAD,EAAeC,OAAf,EAA2B;EAC5C,IAAMC,QAAQ,GAAG,EAAjB;EACA,IAAMC,WAAW,GAAGH,YAAY,CAACI,sBAAD,CAAZ,GAChBC,kBAAkB,CAACL,YAAY,CAACI,sBAAD,CAAb,CADF,GAEhB,EAFJ;EAGA,IAAID,WAAJ,EAAiBD,QAAQ,CAACI,IAAT,WAAiBF,sBAAjB,cAAgCD,WAAhC;EAEjBF,OAAO,CAACM,OAAR,CAAgB,gBAA8B;IAAA,IAA3BC,cAA2B,QAA3BA,cAA2B;IAAA,IAAXC,IAAW,QAAXA,IAAW;IAC5C,IAAIA,IAAI,KAAKC,sBAAb,EAA0B;IAE1BF,cAAc,CAACD,OAAf,CAAuB,UAAAI,IAAI,EAAI;MAC7B,IAAMC,KAAK,GAAGZ,YAAY,CAACW,IAAD,CAA1B;MACA,IAAME,WAAW,GAAG,kCAAiBF,IAAjB,EAAuBF,IAAvB,EAA6BG,KAA7B,CAApB;;MACA,IAAIC,WAAW,IAAI,CAACX,QAAQ,CAACY,QAAT,CAAkBD,WAAlB,CAApB,EAAoD;QAClDX,QAAQ,CAACI,IAAT,CAAcO,WAAd;MACD;IACF,CAND;EAOD,CAVD;EAYA,OAAOX,QAAQ,CAACa,IAAT,CAAc,GAAd,CAAP;AACD,CApBD;;eAsBehB,U"}
1
+ {"version":3,"file":"build-query.js","names":["buildQuery","filterValues","filters","newQuery","searchValue","SEARCH_TERM","encodeURIComponent","push","forEach","propsToDisplay","type","TEXT_SEARCH","prop","value","parsedValue","parseFilterValue","includes","join"],"sources":["../../../../src/components/SearchFilter/helpers/build-query.js"],"sourcesContent":["import { SEARCH_TERM, TEXT_SEARCH } from '../constants';\nimport parseFilterValue from './parse-filter-value';\n\nconst buildQuery = (filterValues, filters) => {\n const newQuery = [];\n const searchValue = filterValues[SEARCH_TERM]\n ? encodeURIComponent(filterValues[SEARCH_TERM])\n : '';\n if (searchValue) newQuery.push(`${SEARCH_TERM}=${searchValue}`);\n\n filters.forEach(({ propsToDisplay, type }) => {\n if (type === TEXT_SEARCH) return;\n\n propsToDisplay.forEach(prop => {\n const value = filterValues[prop];\n const parsedValue = parseFilterValue(prop, type, value);\n if (parsedValue && !newQuery.includes(parsedValue)) {\n newQuery.push(parsedValue);\n }\n });\n });\n\n return newQuery.join('&');\n};\n\nexport default buildQuery;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAACC,YAAD,EAAeC,OAAf,EAA2B;EAC5C,IAAMC,QAAQ,GAAG,EAAjB;EACA,IAAMC,WAAW,GAAGH,YAAY,CAACI,sBAAD,CAAZ,GAChBC,kBAAkB,CAACL,YAAY,CAACI,sBAAD,CAAb,CADF,GAEhB,EAFJ;EAGA,IAAID,WAAJ,EAAiBD,QAAQ,CAACI,IAAT,WAAiBF,sBAAjB,cAAgCD,WAAhC;EAEjBF,OAAO,CAACM,OAAR,CAAgB,gBAA8B;IAAA,IAA3BC,cAA2B,QAA3BA,cAA2B;IAAA,IAAXC,IAAW,QAAXA,IAAW;IAC5C,IAAIA,IAAI,KAAKC,sBAAb,EAA0B;IAE1BF,cAAc,CAACD,OAAf,CAAuB,UAAAI,IAAI,EAAI;MAC7B,IAAMC,KAAK,GAAGZ,YAAY,CAACW,IAAD,CAA1B;MACA,IAAME,WAAW,GAAG,IAAAC,4BAAA,EAAiBH,IAAjB,EAAuBF,IAAvB,EAA6BG,KAA7B,CAApB;;MACA,IAAIC,WAAW,IAAI,CAACX,QAAQ,CAACa,QAAT,CAAkBF,WAAlB,CAApB,EAAoD;QAClDX,QAAQ,CAACI,IAAT,CAAcO,WAAd;MACD;IACF,CAND;EAOD,CAVD;EAYA,OAAOX,QAAQ,CAACc,IAAT,CAAc,GAAd,CAAP;AACD,CApBD;;eAsBejB,U"}
@@ -17,7 +17,8 @@ require("core-js/modules/es.array.concat.js");
17
17
 
18
18
  var _constants = require("../constants");
19
19
 
20
- var buildRawQueryStringified = function buildRawQueryStringified(checkboxSelectValues, rangeValues, entity, mustFilters) {
20
+ var buildRawQueryStringified = function buildRawQueryStringified(checkboxSelectValues, rangeValues, entity) {
21
+ var mustFilters = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
21
22
  if (!checkboxSelectValues.length && !rangeValues.length) return '';
22
23
  var aggs = {};
23
24
  checkboxSelectValues.forEach(function (fieldName) {
@@ -35,21 +36,26 @@ var buildRawQueryStringified = function buildRawQueryStringified(checkboxSelectV
35
36
  }
36
37
  };
37
38
  });
39
+ var boolFilter = {
40
+ should: [{
41
+ match: {
42
+ docType: entity
43
+ }
44
+ }],
45
+ minimum_should_match: 1
46
+ };
47
+
48
+ if (mustFilters.length) {
49
+ boolFilter.must = mustFilters;
50
+ }
51
+
38
52
  return JSON.stringify({
39
53
  aggs: aggs,
40
54
  size: 0,
41
55
  query: {
42
56
  bool: {
43
57
  filter: {
44
- bool: {
45
- should: [{
46
- match: {
47
- docType: entity
48
- }
49
- }],
50
- must: mustFilters,
51
- minimum_should_match: 1
52
- }
58
+ bool: boolFilter
53
59
  }
54
60
  }
55
61
  }
@@ -1 +1 @@
1
- {"version":3,"file":"build-raw-query-stringified.js","names":["buildRawQueryStringified","checkboxSelectValues","rangeValues","entity","mustFilters","length","aggs","forEach","fieldName","terms","field","KEYWORD","size","SIZE","stats","JSON","stringify","query","bool","filter","should","match","docType","must","minimum_should_match"],"sources":["../../../../src/components/SearchFilter/helpers/build-raw-query-stringified.js"],"sourcesContent":["import { KEYWORD, SIZE } from '../constants';\n\nconst buildRawQueryStringified = (checkboxSelectValues, rangeValues, entity, mustFilters) => {\n if (!checkboxSelectValues.length && !rangeValues.length) return '';\n\n const aggs = {};\n\n checkboxSelectValues.forEach(fieldName => {\n aggs[fieldName] = {\n terms: {\n field: `${fieldName}.${KEYWORD}`,\n size: SIZE\n }\n };\n });\n\n rangeValues.forEach(fieldName => {\n aggs[fieldName] = {\n stats: {\n field: fieldName\n }\n };\n });\n\n return JSON.stringify({\n aggs,\n size: 0,\n query: {\n bool: {\n filter: {\n bool: {\n should: [\n {\n match: {\n docType: entity\n }\n }\n ],\n must: mustFilters,\n minimum_should_match: 1\n }\n }\n }\n }\n });\n};\n\nexport default buildRawQueryStringified;\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AAEA,IAAMA,wBAAwB,GAAG,SAA3BA,wBAA2B,CAACC,oBAAD,EAAuBC,WAAvB,EAAoCC,MAApC,EAA4CC,WAA5C,EAA4D;EAC3F,IAAI,CAACH,oBAAoB,CAACI,MAAtB,IAAgC,CAACH,WAAW,CAACG,MAAjD,EAAyD,OAAO,EAAP;EAEzD,IAAMC,IAAI,GAAG,EAAb;EAEAL,oBAAoB,CAACM,OAArB,CAA6B,UAAAC,SAAS,EAAI;IACxCF,IAAI,CAACE,SAAD,CAAJ,GAAkB;MAChBC,KAAK,EAAE;QACLC,KAAK,YAAKF,SAAL,cAAkBG,kBAAlB,CADA;QAELC,IAAI,EAAEC;MAFD;IADS,CAAlB;EAMD,CAPD;EASAX,WAAW,CAACK,OAAZ,CAAoB,UAAAC,SAAS,EAAI;IAC/BF,IAAI,CAACE,SAAD,CAAJ,GAAkB;MAChBM,KAAK,EAAE;QACLJ,KAAK,EAAEF;MADF;IADS,CAAlB;EAKD,CAND;EAQA,OAAOO,IAAI,CAACC,SAAL,CAAe;IACpBV,IAAI,EAAJA,IADoB;IAEpBM,IAAI,EAAE,CAFc;IAGpBK,KAAK,EAAE;MACLC,IAAI,EAAE;QACJC,MAAM,EAAE;UACND,IAAI,EAAE;YACJE,MAAM,EAAE,CACN;cACEC,KAAK,EAAE;gBACLC,OAAO,EAAEnB;cADJ;YADT,CADM,CADJ;YAQJoB,IAAI,EAAEnB,WARF;YASJoB,oBAAoB,EAAE;UATlB;QADA;MADJ;IADD;EAHa,CAAf,CAAP;AAqBD,CA3CD;;eA6CexB,wB"}
1
+ {"version":3,"file":"build-raw-query-stringified.js","names":["buildRawQueryStringified","checkboxSelectValues","rangeValues","entity","mustFilters","length","aggs","forEach","fieldName","terms","field","KEYWORD","size","SIZE","stats","boolFilter","should","match","docType","minimum_should_match","must","JSON","stringify","query","bool","filter"],"sources":["../../../../src/components/SearchFilter/helpers/build-raw-query-stringified.js"],"sourcesContent":["import { KEYWORD, SIZE } from '../constants';\n\nconst buildRawQueryStringified = (checkboxSelectValues, rangeValues, entity, mustFilters = []) => {\n if (!checkboxSelectValues.length && !rangeValues.length) return '';\n\n const aggs = {};\n\n checkboxSelectValues.forEach(fieldName => {\n aggs[fieldName] = {\n terms: {\n field: `${fieldName}.${KEYWORD}`,\n size: SIZE\n }\n };\n });\n\n rangeValues.forEach(fieldName => {\n aggs[fieldName] = {\n stats: {\n field: fieldName\n }\n };\n });\n\n const boolFilter = {\n should: [\n {\n match: {\n docType: entity\n }\n }\n ],\n minimum_should_match: 1\n };\n\n if (mustFilters.length) {\n boolFilter.must = mustFilters;\n }\n\n return JSON.stringify({\n aggs,\n size: 0,\n query: {\n bool: {\n filter: {\n bool: boolFilter\n }\n }\n }\n });\n};\n\nexport default buildRawQueryStringified;\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AAEA,IAAMA,wBAAwB,GAAG,SAA3BA,wBAA2B,CAACC,oBAAD,EAAuBC,WAAvB,EAAoCC,MAApC,EAAiE;EAAA,IAArBC,WAAqB,uEAAP,EAAO;EAChG,IAAI,CAACH,oBAAoB,CAACI,MAAtB,IAAgC,CAACH,WAAW,CAACG,MAAjD,EAAyD,OAAO,EAAP;EAEzD,IAAMC,IAAI,GAAG,EAAb;EAEAL,oBAAoB,CAACM,OAArB,CAA6B,UAAAC,SAAS,EAAI;IACxCF,IAAI,CAACE,SAAD,CAAJ,GAAkB;MAChBC,KAAK,EAAE;QACLC,KAAK,YAAKF,SAAL,cAAkBG,kBAAlB,CADA;QAELC,IAAI,EAAEC;MAFD;IADS,CAAlB;EAMD,CAPD;EASAX,WAAW,CAACK,OAAZ,CAAoB,UAAAC,SAAS,EAAI;IAC/BF,IAAI,CAACE,SAAD,CAAJ,GAAkB;MAChBM,KAAK,EAAE;QACLJ,KAAK,EAAEF;MADF;IADS,CAAlB;EAKD,CAND;EAQA,IAAMO,UAAU,GAAG;IACjBC,MAAM,EAAE,CACN;MACEC,KAAK,EAAE;QACLC,OAAO,EAAEf;MADJ;IADT,CADM,CADS;IAQjBgB,oBAAoB,EAAE;EARL,CAAnB;;EAWA,IAAIf,WAAW,CAACC,MAAhB,EAAwB;IACtBU,UAAU,CAACK,IAAX,GAAkBhB,WAAlB;EACD;;EAED,OAAOiB,IAAI,CAACC,SAAL,CAAe;IACpBhB,IAAI,EAAJA,IADoB;IAEpBM,IAAI,EAAE,CAFc;IAGpBW,KAAK,EAAE;MACLC,IAAI,EAAE;QACJC,MAAM,EAAE;UACND,IAAI,EAAET;QADA;MADJ;IADD;EAHa,CAAf,CAAP;AAWD,CAhDD;;eAkDef,wB"}
@@ -1 +1 @@
1
- {"version":3,"file":"calculate-min-max.js","names":["calculateMinMax","filterAggregations","rangeInterval","min","max","Math","floor","Number","ceil","step"],"sources":["../../../../src/components/SearchFilter/helpers/calculate-min-max.js"],"sourcesContent":["import calculateStep from './calculate-step';\n\nconst calculateMinMax = (filterAggregations, rangeInterval) => {\n let { min, max } = filterAggregations;\n min = Math.floor(Number(min));\n max = Math.ceil(Number(max));\n min -= min % rangeInterval;\n const step = calculateStep(max, rangeInterval);\n max += step;\n return { min, max };\n};\n\nexport default calculateMinMax;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,kBAAD,EAAqBC,aAArB,EAAuC;EAC7D,IAAMC,GAAN,GAAmBF,kBAAnB,CAAME,GAAN;EAAA,IAAWC,GAAX,GAAmBH,kBAAnB,CAAWG,GAAX;EACAD,GAAG,GAAGE,IAAI,CAACC,KAAL,CAAWC,MAAM,CAACJ,GAAD,CAAjB,CAAN;EACAC,GAAG,GAAGC,IAAI,CAACG,IAAL,CAAUD,MAAM,CAACH,GAAD,CAAhB,CAAN;EACAD,GAAG,IAAIA,GAAG,GAAGD,aAAb;EACA,IAAMO,IAAI,GAAG,+BAAcL,GAAd,EAAmBF,aAAnB,CAAb;EACAE,GAAG,IAAIK,IAAP;EACA,OAAO;IAAEN,GAAG,EAAHA,GAAF;IAAOC,GAAG,EAAHA;EAAP,CAAP;AACD,CARD;;eAUeJ,e"}
1
+ {"version":3,"file":"calculate-min-max.js","names":["calculateMinMax","filterAggregations","rangeInterval","min","max","Math","floor","Number","ceil","step","calculateStep"],"sources":["../../../../src/components/SearchFilter/helpers/calculate-min-max.js"],"sourcesContent":["import calculateStep from './calculate-step';\n\nconst calculateMinMax = (filterAggregations, rangeInterval) => {\n let { min, max } = filterAggregations;\n min = Math.floor(Number(min));\n max = Math.ceil(Number(max));\n min -= min % rangeInterval;\n const step = calculateStep(max, rangeInterval);\n max += step;\n return { min, max };\n};\n\nexport default calculateMinMax;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,kBAAD,EAAqBC,aAArB,EAAuC;EAC7D,IAAMC,GAAN,GAAmBF,kBAAnB,CAAME,GAAN;EAAA,IAAWC,GAAX,GAAmBH,kBAAnB,CAAWG,GAAX;EACAD,GAAG,GAAGE,IAAI,CAACC,KAAL,CAAWC,MAAM,CAACJ,GAAD,CAAjB,CAAN;EACAC,GAAG,GAAGC,IAAI,CAACG,IAAL,CAAUD,MAAM,CAACH,GAAD,CAAhB,CAAN;EACAD,GAAG,IAAIA,GAAG,GAAGD,aAAb;EACA,IAAMO,IAAI,GAAG,IAAAC,yBAAA,EAAcN,GAAd,EAAmBF,aAAnB,CAAb;EACAE,GAAG,IAAIK,IAAP;EACA,OAAO;IAAEN,GAAG,EAAHA,GAAF;IAAOC,GAAG,EAAHA;EAAP,CAAP;AACD,CARD;;eAUeJ,e"}
@@ -1 +1 @@
1
- {"version":3,"file":"check-if-range-updated.js","names":["checkIfRangeUpdated","value","min","max","minValue","maxValue"],"sources":["../../../../src/components/SearchFilter/helpers/check-if-range-updated.js"],"sourcesContent":["import { isBrowser } from '../../../helpers';\n\nconst checkIfRangeUpdated = (value, min, max) => {\n const { minValue, maxValue } = value;\n return isBrowser() && (minValue !== min || maxValue !== max);\n};\n\nexport default checkIfRangeUpdated;\n"],"mappings":";;;;;;;;;AAAA;;AAEA,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,KAAD,EAAQC,GAAR,EAAaC,GAAb,EAAqB;EAC/C,IAAQC,QAAR,GAA+BH,KAA/B,CAAQG,QAAR;EAAA,IAAkBC,QAAlB,GAA+BJ,KAA/B,CAAkBI,QAAlB;EACA,OAAO,8BAAgBD,QAAQ,KAAKF,GAAb,IAAoBG,QAAQ,KAAKF,GAAjD,CAAP;AACD,CAHD;;eAKeH,mB"}
1
+ {"version":3,"file":"check-if-range-updated.js","names":["checkIfRangeUpdated","value","min","max","minValue","maxValue","isBrowser"],"sources":["../../../../src/components/SearchFilter/helpers/check-if-range-updated.js"],"sourcesContent":["import { isBrowser } from '../../../helpers';\n\nconst checkIfRangeUpdated = (value, min, max) => {\n const { minValue, maxValue } = value;\n return isBrowser() && (minValue !== min || maxValue !== max);\n};\n\nexport default checkIfRangeUpdated;\n"],"mappings":";;;;;;;;;AAAA;;AAEA,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,KAAD,EAAQC,GAAR,EAAaC,GAAb,EAAqB;EAC/C,IAAQC,QAAR,GAA+BH,KAA/B,CAAQG,QAAR;EAAA,IAAkBC,QAAlB,GAA+BJ,KAA/B,CAAkBI,QAAlB;EACA,OAAO,IAAAC,kBAAA,QAAgBF,QAAQ,KAAKF,GAAb,IAAoBG,QAAQ,KAAKF,GAAjD,CAAP;AACD,CAHD;;eAKeH,mB"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-filter-value-from-query.js","names":["getFilterValueFromQuery","key","filterProps","filterData","query","min","max","rangeInterval","type","queryValue","RANGE","CHECKBOX","map","val","SELECT"],"sources":["../../../../src/components/SearchFilter/helpers/get-filter-value-from-query.js"],"sourcesContent":["import { RANGE, CHECKBOX, SELECT } from '../constants';\nimport getRangeValue from './get-range-value';\nimport { decodeValue } from './decode-encode';\n\nconst getFilterValueFromQuery = (key, filterProps, filterData, query) => {\n const { min, max } = filterData;\n const { rangeInterval, type } = filterProps;\n const queryValue = query[key];\n if (!queryValue && type !== RANGE) return null;\n\n switch (type) {\n case RANGE:\n return getRangeValue(queryValue, rangeInterval, min, max);\n case CHECKBOX:\n return typeof queryValue === 'string'\n ? [decodeValue(queryValue)]\n : queryValue.map(val => decodeValue(val));\n case SELECT:\n return decodeValue(queryValue);\n\n default:\n return null;\n }\n};\n\nexport default getFilterValueFromQuery;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACC,GAAD,EAAMC,WAAN,EAAmBC,UAAnB,EAA+BC,KAA/B,EAAyC;EACvE,IAAQC,GAAR,GAAqBF,UAArB,CAAQE,GAAR;EAAA,IAAaC,GAAb,GAAqBH,UAArB,CAAaG,GAAb;EACA,IAAQC,aAAR,GAAgCL,WAAhC,CAAQK,aAAR;EAAA,IAAuBC,IAAvB,GAAgCN,WAAhC,CAAuBM,IAAvB;EACA,IAAMC,UAAU,GAAGL,KAAK,CAACH,GAAD,CAAxB;EACA,IAAI,CAACQ,UAAD,IAAeD,IAAI,KAAKE,gBAA5B,EAAmC,OAAO,IAAP;;EAEnC,QAAQF,IAAR;IACE,KAAKE,gBAAL;MACE,OAAO,+BAAcD,UAAd,EAA0BF,aAA1B,EAAyCF,GAAzC,EAA8CC,GAA9C,CAAP;;IACF,KAAKK,mBAAL;MACE,OAAO,OAAOF,UAAP,KAAsB,QAAtB,GACH,CAAC,+BAAYA,UAAZ,CAAD,CADG,GAEHA,UAAU,CAACG,GAAX,CAAe,UAAAC,GAAG;QAAA,OAAI,+BAAYA,GAAZ,CAAJ;MAAA,CAAlB,CAFJ;;IAGF,KAAKC,iBAAL;MACE,OAAO,+BAAYL,UAAZ,CAAP;;IAEF;MACE,OAAO,IAAP;EAXJ;AAaD,CAnBD;;eAqBeT,uB"}
1
+ {"version":3,"file":"get-filter-value-from-query.js","names":["getFilterValueFromQuery","key","filterProps","filterData","query","min","max","rangeInterval","type","queryValue","RANGE","getRangeValue","CHECKBOX","decodeValue","map","val","SELECT"],"sources":["../../../../src/components/SearchFilter/helpers/get-filter-value-from-query.js"],"sourcesContent":["import { RANGE, CHECKBOX, SELECT } from '../constants';\nimport getRangeValue from './get-range-value';\nimport { decodeValue } from './decode-encode';\n\nconst getFilterValueFromQuery = (key, filterProps, filterData, query) => {\n const { min, max } = filterData;\n const { rangeInterval, type } = filterProps;\n const queryValue = query[key];\n if (!queryValue && type !== RANGE) return null;\n\n switch (type) {\n case RANGE:\n return getRangeValue(queryValue, rangeInterval, min, max);\n case CHECKBOX:\n return typeof queryValue === 'string'\n ? [decodeValue(queryValue)]\n : queryValue.map(val => decodeValue(val));\n case SELECT:\n return decodeValue(queryValue);\n\n default:\n return null;\n }\n};\n\nexport default getFilterValueFromQuery;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACC,GAAD,EAAMC,WAAN,EAAmBC,UAAnB,EAA+BC,KAA/B,EAAyC;EACvE,IAAQC,GAAR,GAAqBF,UAArB,CAAQE,GAAR;EAAA,IAAaC,GAAb,GAAqBH,UAArB,CAAaG,GAAb;EACA,IAAQC,aAAR,GAAgCL,WAAhC,CAAQK,aAAR;EAAA,IAAuBC,IAAvB,GAAgCN,WAAhC,CAAuBM,IAAvB;EACA,IAAMC,UAAU,GAAGL,KAAK,CAACH,GAAD,CAAxB;EACA,IAAI,CAACQ,UAAD,IAAeD,IAAI,KAAKE,gBAA5B,EAAmC,OAAO,IAAP;;EAEnC,QAAQF,IAAR;IACE,KAAKE,gBAAL;MACE,OAAO,IAAAC,yBAAA,EAAcF,UAAd,EAA0BF,aAA1B,EAAyCF,GAAzC,EAA8CC,GAA9C,CAAP;;IACF,KAAKM,mBAAL;MACE,OAAO,OAAOH,UAAP,KAAsB,QAAtB,GACH,CAAC,IAAAI,yBAAA,EAAYJ,UAAZ,CAAD,CADG,GAEHA,UAAU,CAACK,GAAX,CAAe,UAAAC,GAAG;QAAA,OAAI,IAAAF,yBAAA,EAAYE,GAAZ,CAAJ;MAAA,CAAlB,CAFJ;;IAGF,KAAKC,iBAAL;MACE,OAAO,IAAAH,yBAAA,EAAYJ,UAAZ,CAAP;;IAEF;MACE,OAAO,IAAP;EAXJ;AAaD,CAnBD;;eAqBeT,uB"}
@@ -30,19 +30,19 @@ var getInitialFilterValues = function getInitialFilterValues(filterData, filters
30
30
  filterValues[_constants.SEARCH_TERM] = query[_constants.SEARCH_TERM] || '';
31
31
 
32
32
  if (!filterData) {
33
- filters.forEach(function (_ref) {
34
- var _ref$propsToDisplay = (0, _slicedToArray2["default"])(_ref.propsToDisplay, 1),
35
- key = _ref$propsToDisplay[0];
33
+ filters.forEach(function (filterProps) {
34
+ var _filterProps$propsToD = (0, _slicedToArray2["default"])(filterProps.propsToDisplay, 1),
35
+ key = _filterProps$propsToD[0];
36
36
 
37
- filterValues[key] = null;
37
+ filterValues[key] = query[key] ? (0, _getFilterValueFromQuery["default"])(key, filterProps, {}, query) : null;
38
38
  });
39
39
  filterValues.dataNotSet = true;
40
40
  return filterValues;
41
41
  }
42
42
 
43
43
  Object.keys(filterData).forEach(function (key) {
44
- var filterProps = filters.find(function (_ref2) {
45
- var propsToDisplay = _ref2.propsToDisplay;
44
+ var filterProps = filters.find(function (_ref) {
45
+ var propsToDisplay = _ref.propsToDisplay;
46
46
  return propsToDisplay.find(function (prop) {
47
47
  return key === prop;
48
48
  });
@@ -1 +1 @@
1
- {"version":3,"file":"get-initial-filter-values.js","names":["getInitialFilterValues","filterData","filters","query","filterValues","SEARCH_TERM","forEach","propsToDisplay","key","dataNotSet","Object","keys","filterProps","find","prop"],"sources":["../../../../src/components/SearchFilter/helpers/get-initial-filter-values.js"],"sourcesContent":["import { SEARCH_TERM } from '../constants';\nimport getFilterValueFromQuery from './get-filter-value-from-query';\n\nconst getInitialFilterValues = (filterData, filters, query) => {\n const filterValues = {};\n filterValues[SEARCH_TERM] = query[SEARCH_TERM] || '';\n\n if (!filterData) {\n filters.forEach(({ propsToDisplay: [key] }) => {\n filterValues[key] = null;\n });\n filterValues.dataNotSet = true;\n return filterValues;\n }\n\n Object.keys(filterData).forEach(key => {\n const filterProps =\n filters.find(({ propsToDisplay }) => propsToDisplay.find(prop => key === prop)) || {};\n filterValues[key] = getFilterValueFromQuery(key, filterProps, filterData[key], query);\n });\n\n filterValues.dataNotSet = false;\n\n return filterValues;\n};\n\nexport default getInitialFilterValues;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACC,UAAD,EAAaC,OAAb,EAAsBC,KAAtB,EAAgC;EAC7D,IAAMC,YAAY,GAAG,EAArB;EACAA,YAAY,CAACC,sBAAD,CAAZ,GAA4BF,KAAK,CAACE,sBAAD,CAAL,IAAsB,EAAlD;;EAEA,IAAI,CAACJ,UAAL,EAAiB;IACfC,OAAO,CAACI,OAAR,CAAgB,gBAA+B;MAAA,+DAA5BC,cAA4B;MAAA,IAAXC,GAAW;;MAC7CJ,YAAY,CAACI,GAAD,CAAZ,GAAoB,IAApB;IACD,CAFD;IAGAJ,YAAY,CAACK,UAAb,GAA0B,IAA1B;IACA,OAAOL,YAAP;EACD;;EAEDM,MAAM,CAACC,IAAP,CAAYV,UAAZ,EAAwBK,OAAxB,CAAgC,UAAAE,GAAG,EAAI;IACrC,IAAMI,WAAW,GACfV,OAAO,CAACW,IAAR,CAAa;MAAA,IAAGN,cAAH,SAAGA,cAAH;MAAA,OAAwBA,cAAc,CAACM,IAAf,CAAoB,UAAAC,IAAI;QAAA,OAAIN,GAAG,KAAKM,IAAZ;MAAA,CAAxB,CAAxB;IAAA,CAAb,KAAmF,EADrF;IAEAV,YAAY,CAACI,GAAD,CAAZ,GAAoB,yCAAwBA,GAAxB,EAA6BI,WAA7B,EAA0CX,UAAU,CAACO,GAAD,CAApD,EAA2DL,KAA3D,CAApB;EACD,CAJD;EAMAC,YAAY,CAACK,UAAb,GAA0B,KAA1B;EAEA,OAAOL,YAAP;AACD,CArBD;;eAuBeJ,sB"}
1
+ {"version":3,"file":"get-initial-filter-values.js","names":["getInitialFilterValues","filterData","filters","query","filterValues","SEARCH_TERM","forEach","filterProps","propsToDisplay","key","getFilterValueFromQuery","dataNotSet","Object","keys","find","prop"],"sources":["../../../../src/components/SearchFilter/helpers/get-initial-filter-values.js"],"sourcesContent":["import { SEARCH_TERM } from '../constants';\nimport getFilterValueFromQuery from './get-filter-value-from-query';\n\nconst getInitialFilterValues = (filterData, filters, query) => {\n const filterValues = {};\n filterValues[SEARCH_TERM] = query[SEARCH_TERM] || '';\n\n if (!filterData) {\n filters.forEach(filterProps => {\n const {\n propsToDisplay: [key]\n } = filterProps;\n filterValues[key] = query[key] ? getFilterValueFromQuery(key, filterProps, {}, query) : null;\n });\n filterValues.dataNotSet = true;\n return filterValues;\n }\n\n Object.keys(filterData).forEach(key => {\n const filterProps =\n filters.find(({ propsToDisplay }) => propsToDisplay.find(prop => key === prop)) || {};\n filterValues[key] = getFilterValueFromQuery(key, filterProps, filterData[key], query);\n });\n\n filterValues.dataNotSet = false;\n\n return filterValues;\n};\n\nexport default getInitialFilterValues;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACC,UAAD,EAAaC,OAAb,EAAsBC,KAAtB,EAAgC;EAC7D,IAAMC,YAAY,GAAG,EAArB;EACAA,YAAY,CAACC,sBAAD,CAAZ,GAA4BF,KAAK,CAACE,sBAAD,CAAL,IAAsB,EAAlD;;EAEA,IAAI,CAACJ,UAAL,EAAiB;IACfC,OAAO,CAACI,OAAR,CAAgB,UAAAC,WAAW,EAAI;MAC7B,4DAEIA,WAFJ,CACEC,cADF;MAAA,IACmBC,GADnB;;MAGAL,YAAY,CAACK,GAAD,CAAZ,GAAoBN,KAAK,CAACM,GAAD,CAAL,GAAa,IAAAC,mCAAA,EAAwBD,GAAxB,EAA6BF,WAA7B,EAA0C,EAA1C,EAA8CJ,KAA9C,CAAb,GAAoE,IAAxF;IACD,CALD;IAMAC,YAAY,CAACO,UAAb,GAA0B,IAA1B;IACA,OAAOP,YAAP;EACD;;EAEDQ,MAAM,CAACC,IAAP,CAAYZ,UAAZ,EAAwBK,OAAxB,CAAgC,UAAAG,GAAG,EAAI;IACrC,IAAMF,WAAW,GACfL,OAAO,CAACY,IAAR,CAAa;MAAA,IAAGN,cAAH,QAAGA,cAAH;MAAA,OAAwBA,cAAc,CAACM,IAAf,CAAoB,UAAAC,IAAI;QAAA,OAAIN,GAAG,KAAKM,IAAZ;MAAA,CAAxB,CAAxB;IAAA,CAAb,KAAmF,EADrF;IAEAX,YAAY,CAACK,GAAD,CAAZ,GAAoB,IAAAC,mCAAA,EAAwBD,GAAxB,EAA6BF,WAA7B,EAA0CN,UAAU,CAACQ,GAAD,CAApD,EAA2DN,KAA3D,CAApB;EACD,CAJD;EAMAC,YAAY,CAACO,UAAb,GAA0B,KAA1B;EAEA,OAAOP,YAAP;AACD,CAxBD;;eA0BeJ,sB"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-intersected-prop.js","names":["getIntersectedProp","rangeQueryValues","propsToDisplay","Object","keys"],"sources":["../../../../src/components/SearchFilter/helpers/get-intersected-prop.js"],"sourcesContent":["import intersection from 'lodash.intersection';\n\nconst getIntersectedProp = (rangeQueryValues, propsToDisplay) =>\n intersection(Object.keys(rangeQueryValues), propsToDisplay)[0];\n\nexport default getIntersectedProp;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AAEA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,gBAAD,EAAmBC,cAAnB;EAAA,OACzB,wBAAaC,MAAM,CAACC,IAAP,CAAYH,gBAAZ,CAAb,EAA4CC,cAA5C,EAA4D,CAA5D,CADyB;AAAA,CAA3B;;eAGeF,kB"}
1
+ {"version":3,"file":"get-intersected-prop.js","names":["getIntersectedProp","rangeQueryValues","propsToDisplay","intersection","Object","keys"],"sources":["../../../../src/components/SearchFilter/helpers/get-intersected-prop.js"],"sourcesContent":["import intersection from 'lodash.intersection';\n\nconst getIntersectedProp = (rangeQueryValues, propsToDisplay) =>\n intersection(Object.keys(rangeQueryValues), propsToDisplay)[0];\n\nexport default getIntersectedProp;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AAEA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,gBAAD,EAAmBC,cAAnB;EAAA,OACzB,IAAAC,kBAAA,EAAaC,MAAM,CAACC,IAAP,CAAYJ,gBAAZ,CAAb,EAA4CC,cAA5C,EAA4D,CAA5D,CADyB;AAAA,CAA3B;;eAGeF,kB"}
@@ -17,6 +17,8 @@ require("core-js/modules/es.string.split.js");
17
17
 
18
18
  require("core-js/modules/es.number.constructor.js");
19
19
 
20
+ require("core-js/modules/es.number.is-nan.js");
21
+
20
22
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
21
23
 
22
24
  var _calculateMinMax2 = _interopRequireDefault(require("./calculate-min-max"));
@@ -38,8 +40,8 @@ var getRangeValue = function getRangeValue(rawQueryProp, rangeInterval, _min, _m
38
40
  var updatedMinValue = Number(queryParamMin);
39
41
  var updatedMaxValue = Number(queryParamMax);
40
42
  return {
41
- min: min,
42
- max: max,
43
+ min: Number.isNaN(min) ? updatedMinValue : min,
44
+ max: Number.isNaN(max) ? updatedMaxValue : max,
43
45
  step: rangeInterval,
44
46
  maxValue: updatedMaxValue,
45
47
  minValue: updatedMinValue
@@ -1 +1 @@
1
- {"version":3,"file":"get-range-value.js","names":["getRangeValue","rawQueryProp","rangeInterval","_min","_max","min","max","Array","isArray","split","queryParamMin","queryParamMax","updatedMinValue","Number","updatedMaxValue","step","maxValue","minValue"],"sources":["../../../../src/components/SearchFilter/helpers/get-range-value.js"],"sourcesContent":["import calculateMinMax from './calculate-min-max';\n\nconst getRangeValue = (rawQueryProp, rangeInterval, _min, _max) => {\n const { min, max } = calculateMinMax({ min: _min, max: _max }, rangeInterval);\n\n if (rawQueryProp) {\n const [queryParamMin, queryParamMax] = Array.isArray(rawQueryProp)\n ? rawQueryProp[0].split('-')\n : rawQueryProp.split('-');\n const updatedMinValue = Number(queryParamMin);\n const updatedMaxValue = Number(queryParamMax);\n\n return {\n min,\n max,\n step: rangeInterval,\n maxValue: updatedMaxValue,\n minValue: updatedMinValue\n };\n }\n\n return {\n max,\n min,\n step: rangeInterval,\n maxValue: max,\n minValue: min\n };\n};\n\nexport default getRangeValue;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CAACC,YAAD,EAAeC,aAAf,EAA8BC,IAA9B,EAAoCC,IAApC,EAA6C;EACjE,uBAAqB,kCAAgB;IAAEC,GAAG,EAAEF,IAAP;IAAaG,GAAG,EAAEF;EAAlB,CAAhB,EAA0CF,aAA1C,CAArB;EAAA,IAAQG,GAAR,oBAAQA,GAAR;EAAA,IAAaC,GAAb,oBAAaA,GAAb;;EAEA,IAAIL,YAAJ,EAAkB;IAChB,WAAuCM,KAAK,CAACC,OAAN,CAAcP,YAAd,IACnCA,YAAY,CAAC,CAAD,CAAZ,CAAgBQ,KAAhB,CAAsB,GAAtB,CADmC,GAEnCR,YAAY,CAACQ,KAAb,CAAmB,GAAnB,CAFJ;IAAA;IAAA,IAAOC,aAAP;IAAA,IAAsBC,aAAtB;;IAGA,IAAMC,eAAe,GAAGC,MAAM,CAACH,aAAD,CAA9B;IACA,IAAMI,eAAe,GAAGD,MAAM,CAACF,aAAD,CAA9B;IAEA,OAAO;MACLN,GAAG,EAAHA,GADK;MAELC,GAAG,EAAHA,GAFK;MAGLS,IAAI,EAAEb,aAHD;MAILc,QAAQ,EAAEF,eAJL;MAKLG,QAAQ,EAAEL;IALL,CAAP;EAOD;;EAED,OAAO;IACLN,GAAG,EAAHA,GADK;IAELD,GAAG,EAAHA,GAFK;IAGLU,IAAI,EAAEb,aAHD;IAILc,QAAQ,EAAEV,GAJL;IAKLW,QAAQ,EAAEZ;EALL,CAAP;AAOD,CA1BD;;eA4BeL,a"}
1
+ {"version":3,"file":"get-range-value.js","names":["getRangeValue","rawQueryProp","rangeInterval","_min","_max","calculateMinMax","min","max","Array","isArray","split","queryParamMin","queryParamMax","updatedMinValue","Number","updatedMaxValue","isNaN","step","maxValue","minValue"],"sources":["../../../../src/components/SearchFilter/helpers/get-range-value.js"],"sourcesContent":["import calculateMinMax from './calculate-min-max';\n\nconst getRangeValue = (rawQueryProp, rangeInterval, _min, _max) => {\n const { min, max } = calculateMinMax({ min: _min, max: _max }, rangeInterval);\n\n if (rawQueryProp) {\n const [queryParamMin, queryParamMax] = Array.isArray(rawQueryProp)\n ? rawQueryProp[0].split('-')\n : rawQueryProp.split('-');\n const updatedMinValue = Number(queryParamMin);\n const updatedMaxValue = Number(queryParamMax);\n\n return {\n min: Number.isNaN(min) ? updatedMinValue : min,\n max: Number.isNaN(max) ? updatedMaxValue : max,\n step: rangeInterval,\n maxValue: updatedMaxValue,\n minValue: updatedMinValue\n };\n }\n\n return {\n max,\n min,\n step: rangeInterval,\n maxValue: max,\n minValue: min\n };\n};\n\nexport default getRangeValue;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CAACC,YAAD,EAAeC,aAAf,EAA8BC,IAA9B,EAAoCC,IAApC,EAA6C;EACjE,uBAAqB,IAAAC,4BAAA,EAAgB;IAAEC,GAAG,EAAEH,IAAP;IAAaI,GAAG,EAAEH;EAAlB,CAAhB,EAA0CF,aAA1C,CAArB;EAAA,IAAQI,GAAR,oBAAQA,GAAR;EAAA,IAAaC,GAAb,oBAAaA,GAAb;;EAEA,IAAIN,YAAJ,EAAkB;IAChB,WAAuCO,KAAK,CAACC,OAAN,CAAcR,YAAd,IACnCA,YAAY,CAAC,CAAD,CAAZ,CAAgBS,KAAhB,CAAsB,GAAtB,CADmC,GAEnCT,YAAY,CAACS,KAAb,CAAmB,GAAnB,CAFJ;IAAA;IAAA,IAAOC,aAAP;IAAA,IAAsBC,aAAtB;;IAGA,IAAMC,eAAe,GAAGC,MAAM,CAACH,aAAD,CAA9B;IACA,IAAMI,eAAe,GAAGD,MAAM,CAACF,aAAD,CAA9B;IAEA,OAAO;MACLN,GAAG,EAAEQ,MAAM,CAACE,KAAP,CAAaV,GAAb,IAAoBO,eAApB,GAAsCP,GADtC;MAELC,GAAG,EAAEO,MAAM,CAACE,KAAP,CAAaT,GAAb,IAAoBQ,eAApB,GAAsCR,GAFtC;MAGLU,IAAI,EAAEf,aAHD;MAILgB,QAAQ,EAAEH,eAJL;MAKLI,QAAQ,EAAEN;IALL,CAAP;EAOD;;EAED,OAAO;IACLN,GAAG,EAAHA,GADK;IAELD,GAAG,EAAHA,GAFK;IAGLW,IAAI,EAAEf,aAHD;IAILgB,QAAQ,EAAEX,GAJL;IAKLY,QAAQ,EAAEb;EALL,CAAP;AAOD,CA1BD;;eA4BeN,a"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-responsive-filter-classnames.js","names":["getResponsiveFilterClassnames","moreFiltersDesktopCollapsed","moreFiltersMobileCollapsed","moreFiltersMobileWrapperClass","MORE_FILTERS_CLASSES","MOBILE_WRAPPER","moreFiltersMobileTogglerClass","MOBILE_TOGGLER","moreFiltersDesktopWrapperClass","DESKTOP_WRAPPER","moreFiltersDesktopTogglerClass","DESKTOP_TOGGLER"],"sources":["../../../../src/components/SearchFilter/helpers/get-responsive-filter-classnames.js"],"sourcesContent":["import classnames from 'classnames';\nimport { MORE_FILTERS_CLASSES } from '../constants';\n\nconst getResponsiveFilterClassnames = (\n moreFiltersDesktopCollapsed,\n moreFiltersMobileCollapsed\n) => ({\n moreFiltersMobileWrapperClass: classnames(MORE_FILTERS_CLASSES.MOBILE_WRAPPER, {\n [`${MORE_FILTERS_CLASSES.MOBILE_WRAPPER}--open`]: !moreFiltersMobileCollapsed\n }),\n moreFiltersMobileTogglerClass: classnames(MORE_FILTERS_CLASSES.MOBILE_TOGGLER, {\n [`${MORE_FILTERS_CLASSES.MOBILE_TOGGLER}--open`]: !moreFiltersMobileCollapsed\n }),\n moreFiltersDesktopWrapperClass: classnames(MORE_FILTERS_CLASSES.DESKTOP_WRAPPER, {\n [`${MORE_FILTERS_CLASSES.DESKTOP_WRAPPER}--open`]: !moreFiltersDesktopCollapsed\n }),\n moreFiltersDesktopTogglerClass: classnames(MORE_FILTERS_CLASSES.DESKTOP_TOGGLER, {\n [`${MORE_FILTERS_CLASSES.DESKTOP_TOGGLER}--open`]: !moreFiltersDesktopCollapsed\n })\n});\n\nexport default getResponsiveFilterClassnames;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,6BAA6B,GAAG,SAAhCA,6BAAgC,CACpCC,2BADoC,EAEpCC,0BAFoC;EAAA,OAGhC;IACJC,6BAA6B,EAAE,6BAAWC,gCAAqBC,cAAhC,iDACzBD,gCAAqBC,cADI,aACqB,CAACH,0BADtB,EAD3B;IAIJI,6BAA6B,EAAE,6BAAWF,gCAAqBG,cAAhC,iDACzBH,gCAAqBG,cADI,aACqB,CAACL,0BADtB,EAJ3B;IAOJM,8BAA8B,EAAE,6BAAWJ,gCAAqBK,eAAhC,iDAC1BL,gCAAqBK,eADK,aACqB,CAACR,2BADtB,EAP5B;IAUJS,8BAA8B,EAAE,6BAAWN,gCAAqBO,eAAhC,iDAC1BP,gCAAqBO,eADK,aACqB,CAACV,2BADtB;EAV5B,CAHgC;AAAA,CAAtC;;eAkBeD,6B"}
1
+ {"version":3,"file":"get-responsive-filter-classnames.js","names":["getResponsiveFilterClassnames","moreFiltersDesktopCollapsed","moreFiltersMobileCollapsed","moreFiltersMobileWrapperClass","classnames","MORE_FILTERS_CLASSES","MOBILE_WRAPPER","moreFiltersMobileTogglerClass","MOBILE_TOGGLER","moreFiltersDesktopWrapperClass","DESKTOP_WRAPPER","moreFiltersDesktopTogglerClass","DESKTOP_TOGGLER"],"sources":["../../../../src/components/SearchFilter/helpers/get-responsive-filter-classnames.js"],"sourcesContent":["import classnames from 'classnames';\nimport { MORE_FILTERS_CLASSES } from '../constants';\n\nconst getResponsiveFilterClassnames = (\n moreFiltersDesktopCollapsed,\n moreFiltersMobileCollapsed\n) => ({\n moreFiltersMobileWrapperClass: classnames(MORE_FILTERS_CLASSES.MOBILE_WRAPPER, {\n [`${MORE_FILTERS_CLASSES.MOBILE_WRAPPER}--open`]: !moreFiltersMobileCollapsed\n }),\n moreFiltersMobileTogglerClass: classnames(MORE_FILTERS_CLASSES.MOBILE_TOGGLER, {\n [`${MORE_FILTERS_CLASSES.MOBILE_TOGGLER}--open`]: !moreFiltersMobileCollapsed\n }),\n moreFiltersDesktopWrapperClass: classnames(MORE_FILTERS_CLASSES.DESKTOP_WRAPPER, {\n [`${MORE_FILTERS_CLASSES.DESKTOP_WRAPPER}--open`]: !moreFiltersDesktopCollapsed\n }),\n moreFiltersDesktopTogglerClass: classnames(MORE_FILTERS_CLASSES.DESKTOP_TOGGLER, {\n [`${MORE_FILTERS_CLASSES.DESKTOP_TOGGLER}--open`]: !moreFiltersDesktopCollapsed\n })\n});\n\nexport default getResponsiveFilterClassnames;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,6BAA6B,GAAG,SAAhCA,6BAAgC,CACpCC,2BADoC,EAEpCC,0BAFoC;EAAA,OAGhC;IACJC,6BAA6B,EAAE,IAAAC,uBAAA,EAAWC,+BAAA,CAAqBC,cAAhC,iDACzBD,+BAAA,CAAqBC,cADI,aACqB,CAACJ,0BADtB,EAD3B;IAIJK,6BAA6B,EAAE,IAAAH,uBAAA,EAAWC,+BAAA,CAAqBG,cAAhC,iDACzBH,+BAAA,CAAqBG,cADI,aACqB,CAACN,0BADtB,EAJ3B;IAOJO,8BAA8B,EAAE,IAAAL,uBAAA,EAAWC,+BAAA,CAAqBK,eAAhC,iDAC1BL,+BAAA,CAAqBK,eADK,aACqB,CAACT,2BADtB,EAP5B;IAUJU,8BAA8B,EAAE,IAAAP,uBAAA,EAAWC,+BAAA,CAAqBO,eAAhC,iDAC1BP,+BAAA,CAAqBO,eADK,aACqB,CAACX,2BADtB;EAV5B,CAHgC;AAAA,CAAtC;;eAkBeD,6B"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-select-options.js","names":["getSelectOptions","entitySchema","propsToDisplay","length","properties","dynamicProperties","map","propToDisplay","displayValue"],"sources":["../../../../src/components/SearchFilter/helpers/get-select-options.js"],"sourcesContent":["import getDisplayValue from './get-display-value';\n\nconst getSelectOptions = (entitySchema, propsToDisplay) => {\n if (!propsToDisplay || !propsToDisplay.length) return [];\n\n const { properties = {}, dynamicProperties = {} } = entitySchema;\n\n return propsToDisplay.map(propToDisplay => {\n const displayValue =\n getDisplayValue(propToDisplay, properties) ||\n getDisplayValue(propToDisplay, dynamicProperties) ||\n propToDisplay;\n\n return [propToDisplay, displayValue];\n });\n};\n\nexport default getSelectOptions;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,YAAD,EAAeC,cAAf,EAAkC;EACzD,IAAI,CAACA,cAAD,IAAmB,CAACA,cAAc,CAACC,MAAvC,EAA+C,OAAO,EAAP;EAE/C,4BAAoDF,YAApD,CAAQG,UAAR;EAAA,IAAQA,UAAR,sCAAqB,EAArB;EAAA,4BAAoDH,YAApD,CAAyBI,iBAAzB;EAAA,IAAyBA,iBAAzB,sCAA6C,EAA7C;EAEA,OAAOH,cAAc,CAACI,GAAf,CAAmB,UAAAC,aAAa,EAAI;IACzC,IAAMC,YAAY,GAChB,iCAAgBD,aAAhB,EAA+BH,UAA/B,KACA,iCAAgBG,aAAhB,EAA+BF,iBAA/B,CADA,IAEAE,aAHF;IAKA,OAAO,CAACA,aAAD,EAAgBC,YAAhB,CAAP;EACD,CAPM,CAAP;AAQD,CAbD;;eAeeR,gB"}
1
+ {"version":3,"file":"get-select-options.js","names":["getSelectOptions","entitySchema","propsToDisplay","length","properties","dynamicProperties","map","propToDisplay","displayValue","getDisplayValue"],"sources":["../../../../src/components/SearchFilter/helpers/get-select-options.js"],"sourcesContent":["import getDisplayValue from './get-display-value';\n\nconst getSelectOptions = (entitySchema, propsToDisplay) => {\n if (!propsToDisplay || !propsToDisplay.length) return [];\n\n const { properties = {}, dynamicProperties = {} } = entitySchema;\n\n return propsToDisplay.map(propToDisplay => {\n const displayValue =\n getDisplayValue(propToDisplay, properties) ||\n getDisplayValue(propToDisplay, dynamicProperties) ||\n propToDisplay;\n\n return [propToDisplay, displayValue];\n });\n};\n\nexport default getSelectOptions;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,YAAD,EAAeC,cAAf,EAAkC;EACzD,IAAI,CAACA,cAAD,IAAmB,CAACA,cAAc,CAACC,MAAvC,EAA+C,OAAO,EAAP;EAE/C,4BAAoDF,YAApD,CAAQG,UAAR;EAAA,IAAQA,UAAR,sCAAqB,EAArB;EAAA,4BAAoDH,YAApD,CAAyBI,iBAAzB;EAAA,IAAyBA,iBAAzB,sCAA6C,EAA7C;EAEA,OAAOH,cAAc,CAACI,GAAf,CAAmB,UAAAC,aAAa,EAAI;IACzC,IAAMC,YAAY,GAChB,IAAAC,2BAAA,EAAgBF,aAAhB,EAA+BH,UAA/B,KACA,IAAAK,2BAAA,EAAgBF,aAAhB,EAA+BF,iBAA/B,CADA,IAEAE,aAHF;IAKA,OAAO,CAACA,aAAD,EAAgBC,YAAhB,CAAP;EACD,CAPM,CAAP;AAQD,CAbD;;eAeeR,gB"}
@@ -1 +1 @@
1
- {"version":3,"file":"SearchFilterSort.js","names":["SearchFilterSort","router","filters","elementLabel","selectLabel","id","asPath","url","query","sort","sortby","selectedValue","defaultTextValue","DEFAULT_SORT","options","map","optionLabel","label","propsToDisplay","sortValue","setSortValue","value","propTypes","PropTypes","object","isRequired","array","string","defaultProps"],"sources":["../../../src/components/SearchFilterSort/SearchFilterSort.js"],"sourcesContent":["import React from 'react';\nimport Select from '@blaze-react/select';\nimport { withRouter } from 'next/router';\nimport { parseUrl } from 'query-string';\nimport PropTypes from 'prop-types';\nimport { DEFAULT_SORT } from './constants';\nimport { handleSortUpdate } from './helpers';\nimport { withTitle } from '../../HOC';\n\nconst SearchFilterSort = ({ router, filters, elementLabel, selectLabel, id }) => {\n const { asPath } = router;\n const { url, query, query: { sort, sortby } = {} } = parseUrl(asPath);\n const selectedValue = `${sortby}:${sort}` || '';\n const defaultTextValue = selectLabel || DEFAULT_SORT;\n const options = filters.map(({ label: optionLabel, propsToDisplay, sort: sortValue }) => [\n `${propsToDisplay[0]}:${sortValue}`,\n optionLabel\n ]);\n\n const setSortValue = ({ value }) => handleSortUpdate(router, value, query, url, selectLabel);\n\n return (\n <div className=\"sort-by\">\n <Select\n label={elementLabel}\n defaultTextValue={defaultTextValue}\n value={selectedValue}\n id={id}\n options={options}\n onChange={setSortValue}\n />\n </div>\n );\n};\n\nSearchFilterSort.propTypes = {\n router: PropTypes.object.isRequired,\n filters: PropTypes.array,\n elementLabel: PropTypes.string,\n selectLabel: PropTypes.string,\n id: PropTypes.string\n};\n\nSearchFilterSort.defaultProps = {\n filters: [],\n elementLabel: '',\n selectLabel: '',\n id: ''\n};\n\nexport default withRouter(withTitle(SearchFilterSort));\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,OAAwD;EAAA,IAArDC,MAAqD,QAArDA,MAAqD;EAAA,IAA7CC,OAA6C,QAA7CA,OAA6C;EAAA,IAApCC,YAAoC,QAApCA,YAAoC;EAAA,IAAtBC,WAAsB,QAAtBA,WAAsB;EAAA,IAATC,EAAS,QAATA,EAAS;EAC/E,IAAQC,MAAR,GAAmBL,MAAnB,CAAQK,MAAR;;EACA,gBAAqD,2BAASA,MAAT,CAArD;EAAA,IAAQC,GAAR,aAAQA,GAAR;EAAA,IAAaC,KAAb,aAAaA,KAAb;EAAA,gCAAoBA,KAApB;;EAAA,+CAA8C,EAA9C;EAAA,IAA6BC,IAA7B,mBAA6BA,IAA7B;EAAA,IAAmCC,MAAnC,mBAAmCA,MAAnC;EACA,IAAMC,aAAa,GAAG,UAAGD,MAAH,cAAaD,IAAb,KAAuB,EAA7C;EACA,IAAMG,gBAAgB,GAAGR,WAAW,IAAIS,uBAAxC;EACA,IAAMC,OAAO,GAAGZ,OAAO,CAACa,GAAR,CAAY;IAAA,IAAUC,WAAV,SAAGC,KAAH;IAAA,IAAuBC,cAAvB,SAAuBA,cAAvB;IAAA,IAA6CC,SAA7C,SAAuCV,IAAvC;IAAA,OAA6D,WACpFS,cAAc,CAAC,CAAD,CADsE,cAC/DC,SAD+D,GAEvFH,WAFuF,CAA7D;EAAA,CAAZ,CAAhB;;EAKA,IAAMI,YAAY,GAAG,SAAfA,YAAe;IAAA,IAAGC,KAAH,SAAGA,KAAH;IAAA,OAAe,+BAAiBpB,MAAjB,EAAyBoB,KAAzB,EAAgCb,KAAhC,EAAuCD,GAAvC,EAA4CH,WAA5C,CAAf;EAAA,CAArB;;EAEA,oBACE;IAAK,SAAS,EAAC;EAAf,gBACE,gCAAC,kBAAD;IACE,KAAK,EAAED,YADT;IAEE,gBAAgB,EAAES,gBAFpB;IAGE,KAAK,EAAED,aAHT;IAIE,EAAE,EAAEN,EAJN;IAKE,OAAO,EAAES,OALX;IAME,QAAQ,EAAEM;EANZ,EADF,CADF;AAYD,CAxBD;;AA0BApB,gBAAgB,CAACsB,SAAjB,GAA6B;EAC3BrB,MAAM,EAAEsB,sBAAUC,MAAV,CAAiBC,UADE;EAE3BvB,OAAO,EAAEqB,sBAAUG,KAFQ;EAG3BvB,YAAY,EAAEoB,sBAAUI,MAHG;EAI3BvB,WAAW,EAAEmB,sBAAUI,MAJI;EAK3BtB,EAAE,EAAEkB,sBAAUI;AALa,CAA7B;AAQA3B,gBAAgB,CAAC4B,YAAjB,GAAgC;EAC9B1B,OAAO,EAAE,EADqB;EAE9BC,YAAY,EAAE,EAFgB;EAG9BC,WAAW,EAAE,EAHiB;EAI9BC,EAAE,EAAE;AAJ0B,CAAhC;;eAOe,wBAAW,oBAAUL,gBAAV,CAAX,C"}
1
+ {"version":3,"file":"SearchFilterSort.js","names":["SearchFilterSort","router","filters","elementLabel","selectLabel","id","asPath","parseUrl","url","query","sort","sortby","selectedValue","defaultTextValue","DEFAULT_SORT","options","map","optionLabel","label","propsToDisplay","sortValue","setSortValue","value","handleSortUpdate","propTypes","PropTypes","object","isRequired","array","string","defaultProps","withRouter","withTitle"],"sources":["../../../src/components/SearchFilterSort/SearchFilterSort.js"],"sourcesContent":["import React from 'react';\nimport Select from '@blaze-react/select';\nimport { withRouter } from 'next/router';\nimport { parseUrl } from 'query-string';\nimport PropTypes from 'prop-types';\nimport { DEFAULT_SORT } from './constants';\nimport { handleSortUpdate } from './helpers';\nimport { withTitle } from '../../HOC';\n\nconst SearchFilterSort = ({ router, filters, elementLabel, selectLabel, id }) => {\n const { asPath } = router;\n const { url, query, query: { sort, sortby } = {} } = parseUrl(asPath);\n const selectedValue = `${sortby}:${sort}` || '';\n const defaultTextValue = selectLabel || DEFAULT_SORT;\n const options = filters.map(({ label: optionLabel, propsToDisplay, sort: sortValue }) => [\n `${propsToDisplay[0]}:${sortValue}`,\n optionLabel\n ]);\n\n const setSortValue = ({ value }) => handleSortUpdate(router, value, query, url, selectLabel);\n\n return (\n <div className=\"sort-by\">\n <Select\n label={elementLabel}\n defaultTextValue={defaultTextValue}\n value={selectedValue}\n id={id}\n options={options}\n onChange={setSortValue}\n />\n </div>\n );\n};\n\nSearchFilterSort.propTypes = {\n router: PropTypes.object.isRequired,\n filters: PropTypes.array,\n elementLabel: PropTypes.string,\n selectLabel: PropTypes.string,\n id: PropTypes.string\n};\n\nSearchFilterSort.defaultProps = {\n filters: [],\n elementLabel: '',\n selectLabel: '',\n id: ''\n};\n\nexport default withRouter(withTitle(SearchFilterSort));\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,OAAwD;EAAA,IAArDC,MAAqD,QAArDA,MAAqD;EAAA,IAA7CC,OAA6C,QAA7CA,OAA6C;EAAA,IAApCC,YAAoC,QAApCA,YAAoC;EAAA,IAAtBC,WAAsB,QAAtBA,WAAsB;EAAA,IAATC,EAAS,QAATA,EAAS;EAC/E,IAAQC,MAAR,GAAmBL,MAAnB,CAAQK,MAAR;;EACA,gBAAqD,IAAAC,qBAAA,EAASD,MAAT,CAArD;EAAA,IAAQE,GAAR,aAAQA,GAAR;EAAA,IAAaC,KAAb,aAAaA,KAAb;EAAA,gCAAoBA,KAApB;;EAAA,+CAA8C,EAA9C;EAAA,IAA6BC,IAA7B,mBAA6BA,IAA7B;EAAA,IAAmCC,MAAnC,mBAAmCA,MAAnC;EACA,IAAMC,aAAa,GAAG,UAAGD,MAAH,cAAaD,IAAb,KAAuB,EAA7C;EACA,IAAMG,gBAAgB,GAAGT,WAAW,IAAIU,uBAAxC;EACA,IAAMC,OAAO,GAAGb,OAAO,CAACc,GAAR,CAAY;IAAA,IAAUC,WAAV,SAAGC,KAAH;IAAA,IAAuBC,cAAvB,SAAuBA,cAAvB;IAAA,IAA6CC,SAA7C,SAAuCV,IAAvC;IAAA,OAA6D,WACpFS,cAAc,CAAC,CAAD,CADsE,cAC/DC,SAD+D,GAEvFH,WAFuF,CAA7D;EAAA,CAAZ,CAAhB;;EAKA,IAAMI,YAAY,GAAG,SAAfA,YAAe;IAAA,IAAGC,KAAH,SAAGA,KAAH;IAAA,OAAe,IAAAC,yBAAA,EAAiBtB,MAAjB,EAAyBqB,KAAzB,EAAgCb,KAAhC,EAAuCD,GAAvC,EAA4CJ,WAA5C,CAAf;EAAA,CAArB;;EAEA,oBACE;IAAK,SAAS,EAAC;EAAf,gBACE,gCAAC,kBAAD;IACE,KAAK,EAAED,YADT;IAEE,gBAAgB,EAAEU,gBAFpB;IAGE,KAAK,EAAED,aAHT;IAIE,EAAE,EAAEP,EAJN;IAKE,OAAO,EAAEU,OALX;IAME,QAAQ,EAAEM;EANZ,EADF,CADF;AAYD,CAxBD;;AA0BArB,gBAAgB,CAACwB,SAAjB,GAA6B;EAC3BvB,MAAM,EAAEwB,qBAAA,CAAUC,MAAV,CAAiBC,UADE;EAE3BzB,OAAO,EAAEuB,qBAAA,CAAUG,KAFQ;EAG3BzB,YAAY,EAAEsB,qBAAA,CAAUI,MAHG;EAI3BzB,WAAW,EAAEqB,qBAAA,CAAUI,MAJI;EAK3BxB,EAAE,EAAEoB,qBAAA,CAAUI;AALa,CAA7B;AAQA7B,gBAAgB,CAAC8B,YAAjB,GAAgC;EAC9B5B,OAAO,EAAE,EADqB;EAE9BC,YAAY,EAAE,EAFgB;EAG9BC,WAAW,EAAE,EAHiB;EAI9BC,EAAE,EAAE;AAJ0B,CAAhC;;eAOe,IAAA0B,kBAAA,EAAW,IAAAC,cAAA,EAAUhC,gBAAV,CAAX,C"}
@@ -1 +1 @@
1
- {"version":3,"file":"handle-sort-update.js","names":["handleSortUpdate","router","value","query","url","selectLabel","queryWithoutSort","routerOptions","shallow","scroll","Object","keys","forEach","key","indexOf","PAGINATION_QUERY","SORTBY","SORT","DEFAULT_SORT","stringifiedQuery","push","updatedSortUrl"],"sources":["../../../../src/components/SearchFilterSort/helpers/handle-sort-update.js"],"sourcesContent":["import { stringify } from 'query-string';\nimport { DEFAULT_SORT, SORT, SORTBY, PAGINATION_QUERY } from '../constants';\nimport updateSort from './update-sort';\n\nconst handleSortUpdate = (router, value, query, url, selectLabel) => {\n const queryWithoutSort = {};\n const routerOptions = { shallow: true, scroll: false };\n Object.keys(query).forEach(key => {\n if (key.indexOf(PAGINATION_QUERY) !== -1) return;\n if (key !== SORTBY && key !== SORT) queryWithoutSort[key] = query[key];\n });\n if (value === DEFAULT_SORT || value === selectLabel) {\n const stringifiedQuery = stringify(queryWithoutSort);\n\n return stringifiedQuery\n ? router.push(`/Resolver`, `${url}?${stringifiedQuery}`, routerOptions)\n : router.push(`/Resolver`, url, routerOptions);\n }\n const updatedSortUrl = updateSort(value, queryWithoutSort, url);\n return router.push('/Resolver', updatedSortUrl, routerOptions);\n};\n\nexport default handleSortUpdate;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,MAAD,EAASC,KAAT,EAAgBC,KAAhB,EAAuBC,GAAvB,EAA4BC,WAA5B,EAA4C;EACnE,IAAMC,gBAAgB,GAAG,EAAzB;EACA,IAAMC,aAAa,GAAG;IAAEC,OAAO,EAAE,IAAX;IAAiBC,MAAM,EAAE;EAAzB,CAAtB;EACAC,MAAM,CAACC,IAAP,CAAYR,KAAZ,EAAmBS,OAAnB,CAA2B,UAAAC,GAAG,EAAI;IAChC,IAAIA,GAAG,CAACC,OAAJ,CAAYC,2BAAZ,MAAkC,CAAC,CAAvC,EAA0C;IAC1C,IAAIF,GAAG,KAAKG,iBAAR,IAAkBH,GAAG,KAAKI,eAA9B,EAAoCX,gBAAgB,CAACO,GAAD,CAAhB,GAAwBV,KAAK,CAACU,GAAD,CAA7B;EACrC,CAHD;;EAIA,IAAIX,KAAK,KAAKgB,uBAAV,IAA0BhB,KAAK,KAAKG,WAAxC,EAAqD;IACnD,IAAMc,gBAAgB,GAAG,4BAAUb,gBAAV,CAAzB;IAEA,OAAOa,gBAAgB,GACnBlB,MAAM,CAACmB,IAAP,wBAA4BhB,GAA5B,cAAmCe,gBAAnC,GAAuDZ,aAAvD,CADmB,GAEnBN,MAAM,CAACmB,IAAP,cAAyBhB,GAAzB,EAA8BG,aAA9B,CAFJ;EAGD;;EACD,IAAMc,cAAc,GAAG,4BAAWnB,KAAX,EAAkBI,gBAAlB,EAAoCF,GAApC,CAAvB;EACA,OAAOH,MAAM,CAACmB,IAAP,CAAY,WAAZ,EAAyBC,cAAzB,EAAyCd,aAAzC,CAAP;AACD,CAhBD;;eAkBeP,gB"}
1
+ {"version":3,"file":"handle-sort-update.js","names":["handleSortUpdate","router","value","query","url","selectLabel","queryWithoutSort","routerOptions","shallow","scroll","Object","keys","forEach","key","indexOf","PAGINATION_QUERY","SORTBY","SORT","DEFAULT_SORT","stringifiedQuery","stringify","push","updatedSortUrl","updateSort"],"sources":["../../../../src/components/SearchFilterSort/helpers/handle-sort-update.js"],"sourcesContent":["import { stringify } from 'query-string';\nimport { DEFAULT_SORT, SORT, SORTBY, PAGINATION_QUERY } from '../constants';\nimport updateSort from './update-sort';\n\nconst handleSortUpdate = (router, value, query, url, selectLabel) => {\n const queryWithoutSort = {};\n const routerOptions = { shallow: true, scroll: false };\n Object.keys(query).forEach(key => {\n if (key.indexOf(PAGINATION_QUERY) !== -1) return;\n if (key !== SORTBY && key !== SORT) queryWithoutSort[key] = query[key];\n });\n if (value === DEFAULT_SORT || value === selectLabel) {\n const stringifiedQuery = stringify(queryWithoutSort);\n\n return stringifiedQuery\n ? router.push(`/Resolver`, `${url}?${stringifiedQuery}`, routerOptions)\n : router.push(`/Resolver`, url, routerOptions);\n }\n const updatedSortUrl = updateSort(value, queryWithoutSort, url);\n return router.push('/Resolver', updatedSortUrl, routerOptions);\n};\n\nexport default handleSortUpdate;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,MAAD,EAASC,KAAT,EAAgBC,KAAhB,EAAuBC,GAAvB,EAA4BC,WAA5B,EAA4C;EACnE,IAAMC,gBAAgB,GAAG,EAAzB;EACA,IAAMC,aAAa,GAAG;IAAEC,OAAO,EAAE,IAAX;IAAiBC,MAAM,EAAE;EAAzB,CAAtB;EACAC,MAAM,CAACC,IAAP,CAAYR,KAAZ,EAAmBS,OAAnB,CAA2B,UAAAC,GAAG,EAAI;IAChC,IAAIA,GAAG,CAACC,OAAJ,CAAYC,2BAAZ,MAAkC,CAAC,CAAvC,EAA0C;IAC1C,IAAIF,GAAG,KAAKG,iBAAR,IAAkBH,GAAG,KAAKI,eAA9B,EAAoCX,gBAAgB,CAACO,GAAD,CAAhB,GAAwBV,KAAK,CAACU,GAAD,CAA7B;EACrC,CAHD;;EAIA,IAAIX,KAAK,KAAKgB,uBAAV,IAA0BhB,KAAK,KAAKG,WAAxC,EAAqD;IACnD,IAAMc,gBAAgB,GAAG,IAAAC,sBAAA,EAAUd,gBAAV,CAAzB;IAEA,OAAOa,gBAAgB,GACnBlB,MAAM,CAACoB,IAAP,wBAA4BjB,GAA5B,cAAmCe,gBAAnC,GAAuDZ,aAAvD,CADmB,GAEnBN,MAAM,CAACoB,IAAP,cAAyBjB,GAAzB,EAA8BG,aAA9B,CAFJ;EAGD;;EACD,IAAMe,cAAc,GAAG,IAAAC,sBAAA,EAAWrB,KAAX,EAAkBI,gBAAlB,EAAoCF,GAApC,CAAvB;EACA,OAAOH,MAAM,CAACoB,IAAP,CAAY,WAAZ,EAAyBC,cAAzB,EAAyCf,aAAzC,CAAP;AACD,CAhBD;;eAkBeP,gB"}
@@ -1 +1 @@
1
- {"version":3,"file":"update-sort.js","names":["updateSort","value","query","url","split","newSortBy","newSort","updatedQuery","sortby","sort","parsedQuery"],"sources":["../../../../src/components/SearchFilterSort/helpers/update-sort.js"],"sourcesContent":["import { stringify } from 'query-string';\n\nconst updateSort = (value, query, url) => {\n const [newSortBy, newSort] = value.split(':');\n const updatedQuery = { ...query, sortby: newSortBy, sort: newSort };\n const parsedQuery = stringify(updatedQuery);\n return `${url}?${parsedQuery}`;\n};\n\nexport default updateSort;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAACC,KAAD,EAAQC,KAAR,EAAeC,GAAf,EAAuB;EACxC,mBAA6BF,KAAK,CAACG,KAAN,CAAY,GAAZ,CAA7B;EAAA;EAAA,IAAOC,SAAP;EAAA,IAAkBC,OAAlB;;EACA,IAAMC,YAAY,mCAAQL,KAAR;IAAeM,MAAM,EAAEH,SAAvB;IAAkCI,IAAI,EAAEH;EAAxC,EAAlB;;EACA,IAAMI,WAAW,GAAG,4BAAUH,YAAV,CAApB;EACA,iBAAUJ,GAAV,cAAiBO,WAAjB;AACD,CALD;;eAOeV,U"}
1
+ {"version":3,"file":"update-sort.js","names":["updateSort","value","query","url","split","newSortBy","newSort","updatedQuery","sortby","sort","parsedQuery","stringify"],"sources":["../../../../src/components/SearchFilterSort/helpers/update-sort.js"],"sourcesContent":["import { stringify } from 'query-string';\n\nconst updateSort = (value, query, url) => {\n const [newSortBy, newSort] = value.split(':');\n const updatedQuery = { ...query, sortby: newSortBy, sort: newSort };\n const parsedQuery = stringify(updatedQuery);\n return `${url}?${parsedQuery}`;\n};\n\nexport default updateSort;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAACC,KAAD,EAAQC,KAAR,EAAeC,GAAf,EAAuB;EACxC,mBAA6BF,KAAK,CAACG,KAAN,CAAY,GAAZ,CAA7B;EAAA;EAAA,IAAOC,SAAP;EAAA,IAAkBC,OAAlB;;EACA,IAAMC,YAAY,mCAAQL,KAAR;IAAeM,MAAM,EAAEH,SAAvB;IAAkCI,IAAI,EAAEH;EAAxC,EAAlB;;EACA,IAAMI,WAAW,GAAG,IAAAC,sBAAA,EAAUJ,YAAV,CAApB;EACA,iBAAUJ,GAAV,cAAiBO,WAAjB;AACD,CALD;;eAOeV,U"}
@@ -1 +1 @@
1
- {"version":3,"file":"SFItem.js","names":["SFItem","url","id","SOCIAL_NETWORKS","name","className","Icon","spanClassName","BASE_CLASS_NAME_FOLLOW","propTypes","PropTypes","string","isRequired"],"sources":["../../../src/components/SocialFollow/SFItem.js"],"sourcesContent":["/* eslint-disable react/jsx-no-target-blank */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { SOCIAL_NETWORKS, BASE_CLASS_NAME_FOLLOW } from './sf.config';\n\nconst SFItem = ({ url, id }) => {\n const { name, className, Icon, spanClassName } = SOCIAL_NETWORKS[id];\n\n return (\n <li className={BASE_CLASS_NAME_FOLLOW}>\n <a title={name} href={url} className={className} rel=\"noopener nofollow\" target=\"_blank\">\n <i>\n <Icon />\n </i>\n <span className={`social__network ${spanClassName}`}>{name}</span>\n </a>\n </li>\n );\n};\n\nSFItem.propTypes = {\n url: PropTypes.string.isRequired,\n id: PropTypes.string.isRequired\n};\n\nexport default SFItem;\n"],"mappings":";;;;;;;;;;;;;AACA;;AACA;;AACA;;AAHA;AAKA,IAAMA,MAAM,GAAG,SAATA,MAAS,OAAiB;EAAA,IAAdC,GAAc,QAAdA,GAAc;EAAA,IAATC,EAAS,QAATA,EAAS;EAC9B,0BAAiDC,oBAAgBD,EAAhB,CAAjD;EAAA,IAAQE,IAAR,uBAAQA,IAAR;EAAA,IAAcC,SAAd,uBAAcA,SAAd;EAAA,IAAyBC,IAAzB,uBAAyBA,IAAzB;EAAA,IAA+BC,aAA/B,uBAA+BA,aAA/B;EAEA,oBACE;IAAI,SAAS,EAAEC;EAAf,gBACE;IAAG,KAAK,EAAEJ,IAAV;IAAgB,IAAI,EAAEH,GAAtB;IAA2B,SAAS,EAAEI,SAAtC;IAAiD,GAAG,EAAC,mBAArD;IAAyE,MAAM,EAAC;EAAhF,gBACE,wDACE,gCAAC,IAAD,OADF,CADF,eAIE;IAAM,SAAS,4BAAqBE,aAArB;EAAf,GAAsDH,IAAtD,CAJF,CADF,CADF;AAUD,CAbD;;AAeAJ,MAAM,CAACS,SAAP,GAAmB;EACjBR,GAAG,EAAES,sBAAUC,MAAV,CAAiBC,UADL;EAEjBV,EAAE,EAAEQ,sBAAUC,MAAV,CAAiBC;AAFJ,CAAnB;eAKeZ,M"}
1
+ {"version":3,"file":"SFItem.js","names":["SFItem","url","id","SOCIAL_NETWORKS","name","className","Icon","spanClassName","BASE_CLASS_NAME_FOLLOW","propTypes","PropTypes","string","isRequired"],"sources":["../../../src/components/SocialFollow/SFItem.js"],"sourcesContent":["/* eslint-disable react/jsx-no-target-blank */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { SOCIAL_NETWORKS, BASE_CLASS_NAME_FOLLOW } from './sf.config';\n\nconst SFItem = ({ url, id }) => {\n const { name, className, Icon, spanClassName } = SOCIAL_NETWORKS[id];\n\n return (\n <li className={BASE_CLASS_NAME_FOLLOW}>\n <a title={name} href={url} className={className} rel=\"noopener nofollow\" target=\"_blank\">\n <i>\n <Icon />\n </i>\n <span className={`social__network ${spanClassName}`}>{name}</span>\n </a>\n </li>\n );\n};\n\nSFItem.propTypes = {\n url: PropTypes.string.isRequired,\n id: PropTypes.string.isRequired\n};\n\nexport default SFItem;\n"],"mappings":";;;;;;;;;;;;;AACA;;AACA;;AACA;;AAHA;AAKA,IAAMA,MAAM,GAAG,SAATA,MAAS,OAAiB;EAAA,IAAdC,GAAc,QAAdA,GAAc;EAAA,IAATC,EAAS,QAATA,EAAS;EAC9B,0BAAiDC,mBAAA,CAAgBD,EAAhB,CAAjD;EAAA,IAAQE,IAAR,uBAAQA,IAAR;EAAA,IAAcC,SAAd,uBAAcA,SAAd;EAAA,IAAyBC,IAAzB,uBAAyBA,IAAzB;EAAA,IAA+BC,aAA/B,uBAA+BA,aAA/B;EAEA,oBACE;IAAI,SAAS,EAAEC;EAAf,gBACE;IAAG,KAAK,EAAEJ,IAAV;IAAgB,IAAI,EAAEH,GAAtB;IAA2B,SAAS,EAAEI,SAAtC;IAAiD,GAAG,EAAC,mBAArD;IAAyE,MAAM,EAAC;EAAhF,gBACE,wDACE,gCAAC,IAAD,OADF,CADF,eAIE;IAAM,SAAS,4BAAqBE,aAArB;EAAf,GAAsDH,IAAtD,CAJF,CADF,CADF;AAUD,CAbD;;AAeAJ,MAAM,CAACS,SAAP,GAAmB;EACjBR,GAAG,EAAES,qBAAA,CAAUC,MAAV,CAAiBC,UADL;EAEjBV,EAAE,EAAEQ,qBAAA,CAAUC,MAAV,CAAiBC;AAFJ,CAAnB;eAKeZ,M"}
@@ -1 +1 @@
1
- {"version":3,"file":"SocialFollow.js","names":["SocialFollow","orientation","otherProps","socialNetworks","socialNetKeys","Object","keys","isPortrait","PORTRAIT","length","divClassName","propTypes","PropTypes","string","defaultProps","LANDSCAPE"],"sources":["../../../src/components/SocialFollow/SocialFollow.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport SocialFollowRender from './SocialFollowRender';\nimport { PORTRAIT, LANDSCAPE } from './sf.config';\n\nconst SocialFollow = ({ orientation, ...otherProps }) => {\n const { socialNetworks = {} } = otherProps;\n const socialNetKeys = Object.keys(socialNetworks);\n const isPortrait = orientation === PORTRAIT;\n if (!socialNetKeys.length) return null;\n\n const divClassName = classnames({\n 'social social--follow social--vertical': isPortrait,\n 'social social--follow': !isPortrait\n });\n\n return (\n <div className={divClassName}>\n <SocialFollowRender isPortrait={isPortrait} socialNetKeys={socialNetKeys} {...otherProps} />\n </div>\n );\n};\n\nSocialFollow.propTypes = {\n orientation: PropTypes.string\n};\n\nSocialFollow.defaultProps = {\n orientation: LANDSCAPE\n};\n\nexport default SocialFollow;\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,YAAY,GAAG,SAAfA,YAAe,OAAoC;EAAA,IAAjCC,WAAiC,QAAjCA,WAAiC;EAAA,IAAjBC,UAAiB;EACvD,4BAAgCA,UAAhC,CAAQC,cAAR;EAAA,IAAQA,cAAR,sCAAyB,EAAzB;EACA,IAAMC,aAAa,GAAGC,MAAM,CAACC,IAAP,CAAYH,cAAZ,CAAtB;EACA,IAAMI,UAAU,GAAGN,WAAW,KAAKO,YAAnC;EACA,IAAI,CAACJ,aAAa,CAACK,MAAnB,EAA2B,OAAO,IAAP;EAE3B,IAAMC,YAAY,GAAG,4BAAW;IAC9B,0CAA0CH,UADZ;IAE9B,yBAAyB,CAACA;EAFI,CAAX,CAArB;EAKA,oBACE;IAAK,SAAS,EAAEG;EAAhB,gBACE,gCAAC,8BAAD;IAAoB,UAAU,EAAEH,UAAhC;IAA4C,aAAa,EAAEH;EAA3D,GAA8EF,UAA9E,EADF,CADF;AAKD,CAhBD;;AAkBAF,YAAY,CAACW,SAAb,GAAyB;EACvBV,WAAW,EAAEW,sBAAUC;AADA,CAAzB;AAIAb,YAAY,CAACc,YAAb,GAA4B;EAC1Bb,WAAW,EAAEc;AADa,CAA5B;eAIef,Y"}
1
+ {"version":3,"file":"SocialFollow.js","names":["SocialFollow","orientation","otherProps","socialNetworks","socialNetKeys","Object","keys","isPortrait","PORTRAIT","length","divClassName","classnames","propTypes","PropTypes","string","defaultProps","LANDSCAPE"],"sources":["../../../src/components/SocialFollow/SocialFollow.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport SocialFollowRender from './SocialFollowRender';\nimport { PORTRAIT, LANDSCAPE } from './sf.config';\n\nconst SocialFollow = ({ orientation, ...otherProps }) => {\n const { socialNetworks = {} } = otherProps;\n const socialNetKeys = Object.keys(socialNetworks);\n const isPortrait = orientation === PORTRAIT;\n if (!socialNetKeys.length) return null;\n\n const divClassName = classnames({\n 'social social--follow social--vertical': isPortrait,\n 'social social--follow': !isPortrait\n });\n\n return (\n <div className={divClassName}>\n <SocialFollowRender isPortrait={isPortrait} socialNetKeys={socialNetKeys} {...otherProps} />\n </div>\n );\n};\n\nSocialFollow.propTypes = {\n orientation: PropTypes.string\n};\n\nSocialFollow.defaultProps = {\n orientation: LANDSCAPE\n};\n\nexport default SocialFollow;\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,YAAY,GAAG,SAAfA,YAAe,OAAoC;EAAA,IAAjCC,WAAiC,QAAjCA,WAAiC;EAAA,IAAjBC,UAAiB;EACvD,4BAAgCA,UAAhC,CAAQC,cAAR;EAAA,IAAQA,cAAR,sCAAyB,EAAzB;EACA,IAAMC,aAAa,GAAGC,MAAM,CAACC,IAAP,CAAYH,cAAZ,CAAtB;EACA,IAAMI,UAAU,GAAGN,WAAW,KAAKO,YAAnC;EACA,IAAI,CAACJ,aAAa,CAACK,MAAnB,EAA2B,OAAO,IAAP;EAE3B,IAAMC,YAAY,GAAG,IAAAC,sBAAA,EAAW;IAC9B,0CAA0CJ,UADZ;IAE9B,yBAAyB,CAACA;EAFI,CAAX,CAArB;EAKA,oBACE;IAAK,SAAS,EAAEG;EAAhB,gBACE,gCAAC,8BAAD;IAAoB,UAAU,EAAEH,UAAhC;IAA4C,aAAa,EAAEH;EAA3D,GAA8EF,UAA9E,EADF,CADF;AAKD,CAhBD;;AAkBAF,YAAY,CAACY,SAAb,GAAyB;EACvBX,WAAW,EAAEY,qBAAA,CAAUC;AADA,CAAzB;AAIAd,YAAY,CAACe,YAAb,GAA4B;EAC1Bd,WAAW,EAAEe;AADa,CAA5B;eAIehB,Y"}