@mjhls/mjh-framework 1.0.665-beta.4 → 1.0.665

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 (147) hide show
  1. package/dist/cjs/AD.js +1 -1
  2. package/dist/cjs/AD300x250.js +3 -3
  3. package/dist/cjs/AD300x250x600.js +3 -3
  4. package/dist/cjs/AD728x90.js +4 -4
  5. package/dist/cjs/ADFloatingFooter.js +2 -2
  6. package/dist/cjs/ADGutter.js +2 -2
  7. package/dist/cjs/ADSkyscraper.js +2 -2
  8. package/dist/cjs/ADSponsoredResources.js +2 -2
  9. package/dist/cjs/ADWebcast.js +2 -2
  10. package/dist/cjs/ADWelcome.js +2 -2
  11. package/dist/cjs/AdSlot.js +2 -2
  12. package/dist/cjs/AdSlotsProvider.js +1 -1
  13. package/dist/cjs/ArticleCarousel.js +3 -3
  14. package/dist/cjs/ArticleSeriesListing.js +4 -4
  15. package/dist/cjs/Auth.js +507 -256
  16. package/dist/cjs/{BlockContent-091a991f.js → BlockContent-88f69acd.js} +1 -1
  17. package/dist/cjs/CMEDeck.js +5 -5
  18. package/dist/cjs/Column3.js +4 -4
  19. package/dist/cjs/ConferenceArticleCard.js +2 -2
  20. package/dist/cjs/DeckContent.js +7 -7
  21. package/dist/cjs/DeckQueue.js +6 -6
  22. package/dist/cjs/{Dfp-f6a18ed2.js → Dfp-b2bc3b97.js} +1 -1
  23. package/dist/cjs/EventsDeck.js +5 -5
  24. package/dist/cjs/ExternalResources.js +7 -7
  25. package/dist/cjs/Feature.js +3 -3
  26. package/dist/cjs/ForbesHero.js +2 -2
  27. package/dist/cjs/GridContent.js +10 -10
  28. package/dist/cjs/GridHero.js +2 -2
  29. package/dist/cjs/GroupDeck.js +1 -1
  30. package/dist/cjs/HamMagazine.js +4 -4
  31. package/dist/cjs/Hero.js +1 -1
  32. package/dist/cjs/HorizontalHero.js +2 -2
  33. package/dist/cjs/IssueContentDeck.js +2 -2
  34. package/dist/cjs/IssueDeck.js +2 -2
  35. package/dist/cjs/IssueLanding.js +7 -7
  36. package/dist/cjs/LeftNav.js +2 -2
  37. package/dist/cjs/MasterDeck.js +8 -8
  38. package/dist/cjs/NavMagazine.js +4 -4
  39. package/dist/cjs/NavNative.js +3 -3
  40. package/dist/cjs/OncliveHero.js +2 -2
  41. package/dist/cjs/OncliveLargeHero.js +2 -2
  42. package/dist/cjs/PartnerDetailListing.js +15 -1212
  43. package/dist/cjs/PublicationDeck.js +1 -1
  44. package/dist/cjs/QueueDeckExpanded.js +9 -9
  45. package/dist/cjs/RecentNews.js +2 -2
  46. package/dist/cjs/RelatedContent.js +2 -2
  47. package/dist/cjs/{SocialSearchComponent-81a50f81.js → SocialSearchComponent-962b1344.js} +5 -5
  48. package/dist/cjs/TaxonomyCard.js +2 -2
  49. package/dist/cjs/TemplateNormal.js +3 -3
  50. package/dist/cjs/ThumbnailCard.js +1 -1
  51. package/dist/cjs/Ustream.js +2 -2
  52. package/dist/cjs/VerticalHero.js +2 -2
  53. package/dist/cjs/VideoSeriesCard.js +2 -2
  54. package/dist/cjs/VideoSeriesListing.js +3 -3
  55. package/dist/cjs/View.js +111 -269
  56. package/dist/cjs/YahooHero.js +2 -2
  57. package/dist/cjs/YoutubeGroup.js +1 -1
  58. package/dist/cjs/getQuery.js +2 -2
  59. package/dist/cjs/getRelatedArticle.js +5 -354
  60. package/dist/cjs/getSerializers.js +6 -6
  61. package/dist/cjs/{getTargeting-9af0ef69.js → getTargeting-fee8c429.js} +2 -2
  62. package/dist/cjs/getTargeting.js +1 -1
  63. package/dist/cjs/{index-fa8ed292.js → index-2d0a4911.js} +34 -27
  64. package/dist/cjs/{index-3294d3bc.js → index-5be2866f.js} +1 -1
  65. package/dist/cjs/{index-bc3e2d5c.js → index-6f1ee5f0.js} +462 -450
  66. package/dist/cjs/{index-be0c82be.js → index-b5eb3ff8.js} +20 -19
  67. package/dist/cjs/{index.es-9110add6.js → index.es-ab3f2690.js} +3 -1
  68. package/dist/cjs/index.js +16 -15
  69. package/dist/cjs/{main-a4cb15bb.js → main-b6c96c8d.js} +67 -36
  70. package/dist/cjs/{moment-575fe24c.js → moment-66a6a284.js} +1 -1
  71. package/dist/cjs/urlFor.js +1 -1
  72. package/dist/esm/AD.js +1 -1
  73. package/dist/esm/AD300x250.js +3 -3
  74. package/dist/esm/AD300x250x600.js +3 -3
  75. package/dist/esm/AD728x90.js +4 -4
  76. package/dist/esm/ADFloatingFooter.js +2 -2
  77. package/dist/esm/ADGutter.js +2 -2
  78. package/dist/esm/ADSkyscraper.js +2 -2
  79. package/dist/esm/ADSponsoredResources.js +2 -2
  80. package/dist/esm/ADWebcast.js +2 -2
  81. package/dist/esm/ADWelcome.js +2 -2
  82. package/dist/esm/AdSlot.js +2 -2
  83. package/dist/esm/AdSlotsProvider.js +1 -1
  84. package/dist/esm/ArticleCarousel.js +1 -1
  85. package/dist/esm/ArticleSeriesListing.js +4 -4
  86. package/dist/esm/Auth.js +499 -248
  87. package/dist/esm/{BlockContent-e9b4ddcf.js → BlockContent-a614acdf.js} +1 -1
  88. package/dist/esm/CMEDeck.js +5 -5
  89. package/dist/esm/Column3.js +4 -4
  90. package/dist/esm/ConferenceArticleCard.js +2 -2
  91. package/dist/esm/DeckContent.js +7 -7
  92. package/dist/esm/DeckQueue.js +6 -6
  93. package/dist/esm/{Dfp-96b49def.js → Dfp-8a8fca18.js} +1 -1
  94. package/dist/esm/EventsDeck.js +5 -5
  95. package/dist/esm/ExternalResources.js +7 -7
  96. package/dist/esm/Feature.js +3 -3
  97. package/dist/esm/ForbesHero.js +2 -2
  98. package/dist/esm/GridContent.js +10 -10
  99. package/dist/esm/GridHero.js +2 -2
  100. package/dist/esm/GroupDeck.js +1 -1
  101. package/dist/esm/HamMagazine.js +4 -4
  102. package/dist/esm/Hero.js +1 -1
  103. package/dist/esm/HorizontalHero.js +2 -2
  104. package/dist/esm/IssueContentDeck.js +2 -2
  105. package/dist/esm/IssueDeck.js +2 -2
  106. package/dist/esm/IssueLanding.js +7 -7
  107. package/dist/esm/LeftNav.js +2 -2
  108. package/dist/esm/MasterDeck.js +8 -8
  109. package/dist/esm/NavMagazine.js +4 -4
  110. package/dist/esm/NavNative.js +3 -3
  111. package/dist/esm/OncliveHero.js +2 -2
  112. package/dist/esm/OncliveLargeHero.js +2 -2
  113. package/dist/esm/PartnerDetailListing.js +13 -1209
  114. package/dist/esm/PublicationDeck.js +1 -1
  115. package/dist/esm/QueueDeckExpanded.js +9 -9
  116. package/dist/esm/RecentNews.js +2 -2
  117. package/dist/esm/RelatedContent.js +2 -2
  118. package/dist/esm/{SocialSearchComponent-55960ec4.js → SocialSearchComponent-75527dfe.js} +5 -5
  119. package/dist/esm/TaxonomyCard.js +2 -2
  120. package/dist/esm/TemplateNormal.js +3 -3
  121. package/dist/esm/ThumbnailCard.js +1 -1
  122. package/dist/esm/Ustream.js +2 -2
  123. package/dist/esm/VerticalHero.js +2 -2
  124. package/dist/esm/VideoSeriesCard.js +2 -2
  125. package/dist/esm/VideoSeriesListing.js +3 -3
  126. package/dist/esm/View.js +84 -242
  127. package/dist/esm/YahooHero.js +2 -2
  128. package/dist/esm/YoutubeGroup.js +1 -1
  129. package/dist/esm/getQuery.js +2 -2
  130. package/dist/esm/getRelatedArticle.js +5 -354
  131. package/dist/esm/getSerializers.js +6 -6
  132. package/dist/esm/{index-6d49c905.js → index-3a33f7d6.js} +462 -450
  133. package/dist/esm/{index-73819142.js → index-51a80699.js} +20 -19
  134. package/dist/esm/{index-0e45a0b2.js → index-93ec3c59.js} +34 -27
  135. package/dist/esm/{index-ef6d5dcf.js → index-d2f90501.js} +1 -1
  136. package/dist/esm/{index.es-29c1cef5.js → index.es-938a3a58.js} +3 -1
  137. package/dist/esm/index.js +14 -13
  138. package/dist/esm/{main-5d1e4bd3.js → main-0465b2a0.js} +65 -34
  139. package/dist/esm/{moment-e2f9b20c.js → moment-12415288.js} +1 -1
  140. package/dist/esm/urlFor.js +1 -1
  141. package/package.json +1 -1
  142. package/dist/cjs/index-bd6c9f56.js +0 -211
  143. package/dist/esm/index-db3bb315.js +0 -207
  144. /package/dist/cjs/{ADInfeed-388ec28a.js → ADInfeed-9735aff2.js} +0 -0
  145. /package/dist/cjs/{ADlgInfeed-5548ff47.js → ADlgInfeed-6bd11848.js} +0 -0
  146. /package/dist/esm/{ADInfeed-eae0af19.js → ADInfeed-9140aa7d.js} +0 -0
  147. /package/dist/esm/{ADlgInfeed-2f4c7a7c.js → ADlgInfeed-7656ecd1.js} +0 -0
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, useEffect } from 'react';
17
- import { l as lib_3 } from './index-0e45a0b2.js';
17
+ import { l as lib_3 } from './index-93ec3c59.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-e2f9b20c.js';
21
+ import { m as moment } from './moment-12415288.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-29c1cef5.js';
25
+ import { I as InfiniteScroll } from './index.es-938a3a58.js';
26
26
  import 'react-dom';
27
- import './index-73819142.js';
27
+ import './index-51a80699.js';
28
28
  import './index-5f9f807a.js';
29
- import { m as main_36 } from './main-5d1e4bd3.js';
29
+ import { m as main_39 } from './main-0465b2a0.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';
@@ -34,14 +34,14 @@ import { a as _asyncToGenerator, r as regenerator } from './asyncToGenerator-7c6
34
34
  import './_set-species-cede29f8.js';
35
35
  import './beam-681a9749.js';
36
36
  import DFPAdSlot from './AdSlot.js';
37
- import { B as BlockContent } from './BlockContent-e9b4ddcf.js';
37
+ import { B as BlockContent } from './BlockContent-a614acdf.js';
38
38
  import './smoothscroll-4b699764.js';
39
39
  import './GroupDeck.js';
40
40
  import 'react-bootstrap';
41
41
  import Button from 'react-bootstrap/Button';
42
42
  import { _ as _defineProperty } from './defineProperty-b798470d.js';
43
43
  import Form from 'react-bootstrap/Form';
44
- import { I as InscreenSensor, r as renderAuthor, g as getSerializers } from './index-6d49c905.js';
44
+ import { I as InscreenSensor, r as renderAuthor, g as getSerializers } from './index-3a33f7d6.js';
45
45
  import './util-7700fc59.js';
