@blaze-cms/react-page-builder 0.146.0-alpha.0 → 0.146.0-alpha.13

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 (287) hide show
  1. package/CHANGELOG.md +86 -0
  2. package/lib/components/BackToTop/BackToTop.js +8 -13
  3. package/lib/components/BackToTop/BackToTop.js.map +1 -1
  4. package/lib/components/Card/Card.js +19 -12
  5. package/lib/components/Card/Card.js.map +1 -1
  6. package/lib/components/Card/CardsContainer.js +8 -4
  7. package/lib/components/Card/CardsContainer.js.map +1 -1
  8. package/lib/components/Card/CardsFactory.js +37 -7
  9. package/lib/components/Card/CardsFactory.js.map +1 -1
  10. package/lib/components/Card/CardsRender.js +8 -4
  11. package/lib/components/Card/CardsRender.js.map +1 -1
  12. package/lib/components/Card/helpers/index.js +6 -6
  13. package/lib/components/Card/helpers/index.js.map +1 -1
  14. package/lib/components/Carousel/CarouselImage/CarouselImage.js +3 -1
  15. package/lib/components/Carousel/CarouselImage/CarouselImage.js.map +1 -1
  16. package/lib/components/Carousel/CarouselImage/constants.js +9 -0
  17. package/lib/components/Carousel/CarouselImage/constants.js.map +1 -0
  18. package/lib/components/CarouselWrapper/DefaultCarousel.js +2 -0
  19. package/lib/components/CarouselWrapper/DefaultCarousel.js.map +1 -1
  20. package/lib/components/ContentGroup/ContentGroupTabs.js +1 -2
  21. package/lib/components/ContentGroup/ContentGroupTabs.js.map +1 -1
  22. package/lib/components/Image/GlobalLightbox/GlobalLightbox.js +3 -3
  23. package/lib/components/Image/GlobalLightbox/GlobalLightbox.js.map +1 -1
  24. package/lib/components/Image/GlobalLightbox/NavButton.js +6 -3
  25. package/lib/components/Image/GlobalLightbox/NavButton.js.map +1 -1
  26. package/lib/components/Image/Image.js +1 -0
  27. package/lib/components/Image/Image.js.map +1 -1
  28. package/lib/components/Image/Lightbox/Lightbox.js +2 -2
  29. package/lib/components/Image/Lightbox/Lightbox.js.map +1 -1
  30. package/lib/components/ItemList/ItemListNew/ItemListNew.js +1 -2
  31. package/lib/components/ItemList/ItemListNew/ItemListNew.js.map +1 -1
  32. package/lib/components/List/ListRender.js.map +1 -1
  33. package/lib/components/List/components/Cards/CardsRender.js.map +1 -1
  34. package/lib/components/List/components/Full/FullRender.js +2 -2
  35. package/lib/components/List/components/Full/FullRender.js.map +1 -1
  36. package/lib/components/Menu/Menu.js +1 -1
  37. package/lib/components/Menu/Menu.js.map +1 -1
  38. package/lib/components/MenuItem/MenuEntitiesItem.js +203 -0
  39. package/lib/components/MenuItem/MenuEntitiesItem.js.map +1 -0
  40. package/lib/components/MenuItem/MenuItem.js +25 -71
  41. package/lib/components/MenuItem/MenuItem.js.map +1 -1
  42. package/lib/components/MenuItem/MenuItemRender.js +104 -0
  43. package/lib/components/MenuItem/MenuItemRender.js.map +1 -0
  44. package/lib/components/MenuItem/helpers/index.js +15 -0
  45. package/lib/components/MenuItem/helpers/index.js.map +1 -0
  46. package/lib/components/MenuItem/helpers/inject-helper-into-template.js +17 -0
  47. package/lib/components/MenuItem/helpers/inject-helper-into-template.js.map +1 -0
  48. package/lib/components/Modal/Modal.js +2 -2
  49. package/lib/components/Modal/Modal.js.map +1 -1
  50. package/lib/components/ModalAdapter/ModalAdapter.js +21 -0
  51. package/lib/components/ModalAdapter/ModalAdapter.js.map +1 -0
  52. package/lib/components/ModalAdapter/index.js +11 -0
  53. package/lib/components/ModalAdapter/index.js.map +1 -0
  54. package/lib/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
  55. package/lib/components/SearchFilter/SearchFilter/MobileFormToolbar.js +1 -1
  56. package/lib/components/SearchFilter/SearchFilter/MobileFormToolbar.js.map +1 -1
  57. package/lib/components/SearchFilter/SearchFilter/ResetDesktopForm.js +3 -3
  58. package/lib/components/SearchFilter/SearchFilter/ResetDesktopForm.js.map +1 -1
  59. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js +26 -7
  60. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  61. package/lib/components/SearchFilter/SearchFilterContainer.js +23 -28
  62. package/lib/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  63. package/lib/components/SearchFilter/components/Checkbox.js +1 -1
  64. package/lib/components/SearchFilter/components/Checkbox.js.map +1 -1
  65. package/lib/components/SearchFilter/components/Select.js.map +1 -1
  66. package/lib/components/SearchFilter/components/TextSearch.js +1 -0
  67. package/lib/components/SearchFilter/components/TextSearch.js.map +1 -1
  68. package/lib/components/SearchFilter/helpers/build-list-name-query.js +31 -0
  69. package/lib/components/SearchFilter/helpers/build-list-name-query.js.map +1 -0
  70. package/lib/components/SearchFilter/helpers/decode-encode.js.map +1 -1
  71. package/lib/components/SearchFilter/helpers/index.js +7 -0
  72. package/lib/components/SearchFilter/helpers/index.js.map +1 -1
  73. package/lib/components/Video/VideoModal.js +2 -2
  74. package/lib/components/Video/VideoModal.js.map +1 -1
  75. package/lib/components/Video/providers/Vimeo/VimeoProvider.js +0 -1
  76. package/lib/components/Video/providers/Vimeo/VimeoProvider.js.map +1 -1
  77. package/lib/helpers/build-filters-query.js +1 -2
  78. package/lib/helpers/build-filters-query.js.map +1 -1
  79. package/lib/{components/Card/helpers → helpers}/filter-query-setup.js +10 -7
  80. package/lib/helpers/filter-query-setup.js.map +1 -0
  81. package/lib/{components/Card/helpers → helpers}/filters-setup.js +8 -5
  82. package/lib/helpers/filters-setup.js.map +1 -0
  83. package/lib/helpers/get-updated-items-to-display.js.map +1 -0
  84. package/lib/helpers/get-updated-sort-properties.js.map +1 -0
  85. package/lib/helpers/index.js +42 -0
  86. package/lib/helpers/index.js.map +1 -1
  87. package/lib/helpers/should-return.js.map +1 -0
  88. package/lib/{components/Card/helpers → helpers}/should-skip-single-query.js +1 -1
  89. package/lib/helpers/should-skip-single-query.js.map +1 -0
  90. package/lib/hooks/index.js +14 -0
  91. package/lib/hooks/index.js.map +1 -1
  92. package/lib/hooks/use-filter-aggregation-values.js +54 -0
  93. package/lib/hooks/use-filter-aggregation-values.js.map +1 -0
  94. package/lib/hooks/use-portal.js +30 -0
  95. package/lib/hooks/use-portal.js.map +1 -0
  96. package/lib-es/components/BackToTop/BackToTop.js +11 -17
  97. package/lib-es/components/BackToTop/BackToTop.js.map +1 -1
  98. package/lib-es/components/Card/Card.js +19 -12
  99. package/lib-es/components/Card/Card.js.map +1 -1
  100. package/lib-es/components/Card/CardsContainer.js +9 -5
  101. package/lib-es/components/Card/CardsContainer.js.map +1 -1
  102. package/lib-es/components/Card/CardsFactory.js +40 -9
  103. package/lib-es/components/Card/CardsFactory.js.map +1 -1
  104. package/lib-es/components/Card/CardsRender.js +9 -5
  105. package/lib-es/components/Card/CardsRender.js.map +1 -1
  106. package/lib-es/components/Card/helpers/index.js +6 -6
  107. package/lib-es/components/Card/helpers/index.js.map +1 -1
  108. package/lib-es/components/Carousel/CarouselImage/CarouselImage.js +3 -1
  109. package/lib-es/components/Carousel/CarouselImage/CarouselImage.js.map +1 -1
  110. package/lib-es/components/Carousel/CarouselImage/constants.js +2 -0
  111. package/lib-es/components/Carousel/CarouselImage/constants.js.map +1 -0
  112. package/lib-es/components/CarouselWrapper/DefaultCarousel.js +2 -0
  113. package/lib-es/components/CarouselWrapper/DefaultCarousel.js.map +1 -1
  114. package/lib-es/components/ContentGroup/ContentGroupTabs.js +1 -2
  115. package/lib-es/components/ContentGroup/ContentGroupTabs.js.map +1 -1
  116. package/lib-es/components/Image/GlobalLightbox/GlobalLightbox.js +3 -3
  117. package/lib-es/components/Image/GlobalLightbox/GlobalLightbox.js.map +1 -1
  118. package/lib-es/components/Image/GlobalLightbox/NavButton.js +6 -3
  119. package/lib-es/components/Image/GlobalLightbox/NavButton.js.map +1 -1
  120. package/lib-es/components/Image/Image.js +1 -0
  121. package/lib-es/components/Image/Image.js.map +1 -1
  122. package/lib-es/components/Image/Lightbox/Lightbox.js +1 -1
  123. package/lib-es/components/Image/Lightbox/Lightbox.js.map +1 -1
  124. package/lib-es/components/ItemList/ItemListNew/ItemListNew.js +1 -2
  125. package/lib-es/components/ItemList/ItemListNew/ItemListNew.js.map +1 -1
  126. package/lib-es/components/List/ListRender.js.map +1 -1
  127. package/lib-es/components/List/components/Cards/CardsRender.js.map +1 -1
  128. package/lib-es/components/List/components/Full/FullRender.js +2 -2
  129. package/lib-es/components/List/components/Full/FullRender.js.map +1 -1
  130. package/lib-es/components/Menu/Menu.js +1 -1
  131. package/lib-es/components/Menu/Menu.js.map +1 -1
  132. package/lib-es/components/MenuItem/MenuEntitiesItem.js +177 -0
  133. package/lib-es/components/MenuItem/MenuEntitiesItem.js.map +1 -0
  134. package/lib-es/components/MenuItem/MenuItem.js +28 -60
  135. package/lib-es/components/MenuItem/MenuItem.js.map +1 -1
  136. package/lib-es/components/MenuItem/MenuItemRender.js +84 -0
  137. package/lib-es/components/MenuItem/MenuItemRender.js.map +1 -0
  138. package/lib-es/components/MenuItem/helpers/index.js +3 -0
  139. package/lib-es/components/MenuItem/helpers/index.js.map +1 -0
  140. package/lib-es/components/MenuItem/helpers/inject-helper-into-template.js +8 -0
  141. package/lib-es/components/MenuItem/helpers/inject-helper-into-template.js.map +1 -0
  142. package/lib-es/components/Modal/Modal.js +1 -1
  143. package/lib-es/components/Modal/Modal.js.map +1 -1
  144. package/lib-es/components/ModalAdapter/ModalAdapter.js +13 -0
  145. package/lib-es/components/ModalAdapter/ModalAdapter.js.map +1 -0
  146. package/lib-es/components/ModalAdapter/index.js +3 -0
  147. package/lib-es/components/ModalAdapter/index.js.map +1 -0
  148. package/lib-es/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
  149. package/lib-es/components/SearchFilter/SearchFilter/MobileFormToolbar.js +1 -1
  150. package/lib-es/components/SearchFilter/SearchFilter/MobileFormToolbar.js.map +1 -1
  151. package/lib-es/components/SearchFilter/SearchFilter/ResetDesktopForm.js +3 -3
  152. package/lib-es/components/SearchFilter/SearchFilter/ResetDesktopForm.js.map +1 -1
  153. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js +19 -7
  154. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  155. package/lib-es/components/SearchFilter/SearchFilterContainer.js +23 -20
  156. package/lib-es/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  157. package/lib-es/components/SearchFilter/components/Checkbox.js +1 -1
  158. package/lib-es/components/SearchFilter/components/Checkbox.js.map +1 -1
  159. package/lib-es/components/SearchFilter/components/Select.js.map +1 -1
  160. package/lib-es/components/SearchFilter/components/TextSearch.js +1 -0
  161. package/lib-es/components/SearchFilter/components/TextSearch.js.map +1 -1
  162. package/lib-es/components/SearchFilter/helpers/build-list-name-query.js +15 -0
  163. package/lib-es/components/SearchFilter/helpers/build-list-name-query.js.map +1 -0
  164. package/lib-es/components/SearchFilter/helpers/decode-encode.js.map +1 -1
  165. package/lib-es/components/SearchFilter/helpers/index.js +2 -1
  166. package/lib-es/components/SearchFilter/helpers/index.js.map +1 -1
  167. package/lib-es/components/Video/VideoModal.js +1 -1
  168. package/lib-es/components/Video/VideoModal.js.map +1 -1
  169. package/lib-es/components/Video/providers/Vimeo/VimeoProvider.js +0 -1
  170. package/lib-es/components/Video/providers/Vimeo/VimeoProvider.js.map +1 -1
  171. package/lib-es/helpers/build-filters-query.js +1 -2
  172. package/lib-es/helpers/build-filters-query.js.map +1 -1
  173. package/lib-es/{components/Card/helpers → helpers}/filter-query-setup.js +5 -3
  174. package/lib-es/helpers/filter-query-setup.js.map +1 -0
  175. package/lib-es/{components/Card/helpers → helpers}/filters-setup.js +4 -2
  176. package/lib-es/helpers/filters-setup.js.map +1 -0
  177. package/lib-es/helpers/get-updated-items-to-display.js.map +1 -0
  178. package/lib-es/helpers/get-updated-sort-properties.js.map +1 -0
  179. package/lib-es/helpers/index.js +6 -0
  180. package/lib-es/helpers/index.js.map +1 -1
  181. package/lib-es/helpers/should-return.js.map +1 -0
  182. package/lib-es/{components/Card/helpers → helpers}/should-skip-single-query.js +1 -1
  183. package/lib-es/helpers/should-skip-single-query.js.map +1 -0
  184. package/lib-es/hooks/index.js +2 -0
  185. package/lib-es/hooks/index.js.map +1 -1
  186. package/lib-es/hooks/use-filter-aggregation-values.js +31 -0
  187. package/lib-es/hooks/use-filter-aggregation-values.js.map +1 -0
  188. package/lib-es/hooks/use-portal.js +14 -0
  189. package/lib-es/hooks/use-portal.js.map +1 -0
  190. package/package.json +5 -5
  191. package/src/components/BackToTop/BackToTop.js +6 -11
  192. package/src/components/Card/Card.js +29 -19
  193. package/src/components/Card/CardsContainer.js +7 -3
  194. package/src/components/Card/CardsFactory.js +34 -6
  195. package/src/components/Card/CardsRender.js +6 -2
  196. package/src/components/Card/helpers/index.js +6 -6
  197. package/src/components/Carousel/CarouselImage/CarouselImage.js +3 -1
  198. package/src/components/Carousel/CarouselImage/constants.js +1 -0
  199. package/src/components/CarouselWrapper/DefaultCarousel.js +2 -0
  200. package/src/components/ContentGroup/ContentGroupTabs.js +1 -3
  201. package/src/components/Image/GlobalLightbox/GlobalLightbox.js +3 -3
  202. package/src/components/Image/GlobalLightbox/NavButton.js +5 -3
  203. package/src/components/Image/Image.js +1 -0
  204. package/src/components/Image/Lightbox/Lightbox.js +1 -1
  205. package/src/components/ItemList/ItemListNew/ItemListNew.js +1 -4
  206. package/src/components/List/ListRender.js +0 -1
  207. package/src/components/List/components/Cards/CardsRender.js +2 -0
  208. package/src/components/List/components/Full/FullRender.js +2 -1
  209. package/src/components/Menu/Menu.js +1 -1
  210. package/src/components/MenuItem/MenuEntitiesItem.js +202 -0
  211. package/src/components/MenuItem/MenuItem.js +15 -65
  212. package/src/components/MenuItem/MenuItemRender.js +92 -0
  213. package/src/components/MenuItem/helpers/index.js +3 -0
  214. package/src/components/MenuItem/helpers/inject-helper-into-template.js +11 -0
  215. package/src/components/Modal/Modal.js +1 -1
  216. package/src/components/ModalAdapter/ModalAdapter.js +12 -0
  217. package/src/components/ModalAdapter/index.js +3 -0
  218. package/src/components/SearchFilter/SearchFilter/FiltersList.js +3 -0
  219. package/src/components/SearchFilter/SearchFilter/MobileFormToolbar.js +1 -1
  220. package/src/components/SearchFilter/SearchFilter/ResetDesktopForm.js +3 -2
  221. package/src/components/SearchFilter/SearchFilter/SearchFilter.js +26 -10
  222. package/src/components/SearchFilter/SearchFilterContainer.js +21 -22
  223. package/src/components/SearchFilter/components/Checkbox.js +3 -1
  224. package/src/components/SearchFilter/components/Select.js +2 -0
  225. package/src/components/SearchFilter/components/TextSearch.js +1 -0
  226. package/src/components/SearchFilter/helpers/build-list-name-query.js +18 -0
  227. package/src/components/SearchFilter/helpers/decode-encode.js +0 -1
  228. package/src/components/SearchFilter/helpers/index.js +2 -0
  229. package/src/components/Video/VideoModal.js +1 -1
  230. package/src/components/Video/providers/Vimeo/VimeoProvider.js +0 -1
  231. package/src/helpers/build-filters-query.js +1 -3
  232. package/src/{components/Card/helpers → helpers}/filter-query-setup.js +5 -3
  233. package/src/{components/Card/helpers → helpers}/filters-setup.js +5 -2
  234. package/src/helpers/index.js +6 -0
  235. package/src/{components/Card/helpers → helpers}/should-skip-single-query.js +1 -1
  236. package/src/hooks/index.js +2 -0
  237. package/src/hooks/use-filter-aggregation-values.js +37 -0
  238. package/src/hooks/use-portal.js +18 -0
  239. package/tests/unit/src/components/BackToTop/BackToTop.test.js +9 -5
  240. package/tests/unit/src/components/BackToTop/__snapshots__/BackToTop.test.js.snap +1 -1
  241. package/tests/unit/src/components/Card/Card.test.js +16 -1
  242. package/tests/unit/src/components/Card/__snapshots__/Card.test.js.snap +83 -0
  243. package/tests/unit/src/components/Card/helpers/get-updated-items-to-display.test.js +1 -1
  244. package/tests/unit/src/components/Carousel/CarouselImage/__snapshots__/CarouselImage.test.js.snap +1 -1
  245. package/tests/unit/src/components/Carousel/__snapshots__/Carousel.test.js.snap +1 -1
  246. package/tests/unit/src/components/ContentGroup/__snapshots__/ContentGroupTabs.test.js.snap +4 -4
  247. package/tests/unit/src/components/Image/Lightbox/Lightbox.test.js +4 -0
  248. package/tests/unit/src/components/Image/Lightbox/__snapshots__/Lightbox.test.js.snap +3 -38
  249. package/tests/unit/src/components/ItemList/__snapshots__/ItemListNew.test.js.snap +0 -2
  250. package/tests/unit/src/components/MenuItem/MenuEntitiesItem.test.js +23 -0
  251. package/tests/unit/src/components/MenuItem/MenuItem.test.js +30 -11
  252. package/tests/unit/src/components/MenuItem/MenuItemRender.test.js +55 -0
  253. package/tests/unit/src/components/MenuItem/__snapshots__/MenuEntitiesItem.test.js.snap +3 -0
  254. package/tests/unit/src/components/MenuItem/__snapshots__/MenuItem.test.js.snap +5 -56
  255. package/tests/unit/src/components/MenuItem/helpers/inject-helper-into-template.test.js +44 -0
  256. package/tests/unit/src/components/MenuItem/mocks.js +71 -0
  257. package/tests/unit/src/components/Modal/Modal.test.js +4 -0
  258. package/tests/unit/src/components/Modal/__snapshots__/Modal.test.js.snap +7 -42
  259. package/tests/unit/src/components/SearchFilter/SearchFilter/__snapshots__/MobileFormToolbar.test.js.snap +1 -1
  260. package/tests/unit/src/components/SearchFilter/SearchFilter/__snapshots__/ResetDesktopForm.test.js.snap +1 -1
  261. package/tests/unit/src/components/SearchFilter/SearchFilter/__snapshots__/SearchFilter.test.js.snap +19 -17
  262. package/tests/unit/src/components/SearchFilter/__snapshots__/SearchFilterContainer.test.js.snap +7 -1
  263. package/tests/unit/src/components/SearchFilter/components/__snapshots__/Select.test.js.snap +1 -0
  264. package/tests/unit/src/components/SearchFilter/components/__snapshots__/TextSearch.test.js.snap +1 -0
  265. package/tests/unit/src/components/SearchFilterSort/__snapshots__/SearchFilterSort.test.js.snap +1 -0
  266. package/tests/unit/src/components/Video/providers/Vimeo/__snapshots__/Vimeo.test.js.snap +0 -1
  267. package/lib/components/Card/helpers/filter-query-setup.js.map +0 -1
  268. package/lib/components/Card/helpers/filters-setup.js.map +0 -1
  269. package/lib/components/Card/helpers/get-updated-items-to-display.js.map +0 -1
  270. package/lib/components/Card/helpers/get-updated-sort-properties.js.map +0 -1
  271. package/lib/components/Card/helpers/should-return.js.map +0 -1
  272. package/lib/components/Card/helpers/should-skip-single-query.js.map +0 -1
  273. package/lib-es/components/Card/helpers/filter-query-setup.js.map +0 -1
  274. package/lib-es/components/Card/helpers/filters-setup.js.map +0 -1
  275. package/lib-es/components/Card/helpers/get-updated-items-to-display.js.map +0 -1
  276. package/lib-es/components/Card/helpers/get-updated-sort-properties.js.map +0 -1
  277. package/lib-es/components/Card/helpers/should-return.js.map +0 -1
  278. package/lib-es/components/Card/helpers/should-skip-single-query.js.map +0 -1
  279. /package/lib/{components/Card/helpers → helpers}/get-updated-items-to-display.js +0 -0
  280. /package/lib/{components/Card/helpers → helpers}/get-updated-sort-properties.js +0 -0
  281. /package/lib/{components/Card/helpers → helpers}/should-return.js +0 -0
  282. /package/lib-es/{components/Card/helpers → helpers}/get-updated-items-to-display.js +0 -0
  283. /package/lib-es/{components/Card/helpers → helpers}/get-updated-sort-properties.js +0 -0
  284. /package/lib-es/{components/Card/helpers → helpers}/should-return.js +0 -0
  285. /package/src/{components/Card/helpers → helpers}/get-updated-items-to-display.js +0 -0
  286. /package/src/{components/Card/helpers → helpers}/get-updated-sort-properties.js +0 -0
  287. /package/src/{components/Card/helpers → helpers}/should-return.js +0 -0
