@newskit-render/my-account 7.147.1 → 7.147.2-52fad9490.11

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 (104) hide show
  1. package/dist/cjs/Components/Elements/SectionListItem/SectionListItem.js +3 -3
  2. package/dist/cjs/Components/Elements/SectionListItem/SectionListItem.js.map +1 -1
  3. package/dist/cjs/Components/Sections/CancellationOffers/CancellationOffers.js +9 -1
  4. package/dist/cjs/Components/Sections/CancellationOffers/CancellationOffers.js.map +1 -1
  5. package/dist/cjs/Components/Sections/CancellationOffers/types.d.ts +2 -1
  6. package/dist/cjs/Components/Sections/CancellationReview/CancellationReview.d.ts +4 -0
  7. package/dist/cjs/Components/Sections/CancellationReview/CancellationReview.js +148 -0
  8. package/dist/cjs/Components/Sections/CancellationReview/CancellationReview.js.map +1 -0
  9. package/dist/cjs/Components/Sections/CancellationReview/index.d.ts +2 -0
  10. package/dist/cjs/Components/Sections/CancellationReview/index.js +19 -0
  11. package/dist/cjs/Components/Sections/CancellationReview/index.js.map +1 -0
  12. package/dist/cjs/Components/Sections/CancellationReview/types.d.ts +23 -0
  13. package/dist/cjs/Components/Sections/CancellationReview/types.js +3 -0
  14. package/dist/cjs/Components/Sections/CancellationReview/types.js.map +1 -0
  15. package/dist/cjs/Components/Sections/ConfirmCancellation/ConfirmCancellation.d.ts +1 -18
  16. package/dist/cjs/Components/Sections/ConfirmCancellation/ConfirmCancellation.js.map +1 -1
  17. package/dist/cjs/Components/Sections/ConfirmCancellation/ConfirmCancellationExp2.d.ts +2 -0
  18. package/dist/cjs/Components/Sections/ConfirmCancellation/ConfirmCancellationExp2.js +59 -0
  19. package/dist/cjs/Components/Sections/ConfirmCancellation/ConfirmCancellationExp2.js.map +1 -0
  20. package/dist/cjs/Components/Sections/ConfirmCancellation/index.d.ts +89 -0
  21. package/dist/cjs/Components/Sections/ConfirmCancellation/index.js +47 -0
  22. package/dist/cjs/Components/Sections/ConfirmCancellation/index.js.map +1 -0
  23. package/dist/cjs/Components/Sections/ContentContainer/ContentContainer.js +3 -1
  24. package/dist/cjs/Components/Sections/ContentContainer/ContentContainer.js.map +1 -1
  25. package/dist/cjs/Components/Sections/NavigationSecondary/NavigationSecondary.js +1 -0
  26. package/dist/cjs/Components/Sections/NavigationSecondary/NavigationSecondary.js.map +1 -1
  27. package/dist/cjs/Components/Templates/CancellationStepperRender.d.ts +56 -1
  28. package/dist/cjs/Components/Templates/CancellationStepperRender.js +48 -17
  29. package/dist/cjs/Components/Templates/CancellationStepperRender.js.map +1 -1
  30. package/dist/cjs/Components/Templates/SubscriptionAndBillingRender.js +8 -0
  31. package/dist/cjs/Components/Templates/SubscriptionAndBillingRender.js.map +1 -1
  32. package/dist/cjs/context/types.d.ts +3 -2
  33. package/dist/cjs/context/types.js.map +1 -1
  34. package/dist/cjs/helpers/cancellationUtils.js +2 -1
  35. package/dist/cjs/helpers/cancellationUtils.js.map +1 -1
  36. package/dist/cjs/helpers/dataUtils.js +28 -2
  37. package/dist/cjs/helpers/dataUtils.js.map +1 -1
  38. package/dist/cjs/helpers/dateUtils.d.ts +1 -1
  39. package/dist/cjs/helpers/dateUtils.js +11 -8
  40. package/dist/cjs/helpers/dateUtils.js.map +1 -1
  41. package/dist/cjs/pages/CancellationStepper/CancellationStepper.js +1 -1
  42. package/dist/cjs/pages/CancellationStepper/CancellationStepper.js.map +1 -1
  43. package/dist/cjs/pages/CancellationStepper/CancellationStepperContext.js +591 -494
  44. package/dist/cjs/pages/CancellationStepper/CancellationStepperContext.js.map +1 -1
  45. package/dist/cjs/pages/SubscriptionAndBilling/SubscriptionAndBillingContext.js +1 -0
  46. package/dist/cjs/pages/SubscriptionAndBilling/SubscriptionAndBillingContext.js.map +1 -1
  47. package/dist/cjs/pages/types.d.ts +3 -0
  48. package/dist/cjs/queries/getUserSubscription.js +1 -1
  49. package/dist/cjs/queries/getUserSubscription.js.map +1 -1
  50. package/dist/cjs/queries/mutateSendFamilyMemberInvite.js +2 -1
  51. package/dist/cjs/queries/mutateSendFamilyMemberInvite.js.map +1 -1
  52. package/dist/esm/Components/Elements/SectionListItem/SectionListItem.js +3 -3
  53. package/dist/esm/Components/Elements/SectionListItem/SectionListItem.js.map +1 -1
  54. package/dist/esm/Components/Sections/CancellationOffers/CancellationOffers.js +11 -3
  55. package/dist/esm/Components/Sections/CancellationOffers/CancellationOffers.js.map +1 -1
  56. package/dist/esm/Components/Sections/CancellationOffers/types.d.ts +2 -1
  57. package/dist/esm/Components/Sections/CancellationReview/CancellationReview.d.ts +4 -0
  58. package/dist/esm/Components/Sections/CancellationReview/CancellationReview.js +120 -0
  59. package/dist/esm/Components/Sections/CancellationReview/CancellationReview.js.map +1 -0
  60. package/dist/esm/Components/Sections/CancellationReview/index.d.ts +2 -0
  61. package/dist/esm/Components/Sections/CancellationReview/index.js +3 -0
  62. package/dist/esm/Components/Sections/CancellationReview/index.js.map +1 -0
  63. package/dist/esm/Components/Sections/CancellationReview/types.d.ts +23 -0
  64. package/dist/esm/Components/Sections/CancellationReview/types.js +2 -0
  65. package/dist/esm/Components/Sections/CancellationReview/types.js.map +1 -0
  66. package/dist/esm/Components/Sections/ConfirmCancellation/ConfirmCancellation.d.ts +1 -18
  67. package/dist/esm/Components/Sections/ConfirmCancellation/ConfirmCancellation.js +1 -1
  68. package/dist/esm/Components/Sections/ConfirmCancellation/ConfirmCancellation.js.map +1 -1
  69. package/dist/esm/Components/Sections/ConfirmCancellation/ConfirmCancellationExp2.d.ts +2 -0
  70. package/dist/esm/Components/Sections/ConfirmCancellation/ConfirmCancellationExp2.js +52 -0
  71. package/dist/esm/Components/Sections/ConfirmCancellation/ConfirmCancellationExp2.js.map +1 -0
  72. package/dist/esm/Components/Sections/ConfirmCancellation/index.d.ts +89 -0
  73. package/dist/esm/Components/Sections/ConfirmCancellation/index.js +40 -0
  74. package/dist/esm/Components/Sections/ConfirmCancellation/index.js.map +1 -0
  75. package/dist/esm/Components/Sections/ContentContainer/ContentContainer.js +4 -2
  76. package/dist/esm/Components/Sections/ContentContainer/ContentContainer.js.map +1 -1
  77. package/dist/esm/Components/Sections/NavigationSecondary/NavigationSecondary.js +1 -0
  78. package/dist/esm/Components/Sections/NavigationSecondary/NavigationSecondary.js.map +1 -1
  79. package/dist/esm/Components/Templates/CancellationStepperRender.d.ts +56 -1
  80. package/dist/esm/Components/Templates/CancellationStepperRender.js +48 -17
  81. package/dist/esm/Components/Templates/CancellationStepperRender.js.map +1 -1
  82. package/dist/esm/Components/Templates/SubscriptionAndBillingRender.js +8 -0
  83. package/dist/esm/Components/Templates/SubscriptionAndBillingRender.js.map +1 -1
  84. package/dist/esm/context/types.d.ts +3 -2
  85. package/dist/esm/context/types.js.map +1 -1
  86. package/dist/esm/helpers/cancellationUtils.js +2 -1
  87. package/dist/esm/helpers/cancellationUtils.js.map +1 -1
  88. package/dist/esm/helpers/dataUtils.js +5 -2
  89. package/dist/esm/helpers/dataUtils.js.map +1 -1
  90. package/dist/esm/helpers/dateUtils.d.ts +1 -1
  91. package/dist/esm/helpers/dateUtils.js +9 -6
  92. package/dist/esm/helpers/dateUtils.js.map +1 -1
  93. package/dist/esm/pages/CancellationStepper/CancellationStepper.js +1 -1
  94. package/dist/esm/pages/CancellationStepper/CancellationStepper.js.map +1 -1
  95. package/dist/esm/pages/CancellationStepper/CancellationStepperContext.js +592 -495
  96. package/dist/esm/pages/CancellationStepper/CancellationStepperContext.js.map +1 -1
  97. package/dist/esm/pages/SubscriptionAndBilling/SubscriptionAndBillingContext.js +1 -0
  98. package/dist/esm/pages/SubscriptionAndBilling/SubscriptionAndBillingContext.js.map +1 -1
  99. package/dist/esm/pages/types.d.ts +3 -0
  100. package/dist/esm/queries/getUserSubscription.js +1 -1
  101. package/dist/esm/queries/getUserSubscription.js.map +1 -1
  102. package/dist/esm/queries/mutateSendFamilyMemberInvite.js +2 -1
  103. package/dist/esm/queries/mutateSendFamilyMemberInvite.js.map +1 -1
  104. package/package.json +3 -3