46
46
  import './brightcove-react-player-loader.es-83f53e4e.js';
47
47
  import 'react-bootstrap/Pagination';
@@ -52,9 +52,9 @@ import FormControl from 'react-bootstrap/FormControl';
52
52
  import { _ as _Object$keys } from './keys-fc2d4c34.js';
53
53
  import 'react-bootstrap/Dropdown';
54
54
  import getSeriesDetail from './getSeriesDetail.js';
55
- import './index-db3bb315.js';
56
- import getRelatedArticle from './getRelatedArticle.js';
55
+ import 'nookies';
57
56
  import getQuery from './getQuery.js';
57
+ import getRelatedArticle from './getRelatedArticle.js';
58
58
  import { g as getTargeting, a as getContentPlacementUrl } from './getTargeting-2acdec91.js';
59
59
  import getKeywords from './getKeywords.js';
60
60
  import urlFor from './urlFor.js';
@@ -135,9 +135,9 @@ var DocumentGroup = function DocumentGroup(_ref) {
135
135
  style: { display: 'flex', flexDirection: 'column', padding: '0 1rem', justifyContent: thumbnailUrl ? 'center' : 'flex-start', alignItems: 'center' } },
136
136
  thumbnailUrl && React__default.createElement('img', { style: { maxWidth: '220px', maxHeight: '100px', marginTop: '1rem' }, src: thumbnailUrl, alt: name }),
