-
Notifications
You must be signed in to change notification settings - Fork 4
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
Top tier copy changes #1366
Top tier copy changes #1366
Changes from 4 commits
bd971c0
15fc1f2
d83e0d1
70c8f07
7f0997b
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
import { Stack } from '@guardian/source/react-components'; | ||
import { PRODUCT_TYPES } from '@/shared/productTypes'; | ||
import { measure } from '../../../../styles/typography'; | ||
import { trackEvent } from '../../../../utilities/analytics'; | ||
import { Heading } from '../../shared/Heading'; | ||
import { hrefStyle } from '../cancellationConstants'; | ||
|
||
const trackCancellationClickEvent = (eventLabel: string) => () => | ||
trackEvent({ | ||
eventCategory: 'cancellation', | ||
eventAction: 'click', | ||
eventLabel, | ||
}); | ||
|
||
export const tierThreeCancellationFlowStart = () => ( | ||
<Stack space={4}> | ||
<Heading cssOverrides={measure.heading}> | ||
We’re sorry to hear you’re thinking of cancelling your{' '} | ||
{PRODUCT_TYPES.tierthree.friendlyName()} | ||
</Heading> | ||
|
||
<p> | ||
With your vital support, the Guardian can remain editorially | ||
independent, free from the influence of billionaire owners and | ||
politicians. This enables us to challenge and hold the powerful to | ||
account, and to fearlessly pursue the truth. The support from our | ||
readers helps us keep our journalism without a paywall, open and | ||
accessible to all. | ||
</p> | ||
|
||
<p> | ||
If you’re looking to take a break, it’s possible to suspend your | ||
subscription to the Guardian Weekly – reducing the cost of your | ||
total subscription. You can suspend up to six issues per year. This | ||
pauses delivery and you will receive the refund for any suspended | ||
issues off your next bill.{' '} | ||
<a | ||
css={hrefStyle} | ||
href="/suspend/digital+print" | ||
onClick={trackCancellationClickEvent( | ||
'tierThree_holiday_suspension', | ||
)} | ||
> | ||
Suspend your subscription here | ||
</a> | ||
. | ||
</p> | ||
|
||
<p>Could you please take a moment to tell us why you want to cancel?</p> | ||
</Stack> | ||
); |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -512,7 +512,7 @@ export function baseTierThree(): ProductDetail { | |
phoneRegionsToDisplay: ['UK & ROW', 'US', 'AUS'], | ||
}, | ||
billingCountry: 'United Kingdom', | ||
joinDate: '2024-06-13', | ||
joinDate: '2021-11-29', | ||
optIn: true, | ||
subscription: { | ||
paymentMethod: 'Card', | ||
|
@@ -532,15 +532,15 @@ export function baseTierThree(): ProductDetail { | |
country: 'United Kingdom', | ||
}, | ||
safeToUpdatePaymentMethod: true, | ||
start: '2024-06-28', | ||
end: '2025-06-13', | ||
start: '2021-12-24', | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Out of curiosity, why are these set to dates in the past? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I moved them into the past to line up with the mocked data for the potential holiday stop api response. I could have setup some new holiday stop dates specifically for top tier, or updated the dates for all products everywhere, but I thought this was the simplest thing to do. |
||
end: '2022-12-15', | ||
nextPaymentPrice: 2500, | ||
nextPaymentDate: '2024-06-28', | ||
lastPaymentDate: null, | ||
potentialCancellationDate: null, | ||
chargedThroughDate: null, | ||
renewalDate: '2025-06-13', | ||
anniversaryDate: '2025-06-28', | ||
renewalDate: '2022-12-15', | ||
anniversaryDate: '2022-12-24', | ||
cancelledAt: false, | ||
subscriptionId: 'A-S00897035', | ||
trialLength: 4, | ||
|
@@ -560,8 +560,8 @@ export function baseTierThree(): ProductDetail { | |
futurePlans: [ | ||
{ | ||
name: null, | ||
start: '2024-06-28', | ||
end: '2025-06-13', | ||
start: '2021-12-10', | ||
end: '2022-11-29', | ||
shouldBeVisible: true, | ||
chargedThrough: null, | ||
price: 2500, | ||
|
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.
Nice work getting rid of the extra layer of function application here 👍 It seems like it's definitely not needed - all of the call sites I can see immediately call the returned function, passing the same value as was passed in the initial call.