@blaze-cms/react-page-builder 0.127.0-project-admin-customisations.3 → 0.128.0-admin-updates.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (231) hide show
  1. package/CHANGELOG.md +6 -8
  2. package/README.md +13 -0
  3. package/lib/components/Banner/BannerRender.js +5 -5
  4. package/lib/components/Banner/BannerRender.js.map +1 -1
  5. package/lib/components/Banner/helpers.js +2 -2
  6. package/lib/components/Banner/helpers.js.map +1 -1
  7. package/lib/components/Card/CardContainer.js +3 -3
  8. package/lib/components/Card/CardContainer.js.map +1 -1
  9. package/lib/components/Code/Code.js +7 -4
  10. package/lib/components/Code/Code.js.map +1 -1
  11. package/lib/components/Code/helpers/wrap-script-tags.js +7 -3
  12. package/lib/components/Code/helpers/wrap-script-tags.js.map +1 -1
  13. package/lib/components/ContentGroupSection/ContentGroupSection.js +7 -3
  14. package/lib/components/ContentGroupSection/ContentGroupSection.js.map +1 -1
  15. package/lib/components/Iframe/Iframe.js +51 -0
  16. package/lib/components/Iframe/Iframe.js.map +1 -0
  17. package/lib/components/Iframe/constants.js +15 -0
  18. package/lib/components/Iframe/constants.js.map +1 -0
  19. package/lib/components/Iframe/index.js +12 -0
  20. package/lib/components/Iframe/index.js.map +1 -0
  21. package/lib/components/List/components/Cards/CardsRenderItem.js +1 -1
  22. package/lib/components/List/components/Cards/CardsRenderItem.js.map +1 -1
  23. package/lib/components/List/components/Full/FullRenderItem.js +1 -1
  24. package/lib/components/List/components/Full/FullRenderItem.js.map +1 -1
  25. package/lib/components/index.js +5 -0
  26. package/lib/components/index.js.map +1 -1
  27. package/lib-es/components/Banner/BannerRender.js +5 -5
  28. package/lib-es/components/Banner/BannerRender.js.map +1 -1
  29. package/lib-es/components/Banner/helpers.js +2 -2
  30. package/lib-es/components/Banner/helpers.js.map +1 -1
  31. package/lib-es/components/Card/CardContainer.js +3 -3
  32. package/lib-es/components/Card/CardContainer.js.map +1 -1
  33. package/lib-es/components/Code/Code.js +8 -5
  34. package/lib-es/components/Code/Code.js.map +1 -1
  35. package/lib-es/components/Code/helpers/wrap-script-tags.js +7 -3
  36. package/lib-es/components/Code/helpers/wrap-script-tags.js.map +1 -1
  37. package/lib-es/components/ContentGroupSection/ContentGroupSection.js +11 -6
  38. package/lib-es/components/ContentGroupSection/ContentGroupSection.js.map +1 -1
  39. package/lib-es/components/Iframe/Iframe.js +42 -0
  40. package/lib-es/components/Iframe/Iframe.js.map +1 -0
  41. package/lib-es/components/Iframe/constants.js +7 -0
  42. package/lib-es/components/Iframe/constants.js.map +1 -0
  43. package/lib-es/components/Iframe/index.js +3 -0
  44. package/lib-es/components/Iframe/index.js.map +1 -0
  45. package/lib-es/components/List/components/Cards/CardsRenderItem.js +1 -1
  46. package/lib-es/components/List/components/Cards/CardsRenderItem.js.map +1 -1
  47. package/lib-es/components/List/components/Full/FullRenderItem.js +1 -1
  48. package/lib-es/components/List/components/Full/FullRenderItem.js.map +1 -1
  49. package/lib-es/components/index.js +2 -1
  50. package/lib-es/components/index.js.map +1 -1
  51. package/package.json +11 -10
  52. package/src/components/Banner/BannerRender.js +4 -4
  53. package/src/components/Banner/helpers.js +3 -3
  54. package/src/components/Card/CardContainer.js +3 -3
  55. package/src/components/Code/Code.js +6 -4
  56. package/src/components/Code/helpers/wrap-script-tags.js +7 -3
  57. package/src/components/ContentGroupSection/ContentGroupSection.js +3 -5
  58. package/src/components/Iframe/Iframe.js +36 -0
  59. package/src/components/Iframe/constants.js +4 -0
  60. package/src/components/Iframe/index.js +3 -0
  61. package/src/components/List/components/Cards/CardsRenderItem.js +1 -1
  62. package/src/components/List/components/Full/FullRenderItem.js +1 -1
  63. package/src/components/index.js +2 -1
  64. package/tests/unit/src/HOC/withInfiniteScroll.test.js +3 -0
  65. package/tests/unit/src/HOC/withTitle.test.js +5 -2
  66. package/tests/unit/src/Layout/Layout.test.js +4 -2
  67. package/tests/unit/src/Layout/getMockedProps.js +3 -0
  68. package/tests/unit/src/Layout/helpers/check-if-row-has-columns.test.js +4 -1
  69. package/tests/unit/src/Layout/helpers/get-styles-to-update.test.js +1 -1
  70. package/tests/unit/src/Layout/helpers/has-children.test.js +4 -1
  71. package/tests/unit/src/components/BackToTop/BackToTop.test.js +3 -0
  72. package/tests/unit/src/components/Banner/AdSlotRender.test.js +3 -0
  73. package/tests/unit/src/components/Banner/Banner.test.js +3 -0
  74. package/tests/unit/src/components/Banner/BannerRender.test.js +4 -1
  75. package/tests/unit/src/components/BlazeLink.test.js +3 -0
  76. package/tests/unit/src/components/Breadcrumb/Breadcrumb.test.js +3 -0
  77. package/tests/unit/src/components/Button.test.js +3 -0
  78. package/tests/unit/src/components/Card/Card.test.js +3 -0
  79. package/tests/unit/src/components/Card/CardContainer.test.js +5 -1
  80. package/tests/unit/src/components/Card/CardRender.test.js +3 -0
  81. package/tests/unit/src/components/Card/helpers/append-images.test.js +1 -1
  82. package/tests/unit/src/components/Card/helpers/get-dynamic-grid-classes.test.js +1 -1
  83. package/tests/unit/src/components/Card/helpers/getPublishedListingUrl.test.js +1 -1
  84. package/tests/unit/src/components/Card/helpers/useDynamicSizeKey.test.js +1 -1
  85. package/tests/unit/src/components/Carousel/Carousel.test.js +3 -0
  86. package/tests/unit/src/components/Carousel/CarouselImage/CarouselImage.test.js +4 -2
  87. package/tests/unit/src/components/Carousel/CarouselRender/CarouselRender.test.js +3 -0
  88. package/tests/unit/src/components/CarouselWrapper.test.js +3 -0
  89. package/tests/unit/src/components/ClickWrapper.test.js +3 -0
  90. package/tests/unit/src/components/Code/Code.test.js +3 -0
  91. package/tests/unit/src/components/Code/ScriptTag.test.js +3 -0
  92. package/tests/unit/src/components/Code/helpers/wrap-script-tags.test.js +1 -1
  93. package/tests/unit/src/components/Code.test.js +3 -0
  94. package/tests/unit/src/components/ContentGroup/ContentGroup.test.js +3 -0
  95. package/tests/unit/src/components/ContentGroup/ContentGroupTabs.test.js +3 -0
  96. package/tests/unit/src/components/ContentGroupSection/ContentGroupSection.test.js +3 -0
  97. package/tests/unit/src/components/DataSummary/DataSummaryFactory.test.js +3 -0
  98. package/tests/unit/src/components/DataSummary/DataSummaryRender.test.js +3 -0
  99. package/tests/unit/src/components/DataSummary/DataSummaryTypes/HeadingLargeSummary.test.js +3 -0
  100. package/tests/unit/src/components/DataSummary/DataSummaryTypes/ItemDetailsSummary.test.js +3 -0
  101. package/tests/unit/src/components/DataSummary/DataSummaryTypes/LargeSummary.test.js +3 -0
  102. package/tests/unit/src/components/DataSummary/DataSummaryTypes/ListSummary.test.js +3 -0
  103. package/tests/unit/src/components/DataSummary/DataSummaryTypes/TextSummary.test.js +3 -0
  104. package/tests/unit/src/components/DataSummary/helpers/build-loop-props-content.test.js +1 -1
  105. package/tests/unit/src/components/DataSummary/helpers/build-props-to-display-with-content.test.js +1 -1
  106. package/tests/unit/src/components/DataSummary/helpers/get-data-summary-query.test.js +1 -1
  107. package/tests/unit/src/components/DataSummary/helpers/get-link-based-on-value.test.js +2 -2
  108. package/tests/unit/src/components/DataSummary/helpers/get-link-to-published-content.test.js +1 -1
  109. package/tests/unit/src/components/DataSummary/helpers/parse-boolean-values.test.js +1 -1
  110. package/tests/unit/src/components/EmailConfirm/EmailConfirm.test.js +3 -0
  111. package/tests/unit/src/components/Iframe/Iframe.test.js +21 -0
  112. package/tests/unit/src/components/Iframe/__snapshots__/Iframe.test.js.snap +21 -0
  113. package/tests/unit/src/components/Image/GlobalLightbox/GlobalLightbox.test.js +5 -1
  114. package/tests/unit/src/components/Image/GlobalLightbox/NavButton.test.js +3 -0
  115. package/tests/unit/src/components/Image/Image.test.js +3 -0
  116. package/tests/unit/src/components/Image/ImageDetails.test.js +3 -0
  117. package/tests/unit/src/components/Image/ImageFactory.test.js +3 -0
  118. package/tests/unit/src/components/Image/ImageRender.test.js +3 -0
  119. package/tests/unit/src/components/Image/Lightbox/Lightbox.test.js +3 -0
  120. package/tests/unit/src/components/ItemList/ItemListButton.test.js +3 -0
  121. package/tests/unit/src/components/ItemList/ItemListCounter.test.js +3 -0
  122. package/tests/unit/src/components/ItemList/ItemListNew.test.js +3 -0
  123. package/tests/unit/src/components/ItemList/helpers/set-item-list-id.test.js +3 -0
  124. package/tests/unit/src/components/ItemList/hooks/use-item-list-id.test.js +3 -0
  125. package/tests/unit/src/components/Layout/Layout.test.js +3 -0
  126. package/tests/unit/src/components/LazyImage/LazyImage.test.js +3 -0
  127. package/tests/unit/src/components/List/ListRender.test.js +3 -0
  128. package/tests/unit/src/components/List/components/Cards/CardsRender.test.js +3 -0
  129. package/tests/unit/src/components/List/components/Cards/CardsRenderItem.test.js +3 -0
  130. package/tests/unit/src/components/List/components/Cards/CardsRenderWrapper.test.js +3 -0
  131. package/tests/unit/src/components/List/components/Cards/helpers/check-if-should-render-gtm.test.js +1 -1
  132. package/tests/unit/src/components/List/components/Full/FullRender.test.js +3 -0
  133. package/tests/unit/src/components/List/components/Full/FullRenderItem.test.js +3 -0
  134. package/tests/unit/src/components/List/components/Header/ListHeader.test.js +3 -0
  135. package/tests/unit/src/components/List/components/Pagination/Classic.test.js +3 -0
  136. package/tests/unit/src/components/List/components/Pagination/ListPagination.test.js +3 -0
  137. package/tests/unit/src/components/List/components/Pagination/LoadMore.test.js +3 -0
  138. package/tests/unit/src/components/Menu/Menu.test.js +3 -0
  139. package/tests/unit/src/components/MenuItem/MenuItem.test.js +3 -0
  140. package/tests/unit/src/components/MenuItem/SubMenu.test.js +3 -0
  141. package/tests/unit/src/components/Modal/Modal.test.js +3 -0
  142. package/tests/unit/src/components/SearchContent/SearchContent.test.js +3 -0
  143. package/tests/unit/src/components/SearchFilter/SearchFilter/CloseMobileForm.test.js +3 -0
  144. package/tests/unit/src/components/SearchFilter/SearchFilter/MobileFormToolbar.test.js +3 -0
  145. package/tests/unit/src/components/SearchFilter/SearchFilter/ResetDesktopForm.test.js +3 -0
  146. package/tests/unit/src/components/SearchFilter/SearchFilter/SearchFilter.test.js +3 -0
  147. package/tests/unit/src/components/SearchFilter/SearchFilterContainer.test.js +3 -0
  148. package/tests/unit/src/components/SearchFilter/components/Checkbox.test.js +3 -0
  149. package/tests/unit/src/components/SearchFilter/components/Range.test.js +3 -0
  150. package/tests/unit/src/components/SearchFilter/components/Select.test.js +3 -0
  151. package/tests/unit/src/components/SearchFilter/components/TextSearch.test.js +3 -0
  152. package/tests/unit/src/components/SearchFilter/helpers/build-new-query.test.js +1 -1
  153. package/tests/unit/src/components/SearchFilter/helpers/build-raw-query-stringified.test.js +1 -1
  154. package/tests/unit/src/components/SearchFilter/helpers/calculate-min-max.test.js +1 -1
  155. package/tests/unit/src/components/SearchFilter/helpers/calculate-step.test.js +1 -1
  156. package/tests/unit/src/components/SearchFilter/helpers/check-if-range-updated.test.js +4 -1
  157. package/tests/unit/src/components/SearchFilter/helpers/get-display-value.test.js +1 -1
  158. package/tests/unit/src/components/SearchFilter/helpers/get-intersected-prop.test.js +1 -1
  159. package/tests/unit/src/components/SearchFilter/helpers/get-range-value.test.js +1 -1
  160. package/tests/unit/src/components/SearchFilter/helpers/get-select-options.test.js +1 -1
  161. package/tests/unit/src/components/SearchFilter/helpers/is-device-desktop.test.js +4 -2
  162. package/tests/unit/src/components/SearchFilterSort/SearchFilterSort.test.js +3 -0
  163. package/tests/unit/src/components/SocialFollow/SFItem.test.js +3 -0
  164. package/tests/unit/src/components/SocialFollow/SocialFollow.test.js +3 -0
  165. package/tests/unit/src/components/TextBlock/TextBlock.test.js +3 -0
  166. package/tests/unit/src/components/Video/Video.test.js +3 -0
  167. package/tests/unit/src/components/Video/VideoModal.test.js +3 -0
  168. package/tests/unit/src/components/Video/providers/Default.test.js +3 -0
  169. package/tests/unit/src/components/Video/providers/JWPlayer/JWPlayerProvider.test.js +3 -0
  170. package/tests/unit/src/components/Video/providers/Vimeo/Vimeo.test.js +3 -0
  171. package/tests/unit/src/components/Video/providers/Vimeo/helpers/add-extra-params-to-url.test.js +1 -1
  172. package/tests/unit/src/components/Video/providers/YouTube/YouTubeProvider.test.js +3 -0
  173. package/tests/unit/src/components/Wrapper.test.js +3 -0
  174. package/tests/unit/src/components/__snapshots__/index.test.js.snap +4 -0
  175. package/tests/unit/src/helpers/build-image-properties.test.js +1 -1
  176. package/tests/unit/src/helpers/build-inherited-filters.test.js +1 -1
  177. package/tests/unit/src/helpers/build-link-extra-props.test.js +1 -1
  178. package/tests/unit/src/helpers/build-props-query.test.js +1 -1
  179. package/tests/unit/src/helpers/build-query-fields.test.js +1 -1
  180. package/tests/unit/src/helpers/build-raw-query-base.test.js +1 -1
  181. package/tests/unit/src/helpers/build-raw-query.test.js +1 -1
  182. package/tests/unit/src/helpers/build-search-values-checkbox-select.test.js +1 -1
  183. package/tests/unit/src/helpers/build-search-values-text.test.js +1 -1
  184. package/tests/unit/src/helpers/build-set-filters.test.js +1 -1
  185. package/tests/unit/src/helpers/check-for-error.test.js +1 -1
  186. package/tests/unit/src/helpers/check-props-to-use.test.js +1 -1
  187. package/tests/unit/src/helpers/get-click-wrapper-options.test.js +1 -1
  188. package/tests/unit/src/helpers/get-current-offset.test.js +1 -1
  189. package/tests/unit/src/helpers/get-display-count-data.test.js +1 -1
  190. package/tests/unit/src/helpers/get-elasticsearch-operator.test.js +1 -1
  191. package/tests/unit/src/helpers/get-entity-data.test.js +1 -1
  192. package/tests/unit/src/helpers/get-entity-render-props.test.js +1 -1
  193. package/tests/unit/src/helpers/get-generic-props.test.js +1 -1
  194. package/tests/unit/src/helpers/get-generic-render-variables.test.js +1 -1
  195. package/tests/unit/src/helpers/get-image-ids.test.js +1 -1
  196. package/tests/unit/src/helpers/get-inherited-filters.test.js +1 -1
  197. package/tests/unit/src/helpers/get-not-equal-query.test.js +1 -1
  198. package/tests/unit/src/helpers/get-pagination-index.test.js +1 -1
  199. package/tests/unit/src/helpers/get-parsed-prop-values.test.js +3 -0
  200. package/tests/unit/src/helpers/get-parsed-summary-value.test.js +1 -1
  201. package/tests/unit/src/helpers/get-query-filters.test.js +1 -1
  202. package/tests/unit/src/helpers/get-query-props.test.js +1 -1
  203. package/tests/unit/src/helpers/get-required-schemas.test.js +1 -1
  204. package/tests/unit/src/helpers/get-search-filter-type.test.js +1 -1
  205. package/tests/unit/src/helpers/get-unpublished-entity-name.test.js +1 -1
  206. package/tests/unit/src/helpers/get-updated-filter-by.test.js +1 -1
  207. package/tests/unit/src/helpers/get-wrapped-value-with-link.test.js +1 -1
  208. package/tests/unit/src/helpers/inject-banner.test.js +3 -0
  209. package/tests/unit/src/helpers/is-filter-entitys-id.test.js +1 -1
  210. package/tests/unit/src/helpers/is-object.test.js +1 -1
  211. package/tests/unit/src/helpers/is-using-relation-image.test.js +1 -1
  212. package/tests/unit/src/helpers/parse-props-to-display.test.js +1 -1
  213. package/tests/unit/src/helpers/parse-textBlock.test.js +4 -1
  214. package/tests/unit/src/helpers/remove-extra-items.test.js +1 -1
  215. package/tests/unit/src/helpers/remove-unwanted-characters.test.js +1 -1
  216. package/tests/unit/src/helpers/render-children.test.js +4 -1
  217. package/tests/unit/src/helpers/should-render-waypoint.test.js +1 -1
  218. package/tests/unit/src/helpers/should-show-property.test.js +1 -1
  219. package/tests/unit/src/helpers/sort-response-data.test.js +1 -1
  220. package/tests/unit/src/helpers/update-childrens-parent.test.js +1 -1
  221. package/tests/unit/src/hooks/helpers/StoreImages.test.js +1 -1
  222. package/tests/unit/src/hooks/helpers/getComponent.test.js +3 -0
  223. package/tests/unit/src/hooks/helpers/inject-textblock-banners.test.js +1 -1
  224. package/tests/unit/src/hooks/use-check-mobile-screen.test.js +3 -0
  225. package/tests/unit/src/hooks/use-get-image-id-from-relation.test.js +5 -1
  226. package/tests/unit/src/hooks/use-get-images.test.js +3 -0
  227. package/tests/unit/src/hooks/use-get-single-entity-schema.test.js +4 -1
  228. package/tests/unit/src/hooks/use-page-builder.test.js +3 -0
  229. package/tests/unit/src/utils/component-map.test.js +3 -0
  230. package/tests/unit/src/utils/get-image-data.test.js +0 -1
  231. package/tests/unit/src/utils/get-props-to-display-modifiers.test.js +0 -1