@@ -1,24 +1,38 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- const _excluded = ["entity", "entities", "propsToDisplay", "itemsToDisplay", "itemListName"],
3
+ const _excluded = ["entity", "entities", "propsToDisplay", "itemsToDisplay", "itemListName", "VariantComponent"],
4
4
  _excluded2 = ["gridModifier"];
5
5
  import React from 'react';
6
6
  import { useQuery } from '@apollo/client';
7
7
  import PropTypes from 'prop-types';
8
- import { getSingleEntitySchema } from '../../application/query';
8
+ import { useRouter } from 'next/router';
9
+ import { parseUrl } from 'query-string';
10
+ import { getSingleEntitySchema, getItemList } from '../../application/query';
9
11
  import CardsRender from './CardsRender';
10
12
  import { buildPropsQuery, getGenericProps, checkPropsToUse } from '../../helpers';
11
13
  import { WITH_BANNER } from '../../constants';
14
+ import { getItemListId, getItemListIds } from '../ItemList/helpers';
12
15
  const CardsFactory = _ref => {
13
16
  let {
14
17
  entity,
15
18
  entities,
16
19
  propsToDisplay,
17
20
  itemsToDisplay,
18
- itemListName
21
+ itemListName,
22
+ VariantComponent
19
23
  } = _ref,
20
24
  cardProps = _objectWithoutProperties(_ref, _excluded);
21
25
  const entityTouse = entities && entities.length ? entities[0] : entity;
26
+ const router = useRouter();
27
+ const {
28
+ asPath
29
+ } = router;
30
+ const parsedQuery = asPath.replace(/%5D/g, ']').replace(/%5B/g, '[');
31
+ const {
32
+ query: {
33
+ itemListId: queryItemListId
34
+ } = {}
35
+ } = parseUrl(parsedQuery);
22
36
  const {
23
37
  data,
24
38
  error,
@@ -28,8 +42,19 @@ const CardsFactory = _ref => {
28
42
  id: entityTouse
29
43
  }
30
44
  });
31
- if (loading) return '';
32
- if (error) return error.message;
45
+ const itemListId = getItemListId(itemListName, queryItemListId);
46
+ const {
47
+ data: itemListData = {},
48
+ loading: itemListLoading,
49
+ error: itemListError
50
+ } = useQuery(getItemList, {
51
+ variables: {
52
+ id: itemListId
53
+ },
54
+ skip: !itemListId
55
+ });
56
+ if (loading || itemListLoading) return '';
57
+ if (error || itemListError) return error.message || itemListError.message;
33
58
  if (!data) return null;
34
59
  const propsToDisplayValues = checkPropsToUse(propsToDisplay);
35
60
  const extraProps = buildPropsQuery(data, propsToDisplayValues, cardProps) || '';
@@ -39,12 +64,16 @@ const CardsFactory = _ref => {
39
64
  } = _getGenericProps,
40
65
  cardRenderProps = _objectWithoutProperties(_getGenericProps, _excluded2);
41
66
  const extraModifierForBanner = cardRenderProps.banner ? WITH_BANNER : '';
