@mjhls/mjh-framework 1.0.1005-next12-0002 → 1.0.1005-sap-context-test

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 (613) hide show
  1. package/dist/cjs/AD.js +32 -1
  2. package/dist/cjs/AD300x250.js +96 -1
  3. package/dist/cjs/AD300x250x600.js +113 -1
  4. package/dist/cjs/AD728x90.js +110 -1
  5. package/dist/cjs/ADFloatingFooter.js +144 -1
  6. package/dist/cjs/ADFooter.js +53 -1
  7. package/dist/cjs/ADGutter.js +116 -1
  8. package/dist/cjs/ADInfeed-0394f391.js +66 -0
  9. package/dist/cjs/ADSkyscraper.js +118 -1
  10. package/dist/cjs/ADSponsoredResources.js +115 -1
  11. package/dist/cjs/ADWebcast.js +120 -1
  12. package/dist/cjs/ADWelcome.js +167 -1
  13. package/dist/cjs/ADlgInfeed-759969d6.js +60 -0
  14. package/dist/cjs/AccordionPanel.js +94 -1
  15. package/dist/cjs/AdSlot.js +252 -1
  16. package/dist/cjs/AdSlotsProvider.js +184 -1
  17. package/dist/cjs/AlgoliaSearch.js +14466 -1
  18. package/dist/cjs/AlphabeticList.js +135 -1
  19. package/dist/cjs/ArticleCarousel.js +46 -1
  20. package/dist/cjs/ArticleProgramLandingPage.js +188 -1
  21. package/dist/cjs/ArticleSeriesLandingPage.js +163 -1
  22. package/dist/cjs/ArticleSeriesListing.js +316 -1
  23. package/dist/cjs/Auth.js +3653 -1
  24. package/dist/cjs/AuthWrapper.js +1902 -1
  25. package/dist/cjs/AuthorComponent-7d00f6d5.js +96 -0
  26. package/dist/cjs/Beam.js +350 -1
  27. package/dist/cjs/BlockContent-96b44364.js +916 -0
  28. package/dist/cjs/Breadcrumbs.js +107 -1
  29. package/dist/cjs/CMEDeck.js +448 -1
  30. package/dist/cjs/Column1.js +39 -1
  31. package/dist/cjs/Column2.js +74 -1
  32. package/dist/cjs/Column3.js +144 -1
  33. package/dist/cjs/ConferenceArticleCard.js +93 -1
  34. package/dist/cjs/ConferenceBanner-213003ce.js +24 -0
  35. package/dist/cjs/ContentCardPaginated.js +417 -1
  36. package/dist/cjs/DeckContent.js +508 -1
  37. package/dist/cjs/DeckQueue.js +404 -1
  38. package/dist/cjs/DeckQueuePaginated.js +348 -1
  39. package/dist/cjs/Dfp-c313a700.js +104 -0
  40. package/dist/cjs/EventsDeck.js +884 -1
  41. package/dist/cjs/ExternalResources.js +222 -1
  42. package/dist/cjs/Feature.js +129 -1
  43. package/dist/cjs/ForbesHero.js +137 -1
  44. package/dist/cjs/GridContent.js +829 -1
  45. package/dist/cjs/GridContentPaginated.js +704 -1
  46. package/dist/cjs/GridHero.js +147 -1
  47. package/dist/cjs/GroupDeck.js +314 -1
  48. package/dist/cjs/HamMagazine.js +602 -1
  49. package/dist/cjs/Header.js +39 -1
  50. package/dist/cjs/HealthCareProfessionalModal.js +78 -1
  51. package/dist/cjs/Hero.js +48 -1
  52. package/dist/cjs/HighlightenVideo.js +69 -1
  53. package/dist/cjs/HorizontalArticleListing.js +169 -1
  54. package/dist/cjs/HorizontalHero.js +111 -1
  55. package/dist/cjs/ImageSlider-17fdaf3b.js +2813 -0
  56. package/dist/cjs/IssueContentDeck.js +241 -1
  57. package/dist/cjs/IssueDeck.js +268 -1
  58. package/dist/cjs/IssueLanding.js +176 -1
  59. package/dist/cjs/KMTracker.js +27 -1
  60. package/dist/cjs/LeftNav.js +155 -1
  61. package/dist/cjs/MasterDeck.js +556 -1
  62. package/dist/cjs/MasterDeckPaginated.js +469 -1
  63. package/dist/cjs/MediaSeriesCard-eacea66a.js +81 -0
  64. package/dist/cjs/MediaSeriesLanding.js +509 -1
  65. package/dist/cjs/MediaSeriesLandingPaginated.js +534 -1
  66. package/dist/cjs/NavDvm.js +276 -1
  67. package/dist/cjs/NavFooter-880e9d87.js +71 -0
  68. package/dist/cjs/NavMagazine.js +613 -1
  69. package/dist/cjs/NavNative.js +880 -1
  70. package/dist/cjs/OncliveHero.js +79 -1
  71. package/dist/cjs/OncliveLargeHero.js +241 -1
  72. package/dist/cjs/PageFilter.js +72 -1
  73. package/dist/cjs/Pagination-842c556f.js +97 -0
  74. package/dist/cjs/PartnerDetailListing.js +345 -1
  75. package/dist/cjs/PartnerDetailListingPaginated.js +353 -1
  76. package/dist/cjs/PdfDownload.js +28 -1
  77. package/dist/cjs/PixelTracking.js +165 -1
  78. package/dist/cjs/PodcastsLanding.js +236 -1
  79. package/dist/cjs/PopUpModal.js +58 -1
  80. package/dist/cjs/PtceDeck.js +149 -1
  81. package/dist/cjs/PubSection.js +121 -1
  82. package/dist/cjs/PubToc.js +87 -1
  83. package/dist/cjs/PublicationDeck.js +183 -1
  84. package/dist/cjs/PublicationFeature-a989a2b3.js +130 -0
  85. package/dist/cjs/PublicationLanding.js +857 -1
  86. package/dist/cjs/QueueDeckExpanded.js +1541 -1
  87. package/dist/cjs/QueueDeckExpandedPaginated.js +1388 -1
  88. package/dist/cjs/RecentNews.js +91 -1
  89. package/dist/cjs/RelatedContent.js +114 -1
  90. package/dist/cjs/RelatedTopicsDropdown.js +90 -1
  91. package/dist/cjs/RolesDeck.js +94 -1
  92. package/dist/cjs/Schema.js +103 -1
  93. package/dist/cjs/Search.js +66 -1
  94. package/dist/cjs/Segment.js +452 -1
  95. package/dist/cjs/SeriesListingDeck.js +249 -1
  96. package/dist/cjs/SeriesSlider-3d57985d.js +332 -0
  97. package/dist/cjs/SetCookie.js +10 -1
  98. package/dist/cjs/SideFooter.js +150 -1
  99. package/dist/cjs/SocialIcons.js +103 -1
  100. package/dist/cjs/SocialSearchComponent-62bceb87.js +213 -0
  101. package/dist/cjs/SocialShare.js +74 -1
  102. package/dist/cjs/TaxonomyCard.js +257 -1
  103. package/dist/cjs/TaxonomyDescription.js +209 -1
  104. package/dist/cjs/TemplateNormal.js +204 -1
  105. package/dist/cjs/ThumbnailCard.js +59 -1
  106. package/dist/cjs/Tooltip-4cb8849a.js +9454 -0
  107. package/dist/cjs/Ustream.js +156 -1
  108. package/dist/cjs/VerticalHero.js +74 -1
  109. package/dist/cjs/VideoProgramLandingPage.js +264 -1
  110. package/dist/cjs/VideoSeriesCard.js +88 -1
  111. package/dist/cjs/VideoSeriesFilter.js +128 -1
  112. package/dist/cjs/VideoSeriesLandingPage.js +179 -1
  113. package/dist/cjs/VideoSeriesListing.js +423 -1
  114. package/dist/cjs/View.js +2699 -1
  115. package/dist/cjs/YahooHero.js +126 -1
  116. package/dist/cjs/YoutubeGroup.js +371 -1
  117. package/dist/cjs/_commonjsHelpers-06173234.js +25 -0
  118. package/dist/cjs/_is-array-54228b29.js +74 -0
  119. package/dist/cjs/_iter-detect-b1df62f0.js +52 -0
  120. package/dist/cjs/_library-dd23b178.js +5 -0
  121. package/dist/cjs/_object-pie-083f2dd6.js +16 -0
  122. package/dist/cjs/_object-sap-d1978572.js +16 -0
  123. package/dist/cjs/_object-to-array-ce86cae7.js +25 -0
  124. package/dist/cjs/asyncToGenerator-77821af0.js +1395 -0
  125. package/dist/cjs/brightcove-react-player-loader.es-4c7825a1.js +2232 -0
  126. package/dist/cjs/checkSisterSite-b29833b2.js +19 -0
  127. package/dist/cjs/core.get-iterator-method-5643aa10.js +584 -0
  128. package/dist/cjs/debounce-d4a2369b.js +216 -0
  129. package/dist/cjs/define-property-e8404b64.js +20 -0
  130. package/dist/cjs/defineProperty-e0fb52c5.js +73 -0
  131. package/dist/cjs/entities-df1aed86.js +510 -0
  132. package/dist/cjs/eq-5fc26c07.js +79 -0
  133. package/dist/cjs/events-1b438fe7.js +469 -0
  134. package/dist/cjs/extends-7c86182f.js +87 -0
  135. package/dist/cjs/faundadb.js +406 -1
  136. package/dist/cjs/get-5839e5b5.js +920 -0
  137. package/dist/cjs/getContentCategory-f38a4c00.js +11 -0
  138. package/dist/cjs/getKeywords.js +46 -1
  139. package/dist/cjs/getPtceActivities.js +89 -1
  140. package/dist/cjs/getQuery.js +28 -1
  141. package/dist/cjs/getRelatedArticle.js +542 -1
  142. package/dist/cjs/getRootDocGroup.js +62 -1
  143. package/dist/cjs/getSerializers.js +68 -1
  144. package/dist/cjs/getSeriesDetail.js +40 -1
  145. package/dist/cjs/getTargeting-ba942d9a.js +164 -0
  146. package/dist/cjs/getTargeting.js +13 -1
  147. package/dist/cjs/iconBase-be4097c0.js +104 -0
  148. package/dist/cjs/index-187c967e.js +54 -0
  149. package/dist/cjs/index-19fbbcea.js +10788 -0
  150. package/dist/cjs/index-50be6759.js +105 -0
  151. package/dist/cjs/index-65621b6c.js +613 -0
  152. package/dist/cjs/index-bd6c9f56.js +211 -0
  153. package/dist/cjs/index-d2a6ef75.js +1218 -0
  154. package/dist/cjs/index-d48b231c.js +556 -0
  155. package/dist/cjs/index-f86bb269.js +1571 -0
  156. package/dist/cjs/index.es-1ab8dda7.js +445 -0
  157. package/dist/cjs/index.esm-c1e16606.js +13 -0
  158. package/dist/cjs/index.esm-d51c9ac6.js +25 -0
  159. package/dist/cjs/index.esm-d81454e7.js +19 -0
  160. package/dist/cjs/index.esm-f59ef5b4.js +97 -0
  161. package/dist/cjs/index.js +644 -1
  162. package/dist/cjs/inherits-de66ea16.js +188 -0
  163. package/dist/cjs/isSymbol-03abbdf0.js +209 -0
  164. package/dist/cjs/js.cookie-a511c430.js +160 -0
  165. package/dist/cjs/keys-e982b3fa.js +25 -0
  166. package/dist/cjs/lodash-f0783643.js +17195 -0
  167. package/dist/cjs/main-3643d499.js +973 -0
  168. package/dist/cjs/md5-e1ca5797.js +323 -0
  169. package/dist/cjs/moment-aca40de1.js +5669 -0
  170. package/dist/cjs/react-social-icons-2c5c389a.js +616 -0
  171. package/dist/cjs/slicedToArray-067dd3bc.js +95 -0
  172. package/dist/cjs/smoothscroll-99df7f93.js +438 -0
  173. package/dist/cjs/stringify-f7a37a8d.js +17 -0
  174. package/dist/cjs/style-inject.es-dcee06b6.js +30 -1
  175. package/dist/cjs/timeDifferenceCalc.js +39 -1
  176. package/dist/cjs/toConsumableArray-d7797c2b.js +74 -0
  177. package/dist/cjs/toNumber-5e1fac58.js +104 -0
  178. package/dist/cjs/typeof-1358762e.js +33 -0
  179. package/dist/cjs/typeof-567e31ff.js +382 -0
  180. package/dist/cjs/urlFor.js +65 -1
  181. package/dist/cjs/urlForFile-29d3815a.js +24 -0
  182. package/dist/cjs/ustream-api-3819e4aa.js +106 -0
  183. package/dist/cjs/util-93a37fd0.js +587 -0
  184. package/dist/cjs/visibility-sensor-56020df6.js +597 -0
  185. package/dist/cjs/web.dom.iterable-d98303e0.js +50 -0
  186. package/dist/esm/AD.js +26 -1
  187. package/dist/esm/AD300x250.js +90 -1
  188. package/dist/esm/AD300x250x600.js +107 -1
  189. package/dist/esm/AD728x90.js +104 -1
  190. package/dist/esm/ADFloatingFooter.js +138 -1
  191. package/dist/esm/ADFooter.js +47 -1
  192. package/dist/esm/ADGutter.js +110 -1
  193. package/dist/esm/ADInfeed-5765a73a.js +59 -0
  194. package/dist/esm/ADSkyscraper.js +112 -1
  195. package/dist/esm/ADSponsoredResources.js +109 -1
  196. package/dist/esm/ADWebcast.js +114 -1
  197. package/dist/esm/ADWelcome.js +161 -1
  198. package/dist/esm/ADlgInfeed-5e36f317.js +54 -0
  199. package/dist/esm/AccordionPanel.js +87 -1
  200. package/dist/esm/AdSlot.js +245 -1
  201. package/dist/esm/AdSlotsProvider.js +177 -1
  202. package/dist/esm/AlgoliaSearch.js +14459 -1
  203. package/dist/esm/AlphabeticList.js +129 -1
  204. package/dist/esm/ArticleCarousel.js +40 -1
  205. package/dist/esm/ArticleProgramLandingPage.js +182 -1
  206. package/dist/esm/ArticleSeriesLandingPage.js +157 -1
  207. package/dist/esm/ArticleSeriesListing.js +309 -1
  208. package/dist/esm/Auth.js +3632 -1
  209. package/dist/esm/AuthWrapper.js +1896 -1
  210. package/dist/esm/AuthorComponent-11adff02.js +90 -0
  211. package/dist/esm/Beam.js +348 -1
  212. package/dist/esm/BlockContent-1e73bd2c.js +909 -0
  213. package/dist/esm/Breadcrumbs.js +100 -1
  214. package/dist/esm/CMEDeck.js +442 -1
  215. package/dist/esm/Column1.js +28 -1
  216. package/dist/esm/Column2.js +63 -1
  217. package/dist/esm/Column3.js +133 -1
  218. package/dist/esm/ConferenceArticleCard.js +87 -1
  219. package/dist/esm/ConferenceBanner-8792ebd2.js +18 -0
  220. package/dist/esm/ContentCardPaginated.js +406 -1
  221. package/dist/esm/DeckContent.js +498 -1
  222. package/dist/esm/DeckQueue.js +394 -1
  223. package/dist/esm/DeckQueuePaginated.js +337 -1
  224. package/dist/esm/Dfp-102f0beb.js +97 -0
  225. package/dist/esm/EventsDeck.js +871 -1
  226. package/dist/esm/ExternalResources.js +215 -1
  227. package/dist/esm/Feature.js +122 -1
  228. package/dist/esm/ForbesHero.js +131 -1
  229. package/dist/esm/GridContent.js +819 -1
  230. package/dist/esm/GridContentPaginated.js +693 -1
  231. package/dist/esm/GridHero.js +141 -1
  232. package/dist/esm/GroupDeck.js +308 -1
  233. package/dist/esm/HamMagazine.js +589 -1
  234. package/dist/esm/Header.js +29 -1
  235. package/dist/esm/HealthCareProfessionalModal.js +70 -1
  236. package/dist/esm/Hero.js +42 -1
  237. package/dist/esm/HighlightenVideo.js +63 -1
  238. package/dist/esm/HorizontalArticleListing.js +163 -1
  239. package/dist/esm/HorizontalHero.js +105 -1
  240. package/dist/esm/ImageSlider-f84174cb.js +2804 -0
  241. package/dist/esm/IssueContentDeck.js +231 -1
  242. package/dist/esm/IssueDeck.js +258 -1
  243. package/dist/esm/IssueLanding.js +170 -1
  244. package/dist/esm/KMTracker.js +25 -1
  245. package/dist/esm/LeftNav.js +145 -1
  246. package/dist/esm/MasterDeck.js +549 -1
  247. package/dist/esm/MasterDeckPaginated.js +461 -1
  248. package/dist/esm/MediaSeriesCard-f56c8274.js +75 -0
  249. package/dist/esm/MediaSeriesLanding.js +502 -1
  250. package/dist/esm/MediaSeriesLandingPaginated.js +527 -1
  251. package/dist/esm/NavDvm.js +263 -1
  252. package/dist/esm/NavFooter-3272e9cd.js +65 -0
  253. package/dist/esm/NavMagazine.js +600 -1
  254. package/dist/esm/NavNative.js +864 -1
  255. package/dist/esm/OncliveHero.js +73 -1
  256. package/dist/esm/OncliveLargeHero.js +235 -1
  257. package/dist/esm/PageFilter.js +66 -1
  258. package/dist/esm/Pagination-dc30727b.js +90 -0
  259. package/dist/esm/PartnerDetailListing.js +339 -1
  260. package/dist/esm/PartnerDetailListingPaginated.js +347 -1
  261. package/dist/esm/PdfDownload.js +22 -1
  262. package/dist/esm/PixelTracking.js +156 -1
  263. package/dist/esm/PodcastsLanding.js +229 -1
  264. package/dist/esm/PopUpModal.js +51 -1
  265. package/dist/esm/PtceDeck.js +143 -1
  266. package/dist/esm/PubSection.js +115 -1
  267. package/dist/esm/PubToc.js +81 -1
  268. package/dist/esm/PublicationDeck.js +173 -1
  269. package/dist/esm/PublicationFeature-d88e76b9.js +121 -0
  270. package/dist/esm/PublicationLanding.js +847 -1
  271. package/dist/esm/QueueDeckExpanded.js +1535 -1
  272. package/dist/esm/QueueDeckExpandedPaginated.js +1382 -1
  273. package/dist/esm/RecentNews.js +85 -1
  274. package/dist/esm/RelatedContent.js +108 -1
  275. package/dist/esm/RelatedTopicsDropdown.js +82 -1
  276. package/dist/esm/RolesDeck.js +84 -1
  277. package/dist/esm/Schema.js +97 -1
  278. package/dist/esm/Search.js +57 -1
  279. package/dist/esm/Segment.js +450 -1
  280. package/dist/esm/SeriesListingDeck.js +243 -1
  281. package/dist/esm/SeriesSlider-f771e20d.js +326 -0
  282. package/dist/esm/SetCookie.js +8 -1
  283. package/dist/esm/SideFooter.js +144 -1
  284. package/dist/esm/SocialIcons.js +97 -1
  285. package/dist/esm/SocialSearchComponent-165b4ae7.js +204 -0
  286. package/dist/esm/SocialShare.js +67 -1
  287. package/dist/esm/TaxonomyCard.js +247 -1
  288. package/dist/esm/TaxonomyDescription.js +202 -1
  289. package/dist/esm/TemplateNormal.js +197 -1
  290. package/dist/esm/ThumbnailCard.js +52 -1
  291. package/dist/esm/Tooltip-95655b44.js +9445 -0
  292. package/dist/esm/Ustream.js +150 -1
  293. package/dist/esm/VerticalHero.js +68 -1
  294. package/dist/esm/VideoProgramLandingPage.js +255 -1
  295. package/dist/esm/VideoSeriesCard.js +82 -1
  296. package/dist/esm/VideoSeriesFilter.js +122 -1
  297. package/dist/esm/VideoSeriesLandingPage.js +173 -1
  298. package/dist/esm/VideoSeriesListing.js +416 -1
  299. package/dist/esm/View.js +2689 -1
  300. package/dist/esm/YahooHero.js +120 -1
  301. package/dist/esm/YoutubeGroup.js +365 -1
  302. package/dist/esm/_commonjsHelpers-0c4b6f40.js +19 -0
  303. package/dist/esm/_is-array-8d21b9e3.js +71 -0
  304. package/dist/esm/_iter-detect-98db3b07.js +48 -0
  305. package/dist/esm/_library-528f1934.js +3 -0
  306. package/dist/esm/_object-pie-133f504a.js +13 -0
  307. package/dist/esm/_object-sap-7cee6f84.js +14 -0
  308. package/dist/esm/_object-to-array-2300e51b.js +23 -0
  309. package/dist/esm/asyncToGenerator-958ef5fc.js +1387 -0
  310. package/dist/esm/brightcove-react-player-loader.es-57a70a56.js +2226 -0
  311. package/dist/esm/checkSisterSite-baa4fb6b.js +17 -0
  312. package/dist/esm/core.get-iterator-method-ea258bb1.js +547 -0
  313. package/dist/esm/debounce-533d9748.js +214 -0
  314. package/dist/esm/define-property-5f1bda73.js +18 -0
  315. package/dist/esm/defineProperty-23a8f8cd.js +68 -0
  316. package/dist/esm/entities-6d9154b4.js +507 -0
  317. package/dist/esm/eq-bdcbf886.js +76 -0
  318. package/dist/esm/events-6c3a7a63.js +467 -0
  319. package/dist/esm/extends-6d8e3924.js +83 -0
  320. package/dist/esm/faundadb.js +396 -1
  321. package/dist/esm/get-3c308da4.js +918 -0
  322. package/dist/esm/getContentCategory-15dcc413.js +9 -0
  323. package/dist/esm/getKeywords.js +44 -1
  324. package/dist/esm/getPtceActivities.js +87 -1
  325. package/dist/esm/getQuery.js +26 -1
  326. package/dist/esm/getRelatedArticle.js +540 -1
  327. package/dist/esm/getRootDocGroup.js +60 -1
  328. package/dist/esm/getSerializers.js +62 -1
  329. package/dist/esm/getSeriesDetail.js +38 -1
  330. package/dist/esm/getTargeting-9bd28724.js +161 -0
  331. package/dist/esm/getTargeting.js +7 -1
  332. package/dist/esm/iconBase-ccc56b97.js +81 -0
  333. package/dist/esm/index-3f5c03b2.js +553 -0
  334. package/dist/esm/index-5d8b0a9d.js +10767 -0
  335. package/dist/esm/index-755f2cc2.js +605 -0
  336. package/dist/esm/index-79cfd25c.js +1569 -0
  337. package/dist/esm/index-98ca9cec.js +100 -0
  338. package/dist/esm/index-c7e2ac95.js +52 -0
  339. package/dist/esm/index-db3bb315.js +207 -0
  340. package/dist/esm/index-f0fc23eb.js +1209 -0
  341. package/dist/esm/index.es-a6137319.js +439 -0
  342. package/dist/esm/index.esm-07c37a92.js +90 -0
  343. package/dist/esm/index.esm-1bd8a0a8.js +18 -0
  344. package/dist/esm/index.esm-9b042655.js +10 -0
  345. package/dist/esm/index.esm-eb1e8e80.js +14 -0
  346. package/dist/esm/index.js +537 -1
  347. package/dist/esm/inherits-a6ba2ec4.js +179 -0
  348. package/dist/esm/isSymbol-a7e9aafe.js +203 -0
  349. package/dist/esm/js.cookie-6874175c.js +158 -0
  350. package/dist/esm/keys-31dcdb31.js +23 -0
  351. package/dist/esm/lodash-f97fd99a.js +17193 -0
  352. package/dist/esm/main-1894c974.js +961 -0
  353. package/dist/esm/md5-4e42248e.js +321 -0
  354. package/dist/esm/moment-bc12cb97.js +5667 -0
  355. package/dist/esm/react-social-icons-9be47857.js +609 -0
  356. package/dist/esm/slicedToArray-6ebcbfea.js +92 -0
  357. package/dist/esm/smoothscroll-fa4e3f8c.js +436 -0
  358. package/dist/esm/stringify-2b084bee.js +15 -0
  359. package/dist/esm/style-inject.es-1f59c1d0.js +28 -1
  360. package/dist/esm/timeDifferenceCalc.js +37 -1
  361. package/dist/esm/toConsumableArray-f7074d7c.js +71 -0
  362. package/dist/esm/toNumber-5aeba6e7.js +102 -0
  363. package/dist/esm/typeof-2f07d0e8.js +30 -0
  364. package/dist/esm/typeof-e9fc0c5d.js +378 -0
  365. package/dist/esm/urlFor.js +63 -1
  366. package/dist/esm/urlForFile-b69adffc.js +22 -0
  367. package/dist/esm/ustream-api-d3714624.js +104 -0
  368. package/dist/esm/util-8ed16d48.js +585 -0
  369. package/dist/esm/visibility-sensor-72fd8f8b.js +590 -0
  370. package/dist/esm/web.dom.iterable-ab4dea5c.js +48 -0
  371. package/package.json +23 -24
  372. package/dist/cjs/AD-e1bb7536.js +0 -1
  373. package/dist/cjs/AD300x250-0bcfcd78.js +0 -1
  374. package/dist/cjs/AD300x250x600-01659df6.js +0 -1
  375. package/dist/cjs/AD728x90-c92f784d.js +0 -1
  376. package/dist/cjs/ADFloatingFooter-f0650a0e.js +0 -1
  377. package/dist/cjs/ADFooter-b3d98c5f.js +0 -1
  378. package/dist/cjs/ADGutter-8451a0e7.js +0 -1
  379. package/dist/cjs/ADInfeed-7019b746.js +0 -1
  380. package/dist/cjs/ADSkyscraper-2db48edc.js +0 -1
  381. package/dist/cjs/ADSponsoredResources-126ab84c.js +0 -1
  382. package/dist/cjs/ADWebcast-26543865.js +0 -1
  383. package/dist/cjs/ADWelcome-6261c769.js +0 -1
  384. package/dist/cjs/ADlgInfeed-42059b30.js +0 -1
  385. package/dist/cjs/AccordionPanel-b018a969.js +0 -1
  386. package/dist/cjs/AdSlot-8a0b4211.js +0 -1
  387. package/dist/cjs/AdSlotsProvider-e06c4b39.js +0 -1
  388. package/dist/cjs/AlgoliaSearch-05bab51c.js +0 -1
  389. package/dist/cjs/AlphabeticList-94ed00ad.js +0 -1
  390. package/dist/cjs/ArticleCarousel-6599cb34.js +0 -1
  391. package/dist/cjs/ArticleProgramLandingPage-2cc43252.js +0 -1
  392. package/dist/cjs/ArticleSeriesLandingPage-4af0758a.js +0 -1
  393. package/dist/cjs/ArticleSeriesListing-476cb622.js +0 -1
  394. package/dist/cjs/AuthorComponent-dd3ac7f5.js +0 -1
  395. package/dist/cjs/Breadcrumbs-10474e7d.js +0 -1
  396. package/dist/cjs/CMEDeck-c7276c4c.js +0 -1
  397. package/dist/cjs/Column1-9a0e0262.js +0 -1
  398. package/dist/cjs/Column2-47fa24ac.js +0 -1
  399. package/dist/cjs/Column3-7407a3a2.js +0 -1
  400. package/dist/cjs/ConferenceArticleCard-a48a5eb4.js +0 -1
  401. package/dist/cjs/ConferenceBanner-9fb497af.js +0 -1
  402. package/dist/cjs/ContentCard-0543793a.js +0 -1
  403. package/dist/cjs/Dfp-eb398ac3.js +0 -1
  404. package/dist/cjs/DropdownButton-3f21ccbf.js +0 -6
  405. package/dist/cjs/Dvm-4aab0fca.js +0 -1
  406. package/dist/cjs/EventsDeck-7614cec4.js +0 -1
  407. package/dist/cjs/ExternalResources-c1d4e253.js +0 -1
  408. package/dist/cjs/Feature-4254dfe3.js +0 -1
  409. package/dist/cjs/ForbesHero-82c18210.js +0 -1
  410. package/dist/cjs/GridContent-6c8dd8e5.js +0 -1
  411. package/dist/cjs/GridHero-c6784d3f.js +0 -1
  412. package/dist/cjs/GroupDeck-6920bcf7.js +0 -1
  413. package/dist/cjs/HamburgerNav-02a13006.js +0 -1
  414. package/dist/cjs/Header-268a2cda.js +0 -1
  415. package/dist/cjs/Hero-79a1f7a3.js +0 -1
  416. package/dist/cjs/HighlightenVideo-20edba55.js +0 -1
  417. package/dist/cjs/HorizontalArticleListing-4a44f354.js +0 -1
  418. package/dist/cjs/HorizontalHero-c5a3cb7a.js +0 -1
  419. package/dist/cjs/ImageSlider-d1359f16.js +0 -1
  420. package/dist/cjs/IssueContentDeck-48a04696.js +0 -1
  421. package/dist/cjs/IssueDeck-41ebd17b.js +0 -1
  422. package/dist/cjs/IssueLanding-06765ae0.js +0 -1
  423. package/dist/cjs/KMTracker-4e1de793.js +0 -1
  424. package/dist/cjs/LeftNav-c7283941.js +0 -1
  425. package/dist/cjs/Magazine-0d15b137.js +0 -1
  426. package/dist/cjs/MasterDeck-0e168ac1.js +0 -1
  427. package/dist/cjs/MediaSeriesCard-07b6f758.js +0 -1
  428. package/dist/cjs/Native-ee78edeb.js +0 -1
  429. package/dist/cjs/NavFooter-f905aca3.js +0 -1
  430. package/dist/cjs/Normal-ad14a1b1.js +0 -1
  431. package/dist/cjs/OncliveHero-5c7454fe.js +0 -1
  432. package/dist/cjs/OncliveLargeHero-46e0a793.js +0 -1
  433. package/dist/cjs/PageFilter-bdffe62b.js +0 -1
  434. package/dist/cjs/Pagination-825e4903.js +0 -1
  435. package/dist/cjs/PartnerDetailListing-848c514f.js +0 -1
  436. package/dist/cjs/PdfDownload-c99142ff.js +0 -1
  437. package/dist/cjs/PopUpModal-c1cbf9b6.js +0 -1
  438. package/dist/cjs/PubSection-08e834ca.js +0 -1
  439. package/dist/cjs/PubToc-6e2a3f50.js +0 -1
  440. package/dist/cjs/PublicationDeck-e242bd17.js +0 -1
  441. package/dist/cjs/PublicationFeature-0e2014fb.js +0 -1
  442. package/dist/cjs/PublicationLanding-d54d80d4.js +0 -1
  443. package/dist/cjs/Queue-8e0e436f.js +0 -1
  444. package/dist/cjs/QueueDeckExpanded-e420bdec.js +0 -1
  445. package/dist/cjs/RelatedContent-4ac0ceca.js +0 -1
  446. package/dist/cjs/RelatedTopicsDropdown-4736b927.js +0 -1
  447. package/dist/cjs/RolesDeck-83cbb45e.js +0 -1
  448. package/dist/cjs/Schema-8c138aa8.js +0 -1
  449. package/dist/cjs/SeriesSlider-720871f8.js +0 -1
  450. package/dist/cjs/SideFooter-17e666a3.js +0 -1
  451. package/dist/cjs/SocialIcons-425827d3.js +0 -1
  452. package/dist/cjs/SocialNavFooter-8f053a08.js +0 -1
  453. package/dist/cjs/SocialSearchComponent-dea3dbc8.js +0 -1
  454. package/dist/cjs/SocialShare-3d7c8abe.js +0 -1
  455. package/dist/cjs/TaxonomyCard-e881cb43.js +0 -1
  456. package/dist/cjs/TaxonomyDescription-9a13ded6.js +0 -1
  457. package/dist/cjs/ThumbnailCard-101f04b8.js +0 -1
  458. package/dist/cjs/Ustream-b7692d0a.js +0 -1
  459. package/dist/cjs/VerticalHero-a61b1a2e.js +0 -1
  460. package/dist/cjs/VideoProgramLandingPage-5508836c.js +0 -1
  461. package/dist/cjs/VideoSeriesFilter-9650cf01.js +0 -1
  462. package/dist/cjs/VideoSeriesLandingPage-d1fae653.js +0 -1
  463. package/dist/cjs/VideoSeriesListing-91f5aa6d.js +0 -1
  464. package/dist/cjs/YahooHero-2df6a408.js +0 -1
  465. package/dist/cjs/YoutubeGroup-d8a93da0.js +0 -1
  466. package/dist/cjs/_commonjsHelpers-0a7b82d9.js +0 -1
  467. package/dist/cjs/beam-aaf6fbe9.js +0 -1
  468. package/dist/cjs/checkSisterSite-d2d62375.js +0 -1
  469. package/dist/cjs/defineProperty-ba7cd53d.js +0 -1
  470. package/dist/cjs/entities-8feddf1d.js +0 -1
  471. package/dist/cjs/extends-5ede7877.js +0 -1
  472. package/dist/cjs/getContentCategory-ee6d9fdf.js +0 -1
  473. package/dist/cjs/getKeywords-5341ea76.js +0 -1
  474. package/dist/cjs/getPrototypeOf-99b1cfd8.js +0 -1
  475. package/dist/cjs/getQuery-154617ad.js +0 -1
  476. package/dist/cjs/getRelatedArticle-dbed93dc.js +0 -1
  477. package/dist/cjs/getSeriesDetail-e2980903.js +0 -1
  478. package/dist/cjs/getTargeting-a1ecaa0b.js +0 -1
  479. package/dist/cjs/index-14c8083b.js +0 -1
  480. package/dist/cjs/index-3291d44c.js +0 -1
  481. package/dist/cjs/index-5cca2099.js +0 -1
  482. package/dist/cjs/index-66647f61.js +0 -1
  483. package/dist/cjs/searchForm-bb5e3dbf.js +0 -1
  484. package/dist/cjs/segment-lib-7a16e514.js +0 -1
  485. package/dist/cjs/setCookie-e72f573d.js +0 -1
  486. package/dist/cjs/slicedToArray-c9e22c6a.js +0 -1
  487. package/dist/cjs/toConsumableArray-7afb7984.js +0 -1
  488. package/dist/cjs/typeof-a861d137.js +0 -1
  489. package/dist/cjs/unsupportedIterableToArray-294d47a8.js +0 -1
  490. package/dist/cjs/urlFor-86a2f4db.js +0 -1
  491. package/dist/cjs/urlForFile-52afb8e9.js +0 -1
  492. package/dist/cjs/ustream-api-05a918f3.js +0 -1
  493. package/dist/esm/AD-8a57f623.js +0 -1
  494. package/dist/esm/AD300x250-10ccde99.js +0 -1
  495. package/dist/esm/AD300x250x600-10e29b3d.js +0 -1
  496. package/dist/esm/AD728x90-2b0e930d.js +0 -1
  497. package/dist/esm/ADFloatingFooter-f23caacf.js +0 -1
  498. package/dist/esm/ADFooter-4c20b5fc.js +0 -1
  499. package/dist/esm/ADGutter-59cf52e3.js +0 -1
  500. package/dist/esm/ADInfeed-8ce85d87.js +0 -1
  501. package/dist/esm/ADSkyscraper-bfd33e46.js +0 -1
  502. package/dist/esm/ADSponsoredResources-0410407c.js +0 -1
  503. package/dist/esm/ADWebcast-6f27e384.js +0 -1
  504. package/dist/esm/ADWelcome-421d5621.js +0 -1
  505. package/dist/esm/ADlgInfeed-19d0f057.js +0 -1
  506. package/dist/esm/AccordionPanel-123022f0.js +0 -1
  507. package/dist/esm/AdSlot-16696371.js +0 -1
  508. package/dist/esm/AdSlotsProvider-5ead284e.js +0 -1
  509. package/dist/esm/AlgoliaSearch-1343b721.js +0 -1
  510. package/dist/esm/AlphabeticList-f1ca5612.js +0 -1
  511. package/dist/esm/ArticleCarousel-ba29666c.js +0 -1
  512. package/dist/esm/ArticleProgramLandingPage-d996da8f.js +0 -1
  513. package/dist/esm/ArticleSeriesLandingPage-67cda955.js +0 -1
  514. package/dist/esm/ArticleSeriesListing-22e8f5a6.js +0 -1
  515. package/dist/esm/AuthorComponent-f3e14fdd.js +0 -1
  516. package/dist/esm/Breadcrumbs-8838701e.js +0 -1
  517. package/dist/esm/CMEDeck-182d8eb7.js +0 -1
  518. package/dist/esm/Column1-3304e0a7.js +0 -1
  519. package/dist/esm/Column2-2d42433b.js +0 -1
  520. package/dist/esm/Column3-94c8661b.js +0 -1
  521. package/dist/esm/ConferenceArticleCard-c10c5b7f.js +0 -1
  522. package/dist/esm/ConferenceBanner-8a6f3ed9.js +0 -1
  523. package/dist/esm/ContentCard-01c2e43a.js +0 -1
  524. package/dist/esm/Dfp-c3c626b1.js +0 -1
  525. package/dist/esm/DropdownButton-c4621022.js +0 -6
  526. package/dist/esm/Dvm-138f924d.js +0 -1
  527. package/dist/esm/EventsDeck-e5aad41d.js +0 -1
  528. package/dist/esm/ExternalResources-e9656681.js +0 -1
  529. package/dist/esm/Feature-69a30cea.js +0 -1
  530. package/dist/esm/ForbesHero-0b0a5436.js +0 -1
  531. package/dist/esm/GridContent-d8df59ae.js +0 -1
  532. package/dist/esm/GridHero-0d17636c.js +0 -1
  533. package/dist/esm/GroupDeck-4c581822.js +0 -1
  534. package/dist/esm/HamburgerNav-5fcf79ae.js +0 -1
  535. package/dist/esm/Header-b0624adc.js +0 -1
  536. package/dist/esm/Hero-1b663f28.js +0 -1
  537. package/dist/esm/HighlightenVideo-5c3fd0fd.js +0 -1
  538. package/dist/esm/HorizontalArticleListing-cccace2e.js +0 -1
  539. package/dist/esm/HorizontalHero-8633a55c.js +0 -1
  540. package/dist/esm/ImageSlider-c354db50.js +0 -1
  541. package/dist/esm/IssueContentDeck-915409a7.js +0 -1
  542. package/dist/esm/IssueDeck-61a4a550.js +0 -1
  543. package/dist/esm/IssueLanding-a59c91ee.js +0 -1
  544. package/dist/esm/KMTracker-d9e1c288.js +0 -1
  545. package/dist/esm/LeftNav-a3852fbe.js +0 -1
  546. package/dist/esm/Magazine-7d6e5dcd.js +0 -1
  547. package/dist/esm/MasterDeck-41c7cd70.js +0 -1
  548. package/dist/esm/MediaSeriesCard-cf72ce87.js +0 -1
  549. package/dist/esm/Native-bf89940a.js +0 -1
  550. package/dist/esm/NavFooter-83d89acd.js +0 -1
  551. package/dist/esm/Normal-06895213.js +0 -1
  552. package/dist/esm/OncliveHero-19794e52.js +0 -1
  553. package/dist/esm/OncliveLargeHero-01d4c10f.js +0 -1
  554. package/dist/esm/PageFilter-81144bcb.js +0 -1
  555. package/dist/esm/Pagination-44c3ff7c.js +0 -1
  556. package/dist/esm/PartnerDetailListing-429d60e1.js +0 -1
  557. package/dist/esm/PdfDownload-eff648d3.js +0 -1
  558. package/dist/esm/PopUpModal-a2735a23.js +0 -1
  559. package/dist/esm/PubSection-3d940b53.js +0 -1
  560. package/dist/esm/PubToc-52a85696.js +0 -1
  561. package/dist/esm/PublicationDeck-538d397e.js +0 -1
  562. package/dist/esm/PublicationFeature-6deea07c.js +0 -1
  563. package/dist/esm/PublicationLanding-48ebce9b.js +0 -1
  564. package/dist/esm/Queue-847df47f.js +0 -1
  565. package/dist/esm/QueueDeckExpanded-fdc60f72.js +0 -1
  566. package/dist/esm/RelatedContent-f3eaad29.js +0 -1
  567. package/dist/esm/RelatedTopicsDropdown-0cf5829a.js +0 -1
  568. package/dist/esm/RolesDeck-6146633e.js +0 -1
  569. package/dist/esm/Schema-c7f42de0.js +0 -1
  570. package/dist/esm/SeriesSlider-a00cd257.js +0 -1
  571. package/dist/esm/SideFooter-7cd5abc0.js +0 -1
  572. package/dist/esm/SocialIcons-c7861c13.js +0 -1
  573. package/dist/esm/SocialNavFooter-66c6cf3c.js +0 -1
  574. package/dist/esm/SocialSearchComponent-e74e11f8.js +0 -1
  575. package/dist/esm/SocialShare-9cc43665.js +0 -1
  576. package/dist/esm/TaxonomyCard-507f5c95.js +0 -1
  577. package/dist/esm/TaxonomyDescription-ee6ae52e.js +0 -1
  578. package/dist/esm/ThumbnailCard-b7a3af71.js +0 -1
  579. package/dist/esm/Ustream-29dc2277.js +0 -1
  580. package/dist/esm/VerticalHero-ffc93a70.js +0 -1
  581. package/dist/esm/VideoProgramLandingPage-179db5b2.js +0 -1
  582. package/dist/esm/VideoSeriesFilter-b6bd4c07.js +0 -1
  583. package/dist/esm/VideoSeriesLandingPage-180a2469.js +0 -1
  584. package/dist/esm/VideoSeriesListing-62650a53.js +0 -1
  585. package/dist/esm/YahooHero-ddfeb2a5.js +0 -1
  586. package/dist/esm/YoutubeGroup-1dd6f1ba.js +0 -1
  587. package/dist/esm/_commonjsHelpers-57e89916.js +0 -1
  588. package/dist/esm/beam-50a5c4d8.js +0 -1
  589. package/dist/esm/checkSisterSite-20e2bf62.js +0 -1
  590. package/dist/esm/defineProperty-18999f8e.js +0 -1
  591. package/dist/esm/entities-8b138943.js +0 -1
  592. package/dist/esm/extends-e61fd370.js +0 -1
  593. package/dist/esm/getContentCategory-f99fdf90.js +0 -1
  594. package/dist/esm/getKeywords-2512775a.js +0 -1
  595. package/dist/esm/getPrototypeOf-a8361cb6.js +0 -1
  596. package/dist/esm/getQuery-bfc0390c.js +0 -1
  597. package/dist/esm/getRelatedArticle-66a08458.js +0 -1
  598. package/dist/esm/getSeriesDetail-aef9680c.js +0 -1
  599. package/dist/esm/getTargeting-eeb7bb6a.js +0 -1
  600. package/dist/esm/index-00bbf2b1.js +0 -1
  601. package/dist/esm/index-24498aa0.js +0 -1
  602. package/dist/esm/index-541d17f5.js +0 -1
  603. package/dist/esm/index-a96a4f73.js +0 -1
  604. package/dist/esm/searchForm-8218e558.js +0 -1
  605. package/dist/esm/segment-lib-3a19dbdd.js +0 -1
  606. package/dist/esm/setCookie-0f2ab6df.js +0 -1
  607. package/dist/esm/slicedToArray-f57adb2c.js +0 -1
  608. package/dist/esm/toConsumableArray-2f86a0c1.js +0 -1
  609. package/dist/esm/typeof-92b42de1.js +0 -1
  610. package/dist/esm/unsupportedIterableToArray-b359dd50.js +0 -1
  611. package/dist/esm/urlFor-649884fa.js +0 -1
  612. package/dist/esm/urlForFile-3b87fb01.js +0 -1
  613. package/dist/esm/ustream-api-7998d140.js +0 -1
