-
Notifications
You must be signed in to change notification settings - Fork 29
jingram/subscription win back banner: Adds Subscription Win-Back Banner #2014
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
base: main
Are you sure you want to change the base?
Conversation
✅ Deploy Preview for content-scope-scripts ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Temporary Branch UpdateThe temporary branch has been updated with the latest changes. Below are the details:
Please use the above install command to update to the latest version. |
[Beta] Generated file diffTime updated: Fri, 17 Oct 2025 17:04:28 GMT Apple
File has changed Integration
File has changed Windows
File has changed New Files
❌ File only exists in new changeset |
9a8d0a7
to
5ac27c9
Compare
Remove freemium dir from test-unit script
Include supporting svg
5ac27c9
to
2016065
Compare
test('renders a title, descriptionText an action button, and dismiss button', async ({ page }, workerInfo) => { | ||
const ntp = NewtabPage.create(page, workerInfo); | ||
await ntp.reducedMotion(); | ||
await ntp.openPage({ winback: 'true' }); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bug: Test Fails Due to Mismatched Parameter Handling
The integration test passes winback='true'
in the URL, but the mock transport expects this parameter to be a key in subscriptionWinBackBannerDataExamples
. Since subscriptionWinBackBannerDataExamples
only contains 'winback_last_day'
, the banner data isn't loaded, which causes the integration test to fail.
Additional Locations (2)
@@ -0,0 +1,41 @@ | |||
/** | |||
* Using CSS Modules 'composes' to import styles from FreemiumPIRBanner. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
very cool! today i learned. 🙌
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good work! Thank you for getting this sorted for me / O-O.
Asana Task/Github Issue: https://app.asana.com/1/137249556945/project/1211050482669423/task/1211622723586657?focus=true
Figma: https://www.figma.com/design/tnk4CZcOZ5feYM20N57Tgs/Subscription-Win-Back-Offer?node-id=211-27666&m=dev
Description
Add a new Subscription Win-back Banner component (SubscriptionWinBackBanner) to the New Tab Page, allowing the native application to display resubscribe messages to users with lapsed subscriptions. This new component used the Freemium PIR banner component as a base and functions the same way. Notable differences are:
I’ve also moved the
convertMarkdownToHTMLForStrongTags
utility function to the shared utils directory since both this new component and the Freemium PIR banner both make use of it. I’ve updated the unit tests and references to the function to support this change.Additionally I’ve updated
stylelintrc.json
to allow for CSS module composition and avoid duplication of the entire Freemium PIR banner styles and still be able to easily support future changes.Testing Steps
Checklist
Please tick all that apply: