Skip to content

Commit 2102252

Browse files
authored
Remove support for sx from FilteredActionList component (#6876)
1 parent 092185f commit 2102252

File tree

5 files changed

+32
-20
lines changed

5 files changed

+32
-20
lines changed

.changeset/mighty-lizards-lick.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+
Update FilteredActionList and FilteredActionListLoaders components to no longer support sx

packages/react/src/FilteredActionList/FilteredActionList.module.css

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@
1111
flex-grow: 1;
1212
}
1313

14+
.ActionList {
15+
flex-grow: 1;
16+
}
17+
1418
.ActionListItem:focus {
1519
background: var(--control-transparent-bgColor-selected);
1620

packages/react/src/FilteredActionList/FilteredActionList.tsx

Lines changed: 4 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import {useProvidedRefOrCreate} from '../hooks/useProvidedRefOrCreate'
1515
import {useProvidedStateOrCreate} from '../hooks/useProvidedStateOrCreate'
1616
import useScrollFlash from '../hooks/useScrollFlash'
1717
import {VisuallyHidden} from '../VisuallyHidden'
18-
import type {SxProp} from '../sx'
1918
import type {FilteredActionListLoadingType} from './FilteredActionListLoaders'
2019
import {FilteredActionListLoadingTypes, FilteredActionListBodyLoader} from './FilteredActionListLoaders'
2120
import classes from './FilteredActionList.module.css'
@@ -26,14 +25,10 @@ import {isValidElementType} from 'react-is'
2625
import {useAnnouncements} from './useAnnouncements'
2726
import {clsx} from 'clsx'
2827
import {useFeatureFlag} from '../FeatureFlags'
29-
import {BoxWithFallback} from '../internal/components/BoxWithFallback'
3028

3129
const menuScrollMargins: ScrollIntoViewOptions = {startMargin: 0, endMargin: 8}
3230

33-
export interface FilteredActionListProps
34-
extends Partial<Omit<GroupedListProps, keyof ListPropsBase>>,
35-
ListPropsBase,
36-
SxProp {
31+
export interface FilteredActionListProps extends Partial<Omit<GroupedListProps, keyof ListPropsBase>>, ListPropsBase {
3732
loading?: boolean
3833
loadingType?: FilteredActionListLoadingType
3934
placeholderText?: string
@@ -70,7 +65,6 @@ export function FilteredActionList({
7065
items,
7166
textInputProps,
7267
inputRef: providedInputRef,
73-
sx,
7468
groupMetadata,
7569
showItemDividers,
7670
message,
@@ -284,7 +278,7 @@ export function FilteredActionList({
284278
{...listProps}
285279
role="listbox"
286280
id={listId}
287-
sx={{flexGrow: 1}}
281+
className={classes.ActionList}
288282
>
289283
{groupMetadata?.length
290284
? groupMetadata.map((group, index) => {
@@ -349,12 +343,7 @@ export function FilteredActionList({
349343
}
350344

351345
return (
352-
<BoxWithFallback
353-
ref={inputAndListContainerRef}
354-
sx={sx}
355-
className={clsx(className, classes.Root)}
356-
data-testid="filtered-action-list"
357-
>
346+
<div ref={inputAndListContainerRef} className={clsx(className, classes.Root)} data-testid="filtered-action-list">
358347
<StyledHeader>
359348
<TextInput
360349
ref={inputRef}
@@ -396,7 +385,7 @@ export function FilteredActionList({
396385
<div ref={scrollContainerRef} className={classes.Container}>
397386
{getBodyContent()}
398387
</div>
399-
</BoxWithFallback>
388+
</div>
400389
)
401390
}
402391

packages/react/src/FilteredActionList/FilteredActionListLoaders.module.css

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,18 @@
22
/* stylelint-disable-next-line primer/borders */
33
border-radius: 4px;
44
}
5+
6+
.LoadingSpinner {
7+
padding: var(--base-size-16);
8+
flex-grow: 1;
9+
align-content: center;
10+
text-align: center;
11+
height: 100%;
12+
}
13+
14+
.LoadingSkeletonContainer {
15+
padding: var(--base-size-8);
16+
display: flex;
17+
flex-grow: 1;
18+
flex-direction: column;
19+
}

packages/react/src/FilteredActionList/FilteredActionListLoaders.tsx

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import Box from '../Box'
21
import Spinner from '../Spinner'
32
import {Stack} from '../Stack/Stack'
43
import {SkeletonBox} from '../Skeleton/SkeletonBox'
@@ -44,15 +43,15 @@ export function FilteredActionListBodyLoader({
4443

4544
function LoadingSpinner({...props}): JSX.Element {
4645
return (
47-
<Box p={3} flexGrow={1} sx={{alignContent: 'center', textAlign: 'center', height: '100%'}}>
46+
<div className={classes.LoadingSpinner}>
4847
<Spinner {...props} />
49-
</Box>
48+
</div>
5049
)
5150
}
5251

5352
function LoadingSkeleton({rows = 10, ...props}: {rows: number}): JSX.Element {
5453
return (
55-
<Box p={2} display="flex" flexGrow={1} flexDirection="column">
54+
<div className={classes.LoadingSkeletonContainer}>
5655
<Stack direction="vertical" justify="center" gap="condensed" {...props}>
5756
{Array.from({length: rows}, (_, i) => (
5857
<Stack key={i} direction="horizontal" gap="condensed" align="center">
@@ -61,6 +60,6 @@ function LoadingSkeleton({rows = 10, ...props}: {rows: number}): JSX.Element {
6160
</Stack>
6261
))}
6362
</Stack>
64-
</Box>
63+
</div>
6564
)
6665
}

0 commit comments

Comments
 (0)