137
137
  !thumbnailUrl && React__default.createElement('p', {
138
- style: { maxWidth: '315px', margin: '0', color: 'var(--primary)', textAlign: thumbnailUrl ? 'center' : main_36 ? 'left' : 'right', marginTop: '.25rem' },
138
+ style: { maxWidth: '315px', margin: '0', color: 'var(--primary)', textAlign: thumbnailUrl ? 'center' : main_39 ? 'left' : 'right', marginTop: '.25rem' },
139
139
  dangerouslySetInnerHTML: { __html: name } }),
140
- main_36 && !thumbnailUrl && React__default.createElement(
140
+ main_39 && !thumbnailUrl && React__default.createElement(
141
141
  'style',
142
142
  { jsx: 'true' },
143
143
  '\n a.doc-group {\n display: block !important;\n padding: 0!important;\n }\n '
@@ -182,7 +182,7 @@ var findIndex = function findIndex(arr) {
182
182
  return indexes;
183
183
  };
184
184
 
185
- 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 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 background-color: #cccccc;\r\n margin-bottom: 0.5rem;\r\n padding: 0.5rem;\r\n border-radius: 0.25rem;\r\n }\r\n .RelatedArticles-module_imgWrapper__5Jx_4 {\r\n display: none;\r\n }\r\n}\r\n";
185
+ 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";
186
186
  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" };
187
187
  styleInject(css);
188
188
 
@@ -403,56 +403,10 @@ var Article = function Article(props) {
403
403
  };
404
404
 
405
405
  var RelevantTopics = function RelevantTopics() {
406
- if (content_placement && content_placement.length > 0 || documentGroupMapping && documentGroupMapping.length > 0) {
407
- var relatedLinks = [];
408
- if (documentGroupMapping && documentGroupMapping.length > 0) {
409
- documentGroupMapping.forEach(function (documentGroup) {
410
- if (documentGroup.parent) {
411
- relatedLinks = [].concat(_toConsumableArray(relatedLinks), [{ label: documentGroup.name, href: cpModificationRequired ? '/' + documentGroup.parent.identifier.current + '/' + documentGroup.path : '/' + documentGroup.path }]);
412
- }
413
- });
414
- }
415
- if (content_placement && content_placement.length > 0) {
416
- content_placement.filter(function (item) {
417
- return item.path !== 'news';
418
- }).forEach(function (cp) {
419
- var cp_url = cpModificationRequired ? getContentPlacementUrl(cp) : cp.path;
420
- var href = '/' + cp_url;
421
- relatedLinks = [].concat(_toConsumableArray(relatedLinks), [{ label: cp.name, href: href }]);
422
- });
423
- }
424
- if (relatedLinks && relatedLinks.length > 0) {
425
- return React__default.createElement(
426
- 'div',
427
- null,
428
- relatedLinks.map(function (relatedLink, index) {
429
- return React__default.createElement(
430
- 'span',
431
- { key: index, className: 'related-link' },
432
- React__default.createElement(
433
- 'a',
434
- { className: 'related-links', style: { color: 'blue' }, href: relatedLink.href },
435
- relatedLink.label
436
- ),
437
- React__default.createElement(
438
- 'style',
439
- { jsx: 'true' },
440
- '\n .related-link:not(:first-child):before {\n content: \' | \';\n }\n '
441
- )
442
- );
443
- })
444
- );
445
- }
446
- return null;
447
- }
448
- return null;
449
- };
450
-
451
- var renderRelatedSection = function renderRelatedSection() {
452
- if (showRelatedArticles) {
406
+ if (content_placement && content_placement.length > 0 || documentGroupMapping) {
453
407
  return React__default.createElement(
454
- 'section',
455
- { className: 'related-contents-section' },
408
+ 'div',
409
+ { style: { color: '#262626' } },
456
410
  React__default.createElement(
457
411
  'p',
458
412
  { className: 'mb-0' },
@@ -462,21 +416,47 @@ var Article = function Article(props) {
462
416
  'Related Content:'
463
417
  )
464
418
  ),
465
- React__default.createElement(
466
- 'div',
467
- null,
468
- React__default.createElement(RelevantTopics, null)
469
- ),
470
- React__default.createElement(
471
- 'div',
472
- { className: 'pt-2' },
473
- React__default.createElement(RelatedArticle, { articles: article.relatedContents, client: client })
474
- ),
475
- React__default.createElement(
476
- 'style',
477
- { jsx: 'true' },
478
- '\n .related-contents-section {\n padding: 0.5rem;\n background-color: #e6e6e6;\n border-radius: 0.25rem;\n }\n '
479
- )
419
+ documentGroupMapping && documentGroupMapping.map(function (documentGroup) {
420
+ if (!documentGroup.parent) {
421
+ return null;
422
+ }
423
+
424
+ return React__default.createElement(
425
+ React__default.Fragment,
426
+ null,
427
+ React__default.createElement(
428
+ 'span',
429
+ { className: '' },
430
+ React__default.createElement(
431
+ 'a',
432
+ {
433
+ className: 'related-links',
434
+ style: { color: 'blue' },
435
+ href: cpModificationRequired ? '/' + documentGroup.parent.identifier.current + '/' + documentGroup.path : '/' + documentGroup.path },
436
+ documentGroup.name
437
+ )
438
+ ),
439
+ content_placement && content_placement.length ? ' | ' : null
440
+ );
441
+ }),
442
+ content_placement && content_placement.length > 0 ? content_placement.map(function (cp, index) {
443
+ var cp_url = cpModificationRequired ? getContentPlacementUrl(cp) : cp.path;
444
+ var href = '/' + cp_url;
445
+ return React__default.createElement(
446
+ React__default.Fragment,
447
+ { key: index },
448
+ React__default.createElement(
449
+ 'span',
450
+ null,
451
+ React__default.createElement(
452
+ 'a',
453
+ { className: 'related-links', key: index, href: href, style: { color: 'blue' } },
454
+ cp.name
455
+ )
456
+ ),
457
+ content_placement.length > index + 1 ? ' | ' : null
458
+ );
459
+ }) : null
480
460
  );
481
461
  }
482
462
  return null;
@@ -585,7 +565,6 @@ var Article = function Article(props) {
585
565
  { id: 'contextual-video-ad-' + payload._id, className: 'contextual-video-ad' },
586
566
  React__default.createElement(DFPAdSlot, _extends({}, payload.contextualVideoAD, { refreshFlag: false, checkIsAdFound: checkIsVideoAdFound }))
587
567
  ),
588
- renderRelatedSection(),
589
568
  React__default.createElement(BlockContent, _extends({
590
569
  serializers: getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, null, null, null, targeting),
591
570
  blocks: [].concat(_toConsumableArray(articleBody.slice(selectedIndex))),
@@ -653,7 +632,6 @@ var Article = function Article(props) {
653
632
  React__default.createElement(DFPAdSlot, _extends({}, payload.contextualAD, { refreshFlag: false, checkIsAdFound: _checkIsAdFound }))
654
633
  ),
655
634
  contextualADFlag && React__default.createElement('span', { className: 'clearfix' }),
656
- renderRelatedSection(),
657
635
  React__default.createElement(BlockContent, _extends({
658
636
  serializers: getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, null, null, null, targeting),
659
637
  blocks: [].concat(_toConsumableArray(articleBody.slice(_selectedIndex))),
@@ -696,31 +674,12 @@ var Article = function Article(props) {
696
674
  { id: 'contextual-video-ad-' + payload._id, className: 'contextual-video-ad' },
697
675
  React__default.createElement(DFPAdSlot, _extends({}, payload.contextualVideoAD, { refreshFlag: false, checkIsAdFound: _checkIsAdFound2 }))
698
676
  ),
699
- renderRelatedSection(),
700
677
  React__default.createElement(BlockContent, _extends({
701
678
  serializers: getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, null, null, null, targeting),
702
679
  blocks: [].concat(_toConsumableArray(articleBody.slice(_selectedIndex2))),
703
680
  imageOptions: { w: 320, h: 240, fit: 'max' }
704
681
  }, client.config()))
705
682
  );
706
- } else if (indexes.length >= 2 && body.length > 3 && showRelatedArticles) {
707
- var _selectedIndex3 = indexes[1] + 1;
708
- return React__default.createElement(
709
- React__default.Fragment,
710
- null,
711
- React__default.createElement(BlockContent, _extends({
712
- serializers: getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, contextualADFlag, null, null, targeting),
713
- blocks: [].concat(_toConsumableArray(articleBody.slice(0, _selectedIndex3))),
714
- imageOptions: { w: 320, h: 240, fit: 'max' }
715
- }, client.config())),
716
- React__default.createElement('span', { className: 'clearfix' }),
717
- renderRelatedSection(),
718
- React__default.createElement(BlockContent, _extends({
719
- serializers: getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, null, null, null, targeting),
720
- blocks: [].concat(_toConsumableArray(articleBody.slice(_selectedIndex3))),
721
- imageOptions: { w: 320, h: 240, fit: 'max' }
722
- }, client.config()))
723
- );
724
683
  } else {
725
684
  return React__default.createElement(BlockContent, _extends({
726
685
  serializers: getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, false, null, props.article.Ads, targeting),
@@ -908,7 +867,7 @@ var Article = function Article(props) {
908
867
  React__default.createElement(
909
868
  'div',
910
869
  { className: 'ad-box', style: { textAlign: 'center' } },
911
- main_36 && !sponsoredFlag && props.article.Ads && props.article.Ads.length > 0 && props.article.Ads.map(function (ad, index) {
870
+ main_39 && !sponsoredFlag && props.article.Ads && props.article.Ads.length > 0 && props.article.Ads.map(function (ad, index) {
912
871
  if (index === 0) {
913
872
  return React__default.createElement(
914
873
  'div',
@@ -960,12 +919,26 @@ var Article = function Article(props) {
960
919
  issue.name
961
920
  )
962
921
  ),
963
- React__default.createElement('div', { className: 'clearfix', style: { minHeight: '1px' } })
922
+ React__default.createElement('div', { className: 'clearfix', style: { minHeight: '1px' } }),
923
+ showRelatedArticles && React__default.createElement(
924
+ React__default.Fragment,
925
+ null,
926
+ React__default.createElement(
927
+ 'div',
928
+ null,
929
+ React__default.createElement(RelevantTopics, null)
930
+ ),
931
+ React__default.createElement(
932
+ 'div',
933
+ { className: 'pt-2' },
934
+ React__default.createElement(RelatedArticle, { articles: article.relatedArticle, client: client })
935
+ )
936
+ )
964
937
  ),
965
938
  renderIsiContent(props.article)
966
939
  )
967
940
  ),
968
- main_36 && !sponsoredFlag && props.article.Ads && props.article.Ads.length > 0 && props.article.Ads.map(function (ad, index) {
941
+ main_39 && !sponsoredFlag && props.article.Ads && props.article.Ads.length > 0 && props.article.Ads.map(function (ad, index) {
969
942
  if (index > 0) {
970
943
  return React__default.createElement(
971
944
  'div',
@@ -1005,127 +978,6 @@ var Article = function Article(props) {
1005
978
 
1006
979
  var _this = undefined;
1007
980
 
1008
- var getRelatedContents = function () {
1009
- var _ref = _asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee() {
1010
- var client = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
1011
- var article = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
1012
- var prevUrl = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '/';
1013
- var articleCount = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
1014
-
1015
- var _article$url, url, content_placement, documentGroupMapping, issueGroup, params, conditions, taxonomy, documentGroup, relatedContents, relatedContentQuery;
1016
-
1017
- return regenerator.wrap(function _callee$(_context) {
1018
- while (1) {
1019
- switch (_context.prev = _context.next) {
1020
- case 0:
1021
- _article$url = article.url;
1022
- _article$url = _article$url === undefined ? {
1023
- current: null
1024
- } : _article$url;
1025
- url = _article$url.current, content_placement = article.content_placement, documentGroupMapping = article.documentGroupMapping, issueGroup = article.issueGroup;
1026
- params = { url: url };
1027
- conditions = '';
1028
-
1029
-
1030
- if (content_placement && content_placement.length > 0) {
1031
- taxonomy = [];
1032
-
1033
- content_placement.forEach(function (_ref2) {
1034
- var path = _ref2.path,
1035
- _id = _ref2._id;
1036
-
1037
- if (!_id || typeof _id == 'undefined') {
1038
- return null;
1039
- }
1040
- var prev_url_to_check = prevUrl;
1041
- if (prev_url_to_check.includes('?')) {
1042
- prev_url_to_check = prev_url_to_check.split('?')[0];
1043
- }
1044
- if (prev_url_to_check.endsWith(path) && _id) taxonomy.push(_id);
1045
- });
1046
- if (taxonomy.length === 0) {
1047
- content_placement.filter(function (_ref3) {
1048
- var identifier = _ref3.identifier;
1049
- return identifier !== 'news';
1050
- }).forEach(function (_ref4) {
1051
- var _id = _ref4._id;
1052
-
1053
- if (_id) taxonomy.push(_id);
1054
- });
1055
- }
1056
- if (taxonomy.length > 0) {
1057
- params = _extends({}, params, { taxonomy: taxonomy });
1058
- conditions = '&& taxonomyMapping[]._ref in $taxonomy';
1059
- }
1060
- }
1061
-
1062
- if (documentGroupMapping && documentGroupMapping.length > 0) {
1063
- documentGroup = [];
1064
-
1065
- documentGroupMapping.forEach(function (_ref5) {
1066
- var _id = _ref5._id;
1067
-
1068
- if (_id) documentGroup.push(_id);
1069
- });
1070
- if (params.taxonomy && documentGroup.length > 0) {
1071
- params = _extends({}, params, { documentGroup: documentGroup });
1072
- conditions = '&& (taxonomyMapping[]._ref in $taxonomy || documentGroupMapping[]._ref in $documentGroup)';
1073
- }
1074
- }
1075
-
1076
- if (issueGroup && issueGroup._ref) {
1077
- if (params.taxonomy && params.documentGroup) {
1078
- params = _extends({}, params, { issueAssociation: issueGroup._ref });
1079
- conditions = '&& (taxonomyMapping[]._ref in $taxonomy || documentGroupMapping[]._ref in $documentGroup || issueGroup._ref == $issueAssociation )';
1080
- } else if (params.taxonomy) {
1081
- params = _extends({}, params, { issueAssociation: issueGroup._ref });
1082
- conditions = '&& (taxonomyMapping[]._ref in $taxonomy || issueGroup._ref == $issueAssociation )';
1083
- }
1084
- }
1085
-
1086
- relatedContents = [];
1087
-
1088
- if (!(params.taxonomy && params.taxonomy.length > 0)) {
1089
- _context.next = 21;
1090
- break;
1091
- }
1092
-
1093
- relatedContentQuery = '*[\n _type == "article"\n && defined(title)\n && defined(url)\n && !(_id in path("drafts.**"))\n && is_visible == true\n && passwordLock != true\n && taxonomyMapping[].disableAds != \'true\'\n && contentCategory.name != \'Poll\'\n && contentCategory.name != \'Slideshows\'\n \t&& contentCategory.disableAds != \'true\'\n && ExcludeFromInfiniteScroll != true\n && url.current != $url\n && !defined(body[].videos)\n && published <= \'' + new Date().toISOString() + '\'\n ' + conditions + '\n ]| order(published desc)[' + articleCount + ']\n {\n title,\n url,\n thumbnail\n }';
1094
- _context.prev = 11;
1095
- _context.next = 14;
1096
- return client.fetch(relatedContentQuery, params);
1097
-
1098
- case 14:
1099
- relatedContents = _context.sent;
1100
-
1101
- debugger;
1102
- _context.next = 21;
1103
- break;
1104
-
1105
- case 18:
1106
- _context.prev = 18;
1107
- _context.t0 = _context['catch'](11);
1108
-
1109
- console.error(_context.t0);
1110
-
1111
- case 21:
1112
- return _context.abrupt('return', relatedContents);
1113
-
1114
- case 22:
1115
- case 'end':
1116
- return _context.stop();
1117
- }
1118
- }
1119
- }, _callee, _this, [[11, 18]]);
1120
- }));
1121
-
1122
- return function getRelatedContents() {
1123
- return _ref.apply(this, arguments);
1124
- };
1125
- }();
1126
-
1127
- var _this$1 = undefined;
1128
-
1129
981
  var ArticleQueue = function ArticleQueue(props) {
1130
982
  var _props$prevUrl = props.prevUrl,
1131
983
  prevUrl = _props$prevUrl === undefined ? '/' : _props$prevUrl,
@@ -1159,7 +1011,7 @@ var ArticleQueue = function ArticleQueue(props) {
1159
1011
  });
1160
1012
  var targeting = getTargeting({ article: activeArticle, cpModificationRequired: cpModificationRequired, position: props.position, prevUrl: prevUrl });
1161
1013
 
1162
- if (!main_36) {
1014
+ if (!main_39) {
1163
1015
  lib_3.getGoogletag().then(function (googletag) {
1164
1016
  if (window.googletag && googletag.pubadsReady) {
1165
1017
  var slots = googletag.pubads().getSlots();
@@ -1177,7 +1029,7 @@ var ArticleQueue = function ArticleQueue(props) {
1177
1029
  });
1178
1030
  }
1179
1031
  //Refresh leaderboard ad on mobile
1180
- if (main_36) {
1032
+ if (main_39) {
1181
1033
  var leaderboardSlotId = '';
1182
1034
  lib_3.getGoogletag().then(function (googletag) {
1183
1035
  if (window.googletag && googletag.pubadsReady) {
@@ -1251,7 +1103,7 @@ var ArticleQueue = function ArticleQueue(props) {
1251
1103
  switch (_context.prev = _context.next) {
1252
1104
  case 0:
1253
1105
  if (!(article && article._id)) {
1254
- _context.next = 12;
1106
+ _context.next = 9;
1255
1107
  break;
1256
1108
  }
1257
1109
 
@@ -1263,22 +1115,17 @@ var ArticleQueue = function ArticleQueue(props) {
1263
1115
 
1264
1116
  case 5:
1265
1117
  article.relatedArticle = _context.sent;
1266
- _context.next = 8;
1267
- return getRelatedContents(null, props.client, article, prevUrl, startingIndex + '..' + endingIndex);
1268
-
1269
- case 8:
1270
- article.relatedContents = _context.sent;
1271
1118
  targeting = getTargeting({ article: article, cpModificationRequired: cpModificationRequired, prevUrl: prevUrl });
1272
1119
 
1273
1120
  article.Ads = Ads.getRightItems(targeting);
1274
1121
  setQueueData([].concat(_toConsumableArray(queueData), [article]));
1275
1122
 
1276
- case 12:
1123
+ case 9:
1277
1124
  case 'end':
1278
1125
  return _context.stop();
1279
1126
  }
1280
1127
  }
1281
- }, _callee, _this$1);
1128
+ }, _callee, _this);
1282
1129
  }));
1283
1130
 
1284
1131
  return function (_x) {
@@ -1426,7 +1273,7 @@ var Articles = function Articles(props) {
1426
1273
  }, _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));
1427
1274
  };
1428
1275
 
1429
- var _this$2 = undefined;
1276
+ var _this$1 = undefined;
1430
1277
 
1431
1278
  var View = function View(props) {
1432
1279
  var router = useRouter();
@@ -1634,12 +1481,12 @@ View.returnGetInitialProps = function () {
1634
1481
  }
1635
1482
 
1636
1483
  article.relatedArticle = null;
1637
- _context.next = 21;
1484
+ _context.next = 18;
1638
1485
  break;
1639
1486
 
1640
1487
  case 14:
1641
1488
  if (!article) {
1642
- _context.next = 21;
1489
+ _context.next = 18;
1643
1490
  break;
1644
1491
  }
1645
1492
 
@@ -1648,13 +1495,8 @@ View.returnGetInitialProps = function () {
1648
1495
 
1649
1496
  case 17:
1650
1497
  article.relatedArticle = _context.sent;
1651
- _context.next = 20;
1652
- return getRelatedContents(context, client, article, prevUrl, '0..2');
1653
1498
 
1654
- case 20:
1655
- article.relatedContents = _context.sent;
1656
-
1657
- case 21:
1499
+ case 18:
1658
1500
  return _context.abrupt('return', {
1659
1501
  url: url,
1660
1502
  sao: sao,
@@ -1665,12 +1507,12 @@ View.returnGetInitialProps = function () {
1665
1507
  sponsoredFlag: sponsoredFlag
1666
1508
  });
1667
1509
 
1668
- case 22:
1510
+ case 19:
1669
1511
  case 'end':
1670
1512
  return _context.stop();
1671
1513
  }
1672
1514
  }
1673
- }, _callee, _this$2);
1515
+ }, _callee, _this$1);
1674
1516
  }));
1675
1517
 
1676
1518
  return function (_x, _x2, _x3, _x4, _x5) {
@@ -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-e2f9b20c.js';
8
+ import { m as moment } from './moment-12415288.js';
9
9
  import 'react-dom';
10
- import { i as imageUrlBuilder } from './index-73819142.js';
10
+ import { i as imageUrlBuilder } from './index-51a80699.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-73819142.js';
13
+ import { i as imageUrlBuilder } from './index-51a80699.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';
@@ -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 && published <= 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 }';
11
+ return '*[\n _type == "article"\n && defined(title)\n && defined(url)\n && !(_id in path("drafts.**"))\n && is_visible == true\n && published <= 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 }';
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 }\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 }';
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 }\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 }';
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':