@mjhls/mjh-framework 1.0.697 → 1.0.699-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/AD.js +1 -1
  3. package/dist/cjs/AD300x250.js +3 -3
  4. package/dist/cjs/AD300x250x600.js +3 -3
  5. package/dist/cjs/AD728x90.js +4 -4
  6. package/dist/cjs/ADFloatingFooter.js +2 -2
  7. package/dist/cjs/ADGutter.js +8 -5
  8. package/dist/cjs/{ADInfeed-3410ab3c.js → ADInfeed-3aa2f5dd.js} +6 -3
  9. package/dist/cjs/ADSkyscraper.js +8 -5
  10. package/dist/cjs/ADSponsoredResources.js +8 -5
  11. package/dist/cjs/ADWebcast.js +8 -5
  12. package/dist/cjs/ADWelcome.js +2 -2
  13. package/dist/cjs/{ADlgInfeed-845aac15.js → ADlgInfeed-86daec1c.js} +6 -3
  14. package/dist/cjs/AdSlot.js +3 -3
  15. package/dist/cjs/AdSlotsProvider.js +23 -2
  16. package/dist/cjs/ArticleCarousel.js +1 -1
  17. package/dist/cjs/ArticleSeriesListing.js +4 -4
  18. package/dist/cjs/Auth.js +250 -301
  19. package/dist/cjs/{BlockContent-88f69acd.js → BlockContent-091a991f.js} +1 -1
  20. package/dist/cjs/BrowseVideosListing.js +1 -1
  21. package/dist/cjs/CMEDeck.js +5 -5
  22. package/dist/cjs/Column3.js +4 -4
  23. package/dist/cjs/ConferenceArticleCard.js +2 -2
  24. package/dist/cjs/DeckContent.js +10 -8
  25. package/dist/cjs/DeckQueue.js +6 -6
  26. package/dist/cjs/{Dfp-b2bc3b97.js → Dfp-f6a18ed2.js} +1 -1
  27. package/dist/cjs/EventsDeck.js +4 -4
  28. package/dist/cjs/ExternalResources.js +7 -7
  29. package/dist/cjs/Feature.js +3 -3
  30. package/dist/cjs/ForbesHero.js +2 -2
  31. package/dist/cjs/GridContent.js +16 -12
  32. package/dist/cjs/GridHero.js +2 -2
  33. package/dist/cjs/GroupDeck.js +1 -1
  34. package/dist/cjs/HamMagazine.js +4 -4
  35. package/dist/cjs/Hero.js +1 -1
  36. package/dist/cjs/HorizontalHero.js +2 -2
  37. package/dist/cjs/IssueContentDeck.js +2 -2
  38. package/dist/cjs/IssueDeck.js +2 -2
  39. package/dist/cjs/IssueLanding.js +7 -7
  40. package/dist/cjs/LeftNav.js +3 -3
  41. package/dist/cjs/MasterDeck.js +13 -9
  42. package/dist/cjs/NavMagazine.js +4 -4
  43. package/dist/cjs/NavNative.js +27 -7
  44. package/dist/cjs/OncliveHero.js +2 -2
  45. package/dist/cjs/OncliveLargeHero.js +2 -2
  46. package/dist/cjs/PartnerDetailListing.js +16 -16
  47. package/dist/cjs/PublicationDeck.js +1 -1
  48. package/dist/cjs/QueueDeckExpanded.js +15 -11
  49. package/dist/cjs/RecentNews.js +2 -2
  50. package/dist/cjs/RelatedContent.js +2 -2
  51. package/dist/cjs/{SocialSearchComponent-6b5e5b47.js → SocialSearchComponent-56d49a1a.js} +5 -5
  52. package/dist/cjs/TaxonomyCard.js +2 -2
  53. package/dist/cjs/TemplateNormal.js +3 -3
  54. package/dist/cjs/ThumbnailCard.js +1 -1
  55. package/dist/cjs/Ustream.js +2 -2
  56. package/dist/cjs/VerticalHero.js +2 -2
  57. package/dist/cjs/VideoSeriesCard.js +2 -2
  58. package/dist/cjs/VideoSeriesListing.js +24 -22
  59. package/dist/cjs/View.js +181 -214
  60. package/dist/cjs/YahooHero.js +2 -2
  61. package/dist/cjs/YoutubeGroup.js +2 -2
  62. package/dist/cjs/getQuery.js +2 -2
  63. package/dist/cjs/getRelatedArticle.js +122 -155
  64. package/dist/cjs/getSerializers.js +6 -6
  65. package/dist/cjs/{getTargeting-fee8c429.js → getTargeting-9af0ef69.js} +2 -2
  66. package/dist/cjs/getTargeting.js +1 -1
  67. package/dist/cjs/{index-5be2866f.js → index-3294d3bc.js} +1 -1
  68. package/dist/cjs/{index-b5eb3ff8.js → index-be0c82be.js} +19 -20
  69. package/dist/cjs/{index-a9422f8a.js → index-e05857f8.js} +563 -519
  70. package/dist/cjs/{index-2d0a4911.js → index-fa8ed292.js} +27 -34
  71. package/dist/cjs/{index.es-ab3f2690.js → index.es-9110add6.js} +1 -3
  72. package/dist/cjs/index.js +12 -12
  73. package/dist/cjs/{main-b6c96c8d.js → main-03ffa84c.js} +37 -67
  74. package/dist/cjs/{moment-66a6a284.js → moment-575fe24c.js} +1 -1
  75. package/dist/cjs/timeDifferenceCalc.js +1 -1
  76. package/dist/cjs/urlFor.js +1 -1
  77. package/dist/esm/AD.js +1 -1
  78. package/dist/esm/AD300x250.js +3 -3
  79. package/dist/esm/AD300x250x600.js +3 -3
  80. package/dist/esm/AD728x90.js +4 -4
  81. package/dist/esm/ADFloatingFooter.js +2 -2
  82. package/dist/esm/ADGutter.js +8 -5
  83. package/dist/esm/{ADInfeed-205cb7a9.js → ADInfeed-cc79bcc2.js} +6 -3
  84. package/dist/esm/ADSkyscraper.js +8 -5
  85. package/dist/esm/ADSponsoredResources.js +8 -5
  86. package/dist/esm/ADWebcast.js +8 -5
  87. package/dist/esm/ADWelcome.js +2 -2
  88. package/dist/esm/{ADlgInfeed-e538f17a.js → ADlgInfeed-501cbfca.js} +6 -3
  89. package/dist/esm/AdSlot.js +3 -3
  90. package/dist/esm/AdSlotsProvider.js +24 -3
  91. package/dist/esm/ArticleCarousel.js +1 -1
  92. package/dist/esm/ArticleSeriesListing.js +4 -4
  93. package/dist/esm/Auth.js +247 -298
  94. package/dist/esm/{BlockContent-a614acdf.js → BlockContent-e9b4ddcf.js} +1 -1
  95. package/dist/esm/BrowseVideosListing.js +1 -1
  96. package/dist/esm/CMEDeck.js +5 -5
  97. package/dist/esm/Column3.js +4 -4
  98. package/dist/esm/ConferenceArticleCard.js +2 -2
  99. package/dist/esm/DeckContent.js +10 -8
  100. package/dist/esm/DeckQueue.js +6 -6
  101. package/dist/esm/{Dfp-8a8fca18.js → Dfp-96b49def.js} +1 -1
  102. package/dist/esm/EventsDeck.js +4 -4
  103. package/dist/esm/ExternalResources.js +7 -7
  104. package/dist/esm/Feature.js +3 -3
  105. package/dist/esm/ForbesHero.js +2 -2
  106. package/dist/esm/GridContent.js +16 -12
  107. package/dist/esm/GridHero.js +2 -2
  108. package/dist/esm/GroupDeck.js +1 -1
  109. package/dist/esm/HamMagazine.js +4 -4
  110. package/dist/esm/Hero.js +1 -1
  111. package/dist/esm/HorizontalHero.js +2 -2
  112. package/dist/esm/IssueContentDeck.js +2 -2
  113. package/dist/esm/IssueDeck.js +2 -2
  114. package/dist/esm/IssueLanding.js +7 -7
  115. package/dist/esm/LeftNav.js +3 -3
  116. package/dist/esm/MasterDeck.js +13 -9
  117. package/dist/esm/NavMagazine.js +4 -4
  118. package/dist/esm/NavNative.js +27 -7
  119. package/dist/esm/OncliveHero.js +2 -2
  120. package/dist/esm/OncliveLargeHero.js +2 -2
  121. package/dist/esm/PartnerDetailListing.js +14 -14
  122. package/dist/esm/PublicationDeck.js +1 -1
  123. package/dist/esm/QueueDeckExpanded.js +15 -11
  124. package/dist/esm/RecentNews.js +2 -2
  125. package/dist/esm/RelatedContent.js +2 -2
  126. package/dist/esm/{SocialSearchComponent-7f14e0f3.js → SocialSearchComponent-677ed3bd.js} +5 -5
  127. package/dist/esm/TaxonomyCard.js +2 -2
  128. package/dist/esm/TemplateNormal.js +3 -3
  129. package/dist/esm/ThumbnailCard.js +1 -1
  130. package/dist/esm/Ustream.js +2 -2
  131. package/dist/esm/VerticalHero.js +2 -2
  132. package/dist/esm/VideoSeriesCard.js +2 -2
  133. package/dist/esm/VideoSeriesListing.js +24 -22
  134. package/dist/esm/View.js +160 -193
  135. package/dist/esm/YahooHero.js +2 -2
  136. package/dist/esm/YoutubeGroup.js +2 -2
  137. package/dist/esm/getQuery.js +2 -2
  138. package/dist/esm/getRelatedArticle.js +122 -155
  139. package/dist/esm/getSerializers.js +6 -6
  140. package/dist/esm/{index-93ec3c59.js → index-0e45a0b2.js} +27 -34
  141. package/dist/esm/{index-ea6b6891.js → index-13927b74.js} +563 -519
  142. package/dist/esm/{index-51a80699.js → index-73819142.js} +19 -20
  143. package/dist/esm/{index-d2f90501.js → index-ef6d5dcf.js} +1 -1
  144. package/dist/esm/{index.es-938a3a58.js → index.es-29c1cef5.js} +1 -3
  145. package/dist/esm/index.js +11 -11
  146. package/dist/esm/{main-0465b2a0.js → main-35ff7b4f.js} +34 -65
  147. package/dist/esm/{moment-12415288.js → moment-e2f9b20c.js} +1 -1
  148. package/dist/esm/timeDifferenceCalc.js +1 -1
  149. package/dist/esm/urlFor.js +1 -1
  150. package/package.json +1 -1
