UNPKG

@automattic/calypso-products

Version:

This module contains information about the various products sold within calypso, such as product slugs, plan intervals, etc.

2,867 lines 147 kB
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.PLANS_LIST = void 0;
const tslib_1 = require("tslib");
const jsx_runtime_1 = require("react/jsx-runtime");
const calypso_config_1 = require("@automattic/calypso-config");
const number_formatters_1 = require("@automattic/number-formatters");
const i18n_calypso_1 = tslib_1.__importStar(require("i18n-calypso"));
const constants_1 = require("./constants");
const is_big_sky_onboarding_1 = require("./is-big-sky-onboarding");
const is_global_styles_on_personal_enabled_1 = require("./is-global-styles-on-personal-enabled");
const plans_1 = require("./plans");
function isValueTruthy(value) {
    return !!value;
}
function compact(elements) {
    return elements.filter(isValueTruthy);
}
const WPComGetBillingTimeframe = () => i18n_calypso_1.default.translate('per month, billed annually');
const WPComGetBiennialBillingTimeframe = () => i18n_calypso_1.default.translate('/month, billed every two years');
const WPComGetTriennialBillingTimeframe = () => i18n_calypso_1.default.translate('/month, billed every three years');
const getBiAnnualTimeframe = () => ({
    term: constants_1.TERM_BIENNIALLY,
    getBillingTimeFrame: () => (0, i18n_calypso_1.translate)('per 2 years'),
});
const getAnnualTimeframe = () => ({
    term: constants_1.TERM_ANNUALLY,
    getBillingTimeFrame: () => (0, i18n_calypso_1.translate)('per year'),
});
const getMonthlyTimeframe = () => ({
    term: constants_1.TERM_MONTHLY,
    getBillingTimeFrame: () => (0, i18n_calypso_1.translate)('per month, billed monthly'),
});
const getJetpackCommonPlanDetails = () => ({
    getRecommendedFor: () => [
        { tag: constants_1.JETPACK_TAG_FOR_WOOCOMMERCE_STORES, label: (0, i18n_calypso_1.translate)('WooCommerce stores') },
        { tag: constants_1.JETPACK_TAG_FOR_NEWS_ORGANISATIONS, label: (0, i18n_calypso_1.translate)('News organizations') },
        { tag: constants_1.JETPACK_TAG_FOR_MEMBERSHIP_SITES, label: (0, i18n_calypso_1.translate)('Membership sites') },
    ],
});
const getDotcomPlanDetails = () => ({
    // Features only available for annual plans
    getAnnualPlansOnlyFeatures: () => [
        constants_1.FEATURE_FREE_DOMAIN,
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
    ],
});
/* eslint-disable wpcalypso/jsx-classname-namespace */
const plansDescriptionHeadingComponent = {
    components: {
        strong: (0, jsx_runtime_1.jsx)("strong", { className: "plans__features plan-features__targeted-description-heading" }),
    },
};
/* eslint-enable */
const isStatsFeatureTranslated = () => {
    const isEnglishLocale = i18n_calypso_1.default.getLocaleSlug()?.startsWith('en');
    const hasStatsTranslation = i18n_calypso_1.default.hasTranslation('Full history, filters & peak times') ||
        i18n_calypso_1.default.hasTranslation('Last 7 days of basic stats') ||
        i18n_calypso_1.default.hasTranslation('Advanced insights, including UTM & device analytics');
    return isEnglishLocale || hasStatsTranslation;
};
const getPlanFreeDetails = () => ({
    ...getDotcomPlanDetails(),
    group: constants_1.GROUP_WPCOM,
    type: constants_1.TYPE_FREE,
    getTitle: () => i18n_calypso_1.default.translate('Free'),
    getAudience: () => i18n_calypso_1.default.translate('Best for students'),
    getBlogAudience: () => i18n_calypso_1.default.translate('Best for students'),
    getPortfolioAudience: () => i18n_calypso_1.default.translate('Best for students'),
    getStoreAudience: () => i18n_calypso_1.default.translate('Best for students'),
    getPlanTagline: () => i18n_calypso_1.default.translate('Get started with all the basics.'),
    getNewsletterTagLine: () => i18n_calypso_1.default.translate('Start fresh or make the switch, bringing your first 100 readers with you.'),
    getBlogOnboardingTagLine: () => i18n_calypso_1.default.translate('Not a trial – blog free for as long as you like.'),
    getDescription: () => i18n_calypso_1.default.translate('Get a free website and be on your way to publishing your ' +
        'first post in less than five minutes.'),
    getPlanCompareFeatures: () => [
        // pay attention to ordering, shared features should align on /plan page
        constants_1.FEATURE_WP_SUBDOMAIN,
        constants_1.FEATURE_JETPACK_ESSENTIAL,
        constants_1.FEATURE_COMMUNITY_SUPPORT,
        constants_1.FEATURE_FREE_THEMES,
        constants_1.FEATURE_3GB_STORAGE,
    ],
    getSignupFeatures: () => [
        constants_1.FEATURE_COMMUNITY_SUPPORT,
        constants_1.FEATURE_WP_SUBDOMAIN_SIGNUP,
        constants_1.FEATURE_FREE_THEMES_SIGNUP,
    ],
    getBlogSignupFeatures: () => [
        constants_1.FEATURE_COMMUNITY_SUPPORT,
        constants_1.FEATURE_WP_SUBDOMAIN_SIGNUP,
        constants_1.FEATURE_FREE_THEMES_SIGNUP,
    ],
    getPortfolioSignupFeatures: () => [
        constants_1.FEATURE_COMMUNITY_SUPPORT,
        constants_1.FEATURE_WP_SUBDOMAIN_SIGNUP,
        constants_1.FEATURE_FREE_THEMES_SIGNUP,
    ],
    get2023PricingGridSignupWpcomFeatures: () => {
        return [constants_1.FEATURE_UNLIMITED_ENTITIES];
    },
    get2023PlanComparisonFeatureOverride: () => {
        return [
            constants_1.FEATURE_AI_ASSISTANT,
            constants_1.FEATURE_BEAUTIFUL_THEMES,
            constants_1.FEATURE_PAGES,
            constants_1.FEATURE_USERS,
            constants_1.FEATURE_POST_EDITS_HISTORY,
            constants_1.FEATURE_NEWSLETTERS_RSS,
            constants_1.FEATURE_SECURITY_BRUTE_FORCE,
            constants_1.FEATURE_SMART_REDIRECTS,
            constants_1.FEATURE_ALWAYS_ONLINE,
            constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_10,
            constants_1.FEATURE_GLOBAL_EDGE_CACHING,
            constants_1.FEATURE_BURST,
            constants_1.FEATURE_WAF_V2,
            constants_1.FEATURE_CPUS,
            constants_1.FEATURE_CDN,
            constants_1.FEATURE_ES_SEARCH_JP,
            constants_1.FEATURE_MULTI_SITE,
            constants_1.FEATURE_WP_UPDATES,
            constants_1.FEATURE_SECURITY_DDOS,
            constants_1.FEATURE_SECURITY_MALWARE,
            constants_1.FEATURE_DATACENTRE_FAILOVER,
            constants_1.FEATURE_BANDWIDTH,
            constants_1.FEATURE_FAST_DNS,
        ];
    },
    get2023PricingGridSignupJetpackFeatures: () => {
        return [];
    },
    get2023PlanComparisonJetpackFeatureOverride: () => {
        return [
            constants_1.FEATURE_PAID_SUBSCRIBERS_JP,
            constants_1.FEATURE_DONATIONS_AND_TIPS_JP,
            constants_1.FEATURE_PREMIUM_CONTENT_JP,
            constants_1.FEATURE_PAYMENT_BUTTONS_JP,
            constants_1.FEATURE_STATS_JP,
            constants_1.FEATURE_SPAM_JP,
            constants_1.FEATURE_CONTACT_FORM_JP,
            constants_1.FEATURE_SITE_ACTIVITY_LOG_JP,
            constants_1.FEATURE_UNLTD_SOCIAL_MEDIA_JP,
            constants_1.FEATURE_ES_SEARCH_JP,
        ];
    },
    getStorageFeature: () => constants_1.FEATURE_1GB_STORAGE,
    getPlanComparisonFeatureLabels: () => {
        const baseFeatures = {
            [constants_1.FEATURE_SHARES_SOCIAL_MEDIA_JP]: i18n_calypso_1.default.translate('%d shares per month', { args: [30] }),
            [constants_1.FEATURE_COMMISSION_FEE_STANDARD_FEATURES]: (0, number_formatters_1.formatNumber)(0.1, {
                numberFormatOptions: { style: 'percent' },
            }),
            [constants_1.FEATURE_AI_ASSISTANT]: i18n_calypso_1.default.translate('Limited to 20 requests'),
        };
        return isStatsFeatureTranslated()
            ? { ...baseFeatures, [constants_1.FEATURE_STATS_JP]: i18n_calypso_1.default.translate('Last 7 days of basic stats') }
            : baseFeatures;
    },
    getNewsletterSignupFeatures: () => [
        constants_1.FEATURE_NEWSLETTER_IMPORT_SUBSCRIBERS_FREE,
        constants_1.FEATURE_PREMIUM_CONTENT_JP,
        constants_1.FEATURE_NEWSLETTERS_RSS,
        constants_1.FEATURE_UNLIMITED_EMAILS,
        constants_1.FEATURE_STATS_JP,
        constants_1.FEATURE_BANDWIDTH,
        constants_1.FEATURE_LTD_SOCIAL_MEDIA_JP,
        constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_10,
    ],
    getBlogOnboardingSignupFeatures: () => [
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_BEAUTIFUL_THEMES,
        constants_1.FEATURE_PAGES,
        constants_1.FEATURE_USERS,
        constants_1.FEATURE_POST_EDITS_HISTORY,
        constants_1.FEATURE_SECURITY_BRUTE_FORCE,
        constants_1.FEATURE_ALWAYS_ONLINE,
        constants_1.FEATURE_THE_READER,
    ],
    getBlogOnboardingSignupJetpackFeatures: () => [
        constants_1.FEATURE_NEWSLETTER_IMPORT_SUBSCRIBERS_FREE,
        constants_1.FEATURE_UNLIMITED_EMAILS,
        constants_1.FEATURE_NEWSLETTERS_RSS,
        constants_1.FEATURE_STATS_JP,
        constants_1.FEATURE_LTD_SOCIAL_MEDIA_JP,
        constants_1.FEATURE_SPAM_JP,
    ],
    getIncludedFeatures: () => [],
    getInferiorFeatures: () => [],
});
const getPlanBloggerDetails = () => ({
    ...getDotcomPlanDetails(),
    group: constants_1.GROUP_WPCOM,
    type: constants_1.TYPE_BLOGGER,
    getTitle: () => i18n_calypso_1.default.translate('Blogger'),
    // @TODO not updating copy for now, we need to update it after the first round of design {{{
    getAudience: () => i18n_calypso_1.default.translate('Best for bloggers'),
    getBlogAudience: () => i18n_calypso_1.default.translate('Best for bloggers'),
    getPortfolioAudience: () => i18n_calypso_1.default.translate('Best for bloggers'),
    getStoreAudience: () => i18n_calypso_1.default.translate('Best for bloggers'),
    getDescription: () => i18n_calypso_1.default.translate('{{strong}}Best for bloggers:{{/strong}} Brand your blog with a custom .blog domain name, and remove all WordPress.com advertising. Receive additional storage space and customer support via email.', plansDescriptionHeadingComponent),
    getShortDescription: () => i18n_calypso_1.default.translate('Brand your blog with a custom .blog domain name, and remove all WordPress.com advertising. Receive additional storage space and customer support via email.'),
    // }}}
    getPlanCompareFeatures: () => [
        // pay attention to ordering, shared features should align on /plan page
        constants_1.FEATURE_BLOG_DOMAIN,
        constants_1.FEATURE_JETPACK_ESSENTIAL,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_FREE_THEMES,
        constants_1.FEATURE_6GB_STORAGE,
        constants_1.FEATURE_NO_ADS,
        constants_1.FEATURE_MEMBERSHIPS,
        constants_1.FEATURE_PREMIUM_CONTENT_BLOCK,
    ],
    getSignupFeatures: () => [
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_BLOG_DOMAIN,
        constants_1.FEATURE_ALL_FREE_FEATURES,
    ],
    getBlogSignupFeatures: () => [
        constants_1.FEATURE_FREE_BLOG_DOMAIN,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_ALL_FREE_FEATURES,
    ],
    getPortfolioSignupFeatures: () => [
        constants_1.FEATURE_FREE_BLOG_DOMAIN,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_ALL_FREE_FEATURES,
    ],
    // Features not displayed but used for checking plan abilities
    getIncludedFeatures: () => [constants_1.FEATURE_AUDIO_UPLOADS],
    getInferiorFeatures: () => [],
    getCancellationFeatures: () => [
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_AUDIO_UPLOADS,
        constants_1.FEATURE_NO_ADS,
        constants_1.FEATURE_MEMBERSHIPS,
    ],
});
const getPlanPersonalDetails = () => ({
    ...getDotcomPlanDetails(),
    group: constants_1.GROUP_WPCOM,
    type: constants_1.TYPE_PERSONAL,
    getTitle: plans_1.getPlanPersonalTitle,
    getAudience: () => i18n_calypso_1.default.translate('Best for personal use'),
    getBlogAudience: () => i18n_calypso_1.default.translate('Best for personal use'),
    getPortfolioAudience: () => i18n_calypso_1.default.translate('Best for personal use'),
    getStoreAudience: () => i18n_calypso_1.default.translate('Best for personal use'),
    getPlanTagline: () => i18n_calypso_1.default.translate('Make your mark with a custom domain.'),
    getNewsletterTagLine: () => i18n_calypso_1.default.translate('Monetize your writing, go ad-free, and expand your media content.'),
    getBlogOnboardingTagLine: () => i18n_calypso_1.default.translate('Take the next step with gated content, paid subscribers, and an ad-free site.'),
    getDescription: () => i18n_calypso_1.default.translate('{{strong}}Best for personal use:{{/strong}} Boost your' +
        ' website with a custom domain name, and remove all WordPress.com advertising. ' +
        'Unlock unlimited, expert customer support via email.', plansDescriptionHeadingComponent),
    getShortDescription: () => i18n_calypso_1.default.translate('Boost your website with a custom domain name, and remove all WordPress.com advertising. ' +
        'Unlock unlimited, expert customer support via email.'),
    getPlanCompareFeatures: () => compact([
        // pay attention to ordering, shared features should align on /plan page
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_HOSTING,
        constants_1.FEATURE_JETPACK_ESSENTIAL,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_FREE_THEMES,
        (0, is_global_styles_on_personal_enabled_1.isGlobalStylesOnPersonalEnabled)() ? constants_1.FEATURE_STYLE_CUSTOMIZATION : null,
        constants_1.FEATURE_6GB_STORAGE,
        constants_1.FEATURE_NO_ADS,
        constants_1.FEATURE_MEMBERSHIPS,
        constants_1.FEATURE_PREMIUM_CONTENT_BLOCK,
        constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_8,
    ].filter((feature) => feature !== null)),
    getSignupFeatures: () => {
        const baseFeatures = [
            constants_1.FEATURE_FREE_DOMAIN,
            constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
            constants_1.FEATURE_FREE_THEMES,
        ];
        return (0, is_global_styles_on_personal_enabled_1.isGlobalStylesOnPersonalEnabled)()
            ? [...baseFeatures, constants_1.FEATURE_STYLE_CUSTOMIZATION]
            : baseFeatures;
    },
    getBlogSignupFeatures: () => [
        constants_1.FEATURE_FREE_DOMAIN,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_ALL_FREE_FEATURES,
    ],
    getPortfolioSignupFeatures: () => [
        constants_1.FEATURE_FREE_DOMAIN,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_ALL_FREE_FEATURES,
    ],
    getSignupCompareAvailableFeatures: () => {
        const baseFeatures = [
            constants_1.FEATURE_CUSTOM_DOMAIN,
            constants_1.FEATURE_HOSTING,
            constants_1.FEATURE_NO_ADS,
            constants_1.FEATURE_COLLECT_PAYMENTS_V2,
            constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        ];
        return (0, is_global_styles_on_personal_enabled_1.isGlobalStylesOnPersonalEnabled)()
            ? [...baseFeatures, constants_1.FEATURE_STYLE_CUSTOMIZATION]
            : baseFeatures;
    },
    get2023PricingGridSignupWpcomFeatures: () => {
        const baseFeatures = [
            ...((0, is_big_sky_onboarding_1.isBigSkyOnboarding)() ? [constants_1.FEATURE_BIG_SKY_WEBSITE_BUILDER] : []),
            constants_1.FEATURE_UNLIMITED_ENTITIES,
            constants_1.FEATURE_CUSTOM_DOMAIN,
            constants_1.FEATURE_AD_FREE_EXPERIENCE,
            constants_1.WPCOM_FEATURES_PREMIUM_THEMES_LIMITED,
            constants_1.FEATURE_SUPPORT_FROM_EXPERTS,
            constants_1.FEATURE_STATS_BASIC_20250206,
        ];
        return (0, is_global_styles_on_personal_enabled_1.isGlobalStylesOnPersonalEnabled)()
            ? [...baseFeatures, constants_1.FEATURE_STYLE_CUSTOMIZATION]
            : baseFeatures;
    },
    get2023PricingGridSignupJetpackFeatures: () => {
        return [];
    },
    get2023PlanComparisonFeatureOverride: () => {
        const baseFeatures = [
            constants_1.FEATURE_CUSTOM_DOMAIN,
            constants_1.FEATURE_AD_FREE_EXPERIENCE,
            constants_1.FEATURE_FAST_DNS,
            constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_8,
            constants_1.FEATURE_PREMIUM_THEMES,
            constants_1.FEATURE_SUPPORT,
        ];
        return (0, is_global_styles_on_personal_enabled_1.isGlobalStylesOnPersonalEnabled)()
            ? [...baseFeatures, constants_1.FEATURE_STYLE_CUSTOMIZATION]
            : baseFeatures;
    },
    getStorageFeature: () => constants_1.FEATURE_6GB_STORAGE,
    getPlanComparisonFeatureLabels: () => {
        const baseFeatures = {
            [constants_1.FEATURE_PREMIUM_THEMES]: i18n_calypso_1.default.translate('Dozens of premium themes'),
            [constants_1.FEATURE_SHARES_SOCIAL_MEDIA_JP]: i18n_calypso_1.default.translate('%d shares per month', { args: [30] }),
            [constants_1.FEATURE_COMMISSION_FEE_STANDARD_FEATURES]: (0, number_formatters_1.formatNumber)(0.08, {
                numberFormatOptions: { style: 'percent' },
            }),
            [constants_1.FEATURE_SUPPORT]: i18n_calypso_1.default.translate('Support from our expert\u00A0team'),
        };
        return isStatsFeatureTranslated()
            ? {
                ...baseFeatures,
                [constants_1.FEATURE_STATS_JP]: i18n_calypso_1.default.translate('Full history, filters & peak times'),
            }
            : baseFeatures;
    },
    getNewsletterSignupFeatures: () => [
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_UNLIMITED_SUBSCRIBERS,
        constants_1.FEATURE_AD_FREE_EXPERIENCE,
        constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_8,
    ],
    getNewsletterHighlightedFeatures: () => [
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_UNLIMITED_EMAILS,
        constants_1.FEATURE_AD_FREE_EXPERIENCE,
    ],
    getBlogOnboardingSignupFeatures: () => [
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_AD_FREE_EXPERIENCE,
        constants_1.FEATURE_FAST_DNS,
        constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_8,
    ],
    getBlogOnboardingHighlightedFeatures: () => [constants_1.FEATURE_CUSTOM_DOMAIN],
    getBlogOnboardingSignupJetpackFeatures: () => [
        constants_1.FEATURE_UNLIMITED_SUBSCRIBERS,
        constants_1.FEATURE_PREMIUM_CONTENT_JP,
        constants_1.FEATURE_PAID_SUBSCRIBERS_JP,
    ],
    getCheckoutFeatures: () => {
        const baseFeatures = [
            ...((0, is_big_sky_onboarding_1.isBigSkyOnboarding)() ? [constants_1.FEATURE_BIG_SKY_WEBSITE_BUILDER_CHECKOUT] : []),
            constants_1.FEATURE_CUSTOM_DOMAIN,
            constants_1.FEATURE_AD_FREE_EXPERIENCE,
            constants_1.FEATURE_FAST_DNS,
            constants_1.FEATURE_PAID_SUBSCRIBERS_JP,
        ];
        return (0, calypso_config_1.isEnabled)('stats/paid-wpcom-v3')
            ? [...baseFeatures, constants_1.FEATURE_STATS_PAID]
            : baseFeatures;
    },
    // Features not displayed but used for checking plan abilities
    getIncludedFeatures: () => [constants_1.FEATURE_AUDIO_UPLOADS],
    getInferiorFeatures: () => [],
    getCancellationFeatures: () => [
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_AD_FREE_EXPERIENCE,
        constants_1.FEATURE_AUDIO_UPLOADS,
    ],
});
const getPlanEcommerceDetails = () => ({
    ...getDotcomPlanDetails(),
    group: constants_1.GROUP_WPCOM,
    type: constants_1.TYPE_ECOMMERCE,
    getTitle: plans_1.getPlanEcommerceTitle,
    getAudience: () => i18n_calypso_1.default.translate('Best for online stores'),
    getBlogAudience: () => i18n_calypso_1.default.translate('Best for online stores'),
    getPortfolioAudience: () => i18n_calypso_1.default.translate('Best for online stores'),
    getStoreAudience: () => i18n_calypso_1.default.translate('Best for online stores'),
    getPlanTagline: () => i18n_calypso_1.default.translate('Grow your online store with commerce-optimized extensions.'),
    getDescription: () => {
        return i18n_calypso_1.default.translate('{{strong}}Best for online stores:{{/strong}} Sell products or services with this powerful, ' +
            'all-in-one online store experience. This plan includes premium integrations and is extendable, ' +
            'so it’ll grow with you as your business grows.', plansDescriptionHeadingComponent);
    },
    getShortDescription: () => i18n_calypso_1.default.translate('Sell products or services with this powerful, ' +
        'all-in-one online store experience. This plan includes premium integrations and is extendable, ' +
        'so it’ll grow with you as your business grows.'),
    getTagline: function () {
        return i18n_calypso_1.default.translate('Learn more about everything included with %(planName)s and take advantage of its powerful marketplace features.', { args: { planName: this.getTitle() } });
    },
    getPlanCompareFeatures: (_, { isLoggedInMonthlyPricing } = {}) => compact([
        // pay attention to ordering, shared features should align on /plan page
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_HOSTING,
        constants_1.FEATURE_JETPACK_ADVANCED,
        isLoggedInMonthlyPricing && constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        (0, calypso_config_1.isEnabled)('themes/premium') ? constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED : null,
        constants_1.FEATURE_50GB_STORAGE,
        constants_1.FEATURE_NO_ADS,
        constants_1.FEATURE_MEMBERSHIPS,
        constants_1.FEATURE_PREMIUM_CONTENT_BLOCK,
        constants_1.FEATURE_ADVANCED_DESIGN_CUSTOMIZATION,
        isLoggedInMonthlyPricing && constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_REPUBLICIZE,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_VIDEO_UPLOADS,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_UPLOAD_PLUGINS,
        constants_1.FEATURE_UPLOAD_THEMES,
        constants_1.FEATURE_SFTP_DATABASE,
        constants_1.FEATURE_NO_BRANDING,
        constants_1.FEATURE_ACCEPT_PAYMENTS,
        constants_1.FEATURE_SHIPPING_CARRIERS,
        constants_1.FEATURE_UNLIMITED_PRODUCTS_SERVICES,
        constants_1.FEATURE_ECOMMERCE_MARKETING,
        constants_1.FEATURE_PREMIUM_CUSTOMIZABE_THEMES,
        constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_0,
    ]),
    getPromotedFeatures: () => [
        constants_1.FEATURE_200GB_STORAGE,
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_NO_ADS,
        constants_1.FEATURE_ADVANCED_DESIGN_CUSTOMIZATION,
    ],
    getSignupFeatures: () => [
        constants_1.FEATURE_ACCEPT_PAYMENTS,
        constants_1.FEATURE_SHIPPING_CARRIERS,
        constants_1.FEATURE_ALL_BUSINESS_FEATURES,
    ],
    getBlogSignupFeatures: () => [
        constants_1.FEATURE_ACCEPT_PAYMENTS,
        constants_1.FEATURE_SHIPPING_CARRIERS,
        constants_1.FEATURE_ALL_BUSINESS_FEATURES,
    ],
    getPortfolioSignupFeatures: () => [
        constants_1.FEATURE_ACCEPT_PAYMENTS,
        constants_1.FEATURE_SHIPPING_CARRIERS,
        constants_1.FEATURE_ALL_BUSINESS_FEATURES,
    ],
    getSignupCompareAvailableFeatures: () => [
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_HOSTING,
        constants_1.FEATURE_NO_ADS,
        constants_1.FEATURE_COLLECT_PAYMENTS_V2,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
        constants_1.FEATURE_EARN_AD,
        (0, calypso_config_1.isEnabled)('themes/premium') ? constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED : null,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_INSTALL_PLUGINS,
        constants_1.FEATURE_ADVANCED_SEO_EXPANDED_ABBR,
        constants_1.FEATURE_SITE_BACKUPS_AND_RESTORE,
        constants_1.FEATURE_SFTP_DATABASE,
        constants_1.FEATURE_ACCEPT_PAYMENTS,
        constants_1.FEATURE_SHIPPING_CARRIERS,
        constants_1.PREMIUM_DESIGN_FOR_STORES,
    ].filter(isValueTruthy),
    get2023PricingGridSignupWpcomFeatures: () => {
        return [
            constants_1.FEATURE_UNLIMITED_ENTITIES,
            constants_1.FEATURE_CUSTOM_DOMAIN,
            constants_1.FEATURE_AD_FREE_EXPERIENCE,
            constants_1.FEATURE_THEMES_PREMIUM_AND_STORE,
            constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
            constants_1.FEATURE_STYLE_CUSTOMIZATION,
            constants_1.FEATURE_CONNECT_ANALYTICS,
            constants_1.FEATURE_UPLOAD_VIDEO,
            constants_1.FEATURE_STATS_ADVANCED_20250206,
            constants_1.FEATURE_UPLOAD_PLUGINS,
            constants_1.FEATURE_DEV_TOOLS,
            constants_1.FEATURE_WOOCOMMERCE_HOSTING,
        ];
    },
    get2023PlanComparisonFeatureOverride: () => {
        return [
            constants_1.FEATURE_CUSTOM_DOMAIN,
            constants_1.FEATURE_WOOCOMMERCE_HOSTING,
            constants_1.FEATURE_PREMIUM_STORE_THEMES,
            constants_1.FEATURE_STORE_DESIGN,
            constants_1.FEATURE_UNLIMITED_PRODUCTS,
            constants_1.FEATURE_DISPLAY_PRODUCTS_BRAND,
            constants_1.FEATURE_PRODUCT_ADD_ONS,
            constants_1.FEATURE_ASSEMBLED_KITS,
            constants_1.FEATURE_MIN_MAX_ORDER_QUANTITY,
            constants_1.FEATURE_STOCK_NOTIFS,
            constants_1.FEATURE_DYNAMIC_UPSELLS,
            constants_1.FEATURE_CUSTOM_MARKETING_AUTOMATION,
            constants_1.FEATURE_BULK_DISCOUNTS,
            constants_1.FEATURE_INVENTORY_MGMT,
            constants_1.FEATURE_STREAMLINED_CHECKOUT,
            constants_1.FEATURE_SELL_60_COUNTRIES,
            constants_1.FEATURE_SHIPPING_INTEGRATIONS,
            constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_0_ALL,
            constants_1.FEATURE_SUPPORT,
        ];
    },
    getCheckoutFeatures: () => [
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
        constants_1.FEATURE_PLUGINS_THEMES,
        constants_1.FEATURE_ACCEPT_PAYMENTS,
        constants_1.FEATURE_SHIPPING_CARRIERS,
        constants_1.FEATURE_UNLIMITED_PRODUCTS_SERVICES,
        constants_1.FEATURE_INVENTORY,
        constants_1.FEATURE_CUSTOM_MARKETING_AUTOMATION,
    ],
    get2023PricingGridSignupJetpackFeatures: () => [],
    getStorageFeature: (showLegacyStorageFeature, isCurrentPlan) => {
        if (showLegacyStorageFeature && isCurrentPlan) {
            return constants_1.FEATURE_200GB_STORAGE;
        }
        return (0, calypso_config_1.isEnabled)('plans/updated-storage-labels')
            ? constants_1.FEATURE_50GB_STORAGE
            : constants_1.FEATURE_200GB_STORAGE;
    },
    getPlanComparisonFeatureLabels: () => {
        const baseFeatures = {
            [constants_1.FEATURE_PREMIUM_THEMES]: i18n_calypso_1.default.translate('All premium themes'),
            [constants_1.FEATURE_SHARES_SOCIAL_MEDIA_JP]: i18n_calypso_1.default.translate('Unlimited shares'),
            [constants_1.FEATURE_COMMISSION_FEE_STANDARD_FEATURES]: (0, number_formatters_1.formatNumber)(0, {
                numberFormatOptions: { style: 'percent' },
            }),
            [constants_1.FEATURE_COMMISSION_FEE_WOO_FEATURES]: (0, number_formatters_1.formatNumber)(0, {
                numberFormatOptions: { style: 'percent' },
            }),
            [constants_1.FEATURE_SUPPORT]: i18n_calypso_1.default.translate('Priority 24/7 support from our expert\u00A0team'),
        };
        return isStatsFeatureTranslated()
            ? {
                ...baseFeatures,
                [constants_1.FEATURE_STATS_JP]: i18n_calypso_1.default.translate('Advanced insights, including UTM & device analytics'),
            }
            : baseFeatures;
    },
    getHostingSignupFeatures: (term) => () => compact([
        term !== constants_1.TERM_MONTHLY && constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_SELL_SHIP,
        constants_1.FEATURE_CUSTOM_STORE,
        constants_1.FEATURE_INVENTORY,
        constants_1.FEATURE_CHECKOUT,
        constants_1.FEATURE_ACCEPT_PAYMENTS_V2,
        constants_1.FEATURE_SALES_REPORTS,
        constants_1.FEATURE_SHIPPING_CARRIERS,
        constants_1.FEATURE_EXTENSIONS,
        constants_1.FEATURE_BANDWIDTH,
        constants_1.FEATURE_GLOBAL_EDGE_CACHING,
        constants_1.FEATURE_BURST,
        constants_1.FEATURE_WAF_V2,
        constants_1.FEATURE_CDN,
        constants_1.FEATURE_CPUS,
        constants_1.FEATURE_DATACENTRE_FAILOVER,
        constants_1.FEATURE_SECURITY_MALWARE,
        constants_1.FEATURE_SECURITY_DDOS,
    ]),
    // Features not displayed but used for checking plan abilities
    getIncludedFeatures: () => [
        constants_1.FEATURE_AUDIO_UPLOADS,
        constants_1.FEATURE_GOOGLE_MY_BUSINESS,
        constants_1.WPCOM_FEATURES_INSTALL_PURCHASED_PLUGINS,
        constants_1.FEATURE_UPLOAD_THEMES_PLUGINS,
        constants_1.FEATURE_EMAIL_FORWARDING_EXTENDED_LIMIT,
        constants_1.FEATURE_SEO_PREVIEW_TOOLS,
        constants_1.WPCOM_FEATURES_ATOMIC,
        constants_1.WPCOM_FEATURES_SCAN,
        constants_1.WPCOM_FEATURES_ANTISPAM,
        constants_1.WPCOM_FEATURES_BACKUPS,
    ],
    getInferiorFeatures: () => [],
    getCancellationFeatures: () => [
        constants_1.FEATURE_ACCEPT_PAYMENTS_V2,
        constants_1.FEATURE_SHIPPING_CARRIERS,
        constants_1.FEATURE_ECOMMERCE_MARKETING,
        constants_1.FEATURE_SELL_SHIP,
        constants_1.FEATURE_PLUGINS_THEMES,
        constants_1.FEATURE_ADVANCED_SEO_TOOLS,
    ],
});
const getWooExpressMediumPlanCompareFeatures = () => [
    constants_1.FEATURE_WOOCOMMERCE_STORE,
    constants_1.FEATURE_WOOCOMMERCE_MOBILE_APP,
    constants_1.FEATURE_WORDPRESS_CMS,
    constants_1.FEATURE_WORDPRESS_MOBILE_APP,
    constants_1.FEATURE_CUSTOM_DOMAIN,
    constants_1.FEATURE_FREE_SSL_CERTIFICATE,
    constants_1.FEATURE_AUTOMATED_BACKUPS_SECURITY_SCAN,
    constants_1.FEATURE_AD_FREE_EXPERIENCE,
    constants_1.FEATURE_UNLIMITED_ADMINS,
    constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
    constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
    constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED,
    constants_1.FEATURE_SALES_REPORTS,
    constants_1.FEATURE_GOOGLE_ANALYTICS_V3,
    constants_1.FEATURE_LIST_UNLIMITED_PRODUCTS,
    constants_1.FEATURE_GIFT_CARDS,
    constants_1.FEATURE_MIN_MAX_ORDER_QUANTITY,
    constants_1.FEATURE_PRODUCT_BUNDLES,
    constants_1.FEATURE_LIST_PRODUCTS_BY_BRAND,
    constants_1.FEATURE_PRODUCT_RECOMMENDATIONS,
    constants_1.FEATURE_INTEGRATED_PAYMENTS,
    constants_1.FEATURE_INTERNATIONAL_PAYMENTS,
    constants_1.FEATURE_AUTOMATED_SALES_TAXES,
    constants_1.FEATURE_ACCEPT_LOCAL_PAYMENTS,
    constants_1.FEATURE_RECURRING_PAYMENTS,
    constants_1.FEATURE_MIN_MAX_ORDER_QUANTITY,
    constants_1.FEATURE_PROMOTE_ON_TIKTOK,
    constants_1.FEATURE_SYNC_WITH_PINTEREST,
    constants_1.FEATURE_CONNECT_WITH_FACEBOOK,
    constants_1.FEATURE_BACK_IN_STOCK_NOTIFICATIONS,
    constants_1.FEATURE_MARKETING_AUTOMATION,
    constants_1.FEATURE_ABANDONED_CART_RECOVERY,
    constants_1.FEATURE_ADVANCED_SEO_TOOLS,
    constants_1.FEATURE_ADVERTISE_ON_GOOGLE,
    constants_1.FEATURE_CUSTOM_ORDER_EMAILS,
    constants_1.FEATURE_INTEGRATED_SHIPMENT_TRACKING,
    constants_1.FEATURE_LIVE_SHIPPING_RATES,
    constants_1.FEATURE_DISCOUNTED_SHIPPING,
    constants_1.FEATURE_PRINT_SHIPPING_LABELS,
    constants_1.FEATURE_AI_ASSISTED_PRODUCT_DESCRIPTION,
];
const getWooExpressSmallPlanCompareFeatures = () => [
    constants_1.FEATURE_WOOCOMMERCE_STORE,
    constants_1.FEATURE_WOOCOMMERCE_MOBILE_APP,
    constants_1.FEATURE_WORDPRESS_CMS,
    constants_1.FEATURE_WORDPRESS_MOBILE_APP,
    constants_1.FEATURE_CUSTOM_DOMAIN,
    constants_1.FEATURE_FREE_SSL_CERTIFICATE,
    constants_1.FEATURE_AUTOMATED_BACKUPS_SECURITY_SCAN,
    constants_1.FEATURE_AD_FREE_EXPERIENCE,
    constants_1.FEATURE_UNLIMITED_ADMINS,
    constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
    constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
    constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED,
    constants_1.FEATURE_SALES_REPORTS,
    constants_1.FEATURE_GOOGLE_ANALYTICS_V3,
    constants_1.FEATURE_LIST_UNLIMITED_PRODUCTS,
    constants_1.FEATURE_GIFT_CARDS,
    constants_1.FEATURE_LIST_PRODUCTS_BY_BRAND,
    constants_1.FEATURE_INTEGRATED_PAYMENTS,
    constants_1.FEATURE_INTERNATIONAL_PAYMENTS,
    constants_1.FEATURE_AUTOMATED_SALES_TAXES,
    constants_1.FEATURE_ACCEPT_LOCAL_PAYMENTS,
    constants_1.FEATURE_RECURRING_PAYMENTS,
    constants_1.FEATURE_PROMOTE_ON_TIKTOK,
    constants_1.FEATURE_SYNC_WITH_PINTEREST,
    constants_1.FEATURE_CONNECT_WITH_FACEBOOK,
    constants_1.FEATURE_ADVANCED_SEO_TOOLS,
    constants_1.FEATURE_ADVERTISE_ON_GOOGLE,
    constants_1.FEATURE_CUSTOM_ORDER_EMAILS,
    constants_1.FEATURE_INTEGRATED_SHIPMENT_TRACKING,
    constants_1.FEATURE_LIVE_SHIPPING_RATES,
    constants_1.FEATURE_PRINT_SHIPPING_LABELS,
    constants_1.FEATURE_AI_ASSISTED_PRODUCT_DESCRIPTION,
];
const getWooExpressPlanCompareFeatures = () => [
    ...getWooExpressSmallPlanCompareFeatures(),
    ...getWooExpressMediumPlanCompareFeatures(),
];
const getPlanWooExpressMediumDetails = () => ({
    ...getPlanEcommerceDetails(),
    getTitle: () => i18n_calypso_1.default.translate('Performance'),
    getPlanTagline: () => i18n_calypso_1.default.translate('Accelerate your growth with advanced features.'),
    get2023PricingGridSignupWpcomFeatures: () => [
        constants_1.FEATURE_200GB_STORAGE,
        constants_1.FEATURE_BACK_IN_STOCK_NOTIFICATIONS,
        constants_1.FEATURE_MARKETING_AUTOMATION,
        constants_1.FEATURE_AUTOMATED_EMAIL_TRIGGERS,
        constants_1.FEATURE_CART_ABANDONMENT_EMAILS,
        constants_1.FEATURE_OFFER_BULK_DISCOUNTS,
        constants_1.FEATURE_RECOMMEND_ADD_ONS,
        constants_1.FEATURE_MIN_MAX_ORDER_QUANTITY,
    ],
    getPlanCompareFeatures: () => getWooExpressPlanCompareFeatures(),
    get2023PlanComparisonFeatureOverride: () => getWooExpressMediumPlanCompareFeatures(),
    getStorageFeature: () => constants_1.FEATURE_200GB_STORAGE,
    getTagline: () => i18n_calypso_1.default.translate('Learn more about everything included with Woo Express Performance and take advantage of its powerful marketplace features.'),
});
const getPlanWooExpressSmallDetails = () => ({
    ...getPlanEcommerceDetails(),
    get2023PricingGridSignupWpcomFeatures: () => [
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
        constants_1.FEATURE_UNLIMITED_ADMINS,
        constants_1.FEATURE_50GB_STORAGE,
        constants_1.FEATURE_UNLIMITED_PRODUCTS_SERVICES,
        constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED,
        constants_1.FEATURE_SELL_INTERNATIONALLY,
        constants_1.FEATURE_AUTOMATIC_SALES_TAX,
        constants_1.FEATURE_AUTOMATED_BACKUPS_SECURITY_SCAN,
        constants_1.FEATURE_INTEGRATED_SHIPMENT_TRACKING,
        constants_1.FEATURE_REAL_TIME_ANALYTICS,
        constants_1.FEATURE_SELL_EGIFTS_AND_VOUCHERS,
        constants_1.FEATURE_EMAIL_MARKETING,
        constants_1.FEATURE_MARKETPLACE_SYNC_SOCIAL_MEDIA_INTEGRATION,
        constants_1.FEATURE_ADVANCED_SEO_TOOLS,
        constants_1.FEATURE_AI_ASSISTED_PRODUCT_DESCRIPTION,
    ],
    getPlanCompareFeatures: () => getWooExpressPlanCompareFeatures(),
    get2023PlanComparisonFeatureOverride: () => getWooExpressSmallPlanCompareFeatures(),
    getStorageFeature: () => constants_1.FEATURE_50GB_STORAGE,
    getTitle: () => i18n_calypso_1.default.translate('Essential'),
    getPlanTagline: () => i18n_calypso_1.default.translate('Everything you need to set up your store and start selling your products.'),
    getTagline: () => i18n_calypso_1.default.translate('Learn more about everything included with Woo Express Essential and take advantage of its powerful marketplace features.'),
});
const getPlanPremiumDetails = () => ({
    ...getDotcomPlanDetails(),
    group: constants_1.GROUP_WPCOM,
    type: constants_1.TYPE_PREMIUM,
    getTitle: plans_1.getPlanPremiumTitle,
    getAudience: () => i18n_calypso_1.default.translate('Best for freelancers'),
    getBlogAudience: () => i18n_calypso_1.default.translate('Best for freelancers'),
    getPortfolioAudience: () => i18n_calypso_1.default.translate('Best for freelancers'),
    getStoreAudience: () => i18n_calypso_1.default.translate('Best for freelancers'),
    getPlanTagline: () => i18n_calypso_1.default.translate('Step up site customization with premium design features.'),
    getNewsletterTagLine: () => i18n_calypso_1.default.translate('Make it even more memorable with premium designs and style customization.'),
    getBlogOnboardingTagLine: () => i18n_calypso_1.default.translate('Make it even more memorable with premium designs, 4K video, and style customization.'),
    getDescription: () => i18n_calypso_1.default.translate('{{strong}}Best for freelancers:{{/strong}} Build a unique website with advanced design tools, CSS editing, lots of space for audio and video,' +
        ' Google Analytics support,' +
        ' and the ability to monetize your site with ads.', plansDescriptionHeadingComponent),
    getShortDescription: () => i18n_calypso_1.default.translate('Build a unique website with advanced design tools, CSS editing, lots of space for audio and video,' +
        ' Google Analytics support,' +
        ' and the ability to monetize your site with ads.'),
    getPlanCompareFeatures: (_, { isLoggedInMonthlyPricing } = {}) => compact([
        // pay attention to ordering, shared features should align on /plan page
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_HOSTING,
        constants_1.FEATURE_JETPACK_ESSENTIAL,
        isLoggedInMonthlyPricing && constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        (0, calypso_config_1.isEnabled)('themes/premium') ? constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED : null,
        constants_1.FEATURE_13GB_STORAGE,
        constants_1.FEATURE_NO_ADS,
        constants_1.FEATURE_MEMBERSHIPS,
        constants_1.FEATURE_PREMIUM_CONTENT_BLOCK,
        constants_1.FEATURE_ADVANCED_DESIGN_CUSTOMIZATION,
        isLoggedInMonthlyPricing && constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_REPUBLICIZE,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_VIDEO_UPLOADS,
        constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_4,
    ]),
    getPromotedFeatures: () => [
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_NO_ADS,
        constants_1.FEATURE_ADVANCED_DESIGN_CUSTOMIZATION,
        constants_1.FEATURE_13GB_STORAGE,
    ],
    getSignupFeatures: () => [
        constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
        constants_1.FEATURE_ADVANCED_DESIGN_CUSTOMIZATION,
        constants_1.FEATURE_ALL_PERSONAL_FEATURES,
    ],
    getTagline: function () {
        return i18n_calypso_1.default.translate('Take your Newsletter further, faster. Get everything included in %(planName)s, plus premium design themes, baked-in video uploads, ad monetization, deep visitor insights from Google Analytics, and 24/7 expert support.', { args: { planName: this.getTitle() } });
    },
    getNewsletterSignupFeatures: () => [
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_STYLE_CUSTOMIZATION,
        constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED,
        constants_1.FEATURE_UNLTD_SOCIAL_MEDIA_JP,
        constants_1.FEATURE_UPLOAD_VIDEO,
        (0, calypso_config_1.isEnabled)('stats/paid-wpcom-v3') ? constants_1.FEATURE_STATS_COMMERCIAL : constants_1.FEATURE_STATS_PAID,
        constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_4,
    ],
    getNewsletterHighlightedFeatures: () => [
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_UNLIMITED_EMAILS,
        constants_1.FEATURE_AD_FREE_EXPERIENCE,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_REAL_TIME_ANALYTICS,
        constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED,
    ],
    getBlogOnboardingSignupFeatures: () => [
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED,
        constants_1.FEATURE_STYLE_CUSTOMIZATION,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_WORDADS,
        constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_4,
    ],
    getBlogOnboardingHighlightedFeatures: () => [constants_1.FEATURE_CUSTOM_DOMAIN],
    getBlogOnboardingSignupJetpackFeatures: () => [
        constants_1.FEATURE_VIDEOPRESS_JP,
        constants_1.FEATURE_UNLTD_SOCIAL_MEDIA_JP,
        constants_1.FEATURE_SITE_ACTIVITY_LOG_JP,
        (0, calypso_config_1.isEnabled)('stats/paid-wpcom-v3') ? constants_1.FEATURE_STATS_COMMERCIAL : constants_1.FEATURE_STATS_PAID,
    ],
    getBlogSignupFeatures: () => [
        constants_1.FEATURE_MONETISE,
        (0, calypso_config_1.isEnabled)('themes/premium') ? constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED : null,
        constants_1.FEATURE_ALL_PERSONAL_FEATURES,
    ].filter(isValueTruthy),
    getPortfolioSignupFeatures: () => [
        constants_1.FEATURE_ADVANCED_DESIGN_CUSTOMIZATION,
        (0, calypso_config_1.isEnabled)('themes/premium') ? constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED : null,
        constants_1.FEATURE_ALL_PERSONAL_FEATURES,
    ].filter(isValueTruthy),
    getSignupCompareAvailableFeatures: () => [
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_HOSTING,
        constants_1.FEATURE_NO_ADS,
        constants_1.FEATURE_COLLECT_PAYMENTS_V2,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
        constants_1.FEATURE_EARN_AD,
        (0, calypso_config_1.isEnabled)('themes/premium') ? constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED : null,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
    ].filter(isValueTruthy),
    get2023PricingGridSignupWpcomFeatures: () => {
        return [
            ...((0, is_big_sky_onboarding_1.isBigSkyOnboarding)() ? [constants_1.FEATURE_BIG_SKY_WEBSITE_BUILDER] : []),
            constants_1.FEATURE_UNLIMITED_ENTITIES,
            constants_1.FEATURE_CUSTOM_DOMAIN,
            constants_1.FEATURE_AD_FREE_EXPERIENCE,
            constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED,
            constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
            constants_1.FEATURE_STYLE_CUSTOMIZATION,
            constants_1.FEATURE_CONNECT_ANALYTICS,
            constants_1.FEATURE_UPLOAD_VIDEO,
            constants_1.FEATURE_STATS_ADVANCED_20250206,
        ];
    },
    get2023PlanComparisonFeatureOverride: () => {
        return [
            constants_1.FEATURE_CUSTOM_DOMAIN,
            constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
            constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED,
            constants_1.FEATURE_WORDADS,
            constants_1.FEATURE_CONNECT_ANALYTICS,
            constants_1.FEATURE_STYLE_CUSTOMIZATION,
            constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_4,
            constants_1.FEATURE_SUPPORT,
        ];
    },
    getCheckoutFeatures: () => [
        ...((0, is_big_sky_onboarding_1.isBigSkyOnboarding)() ? [constants_1.FEATURE_BIG_SKY_WEBSITE_BUILDER_CHECKOUT] : []),
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED,
        constants_1.FEATURE_WORDADS,
        constants_1.FEATURE_STYLE_CUSTOMIZATION,
        (0, calypso_config_1.isEnabled)('stats/paid-wpcom-v3') ? constants_1.FEATURE_STATS_COMMERCIAL : constants_1.FEATURE_STATS_PAID,
        constants_1.FEATURE_UPLOAD_VIDEO,
        constants_1.FEATURE_UNLTD_SOCIAL_MEDIA_JP,
        constants_1.FEATURE_SITE_ACTIVITY_LOG_JP,
    ],
    get2023PricingGridSignupJetpackFeatures: () => {
        return [];
    },
    getStorageFeature: () => constants_1.FEATURE_13GB_STORAGE,
    getPlanComparisonFeatureLabels: () => {
        const baseFeatures = {
            [constants_1.FEATURE_PREMIUM_THEMES]: i18n_calypso_1.default.translate('All premium themes'),
            [constants_1.FEATURE_SHARES_SOCIAL_MEDIA_JP]: i18n_calypso_1.default.translate('Unlimited shares'),
            [constants_1.FEATURE_COMMISSION_FEE_STANDARD_FEATURES]: (0, number_formatters_1.formatNumber)(0.04, {
                numberFormatOptions: { style: 'percent' },
            }),
            [constants_1.FEATURE_SUPPORT]: i18n_calypso_1.default.translate('Fast support from our expert\u00A0team'),
        };
        return isStatsFeatureTranslated()
            ? {
                ...baseFeatures,
                [constants_1.FEATURE_STATS_JP]: i18n_calypso_1.default.translate('Advanced insights, including UTM & device analytics'),
            }
            : baseFeatures;
    },
    get2023PlanComparisonJetpackFeatureOverride: () => {
        return [
            constants_1.FEATURE_PAYPAL_JP,
            constants_1.FEATURE_UPLOAD_VIDEO,
            (0, calypso_config_1.isEnabled)('stats/paid-wpcom-v3') ? constants_1.FEATURE_STATS_COMMERCIAL : constants_1.FEATURE_STATS_PAID,
        ];
    },
    // Features not displayed but used for checking plan abilities
    getIncludedFeatures: () => [
        constants_1.FEATURE_AUDIO_UPLOADS,
        constants_1.WPCOM_FEATURES_SCAN,
        constants_1.WPCOM_FEATURES_ANTISPAM,
        constants_1.WPCOM_FEATURES_BACKUPS,
    ],
    getInferiorFeatures: () => [],
    getCancellationFeatures: () => [
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED,
        constants_1.FEATURE_STYLE_CUSTOMIZATION,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_AD_FREE_EXPERIENCE,
    ],
});
const getPlanBusinessDetails = () => ({
    ...getDotcomPlanDetails(),
    group: constants_1.GROUP_WPCOM,
    type: constants_1.TYPE_BUSINESS,
    getTitle: plans_1.getPlanBusinessTitle,
    getAudience: () => i18n_calypso_1.default.translate('Best for small businesses'),
    getBlogAudience: () => i18n_calypso_1.default.translate('Best for small businesses'),
    getPortfolioAudience: () => i18n_calypso_1.default.translate('Best for small businesses'),
    getStoreAudience: () => i18n_calypso_1.default.translate('The plan for small businesses'),
    getPlanTagline: () => i18n_calypso_1.default.translate('Unlock next-level WordPress with custom plugins and themes.'),
    getBlogOnboardingTagLine: () => i18n_calypso_1.default.translate('Expand your blog with plugins and powerful tools to help you scale.'),
    getDescription: () => i18n_calypso_1.default.translate('{{strong}}Best for small businesses:{{/strong}} Power your' +
        ' business website with custom plugins and themes,' +
        ' %(nmOfGB)s GB storage, and the ability to remove WordPress.com branding.', {
        ...plansDescriptionHeadingComponent,
        args: {
            nmOfGB: (0, calypso_config_1.isEnabled)('plans/updated-storage-labels') ? '50' : '200',
        },
    }),
    getShortDescription: () => i18n_calypso_1.default.translate('Power your business website with custom plugins and themes,' +
        ' %(nmOfGB)s GB storage, and the ability to remove WordPress.com branding.', { args: { nmOfGB: (0, calypso_config_1.isEnabled)('plans/updated-storage-labels') ? '50' : '200' } }),
    getTagline: function () {
        return i18n_calypso_1.default.translate('Learn more about everything included with %(planName)s and take advantage of its powerful marketplace features.', { args: { planName: this.getTitle() } });
    },
    getPlanCompareFeatures: (_, { isLoggedInMonthlyPricing } = {}) => compact([
        // pay attention to ordering, shared features should align on /plan page
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_HOSTING,
        constants_1.FEATURE_JETPACK_ADVANCED,
        isLoggedInMonthlyPricing && constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        (0, calypso_config_1.isEnabled)('themes/premium') ? constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED : null,
        constants_1.FEATURE_50GB_STORAGE,
        constants_1.FEATURE_NO_ADS,
        constants_1.FEATURE_MEMBERSHIPS,
        constants_1.FEATURE_PREMIUM_CONTENT_BLOCK,
        constants_1.FEATURE_ADVANCED_DESIGN_CUSTOMIZATION,
        isLoggedInMonthlyPricing && constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_REPUBLICIZE,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_VIDEO_UPLOADS,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_UPLOAD_PLUGINS,
        constants_1.FEATURE_UPLOAD_THEMES,
        constants_1.FEATURE_SFTP_DATABASE,
        constants_1.FEATURE_NO_BRANDING,
        constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_2,
    ]),
    getPromotedFeatures: () => [
        constants_1.FEATURE_200GB_STORAGE,
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_NO_ADS,
        constants_1.FEATURE_ADVANCED_DESIGN_CUSTOMIZATION,
        constants_1.FEATURE_VIDEO_UPLOADS,
    ],
    getSignupFeatures: () => [
        constants_1.FEATURE_UPLOAD_THEMES_PLUGINS,
        constants_1.FEATURE_ADVANCED_SEO_TOOLS,
        constants_1.FEATURE_ALL_PREMIUM_FEATURES,
    ],
    getBlogSignupFeatures: () => [
        constants_1.FEATURE_UPLOAD_THEMES_PLUGINS,
        constants_1.FEATURE_ADVANCED_SEO_TOOLS,
        constants_1.FEATURE_ALL_PREMIUM_FEATURES,
    ],
    getPortfolioSignupFeatures: () => [
        constants_1.FEATURE_UPLOAD_THEMES_PLUGINS,
        constants_1.FEATURE_200GB_STORAGE,
        constants_1.FEATURE_ALL_PREMIUM_FEATURES,
    ],
    getSignupCompareAvailableFeatures: () => [
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_HOSTING,
        constants_1.FEATURE_NO_ADS,
        constants_1.FEATURE_COLLECT_PAYMENTS_V2,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
        constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
        constants_1.FEATURE_EARN_AD,
        (0, calypso_config_1.isEnabled)('themes/premium') ? constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED : null,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_INSTALL_PLUGINS,
        constants_1.FEATURE_ADVANCED_SEO_EXPANDED_ABBR,
        constants_1.FEATURE_SITE_BACKUPS_AND_RESTORE,
        constants_1.FEATURE_SFTP_DATABASE,
    ].filter(isValueTruthy),
    get2023PricingGridSignupWpcomFeatures: () => {
        return [
            ...((0, is_big_sky_onboarding_1.isBigSkyOnboarding)() ? [constants_1.FEATURE_BIG_SKY_WEBSITE_BUILDER] : []),
            constants_1.FEATURE_UNLIMITED_ENTITIES,
            constants_1.FEATURE_CUSTOM_DOMAIN,
            constants_1.FEATURE_AD_FREE_EXPERIENCE,
            constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED,
            constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
            constants_1.FEATURE_STYLE_CUSTOMIZATION,
            constants_1.FEATURE_CONNECT_ANALYTICS,
            constants_1.FEATURE_UPLOAD_VIDEO,
            constants_1.FEATURE_STATS_ADVANCED_20250206,
            constants_1.FEATURE_UPLOAD_PLUGINS,
            constants_1.FEATURE_DEV_TOOLS,
        ];
    },
    get2023PlanComparisonFeatureOverride: () => {
        return [
            constants_1.FEATURE_CUSTOM_DOMAIN,
            constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
            constants_1.FEATURE_PLUGINS_THEMES,
            constants_1.FEATURE_BANDWIDTH,
            constants_1.FEATURE_UNLIMITED_TRAFFIC,
            constants_1.FEATURE_GLOBAL_EDGE_CACHING,
            constants_1.FEATURE_CDN,
            constants_1.FEATURE_DATACENTRE_FAILOVER,
            constants_1.FEATURE_ISOLATED_INFRA,
            constants_1.FEATURE_SECURITY_MALWARE,
            constants_1.FEATURE_TIERED_STORAGE_PLANS_AVAILABLE,
            constants_1.FEATURE_REAL_TIME_SECURITY_SCANS,
            constants_1.FEATURE_SPAM_JP,
            constants_1.FEATURE_SECURITY_DDOS,
            constants_1.FEATURE_DEV_TOOLS_GIT,
            constants_1.FEATURE_DEV_TOOLS_SSH,
            constants_1.FEATURE_SITE_STAGING_SITES,
            constants_1.FEATURE_SEAMLESS_STAGING_PRODUCTION_SYNCING,
            constants_1.FEATURE_WP_UPDATES,
            constants_1.FEATURE_MULTI_SITE,
            constants_1.FEATURE_SECURITY_VULNERABILITY_NOTIFICATIONS,
            constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_0_WOO,
            constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_2_REGULAR,
            constants_1.FEATURE_COMMISSION_FEE_WOO_FEATURES,
            constants_1.FEATURE_COMMISSION_FEE_STANDARD_FEATURES,
        ];
    },
    getCheckoutFeatures: () => [
        ...((0, is_big_sky_onboarding_1.isBigSkyOnboarding)() ? [constants_1.FEATURE_BIG_SKY_WEBSITE_BUILDER_CHECKOUT] : []),
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_PLUGINS_THEMES,
        constants_1.FEATURE_BANDWIDTH,
        constants_1.FEATURE_CDN,
        constants_1.FEATURE_ADVANCED_SEO_TOOLS,
        constants_1.FEATURE_PRIORITY_24_7_SUPPORT,
        constants_1.FEATURE_DEV_TOOLS,
        constants_1.FEATURE_REALTIME_BACKUPS_JP,
        constants_1.FEATURE_SITE_ACTIVITY_LOG_JP,
        constants_1.FEATURE_SECURITY_DDOS,
        constants_1.FEATURE_SITE_STAGING_SITES,
    ],
    get2023PricingGridSignupJetpackFeatures: () => {
        return [];
    },
    get2023PlanComparisonJetpackFeatureOverride: () => {
        return [
            constants_1.FEATURE_REALTIME_BACKUPS_JP,
            constants_1.FEATURE_ONE_CLICK_RESTORE_V2,
            constants_1.FEATURE_UPTIME_MONITOR_JP,
            constants_1.FEATURE_PLUGIN_AUTOUPDATE_JP,
            constants_1.FEATURE_SEO_JP,
        ];
    },
    getPlanComparisonFeatureLabels: () => {
        const featureLabels = {
            [constants_1.FEATURE_PREMIUM_THEMES]: i18n_calypso_1.default.translate('All premium themes'),
            [constants_1.FEATURE_PREMIUM_STORE_THEMES]: i18n_calypso_1.default.translate('Available with plugins'),
            [constants_1.FEATURE_UNLIMITED_PRODUCTS]: i18n_calypso_1.default.translate('Available with plugins'),
            [constants_1.FEATURE_DISPLAY_PRODUCTS_BRAND]: i18n_calypso_1.default.translate('Available with plugins'),
            [constants_1.FEATURE_PRODUCT_ADD_ONS]: i18n_calypso_1.default.translate('Available with paid plugins'),
            [constants_1.FEATURE_ASSEMBLED_KITS]: i18n_calypso_1.default.translate('Available with paid plugins'),
            [constants_1.FEATURE_MIN_MAX_ORDER_QUANTITY]: i18n_calypso_1.default.translate('Available with paid plugins'),
            [constants_1.FEATURE_STOCK_NOTIFS]: i18n_calypso_1.default.translate('Available with paid plugins'),
            [constants_1.FEATURE_DYNAMIC_UPSELLS]: i18n_calypso_1.default.translate('Available with paid plugins'),
            [constants_1.FEATURE_CUSTOM_MARKETING_AUTOMATION]: i18n_calypso_1.default.translate('Available with paid plugins'),
            [constants_1.FEATURE_BULK_DISCOUNTS]: i18n_calypso_1.default.translate('Available with paid plugins'),
            [constants_1.FEATURE_INVENTORY_MGMT]: i18n_calypso_1.default.translate('Available with plugins'),
            [constants_1.FEATURE_STREAMLINED_CHECKOUT]: i18n_calypso_1.default.translate('Available with plugins'),
            [constants_1.FEATURE_SELL_60_COUNTRIES]: i18n_calypso_1.default.translate('Available with plugins'),
            [constants_1.FEATURE_SHIPPING_INTEGRATIONS]: i18n_calypso_1.default.translate('Available with paid plugins'),
            [constants_1.FEATURE_SHARES_SOCIAL_MEDIA_JP]: i18n_calypso_1.default.translate('Unlimited shares'),
            [constants_1.FEATURE_STORE_DESIGN]: i18n_calypso_1.default.translate('Available with plugins'),
            [constants_1.FEATURE_COMMISSION_FEE_STANDARD_FEATURES]: (0, number_formatters_1.formatNumber)(0.02, {
                numberFormatOptions: { style: 'percent' },
            }),
            [constants_1.FEATURE_COMMISSION_FEE_WOO_FEATURES]: (0, number_formatters_1.formatNumber)(0, {
                numberFormatOptions: { style: 'percent' },
            }),
            [constants_1.FEATURE_SUPPORT]: i18n_calypso_1.default.translate('Priority 24/7 support from our expert team'),
        };
        return isStatsFeatureTranslated()
            ? {
                ...featureLabels,
                [constants_1.FEATURE_STATS_JP]: i18n_calypso_1.default.translate('Advanced insights, including UTM & device analytics'),
            }
            : featureLabels;
    },
    getStorageFeature: (showLegacyStorageFeature, isCurrentPlan) => {
        if (showLegacyStorageFeature) {
            /* If the user is currently has a legacy plan with 200GB storage space, the capacity will decrease to
             * 50GB if they change their billing terms.
             */
            return isCurrentPlan ? constants_1.FEATURE_200GB_STORAGE : constants_1.FEATURE_50GB_STORAGE;
        }
        return (0, calypso_config_1.isEnabled)('plans/updated-storage-labels')
            ? constants_1.FEATURE_50GB_STORAGE
            : constants_1.FEATURE_200GB_STORAGE;
    },
    getHostingSignupFeatures: (term) => () => compact([
        term !== constants_1.TERM_MONTHLY && constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_PLUGINS_THEMES,
        constants_1.FEATURE_BANDWIDTH,
        constants_1.FEATURE_GLOBAL_EDGE_CACHING,
        constants_1.FEATURE_BURST,
        constants_1.FEATURE_WAF_V2,
        constants_1.FEATURE_CDN,
        constants_1.FEATURE_CPUS,
        constants_1.FEATURE_DATACENTRE_FAILOVER,
        constants_1.FEATURE_ISOLATED_INFRA,
        constants_1.FEATURE_SECURITY_MALWARE,
        constants_1.FEATURE_SECURITY_DDOS,
        constants_1.FEATURE_DEV_TOOLS,
        constants_1.FEATURE_SITE_STAGING_SITES,
        constants_1.FEATURE_WP_UPDATES,
        constants_1.FEATURE_MULTI_SITE,
    ]),
    getBlogOnboardingSignupFeatures: () => [
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_PLUGINS_THEMES,
        constants_1.FEATURE_SECURITY_MALWARE,
        constants_1.FEATURE_WP_UPDATES,
        constants_1.FEATURE_PAYMENT_TRANSACTION_FEES_2,
    ],
    getBlogOnboardingSignupJetpackFeatures: () => [
        constants_1.FEATURE_SEO_JP,
        constants_1.FEATURE_PLUGIN_AUTOUPDATE_JP,
        constants_1.FEATURE_REALTIME_BACKUPS_JP,
        constants_1.FEATURE_ONE_CLICK_RESTORE_V2,
        constants_1.FEATURE_ES_SEARCH_JP,
    ],
    // Features not displayed but used for checking plan abilities
    getIncludedFeatures: () => [
        constants_1.FEATURE_AUDIO_UPLOADS,
        constants_1.FEATURE_GOOGLE_MY_BUSINESS,
        constants_1.WPCOM_FEATURES_INSTALL_PURCHASED_PLUGINS,
        constants_1.FEATURE_EMAIL_FORWARDING_EXTENDED_LIMIT,
        constants_1.FEATURE_SEO_PREVIEW_TOOLS,
        constants_1.WPCOM_FEATURES_ATOMIC,
        constants_1.WPCOM_FEATURES_SCAN,
        constants_1.WPCOM_FEATURES_ANTISPAM,
        constants_1.WPCOM_FEATURES_BACKUPS,
    ],
    getInferiorFeatures: () => [],
    getSenseiFeatures: (term) => () => compact([
        term !== constants_1.TERM_MONTHLY && constants_1.FEATURE_CUSTOM_DOMAIN,
        term !== constants_1.TERM_MONTHLY && constants_1.FEATURE_SENSEI_SUPPORT,
        constants_1.FEATURE_SENSEI_UNLIMITED,
        constants_1.FEATURE_SENSEI_INTERACTIVE,
        constants_1.FEATURE_SENSEI_QUIZZES,
        constants_1.FEATURE_SENSEI_SELL_COURSES,
        constants_1.FEATURE_SENSEI_STORAGE,
        constants_1.FEATURE_SENSEI_HOSTING,
        constants_1.FEATURE_SENSEI_JETPACK,
    ]),
    getSenseiHighlightedFeatures: () => [constants_1.FEATURE_CUSTOM_DOMAIN, constants_1.FEATURE_SENSEI_SUPPORT],
    getCancellationFeatures: () => [
        constants_1.FEATURE_PLUGINS_THEMES,
        constants_1.FEATURE_ADVANCED_SEO_TOOLS,
        constants_1.FEATURE_DEV_TOOLS,
        constants_1.FEATURE_SEAMLESS_STAGING_PRODUCTION_SYNCING,
        constants_1.FEATURE_SITE_BACKUPS_AND_RESTORE,
        constants_1.FEATURE_AD_FREE_EXPERIENCE,
        constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS,
    ],
});
const getPlanProDetails = () => ({
    ...getDotcomPlanDetails(),
    group: constants_1.GROUP_WPCOM,
    type: constants_1.TYPE_PRO,
    getTitle: () => i18n_calypso_1.default.translate('WordPress Pro'),
    getTagline: () => i18n_calypso_1.default.translate('This plan gives you access to our most powerful features at an affordable price for an unmatched value you won’t get anywhere else. No longer available to new users.'),
    getDescription: () => i18n_calypso_1.default.translate('You’ve got our best deal on hosting! ' +
        'Your Pro plan includes access to all the most popular features WordPress.com has to offer, including premium themes and access to over 50,000 plugins. ' +
        'As an existing customer, you can keep your site on this plan as long as your subscription remains active.'),
    getSubTitle: () => i18n_calypso_1.default.translate('Unlimited features. Unbeatable value.'),
    getPlanCompareFeatures: () => [
        constants_1.FEATURE_UNLIMITED_TRAFFIC,
        constants_1.FEATURE_MANAGED_HOSTING,
        constants_1.FEATURE_FREE_THEMES,
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED,
        constants_1.FEATURE_INSTALL_PLUGINS,
        constants_1.WPCOM_FEATURES_INSTALL_PURCHASED_PLUGINS,
        constants_1.FEATURE_PREMIUM_SUPPORT,
        constants_1.FEATURE_WOOCOMMERCE,
        constants_1.FEATURE_50GB_STORAGE,
        constants_1.FEATURE_NO_ADS,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_UNLIMITED_ADMINS,
        constants_1.FEATURE_VIDEO_UPLOADS,
        constants_1.FEATURE_PAYMENT_BLOCKS,
        constants_1.FEATURE_SOCIAL_MEDIA_TOOLS,
        constants_1.FEATURE_TITAN_EMAIL,
        constants_1.FEATURE_MONETISE,
        constants_1.FEATURE_SFTP_DATABASE,
        constants_1.FEATURE_SITE_BACKUPS_AND_RESTORE,
        constants_1.FEATURE_JETPACK_ESSENTIAL,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
    ],
    getIncludedFeatures: () => [
        constants_1.FEATURE_ADVANCED_SEO_EXPANDED_ABBR,
        constants_1.FEATURE_AUDIO_UPLOADS,
        constants_1.FEATURE_COLLECT_PAYMENTS_V2,
        constants_1.FEATURE_EARN_AD,
        constants_1.FEATURE_EMAIL_FORWARDING_EXTENDED_LIMIT,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_GOOGLE_MY_BUSINESS,
        constants_1.FEATURE_HOSTING,
        constants_1.FEATURE_ADVANCED_DESIGN_CUSTOMIZATION,
        constants_1.FEATURE_MEMBERSHIPS,
        constants_1.FEATURE_NO_BRANDING,
        constants_1.FEATURE_REPUBLICIZE,
        constants_1.FEATURE_PREMIUM_CONTENT_BLOCK,
        constants_1.FEATURE_SEO_PREVIEW_TOOLS,
        constants_1.FEATURE_SFTP_DATABASE,
        constants_1.FEATURE_SITE_BACKUPS_AND_RESTORE,
        constants_1.FEATURE_UPLOAD_PLUGINS,
        constants_1.FEATURE_UPLOAD_THEMES,
        constants_1.FEATURE_UPLOAD_THEMES_PLUGINS,
        constants_1.WPCOM_FEATURES_ATOMIC,
        constants_1.WPCOM_FEATURES_SCAN,
        constants_1.WPCOM_FEATURES_ANTISPAM,
        constants_1.WPCOM_FEATURES_BACKUPS,
    ],
    getPlanCancellationDescription: () => i18n_calypso_1.default.translate('Heads up — you are currently on a legacy plan that is no longer available for new subscribers. ' +
        'Your Pro plan includes access to all the most popular features WordPress.com has to offer, ' +
        'including premium themes and access to over 50,000 plugins. As an existing Pro plan subscriber, ' +
        'you can keep your site on this legacy plan as long as your subscription remains active. ' +
        'If canceled, the WordPress.com Pro plan can no longer be added to your account.'),
});
// The following is not a real plan, we are adding it here so that
// Woo Express Plus gets its own column in the plans grid.
const getPlanWooExpressPlusDetails = () => ({
    ...getDotcomPlanDetails(),
    group: constants_1.GROUP_WPCOM,
    type: constants_1.TYPE_WOO_EXPRESS_PLUS,
    getTitle: () => i18n_calypso_1.default.translate('Plus'),
    getPlanTagline: () => i18n_calypso_1.default.translate('For fast-growing businesses that need access to the most powerful tools.'),
    getDescription: () => '',
    get2023PricingGridSignupWpcomFeatures: () => [],
    get2023PricingGridSignupJetpackFeatures: () => [],
});
// The following is not a real plan, we are adding it here so that
// VIP (a.k.a Enterprise) gets its own column in the plans grid.
// Check pdgrnI-1Qp-p2 for more details.
const get2023EnterprisGrideDetails = () => ({
    ...getDotcomPlanDetails(),
    group: constants_1.GROUP_WPCOM,
    type: constants_1.TYPE_ENTERPRISE_GRID_WPCOM,
    getTitle: () => i18n_calypso_1.default.translate('Enterprise'),
    getAudience: () => i18n_calypso_1.default.translate('Best for enterprises'),
    getPlanTagline: () => i18n_calypso_1.default.translate('Level up to bespoke Enterprise-grade performance and security.'),
    getDescription: () => '',
    get2023PricingGridSignupWpcomFeatures: () => [],
    get2023PricingGridSignupJetpackFeatures: () => [],
});
const getJetpackPersonalDetails = () => ({
    group: constants_1.GROUP_JETPACK,
    type: constants_1.TYPE_PERSONAL,
    getTitle: () => i18n_calypso_1.default.translate('Personal'),
    availableFor: (plan) => [constants_1.PLAN_JETPACK_FREE].includes(plan),
    getDescription: () => i18n_calypso_1.default.translate('{{strong}}Best for personal use:{{/strong}} Security essentials for your WordPress site, including ' +
        'automated backups and priority support.', plansDescriptionHeadingComponent),
    getTagline: () => i18n_calypso_1.default.translate('Your data is being securely backed up and you have access to priority support.'),
    getPlanCardFeatures: () => [constants_1.FEATURE_BACKUP_DAILY_V2, constants_1.FEATURE_ANTISPAM_V2],
    getBillingTimeFrame: () => i18n_calypso_1.default.translate('per year'),
    getIncludedFeatures: () => [
        constants_1.FEATURE_OFFSITE_BACKUP_VAULTPRESS_DAILY,
        constants_1.FEATURE_BACKUP_ARCHIVE_30,
        constants_1.FEATURE_BACKUP_STORAGE_SPACE_UNLIMITED,
        constants_1.FEATURE_AUTOMATED_RESTORES,
        constants_1.FEATURE_SPAM_AKISMET_PLUS,
        constants_1.FEATURE_EASY_SITE_MIGRATION,
        constants_1.FEATURE_PREMIUM_SUPPORT,
        constants_1.FEATURE_JETPACK_BACKUP_DAILY,
        constants_1.FEATURE_JETPACK_BACKUP_DAILY_MONTHLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_BI_YEARLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_MONTHLY,
        constants_1.FEATURE_SEO_PREVIEW_TOOLS,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_OFFSITE_BACKUP_VAULTPRESS_DAILY,
        constants_1.FEATURE_SPAM_AKISMET_PLUS,
        constants_1.FEATURE_ACTIVITY_LOG,
        constants_1.FEATURE_PREMIUM_SUPPORT,
        constants_1.FEATURE_ALL_FREE_FEATURES_JETPACK,
        constants_1.WPCOM_FEATURES_ANTISPAM,
        constants_1.WPCOM_FEATURES_BACKUPS,
    ],
});
const getJetpackPremiumDetails = () => ({
    group: constants_1.GROUP_JETPACK,
    type: constants_1.TYPE_PREMIUM,
    availableFor: (plan) => [constants_1.PLAN_JETPACK_FREE, constants_1.PLAN_JETPACK_PERSONAL, constants_1.PLAN_JETPACK_PERSONAL_MONTHLY].includes(plan),
    getTitle: () => i18n_calypso_1.default.translate('Premium'),
    getDescription: () => i18n_calypso_1.default.translate('{{strong}}Best for small businesses:{{/strong}} Comprehensive, automated scanning for security vulnerabilities, ' +
        'fast video hosting, and marketing automation.', plansDescriptionHeadingComponent),
    getTagline: () => i18n_calypso_1.default.translate('Your site is being secured and you have access to marketing tools and priority support.'),
    getPlanCardFeatures: () => [constants_1.FEATURE_BACKUP_DAILY_V2, constants_1.FEATURE_SCAN_V2, constants_1.FEATURE_ANTISPAM_V2],
    getIncludedFeatures: () => compact([
        // pay attention to ordering, shared features should align on /plan page
        constants_1.FEATURE_OFFSITE_BACKUP_VAULTPRESS_DAILY,
        constants_1.FEATURE_BACKUP_ARCHIVE_30,
        constants_1.FEATURE_BACKUP_STORAGE_SPACE_UNLIMITED,
        constants_1.FEATURE_AUTOMATED_RESTORES,
        constants_1.FEATURE_SPAM_AKISMET_PLUS,
        constants_1.FEATURE_EASY_SITE_MIGRATION,
        constants_1.FEATURE_PREMIUM_SUPPORT,
        constants_1.FEATURE_REPUBLICIZE,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_VIDEO_UPLOADS_JETPACK_PRO,
        constants_1.FEATURE_MALWARE_SCANNING_DAILY,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_JETPACK_BACKUP_DAILY,
        constants_1.FEATURE_JETPACK_BACKUP_DAILY_MONTHLY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY_MONTHLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_BI_YEARLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_MONTHLY,
        constants_1.FEATURE_JETPACK_VIDEOPRESS_BI_YEARLY,
        constants_1.FEATURE_JETPACK_VIDEOPRESS,
        constants_1.FEATURE_JETPACK_VIDEOPRESS_MONTHLY,
        constants_1.FEATURE_SEO_PREVIEW_TOOLS,
        constants_1.FEATURE_OFFSITE_BACKUP_VAULTPRESS_DAILY,
        constants_1.FEATURE_SPAM_AKISMET_PLUS,
        constants_1.FEATURE_MALWARE_SCANNING_DAILY,
        constants_1.FEATURE_AUTOMATIC_SECURITY_FIXES,
        constants_1.FEATURE_VIDEO_UPLOADS_JETPACK_PRO,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_ALL_FREE_FEATURES_JETPACK,
        constants_1.WPCOM_FEATURES_SCAN,
        constants_1.WPCOM_FEATURES_ANTISPAM,
        constants_1.WPCOM_FEATURES_BACKUPS,
    ]),
});
const getJetpackBusinessDetails = () => ({
    group: constants_1.GROUP_JETPACK,
    type: constants_1.TYPE_BUSINESS,
    getTitle: () => i18n_calypso_1.default.translate('Professional'),
    availableFor: (plan) => [
        constants_1.PLAN_JETPACK_FREE,
        constants_1.PLAN_JETPACK_PREMIUM,
        constants_1.PLAN_JETPACK_PREMIUM_MONTHLY,
        constants_1.PLAN_JETPACK_PERSONAL,
        constants_1.PLAN_JETPACK_PERSONAL_MONTHLY,
    ].includes(plan),
    getDescription: () => (0, calypso_config_1.isEnabled)('themes/premium')
        ? i18n_calypso_1.default.translate('{{strong}}Best for organizations:{{/strong}} The most powerful WordPress sites.', plansDescriptionHeadingComponent)
        : i18n_calypso_1.default.translate('{{strong}}Best for organizations:{{/strong}} The most powerful WordPress sites: real-time backups ' +
            'and premium themes.', plansDescriptionHeadingComponent),
    getTagline: () => i18n_calypso_1.default.translate('You have the full suite of security and performance tools.'),
    getPlanCardFeatures: () => [
        constants_1.FEATURE_BACKUP_REALTIME_V2,
        constants_1.FEATURE_PRODUCT_SCAN_REALTIME_V2,
        constants_1.FEATURE_ANTISPAM_V2,
    ],
    getIncludedFeatures: () => compact([
        // pay attention to ordering, shared features should align on /plan page
        constants_1.FEATURE_OFFSITE_BACKUP_VAULTPRESS_REALTIME,
        constants_1.FEATURE_BACKUP_ARCHIVE_UNLIMITED,
        constants_1.FEATURE_BACKUP_STORAGE_SPACE_UNLIMITED,
        constants_1.FEATURE_AUTOMATED_RESTORES,
        constants_1.FEATURE_SPAM_AKISMET_PLUS,
        constants_1.FEATURE_EASY_SITE_MIGRATION,
        constants_1.FEATURE_PREMIUM_SUPPORT,
        constants_1.FEATURE_REPUBLICIZE,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_VIDEO_UPLOADS_JETPACK_PRO,
        constants_1.FEATURE_MALWARE_SCANNING_DAILY_AND_ON_DEMAND,
        constants_1.FEATURE_ONE_CLICK_THREAT_RESOLUTION,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_JETPACK_BACKUP_REALTIME,
        constants_1.FEATURE_JETPACK_BACKUP_REALTIME_MONTHLY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY_MONTHLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_BI_YEARLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_MONTHLY,
        constants_1.FEATURE_JETPACK_VIDEOPRESS_BI_YEARLY,
        constants_1.FEATURE_JETPACK_VIDEOPRESS,
        constants_1.FEATURE_JETPACK_VIDEOPRESS_MONTHLY,
        constants_1.FEATURE_SEO_PREVIEW_TOOLS,
        constants_1.FEATURE_OFFSITE_BACKUP_VAULTPRESS_REALTIME,
        (0, calypso_config_1.isEnabled)('themes/premium') ? constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED : null,
        constants_1.FEATURE_ALL_PREMIUM_FEATURES_JETPACK,
        constants_1.WPCOM_FEATURES_SCAN,
        constants_1.WPCOM_FEATURES_ANTISPAM,
        constants_1.WPCOM_FEATURES_BACKUPS,
        (0, calypso_config_1.isEnabled)('stats/paid-wpcom-v3') ? constants_1.FEATURE_STATS_COMMERCIAL : constants_1.FEATURE_STATS_PAID,
    ]),
    getInferiorFeatures: () => [constants_1.FEATURE_JETPACK_BACKUP_DAILY, constants_1.FEATURE_JETPACK_BACKUP_DAILY_MONTHLY],
});
const getPlanJetpackSecurityDailyDetails = () => ({
    group: constants_1.GROUP_JETPACK,
    type: constants_1.TYPE_SECURITY_DAILY,
    getTitle: () => (0, i18n_calypso_1.translate)('Security {{em}}Daily{{/em}}', { components: { em: (0, jsx_runtime_1.jsx)("em", {}) } }),
    availableFor: (plan) => [constants_1.PLAN_JETPACK_FREE, ...constants_1.JETPACK_LEGACY_PLANS].includes(plan),
    getDescription: () => (0, i18n_calypso_1.translate)('All of the essential Jetpack Security features in one package including VaultPress Backup, Scan, Akismet Anti-spam and more.'),
    getTagline: () => (0, i18n_calypso_1.translate)('Best for sites with occasional updates'),
    getPlanCardFeatures: () => [
        constants_1.FEATURE_PRODUCT_BACKUP_DAILY_V2,
        constants_1.FEATURE_PRODUCT_SCAN_DAILY_V2,
        constants_1.FEATURE_ANTISPAM_V2,
        constants_1.FEATURE_WAF,
    ],
    getIncludedFeatures: () => [
        constants_1.FEATURE_JETPACK_BACKUP_DAILY,
        constants_1.FEATURE_JETPACK_BACKUP_DAILY_MONTHLY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY_MONTHLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_BI_YEARLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_MONTHLY,
        constants_1.FEATURE_BACKUP_ARCHIVE_30,
        constants_1.FEATURE_REPUBLICIZE,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_SEO_PREVIEW_TOOLS,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_PREMIUM_SUPPORT,
        constants_1.WPCOM_FEATURES_SCAN,
        constants_1.WPCOM_FEATURES_ANTISPAM,
        constants_1.WPCOM_FEATURES_BACKUPS,
    ],
});
const getPlanJetpackSecurityRealtimeDetails = () => ({
    group: constants_1.GROUP_JETPACK,
    type: constants_1.TYPE_SECURITY_REALTIME,
    getTitle: () => (0, i18n_calypso_1.translate)('Security {{em}}Real-time{{/em}}', {
        components: { em: (0, jsx_runtime_1.jsx)("em", { style: { whiteSpace: 'nowrap' } }) },
    }),
    availableFor: (plan) => [
        constants_1.PLAN_JETPACK_FREE,
        constants_1.PLAN_JETPACK_SECURITY_DAILY,
        constants_1.PLAN_JETPACK_SECURITY_DAILY_MONTHLY,
        ...constants_1.JETPACK_LEGACY_PLANS,
    ].includes(plan),
    getDescription: () => (0, i18n_calypso_1.translate)('Get next-level protection with real-time backups, real-time scan and all essential security tools.'),
    getTagline: () => (0, i18n_calypso_1.translate)('Best for sites with frequent updates'),
    getPlanCardFeatures: () => [
        constants_1.FEATURE_PLAN_SECURITY_DAILY,
        constants_1.FEATURE_PRODUCT_BACKUP_REALTIME_V2,
        constants_1.FEATURE_PRODUCT_SCAN_REALTIME_V2,
        constants_1.FEATURE_ACTIVITY_LOG_1_YEAR_V2,
    ],
    getIncludedFeatures: () => [
        constants_1.FEATURE_JETPACK_BACKUP_REALTIME,
        constants_1.FEATURE_JETPACK_BACKUP_REALTIME_MONTHLY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY_MONTHLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_BI_YEARLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_MONTHLY,
        constants_1.FEATURE_BACKUP_ARCHIVE_UNLIMITED,
        constants_1.FEATURE_VIDEO_UPLOADS_JETPACK_PRO,
        constants_1.FEATURE_REPUBLICIZE,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_SEO_PREVIEW_TOOLS,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_PREMIUM_SUPPORT,
        constants_1.WPCOM_FEATURES_SCAN,
        constants_1.WPCOM_FEATURES_ANTISPAM,
        constants_1.WPCOM_FEATURES_BACKUPS,
    ],
    getInferiorFeatures: () => [
        constants_1.FEATURE_JETPACK_BACKUP_DAILY,
        constants_1.FEATURE_JETPACK_BACKUP_DAILY_MONTHLY,
        constants_1.FEATURE_BACKUP_ARCHIVE_30,
    ],
});
const getPlanJetpackSecurityT1Details = () => ({
    ...getJetpackCommonPlanDetails(),
    group: constants_1.GROUP_JETPACK,
    type: constants_1.TYPE_SECURITY_T1,
    getTitle: () => (0, i18n_calypso_1.translate)('Security', { context: 'Jetpack product name' }),
    availableFor: (plan) => [constants_1.PLAN_JETPACK_FREE, ...constants_1.JETPACK_LEGACY_PLANS].includes(plan),
    getDescription: () => (0, i18n_calypso_1.translate)('Easy-to-use, comprehensive WordPress site security including backups, malware scanning, and spam protection.'),
    getFeaturedDescription: () => (0, i18n_calypso_1.translate)('Comprehensive site security made simple.{{br}}{{/br}}{{br}}{{/br}}This bundle includes:{{ul}}{{li}}VaultPress Backup (10GB){{/li}}{{li}}Scan{{/li}}{{li}}Akismet Anti-spam (10k API calls/mo){{/li}}{{/ul}}', {
        components: {
            br: (0, jsx_runtime_1.jsx)("br", {}),
            ul: (0, jsx_runtime_1.jsx)("ul", {}),
            li: (0, jsx_runtime_1.jsx)("li", {}),
        },
        comment: '{{ul}}{{ul/}} represents an unordered list, and {{li}}{/li} represents a list item',
    }),
    getLightboxDescription: () => (0, i18n_calypso_1.translate)('Easy-to-use, comprehensive WordPress site security including backups, malware scanning, and spam protection.{{br/}}Includes VaultPress Backup, Jetpack Scan, and Akismet Anti-spam.', {
        components: {
            br: (0, jsx_runtime_1.jsx)("br", {}),
        },
        comment: '{{br/}} represents a line break',
    }),
    getPlanCardFeatures: () => [
        constants_1.FEATURE_JETPACK_PRODUCT_BACKUP,
        constants_1.FEATURE_JETPACK_REAL_TIME_MALWARE_SCANNING,
        constants_1.FEATURE_ANTISPAM_V2,
        constants_1.FEATURE_WAF,
        constants_1.FEATURE_JETPACK_30_DAY_ARCHIVE_ACTIVITY_LOG,
    ],
    getIncludedFeatures: () => [
        constants_1.FEATURE_JETPACK_BACKUP_T1_BI_YEARLY,
        constants_1.FEATURE_JETPACK_BACKUP_T1_YEARLY,
        constants_1.FEATURE_JETPACK_BACKUP_T1_MONTHLY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY_MONTHLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_BI_YEARLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_MONTHLY,
        constants_1.FEATURE_BACKUP_ARCHIVE_UNLIMITED,
        constants_1.FEATURE_VIDEO_UPLOADS_JETPACK_PRO,
        constants_1.FEATURE_REPUBLICIZE,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_SEO_PREVIEW_TOOLS,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_PREMIUM_SUPPORT,
        constants_1.WPCOM_FEATURES_SCAN,
        constants_1.WPCOM_FEATURES_ANTISPAM,
        constants_1.WPCOM_FEATURES_BACKUPS,
    ],
    getBenefits: () => [
        (0, i18n_calypso_1.translate)('Protect your revenue stream and content'),
        (0, i18n_calypso_1.translate)('Learn about issues before your customers are impacted'),
        (0, i18n_calypso_1.translate)('Restore your site in one click from desktop or mobile'),
        (0, i18n_calypso_1.translate)('Fix your site without a developer'),
        (0, i18n_calypso_1.translate)('Protect Woo order and customer data'),
        (0, i18n_calypso_1.translate)('Save time manually reviewing spam'),
        (0, i18n_calypso_1.translate)('Best-in-class support from WordPress experts'),
    ],
    getInferiorFeatures: () => [constants_1.FEATURE_JETPACK_BACKUP_DAILY, constants_1.FEATURE_JETPACK_BACKUP_DAILY_MONTHLY],
});
const getPlanJetpackSecurityT2Details = () => ({
    ...getPlanJetpackSecurityT1Details(),
    type: constants_1.TYPE_SECURITY_T2,
    getPlanCardFeatures: () => [
        constants_1.FEATURE_PLAN_SECURITY_DAILY,
        constants_1.FEATURE_PRODUCT_BACKUP_REALTIME_V2,
        constants_1.FEATURE_PRODUCT_SCAN_REALTIME_V2,
        constants_1.FEATURE_WAF,
        constants_1.FEATURE_JETPACK_1_YEAR_ARCHIVE_ACTIVITY_LOG,
    ],
    getIncludedFeatures: () => [
        constants_1.FEATURE_JETPACK_BACKUP_T2_YEARLY,
        constants_1.FEATURE_JETPACK_BACKUP_T2_MONTHLY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY_MONTHLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_BI_YEARLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_MONTHLY,
        constants_1.FEATURE_BACKUP_ARCHIVE_UNLIMITED,
        constants_1.FEATURE_VIDEO_UPLOADS_JETPACK_PRO,
        constants_1.FEATURE_REPUBLICIZE,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_SEO_PREVIEW_TOOLS,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_PREMIUM_SUPPORT,
        constants_1.WPCOM_FEATURES_SCAN,
        constants_1.WPCOM_FEATURES_ANTISPAM,
        constants_1.WPCOM_FEATURES_BACKUPS,
    ],
    getInferiorFeatures: () => [
        constants_1.FEATURE_JETPACK_BACKUP_DAILY,
        constants_1.FEATURE_JETPACK_BACKUP_DAILY_MONTHLY,
        constants_1.FEATURE_BACKUP_ARCHIVE_30,
    ],
});
const getPlanJetpackCompleteDetails = () => ({
    ...getJetpackCommonPlanDetails(),
    group: constants_1.GROUP_JETPACK,
    type: constants_1.TYPE_ALL,
    getTitle: () => (0, i18n_calypso_1.translate)('Complete', {
        context: 'Jetpack plan name',
    }),
    availableFor: (plan) => [constants_1.PLAN_JETPACK_FREE, ...constants_1.JETPACK_SECURITY_PLANS, ...constants_1.JETPACK_LEGACY_PLANS].includes(plan),
    getDescription: () => (0, i18n_calypso_1.translate)('Get the full power of Jetpack with all Security, Performance, Growth, and Design tools.'),
    getFeaturedDescription: () => (0, i18n_calypso_1.translate)('Get the full Jetpack suite with real-time security tools, improved site performance, and tools to grow your business.'),
    getLightboxDescription: () => (0, i18n_calypso_1.translate)('Full Jetpack suite with real-time security, instant site search, ad-free video, all CRM extensions, and extra storage for backups and video.'),
    getTagline: () => (0, i18n_calypso_1.translate)('For best-in-class WordPress sites'),
    getPlanCardFeatures: () => [
        constants_1.FEATURE_JETPACK_ALL_BACKUP_SECURITY_FEATURES,
        constants_1.FEATURE_JETPACK_1TB_BACKUP_STORAGE,
        constants_1.FEATURE_JETPACK_PRODUCT_VIDEOPRESS,
        constants_1.FEATURE_PRODUCT_SEARCH_V2,
        constants_1.FEATURE_CRM_V2,
        constants_1.FEATURE_JETPACK_1_YEAR_ARCHIVE_ACTIVITY_LOG,
    ],
    getIncludedFeatures: () => compact([
        constants_1.FEATURE_JETPACK_BACKUP_T2_YEARLY,
        constants_1.FEATURE_JETPACK_BACKUP_T2_MONTHLY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY_MONTHLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_BI_YEARLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_MONTHLY,
        constants_1.FEATURE_JETPACK_SEARCH_BI_YEARLY,
        constants_1.FEATURE_JETPACK_SEARCH,
        constants_1.FEATURE_JETPACK_SEARCH_MONTHLY,
        constants_1.FEATURE_JETPACK_CRM,
        constants_1.FEATURE_JETPACK_CRM_MONTHLY,
        constants_1.FEATURE_BACKUP_ARCHIVE_UNLIMITED,
        constants_1.FEATURE_VIDEO_UPLOADS_JETPACK_PRO,
        constants_1.FEATURE_JETPACK_BOOST_BI_YEARLY,
        constants_1.FEATURE_JETPACK_BOOST,
        constants_1.FEATURE_JETPACK_BOOST_MONTHLY,
        constants_1.FEATURE_JETPACK_SOCIAL_ADVANCED_BI_YEARLY,
        constants_1.FEATURE_JETPACK_SOCIAL_ADVANCED,
        constants_1.FEATURE_JETPACK_SOCIAL_ADVANCED_MONTHLY,
        constants_1.FEATURE_JETPACK_VIDEOPRESS_BI_YEARLY,
        constants_1.FEATURE_JETPACK_VIDEOPRESS,
        constants_1.FEATURE_JETPACK_VIDEOPRESS_MONTHLY,
        constants_1.FEATURE_CLOUD_CRITICAL_CSS,
        constants_1.FEATURE_REPUBLICIZE,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_SEO_PREVIEW_TOOLS,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        (0, calypso_config_1.isEnabled)('themes/premium') ? constants_1.WPCOM_FEATURES_PREMIUM_THEMES_UNLIMITED : null,
        constants_1.FEATURE_PREMIUM_SUPPORT,
        constants_1.WPCOM_FEATURES_SCAN,
        constants_1.WPCOM_FEATURES_ANTISPAM,
        constants_1.WPCOM_FEATURES_BACKUPS,
        (0, calypso_config_1.isEnabled)('stats/paid-wpcom-v3') ? constants_1.FEATURE_STATS_COMMERCIAL : constants_1.FEATURE_STATS_PAID,
    ]),
    getInferiorFeatures: () => [
        constants_1.FEATURE_JETPACK_BACKUP_DAILY,
        constants_1.FEATURE_JETPACK_BACKUP_DAILY_MONTHLY,
        constants_1.FEATURE_BACKUP_ARCHIVE_30,
        constants_1.FEATURE_JETPACK_SOCIAL_BASIC_BI_YEARLY,
        constants_1.FEATURE_JETPACK_SOCIAL_BASIC,
        constants_1.FEATURE_JETPACK_SOCIAL_BASIC_MONTHLY,
    ],
    getBenefits: () => [
        (0, i18n_calypso_1.translate)('Protect your revenue stream and content'),
        (0, i18n_calypso_1.translate)('Learn about issues before your customers are impacted'),
        (0, i18n_calypso_1.translate)('Restore your site in one click from desktop or mobile'),
        (0, i18n_calypso_1.translate)('Fix your site without a developer'),
        (0, i18n_calypso_1.translate)('Protect Woo order and customer data'),
        (0, i18n_calypso_1.translate)('Save time manually reviewing spam'),
        (0, i18n_calypso_1.translate)('Grow your business with video, social, and CRM tools'),
        (0, i18n_calypso_1.translate)('Best-in-class support from WordPress experts'),
    ],
});
const getPlanJetpackStarterDetails = () => ({
    ...getJetpackCommonPlanDetails(),
    group: constants_1.GROUP_JETPACK,
    type: constants_1.TYPE_JETPACK_STARTER,
    getTitle: () => (0, i18n_calypso_1.translate)('Starter', { context: 'Jetpack product name' }),
    availableFor: (plan) => [constants_1.PLAN_JETPACK_FREE, ...constants_1.JETPACK_LEGACY_PLANS].includes(plan),
    getTagline: () => (0, i18n_calypso_1.translate)('Essential security tools: real-time backups and comment spam protection.'),
    getDescription: () => (0, i18n_calypso_1.translate)('Essential security tools: real-time backups and comment spam protection.'),
    getFeaturedDescription: () => (0, i18n_calypso_1.translate)('This bundle includes:{{ul}}{{li}}VaultPress Backup (1GB){{/li}}{{li}}Akismet Anti-spam (1k API calls/mo){{/li}}{{/ul}}', {
        components: {
            ul: (0, jsx_runtime_1.jsx)("ul", {}),
            li: (0, jsx_runtime_1.jsx)("li", {}),
        },
        comment: '{{ul}}{{ul/}} represents an unordered list, and {{li}}{/li} represents a list item',
    }),
    getRecommendedFor: () => [
        { tag: constants_1.JETPACK_TAG_FOR_SMALL_SITES, label: (0, i18n_calypso_1.translate)('Small sites') },
        { tag: constants_1.JETPACK_TAG_FOR_BLOGS, label: (0, i18n_calypso_1.translate)('Blogs') },
    ],
    getLightboxDescription: () => (0, i18n_calypso_1.translate)('Essential security tools: real-time backups and comment spam protection.'),
    getPlanCardFeatures: () => [constants_1.FEATURE_JETPACK_PRODUCT_BACKUP, constants_1.FEATURE_ANTISPAM_V2],
    getIncludedFeatures: () => [
        constants_1.FEATURE_JETPACK_BACKUP_T0_YEARLY,
        constants_1.FEATURE_JETPACK_BACKUP_T0_MONTHLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_BI_YEARLY,
        constants_1.FEATURE_JETPACK_ANTI_SPAM,
        constants_1.FEATURE_JETPACK_ANTI_SPAM_MONTHLY,
        constants_1.FEATURE_BACKUP_ARCHIVE_UNLIMITED,
        constants_1.FEATURE_VIDEO_UPLOADS_JETPACK_PRO,
        constants_1.FEATURE_REPUBLICIZE,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_SEO_PREVIEW_TOOLS,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_PREMIUM_SUPPORT,
        constants_1.WPCOM_FEATURES_ANTISPAM,
        constants_1.WPCOM_FEATURES_BACKUPS,
    ],
    getBenefits: () => [
        (0, i18n_calypso_1.translate)('Protect your revenue stream and content'),
        (0, i18n_calypso_1.translate)('Restore your site in one click from desktop or mobile'),
        (0, i18n_calypso_1.translate)('Fix your site without a developer'),
        (0, i18n_calypso_1.translate)('Protect Woo order and customer data'),
        (0, i18n_calypso_1.translate)('Save time manually reviewing spam'),
        (0, i18n_calypso_1.translate)('Best-in-class support from WordPress experts'),
    ],
    getInferiorFeatures: () => [constants_1.FEATURE_JETPACK_BACKUP_DAILY, constants_1.FEATURE_JETPACK_BACKUP_DAILY_MONTHLY],
});
const getPlanJetpackGrowthDetails = () => ({
    ...getJetpackCommonPlanDetails(),
    group: constants_1.GROUP_JETPACK,
    type: constants_1.TYPE_JETPACK_GROWTH,
    getTitle: () => (0, i18n_calypso_1.translate)('Growth', { context: 'Jetpack product name' }),
    getDescription: () => (0, i18n_calypso_1.translate)('Grow your audience effortlessly.'),
    availableFor: (plan) => [constants_1.PLAN_JETPACK_FREE, ...constants_1.JETPACK_LEGACY_PLANS].includes(plan),
    getRecommendedFor: () => [
        { tag: constants_1.JETPACK_TAG_FOR_WOOCOMMERCE_STORES, label: (0, i18n_calypso_1.translate)('WooCommerce Stores') },
        { tag: constants_1.JETPACK_TAG_FOR_MEMBERSHIP_SITES, label: (0, i18n_calypso_1.translate)('Membership sites') },
        { tag: constants_1.JETPACK_TAG_FOR_BLOGGERS, label: (0, i18n_calypso_1.translate)('Bloggers') },
    ],
    getFeaturedDescription: () => (0, i18n_calypso_1.translate)('Grow your audience effortlessly.{{br}}{{/br}}{{br}}{{/br}}This bundle includes:{{ul}}{{li}}Stats (10k site views - upgradeable){{/li}}{{li}}Social{{/li}}{{li}}Newsletter and monetization tools{{/li}}{{/ul}}', {
        components: {
            br: (0, jsx_runtime_1.jsx)("br", {}),
            ul: (0, jsx_runtime_1.jsx)("ul", {}),
            li: (0, jsx_runtime_1.jsx)("li", {}),
        },
        comment: '{{ul}}{{ul/}} represents an unordered list, and {{li}}{/li} represents a list item',
    }),
    getTagline: () => (0, i18n_calypso_1.translate)('Essential tools to help you grow your audience, track visitor engagement, and turn leads into loyal customers and advocates.'),
    getLightboxDescription: () => (0, i18n_calypso_1.translate)('Essential tools to help you grow your audience, track visitor engagement, and turn leads into loyal customers and advocates.'),
    getPlanCardFeatures: () => [
        constants_1.FEATURE_JETPACK_SOCIAL_V1_MONTHLY,
        (0, calypso_config_1.isEnabled)('stats/paid-wpcom-v3') ? constants_1.FEATURE_STATS_COMMERCIAL : constants_1.FEATURE_STATS_PAID,
    ],
    getIncludedFeatures: () => [
        constants_1.FEATURE_EARN_AD,
        constants_1.FEATURE_UNLIMITED_SUBSCRIBERS,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
    ],
    getWhatIsIncluded: () => [
        (0, i18n_calypso_1.translate)('40+ Jetpack blocks'),
        (0, i18n_calypso_1.translate)('Display ads with WordAds'),
        (0, i18n_calypso_1.translate)('Pay with PayPal'),
        (0, i18n_calypso_1.translate)('Paid content gating'),
        (0, i18n_calypso_1.translate)('Paywall access'),
        (0, i18n_calypso_1.translate)('Newsletter'),
        (0, i18n_calypso_1.translate)('Priority support'),
    ],
    getBenefits: () => [
        (0, i18n_calypso_1.translate)('Quickly create content that stands out'),
        (0, i18n_calypso_1.translate)('Grow your subscribers with simple subscribe forms'),
        (0, i18n_calypso_1.translate)('Create content for paid subscribers'),
        (0, i18n_calypso_1.translate)('Sell access to premium content'),
        (0, i18n_calypso_1.translate)('Easily accept tips and donations'),
    ],
});
const getPlanJetpackGoldenTokenDetails = () => ({
    group: constants_1.GROUP_JETPACK,
    type: constants_1.TYPE_GOLDEN_TOKEN,
    getTitle: () => (0, i18n_calypso_1.translate)('Golden Token', {
        context: 'The name of a Jetpack plan awarded to amazing WordPress sites',
    }),
    availableFor: (plan) => [constants_1.PLAN_JETPACK_FREE, ...constants_1.JETPACK_LEGACY_PLANS].includes(plan),
    getDescription: () => (0, i18n_calypso_1.translate)('The Golden Token provides a lifetime license for Backup and Scan.'),
    getTagline: () => (0, i18n_calypso_1.translate)('A lifetime of Jetpack powers for your website'),
    getPlanCardFeatures: () => [
        constants_1.FEATURE_PRODUCT_BACKUP_REALTIME_V2,
        constants_1.FEATURE_PRODUCT_SCAN_REALTIME_V2,
        constants_1.FEATURE_ACTIVITY_LOG_1_YEAR_V2,
    ],
    getIncludedFeatures: () => [
        constants_1.FEATURE_JETPACK_BACKUP_REALTIME,
        constants_1.FEATURE_JETPACK_BACKUP_REALTIME_MONTHLY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY,
        constants_1.FEATURE_JETPACK_SCAN_DAILY_MONTHLY,
        constants_1.FEATURE_BACKUP_ARCHIVE_UNLIMITED,
        constants_1.FEATURE_VIDEO_UPLOADS_JETPACK_PRO,
        constants_1.FEATURE_REPUBLICIZE,
        constants_1.FEATURE_ADVANCED_SEO,
        constants_1.FEATURE_SEO_PREVIEW_TOOLS,
        constants_1.FEATURE_SIMPLE_PAYMENTS,
        constants_1.FEATURE_WORDADS_INSTANT,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_PREMIUM_SUPPORT,
        constants_1.WPCOM_FEATURES_SCAN,
        constants_1.WPCOM_FEATURES_BACKUPS,
    ],
    getInferiorFeatures: () => [
        constants_1.FEATURE_JETPACK_BACKUP_DAILY,
        constants_1.FEATURE_JETPACK_BACKUP_DAILY_MONTHLY,
        constants_1.FEATURE_BACKUP_ARCHIVE_30,
    ],
});
// DO NOT import. Use `getPlan` instead.
exports.PLANS_LIST = {
    [constants_1.PLAN_FREE]: {
        ...getPlanFreeDetails(),
        term: constants_1.TERM_ANNUALLY,
        getBillingTimeFrame: () => i18n_calypso_1.default.translate('No expiration date'),
        getProductId: () => 1,
        getStoreSlug: () => constants_1.PLAN_FREE,
        getPathSlug: () => 'beginner',
    },
    [constants_1.PLAN_BLOGGER]: {
        ...getPlanBloggerDetails(),
        term: constants_1.TERM_ANNUALLY,
        getBillingTimeFrame: WPComGetBillingTimeframe,
        availableFor: (plan) => [constants_1.PLAN_FREE].includes(plan),
        getProductId: () => 1010,
        getStoreSlug: () => constants_1.PLAN_BLOGGER,
        getPathSlug: () => 'blogger',
    },
    [constants_1.PLAN_BLOGGER_2_YEARS]: {
        ...getPlanBloggerDetails(),
        term: constants_1.TERM_BIENNIALLY,
        getBillingTimeFrame: WPComGetBiennialBillingTimeframe,
        availableFor: (plan) => [constants_1.PLAN_FREE, constants_1.PLAN_BLOGGER].includes(plan),
        getProductId: () => 1030,
        getStoreSlug: () => constants_1.PLAN_BLOGGER_2_YEARS,
        getPathSlug: () => 'blogger-2-years',
    },
    [constants_1.PLAN_PERSONAL_MONTHLY]: {
        ...getPlanPersonalDetails(),
        ...getMonthlyTimeframe(),
        availableFor: (plan) => [constants_1.PLAN_FREE, constants_1.PLAN_BLOGGER, constants_1.PLAN_BLOGGER_2_YEARS].includes(plan),
        getProductId: () => 1019,
        getStoreSlug: () => constants_1.PLAN_PERSONAL_MONTHLY,
        getPathSlug: () => 'personal-monthly',
    },
    [constants_1.PLAN_PERSONAL]: {
        ...getPlanPersonalDetails(),
        term: constants_1.TERM_ANNUALLY,
        getBillingTimeFrame: WPComGetBillingTimeframe,
        availableFor: (plan) => [constants_1.PLAN_FREE, constants_1.PLAN_BLOGGER, constants_1.PLAN_BLOGGER_2_YEARS, constants_1.PLAN_PERSONAL_MONTHLY].includes(plan),
        getProductId: () => 1009,
        getStoreSlug: () => constants_1.PLAN_PERSONAL,
        getPathSlug: () => 'personal',
    },
    [constants_1.PLAN_PERSONAL_2_YEARS]: {
        ...getPlanPersonalDetails(),
        term: constants_1.TERM_BIENNIALLY,
        getBillingTimeFrame: WPComGetBiennialBillingTimeframe,
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
        ].includes(plan),
        getProductId: () => 1029,
        getStoreSlug: () => constants_1.PLAN_PERSONAL_2_YEARS,
        getPathSlug: () => 'personal-2-years',
    },
    [constants_1.PLAN_PERSONAL_3_YEARS]: {
        ...getPlanPersonalDetails(),
        term: constants_1.TERM_TRIENNIALLY,
        getBillingTimeFrame: WPComGetTriennialBillingTimeframe,
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
            constants_1.PLAN_PERSONAL_2_YEARS,
        ].includes(plan),
        getProductId: () => 1049,
        getStoreSlug: () => constants_1.PLAN_PERSONAL_3_YEARS,
        getPathSlug: () => 'personal-3-years',
    },
    [constants_1.PLAN_PREMIUM_MONTHLY]: {
        ...getPlanPremiumDetails(),
        ...getMonthlyTimeframe(),
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
            constants_1.PLAN_PERSONAL_2_YEARS,
        ].includes(plan),
        getProductId: () => 1013,
        getStoreSlug: () => constants_1.PLAN_PREMIUM_MONTHLY,
        getPathSlug: () => 'premium-monthly',
    },
    [constants_1.PLAN_PREMIUM]: {
        ...getPlanPremiumDetails(),
        term: constants_1.TERM_ANNUALLY,
        getBillingTimeFrame: WPComGetBillingTimeframe,
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
            constants_1.PLAN_PERSONAL_2_YEARS,
            constants_1.PLAN_PREMIUM_MONTHLY,
            constants_1.PLAN_WPCOM_STARTER,
        ].includes(plan),
        getProductId: () => 1003,
        getStoreSlug: () => constants_1.PLAN_PREMIUM,
        getPathSlug: () => 'premium',
    },
    [constants_1.PLAN_PREMIUM_2_YEARS]: {
        ...getPlanPremiumDetails(),
        term: constants_1.TERM_BIENNIALLY,
        getBillingTimeFrame: WPComGetBiennialBillingTimeframe,
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
            constants_1.PLAN_PERSONAL_2_YEARS,
            constants_1.PLAN_PREMIUM_MONTHLY,
            constants_1.PLAN_PREMIUM,
        ].includes(plan),
        getProductId: () => 1023,
        getStoreSlug: () => constants_1.PLAN_PREMIUM_2_YEARS,
        getPathSlug: () => 'premium-2-years',
    },
    [constants_1.PLAN_PREMIUM_3_YEARS]: {
        ...getPlanPremiumDetails(),
        term: constants_1.TERM_TRIENNIALLY,
        getBillingTimeFrame: WPComGetTriennialBillingTimeframe,
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
            constants_1.PLAN_PERSONAL_2_YEARS,
            constants_1.PLAN_PERSONAL_3_YEARS,
            constants_1.PLAN_PREMIUM_MONTHLY,
            constants_1.PLAN_PREMIUM,
            constants_1.PLAN_PREMIUM_2_YEARS,
        ].includes(plan),
        getProductId: () => 1043,
        getStoreSlug: () => constants_1.PLAN_PREMIUM_3_YEARS,
        getPathSlug: () => 'premium-3-years',
    },
    [constants_1.PLAN_BUSINESS_MONTHLY]: {
        ...getPlanBusinessDetails(),
        ...getMonthlyTimeframe(),
        availableFor: (plan) => (0, calypso_config_1.isEnabled)('upgrades/wpcom-monthly-plans') &&
            [
                constants_1.PLAN_FREE,
                constants_1.PLAN_BLOGGER,
                constants_1.PLAN_BLOGGER_2_YEARS,
                constants_1.PLAN_PERSONAL_MONTHLY,
                constants_1.PLAN_PERSONAL,
                constants_1.PLAN_PERSONAL_2_YEARS,
                constants_1.PLAN_PREMIUM_MONTHLY,
                constants_1.PLAN_PREMIUM,
                constants_1.PLAN_PREMIUM_2_YEARS,
                constants_1.PLAN_WPCOM_PRO_MONTHLY,
                constants_1.PLAN_MIGRATION_TRIAL_MONTHLY,
                constants_1.PLAN_HOSTING_TRIAL_MONTHLY,
            ].includes(plan),
        getProductId: () => 1018,
        getStoreSlug: () => constants_1.PLAN_BUSINESS_MONTHLY,
        getPathSlug: () => 'business-monthly',
    },
    [constants_1.PLAN_BUSINESS]: {
        ...getPlanBusinessDetails(),
        term: constants_1.TERM_ANNUALLY,
        getBillingTimeFrame: WPComGetBillingTimeframe,
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_WPCOM_STARTER,
            constants_1.PLAN_WPCOM_PRO,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
            constants_1.PLAN_PERSONAL_2_YEARS,
            constants_1.PLAN_PREMIUM_MONTHLY,
            constants_1.PLAN_PREMIUM,
            constants_1.PLAN_PREMIUM_2_YEARS,
            constants_1.PLAN_BUSINESS_MONTHLY,
            constants_1.PLAN_WPCOM_PRO_MONTHLY,
            constants_1.PLAN_MIGRATION_TRIAL_MONTHLY,
            constants_1.PLAN_HOSTING_TRIAL_MONTHLY,
        ].includes(plan),
        getProductId: () => 1008,
        getStoreSlug: () => constants_1.PLAN_BUSINESS,
        getPathSlug: () => 'business',
    },
    [constants_1.PLAN_BUSINESS_2_YEARS]: {
        ...getPlanBusinessDetails(),
        term: constants_1.TERM_BIENNIALLY,
        getBillingTimeFrame: WPComGetBiennialBillingTimeframe,
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_WPCOM_STARTER,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
            constants_1.PLAN_PERSONAL_2_YEARS,
            constants_1.PLAN_PREMIUM_MONTHLY,
            constants_1.PLAN_PREMIUM,
            constants_1.PLAN_PREMIUM_2_YEARS,
            constants_1.PLAN_BUSINESS,
            constants_1.PLAN_BUSINESS_MONTHLY,
            constants_1.PLAN_WPCOM_PRO_MONTHLY,
            constants_1.PLAN_WPCOM_PRO,
            constants_1.PLAN_WPCOM_PRO_2_YEARS,
            constants_1.PLAN_MIGRATION_TRIAL_MONTHLY,
            constants_1.PLAN_HOSTING_TRIAL_MONTHLY,
        ].includes(plan),
        getProductId: () => 1028,
        getStoreSlug: () => constants_1.PLAN_BUSINESS_2_YEARS,
        getPathSlug: () => 'business-2-years',
    },
    [constants_1.PLAN_BUSINESS_3_YEARS]: {
        ...getPlanBusinessDetails(),
        term: constants_1.TERM_TRIENNIALLY,
        getBillingTimeFrame: WPComGetTriennialBillingTimeframe,
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_WPCOM_STARTER,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
            constants_1.PLAN_PERSONAL_2_YEARS,
            constants_1.PLAN_PERSONAL_3_YEARS,
            constants_1.PLAN_PREMIUM_MONTHLY,
            constants_1.PLAN_PREMIUM,
            constants_1.PLAN_PREMIUM_2_YEARS,
            constants_1.PLAN_PREMIUM_3_YEARS,
            constants_1.PLAN_BUSINESS,
            constants_1.PLAN_BUSINESS_MONTHLY,
            constants_1.PLAN_BUSINESS_2_YEARS,
            constants_1.PLAN_WPCOM_PRO_MONTHLY,
            constants_1.PLAN_WPCOM_PRO,
            constants_1.PLAN_WPCOM_PRO_2_YEARS,
            constants_1.PLAN_MIGRATION_TRIAL_MONTHLY,
            constants_1.PLAN_HOSTING_TRIAL_MONTHLY,
        ].includes(plan),
        getProductId: () => 1048,
        getStoreSlug: () => constants_1.PLAN_BUSINESS_3_YEARS,
        getPathSlug: () => 'business-3-years',
    },
    [constants_1.PLAN_100_YEARS]: {
        ...getPlanBusinessDetails(),
        term: constants_1.TERM_CENTENNIALLY,
        group: constants_1.GROUP_WPCOM,
        type: constants_1.TYPE_100_YEAR,
        // Todo: ¯\_(ツ)_/¯ on the copy.
        getTitle: () => i18n_calypso_1.default.translate('100-Year Plan'),
        getAudience: () => i18n_calypso_1.default.translate('Best for long-term thinkers'),
        getBlogAudience: () => i18n_calypso_1.default.translate('Best for long-term thinkers'),
        getPortfolioAudience: () => i18n_calypso_1.default.translate('Best for long-term thinkers'),
        getStoreAudience: () => i18n_calypso_1.default.translate('Best for long-term thinkers'),
        getPlanTagline: () => i18n_calypso_1.default.translate('A plan to leave a lasting mark on the web.'),
        getDescription: () => i18n_calypso_1.default.translate('A plan to leave a lasting mark on the web.'),
        getShortDescription: () => i18n_calypso_1.default.translate('A plan to leave a lasting mark on the web.'),
        getTagline: () => i18n_calypso_1.default.translate('A plan to leave a lasting mark on the web.'),
        getBlogOnboardingTagLine: () => i18n_calypso_1.default.translate('A plan to leave a lasting mark on the web.'),
        getBillingTimeFrame: WPComGetBillingTimeframe,
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_WPCOM_STARTER,
            constants_1.PLAN_WPCOM_PRO,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
            constants_1.PLAN_PERSONAL_2_YEARS,
            constants_1.PLAN_PREMIUM_MONTHLY,
            constants_1.PLAN_PREMIUM,
            constants_1.PLAN_PREMIUM_2_YEARS,
            constants_1.PLAN_BUSINESS_MONTHLY,
            constants_1.PLAN_WPCOM_PRO_MONTHLY,
            constants_1.PLAN_MIGRATION_TRIAL_MONTHLY,
            constants_1.PLAN_HOSTING_TRIAL_MONTHLY,
        ].includes(plan),
        getProductId: () => 1061,
        getStoreSlug: () => constants_1.PLAN_100_YEARS,
        getPathSlug: () => 'wp_bundle_hundred_year',
    },
    [constants_1.PLAN_ECOMMERCE_MONTHLY]: {
        ...getPlanEcommerceDetails(),
        ...getMonthlyTimeframe(),
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
            constants_1.PLAN_PERSONAL_2_YEARS,
            constants_1.PLAN_PREMIUM_MONTHLY,
            constants_1.PLAN_PREMIUM,
            constants_1.PLAN_PREMIUM_2_YEARS,
            constants_1.PLAN_BUSINESS_MONTHLY,
            constants_1.PLAN_BUSINESS,
            constants_1.PLAN_BUSINESS_2_YEARS,
            constants_1.PLAN_WPCOM_PRO_MONTHLY,
            constants_1.PLAN_ECOMMERCE_TRIAL_MONTHLY,
            constants_1.PLAN_MIGRATION_TRIAL_MONTHLY,
            constants_1.PLAN_HOSTING_TRIAL_MONTHLY,
        ].includes(plan),
        getProductId: () => 1021,
        getStoreSlug: () => constants_1.PLAN_ECOMMERCE_MONTHLY,
        getPathSlug: () => 'ecommerce-monthly',
    },
    [constants_1.PLAN_ECOMMERCE]: {
        ...getPlanEcommerceDetails(),
        term: constants_1.TERM_ANNUALLY,
        getBillingTimeFrame: WPComGetBillingTimeframe,
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_WPCOM_STARTER,
            constants_1.PLAN_WPCOM_PRO,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
            constants_1.PLAN_PERSONAL_2_YEARS,
            constants_1.PLAN_PREMIUM_MONTHLY,
            constants_1.PLAN_PREMIUM,
            constants_1.PLAN_PREMIUM_2_YEARS,
            constants_1.PLAN_BUSINESS_MONTHLY,
            constants_1.PLAN_BUSINESS,
            constants_1.PLAN_BUSINESS_2_YEARS,
            constants_1.PLAN_ECOMMERCE_MONTHLY,
            constants_1.PLAN_WPCOM_PRO_MONTHLY,
            constants_1.PLAN_ECOMMERCE_TRIAL_MONTHLY,
            constants_1.PLAN_MIGRATION_TRIAL_MONTHLY,
            constants_1.PLAN_HOSTING_TRIAL_MONTHLY,
        ].includes(plan),
        getProductId: () => 1011,
        getStoreSlug: () => constants_1.PLAN_ECOMMERCE,
        getPathSlug: () => 'ecommerce',
    },
    [constants_1.PLAN_ECOMMERCE_2_YEARS]: {
        ...getPlanEcommerceDetails(),
        term: constants_1.TERM_BIENNIALLY,
        getBillingTimeFrame: WPComGetBiennialBillingTimeframe,
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_WPCOM_STARTER,
            constants_1.PLAN_WPCOM_PRO_MONTHLY,
            constants_1.PLAN_WPCOM_PRO,
            constants_1.PLAN_WPCOM_PRO_2_YEARS,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
            constants_1.PLAN_PERSONAL_2_YEARS,
            constants_1.PLAN_PREMIUM_MONTHLY,
            constants_1.PLAN_PREMIUM,
            constants_1.PLAN_PREMIUM_2_YEARS,
            constants_1.PLAN_BUSINESS_MONTHLY,
            constants_1.PLAN_BUSINESS,
            constants_1.PLAN_BUSINESS_2_YEARS,
            constants_1.PLAN_ECOMMERCE_MONTHLY,
            constants_1.PLAN_ECOMMERCE,
            constants_1.PLAN_ECOMMERCE_TRIAL_MONTHLY,
            constants_1.PLAN_MIGRATION_TRIAL_MONTHLY,
            constants_1.PLAN_HOSTING_TRIAL_MONTHLY,
        ].includes(plan),
        getProductId: () => 1031,
        getStoreSlug: () => constants_1.PLAN_ECOMMERCE_2_YEARS,
        getPathSlug: () => 'ecommerce-2-years',
    },
    [constants_1.PLAN_WOOEXPRESS_MEDIUM_MONTHLY]: {
        ...getPlanWooExpressMediumDetails(),
        ...getMonthlyTimeframe(),
        type: constants_1.TYPE_WOOEXPRESS_MEDIUM,
        getBillingTimeFrame: () => (0, i18n_calypso_1.translate)('per month'),
        availableFor: (plan) => [constants_1.PLAN_FREE, constants_1.PLAN_ECOMMERCE_TRIAL_MONTHLY, constants_1.PLAN_WOOEXPRESS_SMALL_MONTHLY].includes(plan),
        getProductId: () => 1053,
        getStoreSlug: () => constants_1.PLAN_WOOEXPRESS_MEDIUM_MONTHLY,
        getPathSlug: () => 'wooexpress-medium-monthly',
    },
    [constants_1.PLAN_WOOEXPRESS_MEDIUM]: {
        ...getPlanWooExpressMediumDetails(),
        term: constants_1.TERM_ANNUALLY,
        getBillingTimeFrame: WPComGetBillingTimeframe,
        type: constants_1.TYPE_WOOEXPRESS_MEDIUM,
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_WOOEXPRESS_MEDIUM_MONTHLY,
            constants_1.PLAN_ECOMMERCE_TRIAL_MONTHLY,
            constants_1.PLAN_WOOEXPRESS_SMALL,
            constants_1.PLAN_WOOEXPRESS_SMALL_MONTHLY,
        ].includes(plan),
        getProductId: () => 1055,
        getStoreSlug: () => constants_1.PLAN_WOOEXPRESS_MEDIUM,
        getPathSlug: () => 'wooexpress-medium-yearly',
    },
    [constants_1.PLAN_WOOEXPRESS_SMALL_MONTHLY]: {
        ...getPlanWooExpressSmallDetails(),
        ...getMonthlyTimeframe(),
        type: constants_1.TYPE_WOOEXPRESS_SMALL,
        getBillingTimeFrame: () => (0, i18n_calypso_1.translate)('per month'),
        availableFor: (plan) => [constants_1.PLAN_FREE, constants_1.PLAN_ECOMMERCE_TRIAL_MONTHLY].includes(plan),
        getProductId: () => 1054,
        getStoreSlug: () => constants_1.PLAN_WOOEXPRESS_SMALL_MONTHLY,
        getPathSlug: () => 'wooexpress-small-monthly',
    },
    [constants_1.PLAN_WOOEXPRESS_SMALL]: {
        ...getPlanWooExpressSmallDetails(),
        type: constants_1.TYPE_WOOEXPRESS_SMALL,
        term: constants_1.TERM_ANNUALLY,
        getBillingTimeFrame: WPComGetBillingTimeframe,
        availableFor: (plan) => [constants_1.PLAN_FREE, constants_1.PLAN_WOOEXPRESS_SMALL_MONTHLY, constants_1.PLAN_ECOMMERCE_TRIAL_MONTHLY].includes(plan),
        getProductId: () => 1056,
        getStoreSlug: () => constants_1.PLAN_WOOEXPRESS_SMALL,
        getPathSlug: () => 'wooexpress-small-yearly',
    },
    // Not a real plan. This is used to show the Plus offering in the Woo Express plans grid
    [constants_1.PLAN_WOOEXPRESS_PLUS]: {
        ...getPlanWooExpressPlusDetails(),
        term: constants_1.TERM_ANNUALLY,
        getBillingTimeFrame: () => '',
        getProductId: () => 0,
        getStoreSlug: () => constants_1.PLAN_WOOEXPRESS_PLUS,
    },
    // Not a real plan. This is used to show the Enterprise (VIP) offering in
    // the main plans grid as part of pdgrnI-1Qp-p2.
    [constants_1.PLAN_ENTERPRISE_GRID_WPCOM]: {
        ...get2023EnterprisGrideDetails(),
        term: constants_1.TERM_ANNUALLY,
        getBillingTimeFrame: () => '',
        getProductId: () => 0,
        getStoreSlug: () => constants_1.PLAN_ENTERPRISE_GRID_WPCOM,
        getPathSlug: () => 'enterprise',
    },
    [constants_1.PLAN_ECOMMERCE_3_YEARS]: {
        ...getPlanEcommerceDetails(),
        term: constants_1.TERM_TRIENNIALLY,
        getBillingTimeFrame: WPComGetTriennialBillingTimeframe,
        availableFor: (plan) => [
            constants_1.PLAN_FREE,
            constants_1.PLAN_WPCOM_STARTER,
            constants_1.PLAN_WPCOM_PRO_MONTHLY,
            constants_1.PLAN_WPCOM_PRO,
            constants_1.PLAN_WPCOM_PRO_2_YEARS,
            constants_1.PLAN_BLOGGER,
            constants_1.PLAN_BLOGGER_2_YEARS,
            constants_1.PLAN_PERSONAL_MONTHLY,
            constants_1.PLAN_PERSONAL,
            constants_1.PLAN_PERSONAL_2_YEARS,
            constants_1.PLAN_PERSONAL_3_YEARS,
            constants_1.PLAN_PREMIUM_MONTHLY,
            constants_1.PLAN_PREMIUM,
            constants_1.PLAN_PREMIUM_2_YEARS,
            constants_1.PLAN_PREMIUM_3_YEARS,
            constants_1.PLAN_BUSINESS_MONTHLY,
            constants_1.PLAN_BUSINESS,
            constants_1.PLAN_BUSINESS_2_YEARS,
            constants_1.PLAN_BUSINESS_3_YEARS,
            constants_1.PLAN_ECOMMERCE_MONTHLY,
            constants_1.PLAN_ECOMMERCE,
            constants_1.PLAN_ECOMMERCE_2_YEARS,
            constants_1.PLAN_ECOMMERCE_TRIAL_MONTHLY,
            constants_1.PLAN_MIGRATION_TRIAL_MONTHLY,
            constants_1.PLAN_HOSTING_TRIAL_MONTHLY,
        ].includes(plan),
        getProductId: () => 1051,
        getStoreSlug: () => constants_1.PLAN_ECOMMERCE_3_YEARS,
        getPathSlug: () => 'ecommerce-3-years',
    },
    [constants_1.PLAN_JETPACK_FREE]: {
        term: constants_1.TERM_ANNUALLY,
        group: constants_1.GROUP_JETPACK,
        type: constants_1.TYPE_FREE,
        getTitle: () => i18n_calypso_1.default.translate('Free'),
        getProductId: () => 2002,
        getStoreSlug: () => constants_1.PLAN_JETPACK_FREE,
        getTagline: (siteFeatures = []) => {
            const hasSiteJetpackBackup = siteFeatures.some((feature) => [
                constants_1.FEATURE_JETPACK_BACKUP_DAILY,
                constants_1.FEATURE_JETPACK_BACKUP_DAILY_MONTHLY,
                constants_1.FEATURE_JETPACK_BACKUP_REALTIME,
                constants_1.FEATURE_JETPACK_BACKUP_REALTIME_MONTHLY,
                constants_1.FEATURE_JETPACK_BACKUP_T1_BI_YEARLY,
                constants_1.FEATURE_JETPACK_BACKUP_T1_YEARLY,
                constants_1.FEATURE_JETPACK_BACKUP_T1_MONTHLY,
                constants_1.FEATURE_JETPACK_BACKUP_T2_YEARLY,
                constants_1.FEATURE_JETPACK_BACKUP_T2_MONTHLY,
            ].includes(feature));
            const hasSiteJetpackScan = siteFeatures.some((feature) => [constants_1.FEATURE_JETPACK_SCAN_DAILY, constants_1.FEATURE_JETPACK_SCAN_DAILY_MONTHLY].includes(feature));
            if (hasSiteJetpackBackup && hasSiteJetpackScan) {
                return i18n_calypso_1.default.translate('Upgrade your site to access additional features, including spam protection and priority support.');
            }
            else if (hasSiteJetpackBackup) {
                return i18n_calypso_1.default.translate('Upgrade your site to access additional features, including spam protection, security scanning, and priority support.');
            }
            else if (hasSiteJetpackScan) {
                return i18n_calypso_1.default.translate('Upgrade your site to access additional features, including spam protection, backups, and priority support.');
            }
            return i18n_calypso_1.default.translate('Upgrade your site for additional features, including spam protection, backups, security scanning, and priority support.');
        },
        getDescription: () => i18n_calypso_1.default.translate('The features most needed by WordPress sites' +
            ' — perfectly packaged and optimized for everyone.'),
        getBillingTimeFrame: () => i18n_calypso_1.default.translate('for life'),
        getIncludedFeatures: () => [
            constants_1.FEATURE_STANDARD_SECURITY_TOOLS,
            constants_1.FEATURE_SITE_STATS,
            constants_1.FEATURE_TRAFFIC_TOOLS,
            constants_1.FEATURE_MANAGE,
            constants_1.FEATURE_ADVANCED_SEO,
            constants_1.FEATURE_SEO_PREVIEW_TOOLS,
            constants_1.FEATURE_FREE_WORDPRESS_THEMES,
            constants_1.FEATURE_SITE_STATS,
            constants_1.FEATURE_STANDARD_SECURITY_TOOLS,
            constants_1.FEATURE_TRAFFIC_TOOLS,
            constants_1.FEATURE_BLANK,
        ],
    },
    [constants_1.PLAN_JETPACK_PREMIUM]: {
        ...getJetpackPremiumDetails(),
        ...getAnnualTimeframe(),
        getProductId: () => 2000,
        getStoreSlug: () => constants_1.PLAN_JETPACK_PREMIUM,
        getPathSlug: () => 'premium',
    },
    [constants_1.PLAN_JETPACK_PREMIUM_MONTHLY]: {
        ...getJetpackPremiumDetails(),
        ...getMonthlyTimeframe(),
        getProductId: () => 2003,
        getStoreSlug: () => constants_1.PLAN_JETPACK_PREMIUM_MONTHLY,
        getPathSlug: () => 'premium-monthly',
    },
    [constants_1.PLAN_JETPACK_PERSONAL]: {
        ...getJetpackPersonalDetails(),
        ...getAnnualTimeframe(),
        getProductId: () => 2005,
        getStoreSlug: () => constants_1.PLAN_JETPACK_PERSONAL,
        getPathSlug: () => 'jetpack-personal',
    },
    [constants_1.PLAN_JETPACK_PERSONAL_MONTHLY]: {
        ...getJetpackPersonalDetails(),
        ...getMonthlyTimeframe(),
        getProductId: () => 2006,
        getStoreSlug: () => constants_1.PLAN_JETPACK_PERSONAL_MONTHLY,
        getPathSlug: () => 'jetpack-personal-monthly',
    },
    [constants_1.PLAN_JETPACK_BUSINESS]: {
        ...getJetpackBusinessDetails(),
        ...getAnnualTimeframe(),
        getProductId: () => 2001,
        getStoreSlug: () => constants_1.PLAN_JETPACK_BUSINESS,
        getPathSlug: () => 'professional',
    },
    [constants_1.PLAN_JETPACK_BUSINESS_MONTHLY]: {
        ...getJetpackBusinessDetails(),
        ...getMonthlyTimeframe(),
        getProductId: () => 2004,
        getStoreSlug: () => constants_1.PLAN_JETPACK_BUSINESS_MONTHLY,
        getPathSlug: () => 'professional-monthly',
    },
    [constants_1.PLAN_JETPACK_SECURITY_DAILY]: {
        ...getPlanJetpackSecurityDailyDetails(),
        ...getAnnualTimeframe(),
        getMonthlySlug: () => constants_1.PLAN_JETPACK_SECURITY_DAILY_MONTHLY,
        getStoreSlug: () => constants_1.PLAN_JETPACK_SECURITY_DAILY,
        getPathSlug: () => 'security-daily',
        getProductId: () => 2010,
    },
    [constants_1.PLAN_JETPACK_SECURITY_DAILY_MONTHLY]: {
        ...getPlanJetpackSecurityDailyDetails(),
        ...getMonthlyTimeframe(),
        getAnnualSlug: () => constants_1.PLAN_JETPACK_SECURITY_DAILY,
        getStoreSlug: () => constants_1.PLAN_JETPACK_SECURITY_DAILY_MONTHLY,
        getPathSlug: () => 'security-daily-monthly',
        getProductId: () => 2011,
    },
    [constants_1.PLAN_JETPACK_SECURITY_REALTIME]: {
        ...getPlanJetpackSecurityRealtimeDetails(),
        ...getAnnualTimeframe(),
        getMonthlySlug: () => constants_1.PLAN_JETPACK_SECURITY_REALTIME_MONTHLY,
        getStoreSlug: () => constants_1.PLAN_JETPACK_SECURITY_REALTIME,
        getPathSlug: () => 'security-realtime',
        getProductId: () => 2012,
    },
    [constants_1.PLAN_JETPACK_SECURITY_REALTIME_MONTHLY]: {
        ...getPlanJetpackSecurityRealtimeDetails(),
        ...getMonthlyTimeframe(),
        getAnnualSlug: () => constants_1.PLAN_JETPACK_SECURITY_REALTIME,
        getStoreSlug: () => constants_1.PLAN_JETPACK_SECURITY_REALTIME_MONTHLY,
        getPathSlug: () => 'security-realtime-monthly',
        getProductId: () => 2013,
    },
    [constants_1.PLAN_JETPACK_COMPLETE_BI_YEARLY]: {
        ...getPlanJetpackCompleteDetails(),
        ...getBiAnnualTimeframe(),
        getStoreSlug: () => constants_1.PLAN_JETPACK_COMPLETE_BI_YEARLY,
        getPathSlug: () => 'complete-bi-yearly',
        getProductId: () => 2035,
        getProductsIncluded: () => [
            constants_1.PRODUCT_JETPACK_BACKUP_T2_YEARLY,
            constants_1.PRODUCT_JETPACK_SCAN_BI_YEARLY,
            constants_1.PRODUCT_JETPACK_ANTI_SPAM_BI_YEARLY,
            constants_1.PRODUCT_JETPACK_VIDEOPRESS_BI_YEARLY,
            constants_1.PRODUCT_JETPACK_BOOST_BI_YEARLY,
            constants_1.PRODUCT_JETPACK_SOCIAL_ADVANCED_BI_YEARLY,
            constants_1.PRODUCT_JETPACK_SEARCH_BI_YEARLY,
            constants_1.PRODUCT_JETPACK_STATS_BI_YEARLY,
            constants_1.PRODUCT_JETPACK_AI_BI_YEARLY,
            constants_1.PRODUCT_JETPACK_CRM,
        ],
        getWhatIsIncluded: () => [
            (0, i18n_calypso_1.translate)('VaultPress Backup: Real-time backups as you edit'),
            (0, i18n_calypso_1.translate)('1TB (1,000GB) of cloud storage'),
            (0, i18n_calypso_1.translate)('1-year activity log archive'),
            (0, i18n_calypso_1.translate)('Unlimited one-click restores from the last 1 year'),
            (0, i18n_calypso_1.translate)('Scan: Real-time malware scanning and one-click fixes'),
            (0, i18n_calypso_1.translate)('Akismet: Comment and form spam protection (60k API calls/mo)'),
            (0, i18n_calypso_1.translate)('VideoPress: 1TB of ad-free video hosting'),
            (0, i18n_calypso_1.translate)('Boost: Automatic CSS generation'),
            (0, i18n_calypso_1.translate)('Site Search: Up to 100k records and 100k requests/mo.'),
            (0, i18n_calypso_1.translate)('Social: Get unlimited shares and share as a post by attaching images or videos.'),
            (0, i18n_calypso_1.translate)('CRM: Entrepreneur with 30 extensions'),
        ],
    },
    [constants_1.PLAN_JETPACK_COMPLETE]: {
        ...getPlanJetpackCompleteDetails(),
        ...getAnnualTimeframe(),
        getStoreSlug: () => constants_1.PLAN_JETPACK_COMPLETE,
        getPathSlug: () => 'complete',
        getProductId: () => 2014,
        getMonthlySlug: () => constants_1.PLAN_JETPACK_COMPLETE_MONTHLY,
        getProductsIncluded: () => [
            constants_1.PRODUCT_JETPACK_BACKUP_T2_YEARLY,
            constants_1.PRODUCT_JETPACK_SCAN,
            constants_1.PRODUCT_JETPACK_ANTI_SPAM,
            constants_1.PRODUCT_JETPACK_VIDEOPRESS,
            constants_1.PRODUCT_JETPACK_BOOST,
            constants_1.PRODUCT_JETPACK_SOCIAL_ADVANCED,
            constants_1.PRODUCT_JETPACK_SEARCH,
            constants_1.PRODUCT_JETPACK_STATS_YEARLY,
            constants_1.PRODUCT_JETPACK_AI_YEARLY,
            constants_1.PRODUCT_JETPACK_CRM,
        ],
        getWhatIsIncluded: () => [
            (0, i18n_calypso_1.translate)('VaultPress Backup: Real-time backups as you edit'),
            (0, i18n_calypso_1.translate)('1TB (1,000GB) of cloud storage'),
            (0, i18n_calypso_1.translate)('1-year activity log archive'),
            (0, i18n_calypso_1.translate)('Unlimited one-click restores from the last 1 year'),
            (0, i18n_calypso_1.translate)('Scan: Real-time malware scanning and one-click fixes'),
            (0, i18n_calypso_1.translate)('Akismet: Comment and form spam protection (60k API calls/mo)'),
            (0, i18n_calypso_1.translate)('VideoPress: 1TB of ad-free video hosting'),
            (0, i18n_calypso_1.translate)('Boost: Automatic CSS generation'),
            (0, i18n_calypso_1.translate)('Site Search: Up to 100k records and 100k requests/mo.'),
            (0, i18n_calypso_1.translate)('Social: Get unlimited shares and share as a post by attaching images or videos.'),
            (0, i18n_calypso_1.translate)('CRM: Entrepreneur with 30 extensions'),
        ],
    },
    [constants_1.PLAN_JETPACK_COMPLETE_MONTHLY]: {
        ...getPlanJetpackCompleteDetails(),
        ...getMonthlyTimeframe(),
        getStoreSlug: () => constants_1.PLAN_JETPACK_COMPLETE_MONTHLY,
        getPathSlug: () => 'complete-monthly',
        getProductId: () => 2015,
        getAnnualSlug: () => constants_1.PLAN_JETPACK_COMPLETE,
        getProductsIncluded: () => [
            constants_1.PRODUCT_JETPACK_BACKUP_T2_MONTHLY,
            constants_1.PRODUCT_JETPACK_SCAN_MONTHLY,
            constants_1.PRODUCT_JETPACK_ANTI_SPAM_MONTHLY,
            constants_1.PRODUCT_JETPACK_VIDEOPRESS_MONTHLY,
            constants_1.PRODUCT_JETPACK_BOOST_MONTHLY,
            constants_1.PRODUCT_JETPACK_SOCIAL_ADVANCED_MONTHLY,
            constants_1.PRODUCT_JETPACK_SEARCH_MONTHLY,
            constants_1.PRODUCT_JETPACK_STATS_MONTHLY,
            constants_1.PRODUCT_JETPACK_AI_MONTHLY,
            constants_1.PRODUCT_JETPACK_CRM_MONTHLY,
        ],
        getWhatIsIncluded: () => [
            (0, i18n_calypso_1.translate)('VaultPress Backup: Real-time backups as you edit'),
            (0, i18n_calypso_1.translate)('1TB (1,000GB) of cloud storage'),
            (0, i18n_calypso_1.translate)('1-year activity log archive'),
            (0, i18n_calypso_1.translate)('Unlimited one-click restores from the last 1-year'),
            (0, i18n_calypso_1.translate)('Scan: Real-time malware scanning and one-click fixes'),
            (0, i18n_calypso_1.translate)('Akismet: Comment and form spam protection (60k API calls/mo)'),
            (0, i18n_calypso_1.translate)('VideoPress: 1TB of ad-free video hosting'),
            (0, i18n_calypso_1.translate)('Boost: Automatic CSS generation'),
            (0, i18n_calypso_1.translate)('Site Search: Up to 100k records and 100k requests/mo.'),
            (0, i18n_calypso_1.translate)('Social: Get unlimited shares and share as a post by attaching images or videos.'),
            (0, i18n_calypso_1.translate)('CRM: Entrepreneur with 30 extensions'),
        ],
    },
    [constants_1.PLAN_JETPACK_SECURITY_T1_BI_YEARLY]: {
        ...getPlanJetpackSecurityT1Details(),
        ...getBiAnnualTimeframe(),
        getStoreSlug: () => constants_1.PLAN_JETPACK_SECURITY_T1_BI_YEARLY,
        getPathSlug: () => 'security-20gb-bi-yearly',
        getProductId: () => 2034,
        getProductsIncluded: () => [
            constants_1.PRODUCT_JETPACK_BACKUP_T1_BI_YEARLY,
            constants_1.PRODUCT_JETPACK_SCAN_BI_YEARLY,
            constants_1.PRODUCT_JETPACK_ANTI_SPAM_BI_YEARLY,
        ],
        getWhatIsIncluded: () => [
            (0, i18n_calypso_1.translate)('VaultPress Backup: Real-time backups as you edit'),
            (0, i18n_calypso_1.translate)('10GB of cloud storage'),
            (0, i18n_calypso_1.translate)('30-day activity log archive'),
            (0, i18n_calypso_1.translate)('Unlimited one-click restores from the last 30 days'),
            (0, i18n_calypso_1.translate)('Scan: Real-time malware scanning and one-click fixes'),
            (0, i18n_calypso_1.translate)('Akismet: Comment and form spam protection (10k API calls/mo)'),
        ],
    },
    [constants_1.PLAN_JETPACK_SECURITY_T1_YEARLY]: {
        ...getPlanJetpackSecurityT1Details(),
        ...getAnnualTimeframe(),
        getStoreSlug: () => constants_1.PLAN_JETPACK_SECURITY_T1_YEARLY,
        getPathSlug: () => 'security-20gb-yearly',
        getProductId: () => 2016,
        getProductsIncluded: () => [
            constants_1.PRODUCT_JETPACK_BACKUP_T1_YEARLY,
            constants_1.PRODUCT_JETPACK_SCAN,
            constants_1.PRODUCT_JETPACK_ANTI_SPAM,
        ],
        getWhatIsIncluded: () => [
            (0, i18n_calypso_1.translate)('VaultPress Backup: Real-time backups as you edit'),
            (0, i18n_calypso_1.translate)('10GB of cloud storage'),
            (0, i18n_calypso_1.translate)('30-day activity log archive'),
            (0, i18n_calypso_1.translate)('Unlimited one-click restores from the last 30 days'),
            (0, i18n_calypso_1.translate)('Scan: Real-time malware scanning and one-click fixes'),
            (0, i18n_calypso_1.translate)('Akismet: Comment and form spam protection (10k API calls/mo)'),
        ],
    },
    [constants_1.PLAN_JETPACK_SECURITY_T1_MONTHLY]: {
        ...getPlanJetpackSecurityT1Details(),
        ...getMonthlyTimeframe(),
        getStoreSlug: () => constants_1.PLAN_JETPACK_SECURITY_T1_MONTHLY,
        getPathSlug: () => 'security-20gb-monthly',
        getProductId: () => 2017,
        getProductsIncluded: () => [
            constants_1.PRODUCT_JETPACK_BACKUP_T1_MONTHLY,
            constants_1.PRODUCT_JETPACK_SCAN_MONTHLY,
            constants_1.PRODUCT_JETPACK_ANTI_SPAM_MONTHLY,
        ],
        getWhatIsIncluded: () => [
            (0, i18n_calypso_1.translate)('VaultPress Backup: Real-time backups as you edit'),
            (0, i18n_calypso_1.translate)('10GB of cloud storage'),
            (0, i18n_calypso_1.translate)('30-day activity log archive'),
            (0, i18n_calypso_1.translate)('Unlimited one-click restores from the last 30 days'),
            (0, i18n_calypso_1.translate)('Scan: Real-time malware scanning and one-click fixes'),
            (0, i18n_calypso_1.translate)('Akismet: Comment and form spam protection (10k API calls/mo)'),
        ],
    },
    [constants_1.PLAN_JETPACK_SECURITY_T2_YEARLY]: {
        ...getPlanJetpackSecurityT2Details(),
        ...getAnnualTimeframe(),
        getStoreSlug: () => constants_1.PLAN_JETPACK_SECURITY_T2_YEARLY,
        getPathSlug: () => 'security-1tb-yearly',
        getProductId: () => 2019,
        getProductsIncluded: () => [
            constants_1.PRODUCT_JETPACK_BACKUP_T2_YEARLY,
            constants_1.PRODUCT_JETPACK_SCAN,
            constants_1.PRODUCT_JETPACK_ANTI_SPAM,
        ],
        getWhatIsIncluded: () => [
            (0, i18n_calypso_1.translate)('VaultPress Backup: Real-time backups as you edit'),
            (0, i18n_calypso_1.translate)('{{strong}}1TB (1,000GB){{/strong}} of cloud storage', {
                components: {
                    strong: (0, jsx_runtime_1.jsx)("strong", {}),
                },
            }),
            (0, i18n_calypso_1.translate)('{{strong}}1-year{{/strong}} activity log archive', {
                components: {
                    strong: (0, jsx_runtime_1.jsx)("strong", {}),
                },
            }),
            (0, i18n_calypso_1.translate)('Unlimited one-click restores from the last {{strong}}1 year{{/strong}}', {
                components: {
                    strong: (0, jsx_runtime_1.jsx)("strong", {}),
                },
            }),
            (0, i18n_calypso_1.translate)('Scan: Real-time malware scanning and one-click fixes'),
            (0, i18n_calypso_1.translate)('Akismet: Comment and form spam protection (10k API calls/mo)'),
        ],
    },
    [constants_1.PLAN_JETPACK_SECURITY_T2_MONTHLY]: {
        ...getPlanJetpackSecurityT2Details(),
        ...getMonthlyTimeframe(),
        getStoreSlug: () => constants_1.PLAN_JETPACK_SECURITY_T2_MONTHLY,
        getPathSlug: () => 'security-1tb-monthly',
        getProductId: () => 2020,
        getProductsIncluded: () => [
            constants_1.PRODUCT_JETPACK_BACKUP_T2_MONTHLY,
            constants_1.PRODUCT_JETPACK_SCAN_MONTHLY,
            constants_1.PRODUCT_JETPACK_ANTI_SPAM_MONTHLY,
        ],
        getWhatIsIncluded: () => [
            (0, i18n_calypso_1.translate)('VaultPress Backup: Real-time backups as you edit'),
            (0, i18n_calypso_1.translate)('{{strong}}1TB (1,000GB){{/strong}} of cloud storage', {
                components: {
                    strong: (0, jsx_runtime_1.jsx)("strong", {}),
                },
            }),
            (0, i18n_calypso_1.translate)('{{strong}}1-year{{/strong}} activity log archive', {
                components: {
                    strong: (0, jsx_runtime_1.jsx)("strong", {}),
                },
            }),
            (0, i18n_calypso_1.translate)('Unlimited one-click restores from the last {{strong}}1 year{{/strong}}', {
                components: {
                    strong: (0, jsx_runtime_1.jsx)("strong", {}),
                },
            }),
            (0, i18n_calypso_1.translate)('Scan: Real-time malware scanning and one-click fixes'),
            (0, i18n_calypso_1.translate)('Akismet: Comment and form spam protection (10k API calls/mo)'),
        ],
    },
    [constants_1.PLAN_JETPACK_STARTER_YEARLY]: {
        ...getPlanJetpackStarterDetails(),
        ...getAnnualTimeframe(),
        getStoreSlug: () => constants_1.PLAN_JETPACK_STARTER_YEARLY,
        getPathSlug: () => 'starter-yearly',
        getProductId: () => 2030,
        getProductsIncluded: () => [constants_1.PRODUCT_JETPACK_BACKUP_T0_YEARLY, constants_1.PRODUCT_JETPACK_ANTI_SPAM],
        getWhatIsIncluded: () => [
            (0, i18n_calypso_1.translate)('VaultPress Backup: Real-time backups as you edit'),
            (0, i18n_calypso_1.translate)('1GB of cloud storage'),
            (0, i18n_calypso_1.translate)('30-day activity log archive'),
            (0, i18n_calypso_1.translate)('Unlimited one-click restores from the last 30 days'),
            (0, i18n_calypso_1.translate)('Akismet: Comment and form spam protection (1k API calls/mo)'),
        ],
    },
    [constants_1.PLAN_JETPACK_STARTER_MONTHLY]: {
        ...getPlanJetpackStarterDetails(),
        ...getMonthlyTimeframe(),
        getStoreSlug: () => constants_1.PLAN_JETPACK_STARTER_MONTHLY,
        getPathSlug: () => 'starter-monthly',
        getProductId: () => 2031,
        getProductsIncluded: () => [
            constants_1.PRODUCT_JETPACK_BACKUP_T0_MONTHLY,
            constants_1.PRODUCT_JETPACK_ANTI_SPAM_MONTHLY,
        ],
        getWhatIsIncluded: () => [
            (0, i18n_calypso_1.translate)('VaultPress Backup: Real-time backups as you edit'),
            (0, i18n_calypso_1.translate)('1GB of cloud storage'),
            (0, i18n_calypso_1.translate)('30-day activity log archive'),
            (0, i18n_calypso_1.translate)('Unlimited one-click restores from the last 30 days'),
            (0, i18n_calypso_1.translate)('Akismet: Comment and form spam protection (1k API calls/mo)'),
        ],
    },
    [constants_1.PLAN_JETPACK_GROWTH_MONTHLY]: {
        ...getPlanJetpackGrowthDetails(),
        ...getMonthlyTimeframe(),
        getProductId: () => 2021,
        getStoreSlug: () => constants_1.PLAN_JETPACK_GROWTH_MONTHLY,
        getPathSlug: () => 'growth-monthly',
        getProductsIncluded: () => [constants_1.PRODUCT_JETPACK_STATS_MONTHLY, constants_1.PRODUCT_JETPACK_SOCIAL_V1_MONTHLY],
    },
    [constants_1.PLAN_JETPACK_GROWTH_YEARLY]: {
        ...getPlanJetpackGrowthDetails(),
        ...getAnnualTimeframe(),
        getProductId: () => 2022,
        getStoreSlug: () => constants_1.PLAN_JETPACK_GROWTH_YEARLY,
        getPathSlug: () => 'growth-yearly',
        getMonthlySlug: () => constants_1.PLAN_JETPACK_GROWTH_MONTHLY,
        getProductsIncluded: () => [constants_1.PRODUCT_JETPACK_STATS_YEARLY, constants_1.PRODUCT_JETPACK_SOCIAL_V1_YEARLY],
    },
    [constants_1.PLAN_JETPACK_GROWTH_BI_YEARLY]: {
        ...getPlanJetpackGrowthDetails(),
        ...getBiAnnualTimeframe(),
        getProductId: () => 2023,
        getStoreSlug: () => constants_1.PLAN_JETPACK_GROWTH_BI_YEARLY,
        getPathSlug: () => 'growth-bi-yearly',
        getProductsIncluded: () => [
            constants_1.PRODUCT_JETPACK_STATS_BI_YEARLY,
            constants_1.PRODUCT_JETPACK_SOCIAL_V1_BI_YEARLY,
        ],
    },
    [constants_1.PLAN_JETPACK_GOLDEN_TOKEN]: {
        ...getPlanJetpackGoldenTokenDetails(),
        ...getAnnualTimeframe(),
        getMonthlySlug: () => constants_1.PLAN_JETPACK_GOLDEN_TOKEN,
        getStoreSlug: () => constants_1.PLAN_JETPACK_GOLDEN_TOKEN,
        getPathSlug: () => 'golden-token',
        getProductId: () => 2900,
    },
    [constants_1.PLAN_P2_PLUS]: {
        ...getDotcomPlanDetails(),
        group: constants_1.GROUP_P2,
        type: constants_1.TYPE_P2_PLUS,
        getTitle: () => i18n_calypso_1.default.translate('P2+'),
        getDescription: () => '',
        getPlanTagline: () => i18n_calypso_1.default.translate('{{strong}}Best for professionals:{{/strong}} Enhance your P2 with more space for audio and video, advanced search, an activity overview panel, and priority customer support.', plansDescriptionHeadingComponent),
        getShortDescription: () => i18n_calypso_1.default.translate('Some short description'),
        get2023PricingGridSignupWpcomFeatures: () => [
            constants_1.FEATURE_P2_13GB_STORAGE,
            constants_1.FEATURE_P2_ADVANCED_SEARCH,
            constants_1.FEATURE_P2_VIDEO_SHARING,
            constants_1.FEATURE_P2_MORE_FILE_TYPES,
            constants_1.FEATURE_P2_PRIORITY_CHAT_EMAIL_SUPPORT,
            constants_1.FEATURE_P2_ACTIVITY_OVERVIEW,
        ],
        getStorageFeature: () => constants_1.FEATURE_P2_13GB_STORAGE,
        getPlanCompareFeatures: () => [
            // pay attention to ordering, shared features should align on /plan page
            constants_1.FEATURE_P2_13GB_STORAGE,
            constants_1.FEATURE_P2_ADVANCED_SEARCH,
            constants_1.FEATURE_P2_VIDEO_SHARING,
            constants_1.FEATURE_P2_MORE_FILE_TYPES,
            constants_1.FEATURE_P2_PRIORITY_CHAT_EMAIL_SUPPORT,
            constants_1.FEATURE_P2_ACTIVITY_OVERVIEW,
        ],
        // TODO: update this once we put P2+ in the signup.
        getSignupFeatures: () => [constants_1.FEATURE_FAST_SUPPORT_FROM_EXPERTS],
        // TODO: no idea about this, copied from the WP.com Premium plan.
        // Features not displayed but used for checking plan abilities
        getIncludedFeatures: () => [
            constants_1.FEATURE_AUDIO_UPLOADS,
            constants_1.FEATURE_JETPACK_SEARCH_BI_YEARLY,
            constants_1.FEATURE_JETPACK_SEARCH,
            constants_1.FEATURE_JETPACK_SEARCH_MONTHLY,
        ],
        getInferiorFeatures: () => [],
        // TODO: Calypso requires this prop but we probably don't need it. Refactor Calypso?
        getAudience: () => i18n_calypso_1.default.translate('Best for bloggers'),
        ...getMonthlyTimeframe(),
        availableFor: (plan) => [constants_1.PLAN_FREE].includes(plan), //TODO: only for P2 sites.
        getProductId: () => 1040,
        getStoreSlug: () => constants_1.PLAN_P2_PLUS,
        getPathSlug: () => 'p2-plus',
        getBillingTimeFrame: () => (0, i18n_calypso_1.translate)('per user per month'),
    },
};
exports.PLANS_LIST[constants_1.PLAN_P2_FREE] = {
    ...exports.PLANS_LIST[constants_1.PLAN_FREE],
    group: constants_1.GROUP_P2,
    getPlanTagline: () => i18n_calypso_1.default.translate('{{strong}}Best for small groups:{{/strong}} All the features needed to share, discuss, review, and collaborate with your team in one spot, without interruptions.', plansDescriptionHeadingComponent),
    getTitle: () => i18n_calypso_1.default.translate('P2 Free'),
    get2023PricingGridSignupWpcomFeatures: () => [
        constants_1.FEATURE_P2_3GB_STORAGE,
        constants_1.FEATURE_P2_UNLIMITED_USERS,
        constants_1.FEATURE_P2_UNLIMITED_POSTS_PAGES,
        constants_1.FEATURE_P2_SIMPLE_SEARCH,
        constants_1.FEATURE_P2_CUSTOMIZATION_OPTIONS,
    ],
    getStorageFeature: () => constants_1.FEATURE_P2_3GB_STORAGE,
    getPlanCompareFeatures: () => [
        // pay attention to ordering, shared features should align on /plan page
        constants_1.FEATURE_P2_3GB_STORAGE,
        constants_1.FEATURE_P2_UNLIMITED_USERS,
        constants_1.FEATURE_P2_UNLIMITED_POSTS_PAGES,
        constants_1.FEATURE_P2_SIMPLE_SEARCH,
        constants_1.FEATURE_P2_CUSTOMIZATION_OPTIONS,
    ],
};
// Brand new WPCOM plans
exports.PLANS_LIST[constants_1.PLAN_WPCOM_STARTER] = {
    ...getDotcomPlanDetails(),
    group: constants_1.GROUP_WPCOM,
    type: constants_1.TYPE_STARTER,
    term: constants_1.TERM_ANNUALLY,
    getTitle: () => i18n_calypso_1.default.translate('WordPress Starter'),
    getProductId: () => 1033,
    getStoreSlug: () => constants_1.PLAN_WPCOM_STARTER,
    getPathSlug: () => 'starter',
    getDescription: () => i18n_calypso_1.default.translate('Start with a custom domain name, simple payments, and extra storage.'),
    getSubTitle: () => i18n_calypso_1.default.translate('Essential features. Freedom to grow.'),
    getBillingTimeFrame: () => i18n_calypso_1.default.translate('per month, billed yearly'),
    getPlanCompareFeatures: () => [
        constants_1.FEATURE_UNLIMITED_TRAFFIC,
        constants_1.FEATURE_MANAGED_HOSTING,
        constants_1.FEATURE_FREE_THEMES,
        constants_1.FEATURE_CUSTOM_DOMAIN,
        constants_1.FEATURE_UNLIMITED_ADMINS,
        constants_1.FEATURE_6GB_STORAGE,
        constants_1.FEATURE_GOOGLE_ANALYTICS,
        constants_1.FEATURE_PAYMENT_BLOCKS,
        constants_1.FEATURE_TITAN_EMAIL,
    ],
    getIncludedFeatures: () => [constants_1.WPCOM_FEATURES_INSTALL_PURCHASED_PLUGINS],
};
exports.PLANS_LIST[constants_1.PLAN_WPCOM_FLEXIBLE] = {
    // Inherits the free plan
    ...exports.PLANS_LIST[constants_1.PLAN_FREE],
    group: constants_1.GROUP_WPCOM,
    type: constants_1.TYPE_FLEXIBLE,
    getTitle: () => i18n_calypso_1.default.translate('WordPress Free'),
    getBillingTimeFrame: () => i18n_calypso_1.default.translate('upgrade when you need'),
    getDescription: () => i18n_calypso_1.default.translate('Start your free WordPress.com website. Limited functionality and storage.'),
    getPlanCompareFeatures: () => [constants_1.FEATURE_1GB_STORAGE],
};
exports.PLANS_LIST[constants_1.PLAN_WPCOM_PRO] = {
    ...getPlanProDetails(),
    term: constants_1.TERM_ANNUALLY,
    getProductId: () => 1032,
    getStoreSlug: () => constants_1.PLAN_WPCOM_PRO,
    getPathSlug: () => 'pro',
    getBillingTimeFrame: () => i18n_calypso_1.default.translate('per month, billed yearly'),
};
exports.PLANS_LIST[constants_1.PLAN_WPCOM_PRO_MONTHLY] = {
    ...getPlanProDetails(),
    ...getMonthlyTimeframe(),
    availableFor: (plan) => [constants_1.PLAN_FREE].includes(plan),
    getProductId: () => 1034,
    getStoreSlug: () => constants_1.PLAN_WPCOM_PRO_MONTHLY,
    getPathSlug: () => 'pro-monthly',
};
exports.PLANS_LIST[constants_1.PLAN_WPCOM_PRO_2_YEARS] = {
    ...getPlanProDetails(),
    term: constants_1.TERM_BIENNIALLY,
    availableFor: (plan) => [constants_1.PLAN_FREE, constants_1.PLAN_WPCOM_STARTER, constants_1.PLAN_WPCOM_PRO, constants_1.PLAN_WPCOM_PRO_MONTHLY].includes(plan),
    getProductId: () => 1035,
    getStoreSlug: () => constants_1.PLAN_WPCOM_PRO_2_YEARS,
    getPathSlug: () => 'pro-2-years',
    getBillingTimeFrame: WPComGetBiennialBillingTimeframe,
};
exports.PLANS_LIST[constants_1.PLAN_ECOMMERCE_TRIAL_MONTHLY] = {
    ...getDotcomPlanDetails(),
    type: constants_1.TYPE_ECOMMERCE,
    group: constants_1.GROUP_WPCOM,
    getProductId: () => 1052,
    getPathSlug: () => constants_1.PLAN_ECOMMERCE_TRIAL_MONTHLY,
    term: constants_1.TERM_MONTHLY,
    getBillingTimeFrame: () => i18n_calypso_1.default.translate('free trial'),
    getStoreSlug: () => constants_1.PLAN_ECOMMERCE_TRIAL_MONTHLY,
    getTitle: plans_1.getPlanCommerceTrialTitle,
    getDescription: plans_1.getPlanCommerceTrialTitle,
    getTagline: () => i18n_calypso_1.default.translate('Get a taste of the world’s most popular eCommerce software.'),
};
if ((0, calypso_config_1.isEnabled)('plans/migration-trial')) {
    exports.PLANS_LIST[constants_1.PLAN_MIGRATION_TRIAL_MONTHLY] = {
        ...getPlanBusinessDetails(),
        type: constants_1.TYPE_BUSINESS,
        group: constants_1.GROUP_WPCOM,
        getProductId: () => 1057,
        getPathSlug: () => constants_1.PLAN_MIGRATION_TRIAL_MONTHLY,
        term: constants_1.TERM_MONTHLY,
        getBillingTimeFrame: () => i18n_calypso_1.default.translate('free trial'),
        getStoreSlug: () => constants_1.PLAN_MIGRATION_TRIAL_MONTHLY,
        getTitle: plans_1.getPlanBusinessTrialTitle,
    };
}
exports.PLANS_LIST[constants_1.PLAN_HOSTING_TRIAL_MONTHLY] = {
    ...getPlanBusinessDetails(),
    getPlanTagline: plans_1.getPlanBusinessTrialTagline,
    type: constants_1.TYPE_BUSINESS,
    group: constants_1.GROUP_WPCOM,
    getProductId: () => 1058,
    getPathSlug: () => constants_1.PLAN_HOSTING_TRIAL_MONTHLY,
    term: constants_1.TERM_MONTHLY,
    getBillingTimeFrame: () => i18n_calypso_1.default.translate('Try it for 3 days'),
    getStoreSlug: () => constants_1.PLAN_HOSTING_TRIAL_MONTHLY,
    getTitle: plans_1.getPlanBusinessTrialTitle,
    getDescription: () => i18n_calypso_1.default.translate('Hosting free trial'),
    getTagline: () => i18n_calypso_1.default.translate('Get a taste of unlimited performance and unbeatable uptime'),
};
//# sourceMappingURL=plans-list.js.map