Skip to content

Commit f4306b7

Browse files
heiskrCopilot
andauthored
🧹 Remove unused CTAPopover context and related code (#60847)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 21d3459 commit f4306b7

6 files changed

Lines changed: 3 additions & 160 deletions

File tree

‎src/fixtures/helpers/turn-off-experiments.ts‎

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -44,18 +44,3 @@ export function turnOffExperimentsBeforeEach(test: typeof Test) {
4444
await turnOffExperimentsInPage(page)
4545
})
4646
}
47-
48-
export async function dismissCTAPopover(page: Page) {
49-
// Set the CTA popover to permanently dismissed in localStorage
50-
await page.evaluate(() => {
51-
localStorage.setItem(
52-
'ctaPopoverState',
53-
JSON.stringify({
54-
dismissedCount: 0,
55-
lastDismissedAt: null,
56-
permanentlyDismissed: true,
57-
}),
58-
)
59-
})
60-
await page.reload()
61-
}

‎src/fixtures/tests/playwright-rendering.spec.ts‎

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import dotenv from 'dotenv'
22
import { test, expect } from '@playwright/test'
3-
import { turnOffExperimentsInPage, dismissCTAPopover } from '../helpers/turn-off-experiments'
3+
import { turnOffExperimentsInPage } from '../helpers/turn-off-experiments'
44
import { HOVERCARDS_ENABLED, ANALYTICS_ENABLED } from '../../frame/lib/constants'
55

