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

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 (237) hide show
  1. package/CHANGELOG.md +143 -0
  2. package/lib/components/Card/Card.js +14 -9
  3. package/lib/components/Card/Card.js.map +1 -1
  4. package/lib/components/Card/CardsContainer.js +8 -4
  5. package/lib/components/Card/CardsContainer.js.map +1 -1
  6. package/lib/components/Card/CardsFactory.js +37 -7
  7. package/lib/components/Card/CardsFactory.js.map +1 -1
  8. package/lib/components/Card/CardsRender.js +8 -4
  9. package/lib/components/Card/CardsRender.js.map +1 -1
  10. package/lib/components/Card/helpers/index.js +6 -6
  11. package/lib/components/Card/helpers/index.js.map +1 -1
  12. package/lib/components/Image/Lightbox/Lightbox.js +2 -2
  13. package/lib/components/Image/Lightbox/Lightbox.js.map +1 -1
  14. package/lib/components/List/ListRender.js.map +1 -1
  15. package/lib/components/MenuItem/MenuEntitiesItem.js +204 -0
  16. package/lib/components/MenuItem/MenuEntitiesItem.js.map +1 -0
  17. package/lib/components/MenuItem/MenuItem.js +25 -68
  18. package/lib/components/MenuItem/MenuItem.js.map +1 -1
  19. package/lib/components/MenuItem/MenuItemRender.js +104 -0
  20. package/lib/components/MenuItem/MenuItemRender.js.map +1 -0
  21. package/lib/components/MenuItem/helpers/index.js +15 -0
  22. package/lib/components/MenuItem/helpers/index.js.map +1 -0
  23. package/lib/components/MenuItem/helpers/inject-helper-into-template.js +17 -0
  24. package/lib/components/MenuItem/helpers/inject-helper-into-template.js.map +1 -0
  25. package/lib/components/Modal/Modal.js +2 -2
  26. package/lib/components/Modal/Modal.js.map +1 -1
  27. package/lib/components/ModalAdapter/ModalAdapter.js +21 -0
  28. package/lib/components/ModalAdapter/ModalAdapter.js.map +1 -0
  29. package/lib/components/ModalAdapter/index.js +11 -0
  30. package/lib/components/ModalAdapter/index.js.map +1 -0
  31. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js +22 -4
  32. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  33. package/lib/components/SearchFilter/SearchFilterContainer.js +23 -27
  34. package/lib/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  35. package/lib/components/SearchFilter/components/Select.js.map +1 -1
  36. package/lib/components/SearchFilter/helpers/build-list-name-query.js +31 -0
  37. package/lib/components/SearchFilter/helpers/build-list-name-query.js.map +1 -0
  38. package/lib/components/SearchFilter/helpers/decode-encode.js.map +1 -1
  39. package/lib/components/SearchFilter/helpers/get-range-value.js +9 -7
  40. package/lib/components/SearchFilter/helpers/get-range-value.js.map +1 -1
  41. package/lib/components/SearchFilter/helpers/index.js +7 -0
  42. package/lib/components/SearchFilter/helpers/index.js.map +1 -1
  43. package/lib/components/Video/Video.js +2 -1
  44. package/lib/components/Video/Video.js.map +1 -1
  45. package/lib/components/Video/VideoContext.js +12 -0
  46. package/lib/components/Video/VideoContext.js.map +1 -0
  47. package/lib/components/Video/VideoModal.js +2 -2
  48. package/lib/components/Video/VideoModal.js.map +1 -1
  49. package/lib/components/Video/VideoRender.js +36 -3
  50. package/lib/components/Video/VideoRender.js.map +1 -1
  51. package/lib/components/Video/constants.js +14 -0
  52. package/lib/components/Video/constants.js.map +1 -0
  53. package/lib/components/Video/helpers/emit-gtm-event.js +31 -0
  54. package/lib/components/Video/helpers/emit-gtm-event.js.map +1 -0
  55. package/lib/components/Video/providers/JWPlayer/JWPlayerController.js +28 -8
  56. package/lib/components/Video/providers/JWPlayer/JWPlayerController.js.map +1 -1
  57. package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js +16 -4
  58. package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
  59. package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js +57 -0
  60. package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
  61. package/lib/helpers/build-filters-query.js +1 -2
  62. package/lib/helpers/build-filters-query.js.map +1 -1
  63. package/lib/helpers/build-search-values-checkbox-select.js +1 -0
  64. package/lib/helpers/build-search-values-checkbox-select.js.map +1 -1
  65. package/lib/{components/Card/helpers → helpers}/filter-query-setup.js +10 -7
  66. package/lib/helpers/filter-query-setup.js.map +1 -0
  67. package/lib/{components/Card/helpers → helpers}/filters-setup.js +8 -5
  68. package/lib/helpers/filters-setup.js.map +1 -0
  69. package/lib/helpers/get-updated-items-to-display.js.map +1 -0
  70. package/lib/helpers/get-updated-sort-properties.js.map +1 -0
  71. package/lib/helpers/index.js +42 -0
  72. package/lib/helpers/index.js.map +1 -1
  73. package/lib/helpers/should-return.js.map +1 -0
  74. package/lib/{components/Card/helpers → helpers}/should-skip-single-query.js +1 -1
  75. package/lib/helpers/should-skip-single-query.js.map +1 -0
  76. package/lib/hooks/index.js +14 -0
  77. package/lib/hooks/index.js.map +1 -1
  78. package/lib/hooks/use-filter-aggregation-values.js +54 -0
  79. package/lib/hooks/use-filter-aggregation-values.js.map +1 -0
  80. package/lib/hooks/use-portal.js +30 -0
  81. package/lib/hooks/use-portal.js.map +1 -0
  82. package/lib-es/components/Card/Card.js +14 -9
  83. package/lib-es/components/Card/Card.js.map +1 -1
  84. package/lib-es/components/Card/CardsContainer.js +9 -5
  85. package/lib-es/components/Card/CardsContainer.js.map +1 -1
  86. package/lib-es/components/Card/CardsFactory.js +40 -9
  87. package/lib-es/components/Card/CardsFactory.js.map +1 -1
  88. package/lib-es/components/Card/CardsRender.js +9 -5
  89. package/lib-es/components/Card/CardsRender.js.map +1 -1
  90. package/lib-es/components/Card/helpers/index.js +6 -6
  91. package/lib-es/components/Card/helpers/index.js.map +1 -1
  92. package/lib-es/components/Image/Lightbox/Lightbox.js +1 -1
  93. package/lib-es/components/Image/Lightbox/Lightbox.js.map +1 -1
  94. package/lib-es/components/List/ListRender.js.map +1 -1
  95. package/lib-es/components/MenuItem/MenuEntitiesItem.js +178 -0
  96. package/lib-es/components/MenuItem/MenuEntitiesItem.js.map +1 -0
  97. package/lib-es/components/MenuItem/MenuItem.js +28 -57
  98. package/lib-es/components/MenuItem/MenuItem.js.map +1 -1
  99. package/lib-es/components/MenuItem/MenuItemRender.js +84 -0
  100. package/lib-es/components/MenuItem/MenuItemRender.js.map +1 -0
  101. package/lib-es/components/MenuItem/helpers/index.js +3 -0
  102. package/lib-es/components/MenuItem/helpers/index.js.map +1 -0
  103. package/lib-es/components/MenuItem/helpers/inject-helper-into-template.js +8 -0
  104. package/lib-es/components/MenuItem/helpers/inject-helper-into-template.js.map +1 -0
  105. package/lib-es/components/Modal/Modal.js +1 -1
  106. package/lib-es/components/Modal/Modal.js.map +1 -1
  107. package/lib-es/components/ModalAdapter/ModalAdapter.js +13 -0
  108. package/lib-es/components/ModalAdapter/ModalAdapter.js.map +1 -0
  109. package/lib-es/components/ModalAdapter/index.js +3 -0
  110. package/lib-es/components/ModalAdapter/index.js.map +1 -0
  111. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js +15 -4
  112. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  113. package/lib-es/components/SearchFilter/SearchFilterContainer.js +24 -20
  114. package/lib-es/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  115. package/lib-es/components/SearchFilter/components/Select.js.map +1 -1
  116. package/lib-es/components/SearchFilter/helpers/build-list-name-query.js +15 -0
  117. package/lib-es/components/SearchFilter/helpers/build-list-name-query.js.map +1 -0
  118. package/lib-es/components/SearchFilter/helpers/decode-encode.js.map +1 -1
  119. package/lib-es/components/SearchFilter/helpers/get-range-value.js +9 -7
  120. package/lib-es/components/SearchFilter/helpers/get-range-value.js.map +1 -1
  121. package/lib-es/components/SearchFilter/helpers/index.js +2 -1
  122. package/lib-es/components/SearchFilter/helpers/index.js.map +1 -1
  123. package/lib-es/components/Video/Video.js +2 -1
  124. package/lib-es/components/Video/Video.js.map +1 -1
  125. package/lib-es/components/Video/VideoContext.js +6 -0
  126. package/lib-es/components/Video/VideoContext.js.map +1 -0
  127. package/lib-es/components/Video/VideoModal.js +1 -1
  128. package/lib-es/components/Video/VideoModal.js.map +1 -1
  129. package/lib-es/components/Video/VideoRender.js +28 -3
  130. package/lib-es/components/Video/VideoRender.js.map +1 -1
  131. package/lib-es/components/Video/constants.js +7 -0
  132. package/lib-es/components/Video/constants.js.map +1 -0
  133. package/lib-es/components/Video/helpers/emit-gtm-event.js +25 -0
  134. package/lib-es/components/Video/helpers/emit-gtm-event.js.map +1 -0
  135. package/lib-es/components/Video/providers/JWPlayer/JWPlayerController.js +28 -4
  136. package/lib-es/components/Video/providers/JWPlayer/JWPlayerController.js.map +1 -1
  137. package/lib-es/components/Video/providers/JWPlayer/JWPlayerProvider.js +10 -4
  138. package/lib-es/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
  139. package/lib-es/components/Video/providers/YouTube/YoutubeEmbeded.js +60 -2
  140. package/lib-es/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
  141. package/lib-es/helpers/build-filters-query.js +1 -2
  142. package/lib-es/helpers/build-filters-query.js.map +1 -1
  143. package/lib-es/helpers/build-search-values-checkbox-select.js +1 -0
  144. package/lib-es/helpers/build-search-values-checkbox-select.js.map +1 -1
  145. package/lib-es/{components/Card/helpers → helpers}/filter-query-setup.js +5 -3
  146. package/lib-es/helpers/filter-query-setup.js.map +1 -0
  147. package/lib-es/{components/Card/helpers → helpers}/filters-setup.js +4 -2
  148. package/lib-es/helpers/filters-setup.js.map +1 -0
  149. package/lib-es/helpers/get-updated-items-to-display.js.map +1 -0
  150. package/lib-es/helpers/get-updated-sort-properties.js.map +1 -0
  151. package/lib-es/helpers/index.js +6 -0
  152. package/lib-es/helpers/index.js.map +1 -1
  153. package/lib-es/helpers/should-return.js.map +1 -0
  154. package/lib-es/{components/Card/helpers → helpers}/should-skip-single-query.js +1 -1
  155. package/lib-es/helpers/should-skip-single-query.js.map +1 -0
  156. package/lib-es/hooks/index.js +2 -0
  157. package/lib-es/hooks/index.js.map +1 -1
  158. package/lib-es/hooks/use-filter-aggregation-values.js +31 -0
  159. package/lib-es/hooks/use-filter-aggregation-values.js.map +1 -0
  160. package/lib-es/hooks/use-portal.js +14 -0
  161. package/lib-es/hooks/use-portal.js.map +1 -0
  162. package/package.json +7 -7
  163. package/src/components/Card/Card.js +25 -16
  164. package/src/components/Card/CardsContainer.js +7 -3
  165. package/src/components/Card/CardsFactory.js +34 -6
  166. package/src/components/Card/CardsRender.js +6 -2
  167. package/src/components/Card/helpers/index.js +6 -6
  168. package/src/components/Image/Lightbox/Lightbox.js +1 -1
  169. package/src/components/List/ListRender.js +0 -1
  170. package/src/components/MenuItem/MenuEntitiesItem.js +204 -0
  171. package/src/components/MenuItem/MenuItem.js +15 -58
  172. package/src/components/MenuItem/MenuItemRender.js +92 -0
  173. package/src/components/MenuItem/helpers/index.js +3 -0
  174. package/src/components/MenuItem/helpers/inject-helper-into-template.js +11 -0
  175. package/src/components/Modal/Modal.js +1 -1
  176. package/src/components/ModalAdapter/ModalAdapter.js +12 -0
  177. package/src/components/ModalAdapter/index.js +3 -0
  178. package/src/components/SearchFilter/SearchFilter/SearchFilter.js +16 -5
  179. package/src/components/SearchFilter/SearchFilterContainer.js +23 -22
  180. package/src/components/SearchFilter/components/Select.js +2 -0
  181. package/src/components/SearchFilter/helpers/build-list-name-query.js +18 -0
  182. package/src/components/SearchFilter/helpers/decode-encode.js +0 -1
  183. package/src/components/SearchFilter/helpers/get-range-value.js +10 -8
  184. package/src/components/SearchFilter/helpers/index.js +2 -0
  185. package/src/components/Video/Video.js +1 -1
  186. package/src/components/Video/VideoContext.js +7 -0
  187. package/src/components/Video/VideoModal.js +1 -1
  188. package/src/components/Video/VideoRender.js +28 -3
  189. package/src/components/Video/constants.js +6 -0
  190. package/src/components/Video/helpers/emit-gtm-event.js +25 -0
  191. package/src/components/Video/providers/JWPlayer/JWPlayerController.js +21 -4
  192. package/src/components/Video/providers/JWPlayer/JWPlayerProvider.js +7 -5
  193. package/src/components/Video/providers/YouTube/YoutubeEmbeded.js +65 -2
  194. package/src/helpers/build-filters-query.js +1 -3
  195. package/src/helpers/build-search-values-checkbox-select.js +1 -0
  196. package/src/{components/Card/helpers → helpers}/filter-query-setup.js +5 -3
  197. package/src/{components/Card/helpers → helpers}/filters-setup.js +5 -2
  198. package/src/helpers/index.js +6 -0
  199. package/src/{components/Card/helpers → helpers}/should-skip-single-query.js +1 -1
  200. package/src/hooks/index.js +2 -0
  201. package/src/hooks/use-filter-aggregation-values.js +37 -0
  202. package/src/hooks/use-portal.js +18 -0
  203. package/tests/unit/src/components/Card/Card.test.js +16 -1
  204. package/tests/unit/src/components/Card/__snapshots__/Card.test.js.snap +83 -0
  205. package/tests/unit/src/components/Card/helpers/get-updated-items-to-display.test.js +1 -1
  206. package/tests/unit/src/components/Image/Lightbox/Lightbox.test.js +4 -0
  207. package/tests/unit/src/components/Image/Lightbox/__snapshots__/Lightbox.test.js.snap +3 -38
  208. package/tests/unit/src/components/MenuItem/MenuEntitiesItem.test.js +23 -0
  209. package/tests/unit/src/components/MenuItem/MenuItem.test.js +30 -11
  210. package/tests/unit/src/components/MenuItem/MenuItemRender.test.js +55 -0
  211. package/tests/unit/src/components/MenuItem/__snapshots__/MenuEntitiesItem.test.js.snap +3 -0
  212. package/tests/unit/src/components/MenuItem/__snapshots__/MenuItem.test.js.snap +5 -51
  213. package/tests/unit/src/components/MenuItem/helpers/inject-helper-into-template.test.js +44 -0
  214. package/tests/unit/src/components/MenuItem/mocks.js +71 -0
  215. package/tests/unit/src/components/Modal/Modal.test.js +4 -0
  216. package/tests/unit/src/components/Modal/__snapshots__/Modal.test.js.snap +7 -42
  217. package/lib/components/Card/helpers/filter-query-setup.js.map +0 -1
  218. package/lib/components/Card/helpers/filters-setup.js.map +0 -1
  219. package/lib/components/Card/helpers/get-updated-items-to-display.js.map +0 -1
  220. package/lib/components/Card/helpers/get-updated-sort-properties.js.map +0 -1
  221. package/lib/components/Card/helpers/should-return.js.map +0 -1
  222. package/lib/components/Card/helpers/should-skip-single-query.js.map +0 -1
  223. package/lib-es/components/Card/helpers/filter-query-setup.js.map +0 -1
  224. package/lib-es/components/Card/helpers/filters-setup.js.map +0 -1
  225. package/lib-es/components/Card/helpers/get-updated-items-to-display.js.map +0 -1
  226. package/lib-es/components/Card/helpers/get-updated-sort-properties.js.map +0 -1
  227. package/lib-es/components/Card/helpers/should-return.js.map +0 -1
  228. package/lib-es/components/Card/helpers/should-skip-single-query.js.map +0 -1
  229. /package/lib/{components/Card/helpers → helpers}/get-updated-items-to-display.js +0 -0
  230. /package/lib/{components/Card/helpers → helpers}/get-updated-sort-properties.js +0 -0
  231. /package/lib/{components/Card/helpers → helpers}/should-return.js +0 -0
  232. /package/lib-es/{components/Card/helpers → helpers}/get-updated-items-to-display.js +0 -0
  233. /package/lib-es/{components/Card/helpers → helpers}/get-updated-sort-properties.js +0 -0
  234. /package/lib-es/{components/Card/helpers → helpers}/should-return.js +0 -0
  235. /package/src/{components/Card/helpers → helpers}/get-updated-items-to-display.js +0 -0
  236. /package/src/{components/Card/helpers → helpers}/get-updated-sort-properties.js +0 -0
  237. /package/src/{components/Card/helpers → helpers}/should-return.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"SearchFilterContainer.js","names":["React","useState","useEffect","useRef","useReducer","useContext","MainContext","useRouter","useQuery","PropTypes","parseUrl","SearchFilter","withTitle","getSearchPublishedContent","generateSingleItemQuery","buildNewUrl","getFilterValues","getFilterRangesAndCheckboxesValues","getUpdatedFilterBy","getEntityData","getInheritedFilters","getQueryProps","buildRawQueryStringified","buildFiltersQuery","RAW_RESULTS","SCROLL_OFFSET","searchFilterReducer","useGetEntitySchemasAsObj","getFiltersUrlQuery","query","listName","updatedQuery","listKey","Object","keys","forEach","queryKey","isListKey","indexOf","decodedQueryValue","Array","isArray","map","value","decodeURIComponent","strippedKey","substring","length","SearchFilterContainer","entity","url","filters","name","isCollapsedOnResponsive","groupAfterMobile","groupAfterDesktop","filterBy","filterByProperty","shouldAddFilters","listComponentName","parent","isPreview","router","asPath","searchFilterRef","key","setKey","displaySearchFilter","setDisplaySearchFilter","urlPath","setUrlPath","filterValues","dispatch","currentUrl","itemId","parentId","itemEntity","parentEntity","data","mainSchemas","loading","schemasLoading","parentSchema","filterEntitySchema","actions","getAction","get","getPublished","inheritedFilters","queryProps","entityData","parentData","parentQueryLoading","variables","id","skip","updatedFilterBy","updatedFilterByProperty","action","checkboxSelectValues","rangeValues","docType","filtersQuery","queryKeys","rawQueryStringified","error","limit","message","searchPublishedContent","rawResults","aggregations","filterData","newValues","shouldSearch","type","handleSearch","newQuery","hashBit","split","parsedHashBit","scrollToFirstList","baseQuery","push","shallow","scroll","then","Date","now","newUrl","list","document","getElementsByClassName","shouldScrollToFirstList","window","scrollTo","left","top","pageYOffset","getBoundingClientRect","createElement","setAppliedFilters","hasUrl","propTypes","string","array","isRequired","bool","number","object","defaultProps"],"sources":["../../../src/components/SearchFilter/SearchFilterContainer.js"],"sourcesContent":["import React, { useState, useEffect, useRef, useReducer, useContext } from 'react';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { useRouter } from 'next/router';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { parseUrl } from 'query-string';\nimport SearchFilter from './SearchFilter';\nimport { withTitle } from '../../HOC';\nimport { getSearchPublishedContent, generateSingleItemQuery } from '../../application/query';\nimport {\n buildNewUrl,\n getFilterValues,\n getFilterRangesAndCheckboxesValues,\n getUpdatedFilterBy\n} from './helpers';\nimport {\n getEntityData,\n getInheritedFilters,\n getQueryProps,\n buildRawQueryStringified,\n buildFiltersQuery\n} from '../../helpers';\nimport { RAW_RESULTS } from './constants';\nimport { SCROLL_OFFSET } from '../../constants';\nimport searchFilterReducer from './searchFilterReducer';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\n\nconst getFiltersUrlQuery = (query, listName) => {\n if (!listName) return query;\n const updatedQuery = {};\n const listKey = `pb[${listName}]`;\n Object.keys(query).forEach(queryKey => {\n const isListKey = queryKey.indexOf(`${listName}`) !== -1;\n if (!isListKey) return;\n const decodedQueryValue = Array.isArray(query[queryKey])\n ? query[queryKey].map(value => decodeURIComponent(value))\n : decodeURIComponent(query[queryKey]);\n const strippedKey = queryKey.substring(listKey.length + 1, queryKey.length - 1);\n if (isListKey) updatedQuery[strippedKey] = decodedQueryValue;\n });\n\n return updatedQuery;\n};\n\nconst SearchFilterContainer = ({\n entity,\n url,\n filters,\n name,\n isCollapsedOnResponsive,\n groupAfterMobile,\n groupAfterDesktop,\n filterBy,\n filterByProperty,\n shouldAddFilters,\n listComponentName,\n parent\n}) => {\n const { isPreview } = useContext(MainContext);\n const router = useRouter();\n const { asPath } = router;\n const searchFilterRef = useRef(null);\n const [key, setKey] = useState(`filter-${name}`);\n const [displaySearchFilter, setDisplaySearchFilter] = useState(false);\n const [urlPath, setUrlPath] = useState(asPath); // used as asPath can take too long to update\n const [filterValues, dispatch] = useReducer(searchFilterReducer, null);\n const { url: currentUrl, query } = parseUrl(urlPath);\n const updatedQuery = getFiltersUrlQuery(query, listComponentName);\n const { itemId: parentId, itemEntity: parentEntity } = parent;\n\n useEffect(\n () => {\n if (asPath) setUrlPath(asPath);\n },\n [asPath]\n );\n const { data: mainSchemas = {}, loading: schemasLoading } = useGetEntitySchemasAsObj([\n parentEntity,\n entity\n ]);\n const { [parentEntity]: parentSchema = {}, [entity]: filterEntitySchema = {} } = mainSchemas;\n const { actions = {} } = parentSchema || {};\n const getAction = isPreview ? actions.get : actions.getPublished;\n const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);\n const queryProps = getQueryProps(inheritedFilters, parentSchema, filterEntitySchema);\n const { data: { entityData: parentData } = {}, loading: parentQueryLoading } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: parentId },\n skip: schemasLoading || !inheritedFilters.length\n }\n );\n const { updatedFilterBy, updatedFilterByProperty } = getUpdatedFilterBy(\n filterBy,\n filterByProperty,\n parentData\n );\n\n const action = getSearchPublishedContent(RAW_RESULTS);\n const [checkboxSelectValues, rangeValues] = getFilterRangesAndCheckboxesValues(filters);\n\n const { docType } = getEntityData(entity);\n\n const filtersQuery = buildFiltersQuery({\n shouldAddFilters,\n query: filterValues,\n filterBy: updatedFilterBy,\n filterByProperty: updatedFilterByProperty,\n rangeValues,\n queryKeys: Object.keys(updatedQuery)\n });\n\n const rawQueryStringified = buildRawQueryStringified(\n checkboxSelectValues,\n rangeValues,\n docType,\n filtersQuery\n );\n\n const { data, error, loading } = useQuery(action, {\n variables: { rawQueryStringified, limit: 0 }, // we only want aggs so limit=0 for no search results\n skip: !rawQueryStringified || parentQueryLoading\n });\n\n if (error) return error.message;\n if (!filters.length) return null;\n\n const { searchPublishedContent: { rawResults: { aggregations: filterData } = {} } = {} } =\n data || {};\n\n if (!filterValues && !loading && !parentQueryLoading && (filterData || !rawQueryStringified)) {\n const newValues = getFilterValues(filterData, filters, updatedQuery);\n dispatch({ newValues, shouldSearch: false, type: 'update' });\n return null;\n }\n\n const handleSearch = newQuery => {\n setDisplaySearchFilter(false);\n const hashBit = asPath.split('#')[1] || '';\n const parsedHashBit = hashBit ? `#${hashBit}` : '';\n scrollToFirstList();\n if (!newQuery) {\n const baseQuery = `${currentUrl}${parsedHashBit}`;\n setUrlPath(baseQuery);\n return router.push('/Resolver', baseQuery, { shallow: !url, scroll: false }).then(() => {\n setKey(`filter-${name}:${Date.now()}`); // remove after range component update\n });\n }\n const newUrl = buildNewUrl(url, currentUrl, newQuery, hashBit);\n setUrlPath(newUrl);\n return router.push('/Resolver', newUrl, { shallow: !url, scroll: false });\n };\n\n const scrollToFirstList = () => {\n const [list] = document.getElementsByClassName('list-top');\n const shouldScrollToFirstList = !url && list;\n\n if (shouldScrollToFirstList) {\n window.scrollTo({\n left: 0,\n top: window.pageYOffset - SCROLL_OFFSET + list.getBoundingClientRect().top\n });\n } else {\n window.scrollTo(0, 0);\n }\n };\n\n if (!filterValues) return null;\n\n return (\n <SearchFilter\n key={key}\n setAppliedFilters={dispatch}\n query={updatedQuery}\n listComponentName={listComponentName}\n searchFilterRef={searchFilterRef}\n data={filterData}\n filters={filters}\n hasUrl={!!url}\n entity={entity}\n handleSearch={handleSearch}\n filterValues={filterValues}\n name={name}\n isCollapsedOnResponsive={isCollapsedOnResponsive}\n displaySearchFilter={displaySearchFilter}\n setDisplaySearchFilter={setDisplaySearchFilter}\n groupAfterMobile={groupAfterMobile}\n groupAfterDesktop={groupAfterDesktop}\n />\n );\n};\n\nSearchFilterContainer.propTypes = {\n entity: PropTypes.string,\n url: PropTypes.string,\n filters: PropTypes.array,\n name: PropTypes.string.isRequired,\n isCollapsedOnResponsive: PropTypes.bool,\n groupAfterMobile: PropTypes.number,\n groupAfterDesktop: PropTypes.number,\n filterBy: PropTypes.array,\n filterByProperty: PropTypes.array,\n shouldAddFilters: PropTypes.bool,\n listComponentName: PropTypes.string,\n parent: PropTypes.object\n};\n\nSearchFilterContainer.defaultProps = {\n url: null,\n filters: [],\n entity: '',\n isCollapsedOnResponsive: true,\n groupAfterMobile: 0,\n groupAfterDesktop: 0,\n filterBy: [],\n filterByProperty: [],\n shouldAddFilters: false,\n listComponentName: '',\n parent: {}\n};\n\nexport default withTitle(SearchFilterContainer);\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,EAAEC,SAAS,EAAEC,MAAM,EAAEC,UAAU,EAAEC,UAAU,QAAQ,OAAO;AAClF,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,QAAQ,QAAQ,cAAc;AACvC,OAAOC,YAAY,MAAM,gBAAgB;AACzC,SAASC,SAAS,QAAQ,WAAW;AACrC,SAASC,yBAAyB,EAAEC,uBAAuB,QAAQ,yBAAyB;AAC5F,SACEC,WAAW,EACXC,eAAe,EACfC,kCAAkC,EAClCC,kBAAkB,QACb,WAAW;AAClB,SACEC,aAAa,EACbC,mBAAmB,EACnBC,aAAa,EACbC,wBAAwB,EACxBC,iBAAiB,QACZ,eAAe;AACtB,SAASC,WAAW,QAAQ,aAAa;AACzC,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,OAAOC,mBAAmB,MAAM,uBAAuB;AACvD,SAASC,wBAAwB,QAAQ,aAAa;AAEtD,MAAMC,kBAAkB,GAAGA,CAACC,KAAK,EAAEC,QAAQ,KAAK;EAC9C,IAAI,CAACA,QAAQ,EAAE,OAAOD,KAAK;EAC3B,MAAME,YAAY,GAAG,CAAC,CAAC;EACvB,MAAMC,OAAO,GAAI,MAAKF,QAAS,GAAE;EACjCG,MAAM,CAACC,IAAI,CAACL,KAAK,CAAC,CAACM,OAAO,CAACC,QAAQ,IAAI;IACrC,MAAMC,SAAS,GAAGD,QAAQ,CAACE,OAAO,CAAE,GAAER,QAAS,EAAC,CAAC,KAAK,CAAC,CAAC;IACxD,IAAI,CAACO,SAAS,EAAE;IAChB,MAAME,iBAAiB,GAAGC,KAAK,CAACC,OAAO,CAACZ,KAAK,CAACO,QAAQ,CAAC,CAAC,GACpDP,KAAK,CAACO,QAAQ,CAAC,CAACM,GAAG,CAACC,KAAK,IAAIC,kBAAkB,CAACD,KAAK,CAAC,CAAC,GACvDC,kBAAkB,CAACf,KAAK,CAACO,QAAQ,CAAC,CAAC;IACvC,MAAMS,WAAW,GAAGT,QAAQ,CAACU,SAAS,CAACd,OAAO,CAACe,MAAM,GAAG,CAAC,EAAEX,QAAQ,CAACW,MAAM,GAAG,CAAC,CAAC;IAC/E,IAAIV,SAAS,EAAEN,YAAY,CAACc,WAAW,CAAC,GAAGN,iBAAiB;EAC9D,CAAC,CAAC;EAEF,OAAOR,YAAY;AACrB,CAAC;AAED,MAAMiB,qBAAqB,GAAGA,CAAC;EAC7BC,MAAM;EACNC,GAAG;EACHC,OAAO;EACPC,IAAI;EACJC,uBAAuB;EACvBC,gBAAgB;EAChBC,iBAAiB;EACjBC,QAAQ;EACRC,gBAAgB;EAChBC,gBAAgB;EAChBC,iBAAiB;EACjBC;AACF,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAU,CAAC,GAAGxD,UAAU,CAACC,WAAW,CAAC;EAC7C,MAAMwD,MAAM,GAAGvD,SAAS,CAAC,CAAC;EAC1B,MAAM;IAAEwD;EAAO,CAAC,GAAGD,MAAM;EACzB,MAAME,eAAe,GAAG7D,MAAM,CAAC,IAAI,CAAC;EACpC,MAAM,CAAC8D,GAAG,EAAEC,MAAM,CAAC,GAAGjE,QAAQ,CAAE,UAASmD,IAAK,EAAC,CAAC;EAChD,MAAM,CAACe,mBAAmB,EAAEC,sBAAsB,CAAC,GAAGnE,QAAQ,CAAC,KAAK,CAAC;EACrE,MAAM,CAACoE,OAAO,EAAEC,UAAU,CAAC,GAAGrE,QAAQ,CAAC8D,MAAM,CAAC,CAAC,CAAC;EAChD,MAAM,CAACQ,YAAY,EAAEC,QAAQ,CAAC,GAAGpE,UAAU,CAACsB,mBAAmB,EAAE,IAAI,CAAC;EACtE,MAAM;IAAEwB,GAAG,EAAEuB,UAAU;IAAE5C;EAAM,CAAC,GAAGnB,QAAQ,CAAC2D,OAAO,CAAC;EACpD,MAAMtC,YAAY,GAAGH,kBAAkB,CAACC,KAAK,EAAE8B,iBAAiB,CAAC;EACjE,MAAM;IAAEe,MAAM,EAAEC,QAAQ;IAAEC,UAAU,EAAEC;EAAa,CAAC,GAAGjB,MAAM;EAE7D1D,SAAS,CACP,MAAM;IACJ,IAAI6D,MAAM,EAAEO,UAAU,CAACP,MAAM,CAAC;EAChC,CAAC,EACD,CAACA,MAAM,CACT,CAAC;EACD,MAAM;IAAEe,IAAI,EAAEC,WAAW,GAAG,CAAC,CAAC;IAAEC,OAAO,EAAEC;EAAe,CAAC,GAAGtD,wBAAwB,CAAC,CACnFkD,YAAY,EACZ5B,MAAM,CACP,CAAC;EACF,MAAM;IAAE,CAAC4B,YAAY,GAAGK,YAAY,GAAG,CAAC,CAAC;IAAE,CAACjC,MAAM,GAAGkC,kBAAkB,GAAG,CAAC;EAAE,CAAC,GAAGJ,WAAW;EAC5F,MAAM;IAAEK,OAAO,GAAG,CAAC;EAAE,CAAC,GAAGF,YAAY,IAAI,CAAC,CAAC;EAC3C,MAAMG,SAAS,GAAGxB,SAAS,GAAGuB,OAAO,CAACE,GAAG,GAAGF,OAAO,CAACG,YAAY;EAChE,MAAMC,gBAAgB,GAAGpE,mBAAmB,CAACoC,QAAQ,EAAEC,gBAAgB,CAAC;EACxE,MAAMgC,UAAU,GAAGpE,aAAa,CAACmE,gBAAgB,EAAEN,YAAY,EAAEC,kBAAkB,CAAC;EACpF,MAAM;IAAEL,IAAI,EAAE;MAAEY,UAAU,EAAEC;IAAW,CAAC,GAAG,CAAC,CAAC;IAAEX,OAAO,EAAEY;EAAmB,CAAC,GAAGpF,QAAQ,CACrFM,uBAAuB,CAACuE,SAAS,EAAEI,UAAU,CAAC,EAC9C;IACEI,SAAS,EAAE;MAAEC,EAAE,EAAEnB;IAAS,CAAC;IAC3BoB,IAAI,EAAEd,cAAc,IAAI,CAACO,gBAAgB,CAACzC;EAC5C,CACF,CAAC;EACD,MAAM;IAAEiD,eAAe;IAAEC;EAAwB,CAAC,GAAG/E,kBAAkB,CACrEsC,QAAQ,EACRC,gBAAgB,EAChBkC,UACF,CAAC;EAED,MAAMO,MAAM,GAAGrF,yBAAyB,CAACW,WAAW,CAAC;EACrD,MAAM,CAAC2E,oBAAoB,EAAEC,WAAW,CAAC,GAAGnF,kCAAkC,CAACkC,OAAO,CAAC;EAEvF,MAAM;IAAEkD;EAAQ,CAAC,GAAGlF,aAAa,CAAC8B,MAAM,CAAC;EAEzC,MAAMqD,YAAY,GAAG/E,iBAAiB,CAAC;IACrCmC,gBAAgB;IAChB7B,KAAK,EAAE0C,YAAY;IACnBf,QAAQ,EAAEwC,eAAe;IACzBvC,gBAAgB,EAAEwC,uBAAuB;IACzCG,WAAW;IACXG,SAAS,EAAEtE,MAAM,CAACC,IAAI,CAACH,YAAY;EACrC,CAAC,CAAC;EAEF,MAAMyE,mBAAmB,GAAGlF,wBAAwB,CAClD6E,oBAAoB,EACpBC,WAAW,EACXC,OAAO,EACPC,YACF,CAAC;EAED,MAAM;IAAExB,IAAI;IAAE2B,KAAK;IAAEzB;EAAQ,CAAC,GAAGxE,QAAQ,CAAC0F,MAAM,EAAE;IAChDL,SAAS,EAAE;MAAEW,mBAAmB;MAAEE,KAAK,EAAE;IAAE,CAAC;IAAE;IAC9CX,IAAI,EAAE,CAACS,mBAAmB,IAAIZ;EAChC,CAAC,CAAC;EAEF,IAAIa,KAAK,EAAE,OAAOA,KAAK,CAACE,OAAO;EAC/B,IAAI,CAACxD,OAAO,CAACJ,MAAM,EAAE,OAAO,IAAI;EAEhC,MAAM;IAAE6D,sBAAsB,EAAE;MAAEC,UAAU,EAAE;QAAEC,YAAY,EAAEC;MAAW,CAAC,GAAG,CAAC;IAAE,CAAC,GAAG,CAAC;EAAE,CAAC,GACtFjC,IAAI,IAAI,CAAC,CAAC;EAEZ,IAAI,CAACP,YAAY,IAAI,CAACS,OAAO,IAAI,CAACY,kBAAkB,KAAKmB,UAAU,IAAI,CAACP,mBAAmB,CAAC,EAAE;IAC5F,MAAMQ,SAAS,GAAGhG,eAAe,CAAC+F,UAAU,EAAE5D,OAAO,EAAEpB,YAAY,CAAC;IACpEyC,QAAQ,CAAC;MAAEwC,SAAS;MAAEC,YAAY,EAAE,KAAK;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC;IAC5D,OAAO,IAAI;EACb;EAEA,MAAMC,YAAY,GAAGC,QAAQ,IAAI;IAC/BhD,sBAAsB,CAAC,KAAK,CAAC;IAC7B,MAAMiD,OAAO,GAAGtD,MAAM,CAACuD,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;IAC1C,MAAMC,aAAa,GAAGF,OAAO,GAAI,IAAGA,OAAQ,EAAC,GAAG,EAAE;IAClDG,iBAAiB,CAAC,CAAC;IACnB,IAAI,CAACJ,QAAQ,EAAE;MACb,MAAMK,SAAS,GAAI,GAAEhD,UAAW,GAAE8C,aAAc,EAAC;MACjDjD,UAAU,CAACmD,SAAS,CAAC;MACrB,OAAO3D,MAAM,CAAC4D,IAAI,CAAC,WAAW,EAAED,SAAS,EAAE;QAAEE,OAAO,EAAE,CAACzE,GAAG;QAAE0E,MAAM,EAAE;MAAM,CAAC,CAAC,CAACC,IAAI,CAAC,MAAM;QACtF3D,MAAM,CAAE,UAASd,IAAK,IAAG0E,IAAI,CAACC,GAAG,CAAC,CAAE,EAAC,CAAC,CAAC,CAAC;MAC1C,CAAC,CAAC;IACJ;IACA,MAAMC,MAAM,GAAGjH,WAAW,CAACmC,GAAG,EAAEuB,UAAU,EAAE2C,QAAQ,EAAEC,OAAO,CAAC;IAC9D/C,UAAU,CAAC0D,MAAM,CAAC;IAClB,OAAOlE,MAAM,CAAC4D,IAAI,CAAC,WAAW,EAAEM,MAAM,EAAE;MAAEL,OAAO,EAAE,CAACzE,GAAG;MAAE0E,MAAM,EAAE;IAAM,CAAC,CAAC;EAC3E,CAAC;EAED,MAAMJ,iBAAiB,GAAGA,CAAA,KAAM;IAC9B,MAAM,CAACS,IAAI,CAAC,GAAGC,QAAQ,CAACC,sBAAsB,CAAC,UAAU,CAAC;IAC1D,MAAMC,uBAAuB,GAAG,CAAClF,GAAG,IAAI+E,IAAI;IAE5C,IAAIG,uBAAuB,EAAE;MAC3BC,MAAM,CAACC,QAAQ,CAAC;QACdC,IAAI,EAAE,CAAC;QACPC,GAAG,EAAEH,MAAM,CAACI,WAAW,GAAGhH,aAAa,GAAGwG,IAAI,CAACS,qBAAqB,CAAC,CAAC,CAACF;MACzE,CAAC,CAAC;IACJ,CAAC,MAAM;MACLH,MAAM,CAACC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;IACvB;EACF,CAAC;EAED,IAAI,CAAC/D,YAAY,EAAE,OAAO,IAAI;EAE9B,oBACEvE,KAAA,CAAA2I,aAAA,CAAChI,YAAY;IACXsD,GAAG,EAAEA,GAAI;IACT2E,iBAAiB,EAAEpE,QAAS;IAC5B3C,KAAK,EAAEE,YAAa;IACpB4B,iBAAiB,EAAEA,iBAAkB;IACrCK,eAAe,EAAEA,eAAgB;IACjCc,IAAI,EAAEiC,UAAW;IACjB5D,OAAO,EAAEA,OAAQ;IACjB0F,MAAM,EAAE,CAAC,CAAC3F,GAAI;IACdD,MAAM,EAAEA,MAAO;IACfkE,YAAY,EAAEA,YAAa;IAC3B5C,YAAY,EAAEA,YAAa;IAC3BnB,IAAI,EAAEA,IAAK;IACXC,uBAAuB,EAAEA,uBAAwB;IACjDc,mBAAmB,EAAEA,mBAAoB;IACzCC,sBAAsB,EAAEA,sBAAuB;IAC/Cd,gBAAgB,EAAEA,gBAAiB;IACnCC,iBAAiB,EAAEA;EAAkB,CACtC,CAAC;AAEN,CAAC;AAEDP,qBAAqB,CAAC8F,SAAS,GAAG;EAChC7F,MAAM,EAAExC,SAAS,CAACsI,MAAM;EACxB7F,GAAG,EAAEzC,SAAS,CAACsI,MAAM;EACrB5F,OAAO,EAAE1C,SAAS,CAACuI,KAAK;EACxB5F,IAAI,EAAE3C,SAAS,CAACsI,MAAM,CAACE,UAAU;EACjC5F,uBAAuB,EAAE5C,SAAS,CAACyI,IAAI;EACvC5F,gBAAgB,EAAE7C,SAAS,CAAC0I,MAAM;EAClC5F,iBAAiB,EAAE9C,SAAS,CAAC0I,MAAM;EACnC3F,QAAQ,EAAE/C,SAAS,CAACuI,KAAK;EACzBvF,gBAAgB,EAAEhD,SAAS,CAACuI,KAAK;EACjCtF,gBAAgB,EAAEjD,SAAS,CAACyI,IAAI;EAChCvF,iBAAiB,EAAElD,SAAS,CAACsI,MAAM;EACnCnF,MAAM,EAAEnD,SAAS,CAAC2I;AACpB,CAAC;AAEDpG,qBAAqB,CAACqG,YAAY,GAAG;EACnCnG,GAAG,EAAE,IAAI;EACTC,OAAO,EAAE,EAAE;EACXF,MAAM,EAAE,EAAE;EACVI,uBAAuB,EAAE,IAAI;EAC7BC,gBAAgB,EAAE,CAAC;EACnBC,iBAAiB,EAAE,CAAC;EACpBC,QAAQ,EAAE,EAAE;EACZC,gBAAgB,EAAE,EAAE;EACpBC,gBAAgB,EAAE,KAAK;EACvBC,iBAAiB,EAAE,EAAE;EACrBC,MAAM,EAAE,CAAC;AACX,CAAC;AAED,eAAehD,SAAS,CAACoC,qBAAqB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"SearchFilterContainer.js","names":["React","useState","useEffect","useRef","useReducer","useContext","MainContext","useRouter","useQuery","PropTypes","parseUrl","SearchFilter","withTitle","getSearchPublishedContent","generateSingleItemQuery","buildNewUrl","getFilterValues","getFilterRangesAndCheckboxesValues","getUpdatedFilterBy","buildListNameQuery","getEntityData","getInheritedFilters","getQueryProps","buildRawQueryStringified","buildFiltersQuery","RAW_RESULTS","SCROLL_OFFSET","searchFilterReducer","useGetEntitySchemasAsObj","SearchFilterContainer","entity","url","filters","name","isCollapsedOnResponsive","groupAfterMobile","groupAfterDesktop","filterBy","filterByProperty","shouldAddFilters","listComponentName","parent","mobileRefineButtonText","isPreview","router","asPath","searchFilterRef","key","setKey","displaySearchFilter","setDisplaySearchFilter","urlPath","setUrlPath","filterValues","dispatch","currentUrl","query","updatedQuery","itemId","parentId","itemEntity","parentEntity","newQuery","updatedNewQuery","newValues","filterData","shouldSearch","type","data","mainSchemas","loading","schemasLoading","parentSchema","filterEntitySchema","actions","getAction","get","getPublished","inheritedFilters","queryProps","entityData","parentData","parentQueryLoading","variables","id","skip","length","updatedFilterBy","updatedFilterByProperty","action","checkboxSelectValues","rangeValues","docType","filtersQuery","queryKeys","Object","keys","rawQueryStringified","error","limit","message","searchPublishedContent","rawResults","aggregations","handleSearch","hashBit","split","parsedHashBit","scrollToFirstList","baseQuery","push","shallow","scroll","then","Date","now","newUrl","list","document","getElementsByClassName","shouldScrollToFirstList","window","scrollTo","left","top","pageYOffset","getBoundingClientRect","createElement","setAppliedFilters","hasUrl","propTypes","string","array","isRequired","bool","number","object","defaultProps"],"sources":["../../../src/components/SearchFilter/SearchFilterContainer.js"],"sourcesContent":["import React, { useState, useEffect, useRef, useReducer, useContext } from 'react';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { useRouter } from 'next/router';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { parseUrl } from 'query-string';\nimport SearchFilter from './SearchFilter';\nimport { withTitle } from '../../HOC';\nimport { getSearchPublishedContent, generateSingleItemQuery } from '../../application/query';\nimport {\n buildNewUrl,\n getFilterValues,\n getFilterRangesAndCheckboxesValues,\n getUpdatedFilterBy,\n buildListNameQuery\n} from './helpers';\nimport {\n getEntityData,\n getInheritedFilters,\n getQueryProps,\n buildRawQueryStringified,\n buildFiltersQuery\n} from '../../helpers';\nimport { RAW_RESULTS } from './constants';\nimport { SCROLL_OFFSET } from '../../constants';\nimport searchFilterReducer from './searchFilterReducer';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\n\nconst SearchFilterContainer = ({\n entity,\n url,\n filters,\n name,\n isCollapsedOnResponsive,\n groupAfterMobile,\n groupAfterDesktop,\n filterBy,\n filterByProperty,\n shouldAddFilters,\n listComponentName,\n parent,\n mobileRefineButtonText\n}) => {\n const { isPreview } = useContext(MainContext);\n const router = useRouter();\n const { asPath } = router;\n const searchFilterRef = useRef(null);\n const [key, setKey] = useState(`filter-${name}`);\n const [displaySearchFilter, setDisplaySearchFilter] = useState(false);\n const [urlPath, setUrlPath] = useState(asPath); // used as asPath can take too long to update\n const [filterValues, dispatch] = useReducer(searchFilterReducer, null);\n const { url: currentUrl, query } = parseUrl(urlPath);\n const updatedQuery = buildListNameQuery(query, listComponentName);\n const { itemId: parentId, itemEntity: parentEntity } = parent;\n\n useEffect(\n () => {\n if (asPath === urlPath) return;\n\n const { query: newQuery } = parseUrl(asPath);\n const updatedNewQuery = buildListNameQuery(newQuery, listComponentName);\n const newValues = getFilterValues(filterData, filters, updatedNewQuery);\n if (newValues)\n dispatch({\n newValues,\n shouldSearch: false,\n type: 'update'\n });\n setUrlPath(asPath);\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [asPath]\n );\n\n const { data: mainSchemas = {}, loading: schemasLoading } = useGetEntitySchemasAsObj([\n parentEntity,\n entity\n ]);\n const { [parentEntity]: parentSchema = {}, [entity]: filterEntitySchema = {} } = mainSchemas;\n const { actions = {} } = parentSchema || {};\n const getAction = isPreview ? actions.get : actions.getPublished;\n const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);\n const queryProps = getQueryProps(inheritedFilters, parentSchema, filterEntitySchema);\n const { data: { entityData: parentData } = {}, loading: parentQueryLoading } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: parentId },\n skip: schemasLoading || !inheritedFilters.length\n }\n );\n const { updatedFilterBy, updatedFilterByProperty } = getUpdatedFilterBy(\n filterBy,\n filterByProperty,\n parentData\n );\n\n const action = getSearchPublishedContent(RAW_RESULTS);\n const [checkboxSelectValues, rangeValues] = getFilterRangesAndCheckboxesValues(filters);\n\n const { docType } = getEntityData(entity);\n\n const filtersQuery = buildFiltersQuery({\n shouldAddFilters,\n query: filterValues,\n filterBy: updatedFilterBy,\n filterByProperty: updatedFilterByProperty,\n rangeValues,\n queryKeys: Object.keys(updatedQuery)\n });\n\n const rawQueryStringified = buildRawQueryStringified(\n checkboxSelectValues,\n rangeValues,\n docType,\n filtersQuery\n );\n\n const { data, error, loading } = useQuery(action, {\n variables: { rawQueryStringified, limit: 0 }, // we only want aggs so limit=0 for no search results\n skip: !rawQueryStringified || parentQueryLoading\n });\n\n if (error) return error.message;\n if (!filters.length) return null;\n\n const { searchPublishedContent: { rawResults: { aggregations: filterData } = {} } = {} } =\n data || {};\n\n if (!filterValues && !loading && !parentQueryLoading && (filterData || !rawQueryStringified)) {\n const newValues = getFilterValues(filterData, filters, updatedQuery);\n dispatch({ newValues, shouldSearch: false, type: 'update' });\n return null;\n }\n\n const handleSearch = newQuery => {\n setDisplaySearchFilter(false);\n const hashBit = asPath.split('#')[1] || '';\n const parsedHashBit = hashBit ? `#${hashBit}` : '';\n scrollToFirstList();\n if (!newQuery) {\n const baseQuery = `${currentUrl}${parsedHashBit}`;\n setUrlPath(baseQuery);\n return router.push('/Resolver', baseQuery, { shallow: !url, scroll: false }).then(() => {\n setKey(`filter-${name}:${Date.now()}`); // remove after range component update\n });\n }\n const newUrl = buildNewUrl(url, currentUrl, newQuery, hashBit);\n setUrlPath(newUrl);\n return router.push('/Resolver', newUrl, { shallow: !url, scroll: false });\n };\n\n const scrollToFirstList = () => {\n const [list] = document.getElementsByClassName('list-top');\n const shouldScrollToFirstList = !url && list;\n\n if (shouldScrollToFirstList) {\n window.scrollTo({\n left: 0,\n top: window.pageYOffset - SCROLL_OFFSET + list.getBoundingClientRect().top\n });\n } else {\n window.scrollTo(0, 0);\n }\n };\n\n if (!filterValues) return null;\n\n return (\n <SearchFilter\n key={key}\n setAppliedFilters={dispatch}\n query={updatedQuery}\n listComponentName={listComponentName}\n searchFilterRef={searchFilterRef}\n data={filterData}\n filters={filters}\n hasUrl={!!url}\n entity={entity}\n handleSearch={handleSearch}\n filterValues={filterValues}\n name={name}\n isCollapsedOnResponsive={isCollapsedOnResponsive}\n displaySearchFilter={displaySearchFilter}\n setDisplaySearchFilter={setDisplaySearchFilter}\n groupAfterMobile={groupAfterMobile}\n groupAfterDesktop={groupAfterDesktop}\n mobileRefineButtonText={mobileRefineButtonText}\n />\n );\n};\n\nSearchFilterContainer.propTypes = {\n mobileRefineButtonText: PropTypes.string,\n entity: PropTypes.string,\n url: PropTypes.string,\n filters: PropTypes.array,\n name: PropTypes.string.isRequired,\n isCollapsedOnResponsive: PropTypes.bool,\n groupAfterMobile: PropTypes.number,\n groupAfterDesktop: PropTypes.number,\n filterBy: PropTypes.array,\n filterByProperty: PropTypes.array,\n shouldAddFilters: PropTypes.bool,\n listComponentName: PropTypes.string,\n parent: PropTypes.object\n};\n\nSearchFilterContainer.defaultProps = {\n url: null,\n filters: [],\n entity: '',\n isCollapsedOnResponsive: true,\n groupAfterMobile: 0,\n groupAfterDesktop: 0,\n filterBy: [],\n filterByProperty: [],\n shouldAddFilters: false,\n listComponentName: '',\n parent: {},\n mobileRefineButtonText: ''\n};\n\nexport default withTitle(SearchFilterContainer);\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","names":["React","PropTypes","Select","DEFAULT_OPTION","SelectFilter","data","label","prop","updateFilterValues","filterValues","shouldSearch","displayLabelAsPlaceholder","displayFilterCount","elementTitle","filterValue","disabledOptions","buckets","options","map","key","doc_count","count","push","optionLabel","filter","Boolean","sort","labelText","labelToUse","defaultTextValue","createElement","Fragment","className","value","id","name","onChange","valueToUse","disabled","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 { DEFAULT_OPTION } from '../constants';\n\nconst SelectFilter = ({\n data,\n label,\n prop,\n updateFilterValues,\n filterValues,\n shouldSearch,\n displayLabelAsPlaceholder,\n displayFilterCount,\n elementTitle\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 <>\n {elementTitle && <div className=\"heading heading--section\">{elementTitle}</div>}\n <Select\n label={labelToUse}\n value={filterValue}\n id={prop}\n name={`filter-${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};\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 elementTitle: PropTypes.string,\n\n displayLabelAsPlaceholder: PropTypes.bool,\n displayFilterCount: PropTypes.bool\n};\n\nSelectFilter.defaultProps = {\n filterValues: {},\n shouldSearch: false,\n label: '',\n elementTitle: '',\n displayLabelAsPlaceholder: false,\n displayFilterCount: false\n};\n\nexport default SelectFilter;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Select.js","names":["React","PropTypes","Select","DEFAULT_OPTION","SelectFilter","data","label","prop","updateFilterValues","filterValues","shouldSearch","displayLabelAsPlaceholder","displayFilterCount","elementTitle","filterValue","disabledOptions","buckets","options","map","key","doc_count","count","push","optionLabel","filter","Boolean","sort","labelText","labelToUse","defaultTextValue","createElement","Fragment","className","value","id","name","onChange","valueToUse","disabled","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 { DEFAULT_OPTION } from '../constants';\n\nconst SelectFilter = ({\n data,\n label,\n prop,\n updateFilterValues,\n filterValues,\n shouldSearch,\n displayLabelAsPlaceholder,\n displayFilterCount,\n elementTitle\n}) => {\n const filterValue = filterValues[prop] || '';\n const disabledOptions = [];\n const { buckets = [] } = data[prop] || {};\n\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 <>\n {elementTitle && <div className=\"heading heading--section\">{elementTitle}</div>}\n <Select\n label={labelToUse}\n value={filterValue}\n id={prop}\n name={`filter-${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\n updateFilterValues({ [prop]: valueToUse }, shouldSearch);\n }}\n disabled={disabledOptions}\n />\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 elementTitle: PropTypes.string,\n\n displayLabelAsPlaceholder: PropTypes.bool,\n displayFilterCount: PropTypes.bool\n};\n\nSelectFilter.defaultProps = {\n filterValues: {},\n shouldSearch: false,\n label: '',\n elementTitle: '',\n displayLabelAsPlaceholder: false,\n displayFilterCount: false\n};\n\nexport default SelectFilter;\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ const buildListNameQuery = (query, listName) => {
2
+ if (!listName) return query;
3
+ const updatedQuery = {};
4
+ const listKey = `pb[${listName}]`;
5
+ Object.keys(query).forEach(queryKey => {
6
+ const isListKey = queryKey.indexOf(`${listName}`) !== -1;
7
+ if (!isListKey) return;
8
+ const decodedQueryValue = Array.isArray(query[queryKey]) ? query[queryKey].map(value => decodeURIComponent(value)) : decodeURIComponent(query[queryKey]);
9
+ const strippedKey = queryKey.substring(listKey.length + 1, queryKey.length - 1);
10
+ if (isListKey) updatedQuery[strippedKey] = decodedQueryValue;
11
+ });
12
+ return updatedQuery;
13
+ };
14
+ export default buildListNameQuery;
15
+ //# sourceMappingURL=build-list-name-query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-list-name-query.js","names":["buildListNameQuery","query","listName","updatedQuery","listKey","Object","keys","forEach","queryKey","isListKey","indexOf","decodedQueryValue","Array","isArray","map","value","decodeURIComponent","strippedKey","substring","length"],"sources":["../../../../src/components/SearchFilter/helpers/build-list-name-query.js"],"sourcesContent":["const buildListNameQuery = (query, listName) => {\n if (!listName) return query;\n const updatedQuery = {};\n const listKey = `pb[${listName}]`;\n Object.keys(query).forEach(queryKey => {\n const isListKey = queryKey.indexOf(`${listName}`) !== -1;\n if (!isListKey) return;\n const decodedQueryValue = Array.isArray(query[queryKey])\n ? query[queryKey].map(value => decodeURIComponent(value))\n : decodeURIComponent(query[queryKey]);\n const strippedKey = queryKey.substring(listKey.length + 1, queryKey.length - 1);\n if (isListKey) updatedQuery[strippedKey] = decodedQueryValue;\n });\n\n return updatedQuery;\n};\n\nexport default buildListNameQuery;\n"],"mappings":"AAAA,MAAMA,kBAAkB,GAAGA,CAACC,KAAK,EAAEC,QAAQ,KAAK;EAC9C,IAAI,CAACA,QAAQ,EAAE,OAAOD,KAAK;EAC3B,MAAME,YAAY,GAAG,CAAC,CAAC;EACvB,MAAMC,OAAO,GAAI,MAAKF,QAAS,GAAE;EACjCG,MAAM,CAACC,IAAI,CAACL,KAAK,CAAC,CAACM,OAAO,CAACC,QAAQ,IAAI;IACrC,MAAMC,SAAS,GAAGD,QAAQ,CAACE,OAAO,CAAE,GAAER,QAAS,EAAC,CAAC,KAAK,CAAC,CAAC;IACxD,IAAI,CAACO,SAAS,EAAE;IAChB,MAAME,iBAAiB,GAAGC,KAAK,CAACC,OAAO,CAACZ,KAAK,CAACO,QAAQ,CAAC,CAAC,GACpDP,KAAK,CAACO,QAAQ,CAAC,CAACM,GAAG,CAACC,KAAK,IAAIC,kBAAkB,CAACD,KAAK,CAAC,CAAC,GACvDC,kBAAkB,CAACf,KAAK,CAACO,QAAQ,CAAC,CAAC;IACvC,MAAMS,WAAW,GAAGT,QAAQ,CAACU,SAAS,CAACd,OAAO,CAACe,MAAM,GAAG,CAAC,EAAEX,QAAQ,CAACW,MAAM,GAAG,CAAC,CAAC;IAC/E,IAAIV,SAAS,EAAEN,YAAY,CAACc,WAAW,CAAC,GAAGN,iBAAiB;EAC9D,CAAC,CAAC;EAEF,OAAOR,YAAY;AACrB,CAAC;AAED,eAAeH,kBAAkB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"decode-encode.js","names":["decodeValue","value","decodeURIComponent","encodeValue","encodeURIComponent"],"sources":["../../../../src/components/SearchFilter/helpers/decode-encode.js"],"sourcesContent":["const decodeValue = value => decodeURIComponent(value);\n\nconst encodeValue = value => encodeURIComponent(value);\n\nexport { decodeValue, encodeValue };\n"],"mappings":"AAAA,MAAMA,WAAW,GAAGC,KAAK,IAAIC,kBAAkB,CAACD,KAAK,CAAC;AAEtD,MAAME,WAAW,GAAGF,KAAK,IAAIG,kBAAkB,CAACH,KAAK,CAAC;AAEtD,SAASD,WAAW,EAAEG,WAAW","ignoreList":[]}
1
+ {"version":3,"file":"decode-encode.js","names":["decodeValue","value","decodeURIComponent","encodeValue","encodeURIComponent"],"sources":["../../../../src/components/SearchFilter/helpers/decode-encode.js"],"sourcesContent":["const decodeValue = value => decodeURIComponent(value);\nconst encodeValue = value => encodeURIComponent(value);\n\nexport { decodeValue, encodeValue };\n"],"mappings":"AAAA,MAAMA,WAAW,GAAGC,KAAK,IAAIC,kBAAkB,CAACD,KAAK,CAAC;AACtD,MAAME,WAAW,GAAGF,KAAK,IAAIG,kBAAkB,CAACH,KAAK,CAAC;AAEtD,SAASD,WAAW,EAAEG,WAAW","ignoreList":[]}
@@ -7,10 +7,18 @@ const getRangeValue = (rawQueryProp, rangeInterval, _min, _max) => {
7
7
  min: _min,
8
8
  max: _max
9
9
  }, rangeInterval);
