@newskit-render/core 0.0.0-d55b7d88

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 (456) hide show
  1. package/.ci/trigger-circleci-workflow.sh +37 -0
  2. package/.eslintignore +23 -0
  3. package/.eslintrc +74 -0
  4. package/.prettierignore +19 -0
  5. package/.prettierrc +7 -0
  6. package/CHANGELOG.md +7638 -0
  7. package/Dockerfile +14 -0
  8. package/Dockerfile.withNewRelic +15 -0
  9. package/README.md +274 -0
  10. package/__tests__/pages/__snapshots__/brightcove.test.tsx.snap +20 -0
  11. package/__tests__/pages/__snapshots__/home.test.tsx.snap +1195 -0
  12. package/__tests__/pages/brightcove.test.tsx +34 -0
  13. package/__tests__/pages/empty.test.tsx +10 -0
  14. package/__tests__/pages/home.test.tsx +16 -0
  15. package/app-context/InstrumentationContextProvider.tsx +36 -0
  16. package/assets/fontFamily.ts +416 -0
  17. package/assets/fonts/Graphik-Black-App.ttf +0 -0
  18. package/assets/fonts/Graphik-BlackItalic-App.ttf +0 -0
  19. package/assets/fonts/Graphik-Bold-App.ttf +0 -0
  20. package/assets/fonts/Graphik-BoldItalic-App.ttf +0 -0
  21. package/assets/fonts/Graphik-Extralight-App.ttf +0 -0
  22. package/assets/fonts/Graphik-ExtralightItalic-App.ttf +0 -0
  23. package/assets/fonts/Graphik-Light-App.ttf +0 -0
  24. package/assets/fonts/Graphik-LightItalic-App.ttf +0 -0
  25. package/assets/fonts/Graphik-Medium-App.ttf +0 -0
  26. package/assets/fonts/Graphik-Medium-Web.woff2 +0 -0
  27. package/assets/fonts/Graphik-MediumItalic-App.ttf +0 -0
  28. package/assets/fonts/Graphik-Regular-App.ttf +0 -0
  29. package/assets/fonts/Graphik-Regular-Web.woff2 +0 -0
  30. package/assets/fonts/Graphik-RegularItalic-App.ttf +0 -0
  31. package/assets/fonts/Graphik-Semibold-App.ttf +0 -0
  32. package/assets/fonts/Graphik-Semibold-Web.woff2 +0 -0
  33. package/assets/fonts/Graphik-SemiboldItalic-App.ttf +0 -0
  34. package/assets/fonts/Graphik-Super-App.ttf +0 -0
  35. package/assets/fonts/Graphik-SuperItalic-App.ttf +0 -0
  36. package/assets/fonts/Graphik-Thin-App.ttf +0 -0
  37. package/assets/fonts/Graphik-ThinItalic-App.ttf +0 -0
  38. package/assets/fonts/Montserrat-Black.ttf +0 -0
  39. package/assets/fonts/Montserrat-BlackItalic.ttf +0 -0
  40. package/assets/fonts/Montserrat-Bold.ttf +0 -0
  41. package/assets/fonts/Montserrat-BoldItalic.ttf +0 -0
  42. package/assets/fonts/Montserrat-ExtraBold.ttf +0 -0
  43. package/assets/fonts/Montserrat-ExtraBoldItalic.ttf +0 -0
  44. package/assets/fonts/Montserrat-ExtraLight.ttf +0 -0
  45. package/assets/fonts/Montserrat-ExtraLightItalic.ttf +0 -0
  46. package/assets/fonts/Montserrat-Italic.ttf +0 -0
  47. package/assets/fonts/Montserrat-Light.ttf +0 -0
  48. package/assets/fonts/Montserrat-LightItalic.ttf +0 -0
  49. package/assets/fonts/Montserrat-Medium.ttf +0 -0
  50. package/assets/fonts/Montserrat-MediumItalic.ttf +0 -0
  51. package/assets/fonts/Montserrat-Regular.ttf +0 -0
  52. package/assets/fonts/Montserrat-SemiBold.ttf +0 -0
  53. package/assets/fonts/Montserrat-SemiBoldItalic.ttf +0 -0
  54. package/assets/fonts/Montserrat-Thin.ttf +0 -0
  55. package/assets/fonts/Montserrat-ThinItalic.ttf +0 -0
  56. package/assets/fonts/PublicoHeadline-Black-App.ttf +0 -0
  57. package/assets/fonts/PublicoHeadline-BlackItalic-App.ttf +0 -0
  58. package/assets/fonts/PublicoHeadline-Bold-App.ttf +0 -0
  59. package/assets/fonts/PublicoHeadline-Bold-Web.woff2 +0 -0
  60. package/assets/fonts/PublicoHeadline-BoldItalic-App.ttf +0 -0
  61. package/assets/fonts/PublicoHeadline-Extrabold-App.ttf +0 -0
  62. package/assets/fonts/PublicoHeadline-ExtraboldItalic-App.ttf +0 -0
  63. package/assets/fonts/PublicoHeadline-Italic-App.ttf +0 -0
  64. package/assets/fonts/PublicoHeadline-Light-App.ttf +0 -0
  65. package/assets/fonts/PublicoHeadline-LightItalic-App.ttf +0 -0
  66. package/assets/fonts/PublicoHeadline-Medium-App.ttf +0 -0
  67. package/assets/fonts/PublicoHeadline-MediumItalic-App.ttf +0 -0
  68. package/assets/fonts/PublicoHeadline-Roman-App.ttf +0 -0
  69. package/assets/fonts/PublicoHeadline-Roman-Web.woff2 +0 -0
  70. package/assets/fonts/PublicoText-Bold-App.ttf +0 -0
  71. package/assets/fonts/PublicoText-BoldItalic-App.ttf +0 -0
  72. package/assets/fonts/PublicoText-Italic-App.ttf +0 -0
  73. package/assets/fonts/PublicoText-Italic-Web.woff2 +0 -0
  74. package/assets/fonts/PublicoText-Roman-App.ttf +0 -0
  75. package/assets/fonts/PublicoText-Roman-Web.woff2 +0 -0
  76. package/assets/fonts/PublicoText-Semibold-App.ttf +0 -0
  77. package/assets/fonts/PublicoText-SemiboldItalic-App.ttf +0 -0
  78. package/assets/fonts/Roboto-Bold.ttf +0 -0
  79. package/assets/fonts/Roboto-Light.ttf +0 -0
  80. package/assets/fonts/Roboto-Medium.ttf +0 -0
  81. package/assets/fonts/Roboto-Regular.ttf +0 -0
  82. package/assets/fonts/TheSun-Bold.ttf +0 -0
  83. package/assets/fonts/TheSun-BoldItalic.ttf +0 -0
  84. package/assets/fonts/TheSun-HeavyCondensed.ttf +0 -0
  85. package/assets/fonts/TheSun-HeavyNarrow.ttf +0 -0
  86. package/assets/fonts/TheSun-Italic.ttf +0 -0
  87. package/assets/fonts/TheSun-Medium.ttf +0 -0
  88. package/assets/fonts/TheSun-MediumItalic.ttf +0 -0
  89. package/assets/fonts/TheSun-Regular.ttf +0 -0
  90. package/assets/fonts/TimesDigital-Bold.ttf +0 -0
  91. package/assets/fonts/TimesDigital-BoldItalic.ttf +0 -0
  92. package/assets/fonts/TimesDigital-BoldSC.ttf +0 -0
  93. package/assets/fonts/TimesDigital-Italic.ttf +0 -0
  94. package/assets/fonts/TimesDigital-Regular.ttf +0 -0
  95. package/assets/fonts/TimesDigital-RegularSC.ttf +0 -0
  96. package/assets/fonts/TimesDigitalW04-Bold.ttf +0 -0
  97. package/assets/fonts/TimesDigitalW04-BoldItalic.ttf +0 -0
  98. package/assets/fonts/TimesDigitalW04-BoldSC.ttf +0 -0
  99. package/assets/fonts/TimesDigitalW04-Italic.ttf +0 -0
  100. package/assets/fonts/TimesDigitalW04-Regular.ttf +0 -0
  101. package/assets/fonts/TimesDigitalW04-RegularSC.ttf +0 -0
  102. package/assets/fonts/TimesModern-Regular.otf +0 -0
  103. package/assets/fonts/attribuitions.mdx +35 -0
  104. package/assets/fonts/bitter-medium.woff +0 -0
  105. package/assets/fonts/bitter-medium.woff2 +0 -0
  106. package/assets/fonts/bitter-mediumitalic.woff +0 -0
  107. package/assets/fonts/bitter-mediumitalic.woff2 +0 -0
  108. package/assets/fonts/bitter-regular.woff +0 -0
  109. package/assets/fonts/bitter-regular.woff2 +0 -0
  110. package/assets/fonts/bitter-semibold.woff +0 -0
  111. package/assets/fonts/bitter-semibold.woff2 +0 -0
  112. package/assets/fonts/dmmono-medium.woff +0 -0
  113. package/assets/fonts/dmmono-medium.woff2 +0 -0
  114. package/assets/fonts/dmsans-bold-webfont.woff +0 -0
  115. package/assets/fonts/dmsans-bold-webfont.woff2 +0 -0
  116. package/assets/fonts/dmsans-bolditalic-webfont.woff +0 -0
  117. package/assets/fonts/dmsans-bolditalic-webfont.woff2 +0 -0
  118. package/assets/fonts/dmsans-italic-webfont.woff +0 -0
  119. package/assets/fonts/dmsans-italic-webfont.woff2 +0 -0
  120. package/assets/fonts/dmsans-medium-webfont.woff +0 -0
  121. package/assets/fonts/dmsans-medium-webfont.woff2 +0 -0
  122. package/assets/fonts/dmsans-mediumitalic-webfont.woff +0 -0
  123. package/assets/fonts/dmsans-mediumitalic-webfont.woff2 +0 -0
  124. package/assets/fonts/dmsans-regular-webfont.woff +0 -0
  125. package/assets/fonts/dmsans-regular-webfont.woff2 +0 -0
  126. package/assets/fonts/notosans-bold-webfont.woff +0 -0
  127. package/assets/fonts/notosans-bold-webfont.woff2 +0 -0
  128. package/assets/fonts/notosans-italic-webfont.woff +0 -0
  129. package/assets/fonts/notosans-italic-webfont.woff2 +0 -0
  130. package/assets/fonts/notosans-medium-webfont.woff +0 -0
  131. package/assets/fonts/notosans-medium-webfont.woff2 +0 -0
  132. package/assets/fonts/notosans-regular-webfont.woff +0 -0
  133. package/assets/fonts/notosans-regular-webfont.woff2 +0 -0
  134. package/assets/fonts/poppins-bold-webfont.woff +0 -0
  135. package/assets/fonts/poppins-bold-webfont.woff2 +0 -0
  136. package/assets/fonts/poppins-bolditalic-webfont.woff +0 -0
  137. package/assets/fonts/poppins-bolditalic-webfont.woff2 +0 -0
  138. package/assets/fonts/poppins-extrabold-webfont.woff +0 -0
  139. package/assets/fonts/poppins-extrabold-webfont.woff2 +0 -0
  140. package/assets/fonts/poppins-extrabolditalic-webfont.woff +0 -0
  141. package/assets/fonts/poppins-extrabolditalic-webfont.woff2 +0 -0
  142. package/assets/fonts/poppins-italic-webfont.woff +0 -0
  143. package/assets/fonts/poppins-italic-webfont.woff2 +0 -0
  144. package/assets/fonts/poppins-light-webfont.woff +0 -0
  145. package/assets/fonts/poppins-light-webfont.woff2 +0 -0
  146. package/assets/fonts/poppins-lightitalic-webfont.woff +0 -0
  147. package/assets/fonts/poppins-lightitalic-webfont.woff2 +0 -0
  148. package/assets/fonts/poppins-medium-webfont.woff +0 -0
  149. package/assets/fonts/poppins-medium-webfont.woff2 +0 -0
  150. package/assets/fonts/poppins-mediumitalic-webfont.woff +0 -0
  151. package/assets/fonts/poppins-mediumitalic-webfont.woff2 +0 -0
  152. package/assets/fonts/poppins-regular-webfont.woff +0 -0
  153. package/assets/fonts/poppins-regular-webfont.woff2 +0 -0
  154. package/assets/fonts/poppins-semibold-webfont.woff +0 -0
  155. package/assets/fonts/poppins-semibold-webfont.woff2 +0 -0
  156. package/assets/fonts/poppins-semibolditalic-webfont.woff +0 -0
  157. package/assets/fonts/poppins-semibolditalic-webfont.woff2 +0 -0
  158. package/assets/fonts/source-serif-pro-600.woff +0 -0
  159. package/assets/fonts/source-serif-pro-600.woff2 +0 -0
  160. package/assets/fonts/source-serif-pro-600italic.woff +0 -0
  161. package/assets/fonts/source-serif-pro-600italic.woff2 +0 -0
  162. package/assets/fonts/source-serif-pro-700.woff +0 -0
  163. package/assets/fonts/source-serif-pro-700.woff2 +0 -0
  164. package/assets/fonts/source-serif-pro-700italic.woff +0 -0
  165. package/assets/fonts/source-serif-pro-700italic.woff2 +0 -0
  166. package/assets/fonts/source-serif-pro-italic.woff +0 -0
  167. package/assets/fonts/source-serif-pro-italic.woff2 +0 -0
  168. package/assets/fonts/source-serif-pro-regular.woff +0 -0
  169. package/assets/fonts/source-serif-pro-regular.woff2 +0 -0
  170. package/components/AccountDropdown/AccountDropdown.tsx +65 -0
  171. package/components/AccountDropdown/__tests__/AcountDropdown.test.tsx +83 -0
  172. package/components/AccountDropdown/accounts.ts +47 -0
  173. package/components/AccountDropdown/index.tsx +2 -0
  174. package/components/AccountDropdown/utils.ts +21 -0
  175. package/components/ErrorPage/ErrorPage.tsx +135 -0
  176. package/components/ad/index.tsx +35 -0
  177. package/components/article/Highlights.tsx +77 -0
  178. package/components/article/MetaBox.tsx +50 -0
  179. package/components/article/RelatedArticles.tsx +53 -0
  180. package/components/article/RelatedTopics.tsx +59 -0
  181. package/components/article/ShareBarComponent.tsx +53 -0
  182. package/components/article/__tests__/__snapshots__/index.test.tsx.snap +1568 -0
  183. package/components/article/__tests__/index.test.tsx +171 -0
  184. package/components/article/__tests__/mocks.ts +105 -0
  185. package/components/article/index.tsx +320 -0
  186. package/components/common/BackToHomepage.tsx +37 -0
  187. package/components/common/NavLink.tsx +26 -0
  188. package/components/common/NewskitLogo.tsx +52 -0
  189. package/components/common/NewskitLogoShort.tsx +48 -0
  190. package/components/common/SectionTitleBar.tsx +57 -0
  191. package/components/common/ShareButton.tsx +18 -0
  192. package/components/common/ViewMoreButton.tsx +20 -0
  193. package/components/common/iconNavLink/IconNavLink.tsx +70 -0
  194. package/components/common/iconNavLink/__tests__/IconNavLink.test.tsx +35 -0
  195. package/components/common/iconNavLink/index.ts +3 -0
  196. package/components/common/iconNavLink/types.ts +24 -0
  197. package/components/common/icons/IconAccount.tsx +13 -0
  198. package/components/common/icons/IconFilledTwitter.tsx +14 -0
  199. package/components/common/icons/StyledIconFilledChevronRight.tsx +12 -0
  200. package/components/footer/__snapshots__/index.test.tsx.snap +192 -0
  201. package/components/footer/index.test.tsx +13 -0
  202. package/components/footer/index.tsx +151 -0
  203. package/components/header/banner-messages.ts +39 -0
  204. package/components/header/index.tsx +52 -0
  205. package/components/header/navigation-links.ts +20 -0
  206. package/components/layout/Gutter.tsx +11 -0
  207. package/components/layout/LayoutTemplate.tsx +26 -0
  208. package/components/layout/MainGrid.tsx +66 -0
  209. package/components/layout/index.tsx +3 -0
  210. package/components/layout/layoutTypes.ts +13 -0
  211. package/components/section/ArticleSlice.tsx +35 -0
  212. package/components/section/CollectionBlock.tsx +54 -0
  213. package/components/section/SectionContext.tsx +9 -0
  214. package/components/section/__tests__/ArticleSlice.test.tsx +128 -0
  215. package/components/section/__tests__/CollectionBlock.test.tsx +83 -0
  216. package/components/section/__tests__/pageBlock.test.tsx +24 -0
  217. package/components/section/__tests__/sectionUtils.test.ts +94 -0
  218. package/components/section/index.tsx +39 -0
  219. package/components/section/layouts/Block.tsx +79 -0
  220. package/components/section/layouts/FallBack.tsx +24 -0
  221. package/components/section/layouts/Lead.tsx +43 -0
  222. package/components/section/layouts/Rows.tsx +82 -0
  223. package/components/section/layouts/SectionTitle.tsx +57 -0
  224. package/components/section/layouts/__tests__/Lead.test.tsx +37 -0
  225. package/components/section/layouts/__tests__/Rows.test.tsx +40 -0
  226. package/components/section/layouts/__tests__/SectionTitle.test.tsx +37 -0
  227. package/components/section/layouts/__tests__/__snapshots__/Lead.test.tsx.snap +180 -0
  228. package/components/section/layouts/__tests__/__snapshots__/SectionTitle.test.tsx.snap +354 -0
  229. package/components/section/layouts/gridUtils.ts +21 -0
  230. package/components/section/layouts/index.tsx +4 -0
  231. package/components/section/layouts/types.ts +13 -0
  232. package/components/section/pageBlock.tsx +23 -0
  233. package/components/section/sectionUtils.ts +61 -0
  234. package/components/teaser/index.test.tsx +50 -0
  235. package/components/teaser/index.tsx +64 -0
  236. package/components/teaser/teaserVariants.ts +33 -0
  237. package/components/teaser/variant-types.ts +49 -0
  238. package/components/teaser/variants/featureVariant.ts +42 -0
  239. package/components/teaser/variants/horizontal.ts +14 -0
  240. package/components/teaser/variants/titleTeaserVariant.ts +32 -0
  241. package/components/teaser/variants/titleVertical.ts +24 -0
  242. package/components/utils/index.test.ts +12 -0
  243. package/components/utils/index.ts +6 -0
  244. package/config/__tests__/index.test.ts +54 -0
  245. package/config/environment.ts +80 -0
  246. package/config/index.ts +2 -0
  247. package/config/multiTenancy.ts +11 -0
  248. package/constants/index.ts +2 -0
  249. package/context/app-context/AppContext.test.tsx +56 -0
  250. package/context/app-context/holidayStopListContextOverrides.ts +18 -0
  251. package/context/app-context/index.tsx +34 -0
  252. package/context/app-context/paymentMethodContext.tsx +70 -0
  253. package/context/index.tsx +2 -0
  254. package/context/multi-tenancy/MultiTenancy.test.tsx +48 -0
  255. package/context/multi-tenancy/index.tsx +32 -0
  256. package/css/index.ts +15 -0
  257. package/cypress/axe/terminal-log.js +19 -0
  258. package/cypress/config/visual.config.ts +11 -0
  259. package/cypress/config/visual.skip.config.ts +10 -0
  260. package/cypress/e2e/account/accessibility.cy.js +88 -0
  261. package/cypress/e2e/account/banners.cy.js +169 -0
  262. package/cypress/e2e/account/cancellation.cy.js +219 -0
  263. package/cypress/e2e/account/holiday-stops.cy.js +109 -0
  264. package/cypress/e2e/account/main-api.cy.js +102 -0
  265. package/cypress/e2e/account/newsletters-and-alerts.cy.js +149 -0
  266. package/cypress/e2e/account/newsletters-page.cy.js +69 -0
  267. package/cypress/e2e/account/payment-page.cy.js +98 -0
  268. package/cypress/e2e/account/personal-details.cy.js +1161 -0
  269. package/cypress/e2e/account/subscription-and-billing.cy.js +434 -0
  270. package/cypress/e2e/checkout/account-creation.cy.js +8 -0
  271. package/cypress/e2e/checkout/payment-details.cy.js +19 -0
  272. package/cypress/e2e/core/home-page.cy.js +6 -0
  273. package/cypress/e2e/help-hub/accessibility.cy.js +35 -0
  274. package/cypress/e2e/help-hub/article-page.cy.js +115 -0
  275. package/cypress/e2e/help-hub/landing-page.cy.js +94 -0
  276. package/cypress/e2e/help-hub/result-page.cy.js +117 -0
  277. package/cypress/fixtures/empty.html +10 -0
  278. package/cypress/fixtures/example.json +5 -0
  279. package/cypress/fixtures/holiday-stops.json +40 -0
  280. package/cypress/fixtures/paymentFailure.js +24 -0
  281. package/cypress/fixtures/testDates.js +26 -0
  282. package/cypress/support/commands.js +125 -0
  283. package/cypress/support/consentValues.js +5839 -0
  284. package/cypress/support/e2e.js +22 -0
  285. package/cypress/support/users.js +58 -0
  286. package/cypress/visual/account/print-visual-regression.cy.js +9 -0
  287. package/cypress/visual/account/visual-regression.cy.js +40 -0
  288. package/cypress/visual/empty/empty.cy.js +5 -0
  289. package/cypress.config.ts +38 -0
  290. package/helpers/__tests__/getUser.test.ts +45 -0
  291. package/helpers/__tests__/logger.test.ts +62 -0
  292. package/helpers/__tests__/useThemeDropdownObject.test.ts +49 -0
  293. package/helpers/a11y.ts +7 -0
  294. package/helpers/addCacheHeaders.ts +8 -0
  295. package/helpers/getUser.ts +37 -0
  296. package/helpers/getYear.ts +1 -0
  297. package/helpers/global-types.ts +186 -0
  298. package/helpers/logger/getWinstonLogger.ts +19 -0
  299. package/helpers/logger/index.ts +20 -0
  300. package/helpers/logger/replaceConsoleWithLogger.ts +14 -0
  301. package/helpers/mocks/articleMock.ts +50 -0
  302. package/helpers/mocks/getPageMock.ts +369 -0
  303. package/helpers/mocks/getRadioPostMock.ts +71 -0
  304. package/helpers/mocks/getRadioPostsMock.ts +26 -0
  305. package/helpers/mocks/getRecommendationsMock.ts +20 -0
  306. package/helpers/mocks/index.ts +7 -0
  307. package/helpers/multiTenancy.ts +19 -0
  308. package/helpers/setupTests.ts +5 -0
  309. package/helpers/test-utils.tsx +33 -0
  310. package/helpers/useThemeDropdownObject.tsx +73 -0
  311. package/infrastructure/.circleci/config.yml +1187 -0
  312. package/infrastructure/INFRASTRUCTURE.md +142 -0
  313. package/infrastructure/build_and_deploy.png +0 -0
  314. package/infrastructure/helm/Chart.yaml +21 -0
  315. package/infrastructure/helm/templates/_helpers.tpl +87 -0
  316. package/infrastructure/helm/templates/deployment.yaml +45 -0
  317. package/infrastructure/helm/templates/horizontalpodautoscaler.yaml +21 -0
  318. package/infrastructure/helm/templates/ingress.yaml +31 -0
  319. package/infrastructure/helm/templates/networkpolicy.yaml +26 -0
  320. package/infrastructure/helm/templates/secret.yaml +12 -0
  321. package/infrastructure/helm/templates/service.yaml +15 -0
  322. package/infrastructure/helm/values-dev.yaml +39 -0
  323. package/infrastructure/helm/values-local.yaml +30 -0
  324. package/infrastructure/helm/values-pr.yaml +40 -0
  325. package/infrastructure/helm/values-prod.yaml +39 -0
  326. package/infrastructure/helm/values-staging.yaml +39 -0
  327. package/infrastructure/helm/values.yaml +44 -0
  328. package/infrastructure/pull_request.png +0 -0
  329. package/infrastructure/release-documentation-cli.config.json +18 -0
  330. package/infrastructure/remove_pr.png +0 -0
  331. package/infrastructure/terraform-ecr/dev.tfvars +3 -0
  332. package/infrastructure/terraform-ecr/ecr.tf +69 -0
  333. package/infrastructure/terraform-ecr/main.tf +3 -0
  334. package/infrastructure/terraform-ecr/variables.tf +19 -0
  335. package/infrastructure/terraform-ecr/versions.tf +12 -0
  336. package/infrastructure/terraform-newrelic/alerts.tf +290 -0
  337. package/infrastructure/terraform-newrelic/dashboards.tf +347 -0
  338. package/infrastructure/terraform-newrelic/dev.tfvars +3 -0
  339. package/infrastructure/terraform-newrelic/lighthouse-script-dev.js +53 -0
  340. package/infrastructure/terraform-newrelic/lighthouse-script-prod.js +54 -0
  341. package/infrastructure/terraform-newrelic/lighthouse-script-stage.js +54 -0
  342. package/infrastructure/terraform-newrelic/main.tf +11 -0
  343. package/infrastructure/terraform-newrelic/monitors.tf +11 -0
  344. package/infrastructure/terraform-newrelic/prod.tfvars +3 -0
  345. package/infrastructure/terraform-newrelic/staging.tfvars +3 -0
  346. package/infrastructure/terraform-newrelic/variables.tf +33 -0
  347. package/infrastructure/terraform-newrelic/versions.tf +18 -0
  348. package/jest.config.js +40 -0
  349. package/jest.config.pact.js +18 -0
  350. package/newrelic.js +86 -0
  351. package/next-env.d.ts +5 -0
  352. package/next.config.js +95 -0
  353. package/package.json +127 -0
  354. package/pages/_app.tsx +117 -0
  355. package/pages/_document.tsx +112 -0
  356. package/pages/_error.tsx +68 -0
  357. package/pages/account/add/[field].tsx +34 -0
  358. package/pages/account/cancellation/index.tsx +22 -0
  359. package/pages/account/delete/confirm/index.tsx +16 -0
  360. package/pages/account/delete/error/index.tsx +16 -0
  361. package/pages/account/delete/index.tsx +16 -0
  362. package/pages/account/delete/success/index.tsx +16 -0
  363. package/pages/account/dream-team/index.tsx +19 -0
  364. package/pages/account/edit/[field].tsx +45 -0
  365. package/pages/account/family/index.tsx +19 -0
  366. package/pages/account/holiday-stop/index.tsx +19 -0
  367. package/pages/account/holiday-stop/previous-holiday-stops.tsx +19 -0
  368. package/pages/account/holiday-stop/upcoming-holiday-stops.tsx +19 -0
  369. package/pages/account/index.tsx +33 -0
  370. package/pages/account/newsletters/index.tsx +19 -0
  371. package/pages/account/newsletters-and-alerts/index.tsx +24 -0
  372. package/pages/account/payment/[paymentMethod].tsx +37 -0
  373. package/pages/account/payment/index.tsx +23 -0
  374. package/pages/account/payment-methods/index.tsx +21 -0
  375. package/pages/account/subscription-and-billing/index.tsx +29 -0
  376. package/pages/api/account/get-session/index.ts +33 -0
  377. package/pages/api/account/invoice/index.ts +35 -0
  378. package/pages/api/account/mutate/index.ts +8 -0
  379. package/pages/api/account/query/index.ts +7 -0
  380. package/pages/api/auth/[...nextauth].ts +11 -0
  381. package/pages/api/competitions-sitemap.ts +19 -0
  382. package/pages/api/feed.ts +23 -0
  383. package/pages/api/health-check.ts +7 -0
  384. package/pages/api/news-sitemap.ts +18 -0
  385. package/pages/api/pages-sitemap.ts +27 -0
  386. package/pages/api/robots.ts +19 -0
  387. package/pages/api/sitemap.ts +24 -0
  388. package/pages/checkout/account-creation/index.tsx +13 -0
  389. package/pages/checkout/payment-details/index.tsx +10 -0
  390. package/pages/empty.tsx +6 -0
  391. package/pages/help-hub/article/[title]/index.tsx +25 -0
  392. package/pages/help-hub/error.tsx +23 -0
  393. package/pages/help-hub/index.tsx +51 -0
  394. package/pages/help-hub/results.tsx +25 -0
  395. package/pages/index.tsx +19 -0
  396. package/pages/player/brightcove.tsx +19 -0
  397. package/pages/rss/create/index.tsx +18 -0
  398. package/pages/rss/feed/[feedId]/index.tsx +21 -0
  399. package/pages/rss/index.tsx +18 -0
  400. package/public/ads.min.js +8175 -0
  401. package/public/assets/display-base-header.svg +25 -0
  402. package/public/assets/display-personalDetails-header-sun.svg +55 -0
  403. package/public/assets/display-personalDetails-header-times.svg +90 -0
  404. package/public/assets/display-personalDetails-header-vr.svg +46 -0
  405. package/public/assets/dream-team.svg +10 -0
  406. package/public/assets/navigationPrimary-brandMark-sun.svg +9 -0
  407. package/public/assets/navigationPrimary-brandMark-times.svg +18 -0
  408. package/public/assets/navigationPrimary-brandMark-vr.svg +10 -0
  409. package/public/assets/newsletters/bestoftimes-101.png +0 -0
  410. package/public/assets/newsletters/books-115.png +0 -0
  411. package/public/assets/newsletters/environment-140.png +0 -0
  412. package/public/assets/newsletters/fashion-108.png +0 -0
  413. package/public/assets/newsletters/food-106.png +0 -0
  414. package/public/assets/newsletters/football-111.png +0 -0
  415. package/public/assets/newsletters/ireland-152.png +0 -0
  416. package/public/assets/newsletters/law-121.png +0 -0
  417. package/public/assets/newsletters/money-107.png +0 -0
  418. package/public/assets/newsletters/moneymentor-150.png +0 -0
  419. package/public/assets/newsletters/placeholder.png +0 -0
  420. package/public/assets/newsletters/politics-119.png +0 -0
  421. package/public/assets/newsletters/property-113.png +0 -0
  422. package/public/assets/newsletters/puzzles-125.png +0 -0
  423. package/public/assets/newsletters/scotland-134.png +0 -0
  424. package/public/assets/newsletters/theatre-127.png +0 -0
  425. package/public/assets/newsletters/travel-149.png +0 -0
  426. package/public/assets/newsletters/tv-133.png +0 -0
  427. package/public/assets/newsletters/us-153.png +0 -0
  428. package/public/assets/no-subscription.svg +15 -0
  429. package/public/assets/pending-activation.svg +16 -0
  430. package/public/assets/personal-details-header.svg +91 -0
  431. package/public/assets/plchldr150x100.png +0 -0
  432. package/public/assets/previous-subscription.svg +15 -0
  433. package/public/assets/primary-navigation-logo-white.svg +6 -0
  434. package/public/assets/primary-navigation-logo.svg +6 -0
  435. package/public/assets/tls-logo-white.svg +3 -0
  436. package/public/favicon.ico +0 -0
  437. package/public/icon.png +0 -0
  438. package/public/prebid.min.js +1 -0
  439. package/queries/getPage.ts +100 -0
  440. package/queries/getRadioPost.ts +61 -0
  441. package/queries/getRadioPosts.ts +16 -0
  442. package/queries/getUserSubscription.ts +9 -0
  443. package/queries/index.ts +3 -0
  444. package/scripts/k8s-local.sh +137 -0
  445. package/scripts/nr-exports.sh +7 -0
  446. package/temp/_app.tsx +15 -0
  447. package/temp/_document.tsx +61 -0
  448. package/temp/app-context-test.tsx +51 -0
  449. package/temp/app-context.tsx +25 -0
  450. package/temp/config-index.ts +1 -0
  451. package/temp/context-index.tsx +1 -0
  452. package/temp/header.tsx +45 -0
  453. package/temp/next.config.js +56 -0
  454. package/tsconfig.json +51 -0
  455. package/tsconfig.test.json +6 -0
  456. package/validation/index.tsx +24 -0
