1
- import {
2
- financialCircumstances ,
3
- standardAlternateFeedbackIntro ,
4
- } from '../cancellationConstants' ;
1
+ import { shuffleArray } from '@/client/utilities/utils' ;
2
+ import { standardAlternateFeedbackIntro } from '../cancellationConstants' ;
5
3
import type { CancellationReason } from '../cancellationReason' ;
6
4
import { ContributionsCancellationAmountUpdatedSaved } from './ContributionsCancellationAmountUpdatedSaved' ;
7
5
import { ContributionsCancellationFlowFinancialSaveAttempt } from './ContributionsCancellationFlowFinancialSaveAttempt' ;
@@ -12,11 +10,6 @@ export const contributionsCancellationReasons: CancellationReason[] = [
12
10
linkLabel : 'I am unhappy with some editorial decisions' ,
13
11
alternateFeedbackIntro : standardAlternateFeedbackIntro ,
14
12
} ,
15
- {
16
- reasonId : 'mma_article' ,
17
- linkLabel : 'As the result of a specific article I read' ,
18
- alternateFeedbackIntro : standardAlternateFeedbackIntro ,
19
- } ,
20
13
{
21
14
reasonId : 'mma_financial_circumstances' ,
22
15
linkLabel : 'I can no longer afford to support you' ,
@@ -28,19 +21,8 @@ export const contributionsCancellationReasons: CancellationReason[] = [
28
21
hideContactUs : true ,
29
22
} ,
30
23
{
31
- reasonId : 'mma_cost_of_living' ,
32
- linkLabel : 'Due to the cost of living crisis' ,
33
- saveBody : ContributionsCancellationFlowFinancialSaveAttempt ,
34
- savedBody : ContributionsCancellationAmountUpdatedSaved ,
35
- alternateFeedbackIntro : standardAlternateFeedbackIntro ,
36
- hideSaveActions : true ,
37
- skipFeedback : true ,
38
- hideContactUs : true ,
39
- } ,
40
- {
41
- reasonId : 'mma_cutting_subscriptions' ,
42
- linkLabel :
43
- 'I’m cutting down on my subscriptions with various organisations' ,
24
+ reasonId : 'mma_price_increase' ,
25
+ linkLabel : 'The price has recently increased' ,
44
26
saveBody : ContributionsCancellationFlowFinancialSaveAttempt ,
45
27
savedBody : ContributionsCancellationAmountUpdatedSaved ,
46
28
alternateFeedbackIntro : standardAlternateFeedbackIntro ,
@@ -51,62 +33,43 @@ export const contributionsCancellationReasons: CancellationReason[] = [
51
33
{
52
34
reasonId : 'mma_benefits' ,
53
35
linkLabel :
54
- 'I’d like to get something ‘in return’ for my support, e.g. digital features ' ,
36
+ 'I’m not fully satisfied with the product features or benefits ' ,
55
37
alternateFeedbackIntro : standardAlternateFeedbackIntro ,
56
38
saveBody : [
57
39
'Thank you for your ongoing support. Once you’ve completed your cancellation below, you can set up a new product via our online checkouts.' ,
58
40
] ,
59
41
} ,
60
42
{
61
- reasonId : 'mma_prefer_lower_amount ' ,
62
- linkLabel : 'I’d like to support you, but at a lower amount ' ,
43
+ reasonId : 'mma_support_another_way ' ,
44
+ linkLabel : 'I want to support in a different way ' ,
63
45
saveBody : ContributionsCancellationFlowFinancialSaveAttempt ,
64
46
savedBody : ContributionsCancellationAmountUpdatedSaved ,
65
47
alternateFeedbackIntro : standardAlternateFeedbackIntro ,
66
48
hideSaveActions : true ,
67
- skipFeedback : true ,
68
- hideContactUs : true ,
69
- } ,
70
- {
71
- reasonId : 'mma_prefer_less_frequent' ,
72
- linkLabel : 'I’d like to support you, but less frequently' ,
73
- saveBody : ContributionsCancellationFlowFinancialSaveAttempt ,
74
- savedBody : ContributionsCancellationAmountUpdatedSaved ,
75
- alternateFeedbackIntro : standardAlternateFeedbackIntro ,
76
- hideSaveActions : true ,
77
- skipFeedback : true ,
78
- hideContactUs : true ,
79
- } ,
80
- {
81
- reasonId : 'mma_one_off' ,
82
- linkLabel :
83
- 'I’d rather give spontaneously than have a recurring payment' ,
84
- saveBody : financialCircumstances ,
85
- alternateFeedbackIntro : standardAlternateFeedbackIntro ,
86
49
} ,
87
50
{
88
51
reasonId : 'mma_values' ,
89
52
linkLabel : 'I don’t feel that the Guardian values my support' ,
90
53
alternateFeedbackIntro : standardAlternateFeedbackIntro ,
91
54
} ,
92
55
{
93
- reasonId : 'mma_no_need ' ,
94
- linkLabel : 'I don’t think the Guardian needs my support ' ,
56
+ reasonId : 'mma_break_from_news ' ,
57
+ linkLabel : 'I’m taking a break from news ' ,
95
58
alternateFeedbackIntro : standardAlternateFeedbackIntro ,
96
59
} ,
97
60
{
98
- reasonId : 'mma_dont_know_what_for ' ,
99
- linkLabel : 'I don’t know what my money is being used for ' ,
61
+ reasonId : 'mma_dont_read_enough ' ,
62
+ linkLabel : 'I don’t have enough time to read regularly ' ,
100
63
alternateFeedbackIntro : standardAlternateFeedbackIntro ,
101
64
} ,
102
65
{
103
- reasonId : 'mma_break_from_news ' ,
104
- linkLabel : 'I am taking a break from news ' ,
66
+ reasonId : 'mma_issue ' ,
67
+ linkLabel : 'I’m having technical issues ' ,
105
68
alternateFeedbackIntro : standardAlternateFeedbackIntro ,
106
69
} ,
107
70
{
108
- reasonId : 'mma_dont_read_enough ' ,
109
- linkLabel : 'I no longer read the Guardian enough to justify my support ' ,
71
+ reasonId : 'mma_health ' ,
72
+ linkLabel : 'I’m dealing with personal or health matters ' ,
110
73
alternateFeedbackIntro : standardAlternateFeedbackIntro ,
111
74
} ,
112
75
] ;
@@ -119,11 +82,7 @@ export const otherCancellationReason: CancellationReason[] = [
119
82
} ,
120
83
] ;
121
84
122
- const shuffledArray = [ ...contributionsCancellationReasons ] . sort (
123
- ( ) => 0.5 - Math . random ( ) ,
124
- ) ;
125
-
126
85
export const shuffledContributionsCancellationReasons : CancellationReason [ ] = [
127
- ...shuffledArray ,
86
+ ...( shuffleArray ( contributionsCancellationReasons ) as CancellationReason [ ] ) ,
128
87
...otherCancellationReason ,
129
88
] ;
0 commit comments