10
+ const defaultValues = {
11
+ max,
12
+ min,
13
+ step: rangeInterval,
14
+ maxValue: max,
15
+ minValue: min
16
+ };
10
17
  if (rawQueryProp) {
11
18
  const [queryParamMin, queryParamMax] = Array.isArray(rawQueryProp) ? rawQueryProp[0].split('-') : rawQueryProp.split('-');
12
19
  const updatedMinValue = Number(queryParamMin);
13
20
  const updatedMaxValue = Number(queryParamMax);
21
+ if (Number.isNaN(updatedMinValue) || Number.isNaN(updatedMaxValue)) return defaultValues;
14
22
  return {
15
23
  min: Number.isNaN(min) ? updatedMinValue : min,
16
24
  max: Number.isNaN(max) ? updatedMaxValue : max,
@@ -19,13 +27,7 @@ const getRangeValue = (rawQueryProp, rangeInterval, _min, _max) => {
19
27
  minValue: updatedMinValue
20
28
  };
21
29
  }
22
- return {
23
- max,
24
- min,
25
- step: rangeInterval,
26
- maxValue: max,
27
- minValue: min
28
- };
30
+ return defaultValues;
29
31
  };
30
32
  export default getRangeValue;
31
33
  //# sourceMappingURL=get-range-value.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-range-value.js","names":["calculateMinMax","getRangeValue","rawQueryProp","rangeInterval","_min","_max","min","max","queryParamMin","queryParamMax","Array","isArray","split","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,OAAOA,eAAe,MAAM,qBAAqB;AAEjD,MAAMC,aAAa,GAAGA,CAACC,YAAY,EAAEC,aAAa,EAAEC,IAAI,EAAEC,IAAI,KAAK;EACjE,MAAM;IAAEC,GAAG;IAAEC;EAAI,CAAC,GAAGP,eAAe,CAAC;IAAEM,GAAG,EAAEF,IAAI;IAAEG,GAAG,EAAEF;EAAK,CAAC,EAAEF,aAAa,CAAC;EAE7E,IAAID,YAAY,EAAE;IAChB,MAAM,CAACM,aAAa,EAAEC,aAAa,CAAC,GAAGC,KAAK,CAACC,OAAO,CAACT,YAAY,CAAC,GAC9DA,YAAY,CAAC,CAAC,CAAC,CAACU,KAAK,CAAC,GAAG,CAAC,GAC1BV,YAAY,CAACU,KAAK,CAAC,GAAG,CAAC;IAC3B,MAAMC,eAAe,GAAGC,MAAM,CAACN,aAAa,CAAC;IAC7C,MAAMO,eAAe,GAAGD,MAAM,CAACL,aAAa,CAAC;IAE7C,OAAO;MACLH,GAAG,EAAEQ,MAAM,CAACE,KAAK,CAACV,GAAG,CAAC,GAAGO,eAAe,GAAGP,GAAG;MAC9CC,GAAG,EAAEO,MAAM,CAACE,KAAK,CAACT,GAAG,CAAC,GAAGQ,eAAe,GAAGR,GAAG;MAC9CU,IAAI,EAAEd,aAAa;MACnBe,QAAQ,EAAEH,eAAe;MACzBI,QAAQ,EAAEN;IACZ,CAAC;EACH;EAEA,OAAO;IACLN,GAAG;IACHD,GAAG;IACHW,IAAI,EAAEd,aAAa;IACnBe,QAAQ,EAAEX,GAAG;IACbY,QAAQ,EAAEb;EACZ,CAAC;AACH,CAAC;AAED,eAAeL,aAAa","ignoreList":[]}
