Remove side-effects from messages
[MAILPOET-2431]
This commit is contained in:
committed by
Jack Kitterhing
parent
7151e23f47
commit
8cde305a34
@ -2,19 +2,19 @@ import PropTypes from 'prop-types';
|
||||
import React from 'react';
|
||||
import MailPoet from 'mailpoet';
|
||||
|
||||
const keyValidMessage = (
|
||||
const keyValidMessage = () => (
|
||||
<div className="mailpoet_success_item mailpoet_success">
|
||||
{MailPoet.I18n.t('premiumTabKeyValidMessage')}
|
||||
</div>
|
||||
);
|
||||
|
||||
const keyNotValidMessage = (
|
||||
const keyNotValidMessage = () => (
|
||||
<div className="mailpoet_error_item mailpoet_error">
|
||||
{MailPoet.I18n.t('premiumTabKeyNotValidMessage')}
|
||||
</div>
|
||||
);
|
||||
|
||||
const KeyMessages = (props) => (props.keyValid ? keyValidMessage : keyNotValidMessage);
|
||||
const KeyMessages = (props) => (props.keyValid ? keyValidMessage() : keyNotValidMessage());
|
||||
|
||||
KeyMessages.propTypes = {
|
||||
keyValid: PropTypes.bool.isRequired,
|
||||
|
@ -2,7 +2,7 @@ import PropTypes from 'prop-types';
|
||||
import React from 'react';
|
||||
import MailPoet from 'mailpoet';
|
||||
|
||||
const validMessage = (
|
||||
const validMessage = () => (
|
||||
<div className="mailpoet_success mailpoet_mss_key_valid">
|
||||
{MailPoet.I18n.t('premiumTabMssValidMessage')}
|
||||
</div>
|
||||
@ -16,7 +16,7 @@ const notValidMessage = (message) => (
|
||||
|
||||
const MssMessages = (props) => {
|
||||
if (props.keyValid) {
|
||||
return validMessage;
|
||||
return validMessage();
|
||||
}
|
||||
return props.keyMessage ? notValidMessage(props.keyMessage) : null;
|
||||
};
|
||||
|
@ -16,19 +16,19 @@ const PremiumInstallationStatus = {
|
||||
|
||||
const keyPrefix = 'premium-installation-message';
|
||||
|
||||
const installingMessage = (
|
||||
const installingMessage = () => (
|
||||
<div className="mailpoet_subitem" key={`${keyPrefix}-installing`}>
|
||||
{MailPoet.I18n.t('premiumTabPremiumInstallationInstallingMessage')}
|
||||
</div>
|
||||
);
|
||||
|
||||
const activatingMessage = (
|
||||
const activatingMessage = () => (
|
||||
<div className="mailpoet_subitem" key={`${keyPrefix}-activating`}>
|
||||
{MailPoet.I18n.t('premiumTabPremiumInstallationActivatingMessage')}
|
||||
</div>
|
||||
);
|
||||
|
||||
const doneMessage = (
|
||||
const doneMessage = () => (
|
||||
<div className="mailpoet_subitem" key={`${keyPrefix}-done`}>
|
||||
<strong>{MailPoet.I18n.t('premiumTabPremiumInstallationActiveMessage')}</strong>
|
||||
</div>
|
||||
@ -61,21 +61,21 @@ const errorMessage = () => {
|
||||
const PremiumInstallationMessages = (props) => {
|
||||
switch (props.installationStatus) {
|
||||
case PremiumInstallationStatus.INSTALL_INSTALLING:
|
||||
return installingMessage;
|
||||
return installingMessage();
|
||||
case PremiumInstallationStatus.INSTALL_ACTIVATING:
|
||||
return [installingMessage, activatingMessage];
|
||||
return [installingMessage(), activatingMessage()];
|
||||
case PremiumInstallationStatus.INSTALL_DONE:
|
||||
return [installingMessage, activatingMessage, doneMessage];
|
||||
return [installingMessage(), activatingMessage(), doneMessage()];
|
||||
case PremiumInstallationStatus.INSTALL_INSTALLING_ERROR:
|
||||
return [installingMessage, errorMessage()];
|
||||
return [installingMessage(), errorMessage()];
|
||||
case PremiumInstallationStatus.INSTALL_ACTIVATING_ERROR:
|
||||
return [installingMessage, activatingMessage, errorMessage()];
|
||||
return [installingMessage(), activatingMessage(), errorMessage()];
|
||||
case PremiumInstallationStatus.ACTIVATE_ACTIVATING:
|
||||
return activatingMessage;
|
||||
return activatingMessage();
|
||||
case PremiumInstallationStatus.ACTIVATE_DONE:
|
||||
return [activatingMessage, doneMessage];
|
||||
return [activatingMessage(), doneMessage()];
|
||||
case PremiumInstallationStatus.ACTIVATE_ERROR:
|
||||
return [activatingMessage, errorMessage()];
|
||||
return [activatingMessage(), errorMessage()];
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
|
@ -12,19 +12,19 @@ const PremiumStatus = {
|
||||
KEY_VALID_PREMIUM_PLUGIN_BEING_ACTIVATED: 5,
|
||||
};
|
||||
|
||||
const activeMessage = (
|
||||
const activeMessage = () => (
|
||||
<div className="mailpoet_success">
|
||||
{MailPoet.I18n.t('premiumTabPremiumActiveMessage')}
|
||||
</div>
|
||||
);
|
||||
|
||||
const installingMessage = (
|
||||
const installingMessage = () => (
|
||||
<div className="mailpoet_success">
|
||||
{MailPoet.I18n.t('premiumTabPremiumInstallingMessage')}
|
||||
</div>
|
||||
);
|
||||
|
||||
const activatingMessage = (
|
||||
const activatingMessage = () => (
|
||||
<div className="mailpoet_success">
|
||||
{MailPoet.I18n.t('premiumTabPremiumActivatingMessage')}
|
||||
</div>
|
||||
@ -59,15 +59,15 @@ const notValidMessage = (message) => (
|
||||
const getMessageFromStatus = (status, message, installationCallback, activationCallback) => {
|
||||
switch (status) {
|
||||
case PremiumStatus.KEY_VALID_PREMIUM_PLUGIN_ACTIVE:
|
||||
return activeMessage;
|
||||
return activeMessage();
|
||||
case PremiumStatus.KEY_VALID_PREMIUM_PLUGIN_NOT_ACTIVE:
|
||||
return premiumNotActiveMessage(activationCallback);
|
||||
case PremiumStatus.KEY_VALID_PREMIUM_PLUGIN_NOT_INSTALLED:
|
||||
return premiumNotInstalledMessage(installationCallback);
|
||||
case PremiumStatus.KEY_VALID_PREMIUM_PLUGIN_BEING_INSTALLED:
|
||||
return installingMessage;
|
||||
return installingMessage();
|
||||
case PremiumStatus.KEY_VALID_PREMIUM_PLUGIN_BEING_ACTIVATED:
|
||||
return activatingMessage;
|
||||
return activatingMessage();
|
||||
case PremiumStatus.KEY_INVALID:
|
||||
return message ? notValidMessage(message) : null;
|
||||
default:
|
||||
|
Reference in New Issue
Block a user