package/CHANGELOG.md CHANGED
@@ -3,25 +3,23 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- # [0.127.0-project-admin-customisations.3](https://github.com/thebyte9/blaze/compare/v0.127.0-project-admin-customisations.2...v0.127.0-project-admin-customisations.3) (2023-01-27)
7
-
8
- **Note:** Version bump only for package @blaze-cms/react-page-builder
6
+ # [0.128.0-admin-updates.0](https://github.com/thebyte9/blaze/compare/v0.127.1...v0.128.0-admin-updates.0) (2023-02-16)
9
7
 
10
8
 
9
+ ### Features
11
10
 
11
+ * added iframe component ([#3793](https://github.com/thebyte9/blaze/issues/3793)) ([71d1029](https://github.com/thebyte9/blaze/commit/71d102984896f7fd571a6c60499978e5c8e2d044))
12
12
 
13
13
 
14
- # [0.127.0-project-admin-customisations.2](https://github.com/thebyte9/blaze/compare/v0.127.0-project-admin-customisations.1...v0.127.0-project-admin-customisations.2) (2023-01-26)
15
14
 
16
- **Note:** Version bump only for package @blaze-cms/react-page-builder
17
15
 
18
16
 
17
+ # [0.127.0](https://github.com/thebyte9/blaze/compare/v0.126.1...v0.127.0) (2023-02-10)
19
18
 
20
19
 
20
+ ### Features
21
21
 
22
- # [0.127.0-project-admin-customisations.0](https://github.com/thebyte9/blaze/compare/v0.126.1...v0.127.0-project-admin-customisations.0) (2023-01-25)
23
-
24
- **Note:** Version bump only for package @blaze-cms/react-page-builder
22
+ * shorthand story plugins ([#3806](https://github.com/thebyte9/blaze/issues/3806)) ([08d9b82](https://github.com/thebyte9/blaze/commit/08d9b82aa1983291450c616c9bd8fd81f6ddae9d))
25
23
 
26
24
 
27
25
 
package/README.md CHANGED
@@ -69,6 +69,10 @@ Once the [adSlot has loaded](https://react-dfp.surge.sh/adslot/onslotrender/) th
69
69
  | ad-slot-loaded | Adslot is loaded with and ad |
70
70
  | ad-slot-empty | Adslot is loaded but no ad was loaded from dfp |
71
71
 
72
+ #### renderCounter
73
+
74
+ This prop can be used to indicate the `posn` targeting that should be used. It is useful when generating additional banner components from a base component as it allows them to be easy to target individually in DFP.
75
+
72
76
  ### getParsedSizes
73
77
 
74
78
  This is a helper that enables backwards compatibility for the data when banner could have sizes saved as string. Newly created banners should all have field sizeId (instead sizes), which is a select to chose from defined banner sizes.
@@ -125,6 +129,15 @@ The script tags will then appear in the places they are supposed to other than t
125
129
 
126
130
  **Note** Script tags won't get rendered on the server just in the browser.
127
131
 
132
+ ## Iframe
133
+ The iframe component renders an iframe based on the src property with dynamic height/width resizing. It accepts the following properties:
134
+
135
+ - src (required to render)
136
+ - modifier
137
+ - height
138
+ - width
139
+
140
+
128
141
  ## SearchFilter
129
142
 
130
143
  The url field is used to know if by clicking on the search button (or by interacting with some filter types that are trigerring the search immediately - checkbox & select, when no url is set) the filter will be applied on the same page (if no url set) or on another page (specified in that url).
@@ -25,7 +25,7 @@ var _helpers = require("./helpers");
25
25
  var _constants = require("../../constants");
26
26
  var _HOC = require("../../HOC");
27
27
  var _AdSlotRender = _interopRequireDefault(require("./AdSlotRender"));
28
- var _excluded = ["baseAdunit", "adunit", "sizeId", "sizes", "propsToDisplay", "entity", "targetings", "parent", "asPath", "action", "actionKey", "cardBannerIndex", "userPropsData"];
28
+ var _excluded = ["baseAdunit", "adunit", "sizeId", "sizes", "propsToDisplay", "entity", "targetings", "parent", "asPath", "action", "actionKey", "renderCounter", "userPropsData"];
29
29
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
30
30
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
31
31
  var BannerRender = function BannerRender(_ref) {
@@ -40,7 +40,7 @@ var BannerRender = function BannerRender(_ref) {
40
40
  asPath = _ref.asPath,
41
41
  action = _ref.action,
42
42
  actionKey = _ref.actionKey,
43
- cardBannerIndex = _ref.cardBannerIndex,
43
+ renderCounter = _ref.renderCounter,
44
44
  userPropsData = _ref.userPropsData,
45
45
  otherProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
46
46
  var id = otherProps.id;
@@ -86,7 +86,7 @@ var BannerRender = function BannerRender(_ref) {
86
86
  var isContextualTargetingSet = propsToDisplay.length && parsedTargetings && Object.keys(parsedTargetings).length;
87
87
  var isContextualTargetingReady = isContextualTargetingSet || !propsToDisplay.length;
88
88
  var shouldShowBanner = parsedAdunit && parsedSizes && !!parsedSizes.length && isContextualTargetingReady;
89
- var customTargetings = (0, _helpers.setCustomTargetings)(targetings, cardBannerIndex);
89
+ var customTargetings = (0, _helpers.setCustomTargetings)(targetings, renderCounter);
90
90
  var targetingArguments = _objectSpread(_objectSpread(_objectSpread({}, parsedTargetings), customTargetings), userPropsData);
91
91
  return /*#__PURE__*/_react["default"].createElement(_AdSlotRender["default"], {
92
92
  shouldShowBanner: !!shouldShowBanner,
@@ -109,7 +109,7 @@ BannerRender.propTypes = {
109
109
  entity: _propTypes["default"].string,
110
110
  targetings: _propTypes["default"].string,
111
111
  sizes: _propTypes["default"].string,
112
- cardBannerIndex: _propTypes["default"].number,
112
+ renderCounter: _propTypes["default"].number,
113
113
  userPropsData: _propTypes["default"].object
114
114
  };
115
115
  BannerRender.defaultProps = {
@@ -120,7 +120,7 @@ BannerRender.defaultProps = {
120
120
  entity: '',
121
121
  targetings: '',
122
122
  sizes: '',
123
- cardBannerIndex: null,
123
+ renderCounter: null,
124
124
  userPropsData: {}
125
125
  };
126
126
  var _default = (0, _HOC.withTitle)(BannerRender);
@@ -1 +1 @@
1
- {"version":3,"file":"BannerRender.js","names":["BannerRender","baseAdunit","adunit","sizeId","sizes","propsToDisplay","entity","targetings","parent","asPath","action","actionKey","cardBannerIndex","userPropsData","otherProps","id","itemId","useQuery","variables","where","skip","data","entityRecordData","generateSingleItemQuery","GET_BANNER","BANNER_QUERY_PROPS","bannerData","getCount","COUNT_CONTENT_HIERARCHIES","parentId","childEntity","_ilike","PUBLISHED","parsedTargetings","buildContextualTargeting","entityData","bannerSizes","sizeMapping","buildSizeMapping","parsedSizes","buildBannerSizes","countContentHierarchies","parsedAdunit","buildParsedAdunit","isContextualTargetingSet","length","Object","keys","isContextualTargetingReady","shouldShowBanner","customTargetings","setCustomTargetings","targetingArguments","propTypes","PropTypes","object","isRequired","string","array","number","defaultProps","withTitle"],"sources":["../../../src/components/Banner/BannerRender.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { useQuery } from '@apollo/client';\n\nimport { generateSingleItemQuery, getCount } from '../../application/query';\nimport {\n buildBannerSizes,\n buildContextualTargeting,\n buildParsedAdunit,\n buildSizeMapping,\n setCustomTargetings\n} from './helpers';\nimport {\n BANNER_QUERY_PROPS,\n COUNT_CONTENT_HIERARCHIES,\n GET_BANNER,\n PUBLISHED\n} from '../../constants';\nimport { withTitle } from '../../HOC';\nimport AdSlotRender from './AdSlotRender';\n\nconst BannerRender = ({\n baseAdunit,\n adunit,\n sizeId,\n sizes,\n propsToDisplay,\n entity,\n targetings,\n parent,\n asPath,\n action,\n actionKey,\n cardBannerIndex,\n userPropsData,\n ...otherProps\n}) => {\n const { id } = otherProps;\n const { itemId } = parent;\n\n const { data: entityRecordData = {} } = useQuery(action, {\n variables: { where: { id: id || itemId } },\n skip: id && id !== itemId\n });\n\n const { data: bannerData = {} } = useQuery(\n generateSingleItemQuery(GET_BANNER, BANNER_QUERY_PROPS),\n {\n variables: { id: sizeId },\n skip: !sizeId\n }\n );\n\n const { data = {} } = useQuery(getCount(COUNT_CONTENT_HIERARCHIES), {\n variables: {\n where: {\n parentId: id || itemId,\n childEntity: {\n _ilike: `${PUBLISHED}_%`\n }\n }\n }\n });\n\n const parsedTargetings = buildContextualTargeting(actionKey, entityRecordData, propsToDisplay);\n const { entityData } = bannerData;\n const { sizes: bannerSizes } = entityData || {};\n\n const sizeMapping = buildSizeMapping(sizeId, bannerSizes);\n const parsedSizes = buildBannerSizes(sizeId, bannerSizes, sizes);\n\n const { countContentHierarchies } = data;\n\n const parsedAdunit = buildParsedAdunit(asPath, countContentHierarchies, baseAdunit, adunit);\n const isContextualTargetingSet =\n propsToDisplay.length && parsedTargetings && Object.keys(parsedTargetings).length;\n const isContextualTargetingReady = isContextualTargetingSet || !propsToDisplay.length;\n const shouldShowBanner =\n parsedAdunit && parsedSizes && !!parsedSizes.length && isContextualTargetingReady;\n\n const customTargetings = setCustomTargetings(targetings, cardBannerIndex);\n\n const targetingArguments = { ...parsedTargetings, ...customTargetings, ...userPropsData };\n\n return (\n <AdSlotRender\n shouldShowBanner={!!shouldShowBanner}\n sizeMapping={sizeMapping}\n sizeId={sizeId}\n parsedAdunit={parsedAdunit}\n parsedSizes={parsedSizes}\n targetingArguments={targetingArguments}\n />\n );\n};\n\nBannerRender.propTypes = {\n parent: PropTypes.object.isRequired,\n asPath: PropTypes.string.isRequired,\n action: PropTypes.object.isRequired,\n actionKey: PropTypes.string.isRequired,\n adunit: PropTypes.string,\n baseAdunit: PropTypes.string,\n sizeId: PropTypes.string,\n propsToDisplay: PropTypes.array,\n entity: PropTypes.string,\n targetings: PropTypes.string,\n sizes: PropTypes.string,\n cardBannerIndex: PropTypes.number,\n userPropsData: PropTypes.object\n};\n\nBannerRender.defaultProps = {\n adunit: '',\n baseAdunit: '',\n sizeId: '',\n propsToDisplay: [],\n entity: '',\n targetings: '',\n sizes: '',\n cardBannerIndex: null,\n userPropsData: {}\n};\n\nexport default withTitle(BannerRender);\n"],"mappings":"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"}
1
+ {"version":3,"file":"BannerRender.js","names":["BannerRender","baseAdunit","adunit","sizeId","sizes","propsToDisplay","entity","targetings","parent","asPath","action","actionKey","renderCounter","userPropsData","otherProps","id","itemId","useQuery","variables","where","skip","data","entityRecordData","generateSingleItemQuery","GET_BANNER","BANNER_QUERY_PROPS","bannerData","getCount","COUNT_CONTENT_HIERARCHIES","parentId","childEntity","_ilike","PUBLISHED","parsedTargetings","buildContextualTargeting","entityData","bannerSizes","sizeMapping","buildSizeMapping","parsedSizes","buildBannerSizes","countContentHierarchies","parsedAdunit","buildParsedAdunit","isContextualTargetingSet","length","Object","keys","isContextualTargetingReady","shouldShowBanner","customTargetings","setCustomTargetings","targetingArguments","propTypes","PropTypes","object","isRequired","string","array","number","defaultProps","withTitle"],"sources":["../../../src/components/Banner/BannerRender.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { useQuery } from '@apollo/client';\n\nimport { generateSingleItemQuery, getCount } from '../../application/query';\nimport {\n buildBannerSizes,\n buildContextualTargeting,\n buildParsedAdunit,\n buildSizeMapping,\n setCustomTargetings\n} from './helpers';\nimport {\n BANNER_QUERY_PROPS,\n COUNT_CONTENT_HIERARCHIES,\n GET_BANNER,\n PUBLISHED\n} from '../../constants';\nimport { withTitle } from '../../HOC';\nimport AdSlotRender from './AdSlotRender';\n\nconst BannerRender = ({\n baseAdunit,\n adunit,\n sizeId,\n sizes,\n propsToDisplay,\n entity,\n targetings,\n parent,\n asPath,\n action,\n actionKey,\n renderCounter,\n userPropsData,\n ...otherProps\n}) => {\n const { id } = otherProps;\n const { itemId } = parent;\n\n const { data: entityRecordData = {} } = useQuery(action, {\n variables: { where: { id: id || itemId } },\n skip: id && id !== itemId\n });\n\n const { data: bannerData = {} } = useQuery(\n generateSingleItemQuery(GET_BANNER, BANNER_QUERY_PROPS),\n {\n variables: { id: sizeId },\n skip: !sizeId\n }\n );\n\n const { data = {} } = useQuery(getCount(COUNT_CONTENT_HIERARCHIES), {\n variables: {\n where: {\n parentId: id || itemId,\n childEntity: {\n _ilike: `${PUBLISHED}_%`\n }\n }\n }\n });\n\n const parsedTargetings = buildContextualTargeting(actionKey, entityRecordData, propsToDisplay);\n const { entityData } = bannerData;\n const { sizes: bannerSizes } = entityData || {};\n\n const sizeMapping = buildSizeMapping(sizeId, bannerSizes);\n const parsedSizes = buildBannerSizes(sizeId, bannerSizes, sizes);\n\n const { countContentHierarchies } = data;\n\n const parsedAdunit = buildParsedAdunit(asPath, countContentHierarchies, baseAdunit, adunit);\n const isContextualTargetingSet =\n propsToDisplay.length && parsedTargetings && Object.keys(parsedTargetings).length;\n const isContextualTargetingReady = isContextualTargetingSet || !propsToDisplay.length;\n const shouldShowBanner =\n parsedAdunit && parsedSizes && !!parsedSizes.length && isContextualTargetingReady;\n\n const customTargetings = setCustomTargetings(targetings, renderCounter);\n\n const targetingArguments = { ...parsedTargetings, ...customTargetings, ...userPropsData };\n\n return (\n <AdSlotRender\n shouldShowBanner={!!shouldShowBanner}\n sizeMapping={sizeMapping}\n sizeId={sizeId}\n parsedAdunit={parsedAdunit}\n parsedSizes={parsedSizes}\n targetingArguments={targetingArguments}\n />\n );\n};\n\nBannerRender.propTypes = {\n parent: PropTypes.object.isRequired,\n asPath: PropTypes.string.isRequired,\n action: PropTypes.object.isRequired,\n actionKey: PropTypes.string.isRequired,\n adunit: PropTypes.string,\n baseAdunit: PropTypes.string,\n sizeId: PropTypes.string,\n propsToDisplay: PropTypes.array,\n entity: PropTypes.string,\n targetings: PropTypes.string,\n sizes: PropTypes.string,\n renderCounter: PropTypes.number,\n userPropsData: PropTypes.object\n};\n\nBannerRender.defaultProps = {\n adunit: '',\n baseAdunit: '',\n sizeId: '',\n propsToDisplay: [],\n entity: '',\n targetings: '',\n sizes: '',\n renderCounter: null,\n userPropsData: {}\n};\n\nexport default withTitle(BannerRender);\n"],"mappings":"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"}
@@ -54,9 +54,9 @@ var buildTargetingValue = function buildTargetingValue(valueTargeting) {
54
54
  return _char === ';' ? ',' : '';
55
55
  }).split(',') : valueTargeting;
56
56
  };
57
- var setCustomTargetings = function setCustomTargetings(targetings, cardBannerIndex) {
57
+ var setCustomTargetings = function setCustomTargetings(targetings, renderCounter) {
58
58
  var bannerTargetings = {};
59
- var updatedTargetings = cardBannerIndex ? addPosnToTargetings(targetings, cardBannerIndex) : targetings;
59
+ var updatedTargetings = renderCounter ? addPosnToTargetings(targetings, renderCounter) : targetings;
60
60
  var isValidTargeting = updatedTargetings && typeof updatedTargetings === 'string';
61
61
  if (isValidTargeting) {
62
62
  var customTargeting = {};
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","names":["getParsedSizes","sizes","sanitizedSizes","replace","toLowerCase","sizeGroups","split","map","group","Number","addPosnToTargetings","targetings","index","posn","buildTargetingValue","valueTargeting","includes","char","setCustomTargetings","cardBannerIndex","bannerTargetings","updatedTargetings","isValidTargeting","customTargeting","splitTargeting","Object","keys","forEach","key","keyTargeting","buildParsedAdunit","path","countContentHierarchies","baseAdunit","adunit","isInteger","base","process","env","DFP_BASE_ADUNIT","hasChildren","parseUrl","url","urlParts","filter","Boolean","urlPart","slice","length","join","endAdunit","END_ADUNIT","getBannerSizes","sizeId","bannerSizes","width","height","buildBannerSizes","parsedSizes","buildContextualTargeting","actionKey","props","propsToDisplay","data","buildPropsData","buildSizeMapping","sizeMapping","groupedViewports","reduce","acc","viewports","size","viewportWidth","viewportHeight","push","keyGroupedViewport","viewport","getMaxBannerHeight","Array","isArray","Math","max","o","MAX_BANNER_HEIGHT","getMinBannerHeight","min","MIN_BANNER_HEIGHT","buildUserQuery","userProps","basicProps","nestedProps","propertiesToDisplay","propKey","indexOf","baseProp","nestedProp","nestedKey","nested","prop","propsWithData","label","parsedKey","value","getNestedValue","labelToUse","parseArrayValues","arr","obj","object","shift","nestedValue"],"sources":["../../../src/components/Banner/helpers.js"],"sourcesContent":["import { parseUrl } from 'query-string';\nimport { END_ADUNIT, MAX_BANNER_HEIGHT, MIN_BANNER_HEIGHT } from '../../constants';\n\nconst getParsedSizes = (sizes = '') => {\n if (typeof sizes !== 'string') return [];\n\n const sanitizedSizes = sizes.replace(/\\s+/, '').toLowerCase();\n const sizeGroups = sanitizedSizes.split(',');\n\n return sizeGroups.map(group => group.split('x').map(Number));\n};\n\nconst addPosnToTargetings = (targetings, index) => {\n const posn = `posn=${index}`;\n return targetings ? `${targetings},${posn}` : posn;\n};\n\nconst buildTargetingValue = valueTargeting =>\n valueTargeting.includes('[') && valueTargeting.includes(']')\n ? valueTargeting.replace(/\\;|\\[|\\]/gm, char => (char === ';' ? ',' : '')).split(',')\n : valueTargeting;\n\nconst setCustomTargetings = (targetings, cardBannerIndex) => {\n let bannerTargetings = {};\n\n const updatedTargetings = cardBannerIndex\n ? addPosnToTargetings(targetings, cardBannerIndex)\n : targetings;\n\n const isValidTargeting = updatedTargetings && typeof updatedTargetings === 'string';\n\n if (isValidTargeting) {\n const customTargeting = {};\n\n let splitTargeting = updatedTargetings.split(',');\n splitTargeting = { ...splitTargeting };\n\n Object.keys(splitTargeting).forEach(key => {\n const [keyTargeting, valueTargeting] = splitTargeting[key].split('=');\n\n if (keyTargeting && valueTargeting) {\n customTargeting[keyTargeting] = buildTargetingValue(valueTargeting);\n }\n });\n bannerTargetings = { ...bannerTargetings, ...customTargeting };\n }\n\n return bannerTargetings;\n};\n\nconst buildParsedAdunit = (path, countContentHierarchies, baseAdunit, adunit) => {\n if (!Number.isInteger(countContentHierarchies)) return '';\n\n const base = baseAdunit || process.env.DFP_BASE_ADUNIT;\n const hasChildren = countContentHierarchies !== 0;\n const { url } = parseUrl(path);\n let urlParts = url\n .split('/')\n .filter(Boolean)\n .map(urlPart => urlPart.replace(/-/g, ''));\n urlParts = urlParts.slice(0, hasChildren ? urlParts.length : urlParts.length - 1).join('/');\n urlParts = urlParts ? `${urlParts}/` : urlParts;\n const endAdunit = adunit || END_ADUNIT;\n\n return `${base}/${urlParts}${endAdunit}`;\n};\n\nconst getBannerSizes = (sizeId, bannerSizes) =>\n sizeId && bannerSizes && bannerSizes.length\n ? bannerSizes.map(({ width, height }) => [width, height])\n : null;\n\nconst buildBannerSizes = (sizeId, bannerSizes, sizes) => {\n let parsedSizes = getBannerSizes(sizeId, bannerSizes);\n\n if (!parsedSizes && sizes) parsedSizes = getParsedSizes(sizes);\n\n return parsedSizes;\n};\n\nconst buildContextualTargeting = (actionKey, props = {}, propsToDisplay = []) => {\n if (actionKey && props[actionKey] && props[actionKey][0]) {\n const data = props[actionKey][0];\n return buildPropsData(data, propsToDisplay);\n }\n return {};\n};\n\nconst buildSizeMapping = (sizeId, bannerSizes) => {\n let sizeMapping = [];\n\n if (sizeId && bannerSizes && bannerSizes.length) {\n const groupedViewports = bannerSizes.reduce((acc, { width, height, viewports = [] }) => {\n const size = width && height ? [width, height] : null; // if one dimension is falsey then it shouldn't display\n\n if (viewports) {\n viewports.forEach(({ width: viewportWidth, height: viewportHeight }) => {\n const key = `${viewportWidth || 0}x${viewportHeight || 0}`;\n acc[key] = acc[key] || [];\n if (size) acc[key].push(size);\n });\n }\n return acc;\n }, {});\n\n sizeMapping = Object.keys(groupedViewports).map(keyGroupedViewport => {\n const [viewportWidth, viewportHeight] = keyGroupedViewport.split('x');\n return {\n viewport: [Number(viewportWidth), Number(viewportHeight)],\n sizes: groupedViewports[keyGroupedViewport]\n };\n });\n }\n\n return sizeMapping;\n};\n\nconst getMaxBannerHeight = bannerSizes => {\n if (Array.isArray(bannerSizes) && bannerSizes.length > 0) {\n return Math.max(...bannerSizes.map(o => o.height));\n }\n return MAX_BANNER_HEIGHT;\n};\n\nconst getMinBannerHeight = bannerSizes => {\n if (Array.isArray(bannerSizes) && bannerSizes.length > 0) {\n return Math.min(...bannerSizes.map(o => o.height));\n }\n return MIN_BANNER_HEIGHT;\n};\n\nconst buildUserQuery = userProps => {\n if (!userProps || !userProps.length) return '';\n const basicProps = [];\n const nestedProps = {};\n userProps.forEach(({ propertiesToDisplay }) => {\n const [propKey] = propertiesToDisplay;\n if (!propKey || propKey === 'id') return;\n if (propKey.indexOf('.') !== -1) {\n const [baseProp, nestedProp] = propKey.split('.');\n if (nestedProps[baseProp]) nestedProps[baseProp].push(nestedProp);\n else nestedProps[baseProp] = [nestedProp];\n } else basicProps.push(propKey);\n });\n\n Object.keys(nestedProps).forEach(nestedKey => {\n const nested = nestedProps[nestedKey];\n basicProps.push(nestedKey);\n basicProps.push('{');\n nested.forEach(prop => basicProps.push(prop));\n basicProps.push('}');\n });\n\n return basicProps.join(' ');\n};\n\nconst buildPropsData = (data, props) => {\n if (!data || !props.length) return {};\n const propsWithData = {};\n\n props.forEach(({ propertiesToDisplay, label }) => {\n const [key] = propertiesToDisplay;\n if (!key) return;\n\n const parsedKey = key.split('.');\n const value = getNestedValue(parsedKey, data);\n const labelToUse = label || key;\n\n propsWithData[labelToUse] = value;\n });\n return propsWithData;\n};\n\nconst parseArrayValues = (arr, key) => arr.map(obj => obj[key]).filter(Boolean);\n\nconst getNestedValue = (keys, object) => {\n const key = keys.shift();\n const nestedValue = Array.isArray(object) ? parseArrayValues(object, key) : object[key];\n if (!nestedValue) return null;\n return keys.length ? getNestedValue(keys, nestedValue) : nestedValue;\n};\n\nexport {\n getParsedSizes,\n setCustomTargetings,\n buildParsedAdunit,\n buildBannerSizes,\n buildContextualTargeting,\n buildSizeMapping,\n getMaxBannerHeight,\n getMinBannerHeight,\n buildPropsData,\n buildUserQuery\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","names":["getParsedSizes","sizes","sanitizedSizes","replace","toLowerCase","sizeGroups","split","map","group","Number","addPosnToTargetings","targetings","index","posn","buildTargetingValue","valueTargeting","includes","char","setCustomTargetings","renderCounter","bannerTargetings","updatedTargetings","isValidTargeting","customTargeting","splitTargeting","Object","keys","forEach","key","keyTargeting","buildParsedAdunit","path","countContentHierarchies","baseAdunit","adunit","isInteger","base","process","env","DFP_BASE_ADUNIT","hasChildren","parseUrl","url","urlParts","filter","Boolean","urlPart","slice","length","join","endAdunit","END_ADUNIT","getBannerSizes","sizeId","bannerSizes","width","height","buildBannerSizes","parsedSizes","buildContextualTargeting","actionKey","props","propsToDisplay","data","buildPropsData","buildSizeMapping","sizeMapping","groupedViewports","reduce","acc","viewports","size","viewportWidth","viewportHeight","push","keyGroupedViewport","viewport","getMaxBannerHeight","Array","isArray","Math","max","o","MAX_BANNER_HEIGHT","getMinBannerHeight","min","MIN_BANNER_HEIGHT","buildUserQuery","userProps","basicProps","nestedProps","propertiesToDisplay","propKey","indexOf","baseProp","nestedProp","nestedKey","nested","prop","propsWithData","label","parsedKey","value","getNestedValue","labelToUse","parseArrayValues","arr","obj","object","shift","nestedValue"],"sources":["../../../src/components/Banner/helpers.js"],"sourcesContent":["import { parseUrl } from 'query-string';\nimport { END_ADUNIT, MAX_BANNER_HEIGHT, MIN_BANNER_HEIGHT } from '../../constants';\n\nconst getParsedSizes = (sizes = '') => {\n if (typeof sizes !== 'string') return [];\n\n const sanitizedSizes = sizes.replace(/\\s+/, '').toLowerCase();\n const sizeGroups = sanitizedSizes.split(',');\n\n return sizeGroups.map(group => group.split('x').map(Number));\n};\n\nconst addPosnToTargetings = (targetings, index) => {\n const posn = `posn=${index}`;\n return targetings ? `${targetings},${posn}` : posn;\n};\n\nconst buildTargetingValue = valueTargeting =>\n valueTargeting.includes('[') && valueTargeting.includes(']')\n ? valueTargeting.replace(/\\;|\\[|\\]/gm, char => (char === ';' ? ',' : '')).split(',')\n : valueTargeting;\n\nconst setCustomTargetings = (targetings, renderCounter) => {\n let bannerTargetings = {};\n\n const updatedTargetings = renderCounter\n ? addPosnToTargetings(targetings, renderCounter)\n : targetings;\n\n const isValidTargeting = updatedTargetings && typeof updatedTargetings === 'string';\n\n if (isValidTargeting) {\n const customTargeting = {};\n\n let splitTargeting = updatedTargetings.split(',');\n splitTargeting = { ...splitTargeting };\n\n Object.keys(splitTargeting).forEach(key => {\n const [keyTargeting, valueTargeting] = splitTargeting[key].split('=');\n\n if (keyTargeting && valueTargeting) {\n customTargeting[keyTargeting] = buildTargetingValue(valueTargeting);\n }\n });\n bannerTargetings = { ...bannerTargetings, ...customTargeting };\n }\n\n return bannerTargetings;\n};\n\nconst buildParsedAdunit = (path, countContentHierarchies, baseAdunit, adunit) => {\n if (!Number.isInteger(countContentHierarchies)) return '';\n\n const base = baseAdunit || process.env.DFP_BASE_ADUNIT;\n const hasChildren = countContentHierarchies !== 0;\n const { url } = parseUrl(path);\n let urlParts = url\n .split('/')\n .filter(Boolean)\n .map(urlPart => urlPart.replace(/-/g, ''));\n urlParts = urlParts.slice(0, hasChildren ? urlParts.length : urlParts.length - 1).join('/');\n urlParts = urlParts ? `${urlParts}/` : urlParts;\n const endAdunit = adunit || END_ADUNIT;\n\n return `${base}/${urlParts}${endAdunit}`;\n};\n\nconst getBannerSizes = (sizeId, bannerSizes) =>\n sizeId && bannerSizes && bannerSizes.length\n ? bannerSizes.map(({ width, height }) => [width, height])\n : null;\n\nconst buildBannerSizes = (sizeId, bannerSizes, sizes) => {\n let parsedSizes = getBannerSizes(sizeId, bannerSizes);\n\n if (!parsedSizes && sizes) parsedSizes = getParsedSizes(sizes);\n\n return parsedSizes;\n};\n\nconst buildContextualTargeting = (actionKey, props = {}, propsToDisplay = []) => {\n if (actionKey && props[actionKey] && props[actionKey][0]) {\n const data = props[actionKey][0];\n return buildPropsData(data, propsToDisplay);\n }\n return {};\n};\n\nconst buildSizeMapping = (sizeId, bannerSizes) => {\n let sizeMapping = [];\n\n if (sizeId && bannerSizes && bannerSizes.length) {\n const groupedViewports = bannerSizes.reduce((acc, { width, height, viewports = [] }) => {\n const size = width && height ? [width, height] : null; // if one dimension is falsey then it shouldn't display\n\n if (viewports) {\n viewports.forEach(({ width: viewportWidth, height: viewportHeight }) => {\n const key = `${viewportWidth || 0}x${viewportHeight || 0}`;\n acc[key] = acc[key] || [];\n if (size) acc[key].push(size);\n });\n }\n return acc;\n }, {});\n\n sizeMapping = Object.keys(groupedViewports).map(keyGroupedViewport => {\n const [viewportWidth, viewportHeight] = keyGroupedViewport.split('x');\n return {\n viewport: [Number(viewportWidth), Number(viewportHeight)],\n sizes: groupedViewports[keyGroupedViewport]\n };\n });\n }\n\n return sizeMapping;\n};\n\nconst getMaxBannerHeight = bannerSizes => {\n if (Array.isArray(bannerSizes) && bannerSizes.length > 0) {\n return Math.max(...bannerSizes.map(o => o.height));\n }\n return MAX_BANNER_HEIGHT;\n};\n\nconst getMinBannerHeight = bannerSizes => {\n if (Array.isArray(bannerSizes) && bannerSizes.length > 0) {\n return Math.min(...bannerSizes.map(o => o.height));\n }\n return MIN_BANNER_HEIGHT;\n};\n\nconst buildUserQuery = userProps => {\n if (!userProps || !userProps.length) return '';\n const basicProps = [];\n const nestedProps = {};\n userProps.forEach(({ propertiesToDisplay }) => {\n const [propKey] = propertiesToDisplay;\n if (!propKey || propKey === 'id') return;\n if (propKey.indexOf('.') !== -1) {\n const [baseProp, nestedProp] = propKey.split('.');\n if (nestedProps[baseProp]) nestedProps[baseProp].push(nestedProp);\n else nestedProps[baseProp] = [nestedProp];\n } else basicProps.push(propKey);\n });\n\n Object.keys(nestedProps).forEach(nestedKey => {\n const nested = nestedProps[nestedKey];\n basicProps.push(nestedKey);\n basicProps.push('{');\n nested.forEach(prop => basicProps.push(prop));\n basicProps.push('}');\n });\n\n return basicProps.join(' ');\n};\n\nconst buildPropsData = (data, props) => {\n if (!data || !props.length) return {};\n const propsWithData = {};\n\n props.forEach(({ propertiesToDisplay, label }) => {\n const [key] = propertiesToDisplay;\n if (!key) return;\n\n const parsedKey = key.split('.');\n const value = getNestedValue(parsedKey, data);\n const labelToUse = label || key;\n\n propsWithData[labelToUse] = value;\n });\n return propsWithData;\n};\n\nconst parseArrayValues = (arr, key) => arr.map(obj => obj[key]).filter(Boolean);\n\nconst getNestedValue = (keys, object) => {\n const key = keys.shift();\n const nestedValue = Array.isArray(object) ? parseArrayValues(object, key) : object[key];\n if (!nestedValue) return null;\n return keys.length ? getNestedValue(keys, nestedValue) : nestedValue;\n};\n\nexport {\n getParsedSizes,\n setCustomTargetings,\n buildParsedAdunit,\n buildBannerSizes,\n buildContextualTargeting,\n buildSizeMapping,\n getMaxBannerHeight,\n getMinBannerHeight,\n buildPropsData,\n buildUserQuery\n};\n"],"mappings":"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"}
@@ -62,7 +62,7 @@ var CardContainer = function CardContainer(_ref) {
62
62
  itemId = _useContext.itemId;
63
63
  var propsToDisplayModifiers = (0, _utils.getPropsToDisplayModifiers)(propsToDisplay);
64
64
  var dynamicWrapperSizes = enableCarousel ? '' : (0, _helpers.getDynamicGridClasses)('grid', itemsPerRow, designConfig);
65
- var cardBannerIndex = 0;
65
+ var renderCounter = 0;
66
66
  var CardWrapper = enableCarousel ? _CarouselWrapper["default"] : _Wrapper["default"];
67
67
  return /*#__PURE__*/_react["default"].createElement(CardWrapper, {
68
68
  className: dynamicWrapperSizes,
@@ -77,7 +77,7 @@ var CardContainer = function CardContainer(_ref) {
77
77
  entityProps = (0, _objectWithoutProperties2["default"])(_ref2, _excluded2);
78
78
  var extraProps = (0, _helpers2.parsePropsToDisplay)(entityProps, propsToDisplay);
79
79
  var dynamicKey = [itemId, index].join('-');
80
- if (baseAdunit) cardBannerIndex += 1;
80
+ if (baseAdunit) renderCounter += 1;
81
81
  var priority = priorityLimit > 0 && index + 1 <= priorityLimit;
82
82
  return baseAdunit ? /*#__PURE__*/_react["default"].createElement(_Banner["default"], (0, _extends2["default"])({
83
83
  key: dynamicKey,
@@ -85,7 +85,7 @@ var CardContainer = function CardContainer(_ref) {
85
85
  baseAdunit: baseAdunit
86
86
  }, entityProps, {
87
87
  modifier: modifier,
88
- cardBannerIndex: cardBannerIndex
88
+ renderCounter: renderCounter
89
89
  })) : /*#__PURE__*/_react["default"].createElement(_Card["default"], (0, _extends2["default"])({
90
90
  key: id,
91
91
  id: id,
@@ -1 +1 @@
1
- {"version":3,"file":"CardContainer.js","names":["CardContainer","cardData","gridModifier","style","displayCategory","displayThumbnail","displayTitle","modifier","entity","propsToDisplay","gtmChildren","cardChildren","name","designConfig","itemsPerRow","enableCarousel","bannerModifier","priorityLimit","enableAutoScroll","enableOverlay","autoScrollTimer","overlayModifier","titleOverlayModifier","cardProps","entities","getEntitiesWithBanner","useContext","MainContext","itemId","propsToDisplayModifiers","getPropsToDisplayModifiers","dynamicWrapperSizes","getDynamicGridClasses","cardBannerIndex","CardWrapper","CarouselWrapper","Wrapper","map","index","baseAdunit","id","entityProps","extraProps","parsePropsToDisplay","dynamicKey","join","priority","propTypes","PropTypes","array","isRequired","string","oneOfType","arrayOf","node","bool","object","number","defaultProps","withTitle"],"sources":["../../../src/components/Card/CardContainer.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { withTitle } from '../../HOC';\nimport Banner from '../Banner';\nimport Wrapper from '../Wrapper';\nimport CarouselWrapper from '../CarouselWrapper';\nimport Card from './Card';\nimport { getDynamicGridClasses } from './helpers';\nimport { getEntitiesWithBanner, parsePropsToDisplay } from '../../helpers';\nimport { getPropsToDisplayModifiers } from '../../utils';\n\nconst CardContainer = ({\n cardData,\n gridModifier,\n style,\n displayCategory,\n displayThumbnail,\n displayTitle,\n modifier,\n entity,\n propsToDisplay,\n gtmChildren,\n cardChildren,\n name,\n designConfig,\n itemsPerRow,\n enableCarousel,\n bannerModifier,\n priorityLimit,\n enableAutoScroll,\n enableOverlay,\n autoScrollTimer,\n overlayModifier,\n titleOverlayModifier,\n ...cardProps\n}) => {\n const entities = getEntitiesWithBanner(cardData, cardProps);\n const { itemId } = useContext(MainContext);\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const dynamicWrapperSizes = enableCarousel\n ? ''\n : getDynamicGridClasses('grid', itemsPerRow, designConfig);\n let cardBannerIndex = 0;\n const CardWrapper = enableCarousel ? CarouselWrapper : Wrapper;\n\n return (\n <CardWrapper\n className={dynamicWrapperSizes}\n modifiers={gridModifier}\n itemsPerRow={itemsPerRow}\n bannerModifier={bannerModifier}\n enableAutoScroll={enableAutoScroll}\n autoScrollTimer={autoScrollTimer}>\n {entities.map(({ baseAdunit, id, ...entityProps }, index) => {\n const extraProps = parsePropsToDisplay(entityProps, propsToDisplay);\n const dynamicKey = [itemId, index].join('-');\n if (baseAdunit) cardBannerIndex += 1;\n\n const priority = priorityLimit > 0 && index + 1 <= priorityLimit;\n\n return baseAdunit ? (\n <Banner\n key={dynamicKey}\n entity={entity}\n baseAdunit={baseAdunit}\n {...entityProps}\n modifier={modifier}\n cardBannerIndex={cardBannerIndex}\n />\n ) : (\n <Card\n key={id}\n id={id}\n enableCarousel={enableCarousel}\n entity={entity}\n propsToDisplay={propsToDisplay}\n parsedPropsToDisplay={extraProps}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n gtmChildren={gtmChildren}\n gtmId={name}\n gridModifier={gridModifier}\n entityProps={entityProps}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n priority={priority}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...entityProps}\n />\n );\n })}\n </CardWrapper>\n );\n};\n\nCardContainer.propTypes = {\n cardData: PropTypes.array.isRequired,\n name: PropTypes.string,\n entity: PropTypes.string.isRequired,\n gridModifier: PropTypes.string,\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n propsToDisplay: PropTypes.array,\n displayCategory: PropTypes.bool,\n displayThumbnail: PropTypes.bool,\n displayTitle: PropTypes.bool,\n modifier: PropTypes.string,\n style: PropTypes.string,\n designConfig: PropTypes.object,\n itemsPerRow: PropTypes.number,\n enableCarousel: PropTypes.bool,\n bannerModifier: PropTypes.string,\n priorityLimit: PropTypes.number,\n enableAutoScroll: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number\n};\n\nCardContainer.defaultProps = {\n gtmChildren: [],\n cardChildren: [],\n name: '',\n gridModifier: '',\n propsToDisplay: [],\n displayCategory: true,\n displayThumbnail: true,\n displayTitle: true,\n modifier: '',\n style: 'portrait',\n designConfig: {},\n itemsPerRow: 1,\n enableCarousel: false,\n bannerModifier: '',\n priorityLimit: 0,\n enableAutoScroll: false,\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: ''\n};\n\nexport default withTitle(CardContainer);\n"],"mappings":"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"}
1
+ {"version":3,"file":"CardContainer.js","names":["CardContainer","cardData","gridModifier","style","displayCategory","displayThumbnail","displayTitle","modifier","entity","propsToDisplay","gtmChildren","cardChildren","name","designConfig","itemsPerRow","enableCarousel","bannerModifier","priorityLimit","enableAutoScroll","enableOverlay","autoScrollTimer","overlayModifier","titleOverlayModifier","cardProps","entities","getEntitiesWithBanner","useContext","MainContext","itemId","propsToDisplayModifiers","getPropsToDisplayModifiers","dynamicWrapperSizes","getDynamicGridClasses","renderCounter","CardWrapper","CarouselWrapper","Wrapper","map","index","baseAdunit","id","entityProps","extraProps","parsePropsToDisplay","dynamicKey","join","priority","propTypes","PropTypes","array","isRequired","string","oneOfType","arrayOf","node","bool","object","number","defaultProps","withTitle"],"sources":["../../../src/components/Card/CardContainer.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { withTitle } from '../../HOC';\nimport Banner from '../Banner';\nimport Wrapper from '../Wrapper';\nimport CarouselWrapper from '../CarouselWrapper';\nimport Card from './Card';\nimport { getDynamicGridClasses } from './helpers';\nimport { getEntitiesWithBanner, parsePropsToDisplay } from '../../helpers';\nimport { getPropsToDisplayModifiers } from '../../utils';\n\nconst CardContainer = ({\n cardData,\n gridModifier,\n style,\n displayCategory,\n displayThumbnail,\n displayTitle,\n modifier,\n entity,\n propsToDisplay,\n gtmChildren,\n cardChildren,\n name,\n designConfig,\n itemsPerRow,\n enableCarousel,\n bannerModifier,\n priorityLimit,\n enableAutoScroll,\n enableOverlay,\n autoScrollTimer,\n overlayModifier,\n titleOverlayModifier,\n ...cardProps\n}) => {\n const entities = getEntitiesWithBanner(cardData, cardProps);\n const { itemId } = useContext(MainContext);\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const dynamicWrapperSizes = enableCarousel\n ? ''\n : getDynamicGridClasses('grid', itemsPerRow, designConfig);\n let renderCounter = 0;\n const CardWrapper = enableCarousel ? CarouselWrapper : Wrapper;\n\n return (\n <CardWrapper\n className={dynamicWrapperSizes}\n modifiers={gridModifier}\n itemsPerRow={itemsPerRow}\n bannerModifier={bannerModifier}\n enableAutoScroll={enableAutoScroll}\n autoScrollTimer={autoScrollTimer}>\n {entities.map(({ baseAdunit, id, ...entityProps }, index) => {\n const extraProps = parsePropsToDisplay(entityProps, propsToDisplay);\n const dynamicKey = [itemId, index].join('-');\n if (baseAdunit) renderCounter += 1;\n\n const priority = priorityLimit > 0 && index + 1 <= priorityLimit;\n\n return baseAdunit ? (\n <Banner\n key={dynamicKey}\n entity={entity}\n baseAdunit={baseAdunit}\n {...entityProps}\n modifier={modifier}\n renderCounter={renderCounter}\n />\n ) : (\n <Card\n key={id}\n id={id}\n enableCarousel={enableCarousel}\n entity={entity}\n propsToDisplay={propsToDisplay}\n parsedPropsToDisplay={extraProps}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n gtmChildren={gtmChildren}\n gtmId={name}\n gridModifier={gridModifier}\n entityProps={entityProps}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n priority={priority}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...entityProps}\n />\n );\n })}\n </CardWrapper>\n );\n};\n\nCardContainer.propTypes = {\n cardData: PropTypes.array.isRequired,\n name: PropTypes.string,\n entity: PropTypes.string.isRequired,\n gridModifier: PropTypes.string,\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n propsToDisplay: PropTypes.array,\n displayCategory: PropTypes.bool,\n displayThumbnail: PropTypes.bool,\n displayTitle: PropTypes.bool,\n modifier: PropTypes.string,\n style: PropTypes.string,\n designConfig: PropTypes.object,\n itemsPerRow: PropTypes.number,\n enableCarousel: PropTypes.bool,\n bannerModifier: PropTypes.string,\n priorityLimit: PropTypes.number,\n enableAutoScroll: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number\n};\n\nCardContainer.defaultProps = {\n gtmChildren: [],\n cardChildren: [],\n name: '',\n gridModifier: '',\n propsToDisplay: [],\n displayCategory: true,\n displayThumbnail: true,\n displayTitle: true,\n modifier: '',\n style: 'portrait',\n designConfig: {},\n itemsPerRow: 1,\n enableCarousel: false,\n bannerModifier: '',\n priorityLimit: 0,\n enableAutoScroll: false,\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: ''\n};\n\nexport default withTitle(CardContainer);\n"],"mappings":"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"}
@@ -30,16 +30,17 @@ var _HOC = require("../../HOC");
30
30
  var _utils = require("../../utils");
31
31
  var _constants = require("../../constants");
32
32
  var _helpers = require("./helpers");
33
- var _excluded = ["code"];
33
+ var _excluded = ["code", "parserOptions"];
34
34
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
35
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
36
36
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
37
37
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
38
38
  var Code = /*#__PURE__*/(0, _react.memo)(function (_ref) {
39
39
  var embedCode = _ref.code,
40
+ parserOptions = _ref.parserOptions,
40
41
  otherProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
41
42
  if (!embedCode) return null;
42
- var parsedCode = (0, _htmlReactParser["default"])(embedCode);
43
+ var parsedCode = (0, _htmlReactParser["default"])(embedCode, parserOptions);
43
44
  var wrappedCode = (0, _helpers.wrapScriptTags)(parsedCode);
44
45
  var modifiers = (0, _utils.getClassModifiers)(_constants.CODE, _objectSpread({}, otherProps));
45
46
  return /*#__PURE__*/_react["default"].createElement(_Wrapper["default"], {
@@ -48,11 +49,13 @@ var Code = /*#__PURE__*/(0, _react.memo)(function (_ref) {
48
49
  });
49
50
  Code.propTypes = {
50
51
  code: _propTypes["default"].string,
51
- modifier: _propTypes["default"].string
52
+ modifier: _propTypes["default"].string,
53
+ parserOptions: _propTypes["default"].object
52
54
  };
53
55
  Code.defaultProps = {
54
56
  code: '',
55
- modifier: ''
57
+ modifier: '',
58
+ parserOptions: {}
56
59
  };
57
60
  var _default = (0, _HOC.withTitle)(Code);
58
61
  exports["default"] = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"Code.js","names":["Code","memo","embedCode","code","otherProps","parsedCode","parseHTML","wrappedCode","wrapScriptTags","modifiers","getClassModifiers","CODE","propTypes","PropTypes","string","modifier","defaultProps","withTitle"],"sources":["../../../src/components/Code/Code.js"],"sourcesContent":["import React, { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport parseHTML from 'html-react-parser';\nimport Wrapper from '../Wrapper';\nimport { withTitle } from '../../HOC';\nimport { getClassModifiers } from '../../utils';\nimport { CODE } from '../../constants';\nimport { wrapScriptTags } from './helpers';\n\nconst Code = memo(({ code: embedCode, ...otherProps }) => {\n if (!embedCode) return null;\n\n const parsedCode = parseHTML(embedCode);\n const wrappedCode = wrapScriptTags(parsedCode);\n const modifiers = getClassModifiers(CODE, { ...otherProps });\n\n return <Wrapper modifiers={modifiers}>{wrappedCode}</Wrapper>;\n});\n\nCode.propTypes = {\n code: PropTypes.string,\n modifier: PropTypes.string\n};\n\nCode.defaultProps = {\n code: '',\n modifier: ''\n};\n\nexport default withTitle(Code);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAA2C;AAAA;AAAA;AAAA;AAAA;AAE3C,IAAMA,IAAI,gBAAG,IAAAC,WAAI,EAAC,gBAAwC;EAAA,IAA/BC,SAAS,QAAfC,IAAI;IAAgBC,UAAU;EACjD,IAAI,CAACF,SAAS,EAAE,OAAO,IAAI;EAE3B,IAAMG,UAAU,GAAG,IAAAC,2BAAS,EAACJ,SAAS,CAAC;EACvC,IAAMK,WAAW,GAAG,IAAAC,uBAAc,EAACH,UAAU,CAAC;EAC9C,IAAMI,SAAS,GAAG,IAAAC,wBAAiB,EAACC,eAAI,oBAAOP,UAAU,EAAG;EAE5D,oBAAO,gCAAC,mBAAO;IAAC,SAAS,EAAEK;EAAU,GAAEF,WAAW,CAAW;AAC/D,CAAC,CAAC;AAEFP,IAAI,CAACY,SAAS,GAAG;EACfT,IAAI,EAAEU,qBAAS,CAACC,MAAM;EACtBC,QAAQ,EAAEF,qBAAS,CAACC;AACtB,CAAC;AAEDd,IAAI,CAACgB,YAAY,GAAG;EAClBb,IAAI,EAAE,EAAE;EACRY,QAAQ,EAAE;AACZ,CAAC;AAAC,eAEa,IAAAE,cAAS,EAACjB,IAAI,CAAC;AAAA"}
1
+ {"version":3,"file":"Code.js","names":["Code","memo","embedCode","code","parserOptions","otherProps","parsedCode","parseHTML","wrappedCode","wrapScriptTags","modifiers","getClassModifiers","CODE","propTypes","PropTypes","string","modifier","object","defaultProps","withTitle"],"sources":["../../../src/components/Code/Code.js"],"sourcesContent":["import React, { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport parseHTML from 'html-react-parser';\nimport Wrapper from '../Wrapper';\nimport { withTitle } from '../../HOC';\nimport { getClassModifiers } from '../../utils';\nimport { CODE } from '../../constants';\nimport { wrapScriptTags } from './helpers';\n\nconst Code = memo(({ code: embedCode, parserOptions, ...otherProps }) => {\n if (!embedCode) return null;\n\n const parsedCode = parseHTML(embedCode, parserOptions);\n const wrappedCode = wrapScriptTags(parsedCode);\n const modifiers = getClassModifiers(CODE, { ...otherProps });\n\n return <Wrapper modifiers={modifiers}>{wrappedCode}</Wrapper>;\n});\n\nCode.propTypes = {\n code: PropTypes.string,\n modifier: PropTypes.string,\n parserOptions: PropTypes.object\n};\n\nCode.defaultProps = {\n code: '',\n modifier: '',\n parserOptions: {}\n};\n\nexport default withTitle(Code);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAA2C;AAAA;AAAA;AAAA;AAAA;AAE3C,IAAMA,IAAI,gBAAG,IAAAC,WAAI,EAAC,gBAAuD;EAAA,IAA9CC,SAAS,QAAfC,IAAI;IAAaC,aAAa,QAAbA,aAAa;IAAKC,UAAU;EAChE,IAAI,CAACH,SAAS,EAAE,OAAO,IAAI;EAE3B,IAAMI,UAAU,GAAG,IAAAC,2BAAS,EAACL,SAAS,EAAEE,aAAa,CAAC;EACtD,IAAMI,WAAW,GAAG,IAAAC,uBAAc,EAACH,UAAU,CAAC;EAC9C,IAAMI,SAAS,GAAG,IAAAC,wBAAiB,EAACC,eAAI,oBAAOP,UAAU,EAAG;EAE5D,oBAAO,gCAAC,mBAAO;IAAC,SAAS,EAAEK;EAAU,GAAEF,WAAW,CAAW;AAC/D,CAAC,CAAC;AAEFR,IAAI,CAACa,SAAS,GAAG;EACfV,IAAI,EAAEW,qBAAS,CAACC,MAAM;EACtBC,QAAQ,EAAEF,qBAAS,CAACC,MAAM;EAC1BX,aAAa,EAAEU,qBAAS,CAACG;AAC3B,CAAC;AAEDjB,IAAI,CAACkB,YAAY,GAAG;EAClBf,IAAI,EAAE,EAAE;EACRa,QAAQ,EAAE,EAAE;EACZZ,aAAa,EAAE,CAAC;AAClB,CAAC;AAAC,eAEa,IAAAe,cAAS,EAACnB,IAAI,CAAC;AAAA"}
@@ -30,9 +30,13 @@ function getWrappedScriptTag(child) {
30
30
  function wrapScriptTags(parsedCode) {
31
31
  if (Array.isArray(parsedCode)) {
32
32
  parsedCode.forEach(function (child, index) {
33
- // modify children array as we just want to wrap single components
34
- // eslint-disable-next-line no-param-reassign
35
- parsedCode[index] = getWrappedScriptTag(child);
33
+ try {
34
+ // modify children array as we just want to wrap single components
35
+ // eslint-disable-next-line no-param-reassign
36
+ parsedCode[index] = getWrappedScriptTag(child);
37
+ } catch (_unused) {
38
+ // catch read-only element errors
39
+ }
36
40
  });
37
41
  return parsedCode;
38
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wrap-script-tags.js","names":["getWrappedScriptTag","child","props","children","scriptProps","type","key","React","cloneElement","wrapScriptTags","parsedCode","Array","isArray","forEach","index"],"sources":["../../../../src/components/Code/helpers/wrap-script-tags.js"],"sourcesContent":["import React from 'react';\nimport ScriptTag from '../ScriptTag';\n\nfunction getWrappedScriptTag(child) {\n if (!child) return child;\n\n if (typeof child === 'string') return child;\n\n const { children, ...scriptProps } = child.props;\n if (child.type === 'script') return <ScriptTag {...scriptProps} key={child.key} />;\n\n if (!children) return child;\n\n return React.cloneElement(child, child.props, wrapScriptTags(children));\n}\n\nfunction wrapScriptTags(parsedCode) {\n if (Array.isArray(parsedCode)) {\n parsedCode.forEach((child, index) => {\n // modify children array as we just want to wrap single components\n // eslint-disable-next-line no-param-reassign\n parsedCode[index] = getWrappedScriptTag(child);\n });\n\n return parsedCode;\n }\n\n return getWrappedScriptTag(parsedCode);\n}\n\nexport default wrapScriptTags;\n"],"mappings":";;;;;;;;;;;;;;AAAA;AACA;AAAqC;AAErC,SAASA,mBAAmB,CAACC,KAAK,EAAE;EAClC,IAAI,CAACA,KAAK,EAAE,OAAOA,KAAK;EAExB,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE,OAAOA,KAAK;EAE3C,mBAAqCA,KAAK,CAACC,KAAK;IAAxCC,QAAQ,gBAARA,QAAQ;IAAKC,WAAW;EAChC,IAAIH,KAAK,CAACI,IAAI,KAAK,QAAQ,EAAE,oBAAO,gCAAC,qBAAS,gCAAKD,WAAW;IAAE,GAAG,EAAEH,KAAK,CAACK;EAAI,GAAG;EAElF,IAAI,CAACH,QAAQ,EAAE,OAAOF,KAAK;EAE3B,oBAAOM,iBAAK,CAACC,YAAY,CAACP,KAAK,EAAEA,KAAK,CAACC,KAAK,EAAEO,cAAc,CAACN,QAAQ,CAAC,CAAC;AACzE;AAEA,SAASM,cAAc,CAACC,UAAU,EAAE;EAClC,IAAIC,KAAK,CAACC,OAAO,CAACF,UAAU,CAAC,EAAE;IAC7BA,UAAU,CAACG,OAAO,CAAC,UAACZ,KAAK,EAAEa,KAAK,EAAK;MACnC;MACA;MACAJ,UAAU,CAACI,KAAK,CAAC,GAAGd,mBAAmB,CAACC,KAAK,CAAC;IAChD,CAAC,CAAC;IAEF,OAAOS,UAAU;EACnB;EAEA,OAAOV,mBAAmB,CAACU,UAAU,CAAC;AACxC;AAAC,eAEcD,cAAc;AAAA"}
1
+ {"version":3,"file":"wrap-script-tags.js","names":["getWrappedScriptTag","child","props","children","scriptProps","type","key","React","cloneElement","wrapScriptTags","parsedCode","Array","isArray","forEach","index"],"sources":["../../../../src/components/Code/helpers/wrap-script-tags.js"],"sourcesContent":["import React from 'react';\nimport ScriptTag from '../ScriptTag';\n\nfunction getWrappedScriptTag(child) {\n if (!child) return child;\n\n if (typeof child === 'string') return child;\n\n const { children, ...scriptProps } = child.props;\n if (child.type === 'script') return <ScriptTag {...scriptProps} key={child.key} />;\n\n if (!children) return child;\n\n return React.cloneElement(child, child.props, wrapScriptTags(children));\n}\n\nfunction wrapScriptTags(parsedCode) {\n if (Array.isArray(parsedCode)) {\n parsedCode.forEach((child, index) => {\n try {\n // modify children array as we just want to wrap single components\n // eslint-disable-next-line no-param-reassign\n parsedCode[index] = getWrappedScriptTag(child);\n } catch {\n // catch read-only element errors\n }\n });\n\n return parsedCode;\n }\n\n return getWrappedScriptTag(parsedCode);\n}\n\nexport default wrapScriptTags;\n"],"mappings":";;;;;;;;;;;;;;AAAA;AACA;AAAqC;AAErC,SAASA,mBAAmB,CAACC,KAAK,EAAE;EAClC,IAAI,CAACA,KAAK,EAAE,OAAOA,KAAK;EAExB,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE,OAAOA,KAAK;EAE3C,mBAAqCA,KAAK,CAACC,KAAK;IAAxCC,QAAQ,gBAARA,QAAQ;IAAKC,WAAW;EAChC,IAAIH,KAAK,CAACI,IAAI,KAAK,QAAQ,EAAE,oBAAO,gCAAC,qBAAS,gCAAKD,WAAW;IAAE,GAAG,EAAEH,KAAK,CAACK;EAAI,GAAG;EAElF,IAAI,CAACH,QAAQ,EAAE,OAAOF,KAAK;EAE3B,oBAAOM,iBAAK,CAACC,YAAY,CAACP,KAAK,EAAEA,KAAK,CAACC,KAAK,EAAEO,cAAc,CAACN,QAAQ,CAAC,CAAC;AACzE;AAEA,SAASM,cAAc,CAACC,UAAU,EAAE;EAClC,IAAIC,KAAK,CAACC,OAAO,CAACF,UAAU,CAAC,EAAE;IAC7BA,UAAU,CAACG,OAAO,CAAC,UAACZ,KAAK,EAAEa,KAAK,EAAK;MACnC,IAAI;QACF;QACA;QACAJ,UAAU,CAACI,KAAK,CAAC,GAAGd,mBAAmB,CAACC,KAAK,CAAC;MAChD,CAAC,CAAC,gBAAM;QACN;MAAA;IAEJ,CAAC,CAAC;IAEF,OAAOS,UAAU;EACnB;EAEA,OAAOV,mBAAmB,CAACU,UAAU,CAAC;AACxC;AAAC,eAEcD,cAAc;AAAA"}
@@ -7,12 +7,15 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports["default"] = void 0;
9
9
  require("core-js/modules/es.function.name.js");
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
11
  var _react = _interopRequireDefault(require("react"));
11
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
13
  var _helpers = require("../../helpers");
14
+ var _excluded = ["children", "name"];
13
15
  var ContentGroupSection = function ContentGroupSection(_ref) {
14
16
  var children = _ref.children,
15
- name = _ref.name;
17
+ name = _ref.name,
18
+ props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
16
19
  if (!(0, _helpers.hasChildren)(children)) return null;
17
20
  return /*#__PURE__*/_react["default"].createElement("div", {
18
21
  key: name,
@@ -21,10 +24,11 @@ var ContentGroupSection = function ContentGroupSection(_ref) {
21
24
  };
22
25
  ContentGroupSection.propTypes = {
23
26
  children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]),
24
- name: _propTypes["default"].string.isRequired
27
+ name: _propTypes["default"].string
25
28
  };
26
29
  ContentGroupSection.defaultProps = {
27
- children: null
30
+ children: null,
31
+ name: ''
28
32
  };
29
33
  var _default = ContentGroupSection;
30
34
  exports["default"] = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"ContentGroupSection.js","names":["ContentGroupSection","children","name","hasChildren","propTypes","PropTypes","oneOfType","arrayOf","node","string","isRequired","defaultProps"],"sources":["../../../src/components/ContentGroupSection/ContentGroupSection.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { hasChildren } from '../../helpers';\n\nconst ContentGroupSection = ({ children, name }) => {\n if (!hasChildren(children)) return null;\n\n return (\n <div key={name} className=\"content-group-section\">\n {children}\n </div>\n );\n};\n\nContentGroupSection.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n name: PropTypes.string.isRequired\n};\n\nContentGroupSection.defaultProps = {\n children: null\n};\n\nexport default ContentGroupSection;\n"],"mappings":";;;;;;;;;AAAA;AACA;AACA;AAEA,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAmB,OAA2B;EAAA,IAArBC,QAAQ,QAARA,QAAQ;IAAEC,IAAI,QAAJA,IAAI;EAC3C,IAAI,CAAC,IAAAC,oBAAW,EAACF,QAAQ,CAAC,EAAE,OAAO,IAAI;EAEvC,oBACE;IAAK,GAAG,EAAEC,IAAK;IAAC,SAAS,EAAC;EAAuB,GAC9CD,QAAQ,CACL;AAEV,CAAC;AAEDD,mBAAmB,CAACI,SAAS,GAAG;EAC9BH,QAAQ,EAAEI,qBAAS,CAACC,SAAS,CAAC,CAACD,qBAAS,CAACE,OAAO,CAACF,qBAAS,CAACG,IAAI,CAAC,EAAEH,qBAAS,CAACG,IAAI,CAAC,CAAC;EAClFN,IAAI,EAAEG,qBAAS,CAACI,MAAM,CAACC;AACzB,CAAC;AAEDV,mBAAmB,CAACW,YAAY,GAAG;EACjCV,QAAQ,EAAE;AACZ,CAAC;AAAC,eAEaD,mBAAmB;AAAA"}
1
+ {"version":3,"file":"ContentGroupSection.js","names":["ContentGroupSection","children","name","props","hasChildren","propTypes","PropTypes","oneOfType","arrayOf","node","string","defaultProps"],"sources":["../../../src/components/ContentGroupSection/ContentGroupSection.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { hasChildren } from '../../helpers';\n\nconst ContentGroupSection = ({ children, name, ...props }) => {\n if (!hasChildren(children)) return null;\n\n return (\n <div key={name} className=\"content-group-section\">\n {children}\n </div>\n );\n};\n\nContentGroupSection.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n name: PropTypes.string\n};\n\nContentGroupSection.defaultProps = { children: null, name: '' };\n\nexport default ContentGroupSection;\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AAA4C;AAE5C,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAmB,OAAqC;EAAA,IAA/BC,QAAQ,QAARA,QAAQ;IAAEC,IAAI,QAAJA,IAAI;IAAKC,KAAK;EACrD,IAAI,CAAC,IAAAC,oBAAW,EAACH,QAAQ,CAAC,EAAE,OAAO,IAAI;EAEvC,oBACE;IAAK,GAAG,EAAEC,IAAK;IAAC,SAAS,EAAC;EAAuB,GAC9CD,QAAQ,CACL;AAEV,CAAC;AAEDD,mBAAmB,CAACK,SAAS,GAAG;EAC9BJ,QAAQ,EAAEK,qBAAS,CAACC,SAAS,CAAC,CAACD,qBAAS,CAACE,OAAO,CAACF,qBAAS,CAACG,IAAI,CAAC,EAAEH,qBAAS,CAACG,IAAI,CAAC,CAAC;EAClFP,IAAI,EAAEI,qBAAS,CAACI;AAClB,CAAC;AAEDV,mBAAmB,CAACW,YAAY,GAAG;EAAEV,QAAQ,EAAE,IAAI;EAAEC,IAAI,EAAE;AAAG,CAAC;AAAC,eAEjDF,mBAAmB;AAAA"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ require("core-js/modules/es.array.concat.js");
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _propTypes = _interopRequireDefault(require("prop-types"));
12
+ var _iframeResizerReact = _interopRequireDefault(require("iframe-resizer-react"));
13
+ var _constants = require("./constants");
14
+ var Iframe = function Iframe(_ref) {
15
+ var src = _ref.src,
16
+ modifier = _ref.modifier,
17
+ width = _ref.width,
18
+ height = _ref.height,
19
+ enableScrolling = _ref.enableScrolling;
20
+ if (!src) return null;
21
+ var modifierString = modifier ? " ".concat(modifier) : '';
22
+ var iframeClassName = "".concat(_constants.IFRAME_CLASS).concat(modifierString);
23
+ var defaultWidth = !width ? _constants.DEFAULT_WIDTH : {};
24
+ return /*#__PURE__*/_react["default"].createElement("div", {
25
+ className: iframeClassName
26
+ }, /*#__PURE__*/_react["default"].createElement(_iframeResizerReact["default"], {
27
+ scrolling: enableScrolling,
28
+ autoResize: true,
29
+ src: src,
30
+ sizeHeight: !height,
31
+ height: height,
32
+ width: width,
33
+ style: defaultWidth
34
+ }));
35
+ };
36
+ Iframe.propTypes = {
37
+ src: _propTypes["default"].string.isRequired,
38
+ enableScrolling: _propTypes["default"].bool,
39
+ modifier: _propTypes["default"].string,
40
+ width: _propTypes["default"].string,
41
+ height: _propTypes["default"].string
42
+ };
43
+ Iframe.defaultProps = {
44
+ enableScrolling: false,
45
+ modifier: '',
46
+ width: '',
47
+ height: ''
48
+ };
49
+ var _default = Iframe;
50
+ exports["default"] = _default;
51
+ //# sourceMappingURL=Iframe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Iframe.js","names":["Iframe","src","modifier","width","height","enableScrolling","modifierString","iframeClassName","IFRAME_CLASS","defaultWidth","DEFAULT_WIDTH","propTypes","PropTypes","string","isRequired","bool","defaultProps"],"sources":["../../../src/components/Iframe/Iframe.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport IframeResizer from 'iframe-resizer-react';\nimport { IFRAME_CLASS, DEFAULT_WIDTH } from './constants';\n\nconst Iframe = ({ src, modifier, width, height, enableScrolling }) => {\n if (!src) return null;\n const modifierString = modifier ? ` ${modifier}` : '';\n const iframeClassName = `${IFRAME_CLASS}${modifierString}`;\n const defaultWidth = !width ? DEFAULT_WIDTH : {};\n return (\n <div className={iframeClassName}>\n <IframeResizer\n scrolling={enableScrolling}\n autoResize\n src={src}\n sizeHeight={!height}\n height={height}\n width={width}\n style={defaultWidth}\n />\n </div>\n );\n};\n\nIframe.propTypes = {\n src: PropTypes.string.isRequired,\n enableScrolling: PropTypes.bool,\n modifier: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string\n};\n\nIframe.defaultProps = { enableScrolling: false, modifier: '', width: '', height: '' };\n\nexport default Iframe;\n"],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAM,OAA0D;EAAA,IAApDC,GAAG,QAAHA,GAAG;IAAEC,QAAQ,QAARA,QAAQ;IAAEC,KAAK,QAALA,KAAK;IAAEC,MAAM,QAANA,MAAM;IAAEC,eAAe,QAAfA,eAAe;EAC7D,IAAI,CAACJ,GAAG,EAAE,OAAO,IAAI;EACrB,IAAMK,cAAc,GAAGJ,QAAQ,cAAOA,QAAQ,IAAK,EAAE;EACrD,IAAMK,eAAe,aAAMC,uBAAY,SAAGF,cAAc,CAAE;EAC1D,IAAMG,YAAY,GAAG,CAACN,KAAK,GAAGO,wBAAa,GAAG,CAAC,CAAC;EAChD,oBACE;IAAK,SAAS,EAAEH;EAAgB,gBAC9B,gCAAC,8BAAa;IACZ,SAAS,EAAEF,eAAgB;IAC3B,UAAU;IACV,GAAG,EAAEJ,GAAI;IACT,UAAU,EAAE,CAACG,MAAO;IACpB,MAAM,EAAEA,MAAO;IACf,KAAK,EAAED,KAAM;IACb,KAAK,EAAEM;EAAa,EACpB,CACE;AAEV,CAAC;AAEDT,MAAM,CAACW,SAAS,GAAG;EACjBV,GAAG,EAAEW,qBAAS,CAACC,MAAM,CAACC,UAAU;EAChCT,eAAe,EAAEO,qBAAS,CAACG,IAAI;EAC/Bb,QAAQ,EAAEU,qBAAS,CAACC,MAAM;EAC1BV,KAAK,EAAES,qBAAS,CAACC,MAAM;EACvBT,MAAM,EAAEQ,qBAAS,CAACC;AACpB,CAAC;AAEDb,MAAM,CAACgB,YAAY,GAAG;EAAEX,eAAe,EAAE,KAAK;EAAEH,QAAQ,EAAE,EAAE;EAAEC,KAAK,EAAE,EAAE;EAAEC,MAAM,EAAE;AAAG,CAAC;AAAC,eAEvEJ,MAAM;AAAA"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.IFRAME_CLASS = exports.DEFAULT_WIDTH = void 0;
8
+ var IFRAME_CLASS = 'iframe-container';
9
+ exports.IFRAME_CLASS = IFRAME_CLASS;
10
+ var DEFAULT_WIDTH = {
11
+ width: '1px',
12
+ minWidth: '100%'
13
+ };
14
+ exports.DEFAULT_WIDTH = DEFAULT_WIDTH;
15
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","names":["IFRAME_CLASS","DEFAULT_WIDTH","width","minWidth"],"sources":["../../../src/components/Iframe/constants.js"],"sourcesContent":["const IFRAME_CLASS = 'iframe-container';\nconst DEFAULT_WIDTH = { width: '1px', minWidth: '100%' };\n\nexport { IFRAME_CLASS, DEFAULT_WIDTH };\n"],"mappings":";;;;;;;AAAA,IAAMA,YAAY,GAAG,kBAAkB;AAAC;AACxC,IAAMC,aAAa,GAAG;EAAEC,KAAK,EAAE,KAAK;EAAEC,QAAQ,EAAE;AAAO,CAAC;AAAC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _Iframe = _interopRequireDefault(require("./Iframe"));
10
+ var _default = _Iframe["default"];
11
+ exports["default"] = _default;
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["Iframe"],"sources":["../../../src/components/Iframe/index.js"],"sourcesContent":["import Iframe from './Iframe';\n\nexport default Iframe;\n"],"mappings":";;;;;;;;AAAA;AAA8B,eAEfA,kBAAM;AAAA"}
@@ -87,7 +87,7 @@ var CardsRenderItem = function CardsRenderItem(_ref) {
87
87
  overlayModifier: overlayModifier,
88
88
  titleOverlayModifier: titleOverlayModifier
89
89
  }, cardProps))), shouldRenderBanner && /*#__PURE__*/_react["default"].createElement(_Banner["default"], (0, _extends2["default"])({}, bannerProps, {
90
- cardBannerIndex: bannerIndex
90
+ renderCounter: bannerIndex
91
91
  })));
92
92
  };
93
93
  CardsRenderItem.propTypes = {
@@ -1 +1 @@
1
- {"version":3,"file":"CardsRenderItem.js","names":["CardsRenderItem","cardProps","listProps","bannerProps","index","entity","currentListLength","cardChildren","gtmChildren","modifier","gridModifier","propsToDisplayModifiers","propsToDisplay","shouldRenderBanner","bannerIndex","priority","enableOverlay","autoScrollTimer","arrowSize","overlayModifier","titleOverlayModifier","initialOffset","isInfinite","style","name","id","triggerInfiniteScroll","displayCount","displayCategory","displayThumbnail","displayTitle","listTotal","itemsPerPage","currentItemIndex","renderWaypoint","shouldRenderWaypoint","shouldRenderGtm","checkIfShouldRenderGtm","parsedPropsToDisplay","parsePropsToDisplay","renderChildren","propTypes","PropTypes","object","isRequired","number","array","bool","string","oneOfType","arrayOf","node","defaultProps"],"sources":["../../../../../src/components/List/components/Cards/CardsRenderItem.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Waypoint } from 'react-waypoint';\nimport Card from '../../../Card/Card';\nimport { shouldRenderWaypoint, renderChildren, parsePropsToDisplay } from '../../../../helpers';\nimport { checkIfShouldRenderGtm } from '../helpers';\nimport Banner from '../../../Banner';\n\nconst CardsRenderItem = ({\n cardProps,\n listProps,\n bannerProps,\n index,\n entity,\n currentListLength,\n cardChildren,\n gtmChildren,\n modifier,\n gridModifier,\n propsToDisplayModifiers,\n propsToDisplay,\n shouldRenderBanner,\n bannerIndex,\n priority,\n enableOverlay,\n autoScrollTimer,\n arrowSize,\n overlayModifier,\n titleOverlayModifier\n}) => {\n const {\n initialOffset,\n isInfinite,\n style,\n name,\n id,\n triggerInfiniteScroll,\n displayCount,\n displayCategory = true,\n displayThumbnail = true,\n displayTitle = true,\n listTotal,\n itemsPerPage\n } = listProps;\n\n const currentItemIndex = initialOffset + index;\n const renderWaypoint =\n isInfinite && shouldRenderWaypoint(index, currentListLength, currentItemIndex, listTotal);\n const shouldRenderGtm =\n gtmChildren && checkIfShouldRenderGtm(itemsPerPage, currentListLength, index);\n\n const parsedPropsToDisplay = parsePropsToDisplay(cardProps, propsToDisplay);\n\n return (\n <>\n {shouldRenderGtm && renderChildren(gtmChildren)}\n {displayCount && (\n <div className=\"heading heading--section heading--section--count\">\n <span className=\"section-number\">{currentItemIndex + 1}</span>\n <span className=\"section-total\">/{listTotal}</span>\n </div>\n )}\n <div className=\"list__item list__item--compact\">\n {renderWaypoint && <Waypoint onEnter={triggerInfiniteScroll} />}\n <Card\n id={id}\n entity={entity}\n gridModifier={gridModifier}\n propsToDisplay={propsToDisplay}\n parsedPropsToDisplay={parsedPropsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n cardProps={cardProps}\n gtmId={name}\n gtmChildren={gtmChildren}\n priority={priority}\n arrowSize={arrowSize}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...cardProps}\n />\n </div>\n {shouldRenderBanner && <Banner {...bannerProps} cardBannerIndex={bannerIndex} />}\n </>\n );\n};\n\nCardsRenderItem.propTypes = {\n cardProps: PropTypes.object.isRequired,\n listProps: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired,\n currentListLength: PropTypes.number.isRequired,\n propsToDisplayModifiers: PropTypes.array.isRequired,\n shouldRenderBanner: PropTypes.bool.isRequired,\n bannerIndex: PropTypes.number.isRequired,\n bannerProps: PropTypes.object,\n gridModifier: PropTypes.string,\n propsToDisplay: PropTypes.array,\n entity: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n priority: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number,\n arrowSize: PropTypes.string\n};\n\nCardsRenderItem.defaultProps = {\n priority: false,\n bannerProps: null,\n gridModifier: '',\n propsToDisplay: [],\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: '',\n arrowSize: ''\n};\n\nexport default CardsRenderItem;\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAe,OAqBf;EAAA,IApBJC,SAAS,QAATA,SAAS;IACTC,SAAS,QAATA,SAAS;IACTC,WAAW,QAAXA,WAAW;IACXC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,iBAAiB,QAAjBA,iBAAiB;IACjBC,YAAY,QAAZA,YAAY;IACZC,WAAW,QAAXA,WAAW;IACXC,QAAQ,QAARA,QAAQ;IACRC,YAAY,QAAZA,YAAY;IACZC,uBAAuB,QAAvBA,uBAAuB;IACvBC,cAAc,QAAdA,cAAc;IACdC,kBAAkB,QAAlBA,kBAAkB;IAClBC,WAAW,QAAXA,WAAW;IACXC,QAAQ,QAARA,QAAQ;IACRC,aAAa,QAAbA,aAAa;IACbC,eAAe,QAAfA,eAAe;IACfC,SAAS,QAATA,SAAS;IACTC,eAAe,QAAfA,eAAe;IACfC,oBAAoB,QAApBA,oBAAoB;EAEpB,IACEC,aAAa,GAYXnB,SAAS,CAZXmB,aAAa;IACbC,UAAU,GAWRpB,SAAS,CAXXoB,UAAU;IACVC,KAAK,GAUHrB,SAAS,CAVXqB,KAAK;IACLC,IAAI,GASFtB,SAAS,CATXsB,IAAI;IACJC,EAAE,GAQAvB,SAAS,CARXuB,EAAE;IACFC,qBAAqB,GAOnBxB,SAAS,CAPXwB,qBAAqB;IACrBC,YAAY,GAMVzB,SAAS,CANXyB,YAAY;IAAA,wBAMVzB,SAAS,CALX0B,eAAe;IAAfA,eAAe,sCAAG,IAAI;IAAA,wBAKpB1B,SAAS,CAJX2B,gBAAgB;IAAhBA,gBAAgB,sCAAG,IAAI;IAAA,wBAIrB3B,SAAS,CAHX4B,YAAY;IAAZA,YAAY,sCAAG,IAAI;IACnBC,SAAS,GAEP7B,SAAS,CAFX6B,SAAS;IACTC,YAAY,GACV9B,SAAS,CADX8B,YAAY;EAGd,IAAMC,gBAAgB,GAAGZ,aAAa,GAAGjB,KAAK;EAC9C,IAAM8B,cAAc,GAClBZ,UAAU,IAAI,IAAAa,6BAAoB,EAAC/B,KAAK,EAAEE,iBAAiB,EAAE2B,gBAAgB,EAAEF,SAAS,CAAC;EAC3F,IAAMK,eAAe,GACnB5B,WAAW,IAAI,IAAA6B,gCAAsB,EAACL,YAAY,EAAE1B,iBAAiB,EAAEF,KAAK,CAAC;EAE/E,IAAMkC,oBAAoB,GAAG,IAAAC,4BAAmB,EAACtC,SAAS,EAAEW,cAAc,CAAC;EAE3E,oBACE,kEACGwB,eAAe,IAAI,IAAAI,uBAAc,EAAChC,WAAW,CAAC,EAC9CmB,YAAY,iBACX;IAAK,SAAS,EAAC;EAAkD,gBAC/D;IAAM,SAAS,EAAC;EAAgB,GAAEM,gBAAgB,GAAG,CAAC,CAAQ,eAC9D;IAAM,SAAS,EAAC;EAAe,GAAC,GAAC,EAACF,SAAS,CAAQ,CAEtD,eACD;IAAK,SAAS,EAAC;EAAgC,GAC5CG,cAAc,iBAAI,gCAAC,uBAAQ;IAAC,OAAO,EAAER;EAAsB,EAAG,eAC/D,gCAAC,gBAAI;IACH,EAAE,EAAED,EAAG;IACP,MAAM,EAAEpB,MAAO;IACf,YAAY,EAAEK,YAAa;IAC3B,cAAc,EAAEE,cAAe;IAC/B,oBAAoB,EAAE0B,oBAAqB;IAC3C,uBAAuB,EAAE3B,uBAAwB;IACjD,QAAQ,EAAEF,QAAS;IACnB,KAAK,EAAEc,KAAM;IACb,YAAY,EAAEhB,YAAa;IAC3B,eAAe,EAAEqB,eAAgB;IACjC,gBAAgB,EAAEC,gBAAiB;IACnC,YAAY,EAAEC,YAAa;IAC3B,SAAS,EAAE7B,SAAU;IACrB,KAAK,EAAEuB,IAAK;IACZ,WAAW,EAAEhB,WAAY;IACzB,QAAQ,EAAEO,QAAS;IACnB,SAAS,EAAEG,SAAU;IACrB,aAAa,EAAEF,aAAc;IAC7B,eAAe,EAAEG,eAAgB;IACjC,oBAAoB,EAAEC;EAAqB,GACvCnB,SAAS,EACb,CACE,EACLY,kBAAkB,iBAAI,gCAAC,kBAAM,gCAAKV,WAAW;IAAE,eAAe,EAAEW;EAAY,GAAG,CAC/E;AAEP,CAAC;AAEDd,eAAe,CAACyC,SAAS,GAAG;EAC1BxC,SAAS,EAAEyC,qBAAS,CAACC,MAAM,CAACC,UAAU;EACtC1C,SAAS,EAAEwC,qBAAS,CAACC,MAAM,CAACC,UAAU;EACtCxC,KAAK,EAAEsC,qBAAS,CAACG,MAAM,CAACD,UAAU;EAClCtC,iBAAiB,EAAEoC,qBAAS,CAACG,MAAM,CAACD,UAAU;EAC9CjC,uBAAuB,EAAE+B,qBAAS,CAACI,KAAK,CAACF,UAAU;EACnD/B,kBAAkB,EAAE6B,qBAAS,CAACK,IAAI,CAACH,UAAU;EAC7C9B,WAAW,EAAE4B,qBAAS,CAACG,MAAM,CAACD,UAAU;EACxCzC,WAAW,EAAEuC,qBAAS,CAACC,MAAM;EAC7BjC,YAAY,EAAEgC,qBAAS,CAACM,MAAM;EAC9BpC,cAAc,EAAE8B,qBAAS,CAACI,KAAK;EAC/BzC,MAAM,EAAEqC,qBAAS,CAACM,MAAM,CAACJ,UAAU;EACnCnC,QAAQ,EAAEiC,qBAAS,CAACM,MAAM;EAC1BzC,YAAY,EAAEmC,qBAAS,CAACO,SAAS,CAAC,CAACP,qBAAS,CAACQ,OAAO,CAACR,qBAAS,CAACS,IAAI,CAAC,EAAET,qBAAS,CAACS,IAAI,CAAC,CAAC;EACtF3C,WAAW,EAAEkC,qBAAS,CAACO,SAAS,CAAC,CAACP,qBAAS,CAACQ,OAAO,CAACR,qBAAS,CAACS,IAAI,CAAC,EAAET,qBAAS,CAACS,IAAI,CAAC,CAAC;EACrFpC,QAAQ,EAAE2B,qBAAS,CAACK,IAAI;EACxB/B,aAAa,EAAE0B,qBAAS,CAACK,IAAI;EAC7B5B,eAAe,EAAEuB,qBAAS,CAACM,MAAM;EACjC5B,oBAAoB,EAAEsB,qBAAS,CAACM,MAAM;EACtC/B,eAAe,EAAEyB,qBAAS,CAACG,MAAM;EACjC3B,SAAS,EAAEwB,qBAAS,CAACM;AACvB,CAAC;AAEDhD,eAAe,CAACoD,YAAY,GAAG;EAC7BrC,QAAQ,EAAE,KAAK;EACfZ,WAAW,EAAE,IAAI;EACjBO,YAAY,EAAE,EAAE;EAChBE,cAAc,EAAE,EAAE;EAClBH,QAAQ,EAAE,EAAE;EACZF,YAAY,EAAE,EAAE;EAChBC,WAAW,EAAE,EAAE;EACfQ,aAAa,EAAE,KAAK;EACpBC,eAAe,EAAE,CAAC;EAClBE,eAAe,EAAE,EAAE;EACnBC,oBAAoB,EAAE,EAAE;EACxBF,SAAS,EAAE;AACb,CAAC;AAAC,eAEalB,eAAe;AAAA"}
1
+ {"version":3,"file":"CardsRenderItem.js","names":["CardsRenderItem","cardProps","listProps","bannerProps","index","entity","currentListLength","cardChildren","gtmChildren","modifier","gridModifier","propsToDisplayModifiers","propsToDisplay","shouldRenderBanner","bannerIndex","priority","enableOverlay","autoScrollTimer","arrowSize","overlayModifier","titleOverlayModifier","initialOffset","isInfinite","style","name","id","triggerInfiniteScroll","displayCount","displayCategory","displayThumbnail","displayTitle","listTotal","itemsPerPage","currentItemIndex","renderWaypoint","shouldRenderWaypoint","shouldRenderGtm","checkIfShouldRenderGtm","parsedPropsToDisplay","parsePropsToDisplay","renderChildren","propTypes","PropTypes","object","isRequired","number","array","bool","string","oneOfType","arrayOf","node","defaultProps"],"sources":["../../../../../src/components/List/components/Cards/CardsRenderItem.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Waypoint } from 'react-waypoint';\nimport Card from '../../../Card/Card';\nimport { shouldRenderWaypoint, renderChildren, parsePropsToDisplay } from '../../../../helpers';\nimport { checkIfShouldRenderGtm } from '../helpers';\nimport Banner from '../../../Banner';\n\nconst CardsRenderItem = ({\n cardProps,\n listProps,\n bannerProps,\n index,\n entity,\n currentListLength,\n cardChildren,\n gtmChildren,\n modifier,\n gridModifier,\n propsToDisplayModifiers,\n propsToDisplay,\n shouldRenderBanner,\n bannerIndex,\n priority,\n enableOverlay,\n autoScrollTimer,\n arrowSize,\n overlayModifier,\n titleOverlayModifier\n}) => {\n const {\n initialOffset,\n isInfinite,\n style,\n name,\n id,\n triggerInfiniteScroll,\n displayCount,\n displayCategory = true,\n displayThumbnail = true,\n displayTitle = true,\n listTotal,\n itemsPerPage\n } = listProps;\n\n const currentItemIndex = initialOffset + index;\n const renderWaypoint =\n isInfinite && shouldRenderWaypoint(index, currentListLength, currentItemIndex, listTotal);\n const shouldRenderGtm =\n gtmChildren && checkIfShouldRenderGtm(itemsPerPage, currentListLength, index);\n\n const parsedPropsToDisplay = parsePropsToDisplay(cardProps, propsToDisplay);\n\n return (\n <>\n {shouldRenderGtm && renderChildren(gtmChildren)}\n {displayCount && (\n <div className=\"heading heading--section heading--section--count\">\n <span className=\"section-number\">{currentItemIndex + 1}</span>\n <span className=\"section-total\">/{listTotal}</span>\n </div>\n )}\n <div className=\"list__item list__item--compact\">\n {renderWaypoint && <Waypoint onEnter={triggerInfiniteScroll} />}\n <Card\n id={id}\n entity={entity}\n gridModifier={gridModifier}\n propsToDisplay={propsToDisplay}\n parsedPropsToDisplay={parsedPropsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n cardProps={cardProps}\n gtmId={name}\n gtmChildren={gtmChildren}\n priority={priority}\n arrowSize={arrowSize}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...cardProps}\n />\n </div>\n {shouldRenderBanner && <Banner {...bannerProps} renderCounter={bannerIndex} />}\n </>\n );\n};\n\nCardsRenderItem.propTypes = {\n cardProps: PropTypes.object.isRequired,\n listProps: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired,\n currentListLength: PropTypes.number.isRequired,\n propsToDisplayModifiers: PropTypes.array.isRequired,\n shouldRenderBanner: PropTypes.bool.isRequired,\n bannerIndex: PropTypes.number.isRequired,\n bannerProps: PropTypes.object,\n gridModifier: PropTypes.string,\n propsToDisplay: PropTypes.array,\n entity: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n priority: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number,\n arrowSize: PropTypes.string\n};\n\nCardsRenderItem.defaultProps = {\n priority: false,\n bannerProps: null,\n gridModifier: '',\n propsToDisplay: [],\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: '',\n arrowSize: ''\n};\n\nexport default CardsRenderItem;\n"],"mappings":"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"}