@@ -0,0 +1,1195 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`getServerSideProps Homepage 1`] = `
4
+ <DocumentFragment>
5
+ <header
6
+ class="css-1d2q07x"
7
+ >
8
+ <div
9
+ class="css-hpal4s"
10
+ data-testid="NavigationPrimary"
11
+ >
12
+ <div
13
+ class="css-11pbejy"
14
+ >
15
+ <div
16
+ class="css-1mi1ly6"
17
+ >
18
+ <a
19
+ aria-label="Logo Link"
20
+ class="css-1ulbpfm"
21
+ href="/"
22
+ >
23
+ <span
24
+ class="css-17x5lw"
25
+ >
26
+ <div
27
+ class="css-swzsha"
28
+ >
29
+ <figure
30
+ class="css-x0vdlo"
31
+ >
32
+ <img
33
+ alt=""
34
+ data-nimg="1"
35
+ data-testid="Nav-Prm-logo"
36
+ decoding="async"
37
+ fetchpriority="high"
38
+ height="32.5"
39
+ src="/assets/primary-navigation-logo-white.svg"
40
+ style="color: transparent; object-fit: contain;"
41
+ width="150"
42
+ />
43
+ </figure>
44
+ </div>
45
+ </span>
46
+ </a>
47
+ <a
48
+ class="css-1aup117"
49
+ data-testid="skip-to-content"
50
+ href="#main"
51
+ >
52
+ Skip to main content
53
+ </a>
54
+ </div>
55
+ </div>
56
+ <div
57
+ class="css-55favz"
58
+ >
59
+ <div
60
+ class="css-1k3e0au"
61
+ >
62
+ <button
63
+ aria-label="Mobile Menu Button"
64
+ class="css-h8miwj"
65
+ data-testid="mobile-menu-btn"
66
+ type="button"
67
+ >
68
+ <svg
69
+ aria-hidden="true"
70
+ class="css-11lepi0 css-18cthx4-EmotionIconBase ex0cdmw0"
71
+ fill="currentColor"
72
+ focusable="false"
73
+ overrides="[object Object]"
74
+ viewBox="0 0 24 24"
75
+ xmlns="http://www.w3.org/2000/svg"
76
+ >
77
+ <path
78
+ d="M0 0h24v24H0z"
79
+ fill="none"
80
+ />
81
+ <path
82
+ d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"
83
+ />
84
+ </svg>
85
+ </button>
86
+ </div>
87
+ </div>
88
+ <div
89
+ class="css-mniw6m"
90
+ >
91
+ <nav
92
+ class="css-1le7q07"
93
+ >
94
+ <div
95
+ class="css-16ctgp1"
96
+ data-testid="action-links-desktop"
97
+ >
98
+ <div
99
+ class="css-mycqxl"
100
+ >
101
+ <a
102
+ aria-label="Section One Link"
103
+ class="css-1ulbpfm"
104
+ href="/section-one"
105
+ type="standalone"
106
+ >
107
+ <span
108
+ class="css-1xnclyu"
109
+ >
110
+ <span
111
+ class="css-1o99qvy"
112
+ >
113
+ <span
114
+ class="css-8r74mr"
115
+ >
116
+ Section One
117
+ </span>
118
+ </span>
119
+ </span>
120
+ </a>
121
+ </div>
122
+ <div
123
+ class="css-mycqxl"
124
+ >
125
+ <a
126
+ aria-label="Section Two Link"
127
+ class="css-1ulbpfm"
128
+ href="/section-two"
129
+ type="standalone"
130
+ >
131
+ <span
132
+ class="css-1xnclyu"
133
+ >
134
+ <span
135
+ class="css-1o99qvy"
136
+ >
137
+ <span
138
+ class="css-8r74mr"
139
+ >
140
+ Section Two
141
+ </span>
142
+ </span>
143
+ </span>
144
+ </a>
145
+ </div>
146
+ <div
147
+ class="css-mycqxl"
148
+ >
149
+ <a
150
+ aria-label="Section Three Link"
151
+ class="css-1ulbpfm"
152
+ href="/section-three"
153
+ type="standalone"
154
+ >
155
+ <span
156
+ class="css-1xnclyu"
157
+ >
158
+ <span
159
+ class="css-1o99qvy"
160
+ >
161
+ <span
162
+ class="css-8r74mr"
163
+ >
164
+ Section Three
165
+ </span>
166
+ </span>
167
+ </span>
168
+ </a>
169
+ </div>
170
+ </div>
171
+ </nav>
172
+ </div>
173
+ <div
174
+ class="css-l657h8"
175
+ >
176
+ <div
177
+ class="css-13byt3y"
178
+ />
179
+ </div>
180
+ </div>
181
+ </header>
182
+ <div
183
+ class="css-1ce0b49"
184
+ >
185
+ <div
186
+ class="css-8atxkm"
187
+ >
188
+ <div
189
+ class="css-1eslldr"
190
+ data-testid="SectionGrid"
191
+ >
192
+ <div
193
+ class="css-i7y2rh"
194
+ data-testid="SectionGrid"
195
+ >
196
+ <div
197
+ class="css-1c1wp9z"
198
+ data-testid="SectionCell"
199
+ >
200
+ <div
201
+ class="css-189jf7p"
202
+ />
203
+ <div
204
+ class="css-mcaqg8"
205
+ data-testid="SUPPLEMENT_LEAD_AND_4_STACK-Grid"
206
+ >
207
+ <div
208
+ class="css-13byt3y"
209
+ data-testid="featureVerticalCell"
210
+ >
211
+ <div
212
+ class="css-1v4r5rv"
213
+ >
214
+ <div
215
+ class="css-x4egtb"
216
+ >
217
+ <figure
218
+ class="css-1ig6h8n"
219
+ >
220
+ <img
221
+ alt=""
222
+ data-nimg="fill"
223
+ decoding="async"
224
+ loading="lazy"
225
+ sizes="(max-width: 768px) 100vw,
226
+ (max-width: 1200px) 50vw,
227
+ 33vw"
228
+ src="/_next/image?url=%2Fassets%2Fplchldr150x100.png&w=3840&q=75"
229
+ srcset="/_next/image?url=%2Fassets%2Fplchldr150x100.png&w=256&q=75 256w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=384&q=75 384w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=640&q=75 640w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=750&q=75 750w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=828&q=75 828w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=1080&q=75 1080w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=1200&q=75 1200w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=1920&q=75 1920w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=2048&q=75 2048w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=3840&q=75 3840w"
230
+ style="position: absolute; height: 100%; width: 100%; left: 0px; top: 0px; right: 0px; bottom: 0px; object-fit: contain; color: transparent;"
231
+ />
232
+ </figure>
233
+ </div>
234
+ <div
235
+ class="css-1shocxe"
236
+ >
237
+ <div
238
+ class="css-l3wl0d"
239
+ >
240
+ <div
241
+ class="css-8oi1su"
242
+ >
243
+ <a
244
+ class="nk-card-link css-c1j6lb"
245
+ href="catagory-one/demo-1/test-headline"
246
+ >
247
+ <section
248
+ class="nk-card-headline css-1jxtwhc"
249
+ >
250
+ <h3
251
+ class="nk-headline-heading css-oeq8ks"
252
+ >
253
+ test headline
254
+ </h3>
255
+ </section>
256
+ </a>
257
+ </div>
258
+ </div>
259
+ </div>
260
+ </div>
261
+ </div>
262
+ <div
263
+ class="css-1gjeojb"
264
+ >
265
+ <div
266
+ class="css-13byt3y"
267
+ data-testid="titleVerticalCell-0"
268
+ >
269
+ <div
270
+ class="css-1z995g"
271
+ >
272
+ <div
273
+ class="css-1rsw0n0"
274
+ >
275
+ <figure
276
+ class="css-1ig6h8n"
277
+ >
278
+ <img
279
+ alt=""
280
+ data-nimg="fill"
281
+ decoding="async"
282
+ loading="lazy"
283
+ sizes="(max-width: 768px) 100vw,
284
+ (max-width: 1200px) 50vw,
285
+ 33vw"
286
+ src="/_next/image?url=%2Fassets%2Fplchldr150x100.png&w=3840&q=75"
287
+ srcset="/_next/image?url=%2Fassets%2Fplchldr150x100.png&w=256&q=75 256w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=384&q=75 384w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=640&q=75 640w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=750&q=75 750w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=828&q=75 828w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=1080&q=75 1080w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=1200&q=75 1200w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=1920&q=75 1920w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=2048&q=75 2048w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=3840&q=75 3840w"
288
+ style="position: absolute; height: 100%; width: 100%; left: 0px; top: 0px; right: 0px; bottom: 0px; object-fit: contain; color: transparent;"
289
+ />
290
+ </figure>
291
+ </div>
292
+ <div
293
+ class="css-1r2lt0d"
294
+ >
295
+ <div
296
+ class="css-13pp6jk"
297
+ >
298
+ <div
299
+ class="css-6vc2ul"
300
+ >
301
+ <a
302
+ class="nk-card-link css-c1j6lb"
303
+ href="catagory-two/demo-2/test-headline-2"
304
+ >
305
+ <section
306
+ class="nk-card-headline css-4kc5mr"
307
+ >
308
+ <h3
309
+ class="nk-headline-heading css-oeq8ks"
310
+ >
311
+ test headline 2
312
+ </h3>
313
+ </section>
314
+ </a>
315
+ </div>
316
+ </div>
317
+ </div>
318
+ </div>
319
+ </div>
320
+ <div
321
+ class="css-13byt3y"
322
+ data-testid="titleVerticalCell-1"
323
+ >
324
+ <div
325
+ class="css-1z995g"
326
+ >
327
+ <div
328
+ class="css-1rsw0n0"
329
+ >
330
+ <figure
331
+ class="css-1ig6h8n"
332
+ >
333
+ <img
334
+ alt=""
335
+ data-nimg="fill"
336
+ decoding="async"
337
+ loading="lazy"
338
+ sizes="(max-width: 768px) 100vw,
339
+ (max-width: 1200px) 50vw,
340
+ 33vw"
341
+ src="/_next/image?url=%2Fassets%2Fplchldr150x100.png&w=3840&q=75"
342
+ srcset="/_next/image?url=%2Fassets%2Fplchldr150x100.png&w=256&q=75 256w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=384&q=75 384w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=640&q=75 640w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=750&q=75 750w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=828&q=75 828w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=1080&q=75 1080w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=1200&q=75 1200w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=1920&q=75 1920w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=2048&q=75 2048w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=3840&q=75 3840w"
343
+ style="position: absolute; height: 100%; width: 100%; left: 0px; top: 0px; right: 0px; bottom: 0px; object-fit: contain; color: transparent;"
344
+ />
345
+ </figure>
346
+ </div>
347
+ <div
348
+ class="css-1r2lt0d"
349
+ >
350
+ <div
351
+ class="css-13pp6jk"
352
+ >
353
+ <div
354
+ class="css-6vc2ul"
355
+ >
356
+ <a
357
+ class="nk-card-link css-c1j6lb"
358
+ href="catagory-three/demo-3/test-headline-3"
359
+ >
360
+ <section
361
+ class="nk-card-headline css-4kc5mr"
362
+ >
363
+ <h3
364
+ class="nk-headline-heading css-oeq8ks"
365
+ >
366
+ test headline 3
367
+ </h3>
368
+ </section>
369
+ </a>
370
+ </div>
371
+ </div>
372
+ </div>
373
+ </div>
374
+ </div>
375
+ </div>
376
+ </div>
377
+ <div
378
+ class="css-189jf7p"
379
+ />
380
+ <div
381
+ class="css-iha7he"
382
+ data-testid="SECONDARY_4-Grid"
383
+ >
384
+ <div
385
+ class="css-13byt3y"
386
+ data-testid="titleTeaserVertical-0"
387
+ >
388
+ <div
389
+ class="css-1z995g"
390
+ >
391
+ <div
392
+ class="css-1rsw0n0"
393
+ >
394
+ <figure
395
+ class="css-1ig6h8n"
396
+ >
397
+ <img
398
+ alt="image alt"
399
+ data-nimg="fill"
400
+ decoding="async"
401
+ loading="lazy"
402
+ sizes="(max-width: 768px) 100vw,
403
+ (max-width: 1200px) 50vw,
404
+ 33vw"
405
+ src="/_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=3840&q=75"
406
+ srcset="/_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=256&q=75 256w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=3840&q=75 3840w"
407
+ style="position: absolute; height: 100%; width: 100%; left: 0px; top: 0px; right: 0px; bottom: 0px; object-fit: contain; color: transparent; background-size: contain; background-position: 50% 50%; background-repeat: no-repeat;"
408
+ />
409
+ </figure>
410
+ </div>
411
+ <div
412
+ class="css-1r2lt0d"
413
+ >
414
+ <div
415
+ class="css-13pp6jk"
416
+ >
417
+ <div
418
+ class="css-6vc2ul"
419
+ >
420
+ <a
421
+ class="nk-card-link css-c1j6lb"
422
+ href="catagory-one/demo-1/test-headline"
423
+ >
424
+ <section
425
+ class="nk-card-headline css-4kc5mr"
426
+ >
427
+ <h3
428
+ class="nk-headline-heading css-oeq8ks"
429
+ >
430
+ test headline
431
+ </h3>
432
+ </section>
433
+ </a>
434
+ </div>
435
+ </div>
436
+ </div>
437
+ </div>
438
+ </div>
439
+ <div
440
+ class="css-13byt3y"
441
+ data-testid="titleTeaserVertical-1"
442
+ >
443
+ <div
444
+ class="css-1z995g"
445
+ >
446
+ <div
447
+ class="css-1rsw0n0"
448
+ >
449
+ <figure
450
+ class="css-1ig6h8n"
451
+ >
452
+ <img
453
+ alt="image alt 2"
454
+ data-nimg="fill"
455
+ decoding="async"
456
+ loading="lazy"
457
+ sizes="(max-width: 768px) 100vw,
458
+ (max-width: 1200px) 50vw,
459
+ 33vw"
460
+ src="/_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=3840&q=75"
461
+ srcset="/_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=256&q=75 256w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=3840&q=75 3840w"
462
+ style="position: absolute; height: 100%; width: 100%; left: 0px; top: 0px; right: 0px; bottom: 0px; object-fit: contain; color: transparent; background-size: contain; background-position: 50% 50%; background-repeat: no-repeat;"
463
+ />
464
+ </figure>
465
+ </div>
466
+ <div
467
+ class="css-1r2lt0d"
468
+ >
469
+ <div
470
+ class="css-13pp6jk"
471
+ >
472
+ <div
473
+ class="css-6vc2ul"
474
+ >
475
+ <a
476
+ class="nk-card-link css-c1j6lb"
477
+ href="catagory-two/demo-2/test-headline-2"
478
+ >
479
+ <section
480
+ class="nk-card-headline css-4kc5mr"
481
+ >
482
+ <h3
483
+ class="nk-headline-heading css-oeq8ks"
484
+ >
485
+ test headline 2
486
+ </h3>
487
+ </section>
488
+ </a>
489
+ </div>
490
+ </div>
491
+ </div>
492
+ </div>
493
+ </div>
494
+ <div
495
+ class="css-13byt3y"
496
+ data-testid="titleTeaserVertical-2"
497
+ >
498
+ <div
499
+ class="css-1z995g"
500
+ >
501
+ <div
502
+ class="css-1rsw0n0"
503
+ >
504
+ <figure
505
+ class="css-1ig6h8n"
506
+ >
507
+ <img
508
+ alt=""
509
+ data-nimg="fill"
510
+ decoding="async"
511
+ loading="lazy"
512
+ sizes="(max-width: 768px) 100vw,
513
+ (max-width: 1200px) 50vw,
514
+ 33vw"
515
+ src="/_next/image?url=%2Fassets%2Fplchldr150x100.png&w=3840&q=75"
516
+ srcset="/_next/image?url=%2Fassets%2Fplchldr150x100.png&w=256&q=75 256w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=384&q=75 384w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=640&q=75 640w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=750&q=75 750w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=828&q=75 828w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=1080&q=75 1080w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=1200&q=75 1200w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=1920&q=75 1920w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=2048&q=75 2048w, /_next/image?url=%2Fassets%2Fplchldr150x100.png&w=3840&q=75 3840w"
517
+ style="position: absolute; height: 100%; width: 100%; left: 0px; top: 0px; right: 0px; bottom: 0px; object-fit: contain; color: transparent;"
518
+ />
519
+ </figure>
520
+ </div>
521
+ <div
522
+ class="css-1r2lt0d"
523
+ >
524
+ <div
525
+ class="css-13pp6jk"
526
+ >
527
+ <div
528
+ class="css-6vc2ul"
529
+ >
530
+ <a
531
+ class="nk-card-link css-c1j6lb"
532
+ href="catagory-three/demo-3/test-headline-3"
533
+ >
534
+ <section
535
+ class="nk-card-headline css-4kc5mr"
536
+ >
537
+ <h3
538
+ class="nk-headline-heading css-oeq8ks"
539
+ >
540
+ test headline 3
541
+ </h3>
542
+ </section>
543
+ </a>
544
+ </div>
545
+ </div>
546
+ </div>
547
+ </div>
548
+ </div>
549
+ <div
550
+ class="css-13byt3y"
551
+ data-testid="titleTeaserVertical-3"
552
+ >
553
+ <div
554
+ class="css-1z995g"
555
+ >
556
+ <div
557
+ class="css-1rsw0n0"
558
+ >
559
+ <figure
560
+ class="css-1ig6h8n"
561
+ >
562
+ <img
563
+ alt="image alt 3"
564
+ data-nimg="fill"
565
+ decoding="async"
566
+ loading="lazy"
567
+ sizes="(max-width: 768px) 100vw,
568
+ (max-width: 1200px) 50vw,
569
+ 33vw"
570
+ src="/_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=3840&q=75"
571
+ srcset="/_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=256&q=75 256w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=3840&q=75 3840w"
572
+ style="position: absolute; height: 100%; width: 100%; left: 0px; top: 0px; right: 0px; bottom: 0px; object-fit: contain; color: transparent; background-size: contain; background-position: 50% 50%; background-repeat: no-repeat;"
573
+ />
574
+ </figure>
575
+ </div>
576
+ <div
577
+ class="css-1r2lt0d"
578
+ >
579
+ <div
580
+ class="css-13pp6jk"
581
+ >
582
+ <div
583
+ class="css-6vc2ul"
584
+ >
585
+ <a
586
+ class="nk-card-link css-c1j6lb"
587
+ href="catagory-four/demo-4/test-headline-4"
588
+ >
589
+ <section
590
+ class="nk-card-headline css-4kc5mr"
591
+ >
592
+ <h3
593
+ class="nk-headline-heading css-oeq8ks"
594
+ >
595
+ test headline 4
596
+ </h3>
597
+ </section>
598
+ </a>
599
+ </div>
600
+ </div>
601
+ </div>
602
+ </div>
603
+ </div>
604
+ </div>
605
+ <div
606
+ class="css-189jf7p"
607
+ />
608
+ <div
609
+ class="LEAD_1_AND_1"
610
+ >
611
+ <h2>
612
+ Layout: LEAD_1_AND_1
613
+ </h2>
614
+ <p>
615
+ <a
616
+ class="css-96q4jn"
617
+ href="catagory-one/demo-1/test-headline"
618
+ >
619
+ <span
620
+ class="css-17x5lw"
621
+ >
622
+ <span
623
+ class="css-14vfegn"
624
+ >
625
+ test headline
626
+ </span>
627
+ </span>
628
+ </a>
629
+ </p>
630
+ <p>
631
+ <a
632
+ class="css-96q4jn"
633
+ href="catagory-two/demo-2/test-headline-2"
634
+ >
635
+ <span
636
+ class="css-17x5lw"
637
+ >
638
+ <span
639
+ class="css-14vfegn"
640
+ >
641
+ test headline 2
642
+ </span>
643
+ </span>
644
+ </a>
645
+ </p>
646
+ </div>
647
+ <div
648
+ class="css-189jf7p"
649
+ />
650
+ <div
651
+ class="LEAD_1_AND_1"
652
+ >
653
+ <h2>
654
+ Layout: LEAD_1_AND_1
655
+ </h2>
656
+ <p>
657
+ <a
658
+ class="css-96q4jn"
659
+ href="uncategorized"
660
+ >
661
+ <span
662
+ class="css-17x5lw"
663
+ >
664
+ <span
665
+ class="css-14vfegn"
666
+ >
667
+ TODO - External Reference
668
+ </span>
669
+ </span>
670
+ </a>
671
+ </p>
672
+ <p>
673
+ <a
674
+ class="css-96q4jn"
675
+ href="uncategorized"
676
+ >
677
+ <span
678
+ class="css-17x5lw"
679
+ >
680
+ <span
681
+ class="css-14vfegn"
682
+ >
683
+ TODO - Video
684
+ </span>
685
+ </span>
686
+ </a>
687
+ </p>
688
+ <p>
689
+ <a
690
+ class="css-96q4jn"
691
+ href="uncategorized"
692
+ >
693
+ <span
694
+ class="css-17x5lw"
695
+ >
696
+ <span
697
+ class="css-14vfegn"
698
+ >
699
+ Unknown slice block - something
700
+ </span>
701
+ </span>
702
+ </a>
703
+ </p>
704
+ </div>
705
+ <div
706
+ class="css-189jf7p"
707
+ />
708
+ <div
709
+ class="css-mcaqg8"
710
+ data-testid="SUPPLEMENT_LEAD_AND_4_STACK-Grid"
711
+ >
712
+ <div
713
+ class="css-13byt3y"
714
+ data-testid="featureVerticalCell"
715
+ >
716
+ <div
717
+ class="css-1v4r5rv"
718
+ >
719
+ <div
720
+ class="css-x4egtb"
721
+ >
722
+ <figure
723
+ class="css-16gvgq2"
724
+ >
725
+ <img
726
+ data-nimg="fill"
727
+ decoding="async"
728
+ loading="lazy"
729
+ sizes="(max-width: 768px) 100vw,
730
+ (max-width: 1200px) 50vw,
731
+ 33vw"
732
+ src="/_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=3840&q=75"
733
+ srcset="/_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=256&q=75 256w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=3840&q=75 3840w"
734
+ style="position: absolute; height: 100%; width: 100%; left: 0px; top: 0px; right: 0px; bottom: 0px; object-fit: contain; color: transparent; background-size: contain; background-position: 50% 50%; background-repeat: no-repeat;"
735
+ />
736
+ </figure>
737
+ </div>
738
+ <div
739
+ class="css-1shocxe"
740
+ >
741
+ <div
742
+ class="css-l3wl0d"
743
+ >
744
+ <div
745
+ class="css-8oi1su"
746
+ >
747
+ <section
748
+ class="nk-card-headline css-1jxtwhc"
749
+ >
750
+ <h3
751
+ class="nk-headline-heading css-b3iww6"
752
+ >
753
+ TODO - External Reference
754
+ </h3>
755
+ </section>
756
+ </div>
757
+ </div>
758
+ </div>
759
+ </div>
760
+ </div>
761
+ <div
762
+ class="css-1gjeojb"
763
+ >
764
+ <div
765
+ class="css-13byt3y"
766
+ data-testid="titleVerticalCell-0"
767
+ >
768
+ <div
769
+ class="css-1z995g"
770
+ >
771
+ <div
772
+ class="css-1rsw0n0"
773
+ >
774
+ <figure
775
+ class="css-16gvgq2"
776
+ >
777
+ <img
778
+ data-nimg="fill"
779
+ decoding="async"
780
+ loading="lazy"
781
+ sizes="(max-width: 768px) 100vw,
782
+ (max-width: 1200px) 50vw,
783
+ 33vw"
784
+ src="/_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=3840&q=75"
785
+ srcset="/_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=256&q=75 256w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=3840&q=75 3840w"
786
+ style="position: absolute; height: 100%; width: 100%; left: 0px; top: 0px; right: 0px; bottom: 0px; object-fit: contain; color: transparent; background-size: contain; background-position: 50% 50%; background-repeat: no-repeat;"
787
+ />
788
+ </figure>
789
+ </div>
790
+ <div
791
+ class="css-1r2lt0d"
792
+ >
793
+ <div
794
+ class="css-13pp6jk"
795
+ >
796
+ <div
797
+ class="css-6vc2ul"
798
+ >
799
+ <section
800
+ class="nk-card-headline css-4kc5mr"
801
+ >
802
+ <h3
803
+ class="nk-headline-heading css-b3iww6"
804
+ >
805
+ TODO - Video
806
+ </h3>
807
+ </section>
808
+ </div>
809
+ </div>
810
+ </div>
811
+ </div>
812
+ </div>
813
+ <div
814
+ class="css-13byt3y"
815
+ data-testid="titleVerticalCell-1"
816
+ >
817
+ <div
818
+ class="css-1z995g"
819
+ >
820
+ <div
821
+ class="css-1rsw0n0"
822
+ >
823
+ <figure
824
+ class="css-16gvgq2"
825
+ >
826
+ <img
827
+ data-nimg="fill"
828
+ decoding="async"
829
+ loading="lazy"
830
+ sizes="(max-width: 768px) 100vw,
831
+ (max-width: 1200px) 50vw,
832
+ 33vw"
833
+ src="/_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=3840&q=75"
834
+ srcset="/_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=256&q=75 256w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fplchldr.co%2Fi%2F802x451%3Fbg%3DF0F0F0%26fc%3D111111%26text%3Dimg&w=3840&q=75 3840w"
835
+ style="position: absolute; height: 100%; width: 100%; left: 0px; top: 0px; right: 0px; bottom: 0px; object-fit: contain; color: transparent; background-size: contain; background-position: 50% 50%; background-repeat: no-repeat;"
836
+ />
837
+ </figure>
838
+ </div>
839
+ <div
840
+ class="css-1r2lt0d"
841
+ >
842
+ <div
843
+ class="css-13pp6jk"
844
+ >
845
+ <div
846
+ class="css-6vc2ul"
847
+ >
848
+ <section
849
+ class="nk-card-headline css-4kc5mr"
850
+ >
851
+ <h3
852
+ class="nk-headline-heading css-b3iww6"
853
+ >
854
+ Unknown slice block - something
855
+ </h3>
856
+ </section>
857
+ </div>
858
+ </div>
859
+ </div>
860
+ </div>
861
+ </div>
862
+ </div>
863
+ </div>
864
+ <div
865
+ class="css-189jf7p"
866
+ />
867
+ <div
868
+ class="css-w66kys"
869
+ data-testid="SECONDARY_2_AND_2-Grid"
870
+ >
871
+ <div
872
+ class="css-13byt3y"
873
+ data-testid="titleTeaserVertical-0"
874
+ >
875
+ <div
876
+ class="css-1v4r5rv"
877
+ >
878
+ <div
879
+ class="css-c5dn4i"
880
+ >
881
+ <figure
882
+ class="css-1ig6h8n"
883
+ >
884
+ <img
885
+ alt="image alt"
886
+ data-nimg="fill"
887
+ decoding="async"
888
+ loading="lazy"
889
+ sizes="(max-width: 768px) 100vw,
890
+ (max-width: 1200px) 50vw,
891
+ 33vw"
892
+ src="/_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=3840&q=75"
893
+ srcset="/_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=256&q=75 256w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=3840&q=75 3840w"
894
+ style="position: absolute; height: 100%; width: 100%; left: 0px; top: 0px; right: 0px; bottom: 0px; object-fit: contain; color: transparent; background-size: contain; background-position: 50% 50%; background-repeat: no-repeat;"
895
+ />
896
+ </figure>
897
+ </div>
898
+ <div
899
+ class="css-1shocxe"
900
+ >
901
+ <div
902
+ class="css-l3wl0d"
903
+ >
904
+ <div
905
+ class="css-e1v6d5"
906
+ >
907
+ <a
908
+ class="nk-card-link css-c1j6lb"
909
+ href="catagory-one/demo-1/test-headline"
910
+ >
911
+ <section
912
+ class="nk-card-headline css-jdch7u"
913
+ >
914
+ <h3
915
+ class="nk-headline-heading css-oeq8ks"
916
+ >
917
+ test headline
918
+ </h3>
919
+ </section>
920
+ </a>
921
+ </div>
922
+ <div
923
+ class="css-2e5lv5"
924
+ >
925
+ <p
926
+ class="css-x4rcwg"
927
+ >
928
+ teaser test text
929
+ </p>
930
+ </div>
931
+ </div>
932
+ </div>
933
+ </div>
934
+ </div>
935
+ <div
936
+ class="css-13byt3y"
937
+ data-testid="titleTeaserVertical-1"
938
+ >
939
+ <div
940
+ class="css-1v4r5rv"
941
+ >
942
+ <div
943
+ class="css-c5dn4i"
944
+ >
945
+ <figure
946
+ class="css-1ig6h8n"
947
+ >
948
+ <img
949
+ alt="image alt 2"
950
+ data-nimg="fill"
951
+ decoding="async"
952
+ loading="lazy"
953
+ sizes="(max-width: 768px) 100vw,
954
+ (max-width: 1200px) 50vw,
955
+ 33vw"
956
+ src="/_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=3840&q=75"
957
+ srcset="/_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=256&q=75 256w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fwww.thesun.co.uk%2Fwp-content%2Fuploads%2F2022%2F03%2FSPORT-PREVIEW-Amadou-Onana-to-WHU.jpg%3Fstrip%3Dall%26w%3D620%26h%3D413%26crop%3D1&w=3840&q=75 3840w"
958
+ style="position: absolute; height: 100%; width: 100%; left: 0px; top: 0px; right: 0px; bottom: 0px; object-fit: contain; color: transparent; background-size: contain; background-position: 50% 50%; background-repeat: no-repeat;"
959
+ />
960
+ </figure>
961
+ </div>
962
+ <div
963
+ class="css-1shocxe"
964
+ >
965
+ <div
966
+ class="css-l3wl0d"
967
+ >
968
+ <div
969
+ class="css-e1v6d5"
970
+ >
971
+ <a
972
+ class="nk-card-link css-c1j6lb"
973
+ href="catagory-one/demo-2/test-headline-2"
974
+ >
975
+ <section
976
+ class="nk-card-headline css-jdch7u"
977
+ >
978
+ <h3
979
+ class="nk-headline-heading css-oeq8ks"
980
+ >
981
+ test headline 2
982
+ </h3>
983
+ </section>
984
+ </a>
985
+ </div>
986
+ <div
987
+ class="css-2e5lv5"
988
+ >
989
+ <p
990
+ class="css-x4rcwg"
991
+ >
992
+ teaser test text 2
993
+ </p>
994
+ </div>
995
+ </div>
996
+ </div>
997
+ </div>
998
+ </div>
999
+ </div>
1000
+ <div
1001
+ class="css-189jf7p"
1002
+ />
1003
+ </div>
1004
+ </div>
1005
+ </div>
1006
+ </div>
1007
+ </div>
1008
+ <div
1009
+ class="css-sxhtf1"
1010
+ >
1011
+ <div
1012
+ class="css-8atxkm"
1013
+ >
1014
+ <div
1015
+ class="css-1w88buo"
1016
+ data-testid="PageLayout"
1017
+ >
1018
+ <div
1019
+ class="css-18d6eiw"
1020
+ data-testid="PageLayout"
1021
+ >
1022
+ <div
1023
+ class="css-2e5lv5"
1024
+ >
1025
+ <svg
1026
+ class="css-kgdu16"
1027
+ height="48px"
1028
+ viewBox="0 0 244 40"
1029
+ >
1030
+ <title>
1031
+ NewsKit Logo
1032
+ </title>
1033
+ <path
1034
+ d="M61.846.936c3.35.413 4.944 4.005 4.92 8.746l.017-.013c-5.497 4.462-16.323 7.515-26.958 1.71l.011-.016c1.568.832 3.224 1.475 5.172 1.715 2.386.294 4.303-1.023 6.043-2.889l.124-.134.062-.068.123-.137.123-.138.122-.14.121-.142.061-.071.121-.144.12-.145.146-.178.073-.09.182-.226.181-.228.144-.184.144-.185.143-.185.215-.279 1.091-1.431.209-.271.209-.269.14-.178.14-.177.14-.175.141-.173.141-.172.113-.136.113-.135.114-.133.114-.132.057-.065.114-.13.057-.064.115-.127.173-.187.116-.123.175-.18.117-.118C58.328 1.663 59.933.7 61.846.936z"
1035
+ fill="white"
1036
+ />
1037
+ <path
1038
+ d="M26.763 28.981l.011.013c-1.414-.671-2.883-1.176-4.519-1.378-1.738-.214-3.244.513-4.634 1.704l-.11.095-.163.146-.108.1-.108.101-.268.261-.106.107-.106.109-.106.11-.053.056-.105.112-.053.057-.125.136-.124.138-.124.139-.062.07-.123.142-.123.143-.122.145-.122.146-.061.073-.15.183-.075.092-.149.185-.075.093-.149.187-.149.188-.223.283-.296.38-.671.866-.222.285-.222.283-.148.188-.223.28-.149.185-.149.183-.149.182-.15.18-.117.139-.118.138-.118.136-.118.135-.119.133-.119.132-.119.13-.06.064-.12.127-.1.104-.1.103-.1.101-.151.15-.101.098-.102.096-.051.048-.102.094-.206.183-.103.089-.052.044-.104.086c-1.302 1.066-2.706 1.698-4.305 1.5-3.321-.41-4.98-3.93-5.064-8.601l-.097.09c6.351-5.963 17.155-6.757 26.506-2.264z"
1039
+ fill="white"
1040
+ fill-opacity="0.4"
1041
+ />
1042
+ <path
1043
+ d="M42.216 35.925c-2.861-.398-5.212-1.275-7.302-2.318l-.189-.095-.188-.096-.186-.097-.231-.122-.229-.123-.182-.099-.226-.125-.224-.126-.178-.101-.177-.102-.264-.153-.349-.205-.278-.166-.276-.166-.411-.249-1.214-.738-.334-.201-.333-.199-2.669-1.45-.012-.013c-9.258-4.447-19.94-3.714-26.315 2.087l-.095.088C.156 20.101 8.779 2.598 25.068 4.608c2.854.352 5.141 1.176 7.14 2.181l.178.09.177.091.175.092.087.046.173.093.172.094.17.095.085.048.211.12.209.121.166.097.165.098.164.098.163.099.162.099.161.099.16.1.261.164.13.082.258.164.256.164 1.137.733.25.161.25.159.312.197.312.194a31.02 31.02 0 0 0 1.568.911l.199.106c10.506 5.694 21.166 2.775 26.7-1.604l.149-.12c-.055 10.998-8.815 28.185-24.55 26.243z"
1044
+ fill="white"
1045
+ fill-opacity="0.701961"
1046
+ />
1047
+ </svg>
1048
+ </div>
1049
+ <div
1050
+ class="css-2e5lv5"
1051
+ >
1052
+ <hr
1053
+ aria-hidden="true"
1054
+ class="css-13iiewa"
1055
+ data-testid="divider"
1056
+ />
1057
+ </div>
1058
+ <div
1059
+ class="css-hx18jh"
1060
+ >
1061
+ <span
1062
+ class="css-1cpcft7"
1063
+ >
1064
+ <a
1065
+ aria-label="NavLink One"
1066
+ class="css-1ulbpfm"
1067
+ href="/link-one"
1068
+ >
1069
+ <span
1070
+ class="css-17x5lw"
1071
+ >
1072
+ <span
1073
+ class="css-yk25sg"
1074
+ >
1075
+ NavLink One
1076
+ </span>
1077
+ </span>
1078
+ </a>
1079
+ </span>
1080
+ <span
1081
+ class="css-1cpcft7"
1082
+ >
1083
+ <a
1084
+ aria-label="NavLink Two"
1085
+ class="css-1ulbpfm"
1086
+ href="/link-two"
1087
+ >
1088
+ <span
1089
+ class="css-17x5lw"
1090
+ >
1091
+ <span
1092
+ class="css-yk25sg"
1093
+ >
1094
+ NavLink Two
1095
+ </span>
1096
+ </span>
1097
+ </a>
1098
+ </span>
1099
+ <span
1100
+ class="css-1cpcft7"
1101
+ >
1102
+ <a
1103
+ aria-label="NavLink Three"
1104
+ class="css-1ulbpfm"
1105
+ href="/link-three"
1106
+ >
1107
+ <span
1108
+ class="css-17x5lw"
1109
+ >
1110
+ <span
1111
+ class="css-yk25sg"
1112
+ >
1113
+ NavLink Three
1114
+ </span>
1115
+ </span>
1116
+ </a>
1117
+ </span>
1118
+ <span
1119
+ class="css-1cpcft7"
1120
+ >
1121
+ <a
1122
+ aria-label="NavLink Four"
1123
+ class="css-1ulbpfm"
1124
+ href="/link-four"
1125
+ >
1126
+ <span
1127
+ class="css-17x5lw"
1128
+ >
1129
+ <span
1130
+ class="css-yk25sg"
1131
+ >
1132
+ NavLink Four
1133
+ </span>
1134
+ </span>
1135
+ </a>
1136
+ </span>
1137
+ <span
1138
+ class="css-1cpcft7"
1139
+ >
1140
+ <a
1141
+ aria-label="NavLink Five"
1142
+ class="css-1ulbpfm"
1143
+ href="/link-five"
1144
+ >
1145
+ <span
1146
+ class="css-17x5lw"
1147
+ >
1148
+ <span
1149
+ class="css-yk25sg"
1150
+ >
1151
+ NavLink Five
1152
+ </span>
1153
+ </span>
1154
+ </a>
1155
+ </span>
1156
+ <span
1157
+ class="css-1cpcft7"
1158
+ >
1159
+ <a
1160
+ aria-label="NavLink Six"
1161
+ class="css-1ulbpfm"
1162
+ href="/link-six"
1163
+ >
1164
+ <span
1165
+ class="css-17x5lw"
1166
+ >
1167
+ <span
1168
+ class="css-yk25sg"
1169
+ >
1170
+ NavLink Six
1171
+ </span>
1172
+ </span>
1173
+ </a>
1174
+ </span>
1175
+ </div>
1176
+ <div
1177
+ class="css-2e5lv5"
1178
+ >
1179
+ <hr
1180
+ aria-hidden="true"
1181
+ class="css-13iiewa"
1182
+ data-testid="divider"
1183
+ />
1184
+ </div>
1185
+ <p
1186
+ class="css-tiln3q"
1187
+ >
1188
+ Copyright © YYYY News Corp. All rights reserved.
1189
+ </p>
1190
+ </div>
1191
+ </div>
1192
+ </div>
1193
+ </div>
1194
+ </DocumentFragment>
1195
+ `;