client/components/mma/cancel/supporterplus/SupporterplusCancellationReasons.tsx (75 lines of code) (raw):
import {
financialCircumstances,
standardAlternateFeedbackIntro,
} from '../cancellationConstants';
import type { CancellationReason } from '../cancellationReason';
export const supporterplusCancellationReasons: CancellationReason[] = [
{
reasonId: 'mma_editorial',
linkLabel: 'I am unhappy with some editorial decisions',
alternateFeedbackIntro: standardAlternateFeedbackIntro,
},
{
reasonId: 'mma_financial_circumstances',
linkLabel: 'I can no longer afford to support you',
saveBody: financialCircumstances,
alternateFeedbackIntro: standardAlternateFeedbackIntro,
},
{
reasonId: 'mma_price_increase',
linkLabel: 'The price has recently increased',
saveBody: financialCircumstances,
alternateFeedbackIntro: standardAlternateFeedbackIntro,
},
{
reasonId: 'mma_support_another_way',
linkLabel: 'I’d like to support you, but at a lower amount',
saveBody: financialCircumstances,
alternateFeedbackIntro: standardAlternateFeedbackIntro,
},
{
reasonId: 'mma_values',
linkLabel: 'I don’t feel that the Guardian values my support',
alternateFeedbackIntro: standardAlternateFeedbackIntro,
},
{
reasonId: 'mma_benefits',
linkLabel:
'I’m not fully satisfied with the product features or benefits',
alternateFeedbackIntro: standardAlternateFeedbackIntro,
},
{
reasonId: 'mma_break_from_news',
linkLabel: 'I’m taking a break from news',
alternateFeedbackIntro: standardAlternateFeedbackIntro,
},
{
reasonId: 'mma_dont_read_enough',
linkLabel: 'I don’t have enough time to read regularly',
alternateFeedbackIntro: standardAlternateFeedbackIntro,
},
{
reasonId: 'mma_issue',
linkLabel: 'I’m having technical issues',
alternateFeedbackIntro: standardAlternateFeedbackIntro,
},
{
reasonId: 'mma_health',
linkLabel: 'I’m dealing with personal or health matters',
alternateFeedbackIntro: standardAlternateFeedbackIntro,
},
];
export const otherCancellationReason: CancellationReason[] = [
{
reasonId: 'mma_other',
linkLabel: 'Another reason (please specify)',
alternateFeedbackIntro: standardAlternateFeedbackIntro,
},
];
const shuffledArray = [...supporterplusCancellationReasons].sort(
() => 0.5 - Math.random(),
);
export const shuffledSupporterPlusCancellationReasons: CancellationReason[] = [
...shuffledArray,
...otherCancellationReason,
];