1
+ {"version":3,"file":"get-range-value.js","names":["calculateMinMax","getRangeValue","rawQueryProp","rangeInterval","_min","_max","min","max","defaultValues","step","maxValue","minValue","queryParamMin","queryParamMax","Array","isArray","split","updatedMinValue","Number","updatedMaxValue","isNaN"],"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 const defaultValues = {\n max,\n min,\n step: rangeInterval,\n maxValue: max,\n minValue: min\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 if (Number.isNaN(updatedMinValue) || Number.isNaN(updatedMaxValue)) return defaultValues;\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 defaultValues;\n};\n\nexport default getRangeValue;\n"],"mappings":"AAAA,OAAOA,eAAe,MAAM,qBAAqB;AAEjD,MAAMC,aAAa,GAAGA,CAACC,YAAY,EAAEC,aAAa,EAAEC,IAAI,EAAEC,IAAI,KAAK;EACjE,MAAM;IAAEC,GAAG;IAAEC;EAAI,CAAC,GAAGP,eAAe,CAAC;IAAEM,GAAG,EAAEF,IAAI;IAAEG,GAAG,EAAEF;EAAK,CAAC,EAAEF,aAAa,CAAC;EAC7E,MAAMK,aAAa,GAAG;IACpBD,GAAG;IACHD,GAAG;IACHG,IAAI,EAAEN,aAAa;IACnBO,QAAQ,EAAEH,GAAG;IACbI,QAAQ,EAAEL;EACZ,CAAC;EACD,IAAIJ,YAAY,EAAE;IAChB,MAAM,CAACU,aAAa,EAAEC,aAAa,CAAC,GAAGC,KAAK,CAACC,OAAO,CAACb,YAAY,CAAC,GAC9DA,YAAY,CAAC,CAAC,CAAC,CAACc,KAAK,CAAC,GAAG,CAAC,GAC1Bd,YAAY,CAACc,KAAK,CAAC,GAAG,CAAC;IAC3B,MAAMC,eAAe,GAAGC,MAAM,CAACN,aAAa,CAAC;IAC7C,MAAMO,eAAe,GAAGD,MAAM,CAACL,aAAa,CAAC;IAE7C,IAAIK,MAAM,CAACE,KAAK,CAACH,eAAe,CAAC,IAAIC,MAAM,CAACE,KAAK,CAACD,eAAe,CAAC,EAAE,OAAOX,aAAa;IAExF,OAAO;MACLF,GAAG,EAAEY,MAAM,CAACE,KAAK,CAACd,GAAG,CAAC,GAAGW,eAAe,GAAGX,GAAG;MAC9CC,GAAG,EAAEW,MAAM,CAACE,KAAK,CAACb,GAAG,CAAC,GAAGY,eAAe,GAAGZ,GAAG;MAC9CE,IAAI,EAAEN,aAAa;MACnBO,QAAQ,EAAES,eAAe;MACzBR,QAAQ,EAAEM;IACZ,CAAC;EACH;EAEA,OAAOT,aAAa;AACtB,CAAC;AAED,eAAeP,aAAa","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ import buildListNameQuery from './build-list-name-query';
1
2
  import buildNewUrl from './build-new-url';
