Skip to content

Commit 43623b1

Browse files
authored
Merge pull request Expensify#68100 from Expensify/vit-66924
[CP Staging] Revert "Merge pull request Expensify#66924 from callstack-internal/fix/1193-improve-workspace-opening"
2 parents 71941a2 + a8edbd3 commit 43623b1

9 files changed

Lines changed: 12 additions & 24 deletions

src/components/SelectionList/BaseSelectionList.tsx

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -637,16 +637,15 @@ function BaseSelectionList<TItem extends ListItem>(
637637
const isItemFocused = (!isDisabled || selected) && focusedIndex === normalizedIndex;
638638
const isItemHighlighted = !!itemsToHighlight?.has(item.keyForList ?? '');
639639

640-
const newItem = item;
641-
if (!item.isSelected) {
642-
newItem.isSelected = selected;
643-
}
644-
645640
return (
646641
<View onLayout={(event: LayoutChangeEvent) => onItemLayout(event, item?.keyForList)}>
647642
<BaseSelectionListItemRenderer
648643
ListItem={ListItem}
649-
item={newItem}
644+
item={{
645+
shouldAnimateInHighlight: isItemHighlighted,
646+
isSelected: selected,
647+
...item,
648+
}}
650649
shouldUseDefaultRightHandSideCheckmark={shouldUseDefaultRightHandSideCheckmark}
651650
index={index}
652651
isFocused={isItemFocused}
@@ -672,7 +671,6 @@ function BaseSelectionList<TItem extends ListItem>(
672671
singleExecution={singleExecution}
673672
titleContainerStyles={listItemTitleContainerStyles}
674673
canShowProductTrainingTooltip={canShowProductTrainingTooltipMemo}
675-
shouldAnimateInHighlight={isItemHighlighted}
676674
/>
677675
</View>
678676
);

src/components/SelectionList/BaseSelectionListItemRenderer.tsx

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,6 @@ function BaseSelectionListItemRenderer<TItem extends ListItem>({
5050
singleExecution,
5151
titleContainerStyles,
5252
shouldUseDefaultRightHandSideCheckmark,
53-
shouldAnimateInHighlight,
5453
canShowProductTrainingTooltip = true,
5554
userWalletTierName,
5655
isUserValidated,
@@ -107,7 +106,6 @@ function BaseSelectionListItemRenderer<TItem extends ListItem>({
107106
titleContainerStyles={titleContainerStyles}
108107
shouldUseDefaultRightHandSideCheckmark={shouldUseDefaultRightHandSideCheckmark}
109108
canShowProductTrainingTooltip={canShowProductTrainingTooltip}
110-
shouldAnimateInHighlight={shouldAnimateInHighlight}
111109
userWalletTierName={userWalletTierName}
112110
isUserValidated={isUserValidated}
113111
personalDetails={personalDetails}

src/components/SelectionList/ChatListItem.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ function ChatListItem<TItem extends ListItem>({
2222
shouldSyncFocus,
2323
policies,
2424
allReports,
25-
shouldAnimateInHighlight,
2625
userWalletTierName,
2726
isUserValidated,
2827
personalDetails,
@@ -35,7 +34,7 @@ function ChatListItem<TItem extends ListItem>({
3534
const theme = useTheme();
3635
const animatedHighlightStyle = useAnimatedHighlightStyle({
3736
borderRadius: variables.componentBorderRadius,
38-
shouldHighlight: shouldAnimateInHighlight ?? false,
37+
shouldHighlight: item?.shouldAnimateInHighlight ?? false,
3938
highlightColor: theme.messageHighlightBG,
4039
backgroundColor: theme.highlightBG,
4140
});

src/components/SelectionList/Search/TaskListItem.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ function TaskListItem<TItem extends ListItem>({
1818
onFocus,
1919
onLongPressRow,
2020
shouldSyncFocus,
21-
shouldAnimateInHighlight,
2221
}: TaskListItemProps<TItem>) {
2322
const taskItem = item as unknown as TaskListItemType;
2423
const styles = useThemeStyles();
@@ -44,7 +43,7 @@ function TaskListItem<TItem extends ListItem>({
4443

4544
const animatedHighlightStyle = useAnimatedHighlightStyle({
4645
borderRadius: variables.componentBorderRadius,
47-
shouldHighlight: shouldAnimateInHighlight ?? false,
46+
shouldHighlight: item?.shouldAnimateInHighlight ?? false,
4847
highlightColor: theme.messageHighlightBG,
4948
backgroundColor: theme.highlightBG,
5049
});

src/components/SelectionList/Search/TransactionGroupListItem.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,6 @@ function TransactionGroupListItem<TItem extends ListItem>({
4545
onLongPressRow,
4646
shouldSyncFocus,
4747
groupBy,
48-
shouldAnimateInHighlight,
4948
}: TransactionGroupListItemProps<TItem>) {
5049
const groupItem = item as unknown as TransactionGroupListItemType;
5150
const theme = useTheme();
@@ -68,7 +67,7 @@ function TransactionGroupListItem<TItem extends ListItem>({
6867

6968
const animatedHighlightStyle = useAnimatedHighlightStyle({
7069
borderRadius: variables.componentBorderRadius,
71-
shouldHighlight: shouldAnimateInHighlight ?? false,
70+
shouldHighlight: item?.shouldAnimateInHighlight ?? false,
7271
highlightColor: theme.messageHighlightBG,
7372
backgroundColor: theme.highlightBG,
7473
});

src/components/SelectionList/Search/TransactionListItem.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ function TransactionListItem<TItem extends ListItem>({
3333
onLongPressRow,
3434
shouldSyncFocus,
3535
isLoading,
36-
shouldAnimateInHighlight,
3736
}: TransactionListItemProps<TItem>) {
3837
const transactionItem = item as unknown as TransactionListItemType;
3938
const styles = useThemeStyles();
@@ -60,7 +59,7 @@ function TransactionListItem<TItem extends ListItem>({
6059

6160
const animatedHighlightStyle = useAnimatedHighlightStyle({
6261
borderRadius: variables.componentBorderRadius,
63-
shouldHighlight: shouldAnimateInHighlight ?? false,
62+
shouldHighlight: item?.shouldAnimateInHighlight ?? false,
6463
highlightColor: theme.messageHighlightBG,
6564
backgroundColor: theme.highlightBG,
6665
});

src/components/SelectionList/TableListItem.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,14 @@ function TableListItem<TItem extends ListItem>({
2828
shouldSyncFocus,
2929
titleContainerStyles,
3030
shouldUseDefaultRightHandSideCheckmark,
31-
shouldAnimateInHighlight,
3231
}: TableListItemProps<TItem>) {
3332
const styles = useThemeStyles();
3433
const theme = useTheme();
3534
const StyleUtils = useStyleUtils();
3635

3736
const animatedHighlightStyle = useAnimatedHighlightStyle({
3837
borderRadius: styles.selectionListPressableItemWrapper.borderRadius,
39-
shouldHighlight: !!shouldAnimateInHighlight,
38+
shouldHighlight: !!item.shouldAnimateInHighlight,
4039
highlightColor: theme.messageHighlightBG,
4140
backgroundColor: theme.highlightBG,
4241
});
@@ -60,7 +59,7 @@ function TableListItem<TItem extends ListItem>({
6059
styles.selectionListPressableItemWrapper,
6160
styles.mh0,
6261
// Removing background style because they are added to the parent OpacityView via animatedHighlightStyle
63-
shouldAnimateInHighlight ? styles.bgTransparent : undefined,
62+
item.shouldAnimateInHighlight ? styles.bgTransparent : undefined,
6463
item.isSelected && styles.activeComponentBG,
6564
item.cursorStyle,
6665
],

src/components/SelectionList/types.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -375,9 +375,6 @@ type ListItemProps<TItem extends ListItem> = CommonListItemProps<TItem> & {
375375

376376
/** Whether to show the default right hand side checkmark */
377377
shouldUseDefaultRightHandSideCheckmark?: boolean;
378-
379-
/** Whether to animate in highlight */
380-
shouldAnimateInHighlight?: boolean;
381378
};
382379

383380
type BaseListItemProps<TItem extends ListItem> = CommonListItemProps<TItem> & {
@@ -398,7 +395,6 @@ type BaseListItemProps<TItem extends ListItem> = CommonListItemProps<TItem> & {
398395
testID?: string;
399396
/** Whether to show the default right hand side checkmark */
400397
shouldUseDefaultRightHandSideCheckmark?: boolean;
401-
shouldAnimateInHighlight?: boolean;
402398
};
403399

404400
type UserListItemProps<TItem extends ListItem> = ListItemProps<TItem> & {

tests/unit/BaseSelectionListTest.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ describe('BaseSelectionList', () => {
8787
fireEvent.press(screen.getByTestId(`${CONST.BASE_LIST_ITEM_TEST_ID}1`));
8888
expect(onSelectRowMock).toHaveBeenCalledWith({
8989
...mockSections.at(1),
90+
shouldAnimateInHighlight: false,
9091
});
9192
});
9293

0 commit comments

Comments
 (0)