66
// This exists for the benefit of local testing.
@@ -22,7 +22,6 @@ test('view home page', async ({ page }) => {
2222
test('logo link keeps current version', async ({ page }) => {
2323
await page.goto('/enterprise-cloud@latest')
2424
await turnOffExperimentsInPage(page)
25-
await dismissCTAPopover(page)
2625
// Basically clicking into any page that isn't the home page for this version.
2726
await page.getByTestId('product').getByRole('link', { name: 'Get started' }).click()
2827
await expect(page).toHaveURL(/\/en\/enterprise-cloud@latest\/get-started/)
@@ -58,7 +57,6 @@ test('do a search from home page and click on "Foo" page', async ({ page }) => {
5857

5958
await page.goto('/')
6059
await turnOffExperimentsInPage(page)
61-
await dismissCTAPopover(page)
6260

6361
// Use the search overlay
6462
await page.locator('[data-testid="search"]:visible').click()
@@ -84,7 +82,6 @@ test('open search, and perform a general search', async ({ page }) => {
8482

8583
await page.goto('/')
8684
await turnOffExperimentsInPage(page)
87-
await dismissCTAPopover(page)
8885

8986
await page.locator('[data-testid="search"]:visible').click()
9087
await page.getByTestId('overlay-search-input').fill('serve playwright')
@@ -182,7 +179,6 @@ test('search from enterprise-cloud and filter by top-level Fooing', async ({ pag
182179

183180
await page.goto('/enterprise-cloud@latest')
184181
await turnOffExperimentsInPage(page)
185-
await dismissCTAPopover(page)
186182

187183
// Use the search overlay
188184
await page.locator('[data-testid="search"]:visible').click()
@@ -213,7 +209,6 @@ test.describe('platform picker', () => {
213209
test('switch operating systems', async ({ page }) => {
214210
await page.goto('/get-started/liquid/platform-specific')
215211
await turnOffExperimentsInPage(page)
216-
await dismissCTAPopover(page)
217212

218213
await page.getByTestId('platform-picker').getByRole('link', { name: 'Mac' }).click()
219214
await expect(page).toHaveURL(/\?platform=mac/)
@@ -230,7 +225,6 @@ test.describe('platform picker', () => {
230225
// default platform set to windows in fixture fronmatter
231226
await page.goto('/get-started/liquid/platform-specific')
232227
await turnOffExperimentsInPage(page)
233-
await dismissCTAPopover(page)
234228
await expect(
235229
page.getByTestId('minitoc').getByRole('link', { name: 'Macintosh until 1999' }),
236230
).not.toBeVisible()
@@ -249,7 +243,6 @@ test.describe('platform picker', () => {
249243
test('remember last clicked OS', async ({ page }) => {
250244
await page.goto('/get-started/liquid/platform-specific')
251245
await turnOffExperimentsInPage(page)
252-
await dismissCTAPopover(page)
253246
await page.getByTestId('platform-picker').getByRole('link', { name: 'Windows' }).click()
254247

255248
// Return and now the cookie should start us off on Windows again
@@ -263,7 +256,6 @@ test.describe('tool picker', () => {
263256
test('switch tools', async ({ page }) => {
264257
await page.goto('/get-started/liquid/tool-specific')
265258
await turnOffExperimentsInPage(page)
266-
await dismissCTAPopover(page)
267259

268260
await page.getByTestId('tool-picker').getByRole('link', { name: 'GitHub CLI' }).click()
269261
await expect(page).toHaveURL(/\?tool=cli/)
@@ -289,7 +281,6 @@ test.describe('tool picker', () => {
289281
test('remember last clicked tool', async ({ page }) => {
290282
await page.goto('/get-started/liquid/tool-specific')
291283
await turnOffExperimentsInPage(page)
292-
await dismissCTAPopover(page)
293284
await page.getByTestId('tool-picker').getByRole('link', { name: 'Web browser' }).click()
294285

295286
// Return and now the cookie should start us off with Web UI content again
@@ -303,7 +294,6 @@ test.describe('tool picker', () => {
303294
// default tool set to webui in fixture frontmatter
304295
await page.goto('/get-started/liquid/tool-specific')
305296
await turnOffExperimentsInPage(page)
306-
await dismissCTAPopover(page)
307297
await expect(
308298
page.getByTestId('minitoc').getByRole('link', { name: 'Webui section' }),
309299
).toBeVisible()
@@ -353,7 +343,6 @@ test.describe('hover cards', () => {
353343
test('hover over link', async ({ page }) => {
354344
await page.goto('/pages/quickstart')
355345
await turnOffExperimentsInPage(page)
356-
await dismissCTAPopover(page)
357346

358347
// hover over a link and check for intro content from hovercard
359348
await page
@@ -416,7 +405,6 @@ test.describe('hover cards', () => {
416405
test('use keyboard shortcut to open hover card', async ({ page }) => {
417406
await page.goto('/pages/quickstart')
418407
await turnOffExperimentsInPage(page)
419-
await dismissCTAPopover(page)
420408

421409
// Simply putting focus on the link should not open the hovercard
422410
await page
@@ -449,7 +437,6 @@ test.describe('hover cards', () => {
449437
test('able to use Esc to close hovercard', async ({ page }) => {
450438
await page.goto('/pages/quickstart')
451439
await turnOffExperimentsInPage(page)
452-
await dismissCTAPopover(page)
453440

454441
// hover over a link and check for intro content from hovercard
455442
await page
@@ -598,7 +585,6 @@ test.describe('test nav at different viewports', () => {
598585
})
599586
await page.goto('/get-started/foo/bar')
600587
await turnOffExperimentsInPage(page)
601-
await dismissCTAPopover(page)
602588

603589
// header sign-up button is not visible
604590
await expect(page.getByTestId('header-signup')).not.toBeVisible()
@@ -635,7 +621,6 @@ test.describe('test nav at different viewports', () => {
635621
})
636622
await page.goto('/get-started/foo/bar')
637623
await turnOffExperimentsInPage(page)
638-
await dismissCTAPopover(page)
639624

640625
// Use the search overlay
641626
await page.locator('[data-testid="mobile-search-button"]:visible').click()
@@ -660,7 +645,6 @@ test.describe('test nav at different viewports', () => {
660645
})
661646
await page.goto('/get-started/foo/bar')
662647
await turnOffExperimentsInPage(page)
663-
await dismissCTAPopover(page)
664648

665649
// Use the search overlay
666650
await page.locator('[data-testid="mobile-search-button"]:visible').click()
@@ -921,7 +905,6 @@ test('open search, and ask Copilot (Ask AI) a question', async ({ page }) => {
921905

922906
await page.goto('/')
923907
await turnOffExperimentsInPage(page)
924-
await dismissCTAPopover(page)
925908

926909
await page.locator('[data-testid="search"]:visible').click()
927910
await page.getByTestId('overlay-search-input').fill('How do I create a Repository?')
@@ -964,7 +947,6 @@ test('open search, Ask AI returns 400 error and shows general search results', a
964947

965948
await page.goto('/')
966949
await turnOffExperimentsInPage(page)
967-
await dismissCTAPopover(page)
968950

969951
await page.locator('[data-testid="search"]:visible').click()
970952
await page.getByTestId('overlay-search-input').fill('foo')

‎src/frame/components/context/CTAContext.tsx‎

Lines changed: 0 additions & 108 deletions
This file was deleted.

‎src/frame/components/page-header/Header.tsx‎

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ import { HeaderSearchAndWidgets } from './HeaderSearchAndWidgets'
1919
import { useInnerWindowWidth } from './hooks/useInnerWindowWidth'
2020
import { useMultiQueryParams } from '@/search/components/hooks/useMultiQueryParams'
2121
import { SearchOverlayContainer } from '@/search/components/input/SearchOverlayContainer'
22-
import { useCTAPopoverContext } from '@/frame/components/context/CTAContext'
2322
import { useSearchOverlayContext } from '@/search/components/context/SearchOverlayContext'
2423

2524
import styles from './Header.module.scss'
@@ -45,7 +44,6 @@ export const Header = () => {
4544
const returnFocusRef = useRef(null)
4645
const searchButtonRefLarge = useRef<HTMLButtonElement>(null)
4746
const searchButtonRefSmall = useRef<HTMLButtonElement>(null)
48-
const { initializeCTA } = useCTAPopoverContext()
4947
const { isSearchOpen, setIsSearchOpen } = useSearchOverlayContext()
5048

5149
// The lg breakpoint (1012px) determines which search button is visible.
@@ -74,9 +72,6 @@ export const Header = () => {
7472
/>
7573
)
7674

77-
// Initialize the CTA(s)
78-
initializeCTA()
79-
8075
useEffect(() => {
8176
function onScroll() {
8277
setScroll(window.scrollY > 10)

‎src/frame/pages/app.tsx‎

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ import {
1717
} from '@/languages/components/LanguagesContext'
1818
import { useTheme } from '@/color-schemes/components/useTheme'
1919
import { SharedUIContextProvider } from '@/frame/components/context/SharedUIContext'
20-
import { CTAPopoverProvider } from '@/frame/components/context/CTAContext'
2120
import { ClientSideHashFocus } from '@/frame/components/ClientSideHashFocus'
2221
import type { ExtendedRequest } from '@/types'
2322

@@ -146,10 +145,8 @@ const MyApp = ({ Component, pageProps, languagesContext, stagingName }: MyAppPro
146145
>
147146
<LanguagesContext.Provider value={languagesContext}>
148147
<SharedUIContextProvider>
149-
<CTAPopoverProvider>
150-
<ClientSideHashFocus />
151-
<Component {...pageProps} />
152-
</CTAPopoverProvider>
148+
<ClientSideHashFocus />
149+
<Component {...pageProps} />
153150
</SharedUIContextProvider>
154151
</LanguagesContext.Provider>
155152
</ThemeProvider>

‎src/search/components/input/AskAIResults.tsx‎

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ import { sendEvent, uuidv4 } from '@/events/components/events'
2222
import { EventType } from '@/events/types'
2323
import { generateAISearchLinksJson } from '../helpers/ai-search-links-json'
2424
import { ASK_AI_EVENT_GROUP } from '@/events/components/event-groups'
25-
import { useCTAPopoverContext } from '@/frame/components/context/CTAContext'
2625

2726
import type { AIReference } from '../types'
2827

@@ -83,7 +82,6 @@ export function AskAIResults({
8382
aiCouldNotAnswer: boolean
8483
connectedEventId?: string
8584
}>('ai-query-cache', 1000, 7)
86-
const { isOpen: isCTAOpen, permanentDismiss: permanentlyDismissCTA } = useCTAPopoverContext()
8785

8886
let copyUrl = ``
8987
if (window?.location?.href) {
@@ -145,12 +143,6 @@ export function AskAIResults({
145143
setResponseLoading(true)
146144
disclaimerRef.current?.focus()
147145

148-
// We permanently dismiss the CTA after performing an AI Search because the
149-
// user has tried it and doesn't require additional CTA prompting to try it
150-
if (isCTAOpen) {
151-
permanentlyDismissCTA()
152-
}
153-
154146
const cachedData = getItem(query, version, router.locale || 'en')
155147
if (cachedData) {
156148
setMessage(cachedData.message)

0 commit comments

Comments
 (0)