2
3
  import { decodeValue, encodeValue } from './decode-encode';
3
4
  import checkIfRangeUpdated from './check-if-range-updated';
@@ -14,5 +15,5 @@ import getFilterValueFromQuery from './get-filter-value-from-query';
14
15
  import getFilterRangesAndCheckboxesValues from './get-filter-ranges-and-checkboxes-values';
15
16
  import getUpdatedFilterBy from './get-updated-filter-by';
16
17
  import buildUrlQuery from './build-url-query';
17
- export { buildNewUrl, decodeValue, encodeValue, checkIfRangeUpdated, getResponsiveFilterClassnames, getDisplayValue, calculateStep, calculateMinMax, getIntersectedProp, getRangeValue, getSelectOptions, isDeviceDesktop, getFilterValues, getFilterValueFromQuery, getFilterRangesAndCheckboxesValues, getUpdatedFilterBy, buildUrlQuery };
18
+ export { buildListNameQuery, buildNewUrl, decodeValue, encodeValue, checkIfRangeUpdated, getResponsiveFilterClassnames, getDisplayValue, calculateStep, calculateMinMax, getIntersectedProp, getRangeValue, getSelectOptions, isDeviceDesktop, getFilterValues, getFilterValueFromQuery, getFilterRangesAndCheckboxesValues, getUpdatedFilterBy, buildUrlQuery };
18
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["buildNewUrl","decodeValue","encodeValue","checkIfRangeUpdated","getResponsiveFilterClassnames","getDisplayValue","calculateStep","calculateMinMax","getIntersectedProp","getRangeValue","getSelectOptions","isDeviceDesktop","getFilterValues","getFilterValueFromQuery","getFilterRangesAndCheckboxesValues","getUpdatedFilterBy","buildUrlQuery"],"sources":["../../../../src/components/SearchFilter/helpers/index.js"],"sourcesContent":["import buildNewUrl from './build-new-url';\nimport { decodeValue, encodeValue } from './decode-encode';\nimport checkIfRangeUpdated from './check-if-range-updated';\nimport getResponsiveFilterClassnames from './get-responsive-filter-classnames';\nimport getDisplayValue from './get-display-value';\nimport calculateStep from './calculate-step';\nimport calculateMinMax from './calculate-min-max';\nimport getIntersectedProp from './get-intersected-prop';\nimport getRangeValue from './get-range-value';\nimport getSelectOptions from './get-select-options';\nimport isDeviceDesktop from './is-device-desktop';\nimport getFilterValues from './get-filter-values';\nimport getFilterValueFromQuery from './get-filter-value-from-query';\nimport getFilterRangesAndCheckboxesValues from './get-filter-ranges-and-checkboxes-values';\nimport getUpdatedFilterBy from './get-updated-filter-by';\nimport buildUrlQuery from './build-url-query';\n\nexport {\n buildNewUrl,\n decodeValue,\n encodeValue,\n checkIfRangeUpdated,\n getResponsiveFilterClassnames,\n getDisplayValue,\n calculateStep,\n calculateMinMax,\n getIntersectedProp,\n getRangeValue,\n getSelectOptions,\n isDeviceDesktop,\n getFilterValues,\n getFilterValueFromQuery,\n getFilterRangesAndCheckboxesValues,\n getUpdatedFilterBy,\n buildUrlQuery\n};\n"],"mappings":"AAAA,OAAOA,WAAW,MAAM,iBAAiB;AACzC,SAASC,WAAW,EAAEC,WAAW,QAAQ,iBAAiB;AAC1D,OAAOC,mBAAmB,MAAM,0BAA0B;AAC1D,OAAOC,6BAA6B,MAAM,oCAAoC;AAC9E,OAAOC,eAAe,MAAM,qBAAqB;AACjD,OAAOC,aAAa,MAAM,kBAAkB;AAC5C,OAAOC,eAAe,MAAM,qBAAqB;AACjD,OAAOC,kBAAkB,MAAM,wBAAwB;AACvD,OAAOC,aAAa,MAAM,mBAAmB;AAC7C,OAAOC,gBAAgB,MAAM,sBAAsB;AACnD,OAAOC,eAAe,MAAM,qBAAqB;AACjD,OAAOC,eAAe,MAAM,qBAAqB;AACjD,OAAOC,uBAAuB,MAAM,+BAA+B;AACnE,OAAOC,kCAAkC,MAAM,2CAA2C;AAC1F,OAAOC,kBAAkB,MAAM,yBAAyB;AACxD,OAAOC,aAAa,MAAM,mBAAmB;AAE7C,SACEhB,WAAW,EACXC,WAAW,EACXC,WAAW,EACXC,mBAAmB,EACnBC,6BAA6B,EAC7BC,eAAe,EACfC,aAAa,EACbC,eAAe,EACfC,kBAAkB,EAClBC,aAAa,EACbC,gBAAgB,EAChBC,eAAe,EACfC,eAAe,EACfC,uBAAuB,EACvBC,kCAAkC,EAClCC,kBAAkB,EAClBC,aAAa","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["buildListNameQuery","buildNewUrl","decodeValue","encodeValue","checkIfRangeUpdated","getResponsiveFilterClassnames","getDisplayValue","calculateStep","calculateMinMax","getIntersectedProp","getRangeValue","getSelectOptions","isDeviceDesktop","getFilterValues","getFilterValueFromQuery","getFilterRangesAndCheckboxesValues","getUpdatedFilterBy","buildUrlQuery"],"sources":["../../../../src/components/SearchFilter/helpers/index.js"],"sourcesContent":["import buildListNameQuery from './build-list-name-query';\nimport buildNewUrl from './build-new-url';\nimport { decodeValue, encodeValue } from './decode-encode';\nimport checkIfRangeUpdated from './check-if-range-updated';\nimport getResponsiveFilterClassnames from './get-responsive-filter-classnames';\nimport getDisplayValue from './get-display-value';\nimport calculateStep from './calculate-step';\nimport calculateMinMax from './calculate-min-max';\nimport getIntersectedProp from './get-intersected-prop';\nimport getRangeValue from './get-range-value';\nimport getSelectOptions from './get-select-options';\nimport isDeviceDesktop from './is-device-desktop';\nimport getFilterValues from './get-filter-values';\nimport getFilterValueFromQuery from './get-filter-value-from-query';\nimport getFilterRangesAndCheckboxesValues from './get-filter-ranges-and-checkboxes-values';\nimport getUpdatedFilterBy from './get-updated-filter-by';\nimport buildUrlQuery from './build-url-query';\n\nexport {\n buildListNameQuery,\n buildNewUrl,\n decodeValue,\n encodeValue,\n checkIfRangeUpdated,\n getResponsiveFilterClassnames,\n getDisplayValue,\n calculateStep,\n calculateMinMax,\n getIntersectedProp,\n getRangeValue,\n getSelectOptions,\n isDeviceDesktop,\n getFilterValues,\n getFilterValueFromQuery,\n getFilterRangesAndCheckboxesValues,\n getUpdatedFilterBy,\n buildUrlQuery\n};\n"],"mappings":"AAAA,OAAOA,kBAAkB,MAAM,yBAAyB;AACxD,OAAOC,WAAW,MAAM,iBAAiB;AACzC,SAASC,WAAW,EAAEC,WAAW,QAAQ,iBAAiB;AAC1D,OAAOC,mBAAmB,MAAM,0BAA0B;AAC1D,OAAOC,6BAA6B,MAAM,oCAAoC;AAC9E,OAAOC,eAAe,MAAM,qBAAqB;AACjD,OAAOC,aAAa,MAAM,kBAAkB;AAC5C,OAAOC,eAAe,MAAM,qBAAqB;AACjD,OAAOC,kBAAkB,MAAM,wBAAwB;AACvD,OAAOC,aAAa,MAAM,mBAAmB;AAC7C,OAAOC,gBAAgB,MAAM,sBAAsB;AACnD,OAAOC,eAAe,MAAM,qBAAqB;AACjD,OAAOC,eAAe,MAAM,qBAAqB;AACjD,OAAOC,uBAAuB,MAAM,+BAA+B;AACnE,OAAOC,kCAAkC,MAAM,2CAA2C;AAC1F,OAAOC,kBAAkB,MAAM,yBAAyB;AACxD,OAAOC,aAAa,MAAM,mBAAmB;AAE7C,SACEjB,kBAAkB,EAClBC,WAAW,EACXC,WAAW,EACXC,WAAW,EACXC,mBAAmB,EACnBC,6BAA6B,EAC7BC,eAAe,EACfC,aAAa,EACbC,eAAe,EACfC,kBAAkB,EAClBC,aAAa,EACbC,gBAAgB,EAChBC,eAAe,EACfC,eAAe,EACfC,uBAAuB,EACvBC,kCAAkC,EAClCC,kBAAkB,EAClBC,aAAa","ignoreList":[]}
@@ -47,7 +47,8 @@ const Video = _ref => {
47
47
  });
