Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use email-newsletter layout data from frontend #12795

Open
wants to merge 13 commits into
base: main
Choose a base branch
from

Conversation

dblatcher
Copy link
Contributor

@dblatcher dblatcher commented Nov 8, 2024

What does this change?

Instead of using the hard coded newsletter layouts, the /email-newsletters pages will get the data from the frontend page model (which was derives it from the newsletters API) - see:

One significant behaviour change is that DCR used to fallback to the UK layout if it did not have a layout hard coded for the editionId of the request (as was the case for EUR and INTL) - it would now fallback to the reduceToDefaultGrouping function to arrange the newsletters (which would previously be used if the UK layout was not defined either).

On discussing with editorial, they would prefer to define layouts for EUR and INTL, so the data in the newsletters API (see https://newsletters-tool.gutools.co.uk/layouts) has been updated to match the hard coded data (as of the last update: #13248), with the layouts for EUR and INTL being set as copies of the UK data.

Why?

Will allow editorial to self-serve for changes to the page via the newsletters tool. This currently requires WebEx to do a PR for every change requested by editorial. 😢

Testing

CODE frontend uses the PROD newsletter API data, so when running this branch on CODE, the layouts defined at https://newsletters-tool.gutools.co.uk/layouts will be show on /email-newsletter

LOCAL frontend used CODE newsletter API data, so testing this branch with LOCAL frontend would show the layouts from https://newsletters-tool.code.dev-gutools.co.uk/layouts

Screenshots

data result
{"ok":true,"total":1,"data":{"UK":[{"title":"my collection","subtitle":"a set of newsletters","newsletters":["today-uk","front-page","morning-briefing"]},{"title":"In depth","newsletters":["today-uk","afternoon-update","any-time"]}]}} Screenshot 2024-11-08 at 17 50 49

Copy link

github-actions bot commented Dec 9, 2024

"This PR is stale because it has been open 30 days with no activity. Unless a comment is added or the “stale” label removed, this will be closed in 3 days"

@github-actions github-actions bot added the Stale label Dec 9, 2024
Copy link

This PR was closed because it has been stalled for 3 days with no activity.

@github-actions github-actions bot closed this Dec 13, 2024
@dblatcher dblatcher reopened this Dec 13, 2024
Copy link

github-actions bot commented Dec 13, 2024

Size Change: 0 B

Total Size: 894 kB

ℹ️ View Unchanged
Filename Size
dotcom-rendering/dist/1076.client.web.********************.js 3.41 kB
dotcom-rendering/dist/1101.client.web.********************.js 4.82 kB
dotcom-rendering/dist/1262.client.web.********************.js 4.49 kB
dotcom-rendering/dist/1401.client.web.********************.js 441 B
dotcom-rendering/dist/1427.client.web.********************.js 4.94 kB
dotcom-rendering/dist/1477.client.web.********************.js 3.52 kB
dotcom-rendering/dist/1714.client.web.********************.js 2.87 kB
dotcom-rendering/dist/2188.client.web.********************.js 6.52 kB
dotcom-rendering/dist/2444.client.web.********************.js 2.67 kB
dotcom-rendering/dist/2482.client.web.********************.js 44.8 kB
dotcom-rendering/dist/280.client.web.********************.js 531 B
dotcom-rendering/dist/2930.client.web.********************.js 14.3 kB
dotcom-rendering/dist/3213.client.web.********************.js 5.42 kB
dotcom-rendering/dist/342.client.web.********************.js 4.18 kB
dotcom-rendering/dist/3524.client.web.********************.js 3.52 kB
dotcom-rendering/dist/3769.client.web.********************.js 22.7 kB
dotcom-rendering/dist/3789.client.web.********************.js 3.58 kB
dotcom-rendering/dist/39.client.web.********************.js 3.07 kB
dotcom-rendering/dist/3937.client.web.********************.js 3.86 kB
dotcom-rendering/dist/4170.client.web.********************.js 16.3 kB
dotcom-rendering/dist/4285.client.web.********************.js 5.84 kB
dotcom-rendering/dist/4501.client.web.********************.js 4.29 kB
dotcom-rendering/dist/4684.client.web.********************.js 3.17 kB
dotcom-rendering/dist/4878.client.web.********************.js 8.08 kB
dotcom-rendering/dist/4943.client.web.********************.js 3.69 kB
dotcom-rendering/dist/5095.client.web.********************.js 4.17 kB
dotcom-rendering/dist/5223.client.web.********************.js 3.27 kB
dotcom-rendering/dist/5334.client.web.********************.js 13.2 kB
dotcom-rendering/dist/5598.client.web.********************.js 4.49 kB
dotcom-rendering/dist/5748.client.web.********************.js 2.49 kB
dotcom-rendering/dist/6021.client.web.********************.js 11.2 kB
dotcom-rendering/dist/6061.client.web.********************.js 3.63 kB
dotcom-rendering/dist/6073.client.web.********************.js 3.53 kB
dotcom-rendering/dist/6110.client.web.********************.js 3.54 kB
dotcom-rendering/dist/6163.client.web.********************.js 3.83 kB
dotcom-rendering/dist/6577.client.web.********************.js 5.41 kB
dotcom-rendering/dist/6627.client.web.********************.js 10.4 kB
dotcom-rendering/dist/6876.client.web.********************.js 2.67 kB
dotcom-rendering/dist/6882.client.web.********************.js 13.1 kB
dotcom-rendering/dist/6903.client.web.********************.js 3.21 kB
dotcom-rendering/dist/6931.client.web.********************.js 2.63 kB
dotcom-rendering/dist/6940.client.web.********************.js 526 B
dotcom-rendering/dist/7116.client.web.********************.js 23 kB
dotcom-rendering/dist/7350.client.web.********************.js 3.32 kB
dotcom-rendering/dist/7364.client.web.********************.js 3.22 kB
dotcom-rendering/dist/7540.client.web.********************.js 2.72 kB
dotcom-rendering/dist/7544.client.web.********************.js 4.88 kB
dotcom-rendering/dist/7546.client.web.********************.js 7.37 kB
dotcom-rendering/dist/7861.client.web.********************.js 619 B
dotcom-rendering/dist/8030.client.web.********************.js 4.19 kB
dotcom-rendering/dist/8067.client.web.********************.js 3.39 kB
dotcom-rendering/dist/8209.client.web.********************.js 3.64 kB
dotcom-rendering/dist/8592.client.web.********************.js 157 B
dotcom-rendering/dist/9072.client.web.********************.js 2.61 kB
dotcom-rendering/dist/9242.client.web.********************.js 3.76 kB
dotcom-rendering/dist/9288.client.web.********************.js 2.51 kB
dotcom-rendering/dist/9362.client.web.********************.js 20.3 kB
dotcom-rendering/dist/9558.client.web.********************.js 3.53 kB
dotcom-rendering/dist/9665.client.web.********************.js 4.05 kB
dotcom-rendering/dist/9735.client.web.********************.js 4.46 kB
dotcom-rendering/dist/9766.client.web.********************.js 3.4 kB
dotcom-rendering/dist/9790.client.web.********************.js 3.58 kB
dotcom-rendering/dist/9870.client.web.********************.js 2.86 kB
dotcom-rendering/dist/Accessibility-importable.client.web.********************.js 6.99 kB
dotcom-rendering/dist/AdBlockAsk-importable.client.web.********************.js 2.85 kB
dotcom-rendering/dist/AdPortals-importable.client.web.********************.js 4.85 kB
dotcom-rendering/dist/AlreadyVisited-importable.client.web.********************.js 424 B
dotcom-rendering/dist/AppsEpic-importable.client.web.********************.js 3.63 kB
dotcom-rendering/dist/AppsFooter-importable.client.web.********************.js 2.7 kB
dotcom-rendering/dist/AppsLightboxImage-importable.client.web.********************.js 2.66 kB
dotcom-rendering/dist/AppsLightboxImageStore-importable.client.web.********************.js 2.55 kB
dotcom-rendering/dist/AudioAtomWrapper-importable.client.web.********************.js 2.76 kB
dotcom-rendering/dist/AudioPlayerWrapper-importable.client.web.********************.js 6.5 kB
dotcom-rendering/dist/AustralianTerritorySwitcher-importable.client.web.********************.js 2 kB
dotcom-rendering/dist/Branding-importable.client.web.********************.js 2.88 kB
dotcom-rendering/dist/braze-web-sdk-core.client.web.********************.js 37.2 kB
dotcom-rendering/dist/BrazeMessaging-importable.client.web.********************.js 1.97 kB
dotcom-rendering/dist/CalloutBlockComponent-importable.client.web.********************.js 6.74 kB
dotcom-rendering/dist/CalloutEmbedBlockComponent-importable.client.web.********************.js 5.77 kB
dotcom-rendering/dist/CardCommentCount-importable.client.web.********************.js 2.66 kB
dotcom-rendering/dist/Carousel-importable.client.web.********************.js 7.82 kB
dotcom-rendering/dist/CarouselForNewsletters-importable.client.web.********************.js 5.15 kB
dotcom-rendering/dist/ChartAtom-importable.client.web.********************.js 538 B
dotcom-rendering/dist/CommentCount-importable.client.web.********************.js 2.29 kB
dotcom-rendering/dist/CrosswordComponent-importable.client.web.********************.js 1.01 kB
dotcom-rendering/dist/DiscussionApps-importable.client.web.********************.js 1.93 kB
dotcom-rendering/dist/DiscussionMeta-importable.client.web.********************.js 2.44 kB
dotcom-rendering/dist/DiscussionWeb-importable.client.web.********************.js 1.74 kB
dotcom-rendering/dist/DocumentBlockComponent-importable.client.web.********************.js 2.82 kB
dotcom-rendering/dist/Dropdown-importable.client.web.********************.js 1.72 kB
dotcom-rendering/dist/EditionSwitcherBanner-importable.client.web.********************.js 3.5 kB
dotcom-rendering/dist/EmbedBlockComponent-importable.client.web.********************.js 3.94 kB
dotcom-rendering/dist/EnhancePinnedPost-importable.client.web.********************.js 2.02 kB
dotcom-rendering/dist/FetchOnwardsData-importable.client.web.********************.js 1.94 kB
dotcom-rendering/dist/FilterKeyEventsToggle-importable.client.web.********************.js 3.8 kB
dotcom-rendering/dist/FocusStyles-importable.client.web.********************.js 617 B
dotcom-rendering/dist/FollowWrapper-importable.client.web.********************.js 2.52 kB
dotcom-rendering/dist/FooterLabel-importable.client.web.********************.js 343 B
dotcom-rendering/dist/FooterReaderRevenueLinks-importable.client.web.********************.js 3.5 kB
dotcom-rendering/dist/frameworks.client.web.********************.js 20.9 kB
dotcom-rendering/dist/FrontSubNav-importable.client.web.********************.js 7.4 kB
dotcom-rendering/dist/GetCricketScoreboard-importable.client.web.********************.js 6.26 kB
dotcom-rendering/dist/GetMatchNav-importable.client.web.********************.js 11.5 kB
dotcom-rendering/dist/GetMatchStats-importable.client.web.********************.js 7.98 kB
dotcom-rendering/dist/GetMatchTabs-importable.client.web.********************.js 2.58 kB
dotcom-rendering/dist/guardian-braze-components-banner.client.web.********************.js 15.8 kB
dotcom-rendering/dist/guardian-braze-components-end-of-article.client.web.********************.js 10.2 kB
dotcom-rendering/dist/GuideAtomWrapper-importable.client.web.********************.js 783 B
dotcom-rendering/dist/index.client.web.********************.js 45 kB
dotcom-rendering/dist/InstagramBlockComponent-importable.client.web.********************.js 2.9 kB
dotcom-rendering/dist/InteractiveAtomMessenger-importable.client.web.********************.js 853 B
dotcom-rendering/dist/InteractiveBlockComponent-importable.client.web.********************.js 8.55 kB
dotcom-rendering/dist/InteractiveContentsBlockComponent-importable.client.web.********************.js 3.75 kB
dotcom-rendering/dist/KeyEventsCarousel-importable.client.web.********************.js 5.68 kB
dotcom-rendering/dist/KnowledgeQuizAtom-importable.client.web.********************.js 3.55 kB
dotcom-rendering/dist/LatestLinks-importable.client.web.********************.js 6.38 kB
dotcom-rendering/dist/LightboxHash-importable.client.web.********************.js 436 B
dotcom-rendering/dist/LightboxLayout-importable.client.web.********************.js 6.53 kB
dotcom-rendering/dist/LiveBlogEpic-importable.client.web.********************.js 3.55 kB
dotcom-rendering/dist/LiveblogNotifications-importable.client.web.********************.js 4.82 kB
dotcom-rendering/dist/Liveness-importable.client.web.********************.js 4.72 kB
dotcom-rendering/dist/ManyNewsletterSignUp-importable.client.web.********************.js 7.61 kB
dotcom-rendering/dist/MapEmbedBlockComponent-importable.client.web.********************.js 5.96 kB
dotcom-rendering/dist/Metrics-importable.client.web.********************.js 2.69 kB
dotcom-rendering/dist/MostViewedFooter-importable.client.web.********************.js 3.85 kB
dotcom-rendering/dist/MostViewedFooterData-importable.client.web.********************.js 5.95 kB
dotcom-rendering/dist/MostViewedRightWithAd-importable.client.web.********************.js 5.12 kB
dotcom-rendering/dist/OnwardsUpper-importable.client.web.********************.js 5.34 kB
dotcom-rendering/dist/PersonalityQuizAtom-importable.client.web.********************.js 3.72 kB
dotcom-rendering/dist/ProfileAtom-importable.client.web.********************.js 543 B
dotcom-rendering/dist/ProfileAtomWrapper-importable.client.web.********************.js 802 B
dotcom-rendering/dist/PulsingDot-importable.client.web.********************.js 749 B
dotcom-rendering/dist/QandaAtom-importable.client.web.********************.js 543 B
dotcom-rendering/dist/ReaderRevenueDev-importable.client.web.********************.js 468 B
dotcom-rendering/dist/readerRevenueDevUtils.client.web.********************.js 1.75 kB
dotcom-rendering/dist/RelativeTime-importable.client.web.********************.js 2.53 kB
dotcom-rendering/dist/RichLinkComponent-importable.client.web.********************.js 6.11 kB
dotcom-rendering/dist/ScrollableFeature-importable.client.web.********************.js 6.8 kB
dotcom-rendering/dist/ScrollableHighlights-importable.client.web.********************.js 6.58 kB
dotcom-rendering/dist/ScrollableMedium-importable.client.web.********************.js 4.18 kB
dotcom-rendering/dist/ScrollableSmall-importable.client.web.********************.js 4.16 kB
dotcom-rendering/dist/SecureSignup-importable.client.web.********************.js 4.1 kB
dotcom-rendering/dist/SendTargetingParams-importable.client.web.********************.js 2.22 kB
dotcom-rendering/dist/sentry.client.web.********************.js 794 B
dotcom-rendering/dist/SetABTests-importable.client.web.********************.js 3.92 kB
dotcom-rendering/dist/SetAdTargeting-importable.client.web.********************.js 485 B
dotcom-rendering/dist/ShareButton-importable.client.web.********************.js 919 B
dotcom-rendering/dist/shimport.client.web.********************.js 2.8 kB
dotcom-rendering/dist/ShowHideContainers-importable.client.web.********************.js 920 B
dotcom-rendering/dist/ShowMore-importable.client.web.********************.js 2.1 kB
dotcom-rendering/dist/SignInGateMain.client.web.********************.js 4.46 kB
dotcom-rendering/dist/SignInGateMainCheckoutComplete.client.web.********************.js 5.56 kB
dotcom-rendering/dist/SignInGateSelector-importable.client.web.********************.js 7.36 kB
dotcom-rendering/dist/SlideshowCarousel-importable.client.web.********************.js 4.38 kB
dotcom-rendering/dist/SlotBodyEnd-importable.client.web.********************.js 4.84 kB
dotcom-rendering/dist/SpotifyBlockComponent-importable.client.web.********************.js 5.78 kB
dotcom-rendering/dist/StickyBottomBanner-importable.client.web.********************.js 6.02 kB
dotcom-rendering/dist/StickyLiveblogAskWrapper-importable.client.web.********************.js 8.14 kB
dotcom-rendering/dist/SubNav-importable.client.web.********************.js 2.44 kB
dotcom-rendering/dist/TableOfContents-importable.client.web.********************.js 3.5 kB
dotcom-rendering/dist/TimelineAtom-importable.client.web.********************.js 1.23 kB
dotcom-rendering/dist/Titlepiece-importable.client.web.********************.js 13.6 kB
dotcom-rendering/dist/TopBar-importable.client.web.********************.js 9.32 kB
dotcom-rendering/dist/TopBarSupport-importable.client.web.********************.js 2.5 kB
dotcom-rendering/dist/TweetBlockComponent-importable.client.web.********************.js 1.13 kB
dotcom-rendering/dist/UnsafeEmbedBlockComponent-importable.client.web.********************.js 2.91 kB
dotcom-rendering/dist/VideoFacebookBlockComponent-importable.client.web.********************.js 5.97 kB
dotcom-rendering/dist/VineBlockComponent-importable.client.web.********************.js 2.78 kB
dotcom-rendering/dist/YoutubeBlockComponent-importable.client.web.********************.js 4.27 kB

compressed-size-action

@github-actions github-actions bot removed the Stale label Dec 14, 2024
@dblatcher dblatcher changed the title use layout from frontend use email-newsletter layout data from frontend Feb 4, 2025
@dblatcher dblatcher marked this pull request as ready for review February 5, 2025 08:55
@dblatcher dblatcher requested a review from a team as a code owner February 5, 2025 08:55
Copy link
Contributor

@JamieB-gu JamieB-gu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is fantastic, thank you @dblatcher ! ⭐ 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants