Skip to content

Commit 9782e9e

Browse files
authored
Merge pull request Expensify#89919 from callstack-internal/refactor/option-row-error-badge
[No QA] refactor: OptionRow.ErrorBadge owns its own translation
2 parents cfeaadd + a615ae8 commit 9782e9e

2 files changed

Lines changed: 14 additions & 8 deletions

File tree

src/components/LHNOptionsList/OptionRowLHN/OptionRowErrorBadge.tsx renamed to src/components/LHNOptionsList/OptionRowLHN/OptionRow/ErrorBadge.tsx

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,26 +2,32 @@ import React from 'react';
22
import {View} from 'react-native';
33
import Badge from '@components/Badge';
44
import Icon from '@components/Icon';
5+
import useEnvironment from '@hooks/useEnvironment';
56
import {useMemoizedLazyExpensifyIcons} from '@hooks/useLazyAsset';
7+
import useLocalize from '@hooks/useLocalize';
68
import useTheme from '@hooks/useTheme';
79
import useThemeStyles from '@hooks/useThemeStyles';
810
import type {OptionData} from '@libs/ReportUtils';
911
import CONST from '@src/CONST';
1012

11-
type OptionRowErrorBadgeProps = {
13+
type ErrorBadgeProps = {
1214
brickRoadIndicator: OptionData['brickRoadIndicator'];
13-
actionBadgeText: string;
15+
actionBadge: OptionData['actionBadge'];
1416
};
1517

16-
function OptionRowErrorBadge({brickRoadIndicator, actionBadgeText}: OptionRowErrorBadgeProps) {
18+
function ErrorBadge({brickRoadIndicator, actionBadge}: ErrorBadgeProps) {
1719
const theme = useTheme();
1820
const styles = useThemeStyles();
21+
const {translate} = useLocalize();
22+
const {isProduction} = useEnvironment();
1923
const {DotIndicator} = useMemoizedLazyExpensifyIcons(['DotIndicator']);
2024

2125
if (brickRoadIndicator !== CONST.BRICK_ROAD_INDICATOR_STATUS.ERROR) {
2226
return null;
2327
}
2428

29+
const actionBadgeText = !isProduction && actionBadge ? translate(`common.actionBadge.${actionBadge}`) : '';
30+
2531
return (
2632
<View style={[styles.alignItemsCenter, styles.justifyContentCenter]}>
2733
{actionBadgeText ? (
@@ -41,6 +47,6 @@ function OptionRowErrorBadge({brickRoadIndicator, actionBadgeText}: OptionRowErr
4147
);
4248
}
4349

44-
OptionRowErrorBadge.displayName = 'OptionRowErrorBadge';
50+
ErrorBadge.displayName = 'OptionRow.ErrorBadge';
4551

46-
export default OptionRowErrorBadge;
52+
export default ErrorBadge;

src/components/LHNOptionsList/OptionRowLHN/OptionRowLHNCore.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@ import CONST from '@src/CONST';
2525
import ONYXKEYS from '@src/ONYXKEYS';
2626
import DescriptiveText from './OptionRow/DescriptiveText';
2727
import DraftIndicator from './OptionRow/DraftIndicator';
28+
import ErrorBadge from './OptionRow/ErrorBadge';
2829
import Subtitle from './OptionRow/Subtitle';
2930
import Title from './OptionRow/Title';
3031
import OptionRowAvatar from './OptionRowAvatar';
31-
import OptionRowErrorBadge from './OptionRowErrorBadge';
3232
import OptionRowInfoBadge from './OptionRowInfoBadge';
3333
import OptionRowPressable from './OptionRowPressable';
3434
import OptionRowTooltipLayer from './OptionRowTooltipLayer';
@@ -153,9 +153,9 @@ function OptionRowLHN({isOptionFocused = false, onSelectRow = () => {}, optionIt
153153
/>
154154
</View>
155155
<DescriptiveText optionItem={optionItem} />
156-
<OptionRowErrorBadge
156+
<ErrorBadge
157157
brickRoadIndicator={brickRoadIndicator}
158-
actionBadgeText={actionBadgeText}
158+
actionBadge={optionItem.actionBadge}
159159
/>
160160
</View>
161161
</View>

0 commit comments

Comments
 (0)