From c342dc70a5a113cd5e8bd4db4ddb3ad3ac43fb84 Mon Sep 17 00:00:00 2001 From: David <33458145+davidmcpowell@users.noreply.github.com> Date: Tue, 18 Jun 2024 14:14:48 +0100 Subject: [PATCH] Merge pull request #18927 from overleaf/dp-remove-grammarly-promo Remove Grammarly advert GitOrigin-RevId: 6652cfafc47f8a42efc9acc1745a50e4ab8cc208 --- .../web/frontend/extracted-translations.json | 1 - .../components/grammarly-advert.tsx | 107 ------------------ .../components/source-editor.tsx | 2 - .../web/frontend/stylesheets/app/editor.less | 1 - services/web/locales/en.json | 1 - 5 files changed, 112 deletions(-) delete mode 100644 services/web/frontend/js/features/source-editor/components/grammarly-advert.tsx diff --git a/services/web/frontend/extracted-translations.json b/services/web/frontend/extracted-translations.json index d174fc8665..9f19d5b2be 100644 --- a/services/web/frontend/extracted-translations.json +++ b/services/web/frontend/extracted-translations.json @@ -163,7 +163,6 @@ "checking_project_github_status": "", "choose_a_custom_color": "", "choose_from_group_members": "", - "claim_discount": "", "clear_cached_files": "", "clear_search": "", "click_here_to_view_sl_in_lng": "", diff --git a/services/web/frontend/js/features/source-editor/components/grammarly-advert.tsx b/services/web/frontend/js/features/source-editor/components/grammarly-advert.tsx deleted file mode 100644 index 6cb4a750d3..0000000000 --- a/services/web/frontend/js/features/source-editor/components/grammarly-advert.tsx +++ /dev/null @@ -1,107 +0,0 @@ -import { useCallback, useEffect, useState } from 'react' -import { Button } from 'react-bootstrap' -import { useTranslation } from 'react-i18next' -import Notification from '@/shared/components/notification' -import useRemindMeLater from '@/shared/hooks/use-remind-me-later' -import GrammarlyLogo from '@/shared/svgs/grammarly-logo' -import * as eventTracking from '../../../infrastructure/event-tracking' -import useWaitForGrammarlyCheck from '@/shared/hooks/use-wait-for-grammarly-check' -import getMeta from '@/utils/meta' - -export default function GrammarlyAdvert() { - const { isOverleaf } = getMeta('ol-ExposedSettings') - - const [show, setShow] = useState(false) - const { t } = useTranslation() - - // grammarly can take some time to load, we should assume its installed and hide until we know for sure - const grammarlyInstalled = useWaitForGrammarlyCheck({ initialState: false }) - - const { stillDissmissed, remindThemLater, saveDismissed } = - useRemindMeLater('grammarly_advert') - - useEffect(() => { - const showGrammarlyAdvert = grammarlyInstalled && !stillDissmissed - - if (showGrammarlyAdvert) { - eventTracking.sendMB('grammarly-advert-shown') - setShow(true) - } - }, [stillDissmissed, grammarlyInstalled, setShow]) - - const handleDismiss = useCallback(() => { - setShow(false) - saveDismissed() - eventTracking.sendMB('grammarly-advert-dismissed') - }, [saveDismissed]) - - const handleClickClaim = useCallback(() => { - eventTracking.sendMB('promo-click', { - location: 'notification', - name: 'grammarly-advert', - type: 'click', - }) - - saveDismissed() - setShow(false) - - window.open( - 'https://grammarly.go2cloud.org/aff_c?offer_id=373&aff_id=142242' - ) - }, [saveDismissed]) - - const handleLater = useCallback(() => { - eventTracking.sendMB('promo-click', { - location: 'notification', - name: 'grammarly-advert', - type: 'pause', - }) - setShow(false) - remindThemLater() - }, [remindThemLater]) - - if (!isOverleaf || !show) { - return null - } - - const actions = ( -
- - -
- ) - - return ( - -

- Get 25% off Grammarly Premium with this exclusive offer for Overleaf - users. -

- - } - customIcon={ -
- -
- } - isActionBelowContent - isDismissible - onDismiss={handleDismiss} - title="Love Grammarly? Then you're in luck!" - type="offer" - /> - ) -} diff --git a/services/web/frontend/js/features/source-editor/components/source-editor.tsx b/services/web/frontend/js/features/source-editor/components/source-editor.tsx index 8fdd2ba14b..40786a2bc2 100644 --- a/services/web/frontend/js/features/source-editor/components/source-editor.tsx +++ b/services/web/frontend/js/features/source-editor/components/source-editor.tsx @@ -3,7 +3,6 @@ import { FullSizeLoadingSpinner } from '../../../shared/components/loading-spinn import withErrorBoundary from '../../../infrastructure/error-boundary' import { ErrorBoundaryFallback } from '../../../shared/components/error-boundary-fallback' import importOverleafModules from '../../../../macros/import-overleaf-module.macro' -import GrammarlyAdvert from './grammarly-advert' const editorPromotions = importOverleafModules('editorPromotions') as { import: { default: ElementType } @@ -21,7 +20,6 @@ function SourceEditor() { {editorPromotions.map(({ import: { default: Component }, path }) => ( ))} - ) diff --git a/services/web/frontend/stylesheets/app/editor.less b/services/web/frontend/stylesheets/app/editor.less index 80ebcbb4da..d4b449e0c4 100644 --- a/services/web/frontend/stylesheets/app/editor.less +++ b/services/web/frontend/stylesheets/app/editor.less @@ -713,7 +713,6 @@ CodeMirror } } -.grammarly-advert, .legacy-editor-warning { width: 500px; diff --git a/services/web/locales/en.json b/services/web/locales/en.json index 4e0dcd471b..c4c7e4dff4 100644 --- a/services/web/locales/en.json +++ b/services/web/locales/en.json @@ -238,7 +238,6 @@ "choose_from_group_members": "Choose from group members", "choose_your_plan": "Choose your plan", "city": "City", - "claim_discount": "Claim discount", "clear_cached_files": "Clear cached files", "clear_search": "clear search", "clear_sessions": "Clear Sessions",