48
48
  return /*#__PURE__*/React.createElement(Wrapper, {
49
49
  className: "video",
50
- modifiers: modifiers
50
+ modifiers: modifiers,
51
+ key: url
51
52
  }, playInModal ? /*#__PURE__*/React.createElement(VideoModal, _extends({
52
53
  url: url,
53
54
  modifier: modifier,
@@ -1 +1 @@
1
- {"version":3,"file":"Video.js","names":["React","PropTypes","useGetImages","VideoRender","VideoModal","Wrapper","getClassModifiers","shouldShowProperty","Video","_ref","url","modifier","autoplay","isCaptionDisplayed","caption","credits","areVideoCreditsDisplayed","provider","playInModal","imageId","props","_objectWithoutProperties","_excluded","data","getFile","imageData","loading","modifiers","toLowerCase","_objectSpread","shouldDisplayCaption","isDisplayed","value","shouldDisplayCredits","createElement","className","_extends","propTypes","string","bool","defaultProps"],"sources":["../../../src/components/Video/Video.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport useGetImages from '../../hooks/use-get-images';\nimport VideoRender from './VideoRender';\nimport VideoModal from './VideoModal';\nimport Wrapper from '../Wrapper';\nimport getClassModifiers from '../../utils/get-class-modifiers';\nimport { shouldShowProperty } from '../../helpers';\n\nconst Video = ({\n url,\n modifier,\n autoplay,\n isCaptionDisplayed,\n caption,\n credits,\n areVideoCreditsDisplayed,\n provider,\n playInModal,\n imageId,\n ...props\n}) => {\n const {\n data: { getFile: imageData },\n loading\n } = useGetImages(imageId);\n\n if (loading) return '';\n if (!url) return null;\n\n const modifiers = `video--${provider.toLowerCase()} ${getClassModifiers('video', {\n modifier,\n ...props\n })}`;\n\n const shouldDisplayCaption = shouldShowProperty({\n isDisplayed: isCaptionDisplayed,\n value: caption\n });\n const shouldDisplayCredits = shouldShowProperty({\n isDisplayed: areVideoCreditsDisplayed,\n value: credits\n });\n\n return (\n <Wrapper className=\"video\" modifiers={modifiers}>\n {playInModal ? (\n <VideoModal\n url={url}\n modifier={modifier}\n autoplay={autoplay}\n provider={provider}\n imageData={imageData}\n {...props}\n />\n ) : (\n <VideoRender\n url={url}\n modifier={modifier}\n autoplay={autoplay}\n provider={provider}\n imageData={imageData}\n {...props}\n />\n )}\n\n {(shouldDisplayCaption || shouldDisplayCredits) && (\n <div className=\"video__details\" data-testid=\"video-details\">\n {shouldDisplayCaption && <div className=\"caption\">{caption}</div>}\n {shouldDisplayCredits && <div className=\"credits\">{credits}</div>}\n </div>\n )}\n </Wrapper>\n );\n};\n\nVideo.propTypes = {\n url: PropTypes.string,\n modifier: PropTypes.string,\n caption: PropTypes.string,\n credits: PropTypes.string,\n autoplay: PropTypes.bool,\n areVideoCreditsDisplayed: PropTypes.bool,\n isCaptionDisplayed: PropTypes.bool,\n provider: PropTypes.string,\n playInModal: PropTypes.bool,\n imageId: PropTypes.string\n};\n\nVideo.defaultProps = {\n caption: '',\n credits: '',\n modifier: '',\n imageId: '',\n url: '',\n provider: 'youtube',\n autoplay: false,\n isCaptionDisplayed: false,\n areVideoCreditsDisplayed: false,\n playInModal: false\n};\n\nexport default Video;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Video.js","names":["React","PropTypes","useGetImages","VideoRender","VideoModal","Wrapper","getClassModifiers","shouldShowProperty","Video","_ref","url","modifier","autoplay","isCaptionDisplayed","caption","credits","areVideoCreditsDisplayed","provider","playInModal","imageId","props","_objectWithoutProperties","_excluded","data","getFile","imageData","loading","modifiers","toLowerCase","_objectSpread","shouldDisplayCaption","isDisplayed","value","shouldDisplayCredits","createElement","className","key","_extends","propTypes","string","bool","defaultProps"],"sources":["../../../src/components/Video/Video.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport useGetImages from '../../hooks/use-get-images';\nimport VideoRender from './VideoRender';\nimport VideoModal from './VideoModal';\nimport Wrapper from '../Wrapper';\nimport getClassModifiers from '../../utils/get-class-modifiers';\nimport { shouldShowProperty } from '../../helpers';\n\nconst Video = ({\n url,\n modifier,\n autoplay,\n isCaptionDisplayed,\n caption,\n credits,\n areVideoCreditsDisplayed,\n provider,\n playInModal,\n imageId,\n ...props\n}) => {\n const {\n data: { getFile: imageData },\n loading\n } = useGetImages(imageId);\n\n if (loading) return '';\n if (!url) return null;\n\n const modifiers = `video--${provider.toLowerCase()} ${getClassModifiers('video', {\n modifier,\n ...props\n })}`;\n\n const shouldDisplayCaption = shouldShowProperty({\n isDisplayed: isCaptionDisplayed,\n value: caption\n });\n const shouldDisplayCredits = shouldShowProperty({\n isDisplayed: areVideoCreditsDisplayed,\n value: credits\n });\n\n return (\n <Wrapper className=\"video\" modifiers={modifiers} key={url}>\n {playInModal ? (\n <VideoModal\n url={url}\n modifier={modifier}\n autoplay={autoplay}\n provider={provider}\n imageData={imageData}\n {...props}\n />\n ) : (\n <VideoRender\n url={url}\n modifier={modifier}\n autoplay={autoplay}\n provider={provider}\n imageData={imageData}\n {...props}\n />\n )}\n\n {(shouldDisplayCaption || shouldDisplayCredits) && (\n <div className=\"video__details\" data-testid=\"video-details\">\n {shouldDisplayCaption && <div className=\"caption\">{caption}</div>}\n {shouldDisplayCredits && <div className=\"credits\">{credits}</div>}\n </div>\n )}\n </Wrapper>\n );\n};\n\nVideo.propTypes = {\n url: PropTypes.string,\n modifier: PropTypes.string,\n caption: PropTypes.string,\n credits: PropTypes.string,\n autoplay: PropTypes.bool,\n areVideoCreditsDisplayed: PropTypes.bool,\n isCaptionDisplayed: PropTypes.bool,\n provider: PropTypes.string,\n playInModal: PropTypes.bool,\n imageId: PropTypes.string\n};\n\nVideo.defaultProps = {\n caption: '',\n credits: '',\n modifier: '',\n imageId: '',\n url: '',\n provider: 'youtube',\n autoplay: false,\n isCaptionDisplayed: false,\n areVideoCreditsDisplayed: false,\n playInModal: false\n};\n\nexport default Video;\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ import { createContext } from 'react';
2
+ const VideoContext = createContext({});
3
+ const VideoContextProvider = VideoContext.Provider;
4
+ const VideoContextConsumer = VideoContext.Consumer;
5
+ export { VideoContext, VideoContextProvider, VideoContextConsumer };
6
+ //# sourceMappingURL=VideoContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VideoContext.js","names":["createContext","VideoContext","VideoContextProvider","Provider","VideoContextConsumer","Consumer"],"sources":["../../../src/components/Video/VideoContext.js"],"sourcesContent":["import { createContext } from 'react';\n\nconst VideoContext = createContext({});\nconst VideoContextProvider = VideoContext.Provider;\nconst VideoContextConsumer = VideoContext.Consumer;\n\nexport { VideoContext, VideoContextProvider, VideoContextConsumer };\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,OAAO;AAErC,MAAMC,YAAY,GAAGD,aAAa,CAAC,CAAC,CAAC,CAAC;AACtC,MAAME,oBAAoB,GAAGD,YAAY,CAACE,QAAQ;AAClD,MAAMC,oBAAoB,GAAGH,YAAY,CAACI,QAAQ;AAElD,SAASJ,YAAY,EAAEC,oBAAoB,EAAEE,oBAAoB","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  import _objectDestructuringEmpty from "@babel/runtime/helpers/objectDestructuringEmpty";
2
2
  import _extends from "@babel/runtime/helpers/extends";
3
3
  import React, { useState } from 'react';
4
- import Modal from '@blaze-react/modal';
4
+ import Modal from '../ModalAdapter';
5
5
  import VideoRender from './VideoRender';
6
6
  const VideoModal = _ref => {
7
7
  let props = _extends({}, (_objectDestructuringEmpty(_ref), _ref));
@@ -1 +1 @@
1
- {"version":3,"file":"VideoModal.js","names":["React","useState","Modal","VideoRender","VideoModal","_ref","props","_extends","_objectDestructuringEmpty","displayModal","setDisplayModal","createElement","Fragment","role","onClick","placeholderOnly","autoplay","className","isFullScreen","showFooter","isSimple","onClose"],"sources":["../../../src/components/Video/VideoModal.js"],"sourcesContent":["import React, { useState } from 'react';\nimport Modal from '@blaze-react/modal';\nimport VideoRender from './VideoRender';\n\nconst VideoModal = ({ ...props }) => {\n const [displayModal, setDisplayModal] = useState(false);\n\n return (\n <>\n <div\n role=\"button\"\n aria-label=\"Open video\"\n onClick={() => {\n setDisplayModal(!displayModal);\n }}>\n <VideoRender placeholderOnly autoplay={false} {...props} />\n </div>\n {displayModal && (\n <Modal\n className=\"modal--video\"\n isFullScreen\n showFooter={false}\n isSimple\n onClose={() => setDisplayModal(!displayModal)}>\n <VideoRender {...props} placeholderOnly={false} autoplay />\n </Modal>\n )}\n </>\n );\n};\n\nexport default VideoModal;\n"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,OAAOC,KAAK,MAAM,oBAAoB;AACtC,OAAOC,WAAW,MAAM,eAAe;AAEvC,MAAMC,UAAU,GAAGC,IAAA,IAAkB;EAAA,IAAZC,KAAK,GAAAC,QAAA,MAAAC,yBAAA,CAAAH,IAAA,GAAAA,IAAA;EAC5B,MAAM,CAACI,YAAY,EAAEC,eAAe,CAAC,GAAGT,QAAQ,CAAC,KAAK,CAAC;EAEvD,oBACED,KAAA,CAAAW,aAAA,CAAAX,KAAA,CAAAY,QAAA,qBACEZ,KAAA,CAAAW,aAAA;IACEE,IAAI,EAAC,QAAQ;IACb,cAAW,YAAY;IACvBC,OAAO,EAAEA,CAAA,KAAM;MACbJ,eAAe,CAAC,CAACD,YAAY,CAAC;IAChC;EAAE,gBACFT,KAAA,CAAAW,aAAA,CAACR,WAAW,EAAAI,QAAA;IAACQ,eAAe;IAACC,QAAQ,EAAE;EAAM,GAAKV,KAAK,CAAG,CACvD,CAAC,EACLG,YAAY,iBACXT,KAAA,CAAAW,aAAA,CAACT,KAAK;IACJe,SAAS,EAAC,cAAc;IACxBC,YAAY;IACZC,UAAU,EAAE,KAAM;IAClBC,QAAQ;IACRC,OAAO,EAAEA,CAAA,KAAMX,eAAe,CAAC,CAACD,YAAY;EAAE,gBAC9CT,KAAA,CAAAW,aAAA,CAACR,WAAW,EAAAI,QAAA,KAAKD,KAAK;IAAES,eAAe,EAAE,KAAM;IAACC,QAAQ;EAAA,EAAE,CACrD,CAET,CAAC;AAEP,CAAC;AAED,eAAeZ,UAAU","ignoreList":[]}
1
+ {"version":3,"file":"VideoModal.js","names":["React","useState","Modal","VideoRender","VideoModal","_ref","props","_extends","_objectDestructuringEmpty","displayModal","setDisplayModal","createElement","Fragment","role","onClick","placeholderOnly","autoplay","className","isFullScreen","showFooter","isSimple","onClose"],"sources":["../../../src/components/Video/VideoModal.js"],"sourcesContent":["import React, { useState } from 'react';\nimport Modal from '../ModalAdapter';\nimport VideoRender from './VideoRender';\n\nconst VideoModal = ({ ...props }) => {\n const [displayModal, setDisplayModal] = useState(false);\n\n return (\n <>\n <div\n role=\"button\"\n aria-label=\"Open video\"\n onClick={() => {\n setDisplayModal(!displayModal);\n }}>\n <VideoRender placeholderOnly autoplay={false} {...props} />\n </div>\n {displayModal && (\n <Modal\n className=\"modal--video\"\n isFullScreen\n showFooter={false}\n isSimple\n onClose={() => setDisplayModal(!displayModal)}>\n <VideoRender {...props} placeholderOnly={false} autoplay />\n </Modal>\n )}\n </>\n );\n};\n\nexport default VideoModal;\n"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,OAAOC,KAAK,MAAM,iBAAiB;AACnC,OAAOC,WAAW,MAAM,eAAe;AAEvC,MAAMC,UAAU,GAAGC,IAAA,IAAkB;EAAA,IAAZC,KAAK,GAAAC,QAAA,MAAAC,yBAAA,CAAAH,IAAA,GAAAA,IAAA;EAC5B,MAAM,CAACI,YAAY,EAAEC,eAAe,CAAC,GAAGT,QAAQ,CAAC,KAAK,CAAC;EAEvD,oBACED,KAAA,CAAAW,aAAA,CAAAX,KAAA,CAAAY,QAAA,qBACEZ,KAAA,CAAAW,aAAA;IACEE,IAAI,EAAC,QAAQ;IACb,cAAW,YAAY;IACvBC,OAAO,EAAEA,CAAA,KAAM;MACbJ,eAAe,CAAC,CAACD,YAAY,CAAC;IAChC;EAAE,gBACFT,KAAA,CAAAW,aAAA,CAACR,WAAW,EAAAI,QAAA;IAACQ,eAAe;IAACC,QAAQ,EAAE;EAAM,GAAKV,KAAK,CAAG,CACvD,CAAC,EACLG,YAAY,iBACXT,KAAA,CAAAW,aAAA,CAACT,KAAK;IACJe,SAAS,EAAC,cAAc;IACxBC,YAAY;IACZC,UAAU,EAAE,KAAM;IAClBC,QAAQ;IACRC,OAAO,EAAEA,CAAA,KAAMX,eAAe,CAAC,CAACD,YAAY;EAAE,gBAC9CT,KAAA,CAAAW,aAAA,CAACR,WAAW,EAAAI,QAAA,KAAKD,KAAK;IAAES,eAAe,EAAE,KAAM;IAACC,QAAQ;EAAA,EAAE,CACrD,CAET,CAAC;AAEP,CAAC;AAED,eAAeZ,UAAU","ignoreList":[]}
@@ -1,19 +1,44 @@
1
1
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
2
  const _excluded = ["provider"];
3
- import React from 'react';
3
+ import React, { useRef } from 'react';
4
4
  import PropTypes from 'prop-types';
5
5
  import getProvider from './providers';
6
6
  import { withTitle } from '../../HOC';
7
+ import { VideoContextProvider } from './VideoContext';
8
+ import emitGtmEvent from './helpers/emit-gtm-event';
7
9
  const VideoRender = _ref => {
8
10
  let {
9
11
  provider
10
12
  } = _ref,
11
13
  props = _objectWithoutProperties(_ref, _excluded);
14
+ const ref = useRef(0);
12
15
  const Provider = getProvider(provider);
13
- return /*#__PURE__*/React.createElement(Provider, props);
16
+ const {
17
+ gtmEventName: propEventName
18
+ } = props;
19
+ const gtmEventName = propEventName || process.env.BLAZE_VIDEO_EVENT_NAME;
20
+ const emitEvent = gtmEventName ? ({
21
+ action,
22
+ videoId
23
+ }) => emitGtmEvent({
24
+ gtmEventName,
25
+ provider,
26
+ action,
27
+ videoId,
28
+ playCounter: ref
29
+ }) : null;
30
+ return /*#__PURE__*/React.createElement(VideoContextProvider, {
31
+ value: {
32
+ emitEvent
33
+ }
34
+ }, /*#__PURE__*/React.createElement(Provider, props));
14
35
  };
15
36
  VideoRender.propTypes = {
16
- provider: PropTypes.string.isRequired
37
+ provider: PropTypes.string.isRequired,
38
+ gtmEventName: PropTypes.string
39
+ };
40
+ VideoRender.defaultProps = {
41
+ gtmEventName: ''
17
42
  };
18
43
  export default withTitle(VideoRender);
19
44
  //# sourceMappingURL=VideoRender.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VideoRender.js","names":["React","PropTypes","getProvider","withTitle","VideoRender","_ref","provider","props","_objectWithoutProperties","_excluded","Provider","createElement","propTypes","string","isRequired"],"sources":["../../../src/components/Video/VideoRender.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport getProvider from './providers';\nimport { withTitle } from '../../HOC';\n\nconst VideoRender = ({ provider, ...props }) => {\n const Provider = getProvider(provider);\n return <Provider {...props} />;\n};\n\nVideoRender.propTypes = {\n provider: PropTypes.string.isRequired\n};\n\nexport default withTitle(VideoRender);\n"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,WAAW,MAAM,aAAa;AACrC,SAASC,SAAS,QAAQ,WAAW;AAErC,MAAMC,WAAW,GAAGC,IAAA,IAA4B;EAAA,IAA3B;MAAEC;IAAmB,CAAC,GAAAD,IAAA;IAAPE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EACvC,MAAMC,QAAQ,GAAGR,WAAW,CAACI,QAAQ,CAAC;EACtC,oBAAON,KAAA,CAAAW,aAAA,CAACD,QAAQ,EAAKH,KAAQ,CAAC;AAChC,CAAC;AAEDH,WAAW,CAACQ,SAAS,GAAG;EACtBN,QAAQ,EAAEL,SAAS,CAACY,MAAM,CAACC;AAC7B,CAAC;AAED,eAAeX,SAAS,CAACC,WAAW,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"VideoRender.js","names":["React","useRef","PropTypes","getProvider","withTitle","VideoContextProvider","emitGtmEvent","VideoRender","_ref","provider","props","_objectWithoutProperties","_excluded","ref","Provider","gtmEventName","propEventName","process","env","BLAZE_VIDEO_EVENT_NAME","emitEvent","action","videoId","playCounter","createElement","value","propTypes","string","isRequired","defaultProps"],"sources":["../../../src/components/Video/VideoRender.js"],"sourcesContent":["import React, { useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport getProvider from './providers';\nimport { withTitle } from '../../HOC';\nimport { VideoContextProvider } from './VideoContext';\nimport emitGtmEvent from './helpers/emit-gtm-event';\n\nconst VideoRender = ({ provider, ...props }) => {\n const ref = useRef(0);\n const Provider = getProvider(provider);\n const { gtmEventName: propEventName } = props;\n const gtmEventName = propEventName || process.env.BLAZE_VIDEO_EVENT_NAME;\n const emitEvent = gtmEventName\n ? ({ action, videoId }) =>\n emitGtmEvent({\n gtmEventName,\n provider,\n action,\n videoId,\n playCounter: ref\n })\n : null;\n\n return (\n <VideoContextProvider value={{ emitEvent }}>\n <Provider {...props} />\n </VideoContextProvider>\n );\n};\n\nVideoRender.propTypes = {\n provider: PropTypes.string.isRequired,\n gtmEventName: PropTypes.string\n};\n\nVideoRender.defaultProps = {\n gtmEventName: ''\n};\n\nexport default withTitle(VideoRender);\n"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,MAAM,QAAQ,OAAO;AACrC,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,WAAW,MAAM,aAAa;AACrC,SAASC,SAAS,QAAQ,WAAW;AACrC,SAASC,oBAAoB,QAAQ,gBAAgB;AACrD,OAAOC,YAAY,MAAM,0BAA0B;AAEnD,MAAMC,WAAW,GAAGC,IAAA,IAA4B;EAAA,IAA3B;MAAEC;IAAmB,CAAC,GAAAD,IAAA;IAAPE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EACvC,MAAMC,GAAG,GAAGZ,MAAM,CAAC,CAAC,CAAC;EACrB,MAAMa,QAAQ,GAAGX,WAAW,CAACM,QAAQ,CAAC;EACtC,MAAM;IAAEM,YAAY,EAAEC;EAAc,CAAC,GAAGN,KAAK;EAC7C,MAAMK,YAAY,GAAGC,aAAa,IAAIC,OAAO,CAACC,GAAG,CAACC,sBAAsB;EACxE,MAAMC,SAAS,GAAGL,YAAY,GAC1B,CAAC;IAAEM,MAAM;IAAEC;EAAQ,CAAC,KAClBhB,YAAY,CAAC;IACXS,YAAY;IACZN,QAAQ;IACRY,MAAM;IACNC,OAAO;IACPC,WAAW,EAAEV;EACf,CAAC,CAAC,GACJ,IAAI;EAER,oBACEb,KAAA,CAAAwB,aAAA,CAACnB,oBAAoB;IAACoB,KAAK,EAAE;MAAEL;IAAU;EAAE,gBACzCpB,KAAA,CAAAwB,aAAA,CAACV,QAAQ,EAAKJ,KAAQ,CACF,CAAC;AAE3B,CAAC;AAEDH,WAAW,CAACmB,SAAS,GAAG;EACtBjB,QAAQ,EAAEP,SAAS,CAACyB,MAAM,CAACC,UAAU;EACrCb,YAAY,EAAEb,SAAS,CAACyB;AAC1B,CAAC;AAEDpB,WAAW,CAACsB,YAAY,GAAG;EACzBd,YAAY,EAAE;AAChB,CAAC;AAED,eAAeX,SAAS,CAACG,WAAW,CAAC","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ export const EVENT_ACTIONS = {
2
+ START: 'start',
3
+ PLAYING: 'playing',
4
+ PAUSED: 'paused',
5
+ ENDED: 'ended'
6
+ };
7
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","names":["EVENT_ACTIONS","START","PLAYING","PAUSED","ENDED"],"sources":["../../../src/components/Video/constants.js"],"sourcesContent":["export const EVENT_ACTIONS = {\n START: 'start',\n PLAYING: 'playing',\n PAUSED: 'paused',\n ENDED: 'ended'\n};\n"],"mappings":"AAAA,OAAO,MAAMA,aAAa,GAAG;EAC3BC,KAAK,EAAE,OAAO;EACdC,OAAO,EAAE,SAAS;EAClBC,MAAM,EAAE,QAAQ;EAChBC,KAAK,EAAE;AACT,CAAC","ignoreList":[]}
@@ -0,0 +1,25 @@
1
+ import { EVENT_ACTIONS } from '../constants';
2
+ const emitGtmEvent = ({
3
+ gtmEventName,
4
+ provider,
5
+ action,
6
+ videoId,
7
+ playCounter
8
+ }) => {
9
+ if (!window.dataLayer || !action) return;
10
+ const actionToUse = action === EVENT_ACTIONS.PLAYING && playCounter.current < 1 ? EVENT_ACTIONS.START : action;
11
+ if (action === EVENT_ACTIONS.PLAYING) {
12
+ // eslint-disable-next-line no-param-reassign
13
+ playCounter.current += 1;
14
+ }
15
+ const playCount = playCounter.current;
16
+ window.dataLayer.push({
17
+ event: gtmEventName,
18
+ video_action: actionToUse,
19
+ video_provider: provider,
20
+ video_id: videoId,
21
+ video_play_count: playCount
22
+ });
23
+ };
24
+ export default emitGtmEvent;
25
+ //# sourceMappingURL=emit-gtm-event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emit-gtm-event.js","names":["EVENT_ACTIONS","emitGtmEvent","gtmEventName","provider","action","videoId","playCounter","window","dataLayer","actionToUse","PLAYING","current","START","playCount","push","event","video_action","video_provider","video_id","video_play_count"],"sources":["../../../../src/components/Video/helpers/emit-gtm-event.js"],"sourcesContent":["import { EVENT_ACTIONS } from '../constants';\n\nconst emitGtmEvent = ({ gtmEventName, provider, action, videoId, playCounter }) => {\n if (!window.dataLayer || !action) return;\n\n const actionToUse =\n action === EVENT_ACTIONS.PLAYING && playCounter.current < 1 ? EVENT_ACTIONS.START : action;\n\n if (action === EVENT_ACTIONS.PLAYING) {\n // eslint-disable-next-line no-param-reassign\n playCounter.current += 1;\n }\n\n const playCount = playCounter.current;\n\n window.dataLayer.push({\n event: gtmEventName,\n video_action: actionToUse,\n video_provider: provider,\n video_id: videoId,\n video_play_count: playCount\n });\n};\n\nexport default emitGtmEvent;\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,cAAc;AAE5C,MAAMC,YAAY,GAAGA,CAAC;EAAEC,YAAY;EAAEC,QAAQ;EAAEC,MAAM;EAAEC,OAAO;EAAEC;AAAY,CAAC,KAAK;EACjF,IAAI,CAACC,MAAM,CAACC,SAAS,IAAI,CAACJ,MAAM,EAAE;EAElC,MAAMK,WAAW,GACfL,MAAM,KAAKJ,aAAa,CAACU,OAAO,IAAIJ,WAAW,CAACK,OAAO,GAAG,CAAC,GAAGX,aAAa,CAACY,KAAK,GAAGR,MAAM;EAE5F,IAAIA,MAAM,KAAKJ,aAAa,CAACU,OAAO,EAAE;IACpC;IACAJ,WAAW,CAACK,OAAO,IAAI,CAAC;EAC1B;EAEA,MAAME,SAAS,GAAGP,WAAW,CAACK,OAAO;EAErCJ,MAAM,CAACC,SAAS,CAACM,IAAI,CAAC;IACpBC,KAAK,EAAEb,YAAY;IACnBc,YAAY,EAAEP,WAAW;IACzBQ,cAAc,EAAEd,QAAQ;IACxBe,QAAQ,EAAEb,OAAO;IACjBc,gBAAgB,EAAEN;EACpB,CAAC,CAAC;AACJ,CAAC;AAED,eAAeZ,YAAY","ignoreList":[]}
@@ -3,8 +3,11 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
3
  Custom controller to extend and scale the 'react-jw-player' library for future updates.
4
4
  */
5
5
 
6
+ import { EVENT_ACTIONS } from '../../constants';
6
7
  class JWPlayerController {
7
- constructor() {
8
+ constructor({
9
+ emitEvent: _emitEvent
10
+ }) {
8
11
  _defineProperty(this, "setPlayer", player => {
9
12
  this.player = player;
10
13
  });
@@ -21,11 +24,32 @@ class JWPlayerController {
21
24
  }) => {
22
25
  this.error = message;
23
26
  });
24
- _defineProperty(this, "onComplete", event => {});
25
- _defineProperty(this, "onPause", event => {});
26
- _defineProperty(this, "onPlay", event => {});
27
+ _defineProperty(this, "doEmitEvent", action => {
28
+ const {
29
+ emitEvent
30
+ } = this;
31
+ if (emitEvent) {
32
+ const {
33
+ mediaid: videoId
34
+ } = this.player.getPlaylistItem();
35
+ emitEvent({
36
+ action,
37
+ videoId
38
+ });
39
+ }
40
+ });
41
+ _defineProperty(this, "onComplete", event => {
42
+ this.doEmitEvent(EVENT_ACTIONS.ENDED);
43
+ });
44
+ _defineProperty(this, "onPause", event => {
45
+ this.doEmitEvent(EVENT_ACTIONS.PAUSED);
46
+ });
47
+ _defineProperty(this, "onPlay", event => {
48
+ this.doEmitEvent(EVENT_ACTIONS.PLAYING);
49
+ });
27
50
  this.player = null;
28
51
  this.error = null;
52
+ this.emitEvent = _emitEvent;
29
53
  }
30
54
  get events() {
31
55
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"JWPlayerController.js","names":["JWPlayerController","constructor","_defineProperty","player","setError","message","error","event","events","play","onPlay","pause","onPause","onError","complete","onComplete","setupError"],"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerController.js"],"sourcesContent":["/*\n Custom controller to extend and scale the 'react-jw-player' library for future updates.\n*/\n\nclass JWPlayerController {\n constructor() {\n this.player = null;\n this.error = null;\n }\n\n setPlayer = player => {\n this.player = player;\n };\n\n setErrorHandler = setError => {\n this.setError = setError;\n };\n\n onError = ({ message }) => {\n this.error = message;\n };\n\n onSetupError = ({ message }) => {\n this.error = message;\n };\n\n onComplete = event => {};\n\n onPause = event => {};\n\n onPlay = event => {};\n\n get events() {\n return {\n play: this.onPlay,\n pause: this.onPause,\n error: this.onError,\n complete: this.onComplete,\n setupError: this.setupError\n };\n }\n}\n\nexport default JWPlayerController;\n"],"mappings":";AAAA;AACA;AACA;;AAEA,MAAMA,kBAAkB,CAAC;EACvBC,WAAWA,CAAA,EAAG;IAAAC,eAAA,oBAKFC,MAAM,IAAI;MACpB,IAAI,CAACA,MAAM,GAAGA,MAAM;IACtB,CAAC;IAAAD,eAAA,0BAEiBE,QAAQ,IAAI;MAC5B,IAAI,CAACA,QAAQ,GAAGA,QAAQ;IAC1B,CAAC;IAAAF,eAAA,kBAES,CAAC;MAAEG;IAAQ,CAAC,KAAK;MACzB,IAAI,CAACC,KAAK,GAAGD,OAAO;IACtB,CAAC;IAAAH,eAAA,uBAEc,CAAC;MAAEG;IAAQ,CAAC,KAAK;MAC9B,IAAI,CAACC,KAAK,GAAGD,OAAO;IACtB,CAAC;IAAAH,eAAA,qBAEYK,KAAK,IAAI,CAAC,CAAC;IAAAL,eAAA,kBAEdK,KAAK,IAAI,CAAC,CAAC;IAAAL,eAAA,iBAEZK,KAAK,IAAI,CAAC,CAAC;IAxBlB,IAAI,CAACJ,MAAM,GAAG,IAAI;IAClB,IAAI,CAACG,KAAK,GAAG,IAAI;EACnB;EAwBA,IAAIE,MAAMA,CAAA,EAAG;IACX,OAAO;MACLC,IAAI,EAAE,IAAI,CAACC,MAAM;MACjBC,KAAK,EAAE,IAAI,CAACC,OAAO;MACnBN,KAAK,EAAE,IAAI,CAACO,OAAO;MACnBC,QAAQ,EAAE,IAAI,CAACC,UAAU;MACzBC,UAAU,EAAE,IAAI,CAACA;IACnB,CAAC;EACH;AACF;AAEA,eAAehB,kBAAkB","ignoreList":[]}
1
+ {"version":3,"file":"JWPlayerController.js","names":["EVENT_ACTIONS","JWPlayerController","constructor","emitEvent","_defineProperty","player","setError","message","error","action","mediaid","videoId","getPlaylistItem","event","doEmitEvent","ENDED","PAUSED","PLAYING","events","play","onPlay","pause","onPause","onError","complete","onComplete","setupError"],"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerController.js"],"sourcesContent":["/*\n Custom controller to extend and scale the 'react-jw-player' library for future updates.\n*/\n\nimport { EVENT_ACTIONS } from '../../constants';\n\nclass JWPlayerController {\n constructor({ emitEvent }) {\n this.player = null;\n this.error = null;\n this.emitEvent = emitEvent;\n }\n\n setPlayer = player => {\n this.player = player;\n };\n\n setErrorHandler = setError => {\n this.setError = setError;\n };\n\n onError = ({ message }) => {\n this.error = message;\n };\n\n onSetupError = ({ message }) => {\n this.error = message;\n };\n\n doEmitEvent = action => {\n const { emitEvent } = this;\n if (emitEvent) {\n const { mediaid: videoId } = this.player.getPlaylistItem();\n emitEvent({ action, videoId });\n }\n };\n\n onComplete = event => {\n this.doEmitEvent(EVENT_ACTIONS.ENDED);\n };\n\n onPause = event => {\n this.doEmitEvent(EVENT_ACTIONS.PAUSED);\n };\n\n onPlay = event => {\n this.doEmitEvent(EVENT_ACTIONS.PLAYING);\n };\n\n get events() {\n return {\n play: this.onPlay,\n pause: this.onPause,\n error: this.onError,\n complete: this.onComplete,\n setupError: this.setupError\n };\n }\n}\n\nexport default JWPlayerController;\n"],"mappings":";AAAA;AACA;AACA;;AAEA,SAASA,aAAa,QAAQ,iBAAiB;AAE/C,MAAMC,kBAAkB,CAAC;EACvBC,WAAWA,CAAC;IAAEC,SAAS,EAATA;EAAU,CAAC,EAAE;IAAAC,eAAA,oBAMfC,MAAM,IAAI;MACpB,IAAI,CAACA,MAAM,GAAGA,MAAM;IACtB,CAAC;IAAAD,eAAA,0BAEiBE,QAAQ,IAAI;MAC5B,IAAI,CAACA,QAAQ,GAAGA,QAAQ;IAC1B,CAAC;IAAAF,eAAA,kBAES,CAAC;MAAEG;IAAQ,CAAC,KAAK;MACzB,IAAI,CAACC,KAAK,GAAGD,OAAO;IACtB,CAAC;IAAAH,eAAA,uBAEc,CAAC;MAAEG;IAAQ,CAAC,KAAK;MAC9B,IAAI,CAACC,KAAK,GAAGD,OAAO;IACtB,CAAC;IAAAH,eAAA,sBAEaK,MAAM,IAAI;MACtB,MAAM;QAAEN;MAAU,CAAC,GAAG,IAAI;MAC1B,IAAIA,SAAS,EAAE;QACb,MAAM;UAAEO,OAAO,EAAEC;QAAQ,CAAC,GAAG,IAAI,CAACN,MAAM,CAACO,eAAe,CAAC,CAAC;QAC1DT,SAAS,CAAC;UAAEM,MAAM;UAAEE;QAAQ,CAAC,CAAC;MAChC;IACF,CAAC;IAAAP,eAAA,qBAEYS,KAAK,IAAI;MACpB,IAAI,CAACC,WAAW,CAACd,aAAa,CAACe,KAAK,CAAC;IACvC,CAAC;IAAAX,eAAA,kBAESS,KAAK,IAAI;MACjB,IAAI,CAACC,WAAW,CAACd,aAAa,CAACgB,MAAM,CAAC;IACxC,CAAC;IAAAZ,eAAA,iBAEQS,KAAK,IAAI;MAChB,IAAI,CAACC,WAAW,CAACd,aAAa,CAACiB,OAAO,CAAC;IACzC,CAAC;IAvCC,IAAI,CAACZ,MAAM,GAAG,IAAI;IAClB,IAAI,CAACG,KAAK,GAAG,IAAI;IACjB,IAAI,CAACL,SAAS,GAAGA,UAAS;EAC5B;EAsCA,IAAIe,MAAMA,CAAA,EAAG;IACX,OAAO;MACLC,IAAI,EAAE,IAAI,CAACC,MAAM;MACjBC,KAAK,EAAE,IAAI,CAACC,OAAO;MACnBd,KAAK,EAAE,IAAI,CAACe,OAAO;MACnBC,QAAQ,EAAE,IAAI,CAACC,UAAU;MACzBC,UAAU,EAAE,IAAI,CAACA;IACnB,CAAC;EACH;AACF;AAEA,eAAezB,kBAAkB","ignoreList":[]}
@@ -1,12 +1,12 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
3
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
- import React from 'react';
4
+ import React, { useContext, useRef } from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import ReactJWPlayer from 'react-jw-player';
7
7
  import { JW_PLAYER_TYPE_FILE, VIDEO_WRAPPER_CLASS_NAME } from '../../../../constants';
8
8
  import JWPlayerController from './JWPlayerController';
9
- const PlayerController = new JWPlayerController();
9
+ import { VideoContext } from '../../VideoContext';
10
10
  const JWPlayerProvider = ({
11
11
  url,
12
12
  name,
@@ -18,16 +18,22 @@ const JWPlayerProvider = ({
18
18
  imageData,
19
19
  loop: repeat
20
20
  }) => {
21
+ const {
22
+ emitEvent
23
+ } = useContext(VideoContext);
24
+ const PlayerController = useRef(new JWPlayerController({
25
+ emitEvent
26
+ }));
21
27
  const handleOnReady = () => {
22
28
  const jwPlayer = window.jwplayer(name);
23
29
  if (jwPlayer) {
24
- PlayerController.setPlayer(jwPlayer);
30
+ PlayerController.current.setPlayer(jwPlayer);
25
31
  }
26
32
  };
27
33
  const getJWPlayerProps = () => {
28
34
  const {
29
35
  events
30
- } = PlayerController;
36
+ } = PlayerController.current;
31
37
  const props = {
32
38
  customProps: {
33
39
  repeat,
@@ -1 +1 @@
1
- {"version":3,"file":"JWPlayerProvider.js","names":["React","PropTypes","ReactJWPlayer","JW_PLAYER_TYPE_FILE","VIDEO_WRAPPER_CLASS_NAME","JWPlayerController","PlayerController","JWPlayerProvider","url","name","autoplay","controls","type","urlScript","muted","imageData","loop","repeat","handleOnReady","jwPlayer","window","jwplayer","setPlayer","getJWPlayerProps","events","props","customProps","playerScript","isAutoPlay","isMuted","playerId","onReady","className","imageURL","_objectSpread","image","file","playlist","createElement","propTypes","string","isRequired","imageId","bool","object","defaultProps"],"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerProvider.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ReactJWPlayer from 'react-jw-player';\nimport { JW_PLAYER_TYPE_FILE, VIDEO_WRAPPER_CLASS_NAME } from '../../../../constants';\nimport JWPlayerController from './JWPlayerController';\n\nconst PlayerController = new JWPlayerController();\n\nconst JWPlayerProvider = ({\n url,\n name,\n autoplay,\n controls,\n type,\n urlScript,\n muted,\n imageData,\n loop: repeat\n}) => {\n const handleOnReady = () => {\n const jwPlayer = window.jwplayer(name);\n if (jwPlayer) {\n PlayerController.setPlayer(jwPlayer);\n }\n };\n\n const getJWPlayerProps = () => {\n const { events } = PlayerController;\n\n const props = {\n customProps: { repeat, controls, events },\n playerScript: urlScript,\n isAutoPlay: autoplay,\n isMuted: muted,\n playerId: name,\n onReady: handleOnReady,\n className: VIDEO_WRAPPER_CLASS_NAME\n };\n\n if (type === JW_PLAYER_TYPE_FILE) {\n const { url: imageURL = '' } = imageData;\n return { ...props, image: imageURL, file: url };\n }\n\n return { ...props, playlist: url };\n };\n\n return <ReactJWPlayer {...getJWPlayerProps()} />;\n};\n\nJWPlayerProvider.propTypes = {\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n urlScript: PropTypes.string.isRequired,\n imageId: PropTypes.string,\n autoplay: PropTypes.bool,\n loop: PropTypes.bool,\n controls: PropTypes.bool,\n muted: PropTypes.bool,\n type: PropTypes.string,\n imageData: PropTypes.object\n};\n\nJWPlayerProvider.defaultProps = {\n autoplay: false,\n loop: false,\n controls: true,\n muted: false,\n type: 'playlist',\n imageId: null,\n imageData: {}\n};\n\nexport default JWPlayerProvider;\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,SAASC,mBAAmB,EAAEC,wBAAwB,QAAQ,uBAAuB;AACrF,OAAOC,kBAAkB,MAAM,sBAAsB;AAErD,MAAMC,gBAAgB,GAAG,IAAID,kBAAkB,CAAC,CAAC;AAEjD,MAAME,gBAAgB,GAAGA,CAAC;EACxBC,GAAG;EACHC,IAAI;EACJC,QAAQ;EACRC,QAAQ;EACRC,IAAI;EACJC,SAAS;EACTC,KAAK;EACLC,SAAS;EACTC,IAAI,EAAEC;AACR,CAAC,KAAK;EACJ,MAAMC,aAAa,GAAGA,CAAA,KAAM;IAC1B,MAAMC,QAAQ,GAAGC,MAAM,CAACC,QAAQ,CAACZ,IAAI,CAAC;IACtC,IAAIU,QAAQ,EAAE;MACZb,gBAAgB,CAACgB,SAAS,CAACH,QAAQ,CAAC;IACtC;EACF,CAAC;EAED,MAAMI,gBAAgB,GAAGA,CAAA,KAAM;IAC7B,MAAM;MAAEC;IAAO,CAAC,GAAGlB,gBAAgB;IAEnC,MAAMmB,KAAK,GAAG;MACZC,WAAW,EAAE;QAAET,MAAM;QAAEN,QAAQ;QAAEa;MAAO,CAAC;MACzCG,YAAY,EAAEd,SAAS;MACvBe,UAAU,EAAElB,QAAQ;MACpBmB,OAAO,EAAEf,KAAK;MACdgB,QAAQ,EAAErB,IAAI;MACdsB,OAAO,EAAEb,aAAa;MACtBc,SAAS,EAAE5B;IACb,CAAC;IAED,IAAIQ,IAAI,KAAKT,mBAAmB,EAAE;MAChC,MAAM;QAAEK,GAAG,EAAEyB,QAAQ,GAAG;MAAG,CAAC,GAAGlB,SAAS;MACxC,OAAAmB,aAAA,CAAAA,aAAA,KAAYT,KAAK;QAAEU,KAAK,EAAEF,QAAQ;QAAEG,IAAI,EAAE5B;MAAG;IAC/C;IAEA,OAAA0B,aAAA,CAAAA,aAAA,KAAYT,KAAK;MAAEY,QAAQ,EAAE7B;IAAG;EAClC,CAAC;EAED,oBAAOR,KAAA,CAAAsC,aAAA,CAACpC,aAAa,EAAKqB,gBAAgB,CAAC,CAAI,CAAC;AAClD,CAAC;AAEDhB,gBAAgB,CAACgC,SAAS,GAAG;EAC3B/B,GAAG,EAAEP,SAAS,CAACuC,MAAM,CAACC,UAAU;EAChChC,IAAI,EAAER,SAAS,CAACuC,MAAM,CAACC,UAAU;EACjC5B,SAAS,EAAEZ,SAAS,CAACuC,MAAM,CAACC,UAAU;EACtCC,OAAO,EAAEzC,SAAS,CAACuC,MAAM;EACzB9B,QAAQ,EAAET,SAAS,CAAC0C,IAAI;EACxB3B,IAAI,EAAEf,SAAS,CAAC0C,IAAI;EACpBhC,QAAQ,EAAEV,SAAS,CAAC0C,IAAI;EACxB7B,KAAK,EAAEb,SAAS,CAAC0C,IAAI;EACrB/B,IAAI,EAAEX,SAAS,CAACuC,MAAM;EACtBzB,SAAS,EAAEd,SAAS,CAAC2C;AACvB,CAAC;AAEDrC,gBAAgB,CAACsC,YAAY,GAAG;EAC9BnC,QAAQ,EAAE,KAAK;EACfM,IAAI,EAAE,KAAK;EACXL,QAAQ,EAAE,IAAI;EACdG,KAAK,EAAE,KAAK;EACZF,IAAI,EAAE,UAAU;EAChB8B,OAAO,EAAE,IAAI;EACb3B,SAAS,EAAE,CAAC;AACd,CAAC;AAED,eAAeR,gBAAgB","ignoreList":[]}
1
+ {"version":3,"file":"JWPlayerProvider.js","names":["React","useContext","useRef","PropTypes","ReactJWPlayer","JW_PLAYER_TYPE_FILE","VIDEO_WRAPPER_CLASS_NAME","JWPlayerController","VideoContext","JWPlayerProvider","url","name","autoplay","controls","type","urlScript","muted","imageData","loop","repeat","emitEvent","PlayerController","handleOnReady","jwPlayer","window","jwplayer","current","setPlayer","getJWPlayerProps","events","props","customProps","playerScript","isAutoPlay","isMuted","playerId","onReady","className","imageURL","_objectSpread","image","file","playlist","createElement","propTypes","string","isRequired","imageId","bool","object","defaultProps"],"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerProvider.js"],"sourcesContent":["import React, { useContext, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactJWPlayer from 'react-jw-player';\nimport { JW_PLAYER_TYPE_FILE, VIDEO_WRAPPER_CLASS_NAME } from '../../../../constants';\nimport JWPlayerController from './JWPlayerController';\nimport { VideoContext } from '../../VideoContext';\n\nconst JWPlayerProvider = ({\n url,\n name,\n autoplay,\n controls,\n type,\n urlScript,\n muted,\n imageData,\n loop: repeat\n}) => {\n const { emitEvent } = useContext(VideoContext);\n const PlayerController = useRef(new JWPlayerController({ emitEvent }));\n\n const handleOnReady = () => {\n const jwPlayer = window.jwplayer(name);\n if (jwPlayer) {\n PlayerController.current.setPlayer(jwPlayer);\n }\n };\n\n const getJWPlayerProps = () => {\n const { events } = PlayerController.current;\n\n const props = {\n customProps: { repeat, controls, events },\n playerScript: urlScript,\n isAutoPlay: autoplay,\n isMuted: muted,\n playerId: name,\n onReady: handleOnReady,\n className: VIDEO_WRAPPER_CLASS_NAME\n };\n\n if (type === JW_PLAYER_TYPE_FILE) {\n const { url: imageURL = '' } = imageData;\n return { ...props, image: imageURL, file: url };\n }\n\n return { ...props, playlist: url };\n };\n\n return <ReactJWPlayer {...getJWPlayerProps()} />;\n};\n\nJWPlayerProvider.propTypes = {\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n urlScript: PropTypes.string.isRequired,\n imageId: PropTypes.string,\n autoplay: PropTypes.bool,\n loop: PropTypes.bool,\n controls: PropTypes.bool,\n muted: PropTypes.bool,\n type: PropTypes.string,\n imageData: PropTypes.object\n};\n\nJWPlayerProvider.defaultProps = {\n autoplay: false,\n loop: false,\n controls: true,\n muted: false,\n type: 'playlist',\n imageId: null,\n imageData: {}\n};\n\nexport default JWPlayerProvider;\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,MAAM,QAAQ,OAAO;AACjD,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,SAASC,mBAAmB,EAAEC,wBAAwB,QAAQ,uBAAuB;AACrF,OAAOC,kBAAkB,MAAM,sBAAsB;AACrD,SAASC,YAAY,QAAQ,oBAAoB;AAEjD,MAAMC,gBAAgB,GAAGA,CAAC;EACxBC,GAAG;EACHC,IAAI;EACJC,QAAQ;EACRC,QAAQ;EACRC,IAAI;EACJC,SAAS;EACTC,KAAK;EACLC,SAAS;EACTC,IAAI,EAAEC;AACR,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAU,CAAC,GAAGnB,UAAU,CAACO,YAAY,CAAC;EAC9C,MAAMa,gBAAgB,GAAGnB,MAAM,CAAC,IAAIK,kBAAkB,CAAC;IAAEa;EAAU,CAAC,CAAC,CAAC;EAEtE,MAAME,aAAa,GAAGA,CAAA,KAAM;IAC1B,MAAMC,QAAQ,GAAGC,MAAM,CAACC,QAAQ,CAACd,IAAI,CAAC;IACtC,IAAIY,QAAQ,EAAE;MACZF,gBAAgB,CAACK,OAAO,CAACC,SAAS,CAACJ,QAAQ,CAAC;IAC9C;EACF,CAAC;EAED,MAAMK,gBAAgB,GAAGA,CAAA,KAAM;IAC7B,MAAM;MAAEC;IAAO,CAAC,GAAGR,gBAAgB,CAACK,OAAO;IAE3C,MAAMI,KAAK,GAAG;MACZC,WAAW,EAAE;QAAEZ,MAAM;QAAEN,QAAQ;QAAEgB;MAAO,CAAC;MACzCG,YAAY,EAAEjB,SAAS;MACvBkB,UAAU,EAAErB,QAAQ;MACpBsB,OAAO,EAAElB,KAAK;MACdmB,QAAQ,EAAExB,IAAI;MACdyB,OAAO,EAAEd,aAAa;MACtBe,SAAS,EAAE/B;IACb,CAAC;IAED,IAAIQ,IAAI,KAAKT,mBAAmB,EAAE;MAChC,MAAM;QAAEK,GAAG,EAAE4B,QAAQ,GAAG;MAAG,CAAC,GAAGrB,SAAS;MACxC,OAAAsB,aAAA,CAAAA,aAAA,KAAYT,KAAK;QAAEU,KAAK,EAAEF,QAAQ;QAAEG,IAAI,EAAE/B;MAAG;IAC/C;IAEA,OAAA6B,aAAA,CAAAA,aAAA,KAAYT,KAAK;MAAEY,QAAQ,EAAEhC;IAAG;EAClC,CAAC;EAED,oBAAOV,KAAA,CAAA2C,aAAA,CAACvC,aAAa,EAAKwB,gBAAgB,CAAC,CAAI,CAAC;AAClD,CAAC;AAEDnB,gBAAgB,CAACmC,SAAS,GAAG;EAC3BlC,GAAG,EAAEP,SAAS,CAAC0C,MAAM,CAACC,UAAU;EAChCnC,IAAI,EAAER,SAAS,CAAC0C,MAAM,CAACC,UAAU;EACjC/B,SAAS,EAAEZ,SAAS,CAAC0C,MAAM,CAACC,UAAU;EACtCC,OAAO,EAAE5C,SAAS,CAAC0C,MAAM;EACzBjC,QAAQ,EAAET,SAAS,CAAC6C,IAAI;EACxB9B,IAAI,EAAEf,SAAS,CAAC6C,IAAI;EACpBnC,QAAQ,EAAEV,SAAS,CAAC6C,IAAI;EACxBhC,KAAK,EAAEb,SAAS,CAAC6C,IAAI;EACrBlC,IAAI,EAAEX,SAAS,CAAC0C,MAAM;EACtB5B,SAAS,EAAEd,SAAS,CAAC8C;AACvB,CAAC;AAEDxC,gBAAgB,CAACyC,YAAY,GAAG;EAC9BtC,QAAQ,EAAE,KAAK;EACfM,IAAI,EAAE,KAAK;EACXL,QAAQ,EAAE,IAAI;EACdG,KAAK,EAAE,KAAK;EACZF,IAAI,EAAE,UAAU;EAChBiC,OAAO,EAAE,IAAI;EACb9B,SAAS,EAAE,CAAC;AACd,CAAC;AAED,eAAeR,gBAAgB","ignoreList":[]}