From 23308f79a3301aec4dbad40da8b25523972252ee Mon Sep 17 00:00:00 2001 From: maria-hambardzumian Date: Wed, 24 Apr 2024 23:20:26 +0400 Subject: [PATCH 1/4] EPMRPP-90569 | displayed 'Email server is disabled' instead of integrations configurations --- .../content/notifications/notifications.jsx | 1 + .../notifications/ruleGroup/ruleGroup.jsx | 75 ++++++++++--------- 2 files changed, 39 insertions(+), 37 deletions(-) diff --git a/app/src/pages/inside/projectSettingsPageContainer/content/notifications/notifications.jsx b/app/src/pages/inside/projectSettingsPageContainer/content/notifications/notifications.jsx index 4e811dc3d0..f5dd0b6ed0 100644 --- a/app/src/pages/inside/projectSettingsPageContainer/content/notifications/notifications.jsx +++ b/app/src/pages/inside/projectSettingsPageContainer/content/notifications/notifications.jsx @@ -102,6 +102,7 @@ export const Notifications = () => { diff --git a/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx b/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx index cbb9002de5..c422f98970 100644 --- a/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx +++ b/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx @@ -80,7 +80,7 @@ const RuleItemDisabledTooltip = withTooltip({ }, })(({ children }) => children); -export const RuleGroup = ({ pluginName, typedRules, notifications }) => { +export const RuleGroup = ({ pluginName, typedRules, notifications, isPluginEnabled }) => { const { trackEvent } = useTracking(); const { formatMessage } = useIntl(); @@ -93,7 +93,8 @@ export const RuleGroup = ({ pluginName, typedRules, notifications }) => { projectPluginNotificationsStateSelector(pluginName), ); - const isAvailable = () => isEmailIntegrationAvailable && canUpdateSettings(userRole, projectRole); + const isAvailable = canUpdateSettings(userRole, projectRole); + const isReadOnly = !isAvailable || !isPluginEnabled; const onToggleHandler = (isEnabled, notification) => { trackEvent(PROJECT_SETTINGS_NOTIFICATIONS_EVENTS.SWITCH_NOTIFICATION_RULE(isEnabled)); @@ -105,8 +106,6 @@ export const RuleGroup = ({ pluginName, typedRules, notifications }) => { ); }; - const isReadOnly = !isAvailable(); - const handleRuleItemClick = (isShown) => { if (isShown) { trackEvent(PROJECT_SETTINGS_NOTIFICATIONS_EVENTS.CLICK_TO_EXPAND_NOTIFICATIONS_DETAILS); @@ -165,6 +164,7 @@ export const RuleGroup = ({ pluginName, typedRules, notifications }) => { showModalAction({ id: 'addEditNotificationModal', data: { + type: pluginName, actionType: MODAL_ACTION_TYPE_EDIT, onSave: confirmEdit, notification, @@ -246,41 +246,41 @@ export const RuleGroup = ({ pluginName, typedRules, notifications }) => { - - {!isAvailable() ? ( -
-

- {pluginName}{' '} - {formatMessage(messages.disabledPlugin, { pluginName })} -

- - {Parser(AboutIcon)} - -
- ) : ( - pluginName === EMAIL && - !isEmailIntegrationAvailable && ( -
-

{formatMessage(messages.notConfiguredIntegration)}

- +

+ {pluginName}{' '} + {formatMessage(messages.disabledPlugin, { pluginName })} +

+ - {formatMessage(messages.configureIntegration)} -
+ {Parser(AboutIcon)} +
- ) - )} + ) : ( + pluginName === EMAIL && + !isEmailIntegrationAvailable && ( +
+

{formatMessage(messages.notConfiguredIntegration)}

+ + {formatMessage(messages.configureIntegration)} + +
+ ) + ))}
@@ -333,4 +333,5 @@ RuleGroup.propTypes = { pluginName: PropTypes.string.isRequired, typedRules: PropTypes.arrayOf(ruleShape), notifications: PropTypes.arrayOf(ruleShape).isRequired, + isPluginEnabled: PropTypes.bool.isRequired, }; From 8f3e709ab6828232d21288a18c6148a17f784503 Mon Sep 17 00:00:00 2001 From: maria-hambardzumian Date: Wed, 24 Apr 2024 23:24:12 +0400 Subject: [PATCH 2/4] EPMRPP-90587 | EPMRPP-90588 | remove 'Create rule'/'Add rule' buttons for Member/Operator/Cusomer users --- .../notifications/ruleGroup/ruleGroup.jsx | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx b/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx index c422f98970..cb1f660c90 100644 --- a/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx +++ b/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx @@ -299,17 +299,19 @@ export const RuleGroup = ({ pluginName, typedRules, notifications, isPluginEnabl dataAutomationId="notificationsRulesList" className={cx('rule-group-list')} /> - + {isAvailable && ( + + )}
) : ( - + isAvailable && )} From 9677ad9b3ed8165d85d6982572c5f2bd11edb015 Mon Sep 17 00:00:00 2001 From: maria-hambardzumian <164881199+maria-hambardzumian@users.noreply.github.com> Date: Fri, 26 Apr 2024 08:31:17 +0000 Subject: [PATCH 3/4] EPMRPP 90569 || Code review fixes --- .../content/notifications/ruleGroup/ruleGroup.jsx | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx b/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx index cb1f660c90..aaa7115aed 100644 --- a/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx +++ b/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx @@ -93,8 +93,8 @@ export const RuleGroup = ({ pluginName, typedRules, notifications, isPluginEnabl projectPluginNotificationsStateSelector(pluginName), ); - const isAvailable = canUpdateSettings(userRole, projectRole); - const isReadOnly = !isAvailable || !isPluginEnabled; + const isUpdateSettingAvailable = canUpdateSettings(userRole, projectRole); + const isReadOnly = !isUpdateSettingAvailable || !isPluginEnabled; const onToggleHandler = (isEnabled, notification) => { trackEvent(PROJECT_SETTINGS_NOTIFICATIONS_EVENTS.SWITCH_NOTIFICATION_RULE(isEnabled)); @@ -246,7 +246,7 @@ export const RuleGroup = ({ pluginName, typedRules, notifications, isPluginEnabl - {isAvailable && + {isUpdateSettingAvailable && (!isPluginEnabled ? (

@@ -299,7 +299,7 @@ export const RuleGroup = ({ pluginName, typedRules, notifications, isPluginEnabl dataAutomationId="notificationsRulesList" className={cx('rule-group-list')} /> - {isAvailable && ( + {isUpdateSettingAvailable && (

From 3b17760df7e7d74a2b8b277b35acb889ed0912e6 Mon Sep 17 00:00:00 2001 From: maria-hambardzumian Date: Fri, 26 Apr 2024 12:41:22 +0400 Subject: [PATCH 4/4] EPMRPP 90569 || format fix --- .../content/notifications/ruleGroup/ruleGroup.jsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx b/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx index aaa7115aed..424ac20377 100644 --- a/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx +++ b/app/src/pages/inside/projectSettingsPageContainer/content/notifications/ruleGroup/ruleGroup.jsx @@ -311,7 +311,9 @@ export const RuleGroup = ({ pluginName, typedRules, notifications, isPluginEnabl )} ) : ( - isUpdateSettingAvailable && + isUpdateSettingAvailable && ( + + ) )}