From 9a129e7cab7d2e4a13976c1a44a1ad7df93099d7 Mon Sep 17 00:00:00 2001
From: Kristina <7614497+khjrtbrg@users.noreply.github.com>
Date: Thu, 23 Apr 2026 09:27:49 +0200
Subject: [PATCH] Merge pull request #32939 from
overleaf/kh-update-settings-modal-language
[web] update copy & layout for notifications settings
GitOrigin-RevId: 13b6b78b0b2bddd9d0137362a14bfdbdba9d7d20
---
.../web/frontend/extracted-translations.json | 1 +
.../project-notifications-setting.tsx | 33 ++++++++++++++-----
.../components/radio-button-setting.tsx | 31 +++++++----------
.../stylesheets/pages/editor/settings.scss | 20 +++--------
services/web/locales/en.json | 5 +--
5 files changed, 46 insertions(+), 44 deletions(-)
diff --git a/services/web/frontend/extracted-translations.json b/services/web/frontend/extracted-translations.json
index 396668d1ed..1594a98cec 100644
--- a/services/web/frontend/extracted-translations.json
+++ b/services/web/frontend/extracted-translations.json
@@ -1105,6 +1105,7 @@
"manage_institution_managers": "",
"manage_managers_subtext": "",
"manage_newsletter": "",
+ "manage_overleaf_email_preferences": "",
"manage_publisher_managers": "",
"manage_sessions": "",
"manage_subscription": "",
diff --git a/services/web/frontend/js/features/settings/components/editor-settings/project-notifications-setting.tsx b/services/web/frontend/js/features/settings/components/editor-settings/project-notifications-setting.tsx
index d15a327eee..439a1f6f98 100644
--- a/services/web/frontend/js/features/settings/components/editor-settings/project-notifications-setting.tsx
+++ b/services/web/frontend/js/features/settings/components/editor-settings/project-notifications-setting.tsx
@@ -4,6 +4,7 @@ import {
NotificationLevel,
useProjectNotificationPreferences,
} from '../../hooks/use-project-notification-preferences'
+import BetaBadgeIcon from '@/shared/components/beta-badge-icon'
export default function ProjectNotificationsSetting() {
const { t } = useTranslation()
@@ -36,16 +37,32 @@ export default function ProjectNotificationsSetting() {
value={isLoading ? undefined : notificationLevel}
onChange={setNotificationLevel}
/>
-
-
- {t('email_notifications_are_currently_in_beta')}{' '}
- {t('these_settings_might_change_in_the_future')}{' '}
-
- {/* TODO: update forms link */}
-
- {t('give_feedback')}
+
+
+
+
+
+ {t('email_notifications_are_currently_in_beta')}{' '}
+ {t('these_settings_might_change_in_the_future')}{' '}
+
+ {/* TODO: update forms link */}
+
+ {t('give_feedback')}
+
+
+
>
)
}
diff --git a/services/web/frontend/js/features/settings/components/radio-button-setting.tsx b/services/web/frontend/js/features/settings/components/radio-button-setting.tsx
index bfbea7cc85..7b6081ddd3 100644
--- a/services/web/frontend/js/features/settings/components/radio-button-setting.tsx
+++ b/services/web/frontend/js/features/settings/components/radio-button-setting.tsx
@@ -1,4 +1,5 @@
import React from 'react'
+import OLFormCheckbox from '@/shared/components/ol/ol-form-checkbox'
export type RadioOption = {
value: T
@@ -26,25 +27,17 @@ export default function RadioButtonSetting({
return (
{options.map(option => (
-
+
))}
)
diff --git a/services/web/frontend/stylesheets/pages/editor/settings.scss b/services/web/frontend/stylesheets/pages/editor/settings.scss
index 0ba97d6baa..178f6786ce 100644
--- a/services/web/frontend/stylesheets/pages/editor/settings.scss
+++ b/services/web/frontend/stylesheets/pages/editor/settings.scss
@@ -105,26 +105,16 @@
gap: var(--spacing-06);
}
-.ide-radio-option {
- display: flex;
- align-items: flex-start;
- gap: var(--spacing-04);
- cursor: pointer;
-}
-
-.ide-radio-input {
- margin-top: var(--spacing-02);
-}
-
-.ide-radio-text {
- display: flex;
- flex-direction: column;
+.global-notifications-link {
+ font-size: var(--font-size-01);
}
.project-notifications-beta-note {
margin-top: var(--spacing-06);
- padding: var(--spacing-04);
font-size: var(--font-size-02);
+ display: flex;
+ align-items: center;
+ gap: var(--spacing-05);
}
.beta-note-text {
diff --git a/services/web/locales/en.json b/services/web/locales/en.json
index f6c57a3fb3..9787b3404d 100644
--- a/services/web/locales/en.json
+++ b/services/web/locales/en.json
@@ -174,7 +174,7 @@
"all_premium_features_including": "All premium features, including:",
"all_prices_displayed_are_in_currency": "All prices displayed are in __recommendedCurrency__.",
"all_project_activity": "All project activity",
- "all_project_activity_description": "You’ll be notified about all comments and track changes in this project.",
+ "all_project_activity_description": "You’ll be notified about all comments and track changes.",
"all_projects": "All projects",
"all_projects_will_be_transferred_immediately": "All projects will be transferred to the new owner immediately.",
"all_templates": "All templates",
@@ -1468,6 +1468,7 @@
"manage_institution_managers": "Manage institution managers",
"manage_managers_subtext": "Assign or remove manager privileges",
"manage_newsletter": "Manage newsletter preferences",
+ "manage_overleaf_email_preferences": "Manage all __appName__ email notifications",
"manage_publisher_managers": "Manage publisher managers",
"manage_sessions": "Manage sessions",
"manage_subscription": "Manage subscription",
@@ -2062,7 +2063,7 @@
"replace_from_project_files": "Replace from project files",
"replace_from_url": "Replace from URL",
"replies_to_your_activity_only": "Replies to your activity only",
- "replies_to_your_activity_only_description": "You’ll be notified about direct replies and activity on your track changes only.",
+ "replies_to_your_activity_only_description": "You’ll be notified about replies and activity on your track changes.",
"reply": "Reply",
"repository_name": "Repository Name",
"repository_visibility": "Repository visibility",