Skip to content

Commit 055c9a7

Browse files
Remove deprecated Button component (#4807)
* fire * Create strong-tables-rest.md * fix import * Update .changeset/strong-tables-rest.md Co-authored-by: Josh Black <joshblack@github.com> * fix test * remove test * fix * snaps * fix tests --------- Co-authored-by: Josh Black <joshblack@github.com>
1 parent 21c3fce commit 055c9a7

23 files changed

+324
-1061
lines changed

.changeset/strong-tables-rest.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@primer/react": major
3+
---
4+
5+
Remove deprecated `Button` component

packages/react/src/ConfirmationDialog/ConfirmationDialog.test.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import React, {useCallback, useRef, useState} from 'react'
55
import {ActionMenu} from '../deprecated/ActionMenu'
66
import BaseStyles from '../BaseStyles'
77
import Box from '../Box'
8-
import Button from '../deprecated/Button/Button'
8+
import {Button} from '../Button'
99
import {ConfirmationDialog, useConfirm} from './ConfirmationDialog'
1010
import theme from '../theme'
1111
import {ThemeProvider} from '../ThemeProvider'

packages/react/src/Details/__tests__/Details.test.tsx

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
import {render} from '@testing-library/react'
22
import userEvent from '@testing-library/user-event'
33
import React from 'react'
4-
import {Details, useDetails, Box} from '../..'
5-
import {Button, ButtonPrimary} from '../../deprecated'
6-
import type {ButtonProps} from '../../deprecated/Button/Button'
4+
import {Details, useDetails, Box, Button} from '../..'
5+
import type {ButtonProps} from '../../Button'
76
import {behavesAsComponent, checkExports} from '../../utils/testing'
87
import axe from 'axe-core'
98

@@ -42,9 +41,7 @@ describe('Details', () => {
4241
const {getDetailsProps, open} = useDetails({closeOnOutsideClick: true})
4342
return (
4443
<Details {...getDetailsProps()} data-testid="details">
45-
<Button as="summary" data-testid="summary">
46-
{open ? 'Open' : 'Closed'}
47-
</Button>
44+
<summary data-testid="summary">{open ? 'Open' : 'Closed'}</summary>
4845
</Details>
4946
)
5047
}
@@ -64,9 +61,7 @@ describe('Details', () => {
6461
const {getDetailsProps, setOpen, open} = useDetails({closeOnOutsideClick: true, defaultOpen: true})
6562
return (
6663
<Details {...getDetailsProps()} data-testid="details">
67-
<Button as="summary" data-testid="summary">
68-
{open ? 'Open' : 'Closed'}
69-
</Button>
64+
<summary data-testid="summary">{open ? 'Open' : 'Closed'}</summary>
7065
<CloseButton onClick={() => setOpen(false)}>Close</CloseButton>
7166
</Details>
7267
)
@@ -86,11 +81,9 @@ describe('Details', () => {
8681
const {getDetailsProps, open} = useDetails({closeOnOutsideClick: true, defaultOpen: true})
8782
return (
8883
<Details {...getDetailsProps()}>
89-
<Button as="summary" data-testid="summary">
90-
{open ? 'Open' : 'Closed'}
91-
</Button>
84+
<summary data-testid="summary">{open ? 'Open' : 'Closed'}</summary>
9285
<Box>
93-
<ButtonPrimary>test</ButtonPrimary>
86+
<Button variant="primary">test</Button>
9487
</Box>
9588
</Details>
9689
)

packages/react/src/Overlay/Overlay.test.tsx

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import React, {useRef, useState} from 'react'
2-
import {Overlay, Box, Text} from '..'
3-
import {ButtonDanger, Button} from '../deprecated'
2+
import {Overlay, Box, Text, Button} from '..'
43
import {render, waitFor, fireEvent} from '@testing-library/react'
54
import userEvent from '@testing-library/user-event'
65
import axe from 'axe-core'
@@ -43,7 +42,9 @@ const TestComponent = ({initialFocus, callback}: TestComponentSettings) => {
4342
>
4443
<Box display="flex" flexDirection="column" p={2}>
4544
<Text>Are you sure?</Text>
46-
<ButtonDanger onClick={closeOverlay}>Cancel</ButtonDanger>
45+
<Button variant="danger" onClick={closeOverlay}>
46+
Cancel
47+
</Button>
4748
<Button onClick={closeOverlay} ref={confirmButtonRef}>
4849
Confirm
4950
</Button>
@@ -65,19 +66,19 @@ describe('Overlay', () => {
6566

6667
it('should focus element passed into function', async () => {
6768
const user = userEvent.setup()
68-
const {getByText} = render(<TestComponent initialFocus="button" />)
69-
await user.click(getByText('open overlay'))
70-
await waitFor(() => getByText('Confirm'))
71-
const confirmButton = getByText('Confirm')
69+
const {getByRole} = render(<TestComponent initialFocus="button" />)
70+
await user.click(getByRole('button', {name: 'open overlay'}))
71+
await waitFor(() => getByRole('button', {name: 'Confirm'}))
72+
const confirmButton = getByRole('button', {name: 'Confirm'})
7273
expect(document.activeElement).toEqual(confirmButton)
7374
})
7475

7576
it('should focus first element when nothing is passed', async () => {
7677
const user = userEvent.setup()
77-
const {getByText} = render(<TestComponent />)
78-
await user.click(getByText('open overlay'))
79-
await waitFor(() => getByText('Cancel'))
80-
const cancelButton = getByText('Cancel')
78+
const {getByRole} = render(<TestComponent />)
79+
await user.click(getByRole('button', {name: 'open overlay'}))
80+
await waitFor(() => getByRole('button', {name: 'Cancel'}))
81+
const cancelButton = getByRole('button', {name: 'Cancel'})
8182
expect(document.activeElement).toEqual(cancelButton)
8283
})
8384

packages/react/src/__tests__/AnchoredOverlay.test.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import {AnchoredOverlay} from '../AnchoredOverlay'
33
import {behavesAsComponent, checkExports} from '../utils/testing'
44
import {render as HTMLRender, fireEvent} from '@testing-library/react'
55
import axe from 'axe-core'
6-
import {Button} from '../deprecated'
6+
import {Button} from '../Button'
77
import theme from '../theme'
88
import BaseStyles from '../BaseStyles'
99
import {ThemeProvider} from '../ThemeProvider'

0 commit comments

Comments
 (0)