package/dist/cjs/View.js CHANGED
@@ -1 +1,2699 @@
1
- "use strict";require("./index-3291d44c.js"),require("./extends-5ede7877.js"),require("./defineProperty-ba7cd53d.js"),require("./slicedToArray-c9e22c6a.js"),require("react"),require("next/head"),require("next/router");var e=require("./index-66647f61.js");require("./getKeywords-5341ea76.js"),require("./getQuery-154617ad.js"),require("./getSeriesDetail-e2980903.js"),require("./getTargeting-a1ecaa0b.js"),require("./getRelatedArticle-dbed93dc.js"),require("./urlFor-86a2f4db.js"),require("./unsupportedIterableToArray-294d47a8.js"),require("./toConsumableArray-7afb7984.js"),require("moment"),require("@sanity/block-content-to-react"),require("react-device-detect"),require("react-bootstrap/Form"),require("react-bootstrap/FormControl"),require("react-bootstrap/Button"),require("react-visibility-sensor"),require("./SocialShare-3d7c8abe.js"),require("react-share"),require("./index-14c8083b.js"),require("react-bootstrap"),require("react-dfp"),require("get-youtube-id"),require("react-youtube"),require("./segment-lib-7a16e514.js"),require("./urlForFile-52afb8e9.js"),require("react-lazyload"),require("./typeof-a861d137.js"),require("@brightcove/react-player-loader"),require("react-bootstrap/Modal"),require("react-player"),require("react-ga"),require("./GroupDeck-6920bcf7.js"),require("smoothscroll-polyfill"),require("react-bootstrap/Pagination"),require("./entities-8feddf1d.js"),require("striptags"),require("./_commonjsHelpers-0a7b82d9.js"),require("./AdSlot-8a0b4211.js"),require("prop-types"),require("lodash/debounce"),require("react-bootstrap/Row"),require("react-bootstrap/Col"),require("./getPrototypeOf-99b1cfd8.js"),require("react-icons/io"),require("react-bootstrap/Figure"),require("react-bootstrap/OverlayTrigger"),require("react-bootstrap/Tooltip"),require("react-bootstrap/Popover"),require("react-script-tag"),require("./checkSisterSite-d2d62375.js"),require("./SeriesSlider-720871f8.js"),require("react-icons/fa"),require("./style-inject.es-dcee06b6.js"),require("disqus-react"),require("./Schema-8c138aa8.js"),require("file-saver"),require("./PixelTracking.js"),require("react-infinite-scroll-component"),require("nookies"),require("@sanity/image-url"),module.exports=e.View;
1
+ 'use strict';
2
+
3
+ var asyncToGenerator = require('./asyncToGenerator-77821af0.js');
4
+ var _extends = require('./extends-7c86182f.js');
5
+ var slicedToArray = require('./slicedToArray-067dd3bc.js');
6
+ var React = require('react');
7
+ var Head = require('next/head');
8
+ var Router = require('next/router');
9
+ var stringify = require('./stringify-f7a37a8d.js');
10
+ var toConsumableArray = require('./toConsumableArray-d7797c2b.js');
11
+ var moment = require('./moment-aca40de1.js');
12
+ var BlockContent = require('./BlockContent-96b44364.js');
13
+ var main = require('./main-3643d499.js');
14
+ require('react-bootstrap/Dropdown');
15
+ var Form = require('react-bootstrap/Form');
16
+ var FormControl = require('react-bootstrap/FormControl');
17
+ var Button = require('react-bootstrap/Button');
18
+ var visibilitySensor = require('./visibility-sensor-56020df6.js');
19
+ var SocialShare = require('./SocialShare.js');
20
+ var getSerializers = require('./index-19fbbcea.js');
21
+ var AdSlot = require('./AdSlot.js');
22
+ var SeriesSlider = require('./SeriesSlider-3d57985d.js');
23
+ var getTargeting = require('./getTargeting-ba942d9a.js');
24
+ var getKeywords = require('./getKeywords.js');
25
+ var urlFor = require('./urlFor.js');
26
+ var urlForFile = require('./urlForFile-29d3815a.js');
27
+ var _typeof = require('./typeof-567e31ff.js');
28
+ var index_esm = require('./index.esm-d51c9ac6.js');
29
+ var styleInject_es = require('./style-inject.es-dcee06b6.js');
30
+ require('./index-65621b6c.js');
31
+ var disqusReact = require('disqus-react');
32
+ var Schema = require('./Schema.js');
33
+ var _commonjsHelpers = require('./_commonjsHelpers-06173234.js');
34
+ var PixelTracking = require('./PixelTracking.js');
35
+ require('./Segment.js');
36
+ var keys = require('./keys-e982b3fa.js');
37
+ var index_es = require('./index.es-1ab8dda7.js');
38
+ var index = require('./index-d2a6ef75.js');
39
+ var getRelatedArticle = require('./getRelatedArticle.js');
40
+ var getQuery = require('./getQuery.js');
41
+ var getSeriesDetail = require('./getSeriesDetail.js');
42
+ require('./core.get-iterator-method-5643aa10.js');
43
+ require('./web.dom.iterable-d98303e0.js');
44
+ require('./_library-dd23b178.js');
45
+ require('./_iter-detect-b1df62f0.js');
46
+ require('./_object-pie-083f2dd6.js');
47
+ require('prop-types');
48
+ require('./index-d48b231c.js');
49
+ require('react-dom');
50
+ require('react-share');
51
+ require('react-bootstrap');
52
+ require('./index-187c967e.js');
53
+ require('./util-93a37fd0.js');
54
+ require('./Beam.js');
55
+ require('./brightcove-react-player-loader.es-4c7825a1.js');
56
+ require('./_object-to-array-ce86cae7.js');
57
+ require('react-bootstrap/Modal');
58
+ require('react-ga');
59
+ require('./GroupDeck.js');
60
+ require('./smoothscroll-99df7f93.js');
61
+ require('./_is-array-54228b29.js');
62
+ require('react-bootstrap/Pagination');
63
+ require('./entities-df1aed86.js');
64
+ require('react-bootstrap/Row');
65
+ require('react-bootstrap/Col');
66
+ require('./inherits-de66ea16.js');
67
+ require('./_object-sap-d1978572.js');
68
+ require('./define-property-e8404b64.js');
69
+ require('./index.esm-d81454e7.js');
70
+ require('./iconBase-be4097c0.js');
71
+ require('react-bootstrap/Figure');
72
+ require('react-bootstrap/OverlayTrigger');
73
+ require('react-bootstrap/Tooltip');
74
+ require('react-bootstrap/Popover');
75
+ require('./checkSisterSite-b29833b2.js');
76
+ require('./debounce-d4a2369b.js');
77
+ require('./isSymbol-03abbdf0.js');
78
+ require('./toNumber-5e1fac58.js');
79
+ require('./events-1b438fe7.js');
80
+ require('./index-bd6c9f56.js');
81
+
82
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
83
+
84
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
85
+ var Head__default = /*#__PURE__*/_interopDefaultLegacy(Head);
86
+ var Form__default = /*#__PURE__*/_interopDefaultLegacy(Form);
87
+ var FormControl__default = /*#__PURE__*/_interopDefaultLegacy(FormControl);
88
+ var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
89
+
90
+ var getArticleSummary = function getArticleSummary(article) {
91
+ if (article.summary && article.summary.length > 0) {
92
+ return article.summary;
93
+ } else {
94
+ return false;
95
+ }
96
+ };
97
+
98
+ var getDocumentGroupUrl = function getDocumentGroupUrl(docGroup) {
99
+ if (!docGroup) {
100
+ return null;
101
+ }
102
+ var url = void 0;
103
+
104
+ if (docGroup.path && docGroup.path.includes('/') && (!docGroup.parent || !docGroup.parent.parent)) {
105
+ return '/' + docGroup.path;
106
+ }
107
+ // Checking if Parent has Parent
108
+ if (docGroup.path && docGroup.path.includes('/') && docGroup.parent && docGroup.parent.parent) {
109
+ if (docGroup.path.includes(docGroup.parent.identifier.current)) {
110
+ return '/' + docGroup.parent.parent.identifier.current + '/' + docGroup.path;
111
+ } else {
112
+ return '/' + docGroup.parent.parent.identifier.current + '/' + docGroup.parent.identifier.current + '/' + docGroup.path;
113
+ }
114
+ }
115
+
116
+ if (docGroup.parent) {
117
+ url = '/' + docGroup.parent.identifier.current;
118
+ if (docGroup.parent.parent && docGroup.parent.parent.name) {
119
+ url = '/' + docGroup.parent.parent.identifier.current + url;
120
+ }
121
+ }
122
+
123
+ if (!docGroup.thumbnail) ;
124
+ if (typeof url != 'undefined') {
125
+ url = url + '/' + docGroup.path;
126
+ } else {
127
+ url = '/' + docGroup.path;
128
+ }
129
+
130
+ return url;
131
+ };
132
+
133
+ var getDocumentGroupName = function getDocumentGroupName(docGroup) {
134
+ var name = void 0;
135
+ if (!docGroup) {
136
+ return null;
137
+ }
138
+
139
+ if (docGroup.parent) {
140
+ name = docGroup.parent.name;
141
+
142
+ if (docGroup.parent.parent && docGroup.parent.parent.name) {
143
+ name = docGroup.parent.parent.name + ' | ' + name;
144
+ }
145
+ }
146
+
147
+ //if (!docGroup.thumbnail) {
148
+ if (typeof name != 'undefined') {
149
+ name = name + ' | <b>' + docGroup.name + '</b>';
150
+ } else {
151
+ name = '<b>' + docGroup.name + '</b>';
152
+ }
153
+ //}
154
+
155
+ return name && typeof name != 'undefined' ? name : null;
156
+ };
157
+
158
+ var DocumentGroup = function DocumentGroup(_ref) {
159
+ var article = _ref.article,
160
+ client = _ref.client;
161
+
162
+
163
+ var mediaSeriesGroup = null;
164
+ var disableThumbnail = false;
165
+
166
+ if (article.documentGroup && article.documentGroup.hideThumbnail === true) {
167
+ disableThumbnail = true;
168
+ }
169
+
170
+ if (article.documentGroup && article.documentGroup.isShow !== false && article.documentGroup.isSeries !== true) {
171
+ mediaSeriesGroup = article.documentGroup;
172
+ }
173
+ if (!article.documentGroup && article.documentGroupMapping) {
174
+ for (var i = 0; i < article.documentGroupMapping.length; i++) {
175
+ if (article.documentGroupMapping[i].isShow !== false && article.documentGroupMapping[i].isSeries !== true) {
176
+ mediaSeriesGroup = article.documentGroupMapping[i];
177
+ break;
178
+ }
179
+ }
180
+ }
181
+
182
+ if (!mediaSeriesGroup) {
183
+ return null;
184
+ }
185
+
186
+ var name = getDocumentGroupName(mediaSeriesGroup);
187
+ var url = getDocumentGroupUrl(mediaSeriesGroup);
188
+ var thumbnailUrl = false;
189
+
190
+ if (mediaSeriesGroup.thumbnail) {
191
+ thumbnailUrl = urlFor({ client: client, source: mediaSeriesGroup.thumbnail });
192
+ }
193
+ var margin = article.documentGroupMapping && article.documentGroupMapping[0] && article.documentGroupMapping[0].parent && article.documentGroupMapping[0].parent.parent && article.documentGroupMapping[0].parent.parent.contextText || article.documentGroup && article.documentGroup.parent && article.documentGroup.parent.parent && article.documentGroup.parent.parent.contextText ? 'none' : '1rem';
194
+ return React__default["default"].createElement(
195
+ 'div',
196
+ null,
197
+ React__default["default"].createElement(
198
+ 'p',
199
+ null,
200
+ article.documentGroupMapping && article.documentGroupMapping[0] && article.documentGroupMapping[0].parent && article.documentGroupMapping[0].parent.parent && article.documentGroupMapping[0].parent.parent.contextText ? article.documentGroupMapping[0].parent.parent.contextText : article.documentGroup && article.documentGroup.parent && article.documentGroup.parent.parent && article.documentGroup.parent.parent.contextText ? article.documentGroup.parent.parent.contextText : null
201
+ ),
202
+ React__default["default"].createElement(
203
+ 'a',
204
+ {
205
+ href: url,
206
+ className: 'doc-group',
207
+ style: { display: 'flex', flexDirection: 'column', padding: '0 1rem', justifyContent: thumbnailUrl ? 'center' : 'flex-start', alignItems: 'center' } },
208
+ thumbnailUrl && !disableThumbnail && React__default["default"].createElement('img', { style: { maxWidth: '210px', maxHeight: '100px', marginTop: margin }, src: thumbnailUrl, alt: name }),
209
+ (disableThumbnail || !thumbnailUrl) && React__default["default"].createElement('p', {
210
+ style: { maxWidth: '315px', margin: '0', color: 'var(--primary)', textAlign: thumbnailUrl ? 'center' : main.main_43 ? 'left' : 'right', marginTop: '.25rem' },
211
+ dangerouslySetInnerHTML: { __html: name } }),
212
+ main.main_43 && !thumbnailUrl && React__default["default"].createElement(
213
+ 'style',
214
+ { jsx: 'true' },
215
+ '\n a.doc-group {\n display: block !important;\n padding: 0 !important;\n }\n '
216
+ )
217
+ )
218
+ );
219
+ };
220
+
221
+ var findIndex = function findIndex(arr) {
222
+ var indexes = [];
223
+ if ((typeof arr === 'undefined' ? 'undefined' : _typeof._typeof(arr)) === 'object') {
224
+ var _iteratorNormalCompletion = true;
225
+ var _didIteratorError = false;
226
+ var _iteratorError = undefined;
227
+
228
+ try {
229
+ for (var _iterator = slicedToArray._getIterator(arr), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
230
+ var ele = _step.value;
231
+
232
+ if (ele['_type'] === 'block' && ele.children.some(function (child) {
233
+ return child.text.trim().length > 0;
234
+ }) && ele['listItem'] !== 'bullet' &&
235
+ // To skip li tags when setting contextual native ads
236
+ ele['listItem'] !== 'number' && ele['style'] === 'normal' || ele['_type'] === 'figure') {
237
+ indexes.push(arr.indexOf(ele));
238
+ }
239
+ }
240
+ } catch (err) {
241
+ _didIteratorError = true;
242
+ _iteratorError = err;
243
+ } finally {
244
+ try {
245
+ if (!_iteratorNormalCompletion && _iterator.return) {
246
+ _iterator.return();
247
+ }
248
+ } finally {
249
+ if (_didIteratorError) {
250
+ throw _iteratorError;
251
+ }
252
+ }
253
+ }
254
+ }
255
+ return indexes;
256
+ };
257
+
258
+ var ISI = function ISI(props) {
259
+ var children = props.children;
260
+
261
+ var _useState = React.useState(false),
262
+ _useState2 = slicedToArray._slicedToArray(_useState, 2),
263
+ active = _useState2[0],
264
+ setActive = _useState2[1];
265
+
266
+ var _useState3 = React.useState(false),
267
+ _useState4 = slicedToArray._slicedToArray(_useState3, 2),
268
+ bottomOfArticle = _useState4[0],
269
+ setbottomOfArticle = _useState4[1];
270
+
271
+ var isi = React.useRef();
272
+
273
+ React.useEffect(function () {
274
+ if (active) {
275
+ var offset = '5rem';
276
+ var nav = document.getElementsByTagName('header');
277
+ if (nav && nav.length > 0) {
278
+ offset = nav[0].offsetHeight + 'px';
279
+ }
280
+ isi.current.style.maxHeight = 'calc(100% - ' + offset + ')';
281
+ isi.current.style.overflowY = 'scroll';
282
+ } else {
283
+ isi.current.style.maxHeight = '';
284
+ isi.current.style.overflowY = '';
285
+ }
286
+ }, [active]);
287
+ React.useEffect(function () {
288
+ var detectBottomOfArticle = function detectBottomOfArticle() {
289
+ var article_body = document.getElementById('article__block');
290
+ var isi = document.getElementById('isi');
291
+ var articleBottomPosition = article_body.getBoundingClientRect().bottom - window.innerHeight;
292
+ // console.log(articleBottomPosition, bottomOfArticle)
293
+ if (articleBottomPosition < 30 && !isi.classList.contains('in-view')) {
294
+ setbottomOfArticle(true);
295
+ }
296
+ if (articleBottomPosition > 60 && isi.classList.contains('in-view')) {
297
+ setbottomOfArticle(false);
298
+ }
299
+ };
300
+ window.addEventListener('scroll', detectBottomOfArticle);
301
+ return function () {
302
+ return window.removeEventListener('scroll', detectBottomOfArticle);
303
+ };
304
+ }, []);
305
+
306
+ React.useEffect(function () {
307
+ var isi = document.getElementById('isi');
308
+ if (bottomOfArticle) {
309
+ toggleSticky(true);
310
+ isi.classList.add('in-view');
311
+ if (active) {
312
+ setActive(false);
313
+ }
314
+ }
315
+ if (!bottomOfArticle) {
316
+ toggleSticky(false);
317
+ isi.classList.remove('in-view');
318
+ }
319
+ }, [bottomOfArticle]);
320
+
321
+ var toggleSticky = function toggleSticky(sticky) {
322
+ var isiToggle = document.getElementById('isiToggle');
323
+ var isiContent = document.getElementById('isiContent');
324
+ var isi = document.getElementById('isi');
325
+ if (sticky) {
326
+ isi.style.bottom = '-200px';
327
+ setTimeout(function () {
328
+ isi.style.maxHeight = 'unset';
329
+ isi.style.position = 'relative';
330
+ isi.style.boxShadow = 'none';
331
+ isi.style.zIndex = '1';
332
+ isi.style.marginTop = '-25rem';
333
+ isi.style.marginBottom = '15rem';
334
+ isiToggle.style.display = 'none';
335
+ isiContent.style.padding = '0';
336
+ }, 300);
337
+ } else if (!sticky) {
338
+
339
+ isi.style.marginBottom = '0';
340
+ isi.style.maxHeight = '12rem';
341
+ isi.style.position = 'fixed';
342
+ isi.style.boxShadow = '0 0 1rem 0 rgba(0, 0, 0, 0.5)';
343
+ isi.style.zIndex = '99999';
344
+
345
+ isiToggle.style.display = 'block';
346
+ isiContent.style.padding = '1rem';
347
+ setTimeout(function () {
348
+ isi.style.bottom = '0';
349
+ isi.style.marginTop = '0';
350
+ }, 300);
351
+ }
352
+ };
353
+ return React__default["default"].createElement(
354
+ React__default["default"].Fragment,
355
+ null,
356
+ React__default["default"].createElement(
357
+ 'div',
358
+ { id: 'isi', ref: isi },
359
+ React__default["default"].createElement(
360
+ 'div',
361
+ { id: 'isiContent' },
362
+ React__default["default"].createElement(
363
+ 'div',
364
+ { onClick: function onClick() {
365
+ return setActive(function (prev) {
366
+ return !prev;
367
+ });
368
+ }, id: 'isiToggle' },
369
+ active ? React__default["default"].createElement(
370
+ 'p',
371
+ null,
372
+ 'Close ',
373
+ React__default["default"].createElement(index_esm.FaMinus, null)
374
+ ) : React__default["default"].createElement(
375
+ 'p',
376
+ null,
377
+ 'See More ',
378
+ React__default["default"].createElement(index_esm.FaPlus, null)
379
+ )
380
+ ),
381
+ children
382
+ )
383
+ ),
384
+ React__default["default"].createElement(
385
+ 'style',
386
+ { jsx: true },
387
+ '\n #isi {\n position: fixed;\n z-index: 9999999;\n bottom: 0;\n left: 0;\n max-height: 12rem;\n background-color: #ffffff;\n overflow-x: hidden;\n overflow-y: hidden;\n width: 100%;\n box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.5);\n transition: bottom .5s ease , margin-top .3s, max-height .2s;\n }\n #isiContent {\n width: 100%;\n max-width: 1000px;\n margin-left: auto;\n margin-right: auto;\n position: relative;\n padding: 1rem;\n font-size: 1rem;\n }\n #isi::-webkit-scrollbar {\n display: none;\n }\n #isiToggle {\n position: absolute;\n top: 0;\n right: 0;\n padding: 1rem;\n font-weight: bold;\n cursor: pointer;\n font-size: 1rem;\n }\n #isiToggle p {\n margin: 0;\n }\n '
388
+ )
389
+ );
390
+ };
391
+
392
+ var css$1 = ".RelatedArticles-module_mediaContainer__10h9k {\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n margin: 0 -1rem;\n}\n.RelatedArticles-module_mediaCard__3wQbn {\n margin: 0 1rem 1rem;\n width: calc(33% - 1rem);\n display: column;\n flex-direction: row;\n margin-bottom: 0.75rem;\n padding-bottom: 0.75rem;\n border-bottom: none;\n}\n.RelatedArticles-module_mediaCard__3wQbn:last-child {\n border-bottom: none;\n}\n.RelatedArticles-module_cardTitle__3P-Ib {\n font-weight: bold;\n color: #252525;\n margin-bottom: 0.25rem;\n font-size: 15px;\n}\n.RelatedArticles-module_authorListing__1EFg4 span.RelatedArticles-module_text-muted__3b0zX {\n color: #000;\n font-weight: bold;\n}\n.RelatedArticles-module_cardDate__1wOR5 {\n color: var(--dark);\n display: block;\n background: #fff !important;\n margin-bottom: 0;\n}\n.RelatedArticles-module_imgWrapper__5Jx_4 {\n display: block;\n text-align: center;\n margin-bottom: 0.5rem;\n}\n.RelatedArticles-module_imgWrapper__5Jx_4 img {\n height: 135px;\n width: 100%;\n object-fit: cover;\n object-position: center;\n}\n@media screen and (max-width: 1064px) {\n}\n@media screen and (max-width: 968px) {\n .RelatedArticles-module_mediaContainer__10h9k {\n flex-wrap: wrap;\n }\n .RelatedArticles-module_imgWrapper__5Jx_4 {\n display: none;\n }\n .RelatedArticles-module_mediaCard__3wQbn {\n width: 100%;\n margin-bottom: 0.5rem;\n padding: 0;\n }\n .RelatedArticles-module_cardTitle__3P-Ib {\n font-size: 0.75rem;\n margin-bottom: 0;\n }\n}\n";
393
+ var styles$1 = { "mediaContainer": "RelatedArticles-module_mediaContainer__10h9k", "mediaCard": "RelatedArticles-module_mediaCard__3wQbn", "cardTitle": "RelatedArticles-module_cardTitle__3P-Ib", "authorListing": "RelatedArticles-module_authorListing__1EFg4", "text-muted": "RelatedArticles-module_text-muted__3b0zX", "cardDate": "RelatedArticles-module_cardDate__1wOR5", "imgWrapper": "RelatedArticles-module_imgWrapper__5Jx_4" };
394
+ styleInject_es.styleInject(css$1);
395
+
396
+ var RelatedArticle = function RelatedArticle(_ref) {
397
+ var articles = _ref.articles,
398
+ client = _ref.client,
399
+ fallbackImage = _ref.fallbackImage,
400
+ _ref$showRelatedArtic = _ref.showRelatedArticleFallbackImage,
401
+ showRelatedArticleFallbackImage = _ref$showRelatedArtic === undefined ? true : _ref$showRelatedArtic;
402
+
403
+ if (!articles || articles.length == 0 || !articles[0]) {
404
+ return null;
405
+ }
406
+ return React__default["default"].createElement(
407
+ 'div',
408
+ { className: styles$1.mediaContainer },
409
+ articles.map(function (article, index) {
410
+ if (article && article.url && article.url.current) {
411
+ return React__default["default"].createElement(
412
+ 'div',
413
+ { id: 'related-card', key: index, className: styles$1.mediaCard },
414
+ React__default["default"].createElement(
415
+ 'a',
416
+ { className: styles$1.imgWrapper, href: '/view/' + (article.url ? article.url.current : '') },
417
+ article.thumbnail ? React__default["default"].createElement('img', {
418
+ style: { objectFit: 'cover', objectPosition: 'center' },
419
+ src: article.thumbnail && urlFor({ client: client, source: article.thumbnail.asset, imageWidth: 250 }),
420
+ alt: article.title
421
+ }) : React__default["default"].createElement(
422
+ React__default["default"].Fragment,
423
+ null,
424
+ fallbackImage && showRelatedArticleFallbackImage && React__default["default"].createElement('img', { src: fallbackImage, alt: 'website logo', style: { objectFit: 'contain' } })
425
+ )
426
+ ),
427
+ React__default["default"].createElement(
428
+ 'div',
429
+ { className: styles$1.mediaBody },
430
+ React__default["default"].createElement(
431
+ 'a',
432
+ { href: '/view/' + (article.url ? article.url.current : '') },
433
+ React__default["default"].createElement(
434
+ 'div',
435
+ { className: styles$1.cardTitle },
436
+ article.title
437
+ )
438
+ )
439
+ )
440
+ );
441
+ }
442
+ })
443
+ );
444
+ };
445
+
446
+ var getSocialShareDisableFlag = function getSocialShareDisableFlag(article) {
447
+ //Need to check Taxonomy, DocumentGroup, and Authors for showSocialShare
448
+ var showSocialShare = true;
449
+ if (article.showSocialShare === true) {
450
+ return showSocialShare;
451
+ }
452
+
453
+ if (article.showSocialShare === false) {
454
+ showSocialShare = false;
455
+ return showSocialShare;
456
+ }
457
+
458
+ if (article.content_placement && article.content_placement.length > 0) {
459
+ //loop through each
460
+ article.content_placement.forEach(function (category) {
461
+ if (category.showSocialShare === false) {
462
+ showSocialShare = false;
463
+ }
464
+ });
465
+ }
466
+ if (article.authorDetails && article.authorDetails.length > 0) {
467
+ article.authorDetails.forEach(function (author) {
468
+ if (author.showSocialShare === false) {
469
+ showSocialShare = false;
470
+ }
471
+ });
472
+ }
473
+ if (article.documentGroup && article.documentGroup.length > 0) {
474
+ article.documentGroup.forEach(function (docGroup) {
475
+ if (docGroup.showSocialShare === false) {
476
+ showSocialShare = false;
477
+ }
478
+ });
479
+ }
480
+ if (article.documentGroupMapping && article.documentGroupMapping.length > 0) {
481
+ article.documentGroupMapping.forEach(function (docGroup) {
482
+ if (docGroup.showSocialShare === false) {
483
+ showSocialShare = false;
484
+ }
485
+ });
486
+ }
487
+
488
+ return showSocialShare;
489
+ };
490
+
491
+ var FileSaver_min = _commonjsHelpers.createCommonjsModule(function (module, exports) {
492
+ (function(a,b){b();})(_commonjsHelpers.commonjsGlobal,function(){function b(a,b){return "undefined"==typeof b?b={autoBom:!1}:"object"!=typeof b&&(console.warn("Deprecated: Expected third argument to be a object"),b={autoBom:!b}),b.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\uFEFF",a],{type:a.type}):a}function c(a,b,c){var d=new XMLHttpRequest;d.open("GET",a),d.responseType="blob",d.onload=function(){g(d.response,b,c);},d.onerror=function(){console.error("could not download file");},d.send();}function d(a){var b=new XMLHttpRequest;b.open("HEAD",a,!1);try{b.send();}catch(a){}return 200<=b.status&&299>=b.status}function e(a){try{a.dispatchEvent(new MouseEvent("click"));}catch(c){var b=document.createEvent("MouseEvents");b.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),a.dispatchEvent(b);}}var f="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof _commonjsHelpers.commonjsGlobal&&_commonjsHelpers.commonjsGlobal.global===_commonjsHelpers.commonjsGlobal?_commonjsHelpers.commonjsGlobal:void 0,a=f.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),g=f.saveAs||("object"!=typeof window||window!==f?function(){}:"download"in HTMLAnchorElement.prototype&&!a?function(b,g,h){var i=f.URL||f.webkitURL,j=document.createElement("a");g=g||b.name||"download",j.download=g,j.rel="noopener","string"==typeof b?(j.href=b,j.origin===location.origin?e(j):d(j.href)?c(b,g,h):e(j,j.target="_blank")):(j.href=i.createObjectURL(b),setTimeout(function(){i.revokeObjectURL(j.href);},4E4),setTimeout(function(){e(j);},0));}:"msSaveOrOpenBlob"in navigator?function(f,g,h){if(g=g||f.name||"download","string"!=typeof f)navigator.msSaveOrOpenBlob(b(f,h),g);else if(d(f))c(f,g,h);else {var i=document.createElement("a");i.href=f,i.target="_blank",setTimeout(function(){e(i);});}}:function(b,d,e,g){if(g=g||open("","_blank"),g&&(g.document.title=g.document.body.innerText="downloading..."),"string"==typeof b)return c(b,d,e);var h="application/octet-stream"===b.type,i=/constructor/i.test(f.HTMLElement)||f.safari,j=/CriOS\/[\d]+/.test(navigator.userAgent);if((j||h&&i||a)&&"undefined"!=typeof FileReader){var k=new FileReader;k.onloadend=function(){var a=k.result;a=j?a:a.replace(/^data:[^;]*;/,"data:attachment/file;"),g?g.location.href=a:location=a,g=null;},k.readAsDataURL(b);}else {var l=f.URL||f.webkitURL,m=l.createObjectURL(b);g?g.location=m:location.href=m,g=null,setTimeout(function(){l.revokeObjectURL(m);},4E4);}});f.saveAs=g.saveAs=g,(module.exports=g);});
493
+
494
+
495
+ });
496
+
497
+ var css = ".RecommendedArticles-module_recommendTitle__2kUji {\n border-bottom: 2px solid var(--secondary-blue);\n font-size: 1.5rem;\n font-weight: bold;\n color: #0d335a;\n padding: 0.5rem;\n}\n.RecommendedArticles-module_recommendContainer__sZukI {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n margin: 0 -0.5rem;\n}\n.RecommendedArticles-module_recommendTop__1_yqw {\n margin: 0.5rem;\n width: 100%;\n flex-basis: 100%;\n display: flex;\n\n}\n.RecommendedArticles-module_recommendTopImg__1b9gu {\n min-width: 55%;\n width: 55%;\n height: 100%;\n}\n.RecommendedArticles-module_recommendTopImg__1b9gu img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n.RecommendedArticles-module_recommendTopBody__-13FI {\n margin-left: 1rem;\n line-height: 1.3;\n color: #121212;\n display: flex;\n flex-direction: column;\n}\n.RecommendedArticles-module_topTitle__2EafN {\n font-size: 25px;\n font-weight: bold;\n margin-bottom: 0.5rem;\n}\n.RecommendedArticles-module_topBody__2_VNi {\n font-size: 19px;\n margin-bottom: 0.5rem;\n}\n.RecommendedArticles-module_topLink__2RnXu {\n font-size: 19px;\n color: rgb(43, 43, 151);\n text-decoration: underline;\n margin-top: auto;\n}\n.RecommendedArticles-module_smContainer__4byBO {\n width: calc(25% - 1rem);\n margin: 0 0.5rem;\n}\n.RecommendedArticles-module_smImage__TYZGY img {\n width: 100%;\n}\n.RecommendedArticles-module_title__3q1ud {\n margin-top: 1rem;\n line-height: 1.2;\n color: #121212;\n}\n.RecommendedArticles-module_category__2jRto {\n text-transform: uppercase;\n font-size: 16px;\n letter-spacing: 2px;\n margin: 0.25rem 0;\n}\n\n/* media query */\n\n@media screen and (max-width: 1399px) {\n .RecommendedArticles-module_topTitle__2EafN {\n font-size: 21px;\n }\n .RecommendedArticles-module_topBody__2_VNi {\n font-size: 15px;\n }\n}\n@media screen and (max-width: 1191px) {\n .RecommendedArticles-module_topTitle__2EafN {\n font-size: 23px;\n }\n .RecommendedArticles-module_topBody__2_VNi,\n .RecommendedArticles-module_topLink__2RnXu {\n font-size: 17px;\n }\n}\n@media screen and (max-width: 968px) {\n .RecommendedArticles-module_topTitle__2EafN {\n font-size: 18px;\n }\n .RecommendedArticles-module_topBody__2_VNi,\n .RecommendedArticles-module_topLink__2RnXu {\n font-size: 15px;\n }\n}\n@media screen and (max-width: 768px) {\n .RecommendedArticles-module_recommendTop__1_yqw {\n flex-direction: column;\n }\n .RecommendedArticles-module_recommendTopImg__1b9gu,\n .RecommendedArticles-module_recommendTopBody__-13FI {\n width: 100%;\n margin: 0;\n }\n .RecommendedArticles-module_recommendTopBody__-13FI {\n margin-bottom: 1rem;\n }\n .RecommendedArticles-module_smContainer__4byBO {\n width: calc(50% - 1rem);\n }\n}";
498
+ var styles = { "recommendTitle": "RecommendedArticles-module_recommendTitle__2kUji", "recommendContainer": "RecommendedArticles-module_recommendContainer__sZukI", "recommendTop": "RecommendedArticles-module_recommendTop__1_yqw", "recommendTopImg": "RecommendedArticles-module_recommendTopImg__1b9gu", "recommendTopBody": "RecommendedArticles-module_recommendTopBody__-13FI", "topTitle": "RecommendedArticles-module_topTitle__2EafN", "topBody": "RecommendedArticles-module_topBody__2_VNi", "topLink": "RecommendedArticles-module_topLink__2RnXu", "smContainer": "RecommendedArticles-module_smContainer__4byBO", "smImage": "RecommendedArticles-module_smImage__TYZGY", "title": "RecommendedArticles-module_title__3q1ud", "category": "RecommendedArticles-module_category__2jRto" };
499
+ styleInject_es.styleInject(css);
500
+
501
+ var _this$2 = undefined;
502
+
503
+ var Recommended = function Recommended(props) {
504
+ var article = props.article,
505
+ client = props.client,
506
+ _props$index = props.index,
507
+ index = _props$index === undefined ? 0 : _props$index,
508
+ cpModificationRequired = props.cpModificationRequired,
509
+ emailList = props.emailList,
510
+ articleRecsQuery = props.articleRecsQuery;
511
+
512
+ var _useState = React.useState(false),
513
+ _useState2 = slicedToArray._slicedToArray(_useState, 2),
514
+ segmentLoaded = _useState2[0],
515
+ setSegmentLoaded = _useState2[1];
516
+
517
+ var _useState3 = React.useState([]),
518
+ _useState4 = slicedToArray._slicedToArray(_useState3, 2),
519
+ articles = _useState4[0],
520
+ setArticles = _useState4[1];
521
+
522
+ var _useState5 = React.useState('loading'),
523
+ _useState6 = slicedToArray._slicedToArray(_useState5, 2),
524
+ loaded = _useState6[0],
525
+ setLoaded = _useState6[1]; // loading, loaded, failed
526
+
527
+
528
+ var starting = index * 5;
529
+ var emailTracked = React.useRef(false);
530
+
531
+ var contentMapping = {
532
+ videos: 'video',
533
+ articles: 'article',
534
+ podcasts: 'podcast'
535
+ };
536
+ var mainCategories = article.content_placement.filter(function (cp) {
537
+ return cp.usedForRecommendations === true;
538
+ }).map(function (cp) {
539
+ return cp.name;
540
+ }).sort();
541
+
542
+ React.useEffect(function () {
543
+ try {
544
+ if (!segmentLoaded) {
545
+ return;
546
+ }
547
+ if (mainCategories.length > 0) {
548
+ analytics.track('Article Category Viewed', {
549
+ 'categories.$': stringify._JSON$stringify(mainCategories)
550
+ });
551
+ }
552
+ var getSegmentProfile = function () {
553
+ var _ref = asyncToGenerator._asyncToGenerator( /*#__PURE__*/asyncToGenerator.regenerator.mark(function _callee() {
554
+ var anonymousId, traits, i, response, data, addTaxonomyName, favoriteCategories, articlesCategory, videosCategory, podcastCategory, taxonomyCategories, taxonomies, articlesQuery, videosQuery, podcastQuery, params, _ref2, _ref3, _articles, videos, podcasts, recs;
555
+
556
+ return asyncToGenerator.regenerator.wrap(function _callee$(_context) {
557
+ while (1) {
558
+ switch (_context.prev = _context.next) {
559
+ case 0:
560
+ anonymousId = analytics.user().anonymousId();
561
+ traits = analytics.user().traits();
562
+ // console.log('anonymousId', anonymousId)
563
+
564
+ if (!(traits && traits.email)) {
565
+ _context.next = 11;
566
+ break;
567
+ }
568
+
569
+ i = 0;
570
+
571
+ case 4:
572
+ if (!(i < emailList.length)) {
573
+ _context.next = 11;
574
+ break;
575
+ }
576
+
577
+ if (!(traits.email === emailList[i].email)) {
578
+ _context.next = 8;
579
+ break;
580
+ }
581
+
582
+ emailTracked.current = true;
583
+ return _context.abrupt('break', 11);
584
+
585
+ case 8:
586
+ i++;
587
+ _context.next = 4;
588
+ break;
589
+
590
+ case 11:
591
+ _context.next = 13;
592
+ return fetch('/api/getSegmentProfile', {
593
+ method: 'POST',
594
+ body: stringify._JSON$stringify({ anonymousId: anonymousId })
595
+ });
596
+
597
+ case 13:
598
+ response = _context.sent;
599
+ _context.next = 16;
600
+ return response.json();
601
+
602
+ case 16:
603
+ data = _context.sent;
604
+
605
+ if (!(emailTracked.current || data && data.traits)) {
606
+ _context.next = 54;
607
+ break;
608
+ }
609
+
610
+ // console.log('%csegment user profile', 'font-size:1.5rem;color:#000000;padding:1rem;background-color:yellow;', data.traits)
611
+ addTaxonomyName = function addTaxonomyName(taxArr) {
612
+ if (!taxArr) return '';
613
+ var query = ' && ( ';
614
+ taxArr.forEach(function (item, index) {
615
+ if (index === 0) {
616
+ query = query + ('name == \'' + item + '\'');
617
+ } else {
618
+ query = query + (' || name == \'' + item + '\'');
619
+ }
620
+ });
621
+
622
+ query = query + ' )';
623
+
624
+ return query;
625
+ };
626
+
627
+ favoriteCategories = data.traits.most_frequent_article_category ? JSON.parse(data.traits.most_frequent_article_category) : null;
628
+
629
+ // grab contentCategory ID
630
+
631
+ _context.next = 22;
632
+ return client.fetch("*[_type == 'contentCategory' && name == 'Articles'][0]{_id}");
633
+
634
+ case 22:
635
+ articlesCategory = _context.sent;
636
+ _context.next = 25;
637
+ return client.fetch("*[_type == 'contentCategory' && name == 'Videos'][0]{_id}");
638
+
639
+ case 25:
640
+ videosCategory = _context.sent;
641
+ _context.next = 28;
642
+ return client.fetch("*[_type == 'contentCategory' && name == 'Podcasts'][0]{_id}");
643
+
644
+ case 28:
645
+ podcastCategory = _context.sent;
646
+ _context.next = 31;
647
+ return client.fetch('*[_type == \'taxonomy\' ' + addTaxonomyName(favoriteCategories) + ']');
648
+
649
+ case 31:
650
+ taxonomyCategories = _context.sent;
651
+ taxonomies = '';
652
+
653
+ taxonomyCategories.forEach(function (taxonomy, index) {
654
+ if (index === 0) {
655
+ taxonomies = taxonomies + (' && ( references(\'' + taxonomy._id + '\')');
656
+ } else {
657
+ taxonomies = taxonomies + (' || references(\'' + taxonomy._id + '\')');
658
+ }
659
+ });
660
+ taxonomies = taxonomies + ' )';
661
+ // grab 3 articles from sanity different from the one currently being read
662
+ articlesQuery = '*[_type == \'article\'\n && !(_id in path("drafts.**"))\n && defined(title)\n && defined(url)\n && is_visible == true \n && passwordLock != true\n && references(\'' + articlesCategory._id + '\')\n ' + taxonomies + '\n && defined(published)\n && _id != $id\n && dateTime(published) <= dateTime(now())] | order(published desc) [' + starting + '...' + (starting + 5) + '] {\n ...,\n title,\n thumbnail,\n url,\n contentCategory->,\n published,\n }';
663
+ videosQuery = '*[_type == \'article\'\n && !(_id in path("drafts.**"))\n && defined(title)\n && defined(url)\n && is_visible == true \n && passwordLock != true\n && references(\'' + videosCategory._id + '\')\n ' + taxonomies + '\n && defined(published)\n && _id != $id\n && dateTime(published) <= dateTime(now())] | order(published desc) [' + starting + '...' + (starting + 1) + '] {\n ...,\n title,\n thumbnail,\n url,\n contentCategory->,\n published,\n }';
664
+ podcastQuery = '*[_type == \'article\'\n && !(_id in path("drafts.**"))\n && defined(title)\n && defined(url)\n && is_visible == true \n && passwordLock != true\n && references(\'' + podcastCategory._id + '\')\n ' + taxonomies + '\n && defined(published)\n && _id != $id\n && dateTime(published) <= dateTime(now())] | order(published desc) [' + starting + '...' + (starting + 2) + '] {\n ...,\n title,\n thumbnail,\n url,\n contentCategory->,\n published,\n }';
665
+ params = {
666
+ id: article._id
667
+ };
668
+ _context.next = 41;
669
+ return asyncToGenerator._Promise.all([client.fetch(articlesQuery, params), client.fetch(videosQuery, params), client.fetch(podcastQuery, params), client.fetch(articleRecsQuery)]);
670
+
671
+ case 41:
672
+ _ref2 = _context.sent;
673
+ _ref3 = slicedToArray._slicedToArray(_ref2, 4);
674
+ _articles = _ref3[0];
675
+ videos = _ref3[1];
676
+ podcasts = _ref3[2];
677
+ recs = _ref3[3];
678
+
679
+ if (_articles.length === 0) setLoaded('failed');
680
+
681
+ if (!(emailTracked.current && recs)) {
682
+ _context.next = 51;
683
+ break;
684
+ }
685
+
686
+ setArticles(recs);
687
+ return _context.abrupt('return');
688
+
689
+ case 51:
690
+ if (_articles && !emailTracked.current) {
691
+ if (videos[0] && _articles[2]) {
692
+ _articles[2] = videos[0];
693
+ }
694
+ if (videos[1] && _articles[4]) {
695
+ _articles[4] = videos[1];
696
+ }
697
+ if (podcasts[0] && _articles[3]) {
698
+ _articles[3] = podcasts[0];
699
+ }
700
+ setArticles(_articles);
701
+ }
702
+ _context.next = 55;
703
+ break;
704
+
705
+ case 54:
706
+ setLoaded('failed');
707
+
708
+ case 55:
709
+ case 'end':
710
+ return _context.stop();
711
+ }
712
+ }
713
+ }, _callee, _this$2);
714
+ }));
715
+
716
+ return function getSegmentProfile() {
717
+ return _ref.apply(this, arguments);
718
+ };
719
+ }();
720
+ getSegmentProfile();
721
+ } catch (err) {
722
+ console.log(err);
723
+ setLoaded('failed');
724
+ }
725
+ }, [segmentLoaded]);
726
+
727
+ React.useEffect(function () {
728
+ if (articles && articles.length > 0) {
729
+ setLoaded('loaded');
730
+ }
731
+ }, [articles]);
732
+
733
+ React.useEffect(function () {
734
+ try {
735
+ analytics.ready(function () {
736
+ setSegmentLoaded(function () {
737
+ return 'loaded';
738
+ });
739
+ });
740
+ } catch (err) {
741
+ console.log(err);
742
+ setLoaded('failed');
743
+ }
744
+ }, []);
745
+
746
+ return React__default["default"].createElement(
747
+ 'div',
748
+ { id: 'recommended', style: { minHeight: '150px' } },
749
+ loaded === 'loaded' && React__default["default"].createElement(
750
+ React__default["default"].Fragment,
751
+ null,
752
+ React__default["default"].createElement(
753
+ 'h4',
754
+ { className: styles.recommendTitle },
755
+ 'Recommended For You'
756
+ ),
757
+ React__default["default"].createElement(
758
+ 'div',
759
+ { className: styles.recommendContainer, id: 'recommendedContent' },
760
+ articles.map(function (article, index) {
761
+ if (index === 0) {
762
+ return React__default["default"].createElement(
763
+ 'div',
764
+ { key: article._id + ('-' + index), className: styles.recommendTop },
765
+ React__default["default"].createElement(
766
+ 'div',
767
+ { className: styles.recommendTopImg },
768
+ React__default["default"].createElement(
769
+ 'a',
770
+ { href: '/view/' + article.url.current + '?utm_source=website&utm_medium=dynamic_content&utm_campaign=in_feed_unit' },
771
+ React__default["default"].createElement('img', { src: urlFor({ source: article.thumbnail, client: client, imageHeight: 306, imageWidth: 544 }) })
772
+ )
773
+ ),
774
+ React__default["default"].createElement(
775
+ 'div',
776
+ { className: styles.recommendTopBody },
777
+ React__default["default"].createElement(
778
+ 'div',
779
+ { className: styles.topTitle },
780
+ article.title
781
+ ),
782
+ React__default["default"].createElement(
783
+ 'p',
784
+ { className: styles.topBody },
785
+ article.summary
786
+ ),
787
+ React__default["default"].createElement(
788
+ 'a',
789
+ { href: '/view/' + article.url.current + '?utm_source=website&utm_medium=dynamic_content&utm_campaign=in_feed_unit', className: styles.topLink },
790
+ '>> ',
791
+ 'Read Article'
792
+ )
793
+ )
794
+ );
795
+ } else {
796
+ return React__default["default"].createElement(
797
+ 'div',
798
+ { key: article._id + ('-' + index), className: styles.smContainer },
799
+ React__default["default"].createElement(
800
+ 'div',
801
+ { className: styles.category },
802
+ contentMapping && contentMapping[article.contentCategory.name] && contentMapping[article.contentCategory.name.toLowerCase()] ? contentMapping[article.contentCategory.name.toLowerCase()] : article.contentCategory.name
803
+ ),
804
+ React__default["default"].createElement(
805
+ 'a',
806
+ { href: '/view/' + article.url.current + '?utm_source=website&utm_medium=dynamic_content&utm_campaign=in_feed_unit' },
807
+ React__default["default"].createElement(
808
+ 'div',
809
+ { className: styles.smImage },
810
+ React__default["default"].createElement('img', { src: urlFor({ source: article.thumbnail, client: client, imageHeight: 270, imageWidth: 480 }) })
811
+ ),
812
+ React__default["default"].createElement(
813
+ 'div',
814
+ { className: styles.title },
815
+ article.title
816
+ )
817
+ )
818
+ );
819
+ }
820
+ })
821
+ )
822
+ ),
823
+ loaded === 'failed' && React__default["default"].createElement(
824
+ 'section',
825
+ { id: 'related-content-section', className: 'my-1' },
826
+ (article.relatedArticle || RelevantTopics({ article: article })) && React__default["default"].createElement(
827
+ 'p',
828
+ { className: 'mb-0' },
829
+ React__default["default"].createElement(
830
+ 'b',
831
+ null,
832
+ 'Related Content:'
833
+ )
834
+ ),
835
+ React__default["default"].createElement(RelevantTopics, { article: article, cpModificationRequired: cpModificationRequired, Settings: props.Settings }),
836
+ React__default["default"].createElement(
837
+ 'div',
838
+ { className: 'pt-2' },
839
+ React__default["default"].createElement(RelatedArticle, {
840
+ articles: article.relatedArticle,
841
+ client: client,
842
+ fallbackImage: props.Settings.logo,
843
+ showRelatedArticleFallbackImage: props.showRelatedArticleFallbackImage
844
+ })
845
+ )
846
+ )
847
+ );
848
+ };
849
+
850
+ var RelevantTopics = function RelevantTopics(props) {
851
+ var article = props.article,
852
+ cpModificationRequired = props.cpModificationRequired;
853
+ var content_placement = article.content_placement,
854
+ documentGroupMapping = article.documentGroupMapping,
855
+ issueGroup = article.issueGroup;
856
+
857
+ if (content_placement && content_placement.length > 0 || documentGroupMapping && documentGroupMapping.length > 0) {
858
+ var relatedLinks = [];
859
+ if (documentGroupMapping && documentGroupMapping.length > 0) {
860
+ documentGroupMapping.forEach(function (documentGroup) {
861
+ if (documentGroup.isShow === false || documentGroup.excludeRelatedContents) {
862
+ return null;
863
+ }
864
+ if (documentGroup.parent) {
865
+ relatedLinks = [].concat(toConsumableArray._toConsumableArray(relatedLinks), [{
866
+ label: documentGroup.name,
867
+ href: cpModificationRequired ? getDocumentGroupUrl(documentGroup) : documentGroup.parent.identifier && documentGroup.parent.identifier.current && !documentGroup.path.includes('/') ? '/' + documentGroup.parent.identifier.current + '/' + documentGroup.path : '/' + documentGroup.path
868
+ }]);
869
+ }
870
+ });
871
+ }
872
+ if (content_placement && content_placement.length > 0) {
873
+ content_placement.filter(function (item) {
874
+ return item.path !== 'news';
875
+ }).forEach(function (cp) {
876
+ if (cp.excludeRelatedContents) {
877
+ return null;
878
+ }
879
+ var cp_url = cpModificationRequired ? getTargeting.getContentPlacementUrl(cp) : cp.path;
880
+ var href = '/' + cp_url;
881
+ relatedLinks = [].concat(toConsumableArray._toConsumableArray(relatedLinks), [{ label: cp.name, href: href }]);
882
+ });
883
+ }
884
+ if (issueGroup && issueGroup.name && issueGroup.identifier && issueGroup.identifier.current && issueGroup.parent && issueGroup.parent.identifier && issueGroup.parent.identifier.current) {
885
+ var _props$Settings$issue = props.Settings.issueMapping,
886
+ issueMapping = _props$Settings$issue === undefined ? '/publications' : _props$Settings$issue;
887
+
888
+ relatedLinks = [].concat(toConsumableArray._toConsumableArray(relatedLinks), [{ label: issueGroup.name, href: issueMapping + '/' + issueGroup.parent.identifier.current + '/' + issueGroup.identifier.current }]);
889
+ }
890
+ if (relatedLinks && relatedLinks.length > 0) {
891
+ return React__default["default"].createElement(
892
+ 'div',
893
+ null,
894
+ relatedLinks.map(function (relatedLink, index) {
895
+ if (relatedLink && relatedLink.href && relatedLink.label) {
896
+ return React__default["default"].createElement(
897
+ 'span',
898
+ { key: relatedLink.label, className: 'related-link' },
899
+ React__default["default"].createElement(
900
+ 'a',
901
+ { className: 'related-links', style: { color: 'blue' }, href: relatedLink.href },
902
+ relatedLink.label
903
+ ),
904
+ React__default["default"].createElement(
905
+ 'style',
906
+ { jsx: 'true' },
907
+ '\n .related-link:not(:first-child):before {\n content: \' | \';\n }\n '
908
+ )
909
+ );
910
+ }
911
+ })
912
+ );
913
+ }
914
+ return null;
915
+ }
916
+ return null;
917
+ };
918
+
919
+ var checkDocGroupMappingForSeries = function checkDocGroupMappingForSeries(docGroupArray) {
920
+
921
+ for (var i = 0; i < docGroupArray.length; i++) {
922
+ if (docGroupArray[i].isSeries) {
923
+ return docGroupArray[i];
924
+ }
925
+ }
926
+
927
+ return false;
928
+ };
929
+
930
+ var Article = React__default["default"].memo(React.forwardRef(function (props, ref) {
931
+ var onVote = function () {
932
+ var _ref = asyncToGenerator._asyncToGenerator( /*#__PURE__*/asyncToGenerator.regenerator.mark(function _callee(nodeKey, selectedChoice) {
933
+ var response, result;
934
+ return asyncToGenerator.regenerator.wrap(function _callee$(_context) {
935
+ while (1) {
936
+ switch (_context.prev = _context.next) {
937
+ case 0:
938
+ _context.next = 2;
939
+ return fetch('/api/polls/vote', {
940
+ method: 'POST',
941
+ headers: { 'Content-Type': 'application/json' },
942
+ body: stringify._JSON$stringify({ articleId: props.article._id, nodeKey: nodeKey, selectedChoice: selectedChoice, body: articleBody })
943
+ });
944
+
945
+ case 2:
946
+ response = _context.sent;
947
+
948
+ if (!response.ok) {
949
+ _context.next = 11;
950
+ break;
951
+ }
952
+
953
+ _context.next = 6;
954
+ return response.json();
955
+
956
+ case 6:
957
+ result = _context.sent;
958
+
959
+ setArticleBody(result.body);
960
+
961
+ console.log('Voted successfully');
962
+ _context.next = 12;
963
+ break;
964
+
965
+ case 11:
966
+ console.log('Unable to vote!');
967
+
968
+ case 12:
969
+ case 'end':
970
+ return _context.stop();
971
+ }
972
+ }
973
+ }, _callee, this);
974
+ }));
975
+
976
+ return function onVote(_x, _x2) {
977
+ return _ref.apply(this, arguments);
978
+ };
979
+ }();
980
+
981
+ var article = props.article,
982
+ Ads = props.Ads,
983
+ showRelatedArticles = props.showRelatedArticles,
984
+ _props$hideFBShare = props.hideFBShare,
985
+ hideFBShare = _props$hideFBShare === undefined ? false : _props$hideFBShare,
986
+ _props$hidePinterestS = props.hidePinterestShare,
987
+ hidePinterestShare = _props$hidePinterestS === undefined ? false : _props$hidePinterestS,
988
+ onChangeArticle = props.onChangeArticle,
989
+ _props$showSocialShar = props.showSocialShare,
990
+ showSocialShare = _props$showSocialShar === undefined ? true : _props$showSocialShar;
991
+ var client = props.client,
992
+ pageview = props.pageview,
993
+ videoAccountIDs = props.videoAccountIDs,
994
+ drupalLeadSettings = props.drupalLeadSettings,
995
+ currentPage = props.currentPage,
996
+ _props$showAuthorDeta = props.showAuthorDetails,
997
+ showAuthorDetails = _props$showAuthorDeta === undefined ? false : _props$showAuthorDeta,
998
+ audioAutoplay = props.audioAutoplay,
999
+ _props$article = props.article,
1000
+ title = _props$article.title,
1001
+ _props$article$passwo = _props$article.passwordLock,
1002
+ passwordLock = _props$article$passwo === undefined ? false : _props$article$passwo,
1003
+ authorDetails = _props$article.authorDetails,
1004
+ pageNumber = _props$article.pageNumber,
1005
+ published = _props$article.published,
1006
+ _props$article$showPu = _props$article.showPublished,
1007
+ showPublished = _props$article$showPu === undefined ? true : _props$article$showPu,
1008
+ body = _props$article.body,
1009
+ thumbnail = _props$article.thumbnail,
1010
+ content_placement = _props$article.content_placement,
1011
+ _props$article$url = _props$article.url;
1012
+ _props$article$url = _props$article$url === undefined ? {
1013
+ current: ''
1014
+ } : _props$article$url;
1015
+ var url = _props$article$url.current,
1016
+ issue = _props$article.issue,
1017
+ source = _props$article.source,
1018
+ documentGroupMapping = _props$article.documentGroupMapping,
1019
+ issueGroup = _props$article.issueGroup,
1020
+ showIsi = _props$article.showIsi,
1021
+ isi = _props$article.isi,
1022
+ _props$article$displa = _props$article.display_summary,
1023
+ display_summary = _props$article$displa === undefined ? true : _props$article$displa,
1024
+ regionalPages = props.regionalPages,
1025
+ nationalPage = props.nationalPage,
1026
+ ISIContent = props.ISIContent,
1027
+ shareOptions = props.shareOptions,
1028
+ cpModificationRequired = props.cpModificationRequired,
1029
+ authorPrefix = props.authorPrefix,
1030
+ _props$lgContextAd = props.lgContextAd,
1031
+ lgContextAd = _props$lgContextAd === undefined ? false : _props$lgContextAd,
1032
+ queueData = props.queueData,
1033
+ _props$sponsoredFlag = props.sponsoredFlag,
1034
+ sponsoredFlag = _props$sponsoredFlag === undefined ? false : _props$sponsoredFlag,
1035
+ _props$authorImgHeigh = props.authorImgHeight,
1036
+ authorImgHeight = _props$authorImgHeigh === undefined ? 270 : _props$authorImgHeigh;
1037
+ props.active;
1038
+ var _props$refreshFlag = props.refreshFlag,
1039
+ refreshFlag = _props$refreshFlag === undefined ? false : _props$refreshFlag,
1040
+ disqusConfig = props.disqusConfig,
1041
+ showDisqus = props.showDisqus,
1042
+ _props$downloadCitati = props.downloadCitation,
1043
+ downloadCitation = _props$downloadCitati === undefined ? false : _props$downloadCitati,
1044
+ _props$useSegmentReco = props.useSegmentRecommendedArticles,
1045
+ useSegmentRecommendedArticles = _props$useSegmentReco === undefined ? false : _props$useSegmentReco,
1046
+ showIssueNameOnly = props.showIssueNameOnly,
1047
+ showPageNumber = props.showPageNumber,
1048
+ emailList = props.emailList,
1049
+ articleRecs = props.articleRecs;
1050
+ var sliderData = props.sliderData;
1051
+
1052
+ var disableEpisodeNumber = false;
1053
+ var articleRecsQuery = '*[_type == \'article\' && url.current in ';
1054
+
1055
+ if (article && article.documentGroup && article.documentGroup.disableEpisodeNumber === true) {
1056
+ disableEpisodeNumber = true;
1057
+ }
1058
+ var logicforDisplayingEpisodeNumber = !disableEpisodeNumber;
1059
+ var targeting = getTargeting.getTargeting(props);
1060
+ // remove slider data if toggled
1061
+ if (article && article.documentGroup && article.documentGroup.hideSeriesSlider === true) {
1062
+ sliderData = null;
1063
+ }
1064
+ // build query string for article recs, pass down as props
1065
+ if (articleRecs) {
1066
+ articleRecs.forEach(function (rec, ind) {
1067
+ ind === 0 ? articleRecsQuery = articleRecsQuery.concat('[\'' + rec + '\', ') : ind === articleRecs.length - 1 ? articleRecsQuery = articleRecsQuery.concat('\'' + rec + '\']]') : articleRecsQuery = articleRecsQuery.concat('\'' + rec + '\', ');
1068
+ });
1069
+ }
1070
+ // next video url
1071
+ if (sliderData) {
1072
+ var nextArticle = void 0;
1073
+ sliderData.forEach(function (data, index) {
1074
+ if (data.url.current === props.article.url.current) {
1075
+ nextArticle = index + 1;
1076
+ }
1077
+ });
1078
+
1079
+ if (nextArticle && sliderData[nextArticle]) {
1080
+ article.nextVideo = sliderData[nextArticle].url.current;
1081
+ }
1082
+ }
1083
+
1084
+ // if showSocialShare is not disabled for entire site, check article taxonomy, docgroup, authors for showSocialShare === false
1085
+ if (showSocialShare) {
1086
+ showSocialShare = getSocialShareDisableFlag(props.article);
1087
+ }
1088
+
1089
+ // If sponsored flag, disable contextual ads
1090
+ if (sponsoredFlag) {
1091
+ article.contextualVideoAD = false;
1092
+ article.contextualAD = false;
1093
+ showRelatedArticles = false;
1094
+ }
1095
+ if (article.disableRelatedContent) {
1096
+ showRelatedArticles = false;
1097
+ }
1098
+ // This was being done in ArticleQueue2 which wasnt effecting articles excluded from infinite scroll, moved inside article component
1099
+ if (!sponsoredFlag && Ads.getVideoContextualAD) {
1100
+ article.contextualVideoAD = Ads.getVideoContextualAD(getTargeting.getTargeting(props, 'in-context_video'));
1101
+ }
1102
+ if (!sponsoredFlag && Ads.getNativeContextualAD) {
1103
+ article.contextualAD = Ads.getNativeContextualAD(getTargeting.getTargeting(props, 'native-ad'));
1104
+ }
1105
+
1106
+ var _useState = React.useState(null),
1107
+ _useState2 = slicedToArray._slicedToArray(_useState, 2),
1108
+ contextualADFlag = _useState2[0],
1109
+ setContextualADFlag = _useState2[1];
1110
+ // Setting new Flag 'visibleFlag' to know when the article is visible so that new contextual ad can be appended into DOM.
1111
+
1112
+
1113
+ var _useState3 = React.useState(false),
1114
+ _useState4 = slicedToArray._slicedToArray(_useState3, 2),
1115
+ visibleFlag = _useState4[0],
1116
+ setVisibleFlag = _useState4[1];
1117
+
1118
+ var summary = getArticleSummary(props.article);
1119
+
1120
+ var _useState5 = React.useState(1),
1121
+ _useState6 = slicedToArray._slicedToArray(_useState5, 2),
1122
+ auth = _useState6[0],
1123
+ setAuth = _useState6[1];
1124
+
1125
+ var _useState7 = React.useState(''),
1126
+ _useState8 = slicedToArray._slicedToArray(_useState7, 2),
1127
+ passwordKey = _useState8[0],
1128
+ setPasswordKey = _useState8[1];
1129
+
1130
+ var _useState9 = React.useState(body),
1131
+ _useState10 = slicedToArray._slicedToArray(_useState9, 2),
1132
+ articleBody = _useState10[0],
1133
+ setArticleBody = _useState10[1];
1134
+
1135
+ var _useState11 = React.useState(0),
1136
+ _useState12 = slicedToArray._slicedToArray(_useState11, 2),
1137
+ containerHeight = _useState12[0],
1138
+ setContainerHeight = _useState12[1];
1139
+
1140
+ var _useState13 = React.useState(true),
1141
+ _useState14 = slicedToArray._slicedToArray(_useState13, 2);
1142
+ _useState14[0];
1143
+ var setPreviewAd = _useState14[1];
1144
+
1145
+ var _useState15 = React.useState(props.index === 0),
1146
+ _useState16 = slicedToArray._slicedToArray(_useState15, 2),
1147
+ isFirstArticle = _useState16[0],
1148
+ setIsFirstArticle = _useState16[1];
1149
+
1150
+ React.useEffect(function () {
1151
+ var path = window && window.location && window.location.search;
1152
+ // Setting flag for Ad-preview URLs
1153
+ setPreviewAd(path.split('&').some(function (param) {
1154
+ return param.includes('creativeId');
1155
+ }));
1156
+ setContainerHeight(window.innerHeight);
1157
+ }, []);
1158
+
1159
+ var isCutomPage = function isCutomPage(article) {
1160
+ var url = article.url.current;
1161
+
1162
+ if (regionalPages || nationalPage) {
1163
+ return regionalPages.includes(url) || nationalPage === url;
1164
+ } else {
1165
+ return false;
1166
+ }
1167
+ };
1168
+ var renderAuthorBiography = function renderAuthorBiography(biography) {
1169
+ if (biography) {
1170
+ return React__default["default"].createElement(BlockContent.BlockContent, _extends._extends({
1171
+ serializers: getSerializers.getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, contextualADFlag),
1172
+ blocks: [biography]
1173
+ }, client.config()));
1174
+ }
1175
+ };
1176
+
1177
+ var getAbstract = function getAbstract() {
1178
+ return article.abstract && article.abstract.map(function (block) {
1179
+ if (block.children) {
1180
+ return block.children.map(function (child) {
1181
+ if (child._type === 'span') return child.text;
1182
+ });
1183
+ }
1184
+ }).join(' ');
1185
+ };
1186
+
1187
+ var renderIsiContent = function renderIsiContent(article) {
1188
+ var url = article.url.current;
1189
+
1190
+ if (regionalPages && ISIContent && regionalPages.includes(url)) {
1191
+ return React__default["default"].createElement(ISIContent, null);
1192
+ } else if (nationalPage === url && ISIContent) {
1193
+ return React__default["default"].createElement(ISIContent, { national: true });
1194
+ }
1195
+ return null;
1196
+ };
1197
+ var generateRIS = function generateRIS() {
1198
+ var fileContent = 'TY - JOUR\n';
1199
+ if (issue) {
1200
+ if (article.title) {
1201
+ fileContent += 'TI - ' + article.title + '\n'; // Title - TI
1202
+ fileContent += 'T1 - ' + article.title + '\n'; // Title - T1
1203
+ }
1204
+ if (authorDetails && authorDetails.length) {
1205
+ authorDetails.map(function (authorDetail, index) {
1206
+ return fileContent += 'AU - ' + (authorDetail.firstName && authorDetail.lastName ? authorDetail.lastName + ', ' + authorDetail.firstName : '' + authorDetail.displayName) + '\n';
1207
+ } // Author
1208
+ );
1209
+ }
1210
+ if (issue.publication && issue.publication.name) {
1211
+ fileContent += 'T2 - ' + issue.publication.name + '\n'; // Secondary Title - T2
1212
+ fileContent += 'JF - ' + issue.publication.name + '\n'; // Journal Name - JF
1213
+ }
1214
+ if (issue.name) {
1215
+ fileContent += 'T3 - ' + issue.name + '\n'; // Issue Name - T3
1216
+ }
1217
+ if (issue.abbreviatedJournal) {
1218
+ fileContent += 'JO - ' + issue.abbreviatedJournal + '\n'; // Journal Name - JO
1219
+ }
1220
+ if (article.abstract) fileContent += 'AB - ' + getAbstract() + '\n'; // Abstract - AB
1221
+ if (article.abstract) fileContent += 'N2 - ' + getAbstract() + '\n'; // Abstract - N2
1222
+ if (issue.issueNumber) fileContent += 'IS - ' + issue.issueNumber + '\n'; // Issue Number - IS
1223
+ fileContent += 'PB - MJH Life Sciences\n'; // Publisher - PB
1224
+ if (issue.year) fileContent += 'PY - ' + issue.year + '\n'; // Published Year - PY
1225
+ if (issue.volume) fileContent += 'VL - ' + issue.volume + '\n'; // Volume - VL
1226
+ if (issue.url) fileContent += 'L1 - ' + issue.url + '\n'; // Link to PDF - L1
1227
+ if (shareOptions && shareOptions.shareBaseUrl) {
1228
+ fileContent += 'L2 - ' + (shareOptions.shareBaseUrl + url) + '\n'; // Link to Full-text - L2
1229
+ fileContent += 'UR - ' + (shareOptions.shareBaseUrl + url) + '\n'; // Doc URL - UR
1230
+ }
1231
+ if (props.Website) fileContent += 'LK - https://' + props.Website.liveDomain + '\n'; // Website Link - LK
1232
+ if (issue.isbn_issn) {
1233
+ fileContent += 'SN - ' + issue.isbn_issn + '\n'; // ISSN/ISBN - TI
1234
+ }
1235
+ if (pageNumber) {
1236
+ if (pageNumber.includes('-')) {
1237
+ fileContent += 'SP - ' + pageNumber.split('-')[0] + '\n'; // Start Page - SP
1238
+ fileContent += 'EP - ' + pageNumber.split('-')[1] + '\n'; // End Page - EP
1239
+ } else {
1240
+ fileContent += 'SP - ' + pageNumber + '\n';
1241
+ }
1242
+ }
1243
+ if (article.published) fileContent += 'Y1 - ' + moment.moment(published).format('DD-MMMM-YYYY') + '\n'; // Primary Date - Y1
1244
+ fileContent += 'Y2 - ' + moment.moment().format('DD-MMMM-YYYY') + '\n'; // Access Date - Y2
1245
+ }
1246
+ fileContent += 'ER -\n'; // End of Record
1247
+ return fileContent;
1248
+ };
1249
+ var getAuthorList = function getAuthorList() {
1250
+ var authorList = '';
1251
+ if (authorDetails && authorDetails.length > 0) {
1252
+ authorDetails.map(function (author) {
1253
+ if (author.lastName && author.firstName) authorList += author.lastName + ',' + author.firstName + ';';else if (author.displayName) authorList += author.displayName + ';';
1254
+ });
1255
+ }
1256
+ return authorList;
1257
+ };
1258
+ var downloadRIS = function downloadRIS() {
1259
+ var fileContent = generateRIS();
1260
+ var file = new File([fileContent], 'citation-' + url + '.ris', { type: 'application/x-research-info-systems;charset=utf-8' });
1261
+ FileSaver_min.saveAs(file, 'citation-' + url + '.ris');
1262
+ };
1263
+
1264
+ var RelevantTopics = function RelevantTopics() {
1265
+ if (content_placement && content_placement.length > 0 || documentGroupMapping && documentGroupMapping.length > 0) {
1266
+ var relatedLinks = [];
1267
+ if (documentGroupMapping && documentGroupMapping.length > 0) {
1268
+ documentGroupMapping.forEach(function (documentGroup) {
1269
+ if (documentGroup.isShow === false || documentGroup.excludeRelatedContents) {
1270
+ return null;
1271
+ }
1272
+ if (documentGroup.parent) {
1273
+ relatedLinks = [].concat(toConsumableArray._toConsumableArray(relatedLinks), [{
1274
+ label: documentGroup.name,
1275
+ href: cpModificationRequired ? getDocumentGroupUrl(documentGroup) : documentGroup.parent.identifier && documentGroup.parent.identifier.current && !documentGroup.path.includes('/') ? '/' + documentGroup.parent.identifier.current + '/' + documentGroup.path : '/' + documentGroup.path
1276
+ }]);
1277
+ }
1278
+ });
1279
+ }
1280
+ if (content_placement && content_placement.length > 0) {
1281
+ content_placement.filter(function (item) {
1282
+ return item.path !== 'news';
1283
+ }).forEach(function (cp) {
1284
+ if (cp.excludeRelatedContents) {
1285
+ return null;
1286
+ }
1287
+ var cp_url = cpModificationRequired ? getTargeting.getContentPlacementUrl(cp) : cp.path;
1288
+ var href = '/' + cp_url;
1289
+ relatedLinks = [].concat(toConsumableArray._toConsumableArray(relatedLinks), [{ label: cp.name, href: href }]);
1290
+ });
1291
+ }
1292
+ if (issueGroup && issueGroup.name && issueGroup.identifier && issueGroup.identifier.current && issueGroup.parent && issueGroup.parent.identifier && issueGroup.parent.identifier.current) {
1293
+ var _props$Settings$issue = props.Settings.issueMapping,
1294
+ issueMapping = _props$Settings$issue === undefined ? '/publications' : _props$Settings$issue;
1295
+
1296
+ relatedLinks = [].concat(toConsumableArray._toConsumableArray(relatedLinks), [{ label: issueGroup.name, href: issueMapping + '/' + issueGroup.parent.identifier.current + '/' + issueGroup.identifier.current }]);
1297
+ }
1298
+ if (relatedLinks && relatedLinks.length > 0) {
1299
+ return React__default["default"].createElement(
1300
+ 'div',
1301
+ null,
1302
+ relatedLinks.map(function (relatedLink, index) {
1303
+ if (relatedLink && relatedLink.href && relatedLink.label) {
1304
+ return React__default["default"].createElement(
1305
+ 'span',
1306
+ { key: index, className: 'related-link' },
1307
+ React__default["default"].createElement(
1308
+ 'a',
1309
+ { className: 'related-links', style: { color: 'blue' }, href: relatedLink.href },
1310
+ relatedLink.label
1311
+ ),
1312
+ React__default["default"].createElement(
1313
+ 'style',
1314
+ { jsx: 'true' },
1315
+ '\n .related-link:not(:first-child):before {\n content: \' | \';\n }\n '
1316
+ )
1317
+ );
1318
+ }
1319
+ })
1320
+ );
1321
+ }
1322
+ return null;
1323
+ }
1324
+ return null;
1325
+ };
1326
+
1327
+ var RelatedContent = React__default["default"].memo(function () {
1328
+ return React__default["default"].createElement(
1329
+ 'div',
1330
+ null,
1331
+ useSegmentRecommendedArticles ? React__default["default"].createElement(Recommended, {
1332
+ client: client,
1333
+ article: article,
1334
+ index: props.index,
1335
+ Settings: props.Settings,
1336
+ showRelatedArticleFallbackImage: props.showRelatedArticleFallbackImage,
1337
+ cpModificationRequired: cpModificationRequired,
1338
+ emailList: emailList,
1339
+ articleRecsQuery: articleRecsQuery
1340
+ }) : React__default["default"].createElement(
1341
+ 'section',
1342
+ { id: 'related-content-section', className: 'my-1' },
1343
+ (article.relatedArticle || RelevantTopics()) && React__default["default"].createElement(
1344
+ 'p',
1345
+ { className: 'mb-0' },
1346
+ React__default["default"].createElement(
1347
+ 'b',
1348
+ null,
1349
+ 'Related Content:'
1350
+ )
1351
+ ),
1352
+ React__default["default"].createElement(RelevantTopics, null),
1353
+ React__default["default"].createElement(
1354
+ 'div',
1355
+ { className: 'pt-2' },
1356
+ React__default["default"].createElement(RelatedArticle, {
1357
+ articles: article.relatedArticle,
1358
+ client: client,
1359
+ fallbackImage: props.Settings.logo,
1360
+ showRelatedArticleFallbackImage: props.showRelatedArticleFallbackImage
1361
+ })
1362
+ )
1363
+ )
1364
+ );
1365
+ });
1366
+
1367
+ var form = function form() {
1368
+ return React__default["default"].createElement(
1369
+ React__default["default"].Fragment,
1370
+ null,
1371
+ React__default["default"].createElement(
1372
+ Head__default["default"],
1373
+ null,
1374
+ React__default["default"].createElement('meta', { name: 'googlebot', content: 'noindex' })
1375
+ ),
1376
+ React__default["default"].createElement(
1377
+ 'div',
1378
+ { className: 'mt-5', style: { display: 'flex', justifyContent: 'center', alignItems: 'center' } },
1379
+ React__default["default"].createElement(
1380
+ Form__default["default"],
1381
+ {
1382
+ inline: true,
1383
+ onSubmit: function onSubmit(e) {
1384
+ e.preventDefault();
1385
+ } },
1386
+ React__default["default"].createElement(FormControl__default["default"], { type: 'text', className: 'mr-sm-2', value: passwordKey, onChange: function onChange(e) {
1387
+ return setPasswordKey(e.target.value);
1388
+ }, placeholder: 'Password' }),
1389
+ React__default["default"].createElement(
1390
+ Button__default["default"],
1391
+ {
1392
+ variant: 'primary',
1393
+ onClick: function onClick() {
1394
+ if (passwordKey === props.article.password) {
1395
+ setAuth(2);
1396
+ } else {
1397
+ alert('Incorrect Password');
1398
+ }
1399
+ } },
1400
+ 'Submit'
1401
+ )
1402
+ )
1403
+ )
1404
+ );
1405
+ };
1406
+
1407
+ var renderBlockContent = function renderBlockContent(payload, meta, authorImgHeight) {
1408
+ var _payload = payload,
1409
+ body = _payload.body;
1410
+
1411
+ var indexes = findIndex(body);
1412
+ var seriesInfo = checkIfMediaSeriesHasVideo(article);
1413
+ var isMediaSeries = false;
1414
+ if (article.documentGroup && article.documentGroup.isSeries) {
1415
+ isMediaSeries = true;
1416
+ } else if (!article.documentGroup && article.documentGroupMapping && checkDocGroupMappingForSeries(article.documentGroupMapping)) {
1417
+ isMediaSeries = true;
1418
+ }
1419
+
1420
+ if (indexes.length >= 2 && body.length > 3 && payload.contextualAD && payload.contextualVideoAD) {
1421
+ payload = _extends._extends({}, payload, {
1422
+ contextualAD: _extends._extends({}, payload.contextualAD, {
1423
+ slotId: (payload.contextualAD.slotId || 'contextual_ad') + '-' + payload._id
1424
+ }),
1425
+ contextualVideoAD: _extends._extends({}, payload.contextualVideoAD, {
1426
+ slotId: (payload.contextualVideoAD.slotId || 'in-context_video') + '-' + payload._id
1427
+ })
1428
+ });
1429
+ var selectedIndex = !(indexes.length % 2) ? indexes.length / 2 + 1 : Math.round(indexes.length / 2);
1430
+ if (seriesInfo.hasVideo) {
1431
+ selectedIndex = seriesInfo.videoIndex;
1432
+ }
1433
+
1434
+ var checkIsVideoAdFound = function checkIsVideoAdFound(isFound) {
1435
+ if (!isFound) {
1436
+ var parent = document.getElementById('contextual-video-ad-' + payload._id);
1437
+ parent.style.height = '0%';
1438
+ parent.style.width = '0%';
1439
+ parent.style.display = 'none';
1440
+ setContextualADFlag(false);
1441
+ } else {
1442
+ setContextualADFlag(true);
1443
+ }
1444
+ };
1445
+ return React__default["default"].createElement(
1446
+ React__default["default"].Fragment,
1447
+ null,
1448
+ React__default["default"].createElement(BlockContent.BlockContent, _extends._extends({
1449
+ serializers: getSerializers.getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, isMediaSeries, contextualADFlag, null, article.Ads, targeting, article, meta, authorPrefix, authorImgHeight, audioAutoplay),
1450
+ blocks: [].concat(toConsumableArray._toConsumableArray(articleBody.slice(0, selectedIndex))),
1451
+ imageOptions: { w: 320, h: 240, fit: 'max' }
1452
+ }, client.config())),
1453
+ React__default["default"].createElement('span', { className: 'clearfix' }),
1454
+ isMediaSeries && sliderData && seriesInfo.hasVideo && React__default["default"].createElement(SeriesSlider.SeriesSlider, { dataset: sliderData, client: client, nowPlaying: article.title, displayEpisodeNumber: logicforDisplayingEpisodeNumber }),
1455
+ React__default["default"].createElement(
1456
+ 'div',
1457
+ { id: 'contextual-native-ad-' + payload._id, className: 'contextual-native-ad' },
1458
+ React__default["default"].createElement(AdSlot, _extends._extends({}, payload.contextualAD, { refreshFlag: refreshFlag }))
1459
+ ),
1460
+ React__default["default"].createElement(
1461
+ 'style',
1462
+ { jsx: 'true' },
1463
+ '\n .contextual-native-ad {\n margin-bottom: 1rem;\n }\n '
1464
+ ),
1465
+ React__default["default"].createElement('span', { className: 'clearfix' }),
1466
+ React__default["default"].createElement(
1467
+ 'div',
1468
+ { id: 'contextual-video-ad-' + payload._id, className: 'contextual-video-ad' },
1469
+ React__default["default"].createElement(AdSlot, _extends._extends({}, payload.contextualVideoAD, { refreshFlag: refreshFlag, checkIsAdFound: checkIsVideoAdFound }))
1470
+ ),
1471
+ React__default["default"].createElement(BlockContent.BlockContent, _extends._extends({
1472
+ serializers: getSerializers.getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, isMediaSeries, null, null, article.Ads, targeting, article, meta, authorPrefix, authorImgHeight, audioAutoplay),
1473
+ blocks: [].concat(toConsumableArray._toConsumableArray(articleBody.slice(selectedIndex))),
1474
+ imageOptions: { w: 320, h: 240, fit: 'max' }
1475
+ }, client.config()))
1476
+ );
1477
+ } else if (indexes.length >= 2 && body.length >= 3 && payload.contextualAD && !payload.contextualVideoAD) {
1478
+ payload = _extends._extends({}, payload, {
1479
+ contextualAD: _extends._extends({}, payload.contextualAD, {
1480
+ slotId: (payload.contextualAD.slotId || 'contextual_ad') + '-' + payload._id,
1481
+ className: 'ADFluid',
1482
+ // Fetching new contextual targeting based on the current active article.
1483
+ targeting: getTargeting.getTargeting(props, 'native-ad'),
1484
+ // Adding new ad size for large contextual ad for desktop screen width >= 1400
1485
+ sizes: lgContextAd ? [[728, 90], 'fluid', [300, 100]] : ['fluid', [300, 100]],
1486
+ sizeMapping: lgContextAd ? [{
1487
+ viewport: [1400, 0],
1488
+ sizes: [[728, 90], 'fluid', [300, 100]]
1489
+ }, { viewport: [0, 0], sizes: ['fluid', [300, 100]] }] : [{ viewport: [0, 0], sizes: ['fluid', [300, 100]] }]
1490
+ })
1491
+ });
1492
+ var _selectedIndex = !(indexes.length % 2) ? indexes.length / 2 + 1 : Math.round(indexes.length / 2);
1493
+ if (seriesInfo.hasVideo) {
1494
+ _selectedIndex = seriesInfo.videoIndex;
1495
+ }
1496
+ return React__default["default"].createElement(
1497
+ React__default["default"].Fragment,
1498
+ null,
1499
+ React__default["default"].createElement(BlockContent.BlockContent, _extends._extends({
1500
+ serializers: getSerializers.getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, isMediaSeries, contextualADFlag, null, article.Ads, targeting, article, meta, authorPrefix, authorImgHeight, audioAutoplay),
1501
+ blocks: [].concat(toConsumableArray._toConsumableArray(articleBody.slice(0, _selectedIndex))),
1502
+ imageOptions: { w: 320, h: 240, fit: 'max' }
1503
+ }, client.config())),
1504
+ contextualADFlag && React__default["default"].createElement('span', { className: 'clearfix' }),
1505
+ isMediaSeries && sliderData && seriesInfo.hasVideo && React__default["default"].createElement(SeriesSlider.SeriesSlider, { dataset: sliderData, client: client, nowPlaying: article.title, displayEpisodeNumber: logicforDisplayingEpisodeNumber }),
1506
+ (visibleFlag || queueData && queueData.length === 1 || !props.infiniteScroll) && React__default["default"].createElement(
1507
+ React__default["default"].Fragment,
1508
+ null,
1509
+ React__default["default"].createElement(
1510
+ 'div',
1511
+ { id: 'contextual-native-ad-' + payload._id, className: 'contextual-native-ad' },
1512
+ React__default["default"].createElement(AdSlot, _extends._extends({}, payload.contextualAD, { refreshFlag: refreshFlag }))
1513
+ ),
1514
+ React__default["default"].createElement(
1515
+ 'style',
1516
+ { jsx: 'true' },
1517
+ '\n .contextual-native-ad {\n margin-bottom: 1rem;\n }\n '
1518
+ )
1519
+ ),
1520
+ contextualADFlag && React__default["default"].createElement('span', { className: 'clearfix' }),
1521
+ React__default["default"].createElement(BlockContent.BlockContent, _extends._extends({
1522
+ serializers: getSerializers.getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, isMediaSeries, null, null, article.Ads, targeting, article, meta, authorPrefix, authorImgHeight, audioAutoplay),
1523
+ blocks: [].concat(toConsumableArray._toConsumableArray(articleBody.slice(_selectedIndex))),
1524
+ imageOptions: { w: 320, h: 240, fit: 'max' }
1525
+ }, client.config()))
1526
+ );
1527
+ } else if (indexes.length >= 2 && body.length > 3 && payload.contextualVideoAD && !payload.contextualAD) {
1528
+ payload = _extends._extends({}, payload, {
1529
+ contextualVideoAD: _extends._extends({}, payload.contextualVideoAD, {
1530
+ slotId: (payload.contextualVideoAD.slotId || 'in-context_video') + '-' + payload._id
1531
+ })
1532
+ });
1533
+ var _selectedIndex2 = !(indexes.length % 2) ? indexes.length / 2 + 1 : Math.round(indexes.length / 2);
1534
+ if (seriesInfo.hasVideo) {
1535
+ _selectedIndex2 = seriesInfo.videoIndex;
1536
+ }
1537
+ var checkIsAdFound = function checkIsAdFound(isFound) {
1538
+ if (!isFound) {
1539
+ var parent = document.getElementById('contextual-video-ad-' + payload._id);
1540
+ parent.style.height = '0%';
1541
+ parent.style.width = '0%';
1542
+ parent.style.display = 'none';
1543
+ setContextualADFlag(false);
1544
+ } else {
1545
+ if (body && body[1] && body[1]._type === 'figure') {
1546
+ setContextualADFlag(true);
1547
+ }
1548
+ }
1549
+ };
1550
+
1551
+ return React__default["default"].createElement(
1552
+ React__default["default"].Fragment,
1553
+ null,
1554
+ React__default["default"].createElement(BlockContent.BlockContent, _extends._extends({
1555
+ serializers: getSerializers.getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, isMediaSeries, contextualADFlag, null, article.Ads, targeting, article, meta, authorPrefix, authorImgHeight, audioAutoplay),
1556
+ blocks: [].concat(toConsumableArray._toConsumableArray(articleBody.slice(0, _selectedIndex2))),
1557
+ imageOptions: { w: 320, h: 240, fit: 'max' }
1558
+ }, client.config())),
1559
+ React__default["default"].createElement('span', { className: 'clearfix' }),
1560
+ isMediaSeries && sliderData && seriesInfo.hasVideo && React__default["default"].createElement(SeriesSlider.SeriesSlider, { dataset: sliderData, client: client, nowPlaying: article.title, displayEpisodeNumber: logicforDisplayingEpisodeNumber }),
1561
+ React__default["default"].createElement(
1562
+ 'div',
1563
+ { id: 'contextual-video-ad-' + payload._id, className: 'contextual-video-ad' },
1564
+ React__default["default"].createElement(AdSlot, _extends._extends({}, payload.contextualVideoAD, { refreshFlag: refreshFlag, checkIsAdFound: checkIsAdFound }))
1565
+ ),
1566
+ React__default["default"].createElement(BlockContent.BlockContent, _extends._extends({
1567
+ serializers: getSerializers.getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, isMediaSeries, null, null, article.Ads, targeting, article, meta, authorPrefix, authorImgHeight, audioAutoplay),
1568
+ blocks: [].concat(toConsumableArray._toConsumableArray(articleBody.slice(_selectedIndex2))),
1569
+ imageOptions: { w: 320, h: 240, fit: 'max' }
1570
+ }, client.config()))
1571
+ );
1572
+ } else {
1573
+ var _selectedIndex3 = !(indexes.length % 2) ? indexes.length / 2 + 1 : Math.round(indexes.length / 2);
1574
+ if (seriesInfo.hasVideo) {
1575
+ _selectedIndex3 = seriesInfo.videoIndex;
1576
+ }
1577
+
1578
+ return React__default["default"].createElement(
1579
+ 'div',
1580
+ null,
1581
+ React__default["default"].createElement(BlockContent.BlockContent, _extends._extends({
1582
+ serializers: getSerializers.getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, isMediaSeries, false, null, article.Ads, targeting, article, meta, authorPrefix, authorImgHeight, audioAutoplay),
1583
+ blocks: article.documentGroup && article.documentGroup.isSeries ? [].concat(toConsumableArray._toConsumableArray(articleBody.slice(0, _selectedIndex3))) : articleBody,
1584
+ imageOptions: { w: 320, h: 240, fit: 'max' }
1585
+ }, client.config())),
1586
+ isMediaSeries && sliderData && seriesInfo.hasVideo && React__default["default"].createElement(SeriesSlider.SeriesSlider, { dataset: sliderData, client: client, nowPlaying: article.title, displayEpisodeNumber: logicforDisplayingEpisodeNumber }),
1587
+ article.documentGroup && article.documentGroup.isSeries && React__default["default"].createElement(BlockContent.BlockContent, _extends._extends({
1588
+ serializers: getSerializers.getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, isMediaSeries, null, null, article.Ads, targeting, article, meta, authorPrefix, authorImgHeight, audioAutoplay),
1589
+ blocks: [].concat(toConsumableArray._toConsumableArray(articleBody.slice(_selectedIndex3))),
1590
+ imageOptions: { w: 320, h: 240, fit: 'max' }
1591
+ }, client.config()))
1592
+ );
1593
+ }
1594
+ };
1595
+
1596
+ var checkIfVideoSeries = function checkIfVideoSeries(article) {
1597
+ if (!article || !article.body) {
1598
+ return false;
1599
+ }
1600
+
1601
+ for (var i = 0; i < article.body.length; i++) {
1602
+ var block = article.body[i];
1603
+ if (block._type === 'youtubeGallery') {
1604
+ return true;
1605
+ }
1606
+ }
1607
+
1608
+ return false;
1609
+ };
1610
+ var checkIfFormAssembly = function checkIfFormAssembly(article) {
1611
+ if (!article || !article.body) {
1612
+ return false;
1613
+ }
1614
+
1615
+ for (var i = 0; i < article.body.length; i++) {
1616
+ var block = article.body[i];
1617
+ if (block._type === 'formassembly') {
1618
+ return true;
1619
+ }
1620
+ }
1621
+ return false;
1622
+ };
1623
+ var checkIfMediaSeriesHasVideo = function checkIfMediaSeriesHasVideo(article) {
1624
+ var seriesInfo = { hasVideo: false, videoIndex: 0 };
1625
+ if (!article || !article.body) {
1626
+ return false;
1627
+ }
1628
+
1629
+ for (var i = 0; i < article.body.length; i++) {
1630
+ var block = article.body[i];
1631
+ if (block._type == 'video' || block._type == 'youtube' || block._type == 'audio') {
1632
+ seriesInfo.hasVideo = true;
1633
+ seriesInfo.videoIndex = i + 1;
1634
+ }
1635
+ }
1636
+
1637
+ return seriesInfo;
1638
+ };
1639
+
1640
+ var detail = function detail() {
1641
+ var shareVia = shareOptions.shareVia,
1642
+ shareSubject = shareOptions.shareSubject,
1643
+ twitterSiteName = shareOptions.twitterSiteName,
1644
+ shareImageDefault = shareOptions.shareImageDefault,
1645
+ shareBaseUrl = shareOptions.shareBaseUrl;
1646
+ shareOptions.shareSiteTitle;
1647
+
1648
+ var shareUrl = shareBaseUrl + props.article.url.current;
1649
+ var shareTitle = article.title;
1650
+ var shareSummary = article.summary;
1651
+ var shareImage = thumbnail && thumbnail.asset ? urlFor({ client: props.client, source: thumbnail.asset }) : shareImageDefault;
1652
+ var siteName = props.Website && props.Website.title ? props.Website.title : '';
1653
+ var shareKeywords = getKeywords(props.article).join(',');
1654
+
1655
+ var meta = {
1656
+ shareTitle: shareTitle,
1657
+ shareSiteName: props.cache.siteSettingCache.name,
1658
+ shareSummary: shareSummary,
1659
+ shareUrl: shareUrl,
1660
+ shareImage: shareImage,
1661
+ shareVia: props.Settings.title,
1662
+ shareKeywords: shareKeywords
1663
+ };
1664
+ if (!props.infiniteScroll) {
1665
+ onChangeArticle = function onChangeArticle() {
1666
+ return null;
1667
+ };
1668
+ }
1669
+ var fetchCurrentEpisode = function fetchCurrentEpisode(sliderData, article) {
1670
+ if (!sliderData) return null;
1671
+ var episode = null;
1672
+ sliderData.forEach(function (seriesArticle, index) {
1673
+ if (seriesArticle.title === article.title) {
1674
+ episode = index + 1;
1675
+ }
1676
+ });
1677
+ return episode;
1678
+ };
1679
+ // pixels from bottom of window to change trigger visibility change
1680
+ var triggerOffset = 20;
1681
+ var isVideoSeries = checkIfVideoSeries(article);
1682
+ var episodeNumber = fetchCurrentEpisode(sliderData, props.article);
1683
+ var isMediaSeries = false;
1684
+ var mediaSeriesName = '';
1685
+ var seriesInfo = checkIfMediaSeriesHasVideo(article);
1686
+ var isFormAssembly = checkIfFormAssembly(article);
1687
+
1688
+ if (article.documentGroup && article.documentGroup.isSeries) {
1689
+ isMediaSeries = true;
1690
+ mediaSeriesName = article.documentGroup.name;
1691
+ }
1692
+ if (!article.documentGroup && article.documentGroupMapping && checkDocGroupMappingForSeries(article.documentGroupMapping)) {
1693
+ isMediaSeries = true;
1694
+ mediaSeriesName = checkDocGroupMappingForSeries(article.documentGroupMapping).name;
1695
+ }
1696
+
1697
+ return React__default["default"].createElement(
1698
+ React__default["default"].Fragment,
1699
+ null,
1700
+ React__default["default"].createElement(
1701
+ visibilitySensor.VisibilitySensor,
1702
+ {
1703
+ partialVisibility: true,
1704
+ offset: { bottom: triggerOffset, top: containerHeight && containerHeight },
1705
+ onChange: function onChange(isVisible) {
1706
+ if (isVisible && !isFirstArticle) {
1707
+ var pageviewProperties = _extends._extends({}, targeting, {
1708
+ category: article && article.category ? article.category.name : ''
1709
+ });
1710
+ onChangeArticle(url, meta, pageviewProperties);
1711
+ setVisibleFlag(function () {
1712
+ return true;
1713
+ });
1714
+ }
1715
+ if (isFirstArticle) {
1716
+ setIsFirstArticle(false);
1717
+ }
1718
+ } },
1719
+ React__default["default"].createElement(
1720
+ 'div',
1721
+ { id: 'article__block', style: { position: 'relative' }, ref: ref },
1722
+ React__default["default"].createElement(PixelTracking.PixelTrackingArticle, { article: article, infiniteScroll: props.infiniteScroll }),
1723
+ React__default["default"].createElement(
1724
+ 'div',
1725
+ { className: 'video-detail', style: { marginBottom: isCutomPage(props.article) || showIsi && Array.isArray(isi) && isi.length > 0 ? '15rem' : 0 } },
1726
+ issue && React__default["default"].createElement(
1727
+ Head__default["default"],
1728
+ null,
1729
+ article.title && React__default["default"].createElement('meta', { name: 'citation_title', content: article.title }),
1730
+ published && React__default["default"].createElement('meta', { name: 'citation_date', content: moment.moment(published).format('LL') }),
1731
+ issue.year && React__default["default"].createElement('meta', { name: 'citation_year', content: issue.year }),
1732
+ issue.isbn_issn && React__default["default"].createElement('meta', { name: 'citation_isbn', content: issue.isbn_issn }),
1733
+ article.abstract && React__default["default"].createElement('meta', { name: 'citation_abstract', content: getAbstract() }),
1734
+ React__default["default"].createElement('meta', { name: 'citation_author', content: getAuthorList() }),
1735
+ issue.pdf && React__default["default"].createElement('meta', { name: 'citation_pdf_url', content: urlForFile.urlForFile({ asset: issue.pdf }) })
1736
+ ),
1737
+ isVideoSeries && renderBlockContent(article, meta, authorImgHeight),
1738
+ !isVideoSeries && React__default["default"].createElement(
1739
+ 'div',
1740
+ null,
1741
+ isMediaSeries && React__default["default"].createElement(
1742
+ 'p',
1743
+ { style: { fontSize: '14px' } },
1744
+ disableEpisodeNumber ? '' + mediaSeriesName : mediaSeriesName + ' - Episode ' + episodeNumber
1745
+ ),
1746
+ React__default["default"].createElement(
1747
+ 'h1',
1748
+ { className: 'page-title', style: { fontSize: '1.9rem' } },
1749
+ title
1750
+ )
1751
+ ),
1752
+ React__default["default"].createElement(
1753
+ 'div',
1754
+ { className: 'mb-3 doc-group-container',
1755
+ style: {
1756
+ display: 'flex',
1757
+ justifyContent: 'space-between',
1758
+ alignItems: article.documentGroupMapping && article.documentGroupMapping[0] && article.documentGroupMapping[0].parent && article.documentGroupMapping[0].parent.parent && article.documentGroupMapping[0].parent.parent.contextText || article.documentGroup && article.documentGroup.parent && article.documentGroup.parent.parent && article.documentGroup.parent.parent.contextText ? 'flex-start' : 'flex-end',
1759
+ margin: '0, 0, 1rem, 0'
1760
+ // margin: article.documentGroup && article.documentGroup.thumbnail && article.documentGroup.thumbnail.caption ? '1rem 0 1rem 0' : '0 0 1rem 0'
1761
+ } },
1762
+ React__default["default"].createElement(
1763
+ 'style',
1764
+ { jsx: 'true' },
1765
+ '\n .social-ris-container {\n display: flex;\n justify-content: space-between;\n }\n @media screen and (max-width: 468px) {\n .video-detail .doc-group-container {\n flex-direction: column;\n align-items: flex-start !important;\n }\n .video-detail .doc-group {\n margin-top: 2rem;\n width: calc(100vw - 45px);\n align-items: center;\n }\n .video-detail .doc-group img,\n .doc-group p {\n max-width: calc(100vw - 45px) !important;\n }\n .social-ris-container {\n flex-direction: column;\n }\n }\n .author-details-img {\n margin-right: 10px;\n max-height: 250px;\n min-height: 150px;\n max-width: 250px;\n min-width: 150px;\n width: 100%;\n height: 100%;\n object-fit: contain;\n }\n .author-details-img-container {\n text-align: center;\n }\n .author-details-col {\n padding-left: 25px;\n }\n .left-wrap {\n width: 100%;\n }\n '
1766
+ ),
1767
+ React__default["default"].createElement(
1768
+ 'div',
1769
+ { className: 'left-wrap' },
1770
+ !isVideoSeries && !isFormAssembly && showPublished && React__default["default"].createElement(
1771
+ 'div',
1772
+ null,
1773
+ React__default["default"].createElement(
1774
+ 'time',
1775
+ {
1776
+ className: 'meta-date',
1777
+ dateTime: moment.moment(published).utc().format(moment.moment.HTML5_FMT.DATETIME_LOCAL_MS) },
1778
+ moment.moment(published).format('LL')
1779
+ )
1780
+ )
1781
+ /* Show Published date */
1782
+ ,
1783
+ React__default["default"].createElement(
1784
+ 'div',
1785
+ { className: 'mb-3' },
1786
+ !isVideoSeries && authorDetails && authorDetails.map(function (authorDetail, index) {
1787
+ return React__default["default"].createElement(
1788
+ 'span',
1789
+ { key: index },
1790
+ getSerializers.renderAuthor(authorDetail.displayName, authorDetail.url, index, authorDetails.length, authorPrefix, authorDetail.biography && renderAuthorBiography(authorDetail.biography[0]), authorDetail.profileImage && urlFor({ client: props.client, source: authorDetail.profileImage, imageHeight: authorImgHeight }), showAuthorDetails)
1791
+ );
1792
+ }),
1793
+ React__default["default"].createElement(
1794
+ 'div',
1795
+ null,
1796
+ source && React__default["default"].createElement(
1797
+ 'p',
1798
+ {
1799
+ style: {
1800
+ display: 'inline-block',
1801
+ padding: '0 .25rem',
1802
+ color: 'var(--franchise-primary, #484848)',
1803
+ borderRadius: '2px',
1804
+ fontWeight: 'bold',
1805
+ border: '2px solid var(--franchise-primary, #484848)'
1806
+ },
1807
+ className: 'source-label' },
1808
+ source
1809
+ )
1810
+ ),
1811
+ issue && React__default["default"].createElement(
1812
+ 'div',
1813
+ { className: 'volume-issue' },
1814
+ issue.publication && issue.publication.name && React__default["default"].createElement(
1815
+ 'span',
1816
+ { className: 'mb-0-pub' },
1817
+ React__default["default"].createElement(
1818
+ 'b',
1819
+ null,
1820
+ issue.publication.name
1821
+ ),
1822
+ ',',
1823
+ ' '
1824
+ ),
1825
+ issue.name && showIssueNameOnly === undefined ? React__default["default"].createElement(
1826
+ 'span',
1827
+ { className: 'mb-0' },
1828
+ issue.name,
1829
+ ', '
1830
+ ) : issue.name && showIssueNameOnly === false ? React__default["default"].createElement(
1831
+ 'span',
1832
+ { className: 'mb-0' },
1833
+ issue.name,
1834
+ ', '
1835
+ ) : null,
1836
+ issue.volume && React__default["default"].createElement(
1837
+ 'span',
1838
+ null,
1839
+ 'Volume ' + issue.volume,
1840
+ ', '
1841
+ ),
1842
+ issue.issueNumber && React__default["default"].createElement(
1843
+ 'span',
1844
+ null,
1845
+ ' Issue ' + issue.issueNumber
1846
+ )
1847
+ ),
1848
+ pageNumber && showPageNumber ? React__default["default"].createElement(
1849
+ 'div',
1850
+ { className: 'article-pageNumber' },
1851
+ 'Pages: ' + pageNumber
1852
+ ) : pageNumber && showPageNumber === undefined ? React__default["default"].createElement(
1853
+ 'div',
1854
+ { className: 'article-pageNumber' },
1855
+ 'Pages: ' + pageNumber
1856
+ ) : null
1857
+ ),
1858
+ React__default["default"].createElement(
1859
+ 'div',
1860
+ { className: 'social-ris-container' },
1861
+ !isVideoSeries && showSocialShare && React__default["default"].createElement(
1862
+ 'p',
1863
+ null,
1864
+ React__default["default"].createElement(SocialShare, {
1865
+ shareUrl: shareUrl,
1866
+ shareTitle: shareTitle,
1867
+ shareVia: shareVia,
1868
+ shareSummary: shareSummary,
1869
+ shareSubject: shareSubject,
1870
+ shareImage: shareImage,
1871
+ size: 32,
1872
+ siteName: siteName,
1873
+ twitterSiteName: twitterSiteName,
1874
+ disableMeta: true,
1875
+ hidePinterest: hidePinterestShare,
1876
+ hideFacebook: hideFBShare
1877
+ })
1878
+ ),
1879
+ issue && downloadCitation && (!issue.hasOwnProperty('show_download_ris_button') || issue.show_download_ris_button !== false) && (!issue.publication || !issue.publication.hasOwnProperty('show_download_ris_button') || issue.publication.show_download_ris_button !== false) && React__default["default"].createElement(
1880
+ Button__default["default"],
1881
+ { className: 'ris-download-button', onClick: function onClick() {
1882
+ return downloadRIS();
1883
+ } },
1884
+ 'Download RIS'
1885
+ )
1886
+ )
1887
+ ),
1888
+ React__default["default"].createElement(
1889
+ 'div',
1890
+ null,
1891
+ React__default["default"].createElement(DocumentGroup, { article: props.article, client: props.client })
1892
+ )
1893
+ ),
1894
+ !isVideoSeries && summary && display_summary && React__default["default"].createElement(
1895
+ 'p',
1896
+ null,
1897
+ React__default["default"].createElement(
1898
+ 'em',
1899
+ null,
1900
+ summary
1901
+ )
1902
+ ),
1903
+ React__default["default"].createElement(
1904
+ 'div',
1905
+ { className: 'ad-box', style: { textAlign: 'center' } },
1906
+ main.main_43 && !sponsoredFlag && props.article.Ads && props.article.Ads.length > 0 && props.article.Ads.map(function (ad, index) {
1907
+ if (index === 0) {
1908
+ return React__default["default"].createElement(
1909
+ 'div',
1910
+ {
1911
+ key: index,
1912
+ id: 'addid-' + index,
1913
+ style: {
1914
+ display: 'flex',
1915
+ flex: '1 0 auto',
1916
+ justifyContent: 'center',
1917
+ alignItems: 'center',
1918
+ textAlign: 'center'
1919
+ } },
1920
+ ad.component
1921
+ );
1922
+ }
1923
+ })
1924
+ ),
1925
+ React__default["default"].createElement(
1926
+ 'div',
1927
+ { className: 'block-content mt-3' },
1928
+ !isVideoSeries && renderBlockContent(article, meta),
1929
+ React__default["default"].createElement('div', { className: 'clearfix' }),
1930
+ React__default["default"].createElement(
1931
+ 'noscript',
1932
+ null,
1933
+ React__default["default"].createElement(
1934
+ 'div',
1935
+ { style: { display: 'flex', justifyContent: 'center' }, className: 'series-links' },
1936
+ props.article.seriesDetail && props.article.seriesDetail.prevUrl && React__default["default"].createElement(
1937
+ 'a',
1938
+ { className: 'mx-3', href: props.article.seriesDetail.prevUrl },
1939
+ 'Previous ',
1940
+ props.article.seriesDetail.type
1941
+ ),
1942
+ props.article.seriesDetail && props.article.seriesDetail.nextUrl && React__default["default"].createElement(
1943
+ 'a',
1944
+ { className: 'mx-3', href: props.article.seriesDetail.nextUrl },
1945
+ 'Next ',
1946
+ props.article.seriesDetail.type
1947
+ )
1948
+ )
1949
+ ),
1950
+ React__default["default"].createElement(
1951
+ 'div',
1952
+ { className: 'downloads-container' },
1953
+ issue && issue.pdf && React__default["default"].createElement(
1954
+ 'a',
1955
+ { rel: 'noopener', href: urlForFile.urlForFile({ asset: issue.pdf }), target: '_blank', title: 'Download issue' },
1956
+ React__default["default"].createElement('img', { style: { margin: '1rem', maxHeight: '40px', maxWidth: '40px' }, src: '/download.png', alt: 'download issue' }),
1957
+ 'Download Issue : ',
1958
+ issue.name
1959
+ )
1960
+ )
1961
+ ),
1962
+ React__default["default"].createElement('div', { className: 'clearfix', style: { minHeight: '1px' } }),
1963
+ article.documentGroup && article.documentGroup.isSeries && sliderData && !seriesInfo.hasVideo && React__default["default"].createElement(
1964
+ 'div',
1965
+ null,
1966
+ false ,
1967
+ React__default["default"].createElement(SeriesSlider.SeriesSlider, { dataset: sliderData, client: client, nowPlaying: article.title, displayEpisodeNumber: logicforDisplayingEpisodeNumber })
1968
+ ),
1969
+ showRelatedArticles && !showIsi && React__default["default"].createElement(RelatedContent, null),
1970
+ disqusConfig && showDisqus && React__default["default"].createElement(
1971
+ 'div',
1972
+ { id: 'disqusContainer' },
1973
+ React__default["default"].createElement(disqusReact.DiscussionEmbed, {
1974
+ shortname: disqusConfig.shortname,
1975
+ config: {
1976
+ url: disqusConfig.url,
1977
+ identifier: disqusConfig.identifier,
1978
+ title: disqusConfig.title
1979
+ }
1980
+ })
1981
+ )
1982
+ ),
1983
+ renderIsiContent(props.article)
1984
+ )
1985
+ ),
1986
+ showIsi && Array.isArray(isi) && isi.length > 0 && React__default["default"].createElement(
1987
+ ISI,
1988
+ null,
1989
+ React__default["default"].createElement(BlockContent.BlockContent, {
1990
+ serializers: getSerializers.getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, false, null, article.Ads, targeting),
1991
+ blocks: isi
1992
+ })
1993
+ ),
1994
+ main.main_43 && !sponsoredFlag && props.article.Ads && props.article.Ads.length > 0 && props.article.Ads.map(function (ad, index) {
1995
+ if (index > 0) {
1996
+ return React__default["default"].createElement(
1997
+ 'div',
1998
+ { key: index, id: 'addid-' + index },
1999
+ ad.component
2000
+ );
2001
+ }
2002
+ }),
2003
+ React__default["default"].createElement(
2004
+ 'noscript',
2005
+ null,
2006
+ props.infiniteScroll && props.article.relatedArticle && props.article.relatedArticle[0] && props.article.relatedArticle[0].url && props.article.relatedArticle[0].url.current && React__default["default"].createElement(
2007
+ 'div',
2008
+ { style: { textAlign: 'center' } },
2009
+ React__default["default"].createElement(
2010
+ 'a',
2011
+ { href: '/view/' + props.article.relatedArticle[0].url.current },
2012
+ 'Related Article ',
2013
+ '>>>'
2014
+ )
2015
+ )
2016
+ ),
2017
+ props.infiniteScroll && React__default["default"].createElement('hr', { className: 'article-seperater mb-5 mt-3' }),
2018
+ React__default["default"].createElement(Schema, { article: props.article, Website: props.Website, client: props.client })
2019
+ );
2020
+ };
2021
+
2022
+ if (passwordLock) {
2023
+ if (auth === 2) {
2024
+ return detail();
2025
+ } else {
2026
+ return form();
2027
+ }
2028
+ } else {
2029
+ return detail();
2030
+ }
2031
+ }), function (prevProps, nextProps) {
2032
+ if (prevProps.article._id === nextProps.article._id) return true;
2033
+ return false;
2034
+ });
2035
+
2036
+ var _this$1 = undefined;
2037
+
2038
+ var ArticleQueue = function ArticleQueue(props) {
2039
+ var router = Router.useRouter();
2040
+
2041
+ var _props$prevUrl = props.prevUrl,
2042
+ prevUrl = _props$prevUrl === undefined ? '/' : _props$prevUrl,
2043
+ Ads = props.Ads,
2044
+ _props$maxListLength = props.maxListLength,
2045
+ maxListLength = _props$maxListLength === undefined ? 10 : _props$maxListLength;
2046
+ props.sponsoredTaxonomies;
2047
+ var _props$cpModification = props.cpModificationRequired,
2048
+ cpModificationRequired = _props$cpModification === undefined ? false : _props$cpModification,
2049
+ _props$authorPrefix = props.authorPrefix,
2050
+ authorPrefix = _props$authorPrefix === undefined ? 'authors' : _props$authorPrefix,
2051
+ showRelatedArticles = props.showRelatedArticles,
2052
+ canonicalTag = props.canonicalTag,
2053
+ _props$disablePrevUrl = props.disablePrevUrlCheckContentPlacement,
2054
+ disablePrevUrlCheckContentPlacement = _props$disablePrevUrl === undefined ? false : _props$disablePrevUrl;
2055
+
2056
+ var _useState = React.useState(0),
2057
+ _useState2 = slicedToArray._slicedToArray(_useState, 2),
2058
+ containerHeight = _useState2[0],
2059
+ setContainerHeight = _useState2[1];
2060
+
2061
+ React.useEffect(function () {
2062
+ var checkFullScreen = function checkFullScreen() {
2063
+ if (window.innerWidth == screen.width && window.innerHeight == screen.height) {
2064
+ return true;
2065
+ } else {
2066
+ return false;
2067
+ }
2068
+ };
2069
+ setContainerHeight(function () {
2070
+ return window.innerHeight;
2071
+ });
2072
+ var handleResize = function handleResize() {
2073
+ return !checkFullScreen() && setContainerHeight(function () {
2074
+ return window.innerHeight;
2075
+ });
2076
+ };
2077
+ window.addEventListener('resize', handleResize);
2078
+ return function () {
2079
+ return window.removeEventListener('resize', handleResize);
2080
+ };
2081
+ }, []);
2082
+
2083
+ var firstArticle = function firstArticle() {
2084
+ var article = _extends._Object$assign({}, props.article);
2085
+ var targeting = getTargeting.getTargeting(props);
2086
+ article.Ads = Ads.getRightItems(targeting);
2087
+ return article;
2088
+ };
2089
+
2090
+ var _useState3 = React.useState([firstArticle()]),
2091
+ _useState4 = slicedToArray._slicedToArray(_useState3, 2),
2092
+ queueData = _useState4[0],
2093
+ setQueueData = _useState4[1];
2094
+
2095
+ var _useState5 = React.useState(queueData[0]._id),
2096
+ _useState6 = slicedToArray._slicedToArray(_useState5, 2),
2097
+ active = _useState6[0],
2098
+ setActive = _useState6[1];
2099
+
2100
+ var refreshAD = function refreshAD(path) {
2101
+ var activeArticle = queueData.find(function (item) {
2102
+ return item.url.current === path;
2103
+ });
2104
+ var targeting = getTargeting.getTargeting({ article: activeArticle, cpModificationRequired: cpModificationRequired, position: props.position, prevUrl: prevUrl, disablePrevUrlCheckContentPlacement: disablePrevUrlCheckContentPlacement });
2105
+ if (!main.main_43) {
2106
+ index.lib_3.getGoogletag().then(function (googletag) {
2107
+ if (window.googletag && googletag.pubadsReady) {
2108
+ var slots = googletag.pubads().getSlots();
2109
+ slots.forEach(function (slot) {
2110
+ var pos = slot.getTargeting('pos');
2111
+ slot.clearTargeting();
2112
+ keys._Object$keys(targeting).forEach(function (key) {
2113
+ slot.setTargeting(key, targeting[key]);
2114
+ });
2115
+ slot.setTargeting('pos', pos);
2116
+ });
2117
+ index.lib_3.refresh();
2118
+ }
2119
+ });
2120
+ }
2121
+ //Refresh leaderboard ad on mobile
2122
+ if (main.main_43) {
2123
+ var leaderboardSlotId = '';
2124
+ index.lib_3.getGoogletag().then(function (googletag) {
2125
+ if (window.googletag && googletag.pubadsReady) {
2126
+ var slots = googletag.pubads().getSlots();
2127
+ slots.forEach(function (slot) {
2128
+ var pos = slot.getTargeting('pos');
2129
+ if (pos == 'top-mobile') {
2130
+ //gets the slotId of the leaderboard ad to refresh
2131
+ leaderboardSlotId = slot.getSlotId().getDomId();
2132
+ slot.clearTargeting();
2133
+ keys._Object$keys(targeting).forEach(function (key) {
2134
+ slot.setTargeting(key, targeting[key]);
2135
+ });
2136
+ slot.setTargeting('pos', pos);
2137
+ }
2138
+ });
2139
+ index.lib_3.refresh(leaderboardSlotId);
2140
+ }
2141
+ });
2142
+ }
2143
+ };
2144
+
2145
+ var hasVerticalScroll = function hasVerticalScroll() {
2146
+ if (window.innerHeight) {
2147
+ return document.body.offsetHeight > window.innerHeight;
2148
+ } else {
2149
+ return document.documentElement.scrollHeight > document.documentElement.offsetHeight || document.body.scrollHeight > document.body.offsetHeight;
2150
+ }
2151
+ };
2152
+
2153
+ React.useEffect(function () {
2154
+ // Fetching related article after component mounted if vertical scroll not found
2155
+ setTimeout(function () {
2156
+ if (!hasVerticalScroll()) {
2157
+ loadmore();
2158
+ }
2159
+ }, 1000);
2160
+ }, [queueData.length]);
2161
+
2162
+ var loadmore = function () {
2163
+ var _ref = asyncToGenerator._asyncToGenerator( /*#__PURE__*/asyncToGenerator.regenerator.mark(function _callee() {
2164
+ var index, article, startingIndex, endingIndex, targeting;
2165
+ return asyncToGenerator.regenerator.wrap(function _callee$(_context) {
2166
+ while (1) {
2167
+ switch (_context.prev = _context.next) {
2168
+ case 0:
2169
+ if (!(queueData && queueData.length < maxListLength)) {
2170
+ _context.next = 27;
2171
+ break;
2172
+ }
2173
+
2174
+ index = queueData.length - 1;
2175
+ article = null;
2176
+ _context.prev = 3;
2177
+ _context.next = 6;
2178
+ return getRelatedArticle(null, props.client, props.article, prevUrl, index);
2179
+
2180
+ case 6:
2181
+ article = _context.sent;
2182
+ _context.next = 12;
2183
+ break;
2184
+
2185
+ case 9:
2186
+ _context.prev = 9;
2187
+ _context.t0 = _context['catch'](3);
2188
+
2189
+ console.error(_context.t0);
2190
+
2191
+ case 12:
2192
+ if (!(article && article._id)) {
2193
+ _context.next = 27;
2194
+ break;
2195
+ }
2196
+
2197
+ //query next 4 related article without repeating previous 4 related articles
2198
+ startingIndex = queueData.length + 1;
2199
+ endingIndex = startingIndex + 2;
2200
+ _context.prev = 15;
2201
+ _context.next = 18;
2202
+ return getRelatedArticle(null, props.client, props.article, prevUrl, startingIndex + '..' + endingIndex);
2203
+
2204
+ case 18:
2205
+ article.relatedArticle = _context.sent;
2206
+ _context.next = 24;
2207
+ break;
2208
+
2209
+ case 21:
2210
+ _context.prev = 21;
2211
+ _context.t1 = _context['catch'](15);
2212
+
2213
+ console.error(_context.t1);
2214
+
2215
+ case 24:
2216
+ targeting = getTargeting.getTargeting({ article: article, cpModificationRequired: cpModificationRequired, prevUrl: prevUrl, disablePrevUrlCheckContentPlacement: disablePrevUrlCheckContentPlacement });
2217
+
2218
+ article.Ads = Ads.getRightItems(targeting);
2219
+ setQueueData([].concat(toConsumableArray._toConsumableArray(queueData), [article]));
2220
+
2221
+ case 27:
2222
+ case 'end':
2223
+ return _context.stop();
2224
+ }
2225
+ }
2226
+ }, _callee, _this$1, [[3, 9], [15, 21]]);
2227
+ }));
2228
+
2229
+ return function loadmore() {
2230
+ return _ref.apply(this, arguments);
2231
+ };
2232
+ }();
2233
+
2234
+ var currentPath = router && router.asPath;
2235
+ var seoLinks = props.cache.seoManager && props.cache.seoManager.filter(function (eachDocument) {
2236
+ return eachDocument.urlSeo == currentPath;
2237
+ });
2238
+
2239
+ var metaDescriptionSanity = seoLinks && seoLinks.length == 1 && seoLinks[0].metaDescription;
2240
+ var metaTitleSanity = seoLinks && seoLinks.length == 1 && seoLinks[0].metaTitle;
2241
+ // let urlSeo = seoLinks && seoLinks.length ==1 && seoLinks[0].urlSeo
2242
+
2243
+ var changeMetaFromSanity = function changeMetaFromSanity(metaDescription, metaTitle, oldMeta) {
2244
+ document.title = metaTitle;
2245
+ //this was throwing an error if there was no description, doing a check for the description meta
2246
+ if (document.querySelector('meta[name="description"]')) document.querySelector('meta[name="description"]').setAttribute('content', metaDescription);
2247
+ document.querySelector('meta[name="keywords"]').setAttribute('content', oldMeta.shareKeywords);
2248
+ document.querySelector('meta[property="og:url"]').setAttribute('content', oldMeta.shareUrl);
2249
+ document.querySelector('meta[property="og:title"]').setAttribute('content', metaTitle);
2250
+ document.querySelector('meta[property="og:site_name"]').setAttribute('content', oldMeta.shareVia);
2251
+ document.querySelector('meta[property="og:description"]').setAttribute('content', metaDescription);
2252
+ document.querySelector('meta[name="twitter:title"]').setAttribute('content', metaTitle);
2253
+ document.querySelector('meta[name="twitter:image"]').setAttribute('content', oldMeta.shareImage);
2254
+ document.querySelector('meta[name="twitter:site"]').setAttribute('content', oldMeta.shareVia);
2255
+ //this was throwing an error if there was no description, doing a check for the description meta
2256
+ if (document.querySelector('meta[name="twitter:description"]')) document.querySelector('meta[name="twitter:description"]').setAttribute('content', metaDescription);
2257
+ if (canonicalTag) {
2258
+ document.querySelector('link[rel="canonical"]').setAttribute('href', oldMeta.shareUrl);
2259
+ }
2260
+ };
2261
+
2262
+ var changeMeta = function changeMeta(meta) {
2263
+ document.title = meta.shareTitle;
2264
+ //this was throwing an error if there was no description, doing a check for the description meta
2265
+ if (document.querySelector('meta[name="description"]')) document.querySelector('meta[name="description"]').setAttribute('content', meta.shareSummary);
2266
+ document.querySelector('meta[name="keywords"]').setAttribute('content', meta.shareKeywords);
2267
+ document.querySelector('meta[property="og:url"]').setAttribute('content', meta.shareUrl);
2268
+ document.querySelector('meta[property="og:title"]').setAttribute('content', meta.shareTitle);
2269
+ document.querySelector('meta[property="og:site_name"]').setAttribute('content', meta.shareVia);
2270
+ document.querySelector('meta[property="og:description"]').setAttribute('content', meta.shareSummary);
2271
+ document.querySelector('meta[name="twitter:title"]').setAttribute('content', meta.shareTitle);
2272
+ document.querySelector('meta[name="twitter:image"]').setAttribute('content', meta.shareImage);
2273
+ document.querySelector('meta[name="twitter:site"]').setAttribute('content', meta.shareVia);
2274
+ //this was throwing an error if there was no description, doing a check for the description meta
2275
+ if (document.querySelector('meta[name="twitter:description"]')) document.querySelector('meta[name="twitter:description"]').setAttribute('content', meta.shareSummary);
2276
+ if (canonicalTag) {
2277
+ document.querySelector('link[rel="canonical"]').setAttribute('href', meta.shareUrl);
2278
+ }
2279
+ };
2280
+
2281
+ var onChangeArticle = function onChangeArticle(path, meta, pageviewProperties) {
2282
+ var newPath = '/view/' + path;
2283
+ var activeArticle = queueData.find(function (item) {
2284
+ return item.url.current === path;
2285
+ });
2286
+ setActive(function () {
2287
+ return activeArticle._id;
2288
+ });
2289
+ // Change URL and do other changes
2290
+ window.history.pushState({ page: path }, meta.shareTitle, newPath);
2291
+
2292
+ if (metaDescriptionSanity && metaTitleSanity && currentPath == newPath) {
2293
+ changeMetaFromSanity(metaDescriptionSanity, metaTitleSanity, meta);
2294
+ } else {
2295
+ changeMeta(meta);
2296
+ }
2297
+ if (props.setCustomDimensions) {
2298
+ props.setCustomDimensions(activeArticle, '200', prevUrl, '');
2299
+ }
2300
+ if (props.pageview) props.pageview(newPath, null, pageviewProperties);
2301
+ if (props.gtagSetCustomDimensions) props.gtagSetCustomDimensions(activeArticle, '200', prevUrl, '', true);
2302
+ refreshAD(path);
2303
+ };
2304
+
2305
+ return React__default["default"].createElement(
2306
+ index_es.InfiniteScroll,
2307
+ { dataLength: queueData.length, next: loadmore, scrollThreshold: '40%', hasMore: true, style: { overflow: 'hidden' } },
2308
+ queueData.map(function (article, index) {
2309
+ return React__default["default"].createElement(
2310
+ React__default["default"].Fragment,
2311
+ { key: index },
2312
+ React__default["default"].createElement(Article, _extends._extends({}, props, {
2313
+ containerHeight: containerHeight,
2314
+ onChangeArticle: onChangeArticle,
2315
+ authorPrfix: authorPrefix,
2316
+ article: article,
2317
+ cpModificationRequired: cpModificationRequired,
2318
+ active: active === article._id
2319
+ // Passing queueData to check for single article
2320
+ , queueData: queueData,
2321
+ showRelatedArticles: showRelatedArticles,
2322
+ index: index,
2323
+ showPageNumber: article.issueGroup && article.issueGroup.parent ? article.issueGroup.parent.showPageNumber : null,
2324
+ showIssueNameOnly: article.issueGroup && article.issueGroup.parent ? article.issueGroup.parent.showIssueNameOnly : null
2325
+ }))
2326
+ );
2327
+ })
2328
+ );
2329
+ };
2330
+
2331
+ var _this = undefined;
2332
+
2333
+ var View = function View(props) {
2334
+ var router = Router.useRouter();
2335
+ var shareOptions = props.shareOptions,
2336
+ article = props.article,
2337
+ _props$article = props.article,
2338
+ hideComments = _props$article.hideComments,
2339
+ content_placement = _props$article.content_placement,
2340
+ _props$sponsoredFlag = props.sponsoredFlag,
2341
+ sponsoredFlag = _props$sponsoredFlag === undefined ? false : _props$sponsoredFlag;
2342
+ props.sponsoredTaxonomies;
2343
+ var Ads = props.Ads,
2344
+ setCustomDimensions = props.setCustomDimensions,
2345
+ gtagSetCustomDimensions = props.gtagSetCustomDimensions,
2346
+ statusCode = props.statusCode,
2347
+ prevUrl = props.prevUrl,
2348
+ pageview = props.pageview,
2349
+ _props$showRelatedArt = props.showRelatedArticles,
2350
+ showRelatedArticles = _props$showRelatedArt === undefined ? false : _props$showRelatedArt,
2351
+ _props$canonicalTag = props.canonicalTag,
2352
+ canonicalTag = _props$canonicalTag === undefined ? true : _props$canonicalTag,
2353
+ _props$infiniteScroll = props.infiniteScrollFlag,
2354
+ infiniteScrollFlag = _props$infiniteScroll === undefined ? true : _props$infiniteScroll,
2355
+ emailList = props.emailList,
2356
+ articleRecs = props.articleRecs;
2357
+ var _props$article2 = props.article,
2358
+ _props$article2$passw = _props$article2.passwordLock,
2359
+ passwordLock = _props$article2$passw === undefined ? false : _props$article2$passw;
2360
+ _props$article2.description;
2361
+ var title = _props$article2.title,
2362
+ seriesShareOptions = _props$article2.seriesShareOptions;
2363
+
2364
+ var _useState = React.useState(0),
2365
+ _useState2 = slicedToArray._slicedToArray(_useState, 2),
2366
+ currentPage = _useState2[0],
2367
+ setCurrentPage = _useState2[1];
2368
+ // Logging GA pageview for the initial article with custom dimensions
2369
+
2370
+
2371
+ React.useEffect(function () {
2372
+ if (pageview && setCustomDimensions) {
2373
+ var timer = void 0;
2374
+ var pageviewProperties = _extends._extends({}, getTargeting.getTargeting(props), {
2375
+ category: article && article.category ? article.category.name : ''
2376
+ });
2377
+ var waitAndExicute = function waitAndExicute() {
2378
+ if (typeof window.GA_INITIALIZED !== 'undefined') {
2379
+ setCustomDimensions(article, statusCode, prevUrl, '');
2380
+ pageview(router.asPath, null, pageviewProperties);
2381
+ } else timer = setTimeout(waitAndExicute, 1000);
2382
+ };
2383
+ waitAndExicute();
2384
+ return function () {
2385
+ clearTimeout(timer);
2386
+ };
2387
+ } else if (gtagSetCustomDimensions) {
2388
+ var _timer = void 0;
2389
+ var _waitAndExicute = function _waitAndExicute() {
2390
+ if (typeof window.GA_INITIALIZED !== 'undefined') {
2391
+ gtagSetCustomDimensions(article, statusCode, prevUrl, '', false);
2392
+ } else _timer = setTimeout(_waitAndExicute, 1000);
2393
+ };
2394
+ _waitAndExicute();
2395
+ return function () {
2396
+ clearTimeout(_timer);
2397
+ };
2398
+ }
2399
+ }, []);
2400
+
2401
+ var isVideoSeries = false;
2402
+ // check for certain serializers that need to disable infinite scroll
2403
+ var checkBodyForDisableInfiniteScroll = function checkBodyForDisableInfiniteScroll(article) {
2404
+ if (!article || !article.body) {
2405
+ return false;
2406
+ }
2407
+ for (var i = 0; i < article.body.length; i++) {
2408
+ if (article.body[i]._type === 'articleSeries' || article.body[i]._type === 'slideshows' || article.body[i]._type === 'quiz') {
2409
+ return true;
2410
+ }
2411
+ var row = article.body[i];
2412
+ if (typeof row.videos !== 'undefined') {
2413
+ isVideoSeries = true;
2414
+ return true;
2415
+ }
2416
+ }
2417
+ return false;
2418
+ };
2419
+
2420
+ var isMediaSeries = false;
2421
+
2422
+ if (article.documentGroup && article.documentGroup.isSeries) {
2423
+ isMediaSeries = true;
2424
+ }
2425
+ if (!article.documentGroup && article.documentGroupMapping && checkDocGroupMappingForSeries(article.documentGroupMapping)) {
2426
+ isMediaSeries = true;
2427
+ }
2428
+
2429
+ var disableInfiniteScroll = checkBodyForDisableInfiniteScroll(props.article);
2430
+ var commentsEnabledInTaxonomy = Array.isArray(content_placement) && content_placement.some(function (t) {
2431
+ return t.showComments === true;
2432
+ });
2433
+ var showDisqus = commentsEnabledInTaxonomy || hideComments === false;
2434
+ var needInfiniteScroll = ['Articles', 'Videos', 'Podcasts'].includes(article.category.name) && article.taxonomyMapping && article.passwordLock !== true && !disableInfiniteScroll && !article.ExcludeFromInfiniteScroll && !sponsoredFlag && infiniteScrollFlag && !article.showIsi && !isMediaSeries && !showDisqus;
2435
+
2436
+ if (['Articles', 'Videos', 'Podcasts'].includes(article.category.name)) {
2437
+ title = null;
2438
+ }
2439
+
2440
+ if (!needInfiniteScroll && !title) {
2441
+ title = props.article ? props.article.title : '';
2442
+ }
2443
+ // add mobile ads to articles not using infinite scroll
2444
+ if (!needInfiniteScroll) {
2445
+ var targeting = getTargeting.getTargeting(props);
2446
+ article.Ads = Ads.getRightItems(targeting);
2447
+ if (!sponsoredFlag && Ads.getVideoContextualAD) {
2448
+ article.contextualVideoAD = Ads.getVideoContextualAD(getTargeting.getTargeting(props, 'in-context_video'));
2449
+ }
2450
+ if (!sponsoredFlag && Ads.getNativeContextualAD) {
2451
+ article.contextualAD = Ads.getNativeContextualAD(getTargeting.getTargeting(props, 'native-ad'));
2452
+ }
2453
+ }
2454
+ React.useEffect(function () {
2455
+ router.asPath && router.asPath.length > 0 && router.asPath.includes('?') && router.asPath.split('?')[1].split('&').forEach(function (item) {
2456
+ if (item.includes('page=')) {
2457
+ setCurrentPage(item.split('=')[1]);
2458
+ } else {
2459
+ setCurrentPage(0);
2460
+ }
2461
+ });
2462
+ if (!router.asPath.includes('page=') && currentPage !== 0) {
2463
+ setCurrentPage(0);
2464
+ }
2465
+ }, [router]);
2466
+
2467
+ var meta_description = seriesShareOptions && seriesShareOptions.seriesSummary ? '' + seriesShareOptions.seriesSummary + (currentPage > 0 ? ' | Page ' + currentPage : '') : article.seo && article.seo.meta_description ? '' + article.seo.meta_description + (currentPage > 0 ? ' | Page ' + currentPage : '') : shareOptions.shareSummary ? '' + shareOptions.shareSummary + (currentPage > 0 ? ' | Page ' + currentPage : '') : '' + (currentPage > 0 ? 'Page ' + currentPage : '');
2468
+
2469
+ if (isVideoSeries) {
2470
+ meta_description = seriesShareOptions && seriesShareOptions.seriesSummary ? '' + seriesShareOptions.seriesSummary + (currentPage > 0 ? ' | Page ' + currentPage : '') : '';
2471
+ }
2472
+
2473
+ var currentPath = router && router.asPath;
2474
+ var seoLinks = props.cache.seoManager && props.cache.seoManager.filter(function (eachDocument) {
2475
+ return eachDocument.urlSeo == currentPath;
2476
+ });
2477
+
2478
+ var metaDescriptionSanity = seoLinks && seoLinks.length == 1 && seoLinks[0].metaDescription;
2479
+ var metaTitleSanity = seoLinks && seoLinks.length == 1 && seoLinks[0].metaTitle;
2480
+ return React__default["default"].createElement(
2481
+ React__default["default"].Fragment,
2482
+ null,
2483
+ React__default["default"].createElement(
2484
+ Head__default["default"],
2485
+ null,
2486
+ React__default["default"].createElement(
2487
+ 'title',
2488
+ { key: 'title' },
2489
+ metaTitleSanity ? '' + metaTitleSanity + (currentPage > 0 ? ' | Page ' + currentPage : '') : seriesShareOptions && seriesShareOptions.seriesTitle ? '' + seriesShareOptions.seriesTitle + (currentPage > 0 ? ' | Page ' + currentPage : '') : article && article.seo && article.seo.seo_title ? '' + article.seo.seo_title + (currentPage > 0 ? ' | Page ' + currentPage : '') : '' + article.title + (currentPage > 0 ? ' | Page ' + currentPage : '')
2490
+ ),
2491
+ metaDescriptionSanity ? React__default["default"].createElement('meta', { name: 'description', key: 'description', content: metaDescriptionSanity }) : meta_description && React__default["default"].createElement('meta', { name: 'description', key: 'description', content: meta_description }),
2492
+ React__default["default"].createElement('meta', { name: 'keywords', content: getKeywords(article).join(','), key: 'keywords' }),
2493
+ passwordLock && React__default["default"].createElement('meta', { name: 'robots', content: 'noindex, nofollow' }),
2494
+ React__default["default"].createElement('meta', {
2495
+ property: 'og:url',
2496
+ content: seriesShareOptions && seriesShareOptions.seriesUrl ? shareOptions.shareUrl + seriesShareOptions.seriesUrl : shareOptions.shareUrl,
2497
+ key: 'og:url'
2498
+ }),
2499
+ React__default["default"].createElement('meta', {
2500
+ property: 'og:title',
2501
+ content: metaTitleSanity ? '' + metaTitleSanity + (currentPage > 0 ? ' | Page ' + currentPage : '') : seriesShareOptions && seriesShareOptions.seriesTitle ? '' + seriesShareOptions.seriesTitle + (currentPage > 0 ? ' | Page ' + currentPage : '') : article.seo && article.seo.seo_title ? '' + article.seo.seo_title + (currentPage > 0 ? ' | Page ' + currentPage : '') : '' + shareOptions.shareTitle + (currentPage > 0 ? ' | Page ' + currentPage : ''),
2502
+ key: 'og:title'
2503
+ }),
2504
+ React__default["default"].createElement('meta', {
2505
+ property: 'og:image',
2506
+ content: seriesShareOptions && seriesShareOptions.seriesThumbnail ? seriesShareOptions.seriesThumbnail : shareOptions.shareImage,
2507
+ key: 'og:image'
2508
+ }),
2509
+ React__default["default"].createElement('meta', { property: 'og:site_name', content: props.Settings.title, key: 'og:site_name' }),
2510
+ metaDescriptionSanity ? React__default["default"].createElement('meta', { property: 'og:description', key: 'og:description', content: metaDescriptionSanity }) : meta_description && React__default["default"].createElement('meta', { property: 'og:description', key: 'og:description', content: meta_description }),
2511
+ React__default["default"].createElement('meta', { name: 'twitter:card', content: 'summary', key: 'twitter:card' }),
2512
+ React__default["default"].createElement('meta', {
2513
+ name: 'twitter:title',
2514
+ content: metaTitleSanity ? '' + metaTitleSanity + (currentPage > 0 ? ' | Page ' + currentPage : '') : seriesShareOptions && seriesShareOptions.seriesTitle ? '' + seriesShareOptions.seriesTitle + (currentPage > 0 ? ' | Page ' + currentPage : '') : article.seo && article.seo.seo_title ? '' + article.seo.seo_title + (currentPage > 0 ? ' | Page ' + currentPage : '') : '' + shareOptions.shareTitle + (currentPage > 0 ? ' | Page ' + currentPage : ''),
2515
+ key: 'twitter:title'
2516
+ }),
2517
+ React__default["default"].createElement('meta', {
2518
+ name: 'twitter:image',
2519
+ content: seriesShareOptions && seriesShareOptions.seriesThumbnail ? seriesShareOptions.seriesThumbnail : shareOptions.shareImage,
2520
+ key: 'twitter:image'
2521
+ }),
2522
+ React__default["default"].createElement('meta', { name: 'twitter:site', content: '@' + props.Settings.title, key: 'twitter:site' }),
2523
+ metaDescriptionSanity ? React__default["default"].createElement('meta', { name: 'twitter:description', key: 'twitter:description', content: metaDescriptionSanity }) : meta_description && React__default["default"].createElement('meta', { name: 'twitter:description', key: 'twitter:description', content: meta_description }),
2524
+ canonicalTag && React__default["default"].createElement('link', {
2525
+ rel: 'canonical',
2526
+ href: seriesShareOptions && seriesShareOptions.seriesUrl ? shareOptions.shareUrl + seriesShareOptions.seriesUrl : shareOptions.shareUrl,
2527
+ key: 'canonical'
2528
+ }),
2529
+ React__default["default"].createElement(
2530
+ 'noscript',
2531
+ null,
2532
+ props.article.seriesDetail && props.article.seriesDetail.prevUrl && React__default["default"].createElement('link', { rel: 'prev', href: props.article.seriesDetail.prevUrl }),
2533
+ props.article.seriesDetail && props.article.seriesDetail.nextUrl && React__default["default"].createElement('link', { rel: 'next', href: props.article.seriesDetail.nextUrl })
2534
+ )
2535
+ ),
2536
+ !needInfiniteScroll ? React__default["default"].createElement(Article, _extends._extends({ infiniteScroll: false, showRelatedArticles: showRelatedArticles, showDisqus: showDisqus, emailList: emailList, articleRecs: articleRecs }, props, { showIssueNameOnly: article.issueGroup && article.issueGroup.parent ? article.issueGroup.parent.showIssueNameOnly : null, showPageNumber: article.issueGroup && article.issueGroup.parent ? article.issueGroup.parent.showPageNumber : null })) : React__default["default"].createElement(ArticleQueue, _extends._extends({
2537
+ infiniteScroll: true,
2538
+ showRelatedArticles: showRelatedArticles,
2539
+ canonicalTag: canonicalTag,
2540
+ checkSponsered: true,
2541
+ Ads: props.WAds,
2542
+ onVote: function onVote() {},
2543
+ sponsoredTaxonomies: []
2544
+ }, props))
2545
+ );
2546
+ };
2547
+
2548
+ // This should be called in /view/[url] getInitialProps to fetch the article data and related articles. This will also set the sponsoredFlag to true if any taxonomies have disabled ads.
2549
+ View.returnGetInitialProps = function () {
2550
+ var _ref = asyncToGenerator._asyncToGenerator( /*#__PURE__*/asyncToGenerator.regenerator.mark(function _callee(url, prevUrl, seriesVid, client, sao) {
2551
+ var context = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
2552
+
2553
+ var article, relatedArticleQuery, sliderData, statusCode, sliderArticles, _sliderArticles, _context$query$series, seriesArticle, sponsoredFlag;
2554
+
2555
+ return asyncToGenerator.regenerator.wrap(function _callee$(_context) {
2556
+ while (1) {
2557
+ switch (_context.prev = _context.next) {
2558
+ case 0:
2559
+ _context.next = 2;
2560
+ return client.fetch(getQuery('article'), { url: url });
2561
+
2562
+ case 2:
2563
+ article = _context.sent;
2564
+
2565
+ console.log('article url current', url);
2566
+ relatedArticleQuery = getQuery('related');
2567
+
2568
+ article.seriesDetail = getSeriesDetail(article, seriesVid);
2569
+ sliderData = [];
2570
+ statusCode = 200;
2571
+
2572
+ if (!article || !article._id || !article.body) {
2573
+ statusCode = 404;
2574
+ }
2575
+
2576
+ if (!(article.documentGroup && article.documentGroup.isSeries)) {
2577
+ _context.next = 16;
2578
+ break;
2579
+ }
2580
+
2581
+ _context.next = 12;
2582
+ return client.fetch('*[!(_id in path("drafts.**")) \n && _type == "article"\n && defined(title)\n && references(\'' + article.documentGroup._id + '\')\n && is_visible == true\n && defined(published)\n && dateTime(published) <= dateTime(now())\n ] | order(published asc) {\n title,\n thumbnail,\n url,\n published\n }');
2583
+
2584
+ case 12:
2585
+ sliderArticles = _context.sent;
2586
+
2587
+ sliderData = sliderArticles;
2588
+ _context.next = 21;
2589
+ break;
2590
+
2591
+ case 16:
2592
+ if (!(article.documentGroupMapping && article.documentGroupMapping[0] && article.documentGroupMapping[0].isSeries)) {
2593
+ _context.next = 21;
2594
+ break;
2595
+ }
2596
+
2597
+ _context.next = 19;
2598
+ return client.fetch('*[!(_id in path("drafts.**")) \n && _type == "article"\n && defined(title)\n && references(\'' + article.documentGroupMapping[0]._id + '\')\n && is_visible == true\n && defined(published)\n && dateTime(published) <= dateTime(now())\n ] | order(published asc) {\n title,\n thumbnail,\n url,\n published\n }');
2599
+
2600
+ case 19:
2601
+ _sliderArticles = _context.sent;
2602
+
2603
+ sliderData = _sliderArticles;
2604
+
2605
+ case 21:
2606
+ _context$query$series = context.query.seriesArticle, seriesArticle = _context$query$series === undefined ? false : _context$query$series;
2607
+
2608
+ if ((seriesArticle || seriesVid) && article.body) {
2609
+ article.body.map(function (block) {
2610
+ if (block._type === 'articleSeries' && block.articles && block.articles.length > 0) {
2611
+ block.articles.map(function (subArticle) {
2612
+ if (subArticle.param.current === seriesArticle) {
2613
+ var seriesShareOptions = {
2614
+ seriesUrl: '?seriesArticle=' + seriesArticle,
2615
+ seriesTitle: subArticle.title,
2616
+ seriesSummary: subArticle.summary,
2617
+ seriesThumbnail: subArticle.thumbnail && subArticle.thumbnail.asset ? urlFor({ client: client, source: subArticle.thumbnail.asset }) : null
2618
+ };
2619
+ article.seriesShareOptions = seriesShareOptions;
2620
+ }
2621
+ });
2622
+ }
2623
+ if (block._type === 'youtubeGallery' && block.videos && block.videos.length > 0) {
2624
+ block.videos.map(function (video, index) {
2625
+ if (index + 1 === Number(seriesVid)) {
2626
+ var seriesShareOptions = {
2627
+ seriesUrl: '?seriesVid=' + seriesVid,
2628
+ seriesTitle: video.title,
2629
+ seriesSummary: video.intro,
2630
+ seriesThumbnail: video.thumbnail && video.thumbnail.asset ? urlFor({ client: client, source: video.thumbnail.asset }) : null
2631
+ };
2632
+ article.seriesShareOptions = seriesShareOptions;
2633
+ }
2634
+ });
2635
+ }
2636
+ });
2637
+ }
2638
+ sponsoredFlag = false;
2639
+ // check for disableAds flag on each taxonomoy
2640
+
2641
+ if (article && article.content_placement) {
2642
+ article.content_placement.forEach(function (x) {
2643
+ if (x.disableAds) {
2644
+ sponsoredFlag = true;
2645
+ }
2646
+ });
2647
+ }
2648
+ // check for disableAds flag on content category
2649
+ if (article.category && article.category.disableAds) {
2650
+ sponsoredFlag = true;
2651
+ }
2652
+
2653
+ if (!article.disableRelatedContent) {
2654
+ _context.next = 31;
2655
+ break;
2656
+ }
2657
+
2658
+ article.relatedArticle = null;
2659
+ _context.next = 35;
2660
+ break;
2661
+
2662
+ case 31:
2663
+ if (!article) {
2664
+ _context.next = 35;
2665
+ break;
2666
+ }
2667
+
2668
+ _context.next = 34;
2669
+ return getRelatedArticle(context, client, article, prevUrl, '0..2');
2670
+
2671
+ case 34:
2672
+ article.relatedArticle = _context.sent;
2673
+
2674
+ case 35:
2675
+ return _context.abrupt('return', {
2676
+ url: url,
2677
+ sao: sao,
2678
+ statusCode: statusCode,
2679
+ prevUrl: prevUrl,
2680
+ relatedArticleQuery: relatedArticleQuery,
2681
+ article: article,
2682
+ sliderData: sliderData,
2683
+ sponsoredFlag: sponsoredFlag
2684
+ });
2685
+
2686
+ case 36:
2687
+ case 'end':
2688
+ return _context.stop();
2689
+ }
2690
+ }
2691
+ }, _callee, _this);
2692
+ }));
2693
+
2694
+ return function (_x, _x2, _x3, _x4, _x5) {
2695
+ return _ref.apply(this, arguments);
2696
+ };
2697
+ }();
2698
+
2699
+ module.exports = View;