package/dist/esm/View.js CHANGED
@@ -14,19 +14,19 @@ import './web.dom.iterable-8956f9a5.js';
14
14
  import { _ as _typeof } from './typeof-08f2c380.js';
15
15
  import './_is-array-49698029.js';
16
16
  import React__default, { useState, useRef, useEffect } from 'react';
17
- import { l as lib_3 } from './index-93ec3c59.js';
17
+ import { l as lib_3 } from './index-0e45a0b2.js';
18
18
  import 'prop-types';
19
19
  import 'react-bootstrap/Row';
20
20
  import 'react-bootstrap/Col';
21
- import { m as moment } from './moment-12415288.js';
21
+ import { m as moment } from './moment-e2f9b20c.js';
22
22
  import { useRouter } from 'next/router';
23
23
  import './isSymbol-807e927e.js';
24
24
  import './debounce-1a993acf.js';
25
- import { I as InfiniteScroll } from './index.es-938a3a58.js';
25
+ import { I as InfiniteScroll } from './index.es-29c1cef5.js';
26
26
  import 'react-dom';
27
- import './index-51a80699.js';
27
+ import './index-73819142.js';
28
28
  import './index-5f9f807a.js';
29
- import { m as main_39 } from './main-0465b2a0.js';
29
+ import { m as main_36 } from './main-35ff7b4f.js';
30
30
  import './entities-7cc3bf45.js';
31
31
  import { _ as _JSON$stringify } from './stringify-008c8802.js';
32
32
  import { a as _getIterator, _ as _slicedToArray } from './slicedToArray-7021e5df.js';
@@ -35,16 +35,15 @@ import './_set-species-cede29f8.js';
35
35
  import './Segment.js';
36
36
  import './Beam.js';
37
37
  import DFPAdSlot from './AdSlot.js';