67
+ const itemListIds = getItemListIds(itemListData);
68
+ const itemsToDisplayToUse = itemListIds || itemsToDisplay;
69
+ if (itemListName && !itemListIds) return null;
42
70
  return /*#__PURE__*/React.createElement(CardsRender, _extends({
43
71
  gridModifier: `${gridModifier}${extraModifierForBanner}`,
44
72
  bannerModifier: extraModifierForBanner,
45
- itemsToDisplay: itemsToDisplay,
73
+ itemsToDisplay: itemsToDisplayToUse,
46
74
  propsToDisplay: propsToDisplay,
47
- entityFields: extraProps
75
+ entityFields: extraProps,
76
+ VariantComponent: VariantComponent
48
77
  }, cardRenderProps, {
49
78
  entity: entityTouse,
50
79
  entities: entities
@@ -55,14 +84,16 @@ CardsFactory.propTypes = {
55
84
  propsToDisplay: PropTypes.array,
56
85
  itemsToDisplay: PropTypes.array,
57
86
  itemListName: PropTypes.string,
58
- entities: PropTypes.array
87
+ entities: PropTypes.array,
88
+ VariantComponent: PropTypes.func
59
89
  };
60
90
  CardsFactory.defaultProps = {
61
91
  propsToDisplay: [],
62
92
  itemsToDisplay: [],
63
93
  itemListName: '',
64
94
  entity: null,
65
- entities: null
95
+ entities: null,
96
+ VariantComponent: null
66
97
  };
67
98
  export default CardsFactory;
68
99
  //# sourceMappingURL=CardsFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CardsFactory.js","names":["React","useQuery","PropTypes","getSingleEntitySchema","CardsRender","buildPropsQuery","getGenericProps","checkPropsToUse","WITH_BANNER","CardsFactory","_ref","entity","entities","propsToDisplay","itemsToDisplay","itemListName","cardProps","_objectWithoutProperties","_excluded","entityTouse","length","data","error","loading","variables","id","message","propsToDisplayValues","extraProps","_getGenericProps","gridModifier","cardRenderProps","_excluded2","extraModifierForBanner","banner","createElement","_extends","bannerModifier","entityFields","propTypes","string","array","defaultProps"],"sources":["../../../src/components/Card/CardsFactory.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { getSingleEntitySchema } from '../../application/query';\nimport CardsRender from './CardsRender';\nimport { buildPropsQuery, getGenericProps, checkPropsToUse } from '../../helpers';\nimport { WITH_BANNER } from '../../constants';\n\nconst CardsFactory = ({\n entity,\n entities,\n propsToDisplay,\n itemsToDisplay,\n itemListName,\n ...cardProps\n}) => {\n const entityTouse = entities && entities.length ? entities[0] : entity;\n const { data, error, loading } = useQuery(getSingleEntitySchema, {\n variables: { id: entityTouse }\n });\n\n if (loading) return '';\n if (error) return error.message;\n if (!data) return null;\n\n const propsToDisplayValues = checkPropsToUse(propsToDisplay);\n const extraProps = buildPropsQuery(data, propsToDisplayValues, cardProps) || '';\n const { gridModifier, ...cardRenderProps } = getGenericProps(cardProps);\n const extraModifierForBanner = cardRenderProps.banner ? WITH_BANNER : '';\n\n return (\n <CardsRender\n gridModifier={`${gridModifier}${extraModifierForBanner}`}\n bannerModifier={extraModifierForBanner}\n itemsToDisplay={itemsToDisplay}\n propsToDisplay={propsToDisplay}\n entityFields={extraProps}\n {...cardRenderProps}\n entity={entityTouse}\n entities={entities}\n />\n );\n};\n\nCardsFactory.propTypes = {\n entity: PropTypes.string,\n propsToDisplay: PropTypes.array,\n itemsToDisplay: PropTypes.array,\n itemListName: PropTypes.string,\n entities: PropTypes.array\n};\n\nCardsFactory.defaultProps = {\n propsToDisplay: [],\n itemsToDisplay: [],\n itemListName: '',\n entity: null,\n entities: null\n};\n\nexport default CardsFactory;\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,qBAAqB,QAAQ,yBAAyB;AAC/D,OAAOC,WAAW,MAAM,eAAe;AACvC,SAASC,eAAe,EAAEC,eAAe,EAAEC,eAAe,QAAQ,eAAe;AACjF,SAASC,WAAW,QAAQ,iBAAiB;AAE7C,MAAMC,YAAY,GAAGC,IAAA,IAOf;EAAA,IAPgB;MACpBC,MAAM;MACNC,QAAQ;MACRC,cAAc;MACdC,cAAc;MACdC;IAEF,CAAC,GAAAL,IAAA;IADIM,SAAS,GAAAC,wBAAA,CAAAP,IAAA,EAAAQ,SAAA;EAEZ,MAAMC,WAAW,GAAGP,QAAQ,IAAIA,QAAQ,CAACQ,MAAM,GAAGR,QAAQ,CAAC,CAAC,CAAC,GAAGD,MAAM;EACtE,MAAM;IAAEU,IAAI;IAAEC,KAAK;IAAEC;EAAQ,CAAC,GAAGtB,QAAQ,CAACE,qBAAqB,EAAE;IAC/DqB,SAAS,EAAE;MAAEC,EAAE,EAAEN;IAAY;EAC/B,CAAC,CAAC;EAEF,IAAII,OAAO,EAAE,OAAO,EAAE;EACtB,IAAID,KAAK,EAAE,OAAOA,KAAK,CAACI,OAAO;EAC/B,IAAI,CAACL,IAAI,EAAE,OAAO,IAAI;EAEtB,MAAMM,oBAAoB,GAAGpB,eAAe,CAACM,cAAc,CAAC;EAC5D,MAAMe,UAAU,GAAGvB,eAAe,CAACgB,IAAI,EAAEM,oBAAoB,EAAEX,SAAS,CAAC,IAAI,EAAE;EAC/E,MAAAa,gBAAA,GAA6CvB,eAAe,CAACU,SAAS,CAAC;IAAjE;MAAEc;IAAiC,CAAC,GAAAD,gBAAA;IAAjBE,eAAe,GAAAd,wBAAA,CAAAY,gBAAA,EAAAG,UAAA;EACxC,MAAMC,sBAAsB,GAAGF,eAAe,CAACG,MAAM,GAAG1B,WAAW,GAAG,EAAE;EAExE,oBACER,KAAA,CAAAmC,aAAA,CAAC/B,WAAW,EAAAgC,QAAA;IACVN,YAAY,EAAG,GAAEA,YAAa,GAAEG,sBAAuB,EAAE;IACzDI,cAAc,EAAEJ,sBAAuB;IACvCnB,cAAc,EAAEA,cAAe;IAC/BD,cAAc,EAAEA,cAAe;IAC/ByB,YAAY,EAAEV;EAAW,GACrBG,eAAe;IACnBpB,MAAM,EAAEQ,WAAY;IACpBP,QAAQ,EAAEA;EAAS,EACpB,CAAC;AAEN,CAAC;AAEDH,YAAY,CAAC8B,SAAS,GAAG;EACvB5B,MAAM,EAAET,SAAS,CAACsC,MAAM;EACxB3B,cAAc,EAAEX,SAAS,CAACuC,KAAK;EAC/B3B,cAAc,EAAEZ,SAAS,CAACuC,KAAK;EAC/B1B,YAAY,EAAEb,SAAS,CAACsC,MAAM;EAC9B5B,QAAQ,EAAEV,SAAS,CAACuC;AACtB,CAAC;AAEDhC,YAAY,CAACiC,YAAY,GAAG;EAC1B7B,cAAc,EAAE,EAAE;EAClBC,cAAc,EAAE,EAAE;EAClBC,YAAY,EAAE,EAAE;EAChBJ,MAAM,EAAE,IAAI;EACZC,QAAQ,EAAE;AACZ,CAAC;AAED,eAAeH,YAAY"}
1
+ {"version":3,"file":"CardsFactory.js","names":["React","useQuery","PropTypes","useRouter","parseUrl","getSingleEntitySchema","getItemList","CardsRender","buildPropsQuery","getGenericProps","checkPropsToUse","WITH_BANNER","getItemListId","getItemListIds","CardsFactory","_ref","entity","entities","propsToDisplay","itemsToDisplay","itemListName","VariantComponent","cardProps","_objectWithoutProperties","_excluded","entityTouse","length","router","asPath","parsedQuery","replace","query","itemListId","queryItemListId","data","error","loading","variables","id","itemListData","itemListLoading","itemListError","skip","message","propsToDisplayValues","extraProps","_getGenericProps","gridModifier","cardRenderProps","_excluded2","extraModifierForBanner","banner","itemListIds","itemsToDisplayToUse","createElement","_extends","bannerModifier","entityFields","propTypes","string","array","func","defaultProps"],"sources":["../../../src/components/Card/CardsFactory.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { parseUrl } from 'query-string';\nimport { getSingleEntitySchema, getItemList } from '../../application/query';\nimport CardsRender from './CardsRender';\nimport { buildPropsQuery, getGenericProps, checkPropsToUse } from '../../helpers';\nimport { WITH_BANNER } from '../../constants';\nimport { getItemListId, getItemListIds } from '../ItemList/helpers';\n\nconst CardsFactory = ({\n entity,\n entities,\n propsToDisplay,\n itemsToDisplay,\n itemListName,\n VariantComponent,\n ...cardProps\n}) => {\n const entityTouse = entities && entities.length ? entities[0] : entity;\n const router = useRouter();\n const { asPath } = router;\n const parsedQuery = asPath.replace(/%5D/g, ']').replace(/%5B/g, '[');\n\n const { query: { itemListId: queryItemListId } = {} } = parseUrl(parsedQuery);\n\n const { data, error, loading } = useQuery(getSingleEntitySchema, {\n variables: { id: entityTouse }\n });\n\n const itemListId = getItemListId(itemListName, queryItemListId);\n\n const { data: itemListData = {}, loading: itemListLoading, error: itemListError } = useQuery(\n getItemList,\n {\n variables: { id: itemListId },\n skip: !itemListId\n }\n );\n\n if (loading || itemListLoading) return '';\n if (error || itemListError) return error.message || itemListError.message;\n if (!data) return null;\n\n const propsToDisplayValues = checkPropsToUse(propsToDisplay);\n const extraProps = buildPropsQuery(data, propsToDisplayValues, cardProps) || '';\n const { gridModifier, ...cardRenderProps } = getGenericProps(cardProps);\n const extraModifierForBanner = cardRenderProps.banner ? WITH_BANNER : '';\n\n const itemListIds = getItemListIds(itemListData);\n const itemsToDisplayToUse = itemListIds || itemsToDisplay;\n\n if (itemListName && !itemListIds) return null;\n\n return (\n <CardsRender\n gridModifier={`${gridModifier}${extraModifierForBanner}`}\n bannerModifier={extraModifierForBanner}\n itemsToDisplay={itemsToDisplayToUse}\n propsToDisplay={propsToDisplay}\n entityFields={extraProps}\n VariantComponent={VariantComponent}\n {...cardRenderProps}\n entity={entityTouse}\n entities={entities}\n />\n );\n};\n\nCardsFactory.propTypes = {\n entity: PropTypes.string,\n propsToDisplay: PropTypes.array,\n itemsToDisplay: PropTypes.array,\n itemListName: PropTypes.string,\n entities: PropTypes.array,\n VariantComponent: PropTypes.func\n};\n\nCardsFactory.defaultProps = {\n propsToDisplay: [],\n itemsToDisplay: [],\n itemListName: '',\n entity: null,\n entities: null,\n VariantComponent: null\n};\n\nexport default CardsFactory;\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,QAAQ,QAAQ,cAAc;AACvC,SAASC,qBAAqB,EAAEC,WAAW,QAAQ,yBAAyB;AAC5E,OAAOC,WAAW,MAAM,eAAe;AACvC,SAASC,eAAe,EAAEC,eAAe,EAAEC,eAAe,QAAQ,eAAe;AACjF,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,aAAa,EAAEC,cAAc,QAAQ,qBAAqB;AAEnE,MAAMC,YAAY,GAAGC,IAAA,IAQf;EAAA,IARgB;MACpBC,MAAM;MACNC,QAAQ;MACRC,cAAc;MACdC,cAAc;MACdC,YAAY;MACZC;IAEF,CAAC,GAAAN,IAAA;IADIO,SAAS,GAAAC,wBAAA,CAAAR,IAAA,EAAAS,SAAA;EAEZ,MAAMC,WAAW,GAAGR,QAAQ,IAAIA,QAAQ,CAACS,MAAM,GAAGT,QAAQ,CAAC,CAAC,CAAC,GAAGD,MAAM;EACtE,MAAMW,MAAM,GAAGxB,SAAS,CAAC,CAAC;EAC1B,MAAM;IAAEyB;EAAO,CAAC,GAAGD,MAAM;EACzB,MAAME,WAAW,GAAGD,MAAM,CAACE,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAACA,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;EAEpE,MAAM;IAAEC,KAAK,EAAE;MAAEC,UAAU,EAAEC;IAAgB,CAAC,GAAG,CAAC;EAAE,CAAC,GAAG7B,QAAQ,CAACyB,WAAW,CAAC;EAE7E,MAAM;IAAEK,IAAI;IAAEC,KAAK;IAAEC;EAAQ,CAAC,GAAGnC,QAAQ,CAACI,qBAAqB,EAAE;IAC/DgC,SAAS,EAAE;MAAEC,EAAE,EAAEb;IAAY;EAC/B,CAAC,CAAC;EAEF,MAAMO,UAAU,GAAGpB,aAAa,CAACQ,YAAY,EAAEa,eAAe,CAAC;EAE/D,MAAM;IAAEC,IAAI,EAAEK,YAAY,GAAG,CAAC,CAAC;IAAEH,OAAO,EAAEI,eAAe;IAAEL,KAAK,EAAEM;EAAc,CAAC,GAAGxC,QAAQ,CAC1FK,WAAW,EACX;IACE+B,SAAS,EAAE;MAAEC,EAAE,EAAEN;IAAW,CAAC;IAC7BU,IAAI,EAAE,CAACV;EACT,CACF,CAAC;EAED,IAAII,OAAO,IAAII,eAAe,EAAE,OAAO,EAAE;EACzC,IAAIL,KAAK,IAAIM,aAAa,EAAE,OAAON,KAAK,CAACQ,OAAO,IAAIF,aAAa,CAACE,OAAO;EACzE,IAAI,CAACT,IAAI,EAAE,OAAO,IAAI;EAEtB,MAAMU,oBAAoB,GAAGlC,eAAe,CAACQ,cAAc,CAAC;EAC5D,MAAM2B,UAAU,GAAGrC,eAAe,CAAC0B,IAAI,EAAEU,oBAAoB,EAAEtB,SAAS,CAAC,IAAI,EAAE;EAC/E,MAAAwB,gBAAA,GAA6CrC,eAAe,CAACa,SAAS,CAAC;IAAjE;MAAEyB;IAAiC,CAAC,GAAAD,gBAAA;IAAjBE,eAAe,GAAAzB,wBAAA,CAAAuB,gBAAA,EAAAG,UAAA;EACxC,MAAMC,sBAAsB,GAAGF,eAAe,CAACG,MAAM,GAAGxC,WAAW,GAAG,EAAE;EAExE,MAAMyC,WAAW,GAAGvC,cAAc,CAAC0B,YAAY,CAAC;EAChD,MAAMc,mBAAmB,GAAGD,WAAW,IAAIjC,cAAc;EAEzD,IAAIC,YAAY,IAAI,CAACgC,WAAW,EAAE,OAAO,IAAI;EAE7C,oBACEpD,KAAA,CAAAsD,aAAA,CAAC/C,WAAW,EAAAgD,QAAA;IACVR,YAAY,EAAG,GAAEA,YAAa,GAAEG,sBAAuB,EAAE;IACzDM,cAAc,EAAEN,sBAAuB;IACvC/B,cAAc,EAAEkC,mBAAoB;IACpCnC,cAAc,EAAEA,cAAe;IAC/BuC,YAAY,EAAEZ,UAAW;IACzBxB,gBAAgB,EAAEA;EAAiB,GAC/B2B,eAAe;IACnBhC,MAAM,EAAES,WAAY;IACpBR,QAAQ,EAAEA;EAAS,EACpB,CAAC;AAEN,CAAC;AAEDH,YAAY,CAAC4C,SAAS,GAAG;EACvB1C,MAAM,EAAEd,SAAS,CAACyD,MAAM;EACxBzC,cAAc,EAAEhB,SAAS,CAAC0D,KAAK;EAC/BzC,cAAc,EAAEjB,SAAS,CAAC0D,KAAK;EAC/BxC,YAAY,EAAElB,SAAS,CAACyD,MAAM;EAC9B1C,QAAQ,EAAEf,SAAS,CAAC0D,KAAK;EACzBvC,gBAAgB,EAAEnB,SAAS,CAAC2D;AAC9B,CAAC;AAED/C,YAAY,CAACgD,YAAY,GAAG;EAC1B5C,cAAc,EAAE,EAAE;EAClBC,cAAc,EAAE,EAAE;EAClBC,YAAY,EAAE,EAAE;EAChBJ,MAAM,EAAE,IAAI;EACZC,QAAQ,EAAE,IAAI;EACdI,gBAAgB,EAAE;AACpB,CAAC;AAED,eAAeP,YAAY"}
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
- const _excluded = ["entity", "entities", "entityFields", "itemsToDisplay", "children"];
4
+ const _excluded = ["entity", "entities", "entityFields", "itemsToDisplay", "children", "VariantComponent"];
5
5
  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; }
6
6
  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; }
7
7
  import React, { useContext } from 'react';
@@ -21,7 +21,8 @@ const CardsRender = _ref => {
21
21
  entities,
22
22
  entityFields,
23
23
  itemsToDisplay,
24
- children
24
+ children,
25
+ VariantComponent
25
26
  } = _ref,
26
27
  otherProps = _objectWithoutProperties(_ref, _excluded);
27
28
  const {
@@ -170,7 +171,8 @@ const CardsRender = _ref => {
170
171
  entity: primaryEntityToUse,
171
172
  gtmChildren: gtmChildren,
172
173
  cardChildren: regularChildren,
173
- graphqlEntityMap: graphqlEntityMap
174
+ graphqlEntityMap: graphqlEntityMap,
175
+ VariantComponent: VariantComponent
174
176
  }, variableProps)));
175
177
  };
