@times-components/article-skeleton 1.85.42 → 1.86.2

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 (40) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/babel.config.js +13 -2
  3. package/dist/article-body/article-body-paragraph.js +101 -1
  4. package/dist/article-body/article-body.js +657 -1
  5. package/dist/article-body/article-link-tracking-events.js +28 -1
  6. package/dist/article-body/article-link.js +51 -1
  7. package/dist/article-body/drop-cap.js +70 -1
  8. package/dist/article-body/inline-paragraph.js +142 -1
  9. package/dist/article-body/inset-caption.js +44 -1
  10. package/dist/article-body/simple-paragraph.js +99 -1
  11. package/dist/article-skeleton-prop-types.js +38 -1
  12. package/dist/article-skeleton.js +265 -1
  13. package/dist/article-topics/index.js +43 -1
  14. package/dist/body-utils.js +81 -1
  15. package/dist/contentModifiers/dropcap-util-common.js +117 -1
  16. package/dist/contentModifiers/dropcap-util.js +28 -1
  17. package/dist/contentModifiers/inline-ad.js +46 -1
  18. package/dist/contentModifiers/inline-related-article.js +71 -1
  19. package/dist/contentModifiers/native-ad.js +56 -1
  20. package/dist/contentModifiers/newsletter-puff.js +143 -1
  21. package/dist/data-helper.js +106 -1
  22. package/dist/gutter.js +43 -1
  23. package/dist/head.js +472 -1
  24. package/dist/keylines.js +24 -1
  25. package/dist/paywall-portal.js +47 -1
  26. package/dist/sticky-save-and-share-bar.js +60 -1
  27. package/dist/styles/article-body/article-link.js +18 -1
  28. package/dist/styles/article-body/index.js +41 -1
  29. package/dist/styles/article-body/responsive.js +143 -1
  30. package/dist/styles/article-body/shared.js +124 -1
  31. package/dist/styles/article-topics/index.js +21 -1
  32. package/dist/styles/article-topics/responsive.js +21 -1
  33. package/dist/styles/article-topics/shared.js +24 -1
  34. package/dist/styles/responsive.js +45 -1
  35. package/dist/styles/shared.js +20 -1
  36. package/dist/tracking/article-tracking-context.js +71 -1
  37. package/dist/tracking/article-tracking-last-paragraph.js +33 -1
  38. package/package.json +36 -44
  39. package/rnw.js +1 -1
  40. package/tsconfig.jest.json +11 -0
