Skip to content

Conversation

@elizabeth-ilina
Copy link
Contributor

@elizabeth-ilina elizabeth-ilina commented Jan 7, 2026

Because

  • We need a cancel interstitial offer page as part of the churn intervention epic.

This pull request

  • Creates /[locale]/subscriptions/[subscription_id]/offer page

Issue that this pull request solves

Closes: #PAY-3371

Checklist

Put an x in the boxes that apply

  • My commit is GPG signed.
  • If applicable, I have modified or added tests which pass locally.
  • I have added necessary documentation (if appropriate).
  • I have verified that my changes render correctly in RTL (if appropriate).

Screenshots (Optional)

Please attach the screenshots of the changes made in case of change in user interface.
image

image

Other information (Optional)

Any other information that is important to this pull request.

@elizabeth-ilina elizabeth-ilina force-pushed the PAY-3371-create-page-interstitial-offer branch 17 times, most recently from 8bf0325 to fb7e902 Compare January 14, 2026 16:34
@elizabeth-ilina elizabeth-ilina force-pushed the PAY-3371-create-page-interstitial-offer branch 10 times, most recently from ec5a467 to b54e666 Compare January 14, 2026 20:44
@elizabeth-ilina elizabeth-ilina marked this pull request as ready for review January 14, 2026 22:15
@elizabeth-ilina elizabeth-ilina requested a review from a team as a code owner January 14, 2026 22:15
@elizabeth-ilina elizabeth-ilina force-pushed the PAY-3371-create-page-interstitial-offer branch 2 times, most recently from e898c7d to 35baab7 Compare January 21, 2026 20:57
@elizabeth-ilina elizabeth-ilina force-pushed the PAY-3371-create-page-interstitial-offer branch 3 times, most recently from 4fb6ac4 to c162981 Compare January 22, 2026 19:52
}

if (!interstitialOfferContent.isEligible || !interstitialOfferContent.pageContent) {
redirect(`/${locale}/subscriptions/${subscriptionId}/offer/error`);
Copy link
Contributor

Choose a reason for hiding this comment

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

/${locale}/subscriptions/${subscriptionId}/offer/error

@elizabeth-ilina elizabeth-ilina force-pushed the PAY-3371-create-page-interstitial-offer branch 5 times, most recently from a1858cf to 2f5e37b Compare January 23, 2026 18:24
@elizabeth-ilina elizabeth-ilina force-pushed the PAY-3371-create-page-interstitial-offer branch from 2f5e37b to c6b045d Compare January 23, 2026 21:27
redirect(`/${locale}/subscriptions/${subscriptionId}/offer`);
}

const { reason, webIcon, productName} = interstitialOfferContent;
Copy link
Contributor

@xlisachan xlisachan Jan 23, 2026

Choose a reason for hiding this comment

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

  const { webIcon, productName } = interstitialOfferContent;

  const reason = interstitialOfferContent.reason ?? 'general_error';

  if (webIcon && !productName) {
    throw new Error('Missing productName for interstitial offer icon');
  }


const { reason, webIcon, productName} = interstitialOfferContent;

if (!reason || !webIcon || !productName) {
Copy link
Contributor

Choose a reason for hiding this comment

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

This can be removed with the suggestion above.

'It looks like this subscription may no longer be active.'
),
};
case 'current_interval_not_found':
Copy link
Contributor

Choose a reason for hiding this comment

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

Nit: We don't need to list all the cases - if it's not subscription_not_found, it will just use the default option

{webIcon && (
<Image
src={webIcon}
alt={productName}
Copy link
Contributor

Choose a reason for hiding this comment

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

alt={productName ?? ''} as productName can be optional

@elizabeth-ilina elizabeth-ilina force-pushed the PAY-3371-create-page-interstitial-offer branch from c6b045d to ee820ad Compare January 23, 2026 22:11
>
{heading}
</h1>
<p className="w-full self-stretch leading-7 text-lg text-grey-900 text-center tablet:text-left">
Copy link
Contributor

Choose a reason for hiding this comment

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

tablet:text-left -> tablet:text-start perhaps?
In cases where the language direction is rtl, and not ltr.

Because:

* We need a cancel interstitial offer page as part of the churn intervention epic.

This commit:

* Creates /[locale]/subscriptions/[subscription_id]/offer page

Closes #PAY-3371
@elizabeth-ilina elizabeth-ilina force-pushed the PAY-3371-create-page-interstitial-offer branch from ee820ad to c6d567f Compare January 23, 2026 22:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants