@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
JavaScript
"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