38
- import { B as BlockContent } from './BlockContent-a614acdf.js';
38
+ import { B as BlockContent } from './BlockContent-e9b4ddcf.js';
39
39
  import './smoothscroll-4b699764.js';
40
40
  import './GroupDeck.js';
41
41
  import 'react-bootstrap';
42
42
  import './iconBase-602d52fe.js';
43
43
  import './index.esm-29e48d38.js';
44
44
  import Button from 'react-bootstrap/Button';
45
- import { _ as _defineProperty } from './defineProperty-b798470d.js';
46
45
  import Form from 'react-bootstrap/Form';
47
- import { I as InscreenSensor, r as renderAuthor, g as getSerializers } from './index-ea6b6891.js';
46
+ import { I as InscreenSensor, r as renderAuthor, g as getSerializers } from './index-13927b74.js';
48
47
  import './util-7700fc59.js';
49
48
  import './brightcove-react-player-loader.es-83f53e4e.js';
50
49
  import 'react-bootstrap/Pagination';
@@ -140,9 +139,9 @@ var DocumentGroup = function DocumentGroup(_ref) {
140
139
  style: { display: 'flex', flexDirection: 'column', padding: '0 1rem', justifyContent: thumbnailUrl ? 'center' : 'flex-start', alignItems: 'center' } },
141
140
  thumbnailUrl && React__default.createElement('img', { style: { maxWidth: '220px', maxHeight: '100px', marginTop: '1rem' }, src: thumbnailUrl, alt: name }),
142
141
  !thumbnailUrl && React__default.createElement('p', {
143
- style: { maxWidth: '315px', margin: '0', color: 'var(--primary)', textAlign: thumbnailUrl ? 'center' : main_39 ? 'left' : 'right', marginTop: '.25rem' },
142
+ style: { maxWidth: '315px', margin: '0', color: 'var(--primary)', textAlign: thumbnailUrl ? 'center' : main_36 ? 'left' : 'right', marginTop: '.25rem' },
144
143
  dangerouslySetInnerHTML: { __html: name } }),