176
178
  CardsRender.propTypes = {
@@ -178,12 +180,14 @@ CardsRender.propTypes = {
178
180
  entity: PropTypes.string.isRequired,
179
181
  entityFields: PropTypes.string.isRequired,
180
182
  itemsToDisplay: PropTypes.array,
181
- entities: PropTypes.array
183
+ entities: PropTypes.array,
184
+ VariantComponent: PropTypes.func
182
185
  };
183
186
  CardsRender.defaultProps = {
184
187
  children: [],
185
188
  itemsToDisplay: [],
186
- entities: []
189
+ entities: [],
190
+ VariantComponent: null
187
191
  };
188
192
  export default CardsRender;
189
193
  //# sourceMappingURL=CardsRender.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CardsRender.js","names":["React","useContext","useQuery","dynamic","PropTypes","MainContext","generateSingleItemQuery","SEARCH_PUBLISHED_CONTENT","AND","FULL","useGetEntitySchemasAsObj","useGetImages","getUpdatedFilterBy","getEntityData","getRequiredSchemas","sortResponseData","getUnpublishedEntityName","renderChildren","splitChildren","removeExtraItems","appendImages","filtersSetup","filterQuerySetup","shouldSkipSingleQuery","shouldReturn","getUpdatedSortProperties","getUpdatedItemsToDisplay","CardsContainer","CardsRender","_ref","entity","legacyEntity","entities","entityFields","itemsToDisplay","children","otherProps","_objectWithoutProperties","_excluded","isPreview","parent","itemId","parentId","itemEntity","parentEntity","filterBy","filterByProperty","sortby","sort","sortProperties","operator","filterOperator","useRandomSort","updatedSortProperties","sortbyFilters","variableProps","_objectSpread","entitiesToUse","primaryEntityToUse","unpublishedParentEntityName","allEntityNames","uniqueEntityNames","Set","data","mainSchemas","loading","_loading","error","_error","parentSchema","filterEntitySchema","entitiesTypes","map","ent","graphqlEntityMap","reduce","acc","entityType","docTypes","docType","type","entityTypes","eType","style","getAction","queryProps","inheritedFilters","entitySameAsCurrentItemEntity","action","filterEntityRelations","currentSchema","itemEntityUpdated","isFull","entityData","parentEntityData","_err","_load","variables","id","skip","requiredSchema","schemaLoading","schemaError","updatedFilterBy","updatedItemsToDisplay","limit","getEntitySchemas","Object","values","hasNoFiltersOrItemsToDisplay","length","cardData","cardsError","fetchPolicy","imageIds","imageId","filter","Boolean","imagesData","imagesLoading","isLoading","hasError","message","results","cardDataResults","orderedData","regularChildren","gtmChildren","name","updatedCards","createElement","Fragment","_extends","cardChildren","propTypes","oneOfType","arrayOf","node","string","isRequired","array","defaultProps"],"sources":["../../../src/components/Card/CardsRender.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from '@apollo/client';\nimport dynamic from 'next/dynamic';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { SEARCH_PUBLISHED_CONTENT, AND, FULL } from '../../constants';\nimport { useGetEntitySchemasAsObj, useGetImages } from '../../hooks';\nimport {\n getUpdatedFilterBy,\n getEntityData,\n getRequiredSchemas,\n sortResponseData,\n getUnpublishedEntityName,\n renderChildren,\n splitChildren,\n removeExtraItems,\n appendImages\n} from '../../helpers';\nimport {\n filtersSetup,\n filterQuerySetup,\n shouldSkipSingleQuery,\n shouldReturn,\n getUpdatedSortProperties,\n getUpdatedItemsToDisplay\n} from './helpers';\n\nconst CardsContainer = dynamic(() => import('./CardsContainer'));\n\nconst CardsRender = ({\n entity: legacyEntity,\n entities,\n entityFields,\n itemsToDisplay,\n children,\n ...otherProps\n}) => {\n const { isPreview } = useContext(MainContext);\n const {\n parent: { itemId: parentId, itemEntity: parentEntity },\n filterBy = [],\n filterByProperty = [],\n sortby,\n sort,\n sortProperties = [],\n operator: filterOperator = AND,\n useRandomSort\n } = otherProps;\n const [updatedSortProperties, sortbyFilters] = getUpdatedSortProperties(\n sort,\n sortby,\n sortProperties\n );\n\n const variableProps = {\n ...otherProps,\n sortProperties: updatedSortProperties,\n sort: null,\n sortby: null\n };\n\n const entitiesToUse = entities || [legacyEntity];\n const primaryEntityToUse = entitiesToUse[0];\n const unpublishedParentEntityName = getUnpublishedEntityName(parentEntity);\n const allEntityNames = [...entitiesToUse, unpublishedParentEntityName];\n const uniqueEntityNames = [...new Set(allEntityNames)];\n const { data: mainSchemas = {}, loading: _loading, error: _error } = useGetEntitySchemasAsObj(\n uniqueEntityNames\n );\n const parentSchema = mainSchemas[unpublishedParentEntityName] || {};\n const filterEntitySchema = mainSchemas[primaryEntityToUse] || {};\n const entitiesTypes = entitiesToUse.map(ent => getEntityData(ent, mainSchemas[ent]));\n const graphqlEntityMap = entitiesTypes.reduce(\n (acc, entityType) => ({ ...acc, [entityType.entityType]: entityType.entity }),\n {}\n );\n const docTypes = entitiesTypes.map(({ docType: type }) => type);\n const entityTypes = entitiesTypes.map(({ entityType: eType }) => eType);\n\n const { style } = otherProps;\n\n const {\n getAction,\n queryProps,\n inheritedFilters,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n } = filtersSetup({\n entityFields,\n entityTypes,\n filterBy,\n filterByProperty,\n entities: entitiesToUse,\n currentSchema: parentSchema,\n filterEntitySchema,\n isPreview,\n itemEntityUpdated: unpublishedParentEntityName,\n isFull: style === FULL\n });\n\n const {\n data: { entityData: parentEntityData = {} } = {},\n error: _err,\n loading: _load\n } = useQuery(generateSingleItemQuery(getAction, queryProps), {\n variables: { id: parentId },\n skip: shouldSkipSingleQuery(_loading, getAction, queryProps)\n });\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n _loading\n );\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n parentEntityData,\n parentSchema,\n filterEntitySchema,\n parentId,\n variableProps\n );\n\n const updatedItemsToDisplay = getUpdatedItemsToDisplay({\n itemsToDisplay,\n inheritedFilters,\n parentSchema,\n parentEntityData\n });\n\n const { limit, variables } = filterQuerySetup({\n getEntitySchemas: Object.values(requiredSchema),\n entity: primaryEntityToUse,\n updatedFilterBy,\n variableProps,\n docType: docTypes,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay: updatedItemsToDisplay,\n entitySameAsCurrentItemEntity,\n useRandomSort\n });\n\n const hasNoFiltersOrItemsToDisplay = !updatedItemsToDisplay.length && !updatedFilterBy;\n\n const { data: cardData = {}, error: cardsError } = useQuery(action, {\n variables,\n fetchPolicy: useRandomSort ? 'cache-and-network' : 'cache-first',\n skip: shouldReturn(\n hasNoFiltersOrItemsToDisplay,\n _loading,\n _load,\n schemaLoading,\n _error,\n _err,\n schemaError\n )\n });\n\n const imageIds = updatedItemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n const isLoading = shouldReturn(_loading, _load, schemaLoading, imagesLoading);\n const hasError = shouldReturn(_error, _err, schemaError);\n\n if (hasNoFiltersOrItemsToDisplay) return null;\n if (isLoading) return null;\n if (hasError) return null;\n if (cardsError) return cardsError.message;\n let { results: cardDataResults } = cardData[SEARCH_PUBLISHED_CONTENT] || {};\n\n if (!cardDataResults || !cardDataResults.length) return null;\n\n cardDataResults = entitySameAsCurrentItemEntity\n ? removeExtraItems(cardDataResults, limit, parentId)\n : cardDataResults;\n if (!cardDataResults.length) return null;\n\n const orderedData =\n useRandomSort || updatedSortProperties.length\n ? cardDataResults\n : sortResponseData(cardDataResults, updatedItemsToDisplay);\n const { regularChildren, gtmChildren } = splitChildren(\n children,\n cardDataResults,\n graphqlEntityMap,\n {\n name: variableProps.name\n }\n );\n const updatedCards = appendImages(imagesData, orderedData, updatedItemsToDisplay);\n\n return (\n <>\n {gtmChildren && renderChildren(gtmChildren)}\n <CardsContainer\n cardData={updatedCards}\n entity={primaryEntityToUse}\n gtmChildren={gtmChildren}\n cardChildren={regularChildren}\n graphqlEntityMap={graphqlEntityMap}\n {...variableProps}\n />\n </>\n );\n};\n\nCardsRender.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n entity: PropTypes.string.isRequired,\n entityFields: PropTypes.string.isRequired,\n itemsToDisplay: PropTypes.array,\n entities: PropTypes.array\n};\n\nCardsRender.defaultProps = {\n children: [],\n itemsToDisplay: [],\n entities: []\n};\n\nexport default CardsRender;\n"],"mappings":"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"}
1
+ {"version":3,"file":"CardsRender.js","names":["React","useContext","useQuery","dynamic","PropTypes","MainContext","generateSingleItemQuery","SEARCH_PUBLISHED_CONTENT","AND","FULL","useGetEntitySchemasAsObj","useGetImages","getUpdatedFilterBy","getEntityData","getRequiredSchemas","sortResponseData","getUnpublishedEntityName","renderChildren","splitChildren","removeExtraItems","appendImages","filtersSetup","filterQuerySetup","shouldSkipSingleQuery","shouldReturn","getUpdatedSortProperties","getUpdatedItemsToDisplay","CardsContainer","CardsRender","_ref","entity","legacyEntity","entities","entityFields","itemsToDisplay","children","VariantComponent","otherProps","_objectWithoutProperties","_excluded","isPreview","parent","itemId","parentId","itemEntity","parentEntity","filterBy","filterByProperty","sortby","sort","sortProperties","operator","filterOperator","useRandomSort","updatedSortProperties","sortbyFilters","variableProps","_objectSpread","entitiesToUse","primaryEntityToUse","unpublishedParentEntityName","allEntityNames","uniqueEntityNames","Set","data","mainSchemas","loading","_loading","error","_error","parentSchema","filterEntitySchema","entitiesTypes","map","ent","graphqlEntityMap","reduce","acc","entityType","docTypes","docType","type","entityTypes","eType","style","getAction","queryProps","inheritedFilters","entitySameAsCurrentItemEntity","action","filterEntityRelations","currentSchema","itemEntityUpdated","isFull","entityData","parentEntityData","_err","_load","variables","id","skip","requiredSchema","schemaLoading","schemaError","updatedFilterBy","updatedItemsToDisplay","limit","getEntitySchemas","Object","values","hasNoFiltersOrItemsToDisplay","length","cardData","cardsError","fetchPolicy","imageIds","imageId","filter","Boolean","imagesData","imagesLoading","isLoading","hasError","message","results","cardDataResults","orderedData","regularChildren","gtmChildren","name","updatedCards","createElement","Fragment","_extends","cardChildren","propTypes","oneOfType","arrayOf","node","string","isRequired","array","func","defaultProps"],"sources":["../../../src/components/Card/CardsRender.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from '@apollo/client';\nimport dynamic from 'next/dynamic';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { SEARCH_PUBLISHED_CONTENT, AND, FULL } from '../../constants';\nimport { useGetEntitySchemasAsObj, useGetImages } from '../../hooks';\nimport {\n getUpdatedFilterBy,\n getEntityData,\n getRequiredSchemas,\n sortResponseData,\n getUnpublishedEntityName,\n renderChildren,\n splitChildren,\n removeExtraItems,\n appendImages\n} from '../../helpers';\nimport {\n filtersSetup,\n filterQuerySetup,\n shouldSkipSingleQuery,\n shouldReturn,\n getUpdatedSortProperties,\n getUpdatedItemsToDisplay\n} from './helpers';\n\nconst CardsContainer = dynamic(() => import('./CardsContainer'));\n\nconst CardsRender = ({\n entity: legacyEntity,\n entities,\n entityFields,\n itemsToDisplay,\n children,\n VariantComponent,\n ...otherProps\n}) => {\n const { isPreview } = useContext(MainContext);\n const {\n parent: { itemId: parentId, itemEntity: parentEntity },\n filterBy = [],\n filterByProperty = [],\n sortby,\n sort,\n sortProperties = [],\n operator: filterOperator = AND,\n useRandomSort\n } = otherProps;\n const [updatedSortProperties, sortbyFilters] = getUpdatedSortProperties(\n sort,\n sortby,\n sortProperties\n );\n\n const variableProps = {\n ...otherProps,\n sortProperties: updatedSortProperties,\n sort: null,\n sortby: null\n };\n\n const entitiesToUse = entities || [legacyEntity];\n const primaryEntityToUse = entitiesToUse[0];\n const unpublishedParentEntityName = getUnpublishedEntityName(parentEntity);\n const allEntityNames = [...entitiesToUse, unpublishedParentEntityName];\n const uniqueEntityNames = [...new Set(allEntityNames)];\n const { data: mainSchemas = {}, loading: _loading, error: _error } = useGetEntitySchemasAsObj(\n uniqueEntityNames\n );\n const parentSchema = mainSchemas[unpublishedParentEntityName] || {};\n const filterEntitySchema = mainSchemas[primaryEntityToUse] || {};\n const entitiesTypes = entitiesToUse.map(ent => getEntityData(ent, mainSchemas[ent]));\n const graphqlEntityMap = entitiesTypes.reduce(\n (acc, entityType) => ({ ...acc, [entityType.entityType]: entityType.entity }),\n {}\n );\n const docTypes = entitiesTypes.map(({ docType: type }) => type);\n const entityTypes = entitiesTypes.map(({ entityType: eType }) => eType);\n\n const { style } = otherProps;\n\n const {\n getAction,\n queryProps,\n inheritedFilters,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n } = filtersSetup({\n entityFields,\n entityTypes,\n filterBy,\n filterByProperty,\n entities: entitiesToUse,\n currentSchema: parentSchema,\n filterEntitySchema,\n isPreview,\n itemEntityUpdated: unpublishedParentEntityName,\n isFull: style === FULL\n });\n\n const {\n data: { entityData: parentEntityData = {} } = {},\n error: _err,\n loading: _load\n } = useQuery(generateSingleItemQuery(getAction, queryProps), {\n variables: { id: parentId },\n skip: shouldSkipSingleQuery(_loading, getAction, queryProps)\n });\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n _loading\n );\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n parentEntityData,\n parentSchema,\n filterEntitySchema,\n parentId,\n variableProps\n );\n\n const updatedItemsToDisplay = getUpdatedItemsToDisplay({\n itemsToDisplay,\n inheritedFilters,\n parentSchema,\n parentEntityData\n });\n\n const { limit, variables } = filterQuerySetup({\n getEntitySchemas: Object.values(requiredSchema),\n entity: primaryEntityToUse,\n updatedFilterBy,\n variableProps,\n docType: docTypes,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay: updatedItemsToDisplay,\n entitySameAsCurrentItemEntity,\n useRandomSort\n });\n\n const hasNoFiltersOrItemsToDisplay = !updatedItemsToDisplay.length && !updatedFilterBy;\n\n const { data: cardData = {}, error: cardsError } = useQuery(action, {\n variables,\n fetchPolicy: useRandomSort ? 'cache-and-network' : 'cache-first',\n skip: shouldReturn(\n hasNoFiltersOrItemsToDisplay,\n _loading,\n _load,\n schemaLoading,\n _error,\n _err,\n schemaError\n )\n });\n\n const imageIds = updatedItemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n const isLoading = shouldReturn(_loading, _load, schemaLoading, imagesLoading);\n const hasError = shouldReturn(_error, _err, schemaError);\n\n if (hasNoFiltersOrItemsToDisplay) return null;\n if (isLoading) return null;\n if (hasError) return null;\n if (cardsError) return cardsError.message;\n let { results: cardDataResults } = cardData[SEARCH_PUBLISHED_CONTENT] || {};\n\n if (!cardDataResults || !cardDataResults.length) return null;\n\n cardDataResults = entitySameAsCurrentItemEntity\n ? removeExtraItems(cardDataResults, limit, parentId)\n : cardDataResults;\n if (!cardDataResults.length) return null;\n\n const orderedData =\n useRandomSort || updatedSortProperties.length\n ? cardDataResults\n : sortResponseData(cardDataResults, updatedItemsToDisplay);\n const { regularChildren, gtmChildren } = splitChildren(\n children,\n cardDataResults,\n graphqlEntityMap,\n {\n name: variableProps.name\n }\n );\n const updatedCards = appendImages(imagesData, orderedData, updatedItemsToDisplay);\n\n return (\n <>\n {gtmChildren && renderChildren(gtmChildren)}\n <CardsContainer\n cardData={updatedCards}\n entity={primaryEntityToUse}\n gtmChildren={gtmChildren}\n cardChildren={regularChildren}\n graphqlEntityMap={graphqlEntityMap}\n VariantComponent={VariantComponent}\n {...variableProps}\n />\n </>\n );\n};\n\nCardsRender.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n entity: PropTypes.string.isRequired,\n entityFields: PropTypes.string.isRequired,\n itemsToDisplay: PropTypes.array,\n entities: PropTypes.array,\n VariantComponent: PropTypes.func\n};\n\nCardsRender.defaultProps = {\n children: [],\n itemsToDisplay: [],\n entities: [],\n VariantComponent: null\n};\n\nexport default CardsRender;\n"],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  export { default as getPublishedListingUrl } from './get-published-listing-url';
2
2
  export { default as useDynamicSizeKey } from './use-dynamic-size-key';
3
3
  export { default as getDynamicGridClasses } from './get-dynamic-grid-classes';
4
- export { default as filtersSetup } from './filters-setup';
5
- export { default as filterQuerySetup } from './filter-query-setup';
6
- export { default as shouldReturn } from './should-return';
7
- export { default as shouldSkipSingleQuery } from './should-skip-single-query';
8
- export { default as getUpdatedSortProperties } from './get-updated-sort-properties';
9
- export { default as getUpdatedItemsToDisplay } from './get-updated-items-to-display';
4
+ export { default as filtersSetup } from '../../../helpers/filters-setup';
5
+ export { default as filterQuerySetup } from '../../../helpers/filter-query-setup';
6
+ export { default as shouldReturn } from '../../../helpers/should-return';
7
+ export { default as shouldSkipSingleQuery } from '../../../helpers/should-skip-single-query';
8
+ export { default as getUpdatedSortProperties } from '../../../helpers/get-updated-sort-properties';
9
+ export { default as getUpdatedItemsToDisplay } from '../../../helpers/get-updated-items-to-display';
10
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default","getPublishedListingUrl","useDynamicSizeKey","getDynamicGridClasses","filtersSetup","filterQuerySetup","shouldReturn","shouldSkipSingleQuery","getUpdatedSortProperties","getUpdatedItemsToDisplay"],"sources":["../../../../src/components/Card/helpers/index.js"],"sourcesContent":["export { default as getPublishedListingUrl } from './get-published-listing-url';\nexport { default as useDynamicSizeKey } from './use-dynamic-size-key';\nexport { default as getDynamicGridClasses } from './get-dynamic-grid-classes';\nexport { default as filtersSetup } from './filters-setup';\nexport { default as filterQuerySetup } from './filter-query-setup';\nexport { default as shouldReturn } from './should-return';\nexport { default as shouldSkipSingleQuery } from './should-skip-single-query';\nexport { default as getUpdatedSortProperties } from './get-updated-sort-properties';\nexport { default as getUpdatedItemsToDisplay } from './get-updated-items-to-display';\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,sBAAsB,QAAQ,6BAA6B;AAC/E,SAASD,OAAO,IAAIE,iBAAiB,QAAQ,wBAAwB;AACrE,SAASF,OAAO,IAAIG,qBAAqB,QAAQ,4BAA4B;AAC7E,SAASH,OAAO,IAAII,YAAY,QAAQ,iBAAiB;AACzD,SAASJ,OAAO,IAAIK,gBAAgB,QAAQ,sBAAsB;AAClE,SAASL,OAAO,IAAIM,YAAY,QAAQ,iBAAiB;AACzD,SAASN,OAAO,IAAIO,qBAAqB,QAAQ,4BAA4B;AAC7E,SAASP,OAAO,IAAIQ,wBAAwB,QAAQ,+BAA+B;AACnF,SAASR,OAAO,IAAIS,wBAAwB,QAAQ,gCAAgC"}
1
+ {"version":3,"file":"index.js","names":["default","getPublishedListingUrl","useDynamicSizeKey","getDynamicGridClasses","filtersSetup","filterQuerySetup","shouldReturn","shouldSkipSingleQuery","getUpdatedSortProperties","getUpdatedItemsToDisplay"],"sources":["../../../../src/components/Card/helpers/index.js"],"sourcesContent":["export { default as getPublishedListingUrl } from './get-published-listing-url';\nexport { default as useDynamicSizeKey } from './use-dynamic-size-key';\nexport { default as getDynamicGridClasses } from './get-dynamic-grid-classes';\nexport { default as filtersSetup } from '../../../helpers/filters-setup';\nexport { default as filterQuerySetup } from '../../../helpers/filter-query-setup';\nexport { default as shouldReturn } from '../../../helpers/should-return';\nexport { default as shouldSkipSingleQuery } from '../../../helpers/should-skip-single-query';\nexport { default as getUpdatedSortProperties } from '../../../helpers/get-updated-sort-properties';\nexport { default as getUpdatedItemsToDisplay } from '../../../helpers/get-updated-items-to-display';\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,sBAAsB,QAAQ,6BAA6B;AAC/E,SAASD,OAAO,IAAIE,iBAAiB,QAAQ,wBAAwB;AACrE,SAASF,OAAO,IAAIG,qBAAqB,QAAQ,4BAA4B;AAC7E,SAASH,OAAO,IAAII,YAAY,QAAQ,gCAAgC;AACxE,SAASJ,OAAO,IAAIK,gBAAgB,QAAQ,qCAAqC;AACjF,SAASL,OAAO,IAAIM,YAAY,QAAQ,gCAAgC;AACxE,SAASN,OAAO,IAAIO,qBAAqB,QAAQ,2CAA2C;AAC5F,SAASP,OAAO,IAAIQ,wBAAwB,QAAQ,8CAA8C;AAClG,SAASR,OAAO,IAAIS,wBAAwB,QAAQ,+CAA+C"}
@@ -3,6 +3,7 @@ import PropTypes from 'prop-types';
3
3
  import { useGetImages } from '../../../hooks';
4
4
  import { getImageData } from '../../../utils';
5
5
  import LazyImage from '../../LazyImage';
6
+ import { CAROUSEL_DEFAULT_ALT } from './constants';
6
7
  const CarouselImage = ({
7
8
  imageId,
8
9
  enableLightbox,
@@ -28,6 +29,7 @@ const CarouselImage = ({
28
29
  const {
29
30
  altText
30
31
  } = getImageData({}, imageData);
32
+ const alt = altText || CAROUSEL_DEFAULT_ALT;
31
33
  const handleEnableLightbox = () => {
32
34
  if (!enableLightbox) return;
33
35
  toggleModal();
@@ -37,7 +39,7 @@ const CarouselImage = ({
37
39
  className: "carousel__slide"
38
40
  }, loading ? /*#__PURE__*/React.createElement("div", null) : /*#__PURE__*/React.createElement(LazyImage, {
39
41
  src: imageUrl,
40
- alt: altText,
42
+ alt: alt,
41
43
  sizeKey: "carousel",
42
44
  onClick: handleEnableLightbox,
43
45
  role: "button",
@@ -1 +1 @@
1
- {"version":3,"file":"CarouselImage.js","names":["React","PropTypes","useGetImages","getImageData","LazyImage","CarouselImage","imageId","enableLightbox","toggleModal","handleSelectedImage","priority","data","loading","error","message","url","imageUrl","imageData","getFile","altText","handleEnableLightbox","createElement","className","src","alt","sizeKey","onClick","role","propTypes","string","isRequired","bool","func"],"sources":["../../../../src/components/Carousel/CarouselImage/CarouselImage.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useGetImages } from '../../../hooks';\nimport { getImageData } from '../../../utils';\nimport LazyImage from '../../LazyImage';\n\nconst CarouselImage = ({ imageId, enableLightbox, toggleModal, handleSelectedImage, priority }) => {\n const { data, loading, error } = useGetImages(imageId);\n\n if (error) return error.message;\n\n const { url: imageUrl = '', data: imageData = {} } = data.getFile || {\n getFile: { url: '', data: {} }\n };\n\n const { altText } = getImageData({}, imageData);\n\n const handleEnableLightbox = () => {\n if (!enableLightbox) return;\n toggleModal();\n handleSelectedImage(imageId);\n };\n\n return (\n <div className=\"carousel__slide\">\n {loading ? (\n <div />\n ) : (\n <LazyImage\n src={imageUrl}\n alt={altText}\n sizeKey=\"carousel\"\n onClick={handleEnableLightbox}\n role=\"button\"\n aria-label=\"View Image\"\n priority={priority}\n />\n )}\n </div>\n );\n};\n\nCarouselImage.propTypes = {\n imageId: PropTypes.string.isRequired,\n enableLightbox: PropTypes.bool.isRequired,\n toggleModal: PropTypes.func.isRequired,\n handleSelectedImage: PropTypes.func.isRequired,\n priority: PropTypes.bool.isRequired\n};\n\nexport default CarouselImage;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,OAAOC,SAAS,MAAM,iBAAiB;AAEvC,MAAMC,aAAa,GAAGA,CAAC;EAAEC,OAAO;EAAEC,cAAc;EAAEC,WAAW;EAAEC,mBAAmB;EAAEC;AAAS,CAAC,KAAK;EACjG,MAAM;IAAEC,IAAI;IAAEC,OAAO;IAAEC;EAAM,CAAC,GAAGX,YAAY,CAACI,OAAO,CAAC;EAEtD,IAAIO,KAAK,EAAE,OAAOA,KAAK,CAACC,OAAO;EAE/B,MAAM;IAAEC,GAAG,EAAEC,QAAQ,GAAG,EAAE;IAAEL,IAAI,EAAEM,SAAS,GAAG,CAAC;EAAE,CAAC,GAAGN,IAAI,CAACO,OAAO,IAAI;IACnEA,OAAO,EAAE;MAAEH,GAAG,EAAE,EAAE;MAAEJ,IAAI,EAAE,CAAC;IAAE;EAC/B,CAAC;EAED,MAAM;IAAEQ;EAAQ,CAAC,GAAGhB,YAAY,CAAC,CAAC,CAAC,EAAEc,SAAS,CAAC;EAE/C,MAAMG,oBAAoB,GAAGA,CAAA,KAAM;IACjC,IAAI,CAACb,cAAc,EAAE;IACrBC,WAAW,CAAC,CAAC;IACbC,mBAAmB,CAACH,OAAO,CAAC;EAC9B,CAAC;EAED,oBACEN,KAAA,CAAAqB,aAAA;IAAKC,SAAS,EAAC;EAAiB,GAC7BV,OAAO,gBACNZ,KAAA,CAAAqB,aAAA,YAAM,CAAC,gBAEPrB,KAAA,CAAAqB,aAAA,CAACjB,SAAS;IACRmB,GAAG,EAAEP,QAAS;IACdQ,GAAG,EAAEL,OAAQ;IACbM,OAAO,EAAC,UAAU;IAClBC,OAAO,EAAEN,oBAAqB;IAC9BO,IAAI,EAAC,QAAQ;IACb,cAAW,YAAY;IACvBjB,QAAQ,EAAEA;EAAS,CACpB,CAEA,CAAC;AAEV,CAAC;AAEDL,aAAa,CAACuB,SAAS,GAAG;EACxBtB,OAAO,EAAEL,SAAS,CAAC4B,MAAM,CAACC,UAAU;EACpCvB,cAAc,EAAEN,SAAS,CAAC8B,IAAI,CAACD,UAAU;EACzCtB,WAAW,EAAEP,SAAS,CAAC+B,IAAI,CAACF,UAAU;EACtCrB,mBAAmB,EAAER,SAAS,CAAC+B,IAAI,CAACF,UAAU;EAC9CpB,QAAQ,EAAET,SAAS,CAAC8B,IAAI,CAACD;AAC3B,CAAC;AAED,eAAezB,aAAa"}
1
+ {"version":3,"file":"CarouselImage.js","names":["React","PropTypes","useGetImages","getImageData","LazyImage","CAROUSEL_DEFAULT_ALT","CarouselImage","imageId","enableLightbox","toggleModal","handleSelectedImage","priority","data","loading","error","message","url","imageUrl","imageData","getFile","altText","alt","handleEnableLightbox","createElement","className","src","sizeKey","onClick","role","propTypes","string","isRequired","bool","func"],"sources":["../../../../src/components/Carousel/CarouselImage/CarouselImage.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useGetImages } from '../../../hooks';\nimport { getImageData } from '../../../utils';\nimport LazyImage from '../../LazyImage';\nimport { CAROUSEL_DEFAULT_ALT } from './constants';\n\nconst CarouselImage = ({ imageId, enableLightbox, toggleModal, handleSelectedImage, priority }) => {\n const { data, loading, error } = useGetImages(imageId);\n\n if (error) return error.message;\n\n const { url: imageUrl = '', data: imageData = {} } = data.getFile || {\n getFile: { url: '', data: {} }\n };\n\n const { altText } = getImageData({}, imageData);\n const alt = altText || CAROUSEL_DEFAULT_ALT;\n\n const handleEnableLightbox = () => {\n if (!enableLightbox) return;\n toggleModal();\n handleSelectedImage(imageId);\n };\n\n return (\n <div className=\"carousel__slide\">\n {loading ? (\n <div />\n ) : (\n <LazyImage\n src={imageUrl}\n alt={alt}\n sizeKey=\"carousel\"\n onClick={handleEnableLightbox}\n role=\"button\"\n aria-label=\"View Image\"\n priority={priority}\n />\n )}\n </div>\n );\n};\n\nCarouselImage.propTypes = {\n imageId: PropTypes.string.isRequired,\n enableLightbox: PropTypes.bool.isRequired,\n toggleModal: PropTypes.func.isRequired,\n handleSelectedImage: PropTypes.func.isRequired,\n priority: PropTypes.bool.isRequired\n};\n\nexport default CarouselImage;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,OAAOC,SAAS,MAAM,iBAAiB;AACvC,SAASC,oBAAoB,QAAQ,aAAa;AAElD,MAAMC,aAAa,GAAGA,CAAC;EAAEC,OAAO;EAAEC,cAAc;EAAEC,WAAW;EAAEC,mBAAmB;EAAEC;AAAS,CAAC,KAAK;EACjG,MAAM;IAAEC,IAAI;IAAEC,OAAO;IAAEC;EAAM,CAAC,GAAGZ,YAAY,CAACK,OAAO,CAAC;EAEtD,IAAIO,KAAK,EAAE,OAAOA,KAAK,CAACC,OAAO;EAE/B,MAAM;IAAEC,GAAG,EAAEC,QAAQ,GAAG,EAAE;IAAEL,IAAI,EAAEM,SAAS,GAAG,CAAC;EAAE,CAAC,GAAGN,IAAI,CAACO,OAAO,IAAI;IACnEA,OAAO,EAAE;MAAEH,GAAG,EAAE,EAAE;MAAEJ,IAAI,EAAE,CAAC;IAAE;EAC/B,CAAC;EAED,MAAM;IAAEQ;EAAQ,CAAC,GAAGjB,YAAY,CAAC,CAAC,CAAC,EAAEe,SAAS,CAAC;EAC/C,MAAMG,GAAG,GAAGD,OAAO,IAAIf,oBAAoB;EAE3C,MAAMiB,oBAAoB,GAAGA,CAAA,KAAM;IACjC,IAAI,CAACd,cAAc,EAAE;IACrBC,WAAW,CAAC,CAAC;IACbC,mBAAmB,CAACH,OAAO,CAAC;EAC9B,CAAC;EAED,oBACEP,KAAA,CAAAuB,aAAA;IAAKC,SAAS,EAAC;EAAiB,GAC7BX,OAAO,gBACNb,KAAA,CAAAuB,aAAA,YAAM,CAAC,gBAEPvB,KAAA,CAAAuB,aAAA,CAACnB,SAAS;IACRqB,GAAG,EAAER,QAAS;IACdI,GAAG,EAAEA,GAAI;IACTK,OAAO,EAAC,UAAU;IAClBC,OAAO,EAAEL,oBAAqB;IAC9BM,IAAI,EAAC,QAAQ;IACb,cAAW,YAAY;IACvBjB,QAAQ,EAAEA;EAAS,CACpB,CAEA,CAAC;AAEV,CAAC;AAEDL,aAAa,CAACuB,SAAS,GAAG;EACxBtB,OAAO,EAAEN,SAAS,CAAC6B,MAAM,CAACC,UAAU;EACpCvB,cAAc,EAAEP,SAAS,CAAC+B,IAAI,CAACD,UAAU;EACzCtB,WAAW,EAAER,SAAS,CAACgC,IAAI,CAACF,UAAU;EACtCrB,mBAAmB,EAAET,SAAS,CAACgC,IAAI,CAACF,UAAU;EAC9CpB,QAAQ,EAAEV,SAAS,CAAC+B,IAAI,CAACD;AAC3B,CAAC;AAED,eAAezB,aAAa"}
@@ -0,0 +1,2 @@
1
+ export const CAROUSEL_DEFAULT_ALT = 'Carousel image';
2
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","names":["CAROUSEL_DEFAULT_ALT"],"sources":["../../../../src/components/Carousel/CarouselImage/constants.js"],"sourcesContent":["export const CAROUSEL_DEFAULT_ALT = 'Carousel image';\n"],"mappings":"AAAA,OAAO,MAAMA,oBAAoB,GAAG,gBAAgB"}
@@ -95,6 +95,7 @@ const DefaultCarousel = ({
95
95
  }, displayLeft && /*#__PURE__*/React.createElement("button", {
96
96
  type: "button",
97
97
  className: "cards-carousel--button-back icon-button icon",
98
+ "aria-label": "Scroll left",
98
99
  onClick: () => {
99
100
  setShouldAutoScroll(false);
100
101
  handleButtonNavigation();
@@ -106,6 +107,7 @@ const DefaultCarousel = ({
106
107
  }, displayRight && /*#__PURE__*/React.createElement("button", {
107
108
  type: "button",
108
109
  className: "cards-carousel--button-forward icon-button icon",
110
+ "aria-label": "Scroll right",
109
111
  onClick: () => {
110
112
  setShouldAutoScroll(false);
111
113
  handleButtonNavigation(true);
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultCarousel.js","names":["React","useRef","useState","useEffect","PropTypes","DefaultCarousel","children","bannerModifier","itemsPerRow","enableAutoScroll","autoScrollTimer","pauseScrollOnHover","modifier","ref","buttonDisplay","setButtonDisplays","displayLeft","displayRight","shouldAutoScroll","setShouldAutoScroll","autoScrollRef","current","id","setInterval","scrollCheck","clearInterval","handleButtonNavigation","offsetWidth","scrollWidth","handleScroll","scrollLeft","updatedDisplayLeft","updatedDisplayRight","handleMouseEnter","handleMouseLeave","direction","parsedModifier","wrapperClassName","contentClassName","createElement","className","onMouseEnter","onMouseLeave","type","onClick","onScroll","propTypes","string","number","oneOfType","arrayOf","node","bool","defaultProps"],"sources":["../../../src/components/CarouselWrapper/DefaultCarousel.js"],"sourcesContent":["import React, { useRef, useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nconst DefaultCarousel = ({\n children,\n bannerModifier,\n itemsPerRow,\n enableAutoScroll,\n autoScrollTimer,\n pauseScrollOnHover,\n modifier\n}) => {\n const ref = useRef();\n const [buttonDisplay, setButtonDisplays] = useState({ displayLeft: false, displayRight: true });\n const [shouldAutoScroll, setShouldAutoScroll] = useState(false);\n const autoScrollRef = useRef();\n\n useEffect(\n () => {\n autoScrollRef.current = shouldAutoScroll;\n const id = setInterval(scrollCheck, autoScrollTimer);\n function scrollCheck() {\n if (!autoScrollRef.current) {\n clearInterval(id);\n } else {\n handleButtonNavigation(true);\n }\n }\n\n return () => clearInterval(id);\n },\n [autoScrollTimer, shouldAutoScroll]\n );\n\n useEffect(\n () => {\n const {\n current: { offsetWidth, scrollWidth }\n } = ref;\n if (scrollWidth <= offsetWidth) {\n setButtonDisplays({ displayLeft: false, displayRight: false });\n }\n\n setShouldAutoScroll(enableAutoScroll);\n },\n [enableAutoScroll]\n );\n\n const handleScroll = () => {\n const {\n current: { offsetWidth, scrollLeft, scrollWidth }\n } = ref;\n const updatedDisplayLeft = !!scrollLeft;\n const updatedDisplayRight = scrollLeft + offsetWidth + 1 < scrollWidth;\n setButtonDisplays({ displayLeft: updatedDisplayLeft, displayRight: updatedDisplayRight });\n };\n\n const handleMouseEnter = () => {\n if (pauseScrollOnHover) setShouldAutoScroll(false);\n };\n\n const handleMouseLeave = () => {\n if (pauseScrollOnHover) setShouldAutoScroll(true);\n };\n\n const handleButtonNavigation = direction => {\n if (!ref || !ref.current) return;\n const {\n current: { offsetWidth, scrollLeft, scrollWidth }\n } = ref;\n\n if (autoScrollRef.current && scrollLeft + offsetWidth >= scrollWidth) {\n ref.current.scrollLeft = 0;\n } else {\n ref.current.scrollLeft = direction ? scrollLeft + offsetWidth : scrollLeft - offsetWidth;\n }\n };\n\n const { displayLeft, displayRight } = buttonDisplay;\n const parsedModifier = modifier ? ` ${modifier}` : '';\n const wrapperClassName = `cards-carousel${bannerModifier}${parsedModifier}`;\n const contentClassName = `cards-carousel--content items-per-row-${itemsPerRow}`;\n\n return (\n <div\n className={wrapperClassName}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}>\n <div className=\"cards-carousel--left-button-wrapper\">\n {displayLeft && (\n <button\n type=\"button\"\n className=\"cards-carousel--button-back icon-button icon\"\n onClick={() => {\n setShouldAutoScroll(false);\n handleButtonNavigation();\n }}>\n <i className=\"cards-carousel--arrow cards-carousel--arrow__left\" />\n </button>\n )}\n </div>\n\n <div className=\"cards-carousel--right-button-wrapper\">\n {displayRight && (\n <button\n type=\"button\"\n className=\"cards-carousel--button-forward icon-button icon\"\n onClick={() => {\n setShouldAutoScroll(false);\n handleButtonNavigation(true);\n }}>\n <i className=\"cards-carousel--arrow cards-carousel--arrow__right\" />\n </button>\n )}\n </div>\n\n <div className={contentClassName} ref={ref} onScroll={handleScroll}>\n {children}\n </div>\n </div>\n );\n};\n\nDefaultCarousel.propTypes = {\n bannerModifier: PropTypes.string,\n itemsPerRow: PropTypes.number,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n enableAutoScroll: PropTypes.bool,\n pauseScrollOnHover: PropTypes.bool,\n autoScrollTimer: PropTypes.number\n};\n\nDefaultCarousel.defaultProps = {\n itemsPerRow: 0,\n bannerModifier: '',\n children: [],\n enableAutoScroll: false,\n pauseScrollOnHover: false,\n autoScrollTimer: 0\n};\n\nexport default DefaultCarousel;\n"],"mappings":"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"}
1
+ {"version":3,"file":"DefaultCarousel.js","names":["React","useRef","useState","useEffect","PropTypes","DefaultCarousel","children","bannerModifier","itemsPerRow","enableAutoScroll","autoScrollTimer","pauseScrollOnHover","modifier","ref","buttonDisplay","setButtonDisplays","displayLeft","displayRight","shouldAutoScroll","setShouldAutoScroll","autoScrollRef","current","id","setInterval","scrollCheck","clearInterval","handleButtonNavigation","offsetWidth","scrollWidth","handleScroll","scrollLeft","updatedDisplayLeft","updatedDisplayRight","handleMouseEnter","handleMouseLeave","direction","parsedModifier","wrapperClassName","contentClassName","createElement","className","onMouseEnter","onMouseLeave","type","onClick","onScroll","propTypes","string","number","oneOfType","arrayOf","node","bool","defaultProps"],"sources":["../../../src/components/CarouselWrapper/DefaultCarousel.js"],"sourcesContent":["import React, { useRef, useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nconst DefaultCarousel = ({\n children,\n bannerModifier,\n itemsPerRow,\n enableAutoScroll,\n autoScrollTimer,\n pauseScrollOnHover,\n modifier\n}) => {\n const ref = useRef();\n const [buttonDisplay, setButtonDisplays] = useState({ displayLeft: false, displayRight: true });\n const [shouldAutoScroll, setShouldAutoScroll] = useState(false);\n const autoScrollRef = useRef();\n\n useEffect(\n () => {\n autoScrollRef.current = shouldAutoScroll;\n const id = setInterval(scrollCheck, autoScrollTimer);\n function scrollCheck() {\n if (!autoScrollRef.current) {\n clearInterval(id);\n } else {\n handleButtonNavigation(true);\n }\n }\n\n return () => clearInterval(id);\n },\n [autoScrollTimer, shouldAutoScroll]\n );\n\n useEffect(\n () => {\n const {\n current: { offsetWidth, scrollWidth }\n } = ref;\n if (scrollWidth <= offsetWidth) {\n setButtonDisplays({ displayLeft: false, displayRight: false });\n }\n\n setShouldAutoScroll(enableAutoScroll);\n },\n [enableAutoScroll]\n );\n\n const handleScroll = () => {\n const {\n current: { offsetWidth, scrollLeft, scrollWidth }\n } = ref;\n const updatedDisplayLeft = !!scrollLeft;\n const updatedDisplayRight = scrollLeft + offsetWidth + 1 < scrollWidth;\n setButtonDisplays({ displayLeft: updatedDisplayLeft, displayRight: updatedDisplayRight });\n };\n\n const handleMouseEnter = () => {\n if (pauseScrollOnHover) setShouldAutoScroll(false);\n };\n\n const handleMouseLeave = () => {\n if (pauseScrollOnHover) setShouldAutoScroll(true);\n };\n\n const handleButtonNavigation = direction => {\n if (!ref || !ref.current) return;\n const {\n current: { offsetWidth, scrollLeft, scrollWidth }\n } = ref;\n\n if (autoScrollRef.current && scrollLeft + offsetWidth >= scrollWidth) {\n ref.current.scrollLeft = 0;\n } else {\n ref.current.scrollLeft = direction ? scrollLeft + offsetWidth : scrollLeft - offsetWidth;\n }\n };\n\n const { displayLeft, displayRight } = buttonDisplay;\n const parsedModifier = modifier ? ` ${modifier}` : '';\n const wrapperClassName = `cards-carousel${bannerModifier}${parsedModifier}`;\n const contentClassName = `cards-carousel--content items-per-row-${itemsPerRow}`;\n\n return (\n <div\n className={wrapperClassName}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}>\n <div className=\"cards-carousel--left-button-wrapper\">\n {displayLeft && (\n <button\n type=\"button\"\n className=\"cards-carousel--button-back icon-button icon\"\n aria-label=\"Scroll left\"\n onClick={() => {\n setShouldAutoScroll(false);\n handleButtonNavigation();\n }}>\n <i className=\"cards-carousel--arrow cards-carousel--arrow__left\" />\n </button>\n )}\n </div>\n\n <div className=\"cards-carousel--right-button-wrapper\">\n {displayRight && (\n <button\n type=\"button\"\n className=\"cards-carousel--button-forward icon-button icon\"\n aria-label=\"Scroll right\"\n onClick={() => {\n setShouldAutoScroll(false);\n handleButtonNavigation(true);\n }}>\n <i className=\"cards-carousel--arrow cards-carousel--arrow__right\" />\n </button>\n )}\n </div>\n\n <div className={contentClassName} ref={ref} onScroll={handleScroll}>\n {children}\n </div>\n </div>\n );\n};\n\nDefaultCarousel.propTypes = {\n bannerModifier: PropTypes.string,\n itemsPerRow: PropTypes.number,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n enableAutoScroll: PropTypes.bool,\n pauseScrollOnHover: PropTypes.bool,\n autoScrollTimer: PropTypes.number\n};\n\nDefaultCarousel.defaultProps = {\n itemsPerRow: 0,\n bannerModifier: '',\n children: [],\n enableAutoScroll: false,\n pauseScrollOnHover: false,\n autoScrollTimer: 0\n};\n\nexport default DefaultCarousel;\n"],"mappings":"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"}
@@ -33,7 +33,6 @@ const ContentGroupTabs = ({
33
33
  }, groupSections.map((_, index) => {
34
34
  const [sectionName, sectioLabel] = sectionsData[index];
35
35
  const tabId = `${TAB}-${sectionName}`;
36
- const panelId = `${PANEL}-${sectionName}`;
37
36
  const isSelected = selectedTab === tabId;
38
37
  const buttonClassName = `${CONTENT_GROUP}-${contentClassame}__button${isSelected ? '--is-active' : ''}`;
39
38
  return /*#__PURE__*/React.createElement("button", {
@@ -43,7 +42,7 @@ const ContentGroupTabs = ({
43
42
  type: "button",
44
43
  role: "tab",
45
44
  "aria-selected": isSelected,
46
- "aria-controls": panelId,
45
+ "aria-controls": sectionName,
47
46
  onClick: () => {
48
47
  const baseUrl = asPath.split('#')[0];
49
48
  const newUrl = `${baseUrl}#${sectionName}`;
@@ -1 +1 @@
1
- {"version":3,"file":"ContentGroupTabs.js","names":["React","useState","useEffect","PropTypes","useRouter","getActiveTab","TAB","TABS","SIDEPANEL","CONTENT_GROUP","PANEL","ContentGroupTabs","name","contentType","groupSections","sectionsData","VariantComponent","router","selectedTab","setSelectedTab","asPath","contentClassame","mainDivClass","contentGroupClass","sectionClass","activeTab","WrapperComponent","createElement","className","role","map","_","index","sectionName","sectioLabel","tabId","panelId","isSelected","buttonClassName","id","key","type","onClick","baseUrl","split","newUrl","push","shallow","groupSection","propTypes","string","isRequired","array","func","defaultProps"],"sources":["../../../src/components/ContentGroup/ContentGroupTabs.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { getActiveTab } from './helpers';\nimport { TAB, TABS, SIDEPANEL, CONTENT_GROUP, PANEL } from './constants';\n\nconst ContentGroupTabs = ({ name, contentType, groupSections, sectionsData, VariantComponent }) => {\n const router = useRouter();\n const [selectedTab, setSelectedTab] = useState(getActiveTab(sectionsData, ''));\n const { asPath } = router;\n const contentClassame = contentType === TAB ? TABS : SIDEPANEL;\n const mainDivClass = `${CONTENT_GROUP}-${contentClassame}`;\n const contentGroupClass = `${CONTENT_GROUP}-${contentClassame}__buttons-wrapper`;\n const sectionClass = `${CONTENT_GROUP}-${contentClassame}__content-section`;\n\n useEffect(\n () => {\n const activeTab = getActiveTab(sectionsData, asPath);\n if (activeTab !== selectedTab) setSelectedTab(activeTab);\n },\n [asPath, sectionsData, selectedTab]\n );\n\n const WrapperComponent = VariantComponent || 'div';\n\n return (\n <div className={mainDivClass}>\n <ul className={contentGroupClass} role=\"tablist\" aria-label={name}>\n {groupSections.map((_, index) => {\n const [sectionName, sectioLabel] = sectionsData[index];\n const tabId = `${TAB}-${sectionName}`;\n const panelId = `${PANEL}-${sectionName}`;\n const isSelected = selectedTab === tabId;\n const buttonClassName = `${CONTENT_GROUP}-${contentClassame}__button${\n isSelected ? '--is-active' : ''\n }`;\n\n return (\n <button\n id={tabId}\n key={tabId}\n className={buttonClassName}\n type=\"button\"\n role=\"tab\"\n aria-selected={isSelected}\n aria-controls={panelId}\n onClick={() => {\n const baseUrl = asPath.split('#')[0];\n const newUrl = `${baseUrl}#${sectionName}`;\n if (asPath === newUrl) return;\n router.push(`/Resolver`, newUrl, { shallow: true });\n setSelectedTab(tabId);\n }}>\n {sectioLabel}\n </button>\n );\n })}\n </ul>\n {groupSections.map((groupSection, index) => {\n const [sectionName] = sectionsData[index];\n const tabId = `${TAB}-${sectionName}`;\n const panelId = `${PANEL}-${sectionName}`;\n if (selectedTab !== tabId) return null;\n\n return (\n <WrapperComponent\n key={panelId}\n id={sectionName}\n className={sectionClass}\n role=\"tabpanel\"\n tabId={tabId}\n aria-labelledby={tabId}>\n {groupSection}\n </WrapperComponent>\n );\n })}\n </div>\n );\n};\n\nContentGroupTabs.propTypes = {\n name: PropTypes.string.isRequired,\n contentType: PropTypes.string.isRequired,\n groupSections: PropTypes.array.isRequired,\n sectionsData: PropTypes.array.isRequired,\n VariantComponent: PropTypes.func\n};\n\nContentGroupTabs.defaultProps = {\n VariantComponent: null\n};\n\nexport default ContentGroupTabs;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,EAAEC,SAAS,QAAQ,OAAO;AAClD,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,YAAY,QAAQ,WAAW;AACxC,SAASC,GAAG,EAAEC,IAAI,EAAEC,SAAS,EAAEC,aAAa,EAAEC,KAAK,QAAQ,aAAa;AAExE,MAAMC,gBAAgB,GAAGA,CAAC;EAAEC,IAAI;EAAEC,WAAW;EAAEC,aAAa;EAAEC,YAAY;EAAEC;AAAiB,CAAC,KAAK;EACjG,MAAMC,MAAM,GAAGb,SAAS,CAAC,CAAC;EAC1B,MAAM,CAACc,WAAW,EAAEC,cAAc,CAAC,GAAGlB,QAAQ,CAACI,YAAY,CAACU,YAAY,EAAE,EAAE,CAAC,CAAC;EAC9E,MAAM;IAAEK;EAAO,CAAC,GAAGH,MAAM;EACzB,MAAMI,eAAe,GAAGR,WAAW,KAAKP,GAAG,GAAGC,IAAI,GAAGC,SAAS;EAC9D,MAAMc,YAAY,GAAI,GAAEb,aAAc,IAAGY,eAAgB,EAAC;EAC1D,MAAME,iBAAiB,GAAI,GAAEd,aAAc,IAAGY,eAAgB,mBAAkB;EAChF,MAAMG,YAAY,GAAI,GAAEf,aAAc,IAAGY,eAAgB,mBAAkB;EAE3EnB,SAAS,CACP,MAAM;IACJ,MAAMuB,SAAS,GAAGpB,YAAY,CAACU,YAAY,EAAEK,MAAM,CAAC;IACpD,IAAIK,SAAS,KAAKP,WAAW,EAAEC,cAAc,CAACM,SAAS,CAAC;EAC1D,CAAC,EACD,CAACL,MAAM,EAAEL,YAAY,EAAEG,WAAW,CACpC,CAAC;EAED,MAAMQ,gBAAgB,GAAGV,gBAAgB,IAAI,KAAK;EAElD,oBACEhB,KAAA,CAAA2B,aAAA;IAAKC,SAAS,EAAEN;EAAa,gBAC3BtB,KAAA,CAAA2B,aAAA;IAAIC,SAAS,EAAEL,iBAAkB;IAACM,IAAI,EAAC,SAAS;IAAC,cAAYjB;EAAK,GAC/DE,aAAa,CAACgB,GAAG,CAAC,CAACC,CAAC,EAAEC,KAAK,KAAK;IAC/B,MAAM,CAACC,WAAW,EAAEC,WAAW,CAAC,GAAGnB,YAAY,CAACiB,KAAK,CAAC;IACtD,MAAMG,KAAK,GAAI,GAAE7B,GAAI,IAAG2B,WAAY,EAAC;IACrC,MAAMG,OAAO,GAAI,GAAE1B,KAAM,IAAGuB,WAAY,EAAC;IACzC,MAAMI,UAAU,GAAGnB,WAAW,KAAKiB,KAAK;IACxC,MAAMG,eAAe,GAAI,GAAE7B,aAAc,IAAGY,eAAgB,WAC1DgB,UAAU,GAAG,aAAa,GAAG,EAC9B,EAAC;IAEF,oBACErC,KAAA,CAAA2B,aAAA;MACEY,EAAE,EAAEJ,KAAM;MACVK,GAAG,EAAEL,KAAM;MACXP,SAAS,EAAEU,eAAgB;MAC3BG,IAAI,EAAC,QAAQ;MACbZ,IAAI,EAAC,KAAK;MACV,iBAAeQ,UAAW;MAC1B,iBAAeD,OAAQ;MACvBM,OAAO,EAAEA,CAAA,KAAM;QACb,MAAMC,OAAO,GAAGvB,MAAM,CAACwB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACpC,MAAMC,MAAM,GAAI,GAAEF,OAAQ,IAAGV,WAAY,EAAC;QAC1C,IAAIb,MAAM,KAAKyB,MAAM,EAAE;QACvB5B,MAAM,CAAC6B,IAAI,CAAE,WAAU,EAAED,MAAM,EAAE;UAAEE,OAAO,EAAE;QAAK,CAAC,CAAC;QACnD5B,cAAc,CAACgB,KAAK,CAAC;MACvB;IAAE,GACDD,WACK,CAAC;EAEb,CAAC,CACC,CAAC,EACJpB,aAAa,CAACgB,GAAG,CAAC,CAACkB,YAAY,EAAEhB,KAAK,KAAK;IAC1C,MAAM,CAACC,WAAW,CAAC,GAAGlB,YAAY,CAACiB,KAAK,CAAC;IACzC,MAAMG,KAAK,GAAI,GAAE7B,GAAI,IAAG2B,WAAY,EAAC;IACrC,MAAMG,OAAO,GAAI,GAAE1B,KAAM,IAAGuB,WAAY,EAAC;IACzC,IAAIf,WAAW,KAAKiB,KAAK,EAAE,OAAO,IAAI;IAEtC,oBACEnC,KAAA,CAAA2B,aAAA,CAACD,gBAAgB;MACfc,GAAG,EAAEJ,OAAQ;MACbG,EAAE,EAAEN,WAAY;MAChBL,SAAS,EAAEJ,YAAa;MACxBK,IAAI,EAAC,UAAU;MACfM,KAAK,EAAEA,KAAM;MACb,mBAAiBA;IAAM,GACtBa,YACe,CAAC;EAEvB,CAAC,CACE,CAAC;AAEV,CAAC;AAEDrC,gBAAgB,CAACsC,SAAS,GAAG;EAC3BrC,IAAI,EAAET,SAAS,CAAC+C,MAAM,CAACC,UAAU;EACjCtC,WAAW,EAAEV,SAAS,CAAC+C,MAAM,CAACC,UAAU;EACxCrC,aAAa,EAAEX,SAAS,CAACiD,KAAK,CAACD,UAAU;EACzCpC,YAAY,EAAEZ,SAAS,CAACiD,KAAK,CAACD,UAAU;EACxCnC,gBAAgB,EAAEb,SAAS,CAACkD;AAC9B,CAAC;AAED1C,gBAAgB,CAAC2C,YAAY,GAAG;EAC9BtC,gBAAgB,EAAE;AACpB,CAAC;AAED,eAAeL,gBAAgB"}
1
+ {"version":3,"file":"ContentGroupTabs.js","names":["React","useState","useEffect","PropTypes","useRouter","getActiveTab","TAB","TABS","SIDEPANEL","CONTENT_GROUP","PANEL","ContentGroupTabs","name","contentType","groupSections","sectionsData","VariantComponent","router","selectedTab","setSelectedTab","asPath","contentClassame","mainDivClass","contentGroupClass","sectionClass","activeTab","WrapperComponent","createElement","className","role","map","_","index","sectionName","sectioLabel","tabId","isSelected","buttonClassName","id","key","type","onClick","baseUrl","split","newUrl","push","shallow","groupSection","panelId","propTypes","string","isRequired","array","func","defaultProps"],"sources":["../../../src/components/ContentGroup/ContentGroupTabs.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { getActiveTab } from './helpers';\nimport { TAB, TABS, SIDEPANEL, CONTENT_GROUP, PANEL } from './constants';\n\nconst ContentGroupTabs = ({ name, contentType, groupSections, sectionsData, VariantComponent }) => {\n const router = useRouter();\n const [selectedTab, setSelectedTab] = useState(getActiveTab(sectionsData, ''));\n const { asPath } = router;\n const contentClassame = contentType === TAB ? TABS : SIDEPANEL;\n const mainDivClass = `${CONTENT_GROUP}-${contentClassame}`;\n const contentGroupClass = `${CONTENT_GROUP}-${contentClassame}__buttons-wrapper`;\n const sectionClass = `${CONTENT_GROUP}-${contentClassame}__content-section`;\n\n useEffect(\n () => {\n const activeTab = getActiveTab(sectionsData, asPath);\n if (activeTab !== selectedTab) setSelectedTab(activeTab);\n },\n [asPath, sectionsData, selectedTab]\n );\n\n const WrapperComponent = VariantComponent || 'div';\n\n return (\n <div className={mainDivClass}>\n <ul className={contentGroupClass} role=\"tablist\" aria-label={name}>\n {groupSections.map((_, index) => {\n const [sectionName, sectioLabel] = sectionsData[index];\n const tabId = `${TAB}-${sectionName}`;\n const isSelected = selectedTab === tabId;\n const buttonClassName = `${CONTENT_GROUP}-${contentClassame}__button${\n isSelected ? '--is-active' : ''\n }`;\n return (\n <button\n id={tabId}\n key={tabId}\n className={buttonClassName}\n type=\"button\"\n role=\"tab\"\n aria-selected={isSelected}\n aria-controls={sectionName}\n onClick={() => {\n const baseUrl = asPath.split('#')[0];\n const newUrl = `${baseUrl}#${sectionName}`;\n if (asPath === newUrl) return;\n router.push(`/Resolver`, newUrl, { shallow: true });\n setSelectedTab(tabId);\n }}>\n {sectioLabel}\n </button>\n );\n })}\n </ul>\n {groupSections.map((groupSection, index) => {\n const [sectionName] = sectionsData[index];\n const tabId = `${TAB}-${sectionName}`;\n const panelId = `${PANEL}-${sectionName}`;\n if (selectedTab !== tabId) return null;\n\n return (\n <WrapperComponent\n key={panelId}\n id={sectionName}\n className={sectionClass}\n role=\"tabpanel\"\n tabId={tabId}\n aria-labelledby={tabId}>\n {groupSection}\n </WrapperComponent>\n );\n })}\n </div>\n );\n};\n\nContentGroupTabs.propTypes = {\n name: PropTypes.string.isRequired,\n contentType: PropTypes.string.isRequired,\n groupSections: PropTypes.array.isRequired,\n sectionsData: PropTypes.array.isRequired,\n VariantComponent: PropTypes.func\n};\n\nContentGroupTabs.defaultProps = {\n VariantComponent: null\n};\n\nexport default ContentGroupTabs;\n"],"mappings":"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"}
@@ -61,7 +61,7 @@ const GlobalLightbox = ({
61
61
  value: caption
62
62
  });
63
63
 
64
- // depreciated: imageCredits is depreciated. This code is to handle legacy data. check before changing/removing
64
+ // deprecated: imageCredits is deprecated. This code is to handle legacy data. check before changing/removing
65
65
  const shouldDisplayCredits = shouldShowProperty({
66
66
  isDisplayed: areImageCreditsDisplayed,
67
67
  value: credits || imageCredits
@@ -110,7 +110,7 @@ const GlobalLightbox = ({
110
110
  handleAction: handlePrevious,
111
111
  show: showPrevious,
112
112
  modifier: "previous",
113
- "aria-label": "Previous Image"
113
+ ariaLabel: "Previous Image"
114
114
  }), /*#__PURE__*/React.createElement("div", {
115
115
  className: "slider slider--gallery"
116
116
  }, /*#__PURE__*/React.createElement("div", {
@@ -130,7 +130,7 @@ const GlobalLightbox = ({
130
130
  sizeKey: "globalLightbox",
131
131
  "data-testid": "globalLightboxImage"
132
132
  })))))), /*#__PURE__*/React.createElement(NavButton, {
133
- "aria-label": "Next Image",
133
+ ariaLabel: "Next Image",
134
134
  handleAction: handleNext,
135
135
  show: showNext,
136
136
  modifier: "next"
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalLightbox.js","names":["React","useState","Fragment","PropTypes","ResponsiveImage","FaTimes","BlazeLink","ImageDetails","NavButton","getImageData","useGetImages","shouldShowProperty","GlobalLightbox","images","onClose","selectedImage","metaTitle","parentName","index","setIndex","currentImage","imageId","url","name","enableLightbox","isCaptionDisplayed","areImageCreditsDisplayed","imageCredits","credits","otherProps","_objectWithoutProperties","_excluded","data","loading","error","message","imageUrl","imageData","getFile","urlProps","href","title","imgWrapperProps","caption","altText","shouldDisplayCaption","isDisplayed","value","shouldDisplayCredits","navigate","position","newPosition","handlePrevious","handleNext","handleClose","showNext","length","showPrevious","imageCounter","createElement","className","role","onClick","handleAction","show","modifier","Object","keys","src","alt","sizeKey","propTypes","arrayOf","shape","string","func","isRequired","number","defaultProps"],"sources":["../../../../src/components/Image/GlobalLightbox/GlobalLightbox.js"],"sourcesContent":["import React, { useState, Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport { ResponsiveImage } from '@blaze-cms/image-cdn-react';\nimport { FaTimes } from 'react-icons/fa';\nimport BlazeLink from '../../BlazeLink';\nimport ImageDetails from '../ImageDetails';\nimport NavButton from './NavButton';\nimport getImageData from '../../../utils/get-image-data';\nimport useGetImages from '../../../hooks/use-get-images';\nimport { shouldShowProperty } from '../../../helpers';\n\nconst GlobalLightbox = ({ images, onClose, selectedImage, metaTitle, parentName }) => {\n const [index, setIndex] = useState(selectedImage);\n\n const currentImage = images[index] || {};\n\n const {\n imageId,\n url,\n name,\n enableLightbox,\n isCaptionDisplayed,\n areImageCreditsDisplayed,\n imageCredits,\n credits,\n ...otherProps\n } = currentImage;\n\n const { data, loading, error } = useGetImages(imageId);\n\n if (error) {\n return error.message;\n }\n\n const { url: imageUrl = '', data: imageData = {} } = data.getFile || {\n getFile: { url: '', data: {} }\n };\n\n const urlProps = { href: url, title: name };\n const imgWrapperProps = url ? urlProps : {};\n\n const { caption, altText } = getImageData(otherProps, imageData);\n\n const shouldDisplayCaption = shouldShowProperty({\n isDisplayed: isCaptionDisplayed,\n value: caption\n });\n\n // depreciated: imageCredits is depreciated. This code is to handle legacy data. check before changing/removing\n const shouldDisplayCredits = shouldShowProperty({\n isDisplayed: areImageCreditsDisplayed,\n value: credits || imageCredits\n });\n\n const navigate = position => {\n const newPosition = index + position;\n if (images[newPosition]) {\n setIndex(newPosition);\n }\n };\n\n const handlePrevious = () => navigate(-1);\n const handleNext = () => navigate(1);\n const handleClose = () => onClose();\n\n const showNext = index !== images.length - 1;\n const showPrevious = !!index;\n\n const imageCounter = `${index + 1} of ${images.length}`;\n\n return (\n <>\n {!!images.length && (\n <div>\n <div className=\"overlay\" />\n <div className=\"modal modal--full-screen modal--gallery modal--show\">\n <header className=\"modal__header modal__header--gallery\">\n <div className=\"modal__title modal__title--gallery\">\n {parentName || metaTitle || name}\n </div>\n <div\n role=\"button\"\n className=\"modal__close\"\n onClick={handleClose}\n aria-label=\"Close modal\">\n <i>\n <FaTimes />\n </i>\n </div>\n </header>\n <div className=\"modal__content modal__content--gallery\">\n <div className=\"gallery\">\n <div className=\"gallery__column gallery__column--slider\">\n <div className=\"gallery__slider\">\n <div className=\"slider__wrapper slider__wrapper--gallery open\">\n <div className=\"slider__header slider__header--gallery\">\n <div\n className=\"slider__counter slider__counter--gallery\"\n data-testid=\"image-counter\">\n {imageCounter}\n </div>\n </div>\n\n <NavButton\n handleAction={handlePrevious}\n show={showPrevious}\n modifier=\"previous\"\n aria-label=\"Previous Image\"\n />\n\n <div className=\"slider slider--gallery\">\n <div className=\"slider__list slider__list--gallery\">\n <div className=\"slider__list-wrapper slider__list-wrapper--gallery\">\n <div className=\"slider__slide slider__slide--gallery\">\n {loading && <div />}\n {Object.keys(imgWrapperProps).length ? (\n <BlazeLink {...imgWrapperProps}>\n <ResponsiveImage\n src={imageUrl}\n alt={altText}\n sizeKey=\"globalLightbox\"\n data-testid=\"globalLightboxImage\"\n />\n </BlazeLink>\n ) : (\n <Fragment>\n <ResponsiveImage\n src={imageUrl}\n alt={altText}\n sizeKey=\"globalLightbox\"\n data-testid=\"globalLightboxImage\"\n />\n </Fragment>\n )}\n </div>\n </div>\n </div>\n </div>\n\n <NavButton\n aria-label=\"Next Image\"\n handleAction={handleNext}\n show={showNext}\n modifier=\"next\"\n />\n </div>\n {(shouldDisplayCaption || shouldDisplayCredits) && (\n <ImageDetails\n caption={caption}\n credits={credits || imageCredits}\n shouldDisplayCaption={shouldDisplayCaption}\n shouldDisplayCredits={shouldDisplayCredits}\n />\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n )}\n </>\n );\n};\n\nGlobalLightbox.propTypes = {\n images: PropTypes.arrayOf(\n PropTypes.shape({\n url: PropTypes.string,\n imageId: PropTypes.string\n })\n ),\n metaTitle: PropTypes.string,\n onClose: PropTypes.func.isRequired,\n selectedImage: PropTypes.number,\n parentName: PropTypes.string\n};\n\nGlobalLightbox.defaultProps = {\n metaTitle: '',\n images: [],\n selectedImage: 0,\n parentName: ''\n};\n\nexport default GlobalLightbox;\n"],"mappings":"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"}
1
+ {"version":3,"file":"GlobalLightbox.js","names":["React","useState","Fragment","PropTypes","ResponsiveImage","FaTimes","BlazeLink","ImageDetails","NavButton","getImageData","useGetImages","shouldShowProperty","GlobalLightbox","images","onClose","selectedImage","metaTitle","parentName","index","setIndex","currentImage","imageId","url","name","enableLightbox","isCaptionDisplayed","areImageCreditsDisplayed","imageCredits","credits","otherProps","_objectWithoutProperties","_excluded","data","loading","error","message","imageUrl","imageData","getFile","urlProps","href","title","imgWrapperProps","caption","altText","shouldDisplayCaption","isDisplayed","value","shouldDisplayCredits","navigate","position","newPosition","handlePrevious","handleNext","handleClose","showNext","length","showPrevious","imageCounter","createElement","className","role","onClick","handleAction","show","modifier","ariaLabel","Object","keys","src","alt","sizeKey","propTypes","arrayOf","shape","string","func","isRequired","number","defaultProps"],"sources":["../../../../src/components/Image/GlobalLightbox/GlobalLightbox.js"],"sourcesContent":["import React, { useState, Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport { ResponsiveImage } from '@blaze-cms/image-cdn-react';\nimport { FaTimes } from 'react-icons/fa';\nimport BlazeLink from '../../BlazeLink';\nimport ImageDetails from '../ImageDetails';\nimport NavButton from './NavButton';\nimport getImageData from '../../../utils/get-image-data';\nimport useGetImages from '../../../hooks/use-get-images';\nimport { shouldShowProperty } from '../../../helpers';\n\nconst GlobalLightbox = ({ images, onClose, selectedImage, metaTitle, parentName }) => {\n const [index, setIndex] = useState(selectedImage);\n\n const currentImage = images[index] || {};\n\n const {\n imageId,\n url,\n name,\n enableLightbox,\n isCaptionDisplayed,\n areImageCreditsDisplayed,\n imageCredits,\n credits,\n ...otherProps\n } = currentImage;\n\n const { data, loading, error } = useGetImages(imageId);\n\n if (error) {\n return error.message;\n }\n\n const { url: imageUrl = '', data: imageData = {} } = data.getFile || {\n getFile: { url: '', data: {} }\n };\n\n const urlProps = { href: url, title: name };\n const imgWrapperProps = url ? urlProps : {};\n\n const { caption, altText } = getImageData(otherProps, imageData);\n\n const shouldDisplayCaption = shouldShowProperty({\n isDisplayed: isCaptionDisplayed,\n value: caption\n });\n\n // deprecated: imageCredits is deprecated. This code is to handle legacy data. check before changing/removing\n const shouldDisplayCredits = shouldShowProperty({\n isDisplayed: areImageCreditsDisplayed,\n value: credits || imageCredits\n });\n\n const navigate = position => {\n const newPosition = index + position;\n if (images[newPosition]) {\n setIndex(newPosition);\n }\n };\n\n const handlePrevious = () => navigate(-1);\n const handleNext = () => navigate(1);\n const handleClose = () => onClose();\n\n const showNext = index !== images.length - 1;\n const showPrevious = !!index;\n\n const imageCounter = `${index + 1} of ${images.length}`;\n\n return (\n <>\n {!!images.length && (\n <div>\n <div className=\"overlay\" />\n <div className=\"modal modal--full-screen modal--gallery modal--show\">\n <header className=\"modal__header modal__header--gallery\">\n <div className=\"modal__title modal__title--gallery\">\n {parentName || metaTitle || name}\n </div>\n <div\n role=\"button\"\n className=\"modal__close\"\n onClick={handleClose}\n aria-label=\"Close modal\">\n <i>\n <FaTimes />\n </i>\n </div>\n </header>\n <div className=\"modal__content modal__content--gallery\">\n <div className=\"gallery\">\n <div className=\"gallery__column gallery__column--slider\">\n <div className=\"gallery__slider\">\n <div className=\"slider__wrapper slider__wrapper--gallery open\">\n <div className=\"slider__header slider__header--gallery\">\n <div\n className=\"slider__counter slider__counter--gallery\"\n data-testid=\"image-counter\">\n {imageCounter}\n </div>\n </div>\n\n <NavButton\n handleAction={handlePrevious}\n show={showPrevious}\n modifier=\"previous\"\n ariaLabel=\"Previous Image\"\n />\n\n <div className=\"slider slider--gallery\">\n <div className=\"slider__list slider__list--gallery\">\n <div className=\"slider__list-wrapper slider__list-wrapper--gallery\">\n <div className=\"slider__slide slider__slide--gallery\">\n {loading && <div />}\n {Object.keys(imgWrapperProps).length ? (\n <BlazeLink {...imgWrapperProps}>\n <ResponsiveImage\n src={imageUrl}\n alt={altText}\n sizeKey=\"globalLightbox\"\n data-testid=\"globalLightboxImage\"\n />\n </BlazeLink>\n ) : (\n <Fragment>\n <ResponsiveImage\n src={imageUrl}\n alt={altText}\n sizeKey=\"globalLightbox\"\n data-testid=\"globalLightboxImage\"\n />\n </Fragment>\n )}\n </div>\n </div>\n </div>\n </div>\n\n <NavButton\n ariaLabel=\"Next Image\"\n handleAction={handleNext}\n show={showNext}\n modifier=\"next\"\n />\n </div>\n {(shouldDisplayCaption || shouldDisplayCredits) && (\n <ImageDetails\n caption={caption}\n credits={credits || imageCredits}\n shouldDisplayCaption={shouldDisplayCaption}\n shouldDisplayCredits={shouldDisplayCredits}\n />\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n )}\n </>\n );\n};\n\nGlobalLightbox.propTypes = {\n images: PropTypes.arrayOf(\n PropTypes.shape({\n url: PropTypes.string,\n imageId: PropTypes.string\n })\n ),\n metaTitle: PropTypes.string,\n onClose: PropTypes.func.isRequired,\n selectedImage: PropTypes.number,\n parentName: PropTypes.string\n};\n\nGlobalLightbox.defaultProps = {\n metaTitle: '',\n images: [],\n selectedImage: 0,\n parentName: ''\n};\n\nexport default GlobalLightbox;\n"],"mappings":"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"}
@@ -3,11 +3,13 @@ import PropTypes from 'prop-types';
3
3
  const NavButton = ({
4
4
  handleAction,
5
5
  show,
6
- modifier
6
+ modifier,
7
+ ariaLabel
7
8
  }) => /*#__PURE__*/React.createElement(React.Fragment, null, show && /*#__PURE__*/React.createElement("div", {
8
9
  role: "button",
9
10
  className: `slider__button slider__button--gallery slider__button--${modifier}`,
10
- onClick: handleAction
11
+ onClick: handleAction,
12
+ "aria-label": ariaLabel
11
13
  }, /*#__PURE__*/React.createElement("div", {
12
14
  className: `arrow arrow--${modifier === 'next' ? 'right' : 'left'}`,
13
15
  "data-testid": `navButton-${modifier}`
@@ -15,7 +17,8 @@ const NavButton = ({
15
17
  NavButton.propTypes = {
16
18
  handleAction: PropTypes.func.isRequired,
17
19
  show: PropTypes.bool.isRequired,
18
- modifier: PropTypes.string.isRequired
20
+ modifier: PropTypes.string.isRequired,
21
+ ariaLabel: PropTypes.string.isRequired
19
22
  };
20
23
  export default NavButton;
21
24
  //# sourceMappingURL=NavButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NavButton.js","names":["React","PropTypes","NavButton","handleAction","show","modifier","createElement","Fragment","role","className","onClick","propTypes","func","isRequired","bool","string"],"sources":["../../../../src/components/Image/GlobalLightbox/NavButton.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst NavButton = ({ handleAction, show, modifier }) => (\n <>\n {show && (\n <div\n role=\"button\"\n className={`slider__button slider__button--gallery slider__button--${modifier}`}\n onClick={handleAction}>\n <div\n className={`arrow arrow--${modifier === 'next' ? 'right' : 'left'}`}\n data-testid={`navButton-${modifier}`}\n />\n </div>\n )}\n </>\n);\n\nNavButton.propTypes = {\n handleAction: PropTypes.func.isRequired,\n show: PropTypes.bool.isRequired,\n modifier: PropTypes.string.isRequired\n};\n\nexport default NavButton;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAElC,MAAMC,SAAS,GAAGA,CAAC;EAAEC,YAAY;EAAEC,IAAI;EAAEC;AAAS,CAAC,kBACjDL,KAAA,CAAAM,aAAA,CAAAN,KAAA,CAAAO,QAAA,QACGH,IAAI,iBACHJ,KAAA,CAAAM,aAAA;EACEE,IAAI,EAAC,QAAQ;EACbC,SAAS,EAAG,0DAAyDJ,QAAS,EAAE;EAChFK,OAAO,EAAEP;AAAa,gBACtBH,KAAA,CAAAM,aAAA;EACEG,SAAS,EAAG,gBAAeJ,QAAQ,KAAK,MAAM,GAAG,OAAO,GAAG,MAAO,EAAE;EACpE,eAAc,aAAYA,QAAS;AAAE,CACtC,CACE,CAEP,CACH;AAEDH,SAAS,CAACS,SAAS,GAAG;EACpBR,YAAY,EAAEF,SAAS,CAACW,IAAI,CAACC,UAAU;EACvCT,IAAI,EAAEH,SAAS,CAACa,IAAI,CAACD,UAAU;EAC/BR,QAAQ,EAAEJ,SAAS,CAACc,MAAM,CAACF;AAC7B,CAAC;AAED,eAAeX,SAAS"}
1
+ {"version":3,"file":"NavButton.js","names":["React","PropTypes","NavButton","handleAction","show","modifier","ariaLabel","createElement","Fragment","role","className","onClick","propTypes","func","isRequired","bool","string"],"sources":["../../../../src/components/Image/GlobalLightbox/NavButton.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst NavButton = ({ handleAction, show, modifier, ariaLabel }) => (\n <>\n {show && (\n <div\n role=\"button\"\n className={`slider__button slider__button--gallery slider__button--${modifier}`}\n onClick={handleAction}\n aria-label={ariaLabel}>\n <div\n className={`arrow arrow--${modifier === 'next' ? 'right' : 'left'}`}\n data-testid={`navButton-${modifier}`}\n />\n </div>\n )}\n </>\n);\n\nNavButton.propTypes = {\n handleAction: PropTypes.func.isRequired,\n show: PropTypes.bool.isRequired,\n modifier: PropTypes.string.isRequired,\n ariaLabel: PropTypes.string.isRequired\n};\n\nexport default NavButton;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAElC,MAAMC,SAAS,GAAGA,CAAC;EAAEC,YAAY;EAAEC,IAAI;EAAEC,QAAQ;EAAEC;AAAU,CAAC,kBAC5DN,KAAA,CAAAO,aAAA,CAAAP,KAAA,CAAAQ,QAAA,QACGJ,IAAI,iBACHJ,KAAA,CAAAO,aAAA;EACEE,IAAI,EAAC,QAAQ;EACbC,SAAS,EAAG,0DAAyDL,QAAS,EAAE;EAChFM,OAAO,EAAER,YAAa;EACtB,cAAYG;AAAU,gBACtBN,KAAA,CAAAO,aAAA;EACEG,SAAS,EAAG,gBAAeL,QAAQ,KAAK,MAAM,GAAG,OAAO,GAAG,MAAO,EAAE;EACpE,eAAc,aAAYA,QAAS;AAAE,CACtC,CACE,CAEP,CACH;AAEDH,SAAS,CAACU,SAAS,GAAG;EACpBT,YAAY,EAAEF,SAAS,CAACY,IAAI,CAACC,UAAU;EACvCV,IAAI,EAAEH,SAAS,CAACc,IAAI,CAACD,UAAU;EAC/BT,QAAQ,EAAEJ,SAAS,CAACe,MAAM,CAACF,UAAU;EACrCR,SAAS,EAAEL,SAAS,CAACe,MAAM,CAACF;AAC9B,CAAC;AAED,eAAeZ,SAAS"}