@@ -11,7 +11,7 @@ var __assign = (this && this.__assign) || function () {
11
11
  };
12
12
  import React from 'react';
13
13
  import { footer, navigationPrimary, sideNav } from '../../context/baseContext';
14
- import { BASE_URL } from '../../constants';
14
+ import { BASE_URL, CANCELLATION_EXPERIMENT } from '../../constants';
15
15
  import { DEFAULT_CONTENT_CONTAINER_WIDTH, getEmbeddedModeProperty, } from '@newskit-render/shared-components';
16
16
  import { EventTrigger, LinkInline, Stack, TextBlock } from 'newskit';
17
17
  var getPageTrackingEvent = function (pageName, variant, contractPhase, inEmbeddedMode) { return ({
@@ -34,569 +34,666 @@ var reasonSubtitleOverrides = {
34
34
  stylePreset: { xs: 'textAlignCenter', md: 'textAlignLeft' },
35
35
  };
36
36
  var downgradePageUrl = '[baseURL]/cancel?step=downgrade';
37
- export var CancellationStepperContext = function (variant, contractPhase, inEmbeddedMode) { return ({
38
- baseUrl: BASE_URL,
39
- head: {
40
- pageTitle: 'Cancellation',
41
- },
42
- showBackButton: true,
43
- header: {
44
- backButton: {
45
- text: 'Back',
46
- 'aria-label': 'back',
47
- href: '[baseURL]/subscription-and-billing',
48
- hasIcon: true,
49
- eventContext: {
50
- event_navigation_action: 'navigation',
51
- event_navigation_name: 'button:back',
52
- event_navigation_browsing_method: EventTrigger.Click,
53
- page_name: 'cancellation reasons',
54
- optimizely_feature_data: "cancellation_exp|".concat(variant),
55
- contract_state: contractPhase,
56
- },
57
- },
58
- backButtonOverrides: {
59
- marginBlockEnd: 'space060',
37
+ export var CancellationStepperContext = function (variant, contractPhase, inEmbeddedMode) {
38
+ var isVariantTwo = variant === CANCELLATION_EXPERIMENT.VARIANT_2_A;
39
+ var varTwoIntroduction = {
40
+ title: 'Your subscription has been cancelled',
41
+ description: 'We’ve processed your cancellation. You’ll continue to have access until the end of your current billing period.',
42
+ center: false,
43
+ titleOverrides: {},
44
+ };
45
+ return {
46
+ baseUrl: BASE_URL,
47
+ head: {
48
+ pageTitle: 'Cancellation',
60
49
  },
61
- },
62
- containerOverrides: {
63
- rows: 'auto',
64
- columns: '1fr 1fr',
65
- rowGap: '8px',
66
- columnGap: '8px',
67
- justifyContent: 'space-between',
68
- overrides: {
69
- paddingBlock: 'space050',
70
- paddingInline: 'space040',
71
- minWidth: '100%',
50
+ showBackButton: true,
51
+ header: {
52
+ backButton: {
53
+ text: 'Back',
54
+ 'aria-label': 'back',
55
+ href: '[baseURL]/subscription-and-billing',
56
+ hasIcon: true,
57
+ eventContext: {
58
+ event_navigation_action: 'navigation',
59
+ event_navigation_name: 'button:back',
60
+ event_navigation_browsing_method: EventTrigger.Click,
61
+ page_name: 'cancellation reasons',
62
+ optimizely_feature_data: "cancellation_exp|".concat(variant),
63
+ contract_state: contractPhase,
64
+ },
65
+ },
66
+ backButtonOverrides: {
67
+ marginBlockEnd: 'space060',
68
+ },
72
69
  },
73
- },
74
- layoutMainContentOverrides: {
75
- fullWidth: true,
76
- justifyContent: 'stretch',
77
- width: {
78
- xs: '100%',
79
- md: '100%',
70
+ containerOverrides: {
71
+ rows: 'auto',
72
+ columns: '1fr 1fr',
73
+ rowGap: '8px',
74
+ columnGap: '8px',
75
+ justifyContent: 'space-between',
76
+ overrides: {
77
+ paddingBlock: 'space050',
78
+ paddingInline: 'space040',
79
+ minWidth: '100%',
80
+ },
80
81
  },
81
- paddingInline: {
82
- xs: 'space045',
83
- md: 'space060',
82
+ layoutMainContentOverrides: {
83
+ fullWidth: true,
84
+ justifyContent: 'stretch',
85
+ width: {
86
+ xs: '100%',
87
+ md: '100%',
88
+ },
89
+ paddingInline: {
90
+ xs: 'space045',
91
+ md: 'space060',
92
+ },
93
+ paddingBlockStart: {
94
+ xs: 'space045',
95
+ md: 'space060',
96
+ },
84
97
  },
85
- paddingBlockStart: {
86
- xs: 'space045',
87
- md: 'space060',
98
+ contentContainerOverrides: {
99
+ marginInline: 'auto',
100
+ paddingBlockStart: 'space000',
101
+ paddingInline: 'space000',
88
102
  },
89
- },
90
- contentContainerOverrides: {
91
- marginInline: 'auto',
92
- paddingBlockStart: 'space000',
93
- paddingInline: 'space000',
94
- },
95
- components: {
96
- reason: {
97
- tealiumContext: getPageTrackingEvent('cancellation reasons', variant, contractPhase, inEmbeddedMode),
98
- contentContainerOverrides: {
99
- marginInline: 'auto',
100
- paddingBlockStart: 'space000',
101
- paddingInline: 'space000',
102
- width: __assign(__assign({}, DEFAULT_CONTENT_CONTAINER_WIDTH), { xs: '100%', sm: '100%' }),
103
- },
104
- layoutType: 'grid',
105
- header: {
106
- center: true,
107
- title: 'Before you go, can you tell us why?',
108
- description: 'Your feedback helps us improve and may allow us to offer you a better solution.',
109
- fullWidthTitle: true,
110
- titleOverrides: {
111
- marginBlockEnd: 'space060',
112
- typographyPreset: {
113
- xs: 'editorialHeadline040',
114
- md: 'editorialSubheadline050',
103
+ components: {
104
+ reason: {
105
+ tealiumContext: getPageTrackingEvent('cancellation reasons', variant, contractPhase, inEmbeddedMode),
106
+ contentContainerOverrides: {
107
+ marginInline: 'auto',
108
+ paddingBlockStart: 'space000',
109
+ paddingInline: 'space000',
110
+ width: __assign(__assign({}, DEFAULT_CONTENT_CONTAINER_WIDTH), { xs: '100%', sm: '100%' }),
111
+ },
112
+ layoutType: 'grid',
113
+ header: {
114
+ center: true,
115
+ title: 'Before you go, can you tell us why?',
116
+ description: 'Your feedback helps us improve and may allow us to offer you a better solution.',
117
+ fullWidthTitle: true,
118
+ titleOverrides: {
119
+ marginBlockEnd: 'space060',
120
+ typographyPreset: {
121
+ xs: 'editorialHeadline040',
122
+ md: 'editorialSubheadline050',
123
+ },
115
124
  },
116
- },
117
- descriptionOverrides: {
118
- marginBlockEnd: 'space040',
119
- paddingInline: { xs: 'space000', md: 'space110' },
120
- typographyPreset: {
121
- xs: 'editorialParagraph010',
122
- md: 'editorialParagraph020',
125
+ descriptionOverrides: {
126
+ marginBlockEnd: 'space040',
127
+ paddingInline: { xs: 'space000', md: 'space110' },
128
+ typographyPreset: {
129
+ xs: 'editorialParagraph010',
130
+ md: 'editorialParagraph020',
131
+ },
123
132
  },
124
133
  },
125
- },
126
- containerOverrides: {
127
- rows: 'auto',
128
- columns: '1fr 1fr',
129
- rowGap: 'space040',
130
- columnGap: 'space040',
131
- justifyContent: 'space-between',
132
- overrides: {
133
- paddingBlock: 'space045',
134
- minWidth: '100%',
135
- },
136
- },
137
- itemContainerOverrides: {
138
- rows: { xs: 'auto 1fr', md: 'auto' },
139
- columns: '1fr',
140
- rowGap: { xs: 'space040', md: 'space030' },
141
- justifyContent: 'space-between',
142
- overrides: {
143
- paddingBlock: { xs: 'space020', md: 'space045' },
144
- paddingInline: { xs: 'space020', md: 'space045' },
145
- paddingBlockEnd: { xs: 'space045', md: 'space045' },
146
- minWidth: '100%',
147
- },
148
- },
149
- itemHeaderOverrides: {
150
- flow: { xs: 'vertical-center', md: 'horizontal-top' },
151
- flowReverse: { xs: true, md: false },
152
- imageVisible: true,
153
- height: 'auto',
154
- },
155
- itemImageOverrides: {
156
- width: 45,
157
- height: 36,
158
- },
159
- belowItemExtra: {
160
134
  containerOverrides: {
161
- columns: 'repeat(2, auto)',
162
- justifyContent: 'center',
163
- justifyItems: 'center',
164
- alignItems: 'center',
135
+ rows: 'auto',
136
+ columns: '1fr 1fr',
137
+ rowGap: 'space040',
138
+ columnGap: 'space040',
139
+ justifyContent: 'space-between',
165
140
  overrides: {
166
- marginBlockStart: 'space050',
141
+ paddingBlock: 'space045',
142
+ minWidth: '100%',
167
143
  },
168
144
  },
169
- label: 'or',
170
- button: {
171
- text: 'None of the above',
172
- href: downgradePageUrl,
173
- id: 'none-of-the-above',
174
- },
175
- buttonOverrides: {
176
- stylePreset: 'baseInteractivePrimary030',
177
- typographyPreset: 'utilitySubheading020',
145
+ itemContainerOverrides: {
146
+ rows: { xs: 'auto 1fr', md: 'auto' },
147
+ columns: '1fr',
148
+ rowGap: { xs: 'space040', md: 'space030' },
149
+ justifyContent: 'space-between',
150
+ overrides: {
151
+ paddingBlock: { xs: 'space020', md: 'space045' },
152
+ paddingInline: { xs: 'space020', md: 'space045' },
153
+ paddingBlockEnd: { xs: 'space045', md: 'space045' },
154
+ minWidth: '100%',
155
+ },
178
156
  },
179
- iconOverrides: {
180
- size: 'iconSize020',
181
- stylePreset: 'baseInteractivePrimary030',
157
+ itemHeaderOverrides: {
158
+ flow: { xs: 'vertical-center', md: 'horizontal-top' },
159
+ flowReverse: { xs: true, md: false },
160
+ imageVisible: true,
161
+ height: 'auto',
182
162
  },
183
- marginInline: 'auto',
184
- eventContext: {
185
- event_navigation_action: 'navigation',
186
- event_navigation_name: 'online cancellation : cancellation reason selection',
187
- event_navigation_browsing_method: EventTrigger.Click,
188
- page_name: 'cancellation reasons',
189
- article_parent_name: 'none of the above',
190
- optimizely_feature_data: "cancellation_exp|".concat(variant),
191
- contract_state: contractPhase,
163
+ itemImageOverrides: {
164
+ width: 45,
165
+ height: 36,
192
166
  },
193
- },
194
- items: [
195
- {
196
- id: 'tech-issues',
197
- label: "I'm having tech issues",
198
- labelOverrides: reasonLabelOverrides,
199
- subtitle: "I've experienced problems with the app or website",
200
- subtitleOverrides: reasonSubtitleOverrides,
201
- componentType: 'grid',
202
- image: '/assets/cancellation/placeholder.png',
203
- href: downgradePageUrl,
204
- eventContext: {
205
- event_navigation_action: 'navigation',
206
- event_navigation_name: 'online cancellation : cancellation reason selection',
207
- event_navigation_browsing_method: EventTrigger.Click,
208
- page_name: 'cancellation reasons',
209
- article_parent_name: 'tech issues',
210
- optimizely_feature_data: "cancellation_exp|".concat(variant),
211
- contract_state: contractPhase,
167
+ belowItemExtra: {
168
+ containerOverrides: {
169
+ columns: 'repeat(2, auto)',
170
+ justifyContent: 'center',
171
+ justifyItems: 'center',
172
+ alignItems: 'center',
173
+ overrides: {
174
+ marginBlockStart: 'space050',
175
+ },
212
176
  },
213
- },
214
- {
215
- id: 'not-right-for-me',
216
- label: "The content isn't right for me",
217
- labelOverrides: reasonLabelOverrides,
218
- subtitle: "I'm not enjoying the content, or I'm taking a break from news",
219
- subtitleOverrides: reasonSubtitleOverrides,
220
- componentType: 'grid',
221
- image: '/assets/cancellation/placeholder.png',
222
- href: downgradePageUrl,
223
- eventContext: {
224
- event_navigation_action: 'navigation',
225
- event_navigation_name: 'online cancellation : cancellation reason selection',
226
- event_navigation_browsing_method: EventTrigger.Click,
227
- page_name: 'cancellation reasons',
228
- article_parent_name: 'not right for me',
229
- optimizely_feature_data: "cancellation_exp|".concat(variant),
230
- contract_state: contractPhase,
177
+ label: 'or',
178
+ button: {
179
+ text: 'None of the above',
180
+ href: downgradePageUrl,
181
+ id: 'none-of-the-above',
231
182
  },
232
- },
233
- {
234
- id: 'no-time',
235
- label: "I don't have time",
236
- labelOverrides: reasonLabelOverrides,
237
- subtitle: "I don't read the news enough to make it worthwhile",
238
- subtitleOverrides: reasonSubtitleOverrides,
239
- componentType: 'grid',
240
- image: '/assets/cancellation/placeholder.png',
241
- href: downgradePageUrl,
242
- eventContext: {
243
- event_navigation_action: 'navigation',
244
- event_navigation_name: 'online cancellation : cancellation reason selection',
245
- event_navigation_browsing_method: EventTrigger.Click,
246
- page_name: 'cancellation reasons',
247
- article_parent_name: 'no time',
248
- optimizely_feature_data: "cancellation_exp|".concat(variant),
249
- contract_state: contractPhase,
183
+ buttonOverrides: {
184
+ stylePreset: 'baseInteractivePrimary030',
185
+ typographyPreset: 'utilitySubheading020',
250
186
  },
251
- },
252
- {
253
- id: 'expensive',
254
- label: "It's too expensive",
255
- labelOverrides: reasonLabelOverrides,
256
- subtitle: "I can't justify the subscription cost",
257
- subtitleOverrides: reasonSubtitleOverrides,
258
- componentType: 'grid',
259
- image: '/assets/cancellation/placeholder.png',
260
- href: downgradePageUrl,
261
- eventContext: {
262
- event_navigation_action: 'navigation',
263
- event_navigation_name: 'online cancellation : cancellation reason selection',
264
- event_navigation_browsing_method: EventTrigger.Click,
265
- page_name: 'cancellation reasons',
266
- article_parent_name: 'expensive',
267
- optimizely_feature_data: "cancellation_exp|".concat(variant),
268
- contract_state: contractPhase,
187
+ iconOverrides: {
188
+ size: 'iconSize020',
189
+ stylePreset: 'baseInteractivePrimary030',
269
190
  },
270
- },
271
- {
272
- id: 'practical-issues',
273
- label: 'Practical issues',
274
- labelOverrides: reasonLabelOverrides,
275
- subtitle: 'I’m having delivery problems or can’t receive the paper any more',
276
- subtitleOverrides: reasonSubtitleOverrides,
277
- componentType: 'grid',
278
- image: '/assets/cancellation/placeholder.png',
279
- href: downgradePageUrl,
191
+ marginInline: 'auto',
280
192
  eventContext: {
281
193
  event_navigation_action: 'navigation',
282
194
  event_navigation_name: 'online cancellation : cancellation reason selection',
283
195
  event_navigation_browsing_method: EventTrigger.Click,
284
196
  page_name: 'cancellation reasons',
285
- article_parent_name: 'practical issues',
197
+ article_parent_name: 'none of the above',
286
198
  optimizely_feature_data: "cancellation_exp|".concat(variant),
287
199
  contract_state: contractPhase,
288
200
  },
289
201
  },
290
- {
291
- id: 'another-source',
292
- label: 'I prefer another source',
293
- labelOverrides: reasonLabelOverrides,
294
- subtitle: 'I now get my news from somewhere else',
295
- subtitleOverrides: reasonSubtitleOverrides,
296
- componentType: 'grid',
297
- image: '/assets/cancellation/placeholder.png',
298
- href: downgradePageUrl,
299
- eventContext: {
300
- event_navigation_action: 'navigation',
301
- event_navigation_name: 'online cancellation : cancellation reason selection',
302
- event_navigation_browsing_method: EventTrigger.Click,
303
- page_name: 'cancellation reasons',
304
- article_parent_name: 'another source',
305
- optimizely_feature_data: "cancellation_exp|".concat(variant),
306
- contract_state: contractPhase,
202
+ items: [
203
+ {
204
+ id: 'tech-issues',
205
+ label: "I'm having tech issues",
206
+ labelOverrides: reasonLabelOverrides,
207
+ subtitle: "I've experienced problems with the app or website",
208
+ subtitleOverrides: reasonSubtitleOverrides,
209
+ componentType: 'grid',
210
+ image: '/assets/cancellation/placeholder.png',
211
+ href: downgradePageUrl,
212
+ eventContext: {
213
+ event_navigation_action: 'navigation',
214
+ event_navigation_name: 'online cancellation : cancellation reason selection',
215
+ event_navigation_browsing_method: EventTrigger.Click,
216
+ page_name: 'cancellation reasons',
217
+ article_parent_name: 'tech issues',
218
+ optimizely_feature_data: "cancellation_exp|".concat(variant),
219
+ contract_state: contractPhase,
220
+ },
307
221
  },
308
- },
309
- ],
310
- },
311
- downgrade: {
312
- tealiumContext: getPageTrackingEvent('offer page', variant, contractPhase, inEmbeddedMode),
313
- contentContainerOverrides: {
314
- marginInline: 'auto',
315
- paddingBlockStart: 'space000',
316
- paddingInline: 'space000',
317
- width: { xs: '100%' },
318
- maxWidth: '1400px',
319
- },
320
- header: {
321
- overline: 'Exclusive international offer:',
322
- overlineOverrides: {
323
- paddingInline: { xs: 'space000', md: 'space050' },
324
- typographyPreset: 'utilityHeading050',
325
- },
326
- title: 'Stay informed for less',
327
- description: 'Save on your subscription and continue to access trusted analysis and global reporting.',
328
- fullWidthTitle: true,
329
- titleOverrides: {
330
- marginBlockEnd: 'space060',
331
- paddingInline: { xs: 'space000', md: 'space050' },
332
- typographyPreset: {
333
- xs: 'editorialLightDisplay007',
334
- md: 'editorialLightDisplay008',
222
+ {
223
+ id: 'not-right-for-me',
224
+ label: "The content isn't right for me",
225
+ labelOverrides: reasonLabelOverrides,
226
+ subtitle: "I'm not enjoying the content, or I'm taking a break from news",
227
+ subtitleOverrides: reasonSubtitleOverrides,
228
+ componentType: 'grid',
229
+ image: '/assets/cancellation/placeholder.png',
230
+ href: downgradePageUrl,
231
+ eventContext: {
232
+ event_navigation_action: 'navigation',
233
+ event_navigation_name: 'online cancellation : cancellation reason selection',
234
+ event_navigation_browsing_method: EventTrigger.Click,
235
+ page_name: 'cancellation reasons',
236
+ article_parent_name: 'not right for me',
237
+ optimizely_feature_data: "cancellation_exp|".concat(variant),
238
+ contract_state: contractPhase,
239
+ },
335
240
  },
336
- },
337
- descriptionOverrides: {
338
- paddingInline: { xs: 'space000', md: 'space050' },
339
- stylePreset: 'inkSubtle',
340
- typographyPreset: {
341
- xs: 'editorialLightHeadline020',
342
- md: 'editorialLightHeadline030',
241
+ {
242
+ id: 'no-time',
243
+ label: "I don't have time",
244
+ labelOverrides: reasonLabelOverrides,
245
+ subtitle: "I don't read the news enough to make it worthwhile",
246
+ subtitleOverrides: reasonSubtitleOverrides,
247
+ componentType: 'grid',
248
+ image: '/assets/cancellation/placeholder.png',
249
+ href: downgradePageUrl,
250
+ eventContext: {
251
+ event_navigation_action: 'navigation',
252
+ event_navigation_name: 'online cancellation : cancellation reason selection',
253
+ event_navigation_browsing_method: EventTrigger.Click,
254
+ page_name: 'cancellation reasons',
255
+ article_parent_name: 'no time',
256
+ optimizely_feature_data: "cancellation_exp|".concat(variant),
257
+ contract_state: contractPhase,
258
+ },
343
259
  },
344
- },
345
- },
346
- heroImage: {
347
- width: 450,
348
- height: 470,
349
- src: '/assets/cancellation/cancellation-hero.png',
350
- alt: 'Downgrade',
260
+ {
261
+ id: 'expensive',
262
+ label: "It's too expensive",
263
+ labelOverrides: reasonLabelOverrides,
264
+ subtitle: "I can't justify the subscription cost",
265
+ subtitleOverrides: reasonSubtitleOverrides,
266
+ componentType: 'grid',
267
+ image: '/assets/cancellation/placeholder.png',
268
+ href: downgradePageUrl,
269
+ eventContext: {
270
+ event_navigation_action: 'navigation',
271
+ event_navigation_name: 'online cancellation : cancellation reason selection',
272
+ event_navigation_browsing_method: EventTrigger.Click,
273
+ page_name: 'cancellation reasons',
274
+ article_parent_name: 'expensive',
275
+ optimizely_feature_data: "cancellation_exp|".concat(variant),
276
+ contract_state: contractPhase,
277
+ },
278
+ },
279
+ {
280
+ id: 'practical-issues',
281
+ label: 'Practical issues',
282
+ labelOverrides: reasonLabelOverrides,
283
+ subtitle: 'I’m having delivery problems or can’t receive the paper any more',
284
+ subtitleOverrides: reasonSubtitleOverrides,
285
+ componentType: 'grid',
286
+ image: '/assets/cancellation/placeholder.png',
287
+ href: downgradePageUrl,
288
+ eventContext: {
289
+ event_navigation_action: 'navigation',
290
+ event_navigation_name: 'online cancellation : cancellation reason selection',
291
+ event_navigation_browsing_method: EventTrigger.Click,
292
+ page_name: 'cancellation reasons',
293
+ article_parent_name: 'practical issues',
294
+ optimizely_feature_data: "cancellation_exp|".concat(variant),
295
+ contract_state: contractPhase,
296
+ },
297
+ },
298
+ {
299
+ id: 'another-source',
300
+ label: 'I prefer another source',
301
+ labelOverrides: reasonLabelOverrides,
302
+ subtitle: 'I now get my news from somewhere else',
303
+ subtitleOverrides: reasonSubtitleOverrides,
304
+ componentType: 'grid',
305
+ image: '/assets/cancellation/placeholder.png',
306
+ href: downgradePageUrl,
307
+ eventContext: {
308
+ event_navigation_action: 'navigation',
309
+ event_navigation_name: 'online cancellation : cancellation reason selection',
310
+ event_navigation_browsing_method: EventTrigger.Click,
311
+ page_name: 'cancellation reasons',
312
+ article_parent_name: 'another source',
313
+ optimizely_feature_data: "cancellation_exp|".concat(variant),
314
+ contract_state: contractPhase,
315
+ },
316
+ },
317
+ ],
351
318
  },
352
- offers: [
353
- {
354
- id: 'offer-1',
355
- title: 'Save £80/year',
356
- offerLabel: (React.createElement(Stack, { spaceInline: "space010", flow: "horizontal-center" },
357
- React.createElement(TextBlock, { typographyPreset: "editorialLightHeadline040", stylePreset: "inkSubtle" },
358
- React.createElement("s", null, "\u00A3120")),
359
- React.createElement(TextBlock, { typographyPreset: "editorialLightHeadline050", stylePreset: "inkSection020" }, "\u00A340 for a whole year"))),
360
- description: 'Continue getting unrivalled international journalism from world-class reporters, dedicated to delivering unbiased, informative and entertaining analysis of the very latest global events.',
361
- newPrice: 'Then £10/month thereafter',
362
- buttonText: 'Save £80 for a year',
363
- containerOverrides: {
364
- overrides: { marginBlockEnd: 'space050', marginInline: '-8px' },
319
+ downgrade: {
320
+ tealiumContext: getPageTrackingEvent('offer page', variant, contractPhase, inEmbeddedMode),
321
+ contentContainerOverrides: {
322
+ marginInline: 'auto',
323
+ paddingBlockStart: 'space000',
324
+ paddingInline: 'space000',
325
+ width: { xs: '100%' },
326
+ maxWidth: '1400px',
327
+ },
328
+ header: {
329
+ overline: 'Exclusive international offer:',
330
+ overlineOverrides: {
331
+ paddingInline: { xs: 'space000', md: 'space050' },
332
+ typographyPreset: 'utilityHeading050',
365
333
  },
366
- buttonEventContext: {
367
- event_navigation_action: 'navigation',
368
- event_navigation_name: 'offer 1 cta selected',
369
- event_navigation_browsing_method: EventTrigger.Click,
370
- page_name: 'offer page',
371
- optimizely_feature_data: "cancellation_exp|".concat(variant),
372
- contract_state: contractPhase,
334
+ title: 'Stay informed for less',
335
+ description: 'Save on your subscription and continue to access trusted analysis and global reporting.',
336
+ fullWidthTitle: true,
337
+ titleOverrides: {
338
+ marginBlockEnd: 'space060',
339
+ paddingInline: { xs: 'space000', md: 'space050' },
340
+ typographyPreset: {
341
+ xs: 'editorialLightDisplay007',
342
+ md: 'editorialLightDisplay008',
343
+ },
344
+ },
345
+ descriptionOverrides: {
346
+ paddingInline: { xs: 'space000', md: 'space050' },
347
+ stylePreset: 'inkSubtle',
348
+ typographyPreset: {
349
+ xs: 'editorialLightHeadline020',
350
+ md: 'editorialLightHeadline030',
351
+ },
373
352
  },
374
353
  },
375
- {
376
- id: 'offer-2',
377
- title: 'Your current subscription',
378
- offerLabel: 'International Digital',
379
- offerLabelOverrides: {
380
- typographyPreset: 'editorialLightHeadline050',
381
- stylePreset: 'inkSection020',
382
- },
383
- newPrice: '£10/month (£120/year)',
384
- buttonText: 'Keep your current subscription',
385
- baseUrl: '/account',
386
- buttonHref: '[baseUrl]/subscription-and-billing',
387
- buttonOverrides: {
388
- overrides: {
389
- stylePreset: 'buttonOutlinedSecondary',
354
+ heroImage: {
355
+ width: 450,
356
+ height: 470,
357
+ src: '/assets/cancellation/cancellation-hero.png',
358
+ alt: 'Downgrade',
359
+ },
360
+ offers: [
361
+ {
362
+ id: 'offer-1',
363
+ title: 'Save £80/year',
364
+ offerLabel: (React.createElement(Stack, { spaceInline: "space010", flow: "horizontal-center" },
365
+ React.createElement(TextBlock, { typographyPreset: "editorialLightHeadline040", stylePreset: "inkSubtle" },
366
+ React.createElement("s", null, "\u00A3120")),
367
+ React.createElement(TextBlock, { typographyPreset: "editorialLightHeadline050", stylePreset: "inkSection020" }, "\u00A340 for a whole year"))),
368
+ description: 'Continue getting unrivalled international journalism from world-class reporters, dedicated to delivering unbiased, informative and entertaining analysis of the very latest global events.',
369
+ newPrice: 'Then £10/month thereafter',
370
+ buttonText: 'Save £80 for a year',
371
+ containerOverrides: {
372
+ overrides: { marginBlockEnd: 'space050', marginInline: '-8px' },
373
+ },
374
+ buttonEventContext: {
375
+ event_navigation_action: 'navigation',
376
+ event_navigation_name: 'offer 1 cta selected',
377
+ event_navigation_browsing_method: EventTrigger.Click,
378
+ page_name: 'offer page',
379
+ optimizely_feature_data: "cancellation_exp|".concat(variant),
380
+ contract_state: contractPhase,
390
381
  },
391
382
  },
392
- buttonEventContext: {
383
+ {
384
+ id: 'offer-2',
385
+ title: 'Your current subscription',
386
+ offerLabel: 'International Digital',
387
+ offerLabelOverrides: {
388
+ typographyPreset: 'editorialLightHeadline050',
389
+ stylePreset: 'inkSection020',
390
+ },
391
+ newPrice: '£10/month (£120/year)',
392
+ buttonText: 'Keep your current subscription',
393
+ baseUrl: '/account',
394
+ buttonHref: '[baseUrl]/subscription-and-billing',
395
+ buttonOverrides: {
396
+ overrides: {
397
+ stylePreset: 'buttonOutlinedSecondary',
398
+ },
399
+ },
400
+ buttonEventContext: {
401
+ event_navigation_action: 'navigation',
402
+ event_navigation_name: 'online cancellation - keep your current subscription',
403
+ event_navigation_browsing_method: EventTrigger.Click,
404
+ page_name: 'offer page',
405
+ optimizely_feature_data: "cancellation_exp|".concat(variant),
406
+ contract_state: contractPhase,
407
+ },
408
+ containerOverrides: {
409
+ overrides: { marginBlockEnd: 'space050', marginInline: '-8px' },
410
+ },
411
+ },
412
+ ],
413
+ continueButton: {
414
+ eventContext: {
393
415
  event_navigation_action: 'navigation',
394
- event_navigation_name: 'online cancellation - keep your current subscription',
416
+ event_navigation_name: 'online cancellation - proceed with cancellation',
395
417
  event_navigation_browsing_method: EventTrigger.Click,
396
418
  page_name: 'offer page',
397
419
  optimizely_feature_data: "cancellation_exp|".concat(variant),
398
420
  contract_state: contractPhase,
399
421
  },
422
+ label: 'or',
423
+ baseUrl: '/account',
424
+ button: {
425
+ text: 'Proceed with cancellation',
426
+ href: '[baseURL]/cancel?step=cancel',
427
+ },
428
+ },
429
+ },
430
+ confirmCancel: {
431
+ tealiumContext: getPageTrackingEvent('cancellation page', variant, contractPhase, inEmbeddedMode),
432
+ showBackButton: false,
433
+ contentContainerOverrides: {
434
+ marginInline: 'auto',
435
+ paddingBlockStart: 'space000',
436
+ paddingInline: 'space000',
437
+ width: __assign(__assign(__assign({}, DEFAULT_CONTENT_CONTAINER_WIDTH), { xs: '100%', sm: '100%' }), (isVariantTwo
438
+ ? { xs: '100%', sm: '100%', md: '440px', lg: '440px' }
439
+ : {})),
440
+ },
441
+ image: {
442
+ src: '/assets/cancellation/thank-you.png',
443
+ alt: 'Cancellation confirmed',
444
+ width: 220,
445
+ height: 320,
446
+ },
447
+ introduction: __assign({ title: 'Subscription cancelled', description: 'Your subscription will expire on ##DATE##.', center: true }, (isVariantTwo ? varTwoIntroduction : {})),
448
+ subscriptionDetails: {
400
449
  containerOverrides: {
401
- overrides: { marginBlockEnd: 'space050', marginInline: '-8px' },
450
+ width: '100%',
451
+ marginBlockEnd: 'space100',
452
+ },
453
+ subscriptionType: {
454
+ label: 'Subscription type',
455
+ overrides: {
456
+ paddingBlock: 'space050',
457
+ paddingInlineStart: 'space040',
458
+ typographyPreset: 'utilityHeading010',
459
+ },
460
+ },
461
+ endDate: {
462
+ label: 'Subscription end date',
463
+ overrides: {
464
+ paddingBlock: 'space050',
465
+ paddingInlineStart: 'space040',
466
+ typographyPreset: 'utilityHeading010',
467
+ },
402
468
  },
403
469
  },
404
- ],
405
- continueButton: {
406
- eventContext: {
470
+ buttonText: isVariantTwo
471
+ ? 'Go back to My Account'
472
+ : 'Return to Homepage',
473
+ buttonUrl: '/account',
474
+ buttonEventContext: {
407
475
  event_navigation_action: 'navigation',
408
- event_navigation_name: 'online cancellation - proceed with cancellation',
476
+ event_navigation_name: 'online cancellation - return to homepage',
409
477
  event_navigation_browsing_method: EventTrigger.Click,
410
- page_name: 'offer page',
478
+ page_name: 'cancellation page',
411
479
  optimizely_feature_data: "cancellation_exp|".concat(variant),
412
480
  contract_state: contractPhase,
413
481
  },
414
- label: 'or',
415
- baseUrl: '/account',
416
- button: {
417
- text: 'Proceed with cancellation',
418
- href: '[baseURL]/cancel?step=cancel',
419
- },
420
- },
421
- },
422
- confirmCancel: {
423
- tealiumContext: getPageTrackingEvent('cancellation page', variant, contractPhase, inEmbeddedMode),
424
- showBackButton: false,
425
- contentContainerOverrides: {
426
- marginInline: 'auto',
427
- paddingBlockStart: 'space000',
428
- paddingInline: 'space000',
429
- width: __assign(__assign({}, DEFAULT_CONTENT_CONTAINER_WIDTH), { xs: '100%', sm: '100%' }),
430
- },
431
- image: {
432
- src: '/assets/cancellation/thank-you.png',
433
- alt: 'Cancellation confirmed',
434
- width: 220,
435
- height: 320,
436
- },
437
- introduction: {
438
- title: 'Subscription cancelled',
439
- description: 'Your subscription will expire on ##DATE##.',
440
- center: true,
441
- },
442
- buttonText: 'Return to Homepage',
443
- buttonUrl: '/account',
444
- buttonEventContext: {
445
- event_navigation_action: 'navigation',
446
- event_navigation_name: 'online cancellation - return to homepage',
447
- event_navigation_browsing_method: EventTrigger.Click,
448
- page_name: 'cancellation page',
449
- optimizely_feature_data: "cancellation_exp|".concat(variant),
450
- contract_state: contractPhase,
451
482
  },
452
- },
453
- preCancellation: {
454
- tealiumContext: getPageTrackingEvent('pre-confirmation page', variant, contractPhase, inEmbeddedMode),
455
- contentContainerOverrides: {
456
- marginInline: 'auto',
457
- paddingBlockStart: 'space000',
458
- paddingInline: 'space000',
459
- width: __assign(__assign({}, DEFAULT_CONTENT_CONTAINER_WIDTH), { xs: '100%', sm: '100%' }),
460
- },
461
- header: {
462
- title: 'Confirm your cancellation',
463
- description: '##TIME_REMAINING## ##TIME_PERIOD## remaining',
464
- fullWidthTitle: true,
465
- titleOverrides: {
466
- textAlign: { xs: 'left', md: 'center' },
467
- marginBlockEnd: { xs: 'space050', md: 'space080' },
468
- typographyPreset: {
469
- xs: 'editorialHeadline040',
470
- md: 'editorialSubheadline050',
483
+ preCancellation: {
484
+ tealiumContext: getPageTrackingEvent('pre-confirmation page', variant, contractPhase, inEmbeddedMode),
485
+ contentContainerOverrides: {
486
+ marginInline: 'auto',
487
+ paddingBlockStart: 'space000',
488
+ paddingInline: 'space000',
489
+ width: __assign(__assign({}, DEFAULT_CONTENT_CONTAINER_WIDTH), { xs: '100%', sm: '100%' }),
490
+ },
491
+ header: {
492
+ title: 'Confirm your cancellation',
493
+ description: '##TIME_REMAINING## ##TIME_PERIOD## remaining',
494
+ fullWidthTitle: true,
495
+ titleOverrides: {
496
+ textAlign: { xs: 'left', md: 'center' },
497
+ marginBlockEnd: { xs: 'space050', md: 'space080' },
498
+ typographyPreset: {
499
+ xs: 'editorialHeadline040',
500
+ md: 'editorialSubheadline050',
501
+ },
502
+ },
503
+ descriptionOverrides: {
504
+ textAlign: { xs: 'left', md: 'center' },
505
+ marginBlockEnd: { xs: 'space070', md: 'space090' },
506
+ typographyPreset: 'editorialLightDisplay004',
471
507
  },
472
508
  },
473
- descriptionOverrides: {
474
- textAlign: { xs: 'left', md: 'center' },
475
- marginBlockEnd: { xs: 'space070', md: 'space090' },
476
- typographyPreset: 'editorialLightDisplay004',
509
+ subscriptionName: '##SUBSCRIPTION_NAME## subscription',
510
+ subscriptionEnd: {
511
+ messages: {
512
+ daysRemaining: 'Your subscription will end on ##DATE##. ',
513
+ monthsRemaining: 'Your subscription will end in 1 month. ',
514
+ },
515
+ description: (React.createElement(React.Fragment, null,
516
+ "After this date, your access to The Times and Sunday Times will stop. If you change your mind before then, just contact our",
517
+ ' ',
518
+ React.createElement(LinkInline, { external: false, overrides: {
519
+ typographyPreset: 'utilityBody020',
520
+ stylePreset: 'inkSubtle',
521
+ }, href: "https://www.thetimes.com/help/articles/how-do-i-contact-customer-services", target: "_blank" }, "customer service team"),
522
+ ' ',
523
+ "- we\u2019ll be happy to help you keep your access.")),
524
+ },
525
+ continueButton: {
526
+ eventContext: {
527
+ event_navigation_action: 'navigation',
528
+ event_navigation_name: 'online cancellation - confirm cancellation',
529
+ event_navigation_browsing_method: EventTrigger.Click,
530
+ page_name: 'pre-confirmation page',
531
+ optimizely_feature_data: "cancellation_exp|".concat(variant),
532
+ contract_state: contractPhase,
533
+ },
534
+ label: '',
535
+ button: {
536
+ text: 'Confirm cancellation',
537
+ },
477
538
  },
478
- },
479
- subscriptionName: '##SUBSCRIPTION_NAME## subscription',
480
- subscriptionEnd: {
481
- messages: {
482
- daysRemaining: 'Your subscription will end on ##DATE##. ',
483
- monthsRemaining: 'Your subscription will end in 1 month. ',
539
+ defaultCancellationReason: 'no reason',
540
+ genericErrorMessage: {
541
+ error: "Sorry, we're having trouble processing your cancellation request right now. Please try again later, or contact support.",
484
542
  },
485
- description: (React.createElement(React.Fragment, null,
486
- "After this date, your access to The Times and Sunday Times will stop. If you change your mind before then, just contact our",
487
- ' ',
488
- React.createElement(LinkInline, { external: false, overrides: {
489
- typographyPreset: 'utilityBody020',
490
- stylePreset: 'inkSubtle',
491
- }, href: "https://www.thetimes.com/help/articles/how-do-i-contact-customer-services", target: "_blank" }, "customer service team"),
492
- ' ',
493
- "- we\u2019ll be happy to help you keep your access.")),
494
543
  },
495
- continueButton: {
496
- eventContext: {
497
- event_navigation_action: 'navigation',
498
- event_navigation_name: 'online cancellation - confirm cancellation',
499
- event_navigation_browsing_method: EventTrigger.Click,
500
- page_name: 'pre-confirmation page',
501
- optimizely_feature_data: "cancellation_exp|".concat(variant),
502
- contract_state: contractPhase,
503
- },
504
- label: '',
505
- button: {
506
- text: 'Confirm cancellation',
544
+ offers: {
545
+ tealiumContext: getPageTrackingEvent('offer page', variant, contractPhase, inEmbeddedMode),
546
+ contentContainerOverrides: {
547
+ marginInline: 'auto',
548
+ paddingBlockStart: 'space000',
549
+ paddingInline: 'space000',
550
+ width: __assign(__assign({}, DEFAULT_CONTENT_CONTAINER_WIDTH), { xs: '100%', sm: '100%' }),
551
+ },
552
+ header: {
553
+ title: "Don't cancel yet - here's a special offer",
554
+ description: "We'd like you to stay. Choose an option below to keep access to The Times and The Sunday Times.",
555
+ showDivider: true,
556
+ marginBlockEnd: { xs: 'space050', md: 'space080' },
557
+ titleOverrides: {
558
+ marginBlockEnd: 'space060',
559
+ },
560
+ descriptionOverrides: {
561
+ marginBlockEnd: 'space060',
562
+ },
507
563
  },
508
- },
509
- defaultCancellationReason: 'no reason',
510
- genericErrorMessage: {
511
- error: "Sorry, we're having trouble processing your cancellation request right now. Please try again later, or contact support.",
512
- },
513
- },
514
- offers: {
515
- tealiumContext: getPageTrackingEvent('offer page', variant, contractPhase, inEmbeddedMode),
516
- contentContainerOverrides: {
517
- marginInline: 'auto',
518
- paddingBlockStart: 'space000',
519
- paddingInline: 'space000',
520
- width: __assign(__assign({}, DEFAULT_CONTENT_CONTAINER_WIDTH), { xs: '100%', sm: '100%' }),
521
- },
522
- header: {
523
- title: "Don't cancel yet - here's a special offer",
524
- description: "We'd like you to stay. Choose an option below to keep access to The Times and The Sunday Times.",
525
- showDivider: true,
526
- marginBlockEnd: { xs: 'space050', md: 'space080' },
527
- titleOverrides: {
528
- marginBlockEnd: 'space060',
564
+ offersSection: {
565
+ title: 'Limited time deal',
566
+ titleOverrides: {
567
+ typographyPreset: 'editorialHeadline050',
568
+ marginBlockEnd: 'space060',
569
+ },
570
+ items: [
571
+ {
572
+ id: 'DINCV-0039',
573
+ title: 'Save 75% for 6 months',
574
+ description: 'Stay subscribed for just £10/month for the next 6 months. After that, your price returns to £30/month. Cancel anytime.',
575
+ discountedPrice: '£10/month for 6 months',
576
+ regularPrice: '£30/month after',
577
+ nextStep: 'discountPreview',
578
+ },
579
+ {
580
+ id: 'cancel',
581
+ title: 'Cancel subscription',
582
+ description: 'If you still want to leave, you’ll be taken to the final confirmation step.',
583
+ nextStep: 'reviewCancellation',
584
+ overrides: {
585
+ container: {
586
+ borderColor: 'interfaceInformative010',
587
+ backgroundColor: 'interfaceBackground',
588
+ },
589
+ title: {
590
+ marginBlockStart: 'space030',
591
+ typographyPreset: 'utilityHeading010',
592
+ },
593
+ },
594
+ },
595
+ ],
596
+ },
597
+ benefits: {
598
+ showBenefits: true,
599
+ title: 'Subscriber benefits',
600
+ titleOverrides: {
601
+ typographyPreset: 'editorialHeadline030',
602
+ stylePreset: 'inkContrast',
603
+ marginBlockEnd: 'space050',
604
+ },
605
+ items: [
606
+ {
607
+ code: 'FP-032',
608
+ title: 'Unlimited digital access',
609
+ description: 'Read without limits on your phone, tablet or on the web',
610
+ link: {
611
+ href: 'https://www.thetimes.com/',
612
+ text: "Read today's stories",
613
+ },
614
+ },
615
+ {
616
+ code: 'share',
617
+ title: 'Share articles',
618
+ description: 'Forward articles to friends and family for free',
619
+ },
620
+ ],
529
621
  },
530
- descriptionOverrides: {
531
- marginBlockEnd: 'space060',
622
+ continueButton: {
623
+ // TO DO: update with AIT spec
624
+ eventContext: {
625
+ event_navigation_action: 'navigation',
626
+ event_navigation_name: 'online cancellation - proceed with offer selection',
627
+ event_navigation_browsing_method: EventTrigger.Click,
628
+ page_name: 'offers page',
629
+ },
630
+ label: '',
631
+ button: {
632
+ text: 'Continue',
633
+ },
532
634
  },
533
635
  },
534
- offersSection: {
535
- title: 'Limited time deal',
536
- titleOverrides: {
537
- typographyPreset: 'editorialHeadline050',
538
- marginBlockEnd: 'space060',
636
+ reviewCancellation: {
637
+ tealiumContext: getPageTrackingEvent('review cancellation', variant, contractPhase, inEmbeddedMode),
638
+ contentContainerOverrides: {
639
+ marginInline: 'auto',
640
+ paddingBlockStart: 'space000',
641
+ paddingInline: 'space000',
642
+ width: __assign(__assign({}, DEFAULT_CONTENT_CONTAINER_WIDTH), { xs: '100%', sm: '100%' }),
643
+ },
644
+ header: {
645
+ title: 'Confirm your cancellation',
646
+ fullWidthTitle: true,
647
+ titleOverrides: {
648
+ marginBlockEnd: { xs: 'space050', md: 'space060' },
649
+ typographyPreset: {
650
+ xs: 'editorialHeadline040',
651
+ md: 'editorialHeadline050',
652
+ },
653
+ },
539
654
  },
540
- items: [
655
+ details: [
541
656
  {
542
- id: 'DINCV-0039',
543
- title: 'Save 75% for 6 months',
544
- description: 'Stay subscribed for just £10/month for the next 6 months. After that, your price returns to £30/month. Cancel anytime.',
545
- discountedPrice: '£10/month for 6 months',
546
- regularPrice: '£30/month after',
547
- nextStep: 'discountPreview',
657
+ label: 'Type',
658
+ ariaLabel: 'Type',
659
+ default: '[Digital]',
660
+ valueDescription: (React.createElement(React.Fragment, null,
661
+ "Cancelling now means your subscription will end at the close of your current billing period. After this, your access will stop.",
662
+ React.createElement("br", null),
663
+ React.createElement("br", null),
664
+ "If you change your mind before then, our Customer Care team can help you keep your access.")),
665
+ type: 'subscription',
548
666
  },
549
667
  {
550
- id: 'cancel',
551
- title: 'Cancel subscription',
552
- description: 'If you still want to leave, you’ll be taken to the final confirmation step.',
553
- nextStep: 'preCancellation',
554
- overrides: {
555
- container: {
556
- borderColor: 'interfaceInformative010',
557
- backgroundColor: 'interfaceBackground',
558
- },
559
- title: {
560
- marginBlockStart: 'space030',
561
- typographyPreset: 'utilityHeading010',
562
- },
563
- },
668
+ label: 'Subscription end date',
669
+ ariaLabel: 'Subscription end date',
670
+ default: '[Date]',
671
+ valueDescription: 'This will be your last day with full access to your subscription if you cancel today.',
672
+ type: 'subDate',
564
673
  },
565
674
  ],
566
- },
567
- benefits: {
568
- showBenefits: true,
569
- title: 'Subscriber benefits',
570
- titleOverrides: {
571
- typographyPreset: 'editorialHeadline030',
572
- stylePreset: 'inkContrast',
573
- marginBlockEnd: 'space050',
574
- },
575
- },
576
- continueButton: {
577
- // TO DO: update with AIT spec
578
- eventContext: {
579
- event_navigation_action: 'navigation',
580
- event_navigation_name: 'online cancellation - proceed with offer selection',
581
- event_navigation_browsing_method: EventTrigger.Click,
582
- page_name: 'offers page',
675
+ cancellationButtons: {
676
+ marginBlockStart: { xs: 'space030', md: 'space060' },
677
+ primaryButton: {
678
+ text: 'Confirm cancellation',
679
+ },
583
680
  },
584
- label: '',
585
- button: {
586
- text: 'Continue',
681
+ genericErrorMessage: {
682
+ error: "Sorry, we're having trouble processing your cancellation request right now. Please try again later, or contact support.",
587
683
  },
684
+ defaultCancellationReason: 'no reason',
588
685
  },
589
686
  },
590
- },
591
- componentSequence: {
592
- Digital: ['reason', 'downgrade', 'preCancellation', 'confirmCancel'],
593
- },
594
- navigationPrimary: navigationPrimary,
595
- footer: footer,
596
- sideNav: sideNav,
597
- sideNavSelected: 'subscription-and-billing',
598
- previousSubscription: {
599
- disableBanner: true,
600
- },
601
- }); };
687
+ componentSequence: {
688
+ Digital: ['reason', 'downgrade', 'reviewCancellation', 'confirmCancel'],
689
+ },
690
+ navigationPrimary: navigationPrimary,
691
+ footer: footer,
692
+ sideNav: sideNav,
693
+ sideNavSelected: 'subscription-and-billing',
694
+ previousSubscription: {
695
+ disableBanner: true,
696
+ },
697
+ };
698
+ };
602
699
  //# sourceMappingURL=CancellationStepperContext.js.map