@@ -1 +1,657 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"ArticleLink",{enumerable:true,get:function get(){return _articleLink.default;}});exports.default=exports.responsiveDisplayWrapper=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _react=_interopRequireDefault(require("react"));var _propTypes=_interopRequireDefault(require("prop-types"));var _ad=require("@times-components/ad");var _lazyLoad=_interopRequireDefault(require("@times-components/lazy-load"));var _articleImage=_interopRequireDefault(require("@times-components/article-image"));var _articleParagraph=_interopRequireWildcard(require("@times-components/article-paragraph"));var _context=_interopRequireDefault(require("@times-components/context"));var _interactiveWrapper=_interopRequireDefault(require("@times-components/interactive-wrapper"));var _keyFacts=_interopRequireDefault(require("@times-components/key-facts"));var _markup=_interopRequireDefault(require("@times-components/markup"));var _pullQuote=_interopRequireDefault(require("@times-components/pull-quote"));var _video=_interopRequireDefault(require("@times-components/video"));var _markupForest=_interopRequireDefault(require("@times-components/markup-forest"));var _utils=require("@times-components/utils");var _tsComponents=require("@times-components/ts-components");var _tsStyleguide=require("@times-components/ts-styleguide");var _articleLink=_interopRequireDefault(require("./article-link"));var _insetCaption=_interopRequireDefault(require("./inset-caption"));var _responsive=require("../styles/article-body/responsive");var _jsxFileName="/home/circleci/project/packages/article-skeleton/src/article-body/article-body.js";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable;});}keys.push.apply(keys,symbols);}return keys;}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};if(i%2){ownKeys(Object(source),true).forEach(function(key){(0,_defineProperty2.default)(target,key,source[key]);});}else if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source));}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key));});}}return target;}var deckApiUrl="https://gobble.timesdev.tools/deck/api/deck-post-action/";var responsiveDisplayWrapper=function responsiveDisplayWrapper(displayType){switch(displayType){case"secondary":return _responsive.SecondaryImg;case"inline":return _responsive.InlineImg;case"fullwidth":return _responsive.FullWidthImg;default:return _responsive.PrimaryImg;}};exports.responsiveDisplayWrapper=responsiveDisplayWrapper;var highResSizeCalc=function highResSizeCalc(observed,key,template){var screenWidth=observed.get(key)&&observed.get(key).clientWidth?observed.get(key).clientWidth:null;var indepthRetinaScreenWidth=screenWidth&&window.devicePixelRatio>1&&template==="indepth"&&screenWidth*1.5;return indepthRetinaScreenWidth||screenWidth;};var renderers=function renderers(_ref){var paidContentClassName=_ref.paidContentClassName,template=_ref.template,analyticsStream=_ref.analyticsStream,isPreview=_ref.isPreview,olympicsKeys=_ref.olympicsKeys,isLiveOrBreaking=_ref.isLiveOrBreaking,section=_ref.section,articleHeadline=_ref.articleHeadline;return _objectSpread(_objectSpread({},_markup.default),{},{ad:function ad(key){return isLiveOrBreaking?null:_react.default.createElement(_responsive.InlineAdWrapper,{__source:{fileName:_jsxFileName,lineNumber:113,columnNumber:7}},_react.default.createElement(_responsive.InlineAdTitle,{__source:{fileName:_jsxFileName,lineNumber:114,columnNumber:9}},"Advertisement"),_react.default.createElement(_ad.AdContainer,{key:key,slotName:"inline-ad",__source:{fileName:_jsxFileName,lineNumber:115,columnNumber:9}}));},inlineAd1:function inlineAd1(key){return isLiveOrBreaking?null:_react.default.createElement(_responsive.InlineAdWrapper,{__source:{fileName:_jsxFileName,lineNumber:121,columnNumber:7}},_react.default.createElement(_responsive.InlineAdTitle,{__source:{fileName:_jsxFileName,lineNumber:122,columnNumber:9}},"Advertisement"),_react.default.createElement(_ad.AdContainer,{key:key,slotName:"inlineAd1",__source:{fileName:_jsxFileName,lineNumber:123,columnNumber:9}}));},inlineAd2:function inlineAd2(key){return isLiveOrBreaking?null:_react.default.createElement(_responsive.InlineAdWrapper,{__source:{fileName:_jsxFileName,lineNumber:129,columnNumber:7}},_react.default.createElement(_responsive.InlineAdTitle,{__source:{fileName:_jsxFileName,lineNumber:130,columnNumber:9}},"Advertisement"),_react.default.createElement(_ad.AdContainer,{key:key,slotName:"inlineAd2",__source:{fileName:_jsxFileName,lineNumber:131,columnNumber:9}}));},inlineAd3:function inlineAd3(key){return isLiveOrBreaking?null:_react.default.createElement(_responsive.InlineAdWrapper,{__source:{fileName:_jsxFileName,lineNumber:137,columnNumber:7}},_react.default.createElement(_responsive.InlineAdTitle,{__source:{fileName:_jsxFileName,lineNumber:138,columnNumber:9}},"Advertisement"),_react.default.createElement(_ad.AdContainer,{key:key,slotName:"inlineAd3",__source:{fileName:_jsxFileName,lineNumber:139,columnNumber:9}}));},dropCap:function dropCap(key,attrs,children){return _react.default.createElement(_context.default.Consumer,{key:key,__source:{fileName:_jsxFileName,lineNumber:145,columnNumber:7}},function(_ref2){var _ref2$theme=_ref2.theme,dropCapFont=_ref2$theme.dropCapFont,_ref2$theme$sectionCo=_ref2$theme.sectionColour,sectionColour=_ref2$theme$sectionCo===void 0?_tsStyleguide.colours.section.default:_ref2$theme$sectionCo;return _react.default.createElement(_articleParagraph.DropCapView,{colour:sectionColour,font:dropCapFont,__source:{fileName:_jsxFileName,lineNumber:149,columnNumber:11}},children);});},nativeAd:function nativeAd(key){return isLiveOrBreaking?null:_react.default.createElement(_responsive.NativeAd,{className:"group-3 hidden",key:key,__source:{fileName:_jsxFileName,lineNumber:158,columnNumber:7}},_react.default.createElement(_responsive.NativeAdTitle,{__source:{fileName:_jsxFileName,lineNumber:159,columnNumber:9}},"Sponsored"),_react.default.createElement(_responsive.Ad,{id:"advert-inarticle-native-1","data-parent":"group-3",__source:{fileName:_jsxFileName,lineNumber:160,columnNumber:9}}),_react.default.createElement(_responsive.Ad,{id:"advert-inarticle-native-2","data-parent":"group-3",__source:{fileName:_jsxFileName,lineNumber:161,columnNumber:9}}));},image:function image(key,_ref3){var id=_ref3.id,display=_ref3.display,ratio=_ref3.ratio,url=_ref3.url,caption=_ref3.caption,credits=_ref3.credits;var MediaWrapper=responsiveDisplayWrapper(display);return _react.default.createElement(_lazyLoad.default,{key:key,rootMargin:(0,_tsStyleguide.spacing)(40),threshold:0,__source:{fileName:_jsxFileName,lineNumber:168,columnNumber:7}},function(_ref4){var observed=_ref4.observed,registerNode=_ref4.registerNode;return _react.default.createElement("div",{id:key,ref:function ref(node){return registerNode(node);},__source:{fileName:_jsxFileName,lineNumber:170,columnNumber:11}},_react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:171,columnNumber:13}},_react.default.createElement(MediaWrapper,{__source:{fileName:_jsxFileName,lineNumber:172,columnNumber:15}},_react.default.createElement(_articleImage.default,{captionOptions:{caption:caption,credits:credits},imageOptions:{display:display,highResSize:highResSizeCalc(observed,key,template),lowResQuality:3,lowResSize:400,ratio:ratio,uri:url},__source:{fileName:_jsxFileName,lineNumber:173,columnNumber:17}}))));});},interactive:function interactive(key,_ref5){var id=_ref5.id,url=_ref5.url,element=_ref5.element,display=_ref5.display;var attributes=element.attributes,value=element.value;switch(value){case"in-article-info-card":return _react.default.createElement(_context.default.Consumer,{key:key,__source:{fileName:_jsxFileName,lineNumber:199,columnNumber:11}},function(_ref6){var theme=_ref6.theme;return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:201,columnNumber:15}},_react.default.createElement(_tsComponents.FetchProvider,{url:deckApiUrl+attributes["deck-id"],__source:{fileName:_jsxFileName,lineNumber:202,columnNumber:17}},_react.default.createElement(_tsComponents.InfoCard,{sectionColour:theme.sectionColour,__source:{fileName:_jsxFileName,lineNumber:203,columnNumber:19}})));});case"in-article-info-card-bulletpoints":return _react.default.createElement(_context.default.Consumer,{key:key,__source:{fileName:_jsxFileName,lineNumber:212,columnNumber:11}},function(_ref7){var theme=_ref7.theme;return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:214,columnNumber:15}},_react.default.createElement(_tsComponents.FetchProvider,{url:deckApiUrl+attributes["deck-id"],__source:{fileName:_jsxFileName,lineNumber:215,columnNumber:17}},_react.default.createElement(_tsComponents.InfoCardBulletPoints,{sectionColour:theme.sectionColour,__source:{fileName:_jsxFileName,lineNumber:216,columnNumber:19}})));});case"in-article-big-numbers":return _react.default.createElement(_context.default.Consumer,{key:key,__source:{fileName:_jsxFileName,lineNumber:225,columnNumber:11}},function(_ref8){var theme=_ref8.theme;return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:227,columnNumber:15}},_react.default.createElement(_tsComponents.FetchProvider,{url:deckApiUrl+attributes["deck-id"],__source:{fileName:_jsxFileName,lineNumber:228,columnNumber:17}},_react.default.createElement(_tsComponents.BigNumbers,{sectionColour:theme.sectionColour,__source:{fileName:_jsxFileName,lineNumber:229,columnNumber:19}})));});case"in-article-timelines":return _react.default.createElement(_context.default.Consumer,{key:key,__source:{fileName:_jsxFileName,lineNumber:238,columnNumber:11}},function(_ref9){var theme=_ref9.theme;return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:240,columnNumber:15}},_react.default.createElement(_tsComponents.FetchProvider,{url:deckApiUrl+attributes["deck-id"],__source:{fileName:_jsxFileName,lineNumber:241,columnNumber:17}},_react.default.createElement(_tsComponents.Timelines,{sectionColour:theme.sectionColour,__source:{fileName:_jsxFileName,lineNumber:242,columnNumber:19}})));});case"gallery-carousel":return _react.default.createElement(_context.default.Consumer,{key:key,__source:{fileName:_jsxFileName,lineNumber:251,columnNumber:11}},function(_ref10){var theme=_ref10.theme;return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:253,columnNumber:15}},_react.default.createElement(_tsComponents.FetchProvider,{url:deckApiUrl+attributes["deck-id"],__source:{fileName:_jsxFileName,lineNumber:254,columnNumber:17}},_react.default.createElement(_tsComponents.GalleryCarousel,{sectionColour:theme.sectionColour,__source:{fileName:_jsxFileName,lineNumber:255,columnNumber:19}})));});case"newsletter-puff":var code=attributes.code,copy=attributes.copy,headline=attributes.headline,imageUri=attributes.imageUri,label=attributes.label;return isPreview?_react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:267,columnNumber:11}},_react.default.createElement(_tsComponents.PreviewNewsletterPuff,{copy:(0,_tsComponents.safeDecodeURIComponent)(copy),headline:(0,_tsComponents.safeDecodeURIComponent)(headline),imageUri:(0,_tsComponents.safeDecodeURIComponent)(imageUri),label:(0,_tsComponents.safeDecodeURIComponent)(label),__source:{fileName:_jsxFileName,lineNumber:268,columnNumber:13}})):_react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:276,columnNumber:11}},_react.default.createElement(_tsComponents.InlineNewsletterPuff,{analyticsStream:analyticsStream,key:key,code:code,copy:(0,_tsComponents.safeDecodeURIComponent)(copy),headline:(0,_tsComponents.safeDecodeURIComponent)(headline),imageUri:(0,_tsComponents.safeDecodeURIComponent)(imageUri),label:(0,_tsComponents.safeDecodeURIComponent)(label),__source:{fileName:_jsxFileName,lineNumber:277,columnNumber:13}}));case"opta-football-fixtures-v3":return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:291,columnNumber:11}},_react.default.createElement(_tsComponents.OptaFootballFixtures,{season:attributes.season,competition:attributes.competition,date_from:attributes["date-from"],date_to:attributes["date-to"],__source:{fileName:_jsxFileName,lineNumber:292,columnNumber:13}}));case"opta-football-standings-v3":return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:303,columnNumber:11}},_react.default.createElement(_tsComponents.OptaFootballStandings,{season:attributes.season,competition:attributes.competition,default_nav:attributes.group,navigation:true,__source:{fileName:_jsxFileName,lineNumber:304,columnNumber:13}}));case"opta-football-match-summary-v3":return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:315,columnNumber:11}},_react.default.createElement(_tsComponents.OptaFootballSummary,{season:attributes.season,competition:attributes.competition,match:attributes.match,__source:{fileName:_jsxFileName,lineNumber:316,columnNumber:13}}));case"opta-football-match-stats-v3":return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:326,columnNumber:11}},_react.default.createElement(_tsComponents.OptaFootballMatchStats,{season:attributes.season,competition:attributes.competition,match:attributes.match,__source:{fileName:_jsxFileName,lineNumber:327,columnNumber:13}}));case"opta-rugby-union-fixtures-v2":case"opta-rugby-fixtures-v3":return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:338,columnNumber:11}},_react.default.createElement(_tsComponents.OptaRugbyFixtures,{season:attributes.season,competition:attributes.competition,date_from:attributes["date-from"],date_to:attributes["date-to"],__source:{fileName:_jsxFileName,lineNumber:339,columnNumber:13}}));case"opta-rugby-union-standings-v2":case"opta-rugby-standings-v3":return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:351,columnNumber:11}},_react.default.createElement(_tsComponents.OptaRugbyStandings,{season:attributes.season,competition:attributes.competition,default_nav:attributes.group,navigation:true,__source:{fileName:_jsxFileName,lineNumber:352,columnNumber:13}}));case"opta-rugby-union-match-summary-v2":case"opta-rugby-match-summary-v3":return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:364,columnNumber:11}},_react.default.createElement(_tsComponents.OptaRugbySummary,{season:attributes.season,competition:attributes.competition,match:attributes.match,__source:{fileName:_jsxFileName,lineNumber:365,columnNumber:13}}));case"opta-rugby-union-match-stats-v2":case"opta-rugby-match-stats-v3":return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:376,columnNumber:11}},_react.default.createElement(_tsComponents.OptaRugbyMatchStats,{season:attributes.season,competition:attributes.competition,match:attributes.match,__source:{fileName:_jsxFileName,lineNumber:377,columnNumber:13}}));case"opta-football-match-lineups-v3":case"opta-football-top-scorers-v3":case"opta-football-match-commentary-v3":case"opta-football-hub":return null;case"in-article-puff":return _react.default.createElement(_context.default.Consumer,{key:key,__source:{fileName:_jsxFileName,lineNumber:393,columnNumber:11}},function(_ref11){var theme=_ref11.theme;return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:395,columnNumber:15}},_react.default.createElement(_tsComponents.FetchProvider,{url:deckApiUrl+attributes["deck-id"],__source:{fileName:_jsxFileName,lineNumber:396,columnNumber:17}},_react.default.createElement(_tsComponents.InArticlePuff,{sectionColour:theme.sectionColour,forceImageAspectRatio:"3:2",isLiveOrBreaking:isLiveOrBreaking,__source:{fileName:_jsxFileName,lineNumber:397,columnNumber:19}})));});case"article-header":return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:410,columnNumber:11}},_react.default.createElement(_tsComponents.ArticleHeader,{updated:attributes.updated,breaking:attributes.breaking,headline:attributes.headline,__source:{fileName:_jsxFileName,lineNumber:411,columnNumber:13}}));case"olympics-medal-table":return _react.default.createElement(_context.default.Consumer,{key:key,__source:{fileName:_jsxFileName,lineNumber:423,columnNumber:11}},function(_ref12){var theme=_ref12.theme;return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:425,columnNumber:15}},_react.default.createElement(_tsComponents.OlympicsMedalTable,{keys:olympicsKeys,sectionColor:theme.sectionColour,__source:{fileName:_jsxFileName,lineNumber:426,columnNumber:17}}));});case"olympics-schedule":return _react.default.createElement(_context.default.Consumer,{key:key,__source:{fileName:_jsxFileName,lineNumber:437,columnNumber:11}},function(_ref13){var theme=_ref13.theme;return _react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:439,columnNumber:15}},_react.default.createElement(_tsComponents.OlympicsSchedule,{keys:olympicsKeys,sectionColor:theme.sectionColour,__source:{fileName:_jsxFileName,lineNumber:440,columnNumber:17}}));});default:return _react.default.createElement(_responsive.InteractiveContainer,{key:key,fullWidth:display==="fullwidth",__source:{fileName:_jsxFileName,lineNumber:451,columnNumber:11}},_react.default.createElement("div",{id:id,__source:{fileName:_jsxFileName,lineNumber:452,columnNumber:13}},_react.default.createElement(_interactiveWrapper.default,{attributes:attributes,element:value,key:key,source:url,__source:{fileName:_jsxFileName,lineNumber:453,columnNumber:15}})));}},autoNewsletterPuff:function autoNewsletterPuff(key,_ref14){var element=_ref14.element;var _element$attributes=element.attributes,code=_element$attributes.code,copy=_element$attributes.copy,headline=_element$attributes.headline,imageUri=_element$attributes.imageUri,label=_element$attributes.label;return _react.default.createElement(_tsComponents.AutoNewsletterPuff,{analyticsStream:analyticsStream,key:key,code:code,copy:copy,headline:headline,imageUri:imageUri,label:label,__source:{fileName:_jsxFileName,lineNumber:470,columnNumber:7}});},autoInlineRelatedArticles:function autoInlineRelatedArticles(key,_ref15){var element=_ref15.element;return _react.default.createElement(_context.default.Consumer,{key:key,__source:{fileName:_jsxFileName,lineNumber:483,columnNumber:7}},function(_ref16){var theme=_ref16.theme;return _react.default.createElement(_tsComponents.HiddenDiv,{className:"inlineRelatedArticles",__source:{fileName:_jsxFileName,lineNumber:485,columnNumber:11}},_react.default.createElement(_tsComponents.InArticleRelatedArticles,{heading:"Related Articles",relatedArticles:element.attributes.relatedArticles,sectionColour:theme.sectionColour,__source:{fileName:_jsxFileName,lineNumber:486,columnNumber:13}}));});},keyFacts:function keyFacts(key,attributes,renderedChildren,indx,node){return _react.default.createElement(_keyFacts.default,{key:key,ast:node,section:section,headline:articleHeadline,isLiveOrBreaking:isLiveOrBreaking,__source:{fileName:_jsxFileName,lineNumber:498,columnNumber:7}});},heading2:function heading2(key,attributes,children){return _react.default.createElement(_responsive.Heading2,{__source:{fileName:_jsxFileName,lineNumber:508,columnNumber:12}},children);},heading3:function heading3(key,attributes,children){return _react.default.createElement(_responsive.Heading3,{__source:{fileName:_jsxFileName,lineNumber:511,columnNumber:12}},children);},heading4:function heading4(key,attributes,children){return _react.default.createElement(_responsive.Heading4,{__source:{fileName:_jsxFileName,lineNumber:514,columnNumber:12}},children);},heading5:function heading5(key,attributes,children){return _react.default.createElement(_responsive.Heading5,{__source:{fileName:_jsxFileName,lineNumber:517,columnNumber:12}},children);},heading6:function heading6(key,attributes,children){return _react.default.createElement(_responsive.Heading6,{__source:{fileName:_jsxFileName,lineNumber:520,columnNumber:12}},children);},link:function link(key,attributes,children){var href=attributes.href,target=attributes.target,dropCap=attributes.dropCap;return _react.default.createElement(_articleLink.default,{dropCap:dropCap,key:key,target:target,url:href,__source:{fileName:_jsxFileName,lineNumber:526,columnNumber:7}},children);},paragraph:function paragraph(key,attributes,children){var id=attributes&&attributes.id;return _react.default.createElement(_articleParagraph.default,(0,_extends2.default)({key:key},id?{id:id}:{},{__source:{fileName:_jsxFileName,lineNumber:534,columnNumber:7}}),children);},paywall:function paywall(key,attributes,children){return _react.default.createElement("span",{className:paidContentClassName,key:key,__source:{fileName:_jsxFileName,lineNumber:541,columnNumber:7}},children);},pullQuote:function pullQuote(key,_ref17,children){var _ref17$caption=_ref17.caption,name=_ref17$caption.name,text=_ref17$caption.text,twitter=_ref17$caption.twitter;return _react.default.createElement(_context.default.Consumer,{key:key,__source:{fileName:_jsxFileName,lineNumber:554,columnNumber:7}},function(_ref18){var _ref18$theme=_ref18.theme,pullQuoteFont=_ref18$theme.pullQuoteFont,_ref18$theme$sectionC=_ref18$theme.sectionColour,sectionColour=_ref18$theme$sectionC===void 0?_tsStyleguide.colours.section.default:_ref18$theme$sectionC;return _react.default.createElement(_responsive.PullQuoteContainer,{__source:{fileName:_jsxFileName,lineNumber:558,columnNumber:11}},_react.default.createElement(_responsive.PullQuoteResp,{__source:{fileName:_jsxFileName,lineNumber:559,columnNumber:13}},_react.default.createElement(_pullQuote.default,{caption:name,font:pullQuoteFont,quoteColour:sectionColour,text:text,twitter:twitter,__source:{fileName:_jsxFileName,lineNumber:560,columnNumber:15}},children)));});},video:function video(key,_ref19){var id=_ref19.id,is360=_ref19.is360,brightcovePolicyKey=_ref19.brightcovePolicyKey,brightcoveVideoId=_ref19.brightcoveVideoId,brightcoveAccountId=_ref19.brightcoveAccountId,brightcovePlayerId=_ref19.brightcovePlayerId,caption=_ref19.caption,posterImageUrl=_ref19.posterImageUrl;var MediaWrapper=responsiveDisplayWrapper("primary");return _react.default.createElement(MediaWrapper,{key:key,__source:{fileName:_jsxFileName,lineNumber:590,columnNumber:7}},_react.default.createElement("figure",{style:{margin:0},__source:{fileName:_jsxFileName,lineNumber:591,columnNumber:9}},_react.default.createElement(_utils.AspectRatioContainer,{aspectRatio:"16:9",__source:{fileName:_jsxFileName,lineNumber:592,columnNumber:11}},_react.default.createElement(_video.default,{id:id,is360:is360,accountId:brightcoveAccountId,height:"100%",playerId:brightcovePlayerId,policyKey:brightcovePolicyKey,poster:{uri:posterImageUrl},videoId:brightcoveVideoId,width:"100%",__source:{fileName:_jsxFileName,lineNumber:593,columnNumber:13}})),_react.default.createElement("figcaption",{__source:{fileName:_jsxFileName,lineNumber:605,columnNumber:11}},_react.default.createElement(_insetCaption.default,{caption:caption,__source:{fileName:_jsxFileName,lineNumber:606,columnNumber:13}}))));}});};var decorateAd=function decorateAd(_ref20){var contextUrl=_ref20.contextUrl,section=_ref20.section;return function(element){return element.name==="ad"?_objectSpread(_objectSpread({},element),{},{attributes:_objectSpread(_objectSpread({},element.attributes),{},{contextUrl:contextUrl,section:section})}):element;};};var ArticleBody=function ArticleBody(_ref21){var bodyContent=_ref21.content,contextUrl=_ref21.contextUrl,section=_ref21.section,paidContentClassName=_ref21.paidContentClassName,template=_ref21.template,isPreview=_ref21.isPreview,swgProductId=_ref21.swgProductId,inArticlePuffFlag=_ref21.inArticlePuffFlag,olympicsKeys=_ref21.olympicsKeys,isLiveOrBreaking=_ref21.isLiveOrBreaking,articleHeadline=_ref21.articleHeadline;return(0,_markupForest.default)(bodyContent.map(decorateAd({contextUrl:contextUrl,section:section})),renderers({paidContentClassName:paidContentClassName,template:template,isPreview:isPreview,swgProductId:swgProductId,inArticlePuffFlag:inArticlePuffFlag,olympicsKeys:olympicsKeys,isLiveOrBreaking:isLiveOrBreaking,section:section,articleHeadline:articleHeadline}));};ArticleBody.propTypes={content:_propTypes.default.arrayOf(_propTypes.default.shape({attributes:_propTypes.default.object,children:_propTypes.default.arrayOf(_propTypes.default.object),name:_propTypes.default.string})).isRequired,contextUrl:_propTypes.default.string.isRequired,paidContentClassName:_propTypes.default.string,section:_propTypes.default.string};var _default=ArticleBody;exports.default=_default;
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "ArticleLink", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _articleLink.default;
10
+ }
11
+ });
12
+ exports.default = exports.responsiveDisplayWrapper = void 0;
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ var _propTypes = _interopRequireDefault(require("prop-types"));
17
+
18
+ var _ad = require("@times-components/ad");
19
+
20
+ var _lazyLoad = _interopRequireDefault(require("@times-components/lazy-load"));
21
+
22
+ var _articleImage = _interopRequireDefault(require("@times-components/article-image"));
23
+
24
+ var _articleParagraph = _interopRequireWildcard(require("@times-components/article-paragraph"));
25
+
26
+ var _context = _interopRequireDefault(require("@times-components/context"));
27
+
28
+ var _interactiveWrapper = _interopRequireDefault(require("@times-components/interactive-wrapper"));
29
+
30
+ var _keyFacts = _interopRequireDefault(require("@times-components/key-facts"));
31
+
32
+ var _markup = _interopRequireDefault(require("@times-components/markup"));
33
+
34
+ var _pullQuote = _interopRequireDefault(require("@times-components/pull-quote"));
35
+
36
+ var _video = _interopRequireDefault(require("@times-components/video"));
37
+
38
+ var _markupForest = _interopRequireDefault(require("@times-components/markup-forest"));
39
+
40
+ var _utils = require("@times-components/utils");
41
+
42
+ var _tsComponents = require("@times-components/ts-components");
43
+
44
+ var _tsStyleguide = require("@times-components/ts-styleguide");
45
+
46
+ var _articleLink = _interopRequireDefault(require("./article-link"));
47
+
48
+ var _insetCaption = _interopRequireDefault(require("./inset-caption"));
49
+
50
+ var _responsive = require("../styles/article-body/responsive");
51
+
52
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
53
+
54
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
55
+
56
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
57
+
58
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
59
+
60
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
61
+
62
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
63
+
64
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
65
+
66
+ const deckApiUrl = "https://gobble.timesdev.tools/deck/api/deck-post-action/";
67
+
68
+ const responsiveDisplayWrapper = displayType => {
69
+ switch (displayType) {
70
+ case "secondary":
71
+ return _responsive.SecondaryImg;
72
+
73
+ case "inline":
74
+ return _responsive.InlineImg;
75
+
76
+ case "fullwidth":
77
+ return _responsive.FullWidthImg;
78
+
79
+ default:
80
+ return _responsive.PrimaryImg;
81
+ }
82
+ };
83
+
84
+ exports.responsiveDisplayWrapper = responsiveDisplayWrapper;
85
+
86
+ const highResSizeCalc = (observed, key, template) => {
87
+ const screenWidth = observed.get(key) && observed.get(key).clientWidth ? observed.get(key).clientWidth : null;
88
+ const indepthRetinaScreenWidth = screenWidth && window.devicePixelRatio > 1 && template === "indepth" && screenWidth * 1.5;
89
+ return indepthRetinaScreenWidth || screenWidth;
90
+ };
91
+
92
+ const renderers = _ref => {
93
+ let paidContentClassName = _ref.paidContentClassName,
94
+ template = _ref.template,
95
+ analyticsStream = _ref.analyticsStream,
96
+ isPreview = _ref.isPreview,
97
+ olympicsKeys = _ref.olympicsKeys,
98
+ isLiveOrBreaking = _ref.isLiveOrBreaking,
99
+ section = _ref.section,
100
+ articleHeadline = _ref.articleHeadline;
101
+ return _objectSpread(_objectSpread({}, _markup.default), {}, {
102
+ ad(key) {
103
+ return isLiveOrBreaking ? null : /*#__PURE__*/_react.default.createElement(_responsive.InlineAdWrapper, null, /*#__PURE__*/_react.default.createElement(_responsive.InlineAdTitle, null, "Advertisement"), /*#__PURE__*/_react.default.createElement(_ad.AdContainer, {
104
+ key: key,
105
+ slotName: "inline-ad"
106
+ }));
107
+ },
108
+
109
+ inlineAd1(key) {
110
+ return isLiveOrBreaking ? null : /*#__PURE__*/_react.default.createElement(_responsive.InlineAdWrapper, null, /*#__PURE__*/_react.default.createElement(_responsive.InlineAdTitle, null, "Advertisement"), /*#__PURE__*/_react.default.createElement(_ad.AdContainer, {
111
+ key: key,
112
+ slotName: "inlineAd1"
113
+ }));
114
+ },
115
+
116
+ inlineAd2(key) {
117
+ return isLiveOrBreaking ? null : /*#__PURE__*/_react.default.createElement(_responsive.InlineAdWrapper, null, /*#__PURE__*/_react.default.createElement(_responsive.InlineAdTitle, null, "Advertisement"), /*#__PURE__*/_react.default.createElement(_ad.AdContainer, {
118
+ key: key,
119
+ slotName: "inlineAd2"
120
+ }));
121
+ },
122
+
123
+ inlineAd3(key) {
124
+ return isLiveOrBreaking ? null : /*#__PURE__*/_react.default.createElement(_responsive.InlineAdWrapper, null, /*#__PURE__*/_react.default.createElement(_responsive.InlineAdTitle, null, "Advertisement"), /*#__PURE__*/_react.default.createElement(_ad.AdContainer, {
125
+ key: key,
126
+ slotName: "inlineAd3"
127
+ }));
128
+ },
129
+
130
+ dropCap(key, attrs, children) {
131
+ return /*#__PURE__*/_react.default.createElement(_context.default.Consumer, {
132
+ key: key
133
+ }, _ref2 => {
134
+ let _ref2$theme = _ref2.theme,
135
+ dropCapFont = _ref2$theme.dropCapFont,
136
+ _ref2$theme$sectionCo = _ref2$theme.sectionColour,
137
+ sectionColour = _ref2$theme$sectionCo === void 0 ? _tsStyleguide.colours.section.default : _ref2$theme$sectionCo;
138
+ return /*#__PURE__*/_react.default.createElement(_articleParagraph.DropCapView, {
139
+ colour: sectionColour,
140
+ font: dropCapFont
141
+ }, children);
142
+ });
143
+ },
144
+
145
+ nativeAd(key) {
146
+ return isLiveOrBreaking ? null : /*#__PURE__*/_react.default.createElement(_responsive.NativeAd, {
147
+ className: "group-3 hidden",
148
+ key: key
149
+ }, /*#__PURE__*/_react.default.createElement(_responsive.NativeAdTitle, null, "Sponsored"), /*#__PURE__*/_react.default.createElement(_responsive.Ad, {
150
+ id: "advert-inarticle-native-1",
151
+ "data-parent": "group-3"
152
+ }), /*#__PURE__*/_react.default.createElement(_responsive.Ad, {
153
+ id: "advert-inarticle-native-2",
154
+ "data-parent": "group-3"
155
+ }));
156
+ },
157
+
158
+ image(key, _ref3) {
159
+ let id = _ref3.id,
160
+ display = _ref3.display,
161
+ ratio = _ref3.ratio,
162
+ url = _ref3.url,
163
+ caption = _ref3.caption,
164
+ credits = _ref3.credits;
165
+ const MediaWrapper = responsiveDisplayWrapper(display);
166
+ return /*#__PURE__*/_react.default.createElement(_lazyLoad.default, {
167
+ key: key,
168
+ rootMargin: (0, _tsStyleguide.spacing)(40),
169
+ threshold: 0
170
+ }, _ref4 => {
171
+ let observed = _ref4.observed,
172
+ registerNode = _ref4.registerNode;
173
+ return /*#__PURE__*/_react.default.createElement("div", {
174
+ id: key,
175
+ ref: node => registerNode(node)
176
+ }, /*#__PURE__*/_react.default.createElement("div", {
177
+ id: id
178
+ }, /*#__PURE__*/_react.default.createElement(MediaWrapper, null, /*#__PURE__*/_react.default.createElement(_articleImage.default, {
179
+ captionOptions: {
180
+ caption,
181
+ credits
182
+ },
183
+ imageOptions: {
184
+ display,
185
+ highResSize: highResSizeCalc(observed, key, template),
186
+ lowResQuality: 3,
187
+ lowResSize: 400,
188
+ ratio,
189
+ uri: url
190
+ }
191
+ }))));
192
+ });
193
+ },
194
+
195
+ interactive(key, _ref5) {
196
+ let id = _ref5.id,
197
+ url = _ref5.url,
198
+ element = _ref5.element,
199
+ display = _ref5.display;
200
+ const attributes = element.attributes,
201
+ value = element.value;
202
+
203
+ switch (value) {
204
+ case "in-article-info-card":
205
+ return /*#__PURE__*/_react.default.createElement(_context.default.Consumer, {
206
+ key: key
207
+ }, _ref6 => {
208
+ let theme = _ref6.theme;
209
+ return /*#__PURE__*/_react.default.createElement("div", {
210
+ id: id
211
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.FetchProvider, {
212
+ url: deckApiUrl + attributes["deck-id"]
213
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.InfoCard, {
214
+ sectionColour: theme.sectionColour
215
+ })));
216
+ });
217
+
218
+ case "in-article-info-card-bulletpoints":
219
+ return /*#__PURE__*/_react.default.createElement(_context.default.Consumer, {
220
+ key: key
221
+ }, _ref7 => {
222
+ let theme = _ref7.theme;
223
+ return /*#__PURE__*/_react.default.createElement("div", {
224
+ id: id
225
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.FetchProvider, {
226
+ url: deckApiUrl + attributes["deck-id"]
227
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.InfoCardBulletPoints, {
228
+ sectionColour: theme.sectionColour
229
+ })));
230
+ });
231
+
232
+ case "in-article-big-numbers":
233
+ return /*#__PURE__*/_react.default.createElement(_context.default.Consumer, {
234
+ key: key
235
+ }, _ref8 => {
236
+ let theme = _ref8.theme;
237
+ return /*#__PURE__*/_react.default.createElement("div", {
238
+ id: id
239
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.FetchProvider, {
240
+ url: deckApiUrl + attributes["deck-id"]
241
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.BigNumbers, {
242
+ sectionColour: theme.sectionColour
243
+ })));
244
+ });
245
+
246
+ case "in-article-timelines":
247
+ return /*#__PURE__*/_react.default.createElement(_context.default.Consumer, {
248
+ key: key
249
+ }, _ref9 => {
250
+ let theme = _ref9.theme;
251
+ return /*#__PURE__*/_react.default.createElement("div", {
252
+ id: id
253
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.FetchProvider, {
254
+ url: deckApiUrl + attributes["deck-id"]
255
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.Timelines, {
256
+ sectionColour: theme.sectionColour
257
+ })));
258
+ });
259
+
260
+ case "gallery-carousel":
261
+ return /*#__PURE__*/_react.default.createElement(_context.default.Consumer, {
262
+ key: key
263
+ }, _ref10 => {
264
+ let theme = _ref10.theme;
265
+ return /*#__PURE__*/_react.default.createElement("div", {
266
+ id: id
267
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.FetchProvider, {
268
+ url: deckApiUrl + attributes["deck-id"]
269
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.GalleryCarousel, {
270
+ sectionColour: theme.sectionColour
271
+ })));
272
+ });
273
+
274
+ case "newsletter-puff":
275
+ // eslint-disable-next-line no-case-declarations
276
+ const code = attributes.code,
277
+ copy = attributes.copy,
278
+ headline = attributes.headline,
279
+ imageUri = attributes.imageUri,
280
+ label = attributes.label;
281
+ return isPreview ? /*#__PURE__*/_react.default.createElement("div", {
282
+ id: id
283
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.PreviewNewsletterPuff, {
284
+ copy: (0, _tsComponents.safeDecodeURIComponent)(copy),
285
+ headline: (0, _tsComponents.safeDecodeURIComponent)(headline),
286
+ imageUri: (0, _tsComponents.safeDecodeURIComponent)(imageUri),
287
+ label: (0, _tsComponents.safeDecodeURIComponent)(label)
288
+ })) : /*#__PURE__*/_react.default.createElement("div", {
289
+ id: id
290
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.InlineNewsletterPuff, {
291
+ analyticsStream: analyticsStream,
292
+ key: key,
293
+ code: code,
294
+ copy: (0, _tsComponents.safeDecodeURIComponent)(copy),
295
+ headline: (0, _tsComponents.safeDecodeURIComponent)(headline),
296
+ imageUri: (0, _tsComponents.safeDecodeURIComponent)(imageUri),
297
+ label: (0, _tsComponents.safeDecodeURIComponent)(label)
298
+ }));
299
+
300
+ case "opta-football-fixtures-v3":
301
+ return /*#__PURE__*/_react.default.createElement("div", {
302
+ id: id
303
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.OptaFootballFixtures, {
304
+ season: attributes.season,
305
+ competition: attributes.competition,
306
+ date_from: attributes["date-from"],
307
+ date_to: attributes["date-to"]
308
+ }));
309
+
310
+ case "opta-football-standings-v3":
311
+ return /*#__PURE__*/_react.default.createElement("div", {
312
+ id: id
313
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.OptaFootballStandings, {
314
+ season: attributes.season,
315
+ competition: attributes.competition,
316
+ default_nav: attributes.group,
317
+ navigation: true
318
+ }));
319
+
320
+ case "opta-football-match-summary-v3":
321
+ return /*#__PURE__*/_react.default.createElement("div", {
322
+ id: id
323
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.OptaFootballSummary, {
324
+ season: attributes.season,
325
+ competition: attributes.competition,
326
+ match: attributes.match
327
+ }));
328
+
329
+ case "opta-football-match-stats-v3":
330
+ return /*#__PURE__*/_react.default.createElement("div", {
331
+ id: id
332
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.OptaFootballMatchStats, {
333
+ season: attributes.season,
334
+ competition: attributes.competition,
335
+ match: attributes.match
336
+ }));
337
+
338
+ case "opta-rugby-union-fixtures-v2":
339
+ case "opta-rugby-fixtures-v3":
340
+ return /*#__PURE__*/_react.default.createElement("div", {
341
+ id: id
342
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.OptaRugbyFixtures, {
343
+ season: attributes.season,
344
+ competition: attributes.competition,
345
+ date_from: attributes["date-from"],
346
+ date_to: attributes["date-to"]
347
+ }));
348
+
349
+ case "opta-rugby-union-standings-v2":
350
+ case "opta-rugby-standings-v3":
351
+ return /*#__PURE__*/_react.default.createElement("div", {
352
+ id: id
353
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.OptaRugbyStandings, {
354
+ season: attributes.season,
355
+ competition: attributes.competition,
356
+ default_nav: attributes.group,
357
+ navigation: true
358
+ }));
359
+
360
+ case "opta-rugby-union-match-summary-v2":
361
+ case "opta-rugby-match-summary-v3":
362
+ return /*#__PURE__*/_react.default.createElement("div", {
363
+ id: id
364
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.OptaRugbySummary, {
365
+ season: attributes.season,
366
+ competition: attributes.competition,
367
+ match: attributes.match
368
+ }));
369
+
370
+ case "opta-rugby-union-match-stats-v2":
371
+ case "opta-rugby-match-stats-v3":
372
+ return /*#__PURE__*/_react.default.createElement("div", {
373
+ id: id
374
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.OptaRugbyMatchStats, {
375
+ season: attributes.season,
376
+ competition: attributes.competition,
377
+ match: attributes.match
378
+ }));
379
+
380
+ case "opta-football-match-lineups-v3":
381
+ case "opta-football-top-scorers-v3":
382
+ case "opta-football-match-commentary-v3":
383
+ case "opta-football-hub":
384
+ return null;
385
+
386
+ case "in-article-puff":
387
+ return /*#__PURE__*/_react.default.createElement(_context.default.Consumer, {
388
+ key: key
389
+ }, _ref11 => {
390
+ let theme = _ref11.theme;
391
+ return /*#__PURE__*/_react.default.createElement("div", {
392
+ id: id
393
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.FetchProvider, {
394
+ url: deckApiUrl + attributes["deck-id"]
395
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.InArticlePuff, {
396
+ sectionColour: theme.sectionColour,
397
+ forceImageAspectRatio: "3:2",
398
+ isLiveOrBreaking: isLiveOrBreaking
399
+ })));
400
+ });
401
+
402
+ case "article-header":
403
+ return /*#__PURE__*/_react.default.createElement("div", {
404
+ id: id
405
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.ArticleHeader, {
406
+ updated: attributes.updated // date={attributes.date}
407
+ // time={attributes.time}
408
+ ,
409
+ breaking: attributes.breaking,
410
+ headline: attributes.headline
411
+ }));
412
+
413
+ case "olympics-medal-table":
414
+ return /*#__PURE__*/_react.default.createElement(_context.default.Consumer, {
415
+ key: key
416
+ }, _ref12 => {
417
+ let theme = _ref12.theme;
418
+ return /*#__PURE__*/_react.default.createElement("div", {
419
+ id: id
420
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.OlympicsMedalTable, {
421
+ keys: olympicsKeys,
422
+ sectionColor: theme.sectionColour
423
+ }));
424
+ });
425
+
426
+ case "olympics-schedule":
427
+ return /*#__PURE__*/_react.default.createElement(_context.default.Consumer, {
428
+ key: key
429
+ }, _ref13 => {
430
+ let theme = _ref13.theme;
431
+ return /*#__PURE__*/_react.default.createElement("div", {
432
+ id: id
433
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.OlympicsSchedule, {
434
+ keys: olympicsKeys,
435
+ sectionColor: theme.sectionColour
436
+ }));
437
+ });
438
+
439
+ default:
440
+ return /*#__PURE__*/_react.default.createElement(_responsive.InteractiveContainer, {
441
+ key: key,
442
+ fullWidth: display === "fullwidth"
443
+ }, /*#__PURE__*/_react.default.createElement("div", {
444
+ id: id
445
+ }, /*#__PURE__*/_react.default.createElement(_interactiveWrapper.default, {
446
+ attributes: attributes,
447
+ element: value,
448
+ key: key,
449
+ source: url
450
+ })));
451
+ }
452
+ },
453
+
454
+ autoNewsletterPuff(key, _ref14) {
455
+ let element = _ref14.element;
456
+ const _element$attributes = element.attributes,
457
+ code = _element$attributes.code,
458
+ copy = _element$attributes.copy,
459
+ headline = _element$attributes.headline,
460
+ imageUri = _element$attributes.imageUri,
461
+ label = _element$attributes.label;
462
+ return /*#__PURE__*/_react.default.createElement(_tsComponents.AutoNewsletterPuff, {
463
+ analyticsStream: analyticsStream,
464
+ key: key,
465
+ code: code,
466
+ copy: copy,
467
+ headline: headline,
468
+ imageUri: imageUri,
469
+ label: label
470
+ });
471
+ },
472
+
473
+ autoInlineRelatedArticles(key, _ref15) {
474
+ let element = _ref15.element;
475
+ return /*#__PURE__*/_react.default.createElement(_context.default.Consumer, {
476
+ key: key
477
+ }, _ref16 => {
478
+ let theme = _ref16.theme;
479
+ return /*#__PURE__*/_react.default.createElement(_tsComponents.HiddenDiv, {
480
+ className: "inlineRelatedArticles"
481
+ }, /*#__PURE__*/_react.default.createElement(_tsComponents.InArticleRelatedArticles, {
482
+ heading: "Related Articles",
483
+ relatedArticles: element.attributes.relatedArticles,
484
+ sectionColour: theme.sectionColour
485
+ }));
486
+ });
487
+ },
488
+
489
+ keyFacts(key, attributes, renderedChildren, indx, node) {
490
+ return /*#__PURE__*/_react.default.createElement(_keyFacts.default, {
491
+ key: key,
492
+ ast: node,
493
+ section: section,
494
+ headline: articleHeadline,
495
+ isLiveOrBreaking: isLiveOrBreaking
496
+ });
497
+ },
498
+
499
+ heading2(key, attributes, children) {
500
+ return /*#__PURE__*/_react.default.createElement(_responsive.Heading2, null, children);
501
+ },
502
+
503
+ heading3(key, attributes, children) {
504
+ return /*#__PURE__*/_react.default.createElement(_responsive.Heading3, null, children);
505
+ },
506
+
507
+ heading4(key, attributes, children) {
508
+ return /*#__PURE__*/_react.default.createElement(_responsive.Heading4, null, children);
509
+ },
510
+
511
+ heading5(key, attributes, children) {
512
+ return /*#__PURE__*/_react.default.createElement(_responsive.Heading5, null, children);
513
+ },
514
+
515
+ heading6(key, attributes, children) {
516
+ return /*#__PURE__*/_react.default.createElement(_responsive.Heading6, null, children);
517
+ },
518
+
519
+ link(key, attributes, children) {
520
+ const href = attributes.href,
521
+ target = attributes.target,
522
+ dropCap = attributes.dropCap;
523
+ return /*#__PURE__*/_react.default.createElement(_articleLink.default, {
524
+ dropCap: dropCap,
525
+ key: key,
526
+ target: target,
527
+ url: href
528
+ }, children);
529
+ },
530
+
531
+ paragraph(key, attributes, children) {
532
+ const id = attributes && attributes.id;
533
+ return /*#__PURE__*/_react.default.createElement(_articleParagraph.default, _extends({
534
+ key: key
535
+ }, id ? {
536
+ id
537
+ } : {}), children);
538
+ },
539
+
540
+ paywall(key, attributes, children) {
541
+ return /*#__PURE__*/_react.default.createElement("span", {
542
+ className: paidContentClassName,
543
+ key: key
544
+ }, children);
545
+ },
546
+
547
+ pullQuote(key, _ref17, children) {
548
+ let _ref17$caption = _ref17.caption,
549
+ name = _ref17$caption.name,
550
+ text = _ref17$caption.text,
551
+ twitter = _ref17$caption.twitter;
552
+ return /*#__PURE__*/_react.default.createElement(_context.default.Consumer, {
553
+ key: key
554
+ }, _ref18 => {
555
+ let _ref18$theme = _ref18.theme,
556
+ pullQuoteFont = _ref18$theme.pullQuoteFont,
557
+ _ref18$theme$sectionC = _ref18$theme.sectionColour,
558
+ sectionColour = _ref18$theme$sectionC === void 0 ? _tsStyleguide.colours.section.default : _ref18$theme$sectionC;
559
+ return /*#__PURE__*/_react.default.createElement(_responsive.PullQuoteContainer, null, /*#__PURE__*/_react.default.createElement(_responsive.PullQuoteResp, null, /*#__PURE__*/_react.default.createElement(_pullQuote.default, {
560
+ caption: name,
561
+ font: pullQuoteFont,
562
+ quoteColour: sectionColour,
563
+ text: text,
564
+ twitter: twitter
565
+ }, children)));
566
+ });
567
+ },
568
+
569
+ video(key, _ref19) {
570
+ let id = _ref19.id,
571
+ is360 = _ref19.is360,
572
+ brightcovePolicyKey = _ref19.brightcovePolicyKey,
573
+ brightcoveVideoId = _ref19.brightcoveVideoId,
574
+ brightcoveAccountId = _ref19.brightcoveAccountId,
575
+ brightcovePlayerId = _ref19.brightcovePlayerId,
576
+ caption = _ref19.caption,
577
+ posterImageUrl = _ref19.posterImageUrl;
578
+ const MediaWrapper = responsiveDisplayWrapper("primary");
579
+ return /*#__PURE__*/_react.default.createElement(MediaWrapper, {
580
+ key: key
581
+ }, /*#__PURE__*/_react.default.createElement("figure", {
582
+ style: {
583
+ margin: 0
584
+ }
585
+ }, /*#__PURE__*/_react.default.createElement(_utils.AspectRatioContainer, {
586
+ aspectRatio: "16:9"
587
+ }, /*#__PURE__*/_react.default.createElement(_video.default, {
588
+ id: id,
589
+ is360: is360,
590
+ accountId: brightcoveAccountId,
591
+ height: "100%",
592
+ playerId: brightcovePlayerId,
593
+ policyKey: brightcovePolicyKey,
594
+ poster: {
595
+ uri: posterImageUrl
596
+ },
597
+ videoId: brightcoveVideoId,
598
+ width: "100%"
599
+ })), /*#__PURE__*/_react.default.createElement("figcaption", null, /*#__PURE__*/_react.default.createElement(_insetCaption.default, {
600
+ caption: caption
601
+ }))));
602
+ }
603
+
604
+ });
605
+ };
606
+
607
+ const decorateAd = _ref20 => {
608
+ let contextUrl = _ref20.contextUrl,
609
+ section = _ref20.section;
610
+ return element => element.name === "ad" ? _objectSpread(_objectSpread({}, element), {}, {
611
+ attributes: _objectSpread(_objectSpread({}, element.attributes), {}, {
612
+ contextUrl,
613
+ section
614
+ })
615
+ }) : element;
616
+ };
617
+
618
+ const ArticleBody = _ref21 => {
619
+ let bodyContent = _ref21.content,
620
+ contextUrl = _ref21.contextUrl,
621
+ section = _ref21.section,
622
+ paidContentClassName = _ref21.paidContentClassName,
623
+ template = _ref21.template,
624
+ isPreview = _ref21.isPreview,
625
+ swgProductId = _ref21.swgProductId,
626
+ inArticlePuffFlag = _ref21.inArticlePuffFlag,
627
+ olympicsKeys = _ref21.olympicsKeys,
628
+ isLiveOrBreaking = _ref21.isLiveOrBreaking,
629
+ articleHeadline = _ref21.articleHeadline;
630
+ return (0, _markupForest.default)(bodyContent.map(decorateAd({
631
+ contextUrl,
632
+ section
633
+ })), renderers({
634
+ paidContentClassName,
635
+ template,
636
+ isPreview,
637
+ swgProductId,
638
+ inArticlePuffFlag,
639
+ olympicsKeys,
640
+ isLiveOrBreaking,
641
+ section,
642
+ articleHeadline
643
+ }));
644
+ };
645
+
646
+ ArticleBody.propTypes = {
647
+ content: _propTypes.default.arrayOf(_propTypes.default.shape({
648
+ attributes: _propTypes.default.object,
649
+ children: _propTypes.default.arrayOf(_propTypes.default.object),
650
+ name: _propTypes.default.string
651
+ })).isRequired,
652
+ contextUrl: _propTypes.default.string.isRequired,
653
+ paidContentClassName: _propTypes.default.string,
654
+ section: _propTypes.default.string
655
+ };
656
+ var _default = ArticleBody;
657
+ exports.default = _default;