From d492512d9e842009eee8253224fecaee1070e964 Mon Sep 17 00:00:00 2001 From: David <33458145+davidmcpowell@users.noreply.github.com> Date: Tue, 22 Apr 2025 13:07:06 +0100 Subject: [PATCH] Merge pull request #24878 from overleaf/mj-editor-redesign-experiment [web] Move editor redesign to labs experiment GitOrigin-RevId: 5f11ff29a6c392ff6e448a16450e2e65a2574097 --- .../web/frontend/extracted-translations.json | 2 ++ .../ide-redesign/components/labs-widget.tsx | 32 +++++++++++++++++++ .../ide-redesign/images/labs-icon.svg | 4 +++ .../ide-redesign/utils/new-editor-utils.ts | 6 ++-- services/web/frontend/js/utils/labs-utils.ts | 2 +- services/web/locales/en.json | 2 ++ 6 files changed, 43 insertions(+), 5 deletions(-) create mode 100644 services/web/frontend/js/features/ide-redesign/components/labs-widget.tsx create mode 100644 services/web/frontend/js/features/ide-redesign/images/labs-icon.svg diff --git a/services/web/frontend/extracted-translations.json b/services/web/frontend/extracted-translations.json index d31318c61e..0b09d21471 100644 --- a/services/web/frontend/extracted-translations.json +++ b/services/web/frontend/extracted-translations.json @@ -46,6 +46,7 @@ "access_denied": "", "access_edit_your_projects": "", "access_levels_changed": "", + "access_your_favourite_features_faster_with_our_new_streamlined_editor": "", "account_billed_manually": "", "account_has_been_link_to_institution_account": "", "account_has_past_due_invoice_change_plan_warning": "", @@ -1048,6 +1049,7 @@ "new_look_and_placement_of_the_settings": "", "new_name": "", "new_navigation_introducing_left_hand_side_rail_and_top_menus": "", + "new_overleaf_editor": "", "new_password": "", "new_project": "", "new_subscription_will_be_billed_immediately": "", diff --git a/services/web/frontend/js/features/ide-redesign/components/labs-widget.tsx b/services/web/frontend/js/features/ide-redesign/components/labs-widget.tsx new file mode 100644 index 0000000000..6b9cc657b5 --- /dev/null +++ b/services/web/frontend/js/features/ide-redesign/components/labs-widget.tsx @@ -0,0 +1,32 @@ +import { useState } from 'react' +import LabsExperimentWidget from '../../../shared/components/labs/labs-experiments-widget' +import { isInExperiment } from '@/utils/labs-utils' +import { useTranslation } from 'react-i18next' +import labsIcon from '../images/labs-icon.svg' + +const EditorRedesignLabsWidget = ({ + labsProgram, + setErrorMessage, +}: { + labsProgram: boolean + setErrorMessage: (err: string) => void +}) => { + const { t } = useTranslation() + const [optedIn, setOptedIn] = useState(isInExperiment('editor-redesign')) + return ( +