145
- main_39 && !thumbnailUrl && React__default.createElement(
144
+ main_36 && !thumbnailUrl && React__default.createElement(
146
145
  'style',
147
146
  { jsx: 'true' },
148
147
  '\n a.doc-group {\n display: block !important;\n padding: 0!important;\n }\n '
@@ -249,7 +248,7 @@ var ISI = function ISI(props) {
249
248
  );
250
249
  };
251
250
 
252
- var css = ".RelatedArticles-module_mediaContainer__10h9k {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: nowrap;\r\n margin: 0 -1rem;\r\n}\r\n.RelatedArticles-module_mediaCard__3wQbn {\r\n margin: 0 1rem 1rem;\r\n width: calc(33% - 1rem);\r\n display: column;\r\n flex-direction: row;\r\n margin-bottom: 0.75rem;\r\n padding-bottom: 0.75rem;\r\n border-bottom: none;\r\n}\r\n.RelatedArticles-module_mediaCard__3wQbn:last-child {\r\n border-bottom: none;\r\n}\r\n.RelatedArticles-module_cardTitle__3P-Ib {\r\n font-weight: bold;\r\n color: #252525;\r\n margin-bottom: 0.25rem;\r\n font-size: 15px;\r\n}\r\n.RelatedArticles-module_authorListing__1EFg4 span.RelatedArticles-module_text-muted__3b0zX {\r\n color: #000;\r\n font-weight: bold;\r\n}\r\n.RelatedArticles-module_cardDate__1wOR5 {\r\n color: var(--dark);\r\n display: block;\r\n background: #fff !important;\r\n margin-bottom: 0;\r\n}\r\n.RelatedArticles-module_imgWrapper__5Jx_4 {\r\n display: block;\r\n text-align: center;\r\n margin-bottom: 0.5rem;\r\n}\r\n.RelatedArticles-module_imgWrapper__5Jx_4 img {\r\n height: 135px;\r\n width: 100%;\r\n object-fit: cover;\r\n object-position: center;\r\n}\r\n@media screen and (max-width: 1064px) {\r\n}\r\n@media screen and (max-width: 968px) {\r\n .RelatedArticles-module_mediaContainer__10h9k {\r\n flex-wrap: wrap;\r\n }\r\n .RelatedArticles-module_mediaCard__3wQbn {\r\n width: 100%;\r\n }\r\n .RelatedArticles-module_imgWrapper__5Jx_4 img {\r\n width: 100%;\r\n height: auto;\r\n\r\n max-height: 175px;\r\n object-fit: contain;\r\n margin-bottom: 1rem;\r\n }\r\n}\r\n";
251
+ var css = ".RelatedArticles-module_mediaContainer__10h9k {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: nowrap;\r\n margin: 0 -1rem;\r\n}\r\n.RelatedArticles-module_mediaCard__3wQbn {\r\n margin: 0 1rem 1rem;\r\n width: calc(33% - 1rem);\r\n display: column;\r\n flex-direction: row;\r\n margin-bottom: 0.75rem;\r\n padding-bottom: 0.75rem;\r\n border-bottom: none;\r\n}\r\n.RelatedArticles-module_mediaCard__3wQbn:last-child {\r\n border-bottom: none;\r\n}\r\n.RelatedArticles-module_cardTitle__3P-Ib {\r\n font-weight: bold;\r\n color: #252525;\r\n margin-bottom: 0.25rem;\r\n font-size: 15px;\r\n}\r\n.RelatedArticles-module_authorListing__1EFg4 span.RelatedArticles-module_text-muted__3b0zX {\r\n color: #000;\r\n font-weight: bold;\r\n}\r\n.RelatedArticles-module_cardDate__1wOR5 {\r\n color: var(--dark);\r\n display: block;\r\n background: #fff !important;\r\n margin-bottom: 0;\r\n}\r\n.RelatedArticles-module_imgWrapper__5Jx_4 {\r\n display: block;\r\n text-align: center;\r\n margin-bottom: 0.5rem;\r\n}\r\n.RelatedArticles-module_imgWrapper__5Jx_4 img {\r\n height: 135px;\r\n width: 100%;\r\n object-fit: cover;\r\n object-position: center;\r\n}\r\n@media screen and (max-width: 1064px) {\r\n}\r\n@media screen and (max-width: 968px) {\r\n .RelatedArticles-module_mediaContainer__10h9k {\r\n flex-wrap: wrap;\r\n }\r\n .RelatedArticles-module_imgWrapper__5Jx_4 {\r\n display: none;\r\n }\r\n .RelatedArticles-module_mediaCard__3wQbn {\r\n width: 100%;\r\n margin-bottom: 0.5rem;\r\n padding: 0;\r\n }\r\n .RelatedArticles-module_cardTitle__3P-Ib {\r\n font-size: 0.75rem;\r\n margin-bottom: 0;\r\n }\r\n}\r\n";
253
252
  var styles = { "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" };
254
253
  styleInject(css);
255
254
 
@@ -377,6 +376,7 @@ var Article = function Article(props) {
377
376
  issue = _props$article.issue,
378
377
  source = _props$article.source,
379
378
  documentGroupMapping = _props$article.documentGroupMapping,
379
+ issueGroup = _props$article.issueGroup,
380
380
  showIsi = _props$article.showIsi,
381
381
  isi = _props$article.isi,
382
382
  regionalPages = props.regionalPages,
@@ -391,7 +391,9 @@ var Article = function Article(props) {
391
391
  _props$sponsoredFlag = props.sponsoredFlag,
392
392
  sponsoredFlag = _props$sponsoredFlag === undefined ? false : _props$sponsoredFlag,
393
393
  _props$authorImgHeigh = props.authorImgHeight,
394
- authorImgHeight = _props$authorImgHeigh === undefined ? 270 : _props$authorImgHeigh;
394
+ authorImgHeight = _props$authorImgHeigh === undefined ? 270 : _props$authorImgHeigh,
395
+ _props$refreshFlag = props.refreshFlag,
396
+ refreshFlag = _props$refreshFlag === undefined ? false : _props$refreshFlag;
395
397
 
396
398
  var targeting = getTargeting(props);
397
399
  var onChangeArticle = props.onChangeArticle;
@@ -485,65 +487,76 @@ var Article = function Article(props) {
485
487
  };
486
488
 
487
489
  var RelevantTopics = function RelevantTopics() {
488
- if (content_placement && content_placement.length > 0 || documentGroupMapping) {
489
- return React__default.createElement(
490
- 'div',
491
- { style: { color: '#262626' } },
492
- React__default.createElement(
493
- 'p',
494
- { className: 'mb-0' },
495
- React__default.createElement(
496
- 'b',
497
- null,
498
- 'Related Content:'
499
- )
500
- ),
501
- documentGroupMapping && documentGroupMapping.map(function (documentGroup) {
502
- if (!documentGroup.parent) {
503
- return null;
490
+ if (content_placement && content_placement.length > 0 || documentGroupMapping && documentGroupMapping.length > 0) {
491
+ var relatedLinks = [];
492
+ if (documentGroupMapping && documentGroupMapping.length > 0) {
493
+ documentGroupMapping.forEach(function (documentGroup) {
494
+ if (documentGroup.parent) {
495
+ relatedLinks = [].concat(_toConsumableArray(relatedLinks), [{ label: documentGroup.name, href: cpModificationRequired ? '/' + documentGroup.parent.identifier.current + '/' + documentGroup.path : '/' + documentGroup.path }]);
504
496
  }
505
-
506
- return React__default.createElement(
507
- React__default.Fragment,
508
- null,
509
- React__default.createElement(
510
- 'span',
511
- { className: '' },
512
- React__default.createElement(
513
- 'a',
514
- {
515
- className: 'related-links',
516
- style: { color: 'blue' },
517
- href: cpModificationRequired ? '/' + documentGroup.parent.identifier.current + '/' + documentGroup.path : '/' + documentGroup.path },
518
- documentGroup.name
519
- )
520
- ),
521
- content_placement && content_placement.length ? ' | ' : null
522
- );
523
- }),
524
- content_placement && content_placement.length > 0 ? content_placement.map(function (cp, index) {
497
+ });
498
+ }
499
+ if (content_placement && content_placement.length > 0) {
500
+ content_placement.filter(function (item) {
501
+ return item.path !== 'news';
502
+ }).forEach(function (cp) {
525
503
  var cp_url = cpModificationRequired ? getContentPlacementUrl(cp) : cp.path;
526
504
  var href = '/' + cp_url;
527
- return React__default.createElement(
528
- React__default.Fragment,
529
- { key: index },
530
- React__default.createElement(
505
+ relatedLinks = [].concat(_toConsumableArray(relatedLinks), [{ label: cp.name, href: href }]);
506
+ });
507
+ }
508
+ if (issueGroup && issueGroup.name && issueGroup.identifier && issueGroup.identifier.current && issueGroup.parent && issueGroup.parent.identifier && issueGroup.parent.identifier.current) {
509
+ relatedLinks = [].concat(_toConsumableArray(relatedLinks), [{ label: issueGroup.name, href: '/publications/' + issueGroup.parent.identifier.current + '/' + issueGroup.identifier.current }]);
510
+ }
511
+ if (relatedLinks && relatedLinks.length > 0) {
512
+ return React__default.createElement(
513
+ 'div',
514
+ null,
515
+ relatedLinks.map(function (relatedLink, index) {
516
+ return React__default.createElement(
531
517
  'span',
532
- null,
518
+ { key: index, className: 'related-link' },
533
519
  React__default.createElement(
534
520
  'a',
535
- { className: 'related-links', key: index, href: href, style: { color: 'blue' } },
536
- cp.name
521
+ { className: 'related-links', style: { color: 'blue' }, href: relatedLink.href },
522
+ relatedLink.label
523
+ ),
524
+ React__default.createElement(
525
+ 'style',
526
+ { jsx: 'true' },
527
+ '\n .related-link:not(:first-child):before {\n content: \' | \';\n }\n '
537
528
  )
538
- ),
539
- content_placement.length > index + 1 ? ' | ' : null
540
- );
541
- }) : null
542
- );
529
+ );
530
+ })
531
+ );
532
+ }
533
+ return null;
543
534
  }
544
535
  return null;
545
536
  };
546
537
 
538
+ var RelatedContent = function RelatedContent() {
539
+ return React__default.createElement(
540
+ 'section',
541
+ { id: 'related-content-section', className: 'my-1' },
542
+ React__default.createElement(
543
+ 'p',
544
+ { className: 'mb-0' },
545
+ React__default.createElement(
546
+ 'b',
547
+ null,
548
+ 'Related Content:'
549
+ )
550
+ ),
551
+ React__default.createElement(RelevantTopics, null),
552
+ React__default.createElement(
553
+ 'div',
554
+ { className: 'pt-2' },
555
+ React__default.createElement(RelatedArticle, { articles: article.relatedArticle, client: client })
556
+ )
557
+ );
558
+ };
559
+
547
560
  var form = function form() {
548
561
  return React__default.createElement(
549
562
  React__default.Fragment,
@@ -639,13 +652,13 @@ var Article = function Article(props) {
639
652
  React__default.createElement(
640
653
  'div',
641
654
  { id: 'contextual-native-ad-' + payload._id, className: 'contextual-native-ad' },
642
- React__default.createElement(DFPAdSlot, _extends({}, payload.contextualAD, { refreshFlag: false, checkIsAdFound: previewAd ? null : checkIsAdFound }))
655
+ React__default.createElement(DFPAdSlot, _extends({}, payload.contextualAD, { refreshFlag: refreshFlag, checkIsAdFound: previewAd ? null : checkIsAdFound }))
643
656
  ),
644
657
  React__default.createElement('span', { className: 'clearfix' }),
645
658
  React__default.createElement(
646
659
  'div',
647
660
  { id: 'contextual-video-ad-' + payload._id, className: 'contextual-video-ad' },
648
- React__default.createElement(DFPAdSlot, _extends({}, payload.contextualVideoAD, { refreshFlag: false, checkIsAdFound: checkIsVideoAdFound }))
661
+ React__default.createElement(DFPAdSlot, _extends({}, payload.contextualVideoAD, { refreshFlag: refreshFlag, checkIsAdFound: checkIsVideoAdFound }))
649
662
  ),
650
663
  React__default.createElement(BlockContent, _extends({
651
664
  serializers: getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, null, null, null, targeting),
@@ -711,7 +724,7 @@ var Article = function Article(props) {
711
724
  (visibleFlag || queueData && queueData.length === 1 || !props.infiniteScroll) && React__default.createElement(
712
725
  'div',
713
726
  { id: 'contextual-native-ad-' + payload._id, className: 'contextual-native-ad' },
714
- React__default.createElement(DFPAdSlot, _extends({}, payload.contextualAD, { refreshFlag: false, checkIsAdFound: previewAd ? null : _checkIsAdFound }))
727
+ React__default.createElement(DFPAdSlot, _extends({}, payload.contextualAD, { refreshFlag: refreshFlag, checkIsAdFound: previewAd ? null : _checkIsAdFound }))
715
728
  ),
716
729
  contextualADFlag && React__default.createElement('span', { className: 'clearfix' }),
717
730
  React__default.createElement(BlockContent, _extends({
@@ -754,7 +767,7 @@ var Article = function Article(props) {
754
767
  React__default.createElement(
755
768
  'div',
756
769
  { id: 'contextual-video-ad-' + payload._id, className: 'contextual-video-ad' },
757
- React__default.createElement(DFPAdSlot, _extends({}, payload.contextualVideoAD, { refreshFlag: false, checkIsAdFound: _checkIsAdFound2 }))
770
+ React__default.createElement(DFPAdSlot, _extends({}, payload.contextualVideoAD, { refreshFlag: refreshFlag, checkIsAdFound: _checkIsAdFound2 }))
758
771
  ),
759
772
  React__default.createElement(BlockContent, _extends({
760
773
  serializers: getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, null, null, null, targeting),
@@ -949,7 +962,7 @@ var Article = function Article(props) {
949
962
  React__default.createElement(
950
963
  'div',
951
964
  { className: 'ad-box', style: { textAlign: 'center' } },
952
- main_39 && !sponsoredFlag && props.article.Ads && props.article.Ads.length > 0 && props.article.Ads.map(function (ad, index) {
965
+ main_36 && !sponsoredFlag && props.article.Ads && props.article.Ads.length > 0 && props.article.Ads.map(function (ad, index) {
953
966
  if (index === 0) {
954
967
  return React__default.createElement(
955
968
  'div',
@@ -1002,20 +1015,7 @@ var Article = function Article(props) {
1002
1015
  )
1003
1016
  ),
1004
1017
  React__default.createElement('div', { className: 'clearfix', style: { minHeight: '1px' } }),
1005
- showRelatedArticles && !showIsi && React__default.createElement(
1006
- React__default.Fragment,
1007
- null,
1008
- React__default.createElement(
1009
- 'div',
1010
- null,
1011
- React__default.createElement(RelevantTopics, null)
1012
- ),
1013
- React__default.createElement(
1014
- 'div',
1015
- { className: 'pt-2' },
1016
- React__default.createElement(RelatedArticle, { articles: article.relatedArticle, client: client })
1017
- )
1018
- )
1018
+ showRelatedArticles && !showIsi && React__default.createElement(RelatedContent, null)
1019
1019
  ),
1020
1020
  renderIsiContent(props.article)
1021
1021
  ),
@@ -1028,7 +1028,7 @@ var Article = function Article(props) {
1028
1028
  })
1029
1029
  )
1030
1030
  ),
1031
- main_39 && !sponsoredFlag && props.article.Ads && props.article.Ads.length > 0 && props.article.Ads.map(function (ad, index) {
1031
+ main_36 && !sponsoredFlag && props.article.Ads && props.article.Ads.length > 0 && props.article.Ads.map(function (ad, index) {
1032
1032
  if (index > 0) {
1033
1033
  return React__default.createElement(
1034
1034
  'div',
@@ -1101,7 +1101,7 @@ var ArticleQueue = function ArticleQueue(props) {
1101
1101
  });
1102
1102
  var targeting = getTargeting({ article: activeArticle, cpModificationRequired: cpModificationRequired, position: props.position, prevUrl: prevUrl });
1103
1103
 
1104
- if (!main_39) {
1104
+ if (!main_36) {
1105
1105
  lib_3.getGoogletag().then(function (googletag) {
1106
1106
  if (window.googletag && googletag.pubadsReady) {
1107
1107
  var slots = googletag.pubads().getSlots();
@@ -1119,7 +1119,7 @@ var ArticleQueue = function ArticleQueue(props) {
1119
1119
  });
1120
1120
  }
1121
1121
  //Refresh leaderboard ad on mobile
1122
- if (main_39) {
1122
+ if (main_36) {
1123
1123
  var leaderboardSlotId = '';
1124
1124
  lib_3.getGoogletag().then(function (googletag) {
1125
1125
  if (window.googletag && googletag.pubadsReady) {
@@ -1180,50 +1180,77 @@ var ArticleQueue = function ArticleQueue(props) {
1180
1180
  }, 1000);
1181
1181
  }, [queueData.length]);
1182
1182
 
1183
- var loadmore = function loadmore() {
1184
- var query = props.relatedArticleQuery;
1185
- var params = props.params;
1186
- if (queueData && queueData.length < maxListLength) {
1187
- params.index = queueData.length - 1;
1188
- props.client.fetch(query, params).then(function () {
1189
- var _ref = _asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee(article) {
1190
- var startingIndex, endingIndex, targeting;
1191
- return regenerator.wrap(function _callee$(_context) {
1192
- while (1) {
1193
- switch (_context.prev = _context.next) {
1194
- case 0:
1195
- if (!(article && article._id)) {
1196
- _context.next = 9;
1197
- break;
1198
- }
1199
-
1200
- //query next 4 related article without repeating previous 4 related articles
1201
- startingIndex = queueData.length + 1;
1202
- endingIndex = startingIndex + 2;
1203
- _context.next = 5;
1204
- return getRelatedArticle(null, props.client, article, prevUrl, startingIndex + '..' + endingIndex);
1205
-
1206
- case 5:
1207
- article.relatedArticle = _context.sent;
1208
- targeting = getTargeting({ article: article, cpModificationRequired: cpModificationRequired, prevUrl: prevUrl });
1209
-
1210
- article.Ads = Ads.getRightItems(targeting);
1211
- setQueueData([].concat(_toConsumableArray(queueData), [article]));
1212
-
1213
- case 9:
1214
- case 'end':
1215
- return _context.stop();
1183
+ var loadmore = function () {
1184
+ var _ref = _asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee() {
1185
+ var index, article, startingIndex, endingIndex, targeting;
1186
+ return regenerator.wrap(function _callee$(_context) {
1187
+ while (1) {
1188
+ switch (_context.prev = _context.next) {
1189
+ case 0:
1190
+ if (!(queueData && queueData.length < maxListLength)) {
1191
+ _context.next = 27;
1192
+ break;
1216
1193
  }
1217
- }
1218
- }, _callee, _this);
1219
- }));
1220
1194
 
1221
- return function (_x) {
1222
- return _ref.apply(this, arguments);
1223
- };
1224
- }());
1225
- }
1226
- };
1195
+ index = queueData.length - 1;
1196
+ article = null;
1197
+ _context.prev = 3;
1198
+ _context.next = 6;
1199
+ return getRelatedArticle(null, props.client, props.article, prevUrl, index);
1200
+
1201
+ case 6:
1202
+ article = _context.sent;
1203
+ _context.next = 12;
1204
+ break;
1205
+
1206
+ case 9:
1207
+ _context.prev = 9;
1208
+ _context.t0 = _context['catch'](3);
1209
+
1210
+ console.error(_context.t0);
1211
+
1212
+ case 12:
1213
+ if (!(article && article._id)) {
1214
+ _context.next = 27;
1215
+ break;
1216
+ }
1217
+
1218
+ //query next 4 related article without repeating previous 4 related articles
1219
+ startingIndex = queueData.length + 1;
1220
+ endingIndex = startingIndex + 2;
1221
+ _context.prev = 15;
1222
+ _context.next = 18;
1223
+ return getRelatedArticle(null, props.client, props.article, prevUrl, startingIndex + '..' + endingIndex);
1224
+
1225
+ case 18:
1226
+ article.relatedArticle = _context.sent;
1227
+ _context.next = 24;
1228
+ break;
1229
+
1230
+ case 21:
1231
+ _context.prev = 21;
1232
+ _context.t1 = _context['catch'](15);
1233
+
1234
+ console.error(_context.t1);
1235
+
1236
+ case 24:
1237
+ targeting = getTargeting({ article: article, cpModificationRequired: cpModificationRequired, prevUrl: prevUrl });
1238
+
1239
+ article.Ads = Ads.getRightItems(targeting);
1240
+ setQueueData([].concat(_toConsumableArray(queueData), [article]));
1241
+
1242
+ case 27:
1243
+ case 'end':
1244
+ return _context.stop();
1245
+ }
1246
+ }
1247
+ }, _callee, _this, [[3, 9], [15, 21]]);
1248
+ }));
1249
+
1250
+ return function loadmore() {
1251
+ return _ref.apply(this, arguments);
1252
+ };
1253
+ }();
1227
1254
 
1228
1255
  var changeMeta = function changeMeta(meta) {
1229
1256
  document.title = meta.shareTitle;
@@ -1295,74 +1322,6 @@ var ArticleQueue = function ArticleQueue(props) {
1295
1322
  );
1296
1323
  };
1297
1324
 
1298
- var Articles = function Articles(props) {
1299
- var _extends2;
1300
-
1301
- var videoAccountIDs = props.videoAccountIDs,
1302
- Ads = props.Ads,
1303
- cpModificationRequired = props.cpModificationRequired,
1304
- Settings = props.Settings,
1305
- ISIContent = props.ISIContent,
1306
- prevUrl = props.prevUrl,
1307
- setActiveArticle = props.setActiveArticle,
1308
- article = props.article,
1309
- client = props.client,
1310
- relatedArticleQuery = props.relatedArticleQuery,
1311
- Website = props.Website,
1312
- pageview = props.pageview,
1313
- shareOptions = props.shareOptions,
1314
- WAds = props.WAds,
1315
- regionalPages = props.regionalPages,
1316
- nationalPage = props.nationalPage,
1317
- canonicalTag = props.canonicalTag;
1318
- var taxonomyMapping = article.taxonomyMapping,
1319
- _article$url = article.url;
1320
- _article$url = _article$url === undefined ? {
1321
- current: null
1322
- } : _article$url;
1323
- var url = _article$url.current,
1324
- content_placement = article.content_placement;
1325
-
1326
-
1327
- var taxonomy = [];
1328
- content_placement.forEach(function (_ref2) {
1329
- var path = _ref2.path,
1330
- _id = _ref2._id;
1331
-
1332
- var prev_url_to_check = prevUrl;
1333
- if (prev_url_to_check.includes('?')) {
1334
- prev_url_to_check = prev_url_to_check.split('?')[0];
1335
- }
1336
- if (prev_url_to_check.endsWith(path)) taxonomy.push(_id);
1337
- });
1338
-
1339
- if (taxonomy.length === 0) {
1340
- taxonomy = taxonomyMapping.map(function (_ref3) {
1341
- var _ref = _ref3._ref;
1342
- return _ref;
1343
- });
1344
- }
1345
-
1346
- var params = {
1347
- url: url,
1348
- taxonomy: taxonomy,
1349
- index: 0
1350
- };
1351
-
1352
- return React__default.createElement(ArticleQueue, _extends((_extends2 = {
1353
- client: client,
1354
- params: params,
1355
- relatedArticleQuery: relatedArticleQuery,
1356
- website: Website,
1357
- checkSponsered: true,
1358
- pageview: pageview,
1359
- shareOptions: shareOptions,
1360
- Ads: WAds,
1361
- regionalPages: regionalPages,
1362
- nationalPage: nationalPage
1363
- }, _defineProperty(_extends2, 'pageview', pageview), _defineProperty(_extends2, 'onVote', function onVote() {}), _defineProperty(_extends2, 'ISIContent', ISIContent), _defineProperty(_extends2, 'videoAccountIDs', videoAccountIDs), _defineProperty(_extends2, 'sponsoredTaxonomies', []), _defineProperty(_extends2, 'cpModificationRequired', cpModificationRequired), _defineProperty(_extends2, 'Settings', Settings), _defineProperty(_extends2, 'canonicalTag', canonicalTag), _extends2), props));
1364
- };
1365
-
1366
1325
  var _this$1 = undefined;
1367
1326
 
1368
1327
  var View = function View(props) {
@@ -1541,7 +1500,15 @@ var View = function View(props) {
1541
1500
  props.article.seriesDetail && props.article.seriesDetail.nextUrl && React__default.createElement('link', { rel: 'next', href: props.article.seriesDetail.nextUrl })
1542
1501
  )
1543
1502
  ),
1544
- !needInfiniteScroll ? React__default.createElement(Article, _extends({ infiniteScroll: false, showRelatedArticles: showRelatedArticles }, props)) : React__default.createElement(Articles, _extends({ infiniteScroll: true, showRelatedArticles: showRelatedArticles, canonicalTag: canonicalTag }, props))
1503
+ !needInfiniteScroll ? React__default.createElement(Article, _extends({ infiniteScroll: false, showRelatedArticles: showRelatedArticles }, props)) : React__default.createElement(ArticleQueue, _extends({
1504
+ infiniteScroll: true,
1505
+ showRelatedArticles: showRelatedArticles,
1506
+ canonicalTag: canonicalTag,
1507
+ checkSponsered: true,
1508
+ Ads: props.WAds,
1509
+ onVote: function onVote() {},
1510
+ sponsoredTaxonomies: []
1511
+ }, props))
1545
1512
  );
1546
1513
  };
1547
1514
 
@@ -5,9 +5,9 @@ import './core.get-iterator-method-54d2e411.js';
5
5
  import './web.dom.iterable-8956f9a5.js';
6
6
  import React__default from 'react';
7
7
  import 'prop-types';
8
- import { m as moment } from './moment-12415288.js';
8
+ import { m as moment } from './moment-e2f9b20c.js';
9
9
  import 'react-dom';
10
- import { i as imageUrlBuilder } from './index-51a80699.js';
10
+ import { i as imageUrlBuilder } from './index-73819142.js';
11
11
  import { L as LazyLoad } from './index-5f9f807a.js';
12
12
  import { c as clean_html_1 } from './entities-7cc3bf45.js';
13
13
  import './slicedToArray-7021e5df.js';
@@ -10,7 +10,7 @@ import './_is-array-49698029.js';
10
10
  import React__default, { useRef, useState, useEffect } from 'react';
11
11
  import 'prop-types';
12
12
  import 'react-dom';
13
- import { i as imageUrlBuilder } from './index-51a80699.js';
13
+ import { i as imageUrlBuilder } from './index-73819142.js';
14
14
  import { L as LazyLoad } from './index-5f9f807a.js';
15
15
  import { _ as _slicedToArray } from './slicedToArray-7021e5df.js';
16
16
  import { s as smoothscroll, g as getYoutubeId } from './smoothscroll-4b699764.js';
@@ -69,7 +69,7 @@ var YoutubeGroup = function YoutubeGroup(props) {
69
69
  var tileHeight = tileArray.current.map(function (tile) {
70
70
  return tile.scrollHeight;
71
71
  });
72
- console.log(tileArray.current);
72
+
73
73
  for (var ele in tileArray.current) {
74
74
  var eleHeight = tileHeight[ele] < 185 ? 185 : tileHeight[ele];
75
75
  tileArray.current[ele].style.height = eleHeight + 'px';
@@ -8,9 +8,9 @@ var getQuery = function getQuery(type) {
8
8
 
9
9
  switch (type) {
10
10
  case 'related':
11
- return '*[\n _type == "article"\n && defined(title)\n && defined(url)\n && !(_id in path("drafts.**"))\n && is_visible == true\n && defined(published) \n && dateTime(published) <= dateTime(now())\n && passwordLock!=true\n && taxonomyMapping[]._ref in $taxonomy\n && taxonomyMapping[].disableAds != \'true\'\n && contentCategory->.name != \'Poll\'\n && contentCategory->.name != \'Slideshows\'\n && contentCategory->.disableAds != \'true\'\n && ExcludeFromInfiniteScroll !=true\n && url.current != $url\n && !defined(body[].videos)\n ' + conditions + '\n ]| order(published desc)[' + (articleCount ? articleCount : '$index') + ']{\n ' + params + '\n title,\n published,\n summary,\n thumbnail,\n ...,\n passwordLock,\n password,\n "authorDetails": authorMapping[]->{ displayName, url, profileImage, biography },\n body[] {\n ...,\n upload_doc {\n _type,\n asset->\n },\n uploadAudio {\n _type,\n asset->\n }\n },\n \'content_placement\': taxonomyMapping[]-> {\n \'ancestor\': parent->parent->identifier,\n \'parent\': parent->identifier,\n \'name\': name,\n \'path\': identifier,\n disableAds\n },\n documentGroup-> {\n name,\n thumbnail,\n parent->{...,parent->},\n \'path\': identifier.current\n },\n documentGroupMapping[]-> {\n name,\n thumbnail,\n parent->{...,parent->},\n \'path\': identifier.current\n },\n \'issue\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.issueGroup._ref][0] {\n name,\n \'path\': identifier.current,\n \'publication\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.parent._ref][0] {\n name,\n \'path\': identifier.current\n },\n \'url\' : pdf.asset-> url\n }\n }';
11
+ return '*[\n _type == "article"\n && defined(title)\n && defined(url)\n && !(_id in path("drafts.**"))\n && is_visible == true\n && defined(published) \n && dateTime(published) <= dateTime(now())\n && passwordLock!=true\n && taxonomyMapping[]._ref in $taxonomy\n && taxonomyMapping[].disableAds != \'true\'\n && contentCategory->.name != \'Poll\'\n && contentCategory->.name != \'Slideshows\'\n && contentCategory->.disableAds != \'true\'\n && ExcludeFromInfiniteScroll !=true\n && url.current != $url\n && !defined(body[].videos)\n ' + conditions + '\n ]| order(published desc)[' + (articleCount ? articleCount : '$index') + ']{\n ' + params + '\n title,\n published,\n summary,\n thumbnail,\n ...,\n passwordLock,\n password,\n "authorDetails": authorMapping[]->{ displayName, url, profileImage, biography },\n body[] {\n ...,\n upload_doc {\n _type,\n asset->\n },\n uploadAudio {\n _type,\n asset->\n }\n },\n \'content_placement\': taxonomyMapping[]-> {\n _id,\n \'ancestor\': parent->parent->identifier,\n \'parent\': parent->identifier,\n \'name\': name,\n \'path\': identifier,\n disableAds\n },\n documentGroup-> {\n name,\n thumbnail,\n parent->{...,parent->},\n \'path\': identifier.current\n },\n documentGroupMapping[]-> {\n _id,\n name,\n thumbnail,\n parent->{...,parent->},\n \'path\': identifier.current\n },\n \'issue\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.issueGroup._ref][0] {\n name,\n \'path\': identifier.current,\n \'publication\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.parent._ref][0] {\n name,\n \'path\': identifier.current\n },\n \'url\' : pdf.asset-> url\n }\n }';
12
12
  case 'article':
13
- return '*[\n _type == "article"\n && !(_id in path("drafts.**"))\n && defined(title)\n && defined(url)\n && url.current == $url\n ' + conditions + '\n ][0]{\n ' + params + '\n title,\n published,\n summary,\n thumbnail,\n ...,\n passwordLock,\n password,\n "authorDetails": authorMapping[]->{ displayName, url, profileImage, biography },\n body[] {\n ...,\n upload_doc {\n _type,\n asset->\n },\n uploadAudio {\n _type,\n asset->\n },\n medias[]{\n ...,\n upload_doc {\n _type,\n asset-> \n } \n },\n articles[]{\n ...,\n "authorDetails": authorMapping[]->{ displayName, url, profileImage, biography },\n text[]{\n ...,\n upload_doc {\n _type,\n asset->\n },\n uploadAudio {\n _type,\n asset->\n },\n }\n }\n },\n \'content_placement\': taxonomyMapping[]-> {\n ...,\n \'ancestor\': parent->parent->identifier,\n \'parent\': parent->identifier,\n \'name\': name,\n \'path\': identifier\n },\n documentGroup-> {\n name,\n thumbnail,\n parent->{...,parent->},\n \'path\': identifier.current\n },\n documentGroupMapping[]-> {\n name,\n thumbnail,\n parent->{...,parent->},\n \'path\': identifier.current\n },\n \'category\':contentCategory->{\n name,\n disableAds\n },\n \'issue\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.issueGroup._ref][0] {\n name,\n volume,\n \'issueNumber\': number,\n \'articleSource\': source,\n \'path\': identifier.current,\n \'publication\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.parent._ref][0] {\n name,\n \'path\': identifier.current\n },\n \'url\' : pdf.asset-> url\n }\n\n }';
13
+ return '*[\n _type == "article"\n && !(_id in path("drafts.**"))\n && defined(title)\n && defined(url)\n && url.current == $url\n ' + conditions + '\n ][0]{\n ' + params + '\n title,\n published,\n summary,\n thumbnail,\n ...,\n passwordLock,\n password,\n issueGroup-> { _id, name, identifier, parent-> },\n "authorDetails": authorMapping[]->{ displayName, url, profileImage, biography },\n body[] {\n ...,\n upload_doc {\n _type,\n asset->\n },\n uploadAudio {\n _type,\n asset->\n },\n medias[]{\n ...,\n upload_doc {\n _type,\n asset-> \n } \n },\n articles[]{\n ...,\n "authorDetails": authorMapping[]->{ displayName, url, profileImage, biography },\n text[]{\n ...,\n upload_doc {\n _type,\n asset->\n },\n uploadAudio {\n _type,\n asset->\n },\n }\n }\n },\n \'content_placement\': taxonomyMapping[]-> {\n ...,\n \'ancestor\': parent->parent->identifier,\n \'parent\': parent->identifier,\n \'name\': name,\n \'path\': identifier\n },\n documentGroup-> {\n name,\n thumbnail,\n parent->{...,parent->},\n \'path\': identifier.current\n },\n documentGroupMapping[]-> {\n _id,\n name,\n thumbnail,\n parent->{...,parent->},\n \'path\': identifier.current\n },\n \'category\':contentCategory->{\n name,\n disableAds\n },\n \'issue\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.issueGroup._ref][0] {\n name,\n volume,\n \'issueNumber\': number,\n \'articleSource\': source,\n \'path\': identifier.current,\n \'publication\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.parent._ref][0] {\n name,\n \'path\': identifier.current\n },\n \'url\' : pdf.asset-> url\n }\n\n }';
14
14
  case 'publication':
15
15
  return '*[_type == \'publication\'\n && identifier.current == $publication\n ' + conditions + '][0] {\n ' + params + '\n ...,\n \'issues\': *[_type == \'publication\'\n && is_visible\n && references(^._id)\n && defined(identifier)] {\n ...,\n pdf{asset->}\n } | order(year desc, month desc)\n }';
16
16
  case 'issue':