Skip to content

Commit 75c5045

Browse files
committed
refactor(ui): centralize useSnapPoints usage
1 parent e2c6de4 commit 75c5045

24 files changed

+29
-74
lines changed

src/components/BottomSheet.tsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import { StyleSheet } from 'react-native';
1010
import { useReducedMotion } from 'react-native-reanimated';
1111

1212
import { __E2E__ } from '../constants/env';
13+
import { useSnapPoints } from '../hooks/bottomSheet';
1314
import useColors from '../hooks/colors';
1415
import { useAppDispatch, useAppSelector } from '../hooks/redux';
1516
import { useSheetRef } from '../navigation/bottom-sheet/SheetRefsProvider';
@@ -20,7 +21,7 @@ import BottomSheetBackground from './BottomSheetBackground';
2021

2122
type SheetProps = {
2223
id: SheetId;
23-
snapPoints: number[];
24+
size?: 'small' | 'medium' | 'large' | 'calendar';
2425
children: ReactNode;
2526
testID?: string;
2627
onOpen?: () => void;
@@ -29,7 +30,7 @@ type SheetProps = {
2930

3031
const Sheet = ({
3132
id,
32-
snapPoints,
33+
size = 'large',
3334
children,
3435
testID,
3536
onOpen,
@@ -38,6 +39,7 @@ const Sheet = ({
3839
const colors = useColors();
3940
const sheetRef = useSheetRef(id);
4041
const isReducedMotion = useReducedMotion();
42+
const snapPoints = useSnapPoints(size);
4143
const dispatch = useAppDispatch();
4244
const data = useAppSelector((state) => sheetSelector(state, id));
4345

src/navigation/bottom-sheet/AppUpdatePrompt.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import { Trans, useTranslation } from 'react-i18next';
44
import BottomSheet from '../../components/BottomSheet';
55
import BottomSheetScreen from '../../components/BottomSheetScreen';
66
import { __E2E__ } from '../../constants/env';
7-
import { useSnapPoints } from '../../hooks/bottomSheet';
87
import { useAppDispatch, useAppSelector } from '../../hooks/redux';
98
import { availableUpdateSelector } from '../../store/reselect/ui';
109
import { ignoreAppUpdateTimestampSelector } from '../../store/reselect/user';
@@ -22,7 +21,6 @@ const sheetId = 'appUpdate';
2221

2322
const AppUpdatePrompt = (): ReactElement => {
2423
const { t } = useTranslation('other');
25-
const snapPoints = useSnapPoints('large');
2624
const dispatch = useAppDispatch();
2725
const sheetRefs = useAllSheetRefs();
2826
const sheetRef = useSheetRef(sheetId);
@@ -73,7 +71,7 @@ const AppUpdatePrompt = (): ReactElement => {
7371
};
7472

7573
return (
76-
<BottomSheet id={sheetId} snapPoints={snapPoints} onClose={onClose}>
74+
<BottomSheet id={sheetId} size="large" onClose={onClose}>
7775
<BottomSheetScreen
7876
navTitle={t('update_nav_title')}
7977
title={

src/navigation/bottom-sheet/BackupNavigation.tsx

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import React, { ReactElement, memo } from 'react';
88

99
import BottomSheet from '../../components/BottomSheet';
1010
import { __E2E__ } from '../../constants/env';
11-
import { useSnapPoints } from '../../hooks/bottomSheet';
1211
import ConfirmMnemonic from '../../screens/Settings/Backup/ConfirmMnemonic';
1312
import ConfirmPassphrase from '../../screens/Settings/Backup/ConfirmPassphrase';
1413
import Metadata from '../../screens/Settings/Backup/Metadata';
@@ -41,10 +40,8 @@ const navOptions: NativeStackNavigationOptions = {
4140
};
4241

4342
const BackupNavigation = (): ReactElement => {
44-
const snapPoints = useSnapPoints('medium');
45-
4643
return (
47-
<BottomSheet id="backupNavigation" snapPoints={snapPoints}>
44+
<BottomSheet id="backupNavigation" size="medium">
4845
<NavigationIndependentTree>
4946
<BottomSheetNavigationContainer>
5047
<Stack.Navigator screenOptions={navOptions}>

src/navigation/bottom-sheet/BackupPrompt.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import { Trans, useTranslation } from 'react-i18next';
44
import BottomSheet from '../../components/BottomSheet';
55
import BottomSheetScreen from '../../components/BottomSheetScreen';
66
import { __E2E__ } from '../../constants/env';
7-
import { useSnapPoints } from '../../hooks/bottomSheet';
87
import { useAppDispatch, useAppSelector } from '../../hooks/redux';
98
import { useBalance } from '../../hooks/wallet';
109
import { backupVerifiedSelector } from '../../store/reselect/user';
@@ -26,7 +25,6 @@ const BackupPrompt = (): ReactElement => {
2625
const sheetRefs = useAllSheetRefs();
2726
const sheetRef = useSheetRef(sheetId);
2827
const backupNavigationSheetRef = useSheetRef('backupNavigation');
29-
const snapPoints = useSnapPoints('medium');
3028
const ignoreTimestamp = useAppSelector(ignoreBackupTimestampSelector);
3129
const backupVerified = useAppSelector(backupVerifiedSelector);
3230
const { totalBalance } = useBalance();
@@ -76,7 +74,7 @@ const BackupPrompt = (): ReactElement => {
7674
return (
7775
<BottomSheet
7876
id={sheetId}
79-
snapPoints={snapPoints}
77+
size="medium"
8078
onClose={(): void => {
8179
dispatch(ignoreBackup());
8280
}}>

src/navigation/bottom-sheet/ConnectionClosed.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,23 +6,21 @@ import BottomSheet from '../../components/BottomSheet';
66
import BottomSheetNavigationHeader from '../../components/BottomSheetNavigationHeader';
77
import SafeAreaInset from '../../components/SafeAreaInset';
88
import Button from '../../components/buttons/Button';
9-
import { useSnapPoints } from '../../hooks/bottomSheet';
109
import { BodyM } from '../../styles/text';
1110
import { useSheetRef } from './SheetRefsProvider';
1211

1312
const imageSrc = require('../../assets/illustrations/switch.png');
1413

1514
const ConnectionClosed = (): ReactElement => {
1615
const { t } = useTranslation('lightning');
17-
const snapPoints = useSnapPoints('medium');
1816
const sheetRef = useSheetRef('connectionClosed');
1917

2018
const onContinue = (): void => {
2119
sheetRef.current?.close();
2220
};
2321

2422
return (
25-
<BottomSheet id="connectionClosed" snapPoints={snapPoints}>
23+
<BottomSheet id="connectionClosed" size="medium">
2624
<View style={styles.container}>
2725
<BottomSheetNavigationHeader
2826
title={t('connection_closed.title')}

src/navigation/bottom-sheet/ForceTransfer.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import { Trans, useTranslation } from 'react-i18next';
33

44
import BottomSheet from '../../components/BottomSheet';
55
import BottomSheetScreen from '../../components/BottomSheetScreen';
6-
import { useSnapPoints } from '../../hooks/bottomSheet';
76
import { useAppDispatch, useAppSelector } from '../../hooks/redux';
87
import { startCoopCloseTimestampSelector } from '../../store/reselect/user';
98
import { clearCoopCloseTimer } from '../../store/slices/user';
@@ -19,7 +18,6 @@ const GIVE_UP = 1000 * 60 * 30;
1918

2019
const ForceTransfer = (): ReactElement => {
2120
const { t } = useTranslation('lightning');
22-
const snapPoints = useSnapPoints('large');
2321
const dispatch = useAppDispatch();
2422
const sheetRef = useSheetRef('forceTransfer');
2523
const startTime = useAppSelector(startCoopCloseTimestampSelector);
@@ -110,7 +108,7 @@ const ForceTransfer = (): ReactElement => {
110108
};
111109

112110
return (
113-
<BottomSheet id="forceTransfer" snapPoints={snapPoints}>
111+
<BottomSheet id="forceTransfer" size="large">
114112
<BottomSheetScreen
115113
navTitle={t('force_nav_title')}
116114
title={

src/navigation/bottom-sheet/HighBalanceWarning.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import { Trans, useTranslation } from 'react-i18next';
44
import BottomSheet from '../../components/BottomSheet';
55
import BottomSheetScreen from '../../components/BottomSheetScreen';
66
import { __E2E__ } from '../../constants/env';
7-
import { useSnapPoints } from '../../hooks/bottomSheet';
87
import { useAppDispatch, useAppSelector } from '../../hooks/redux';
98
import { useBalance } from '../../hooks/wallet';
109
import {
@@ -30,7 +29,6 @@ const sheetId = 'highBalance';
3029
const HighBalanceWarning = (): ReactElement => {
3130
const { t } = useTranslation('other');
3231
const { totalBalance } = useBalance();
33-
const snapPoints = useSnapPoints('large');
3432
const dispatch = useAppDispatch();
3533
const sheetRefs = useAllSheetRefs();
3634
const sheetRef = useSheetRef(sheetId);
@@ -91,7 +89,7 @@ const HighBalanceWarning = (): ReactElement => {
9189
return (
9290
<BottomSheet
9391
id={sheetId}
94-
snapPoints={snapPoints}
92+
size="large"
9593
onClose={(): void => {
9694
dispatch(ignoreHighBalance(false));
9795
}}>

src/navigation/bottom-sheet/LNURLWithdrawNavigation.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import React, { ReactElement, memo } from 'react';
99

1010
import BottomSheet from '../../components/BottomSheet';
1111
import { __E2E__ } from '../../constants/env';
12-
import { useSnapPoints } from '../../hooks/bottomSheet';
1312
import { useAppSelector } from '../../hooks/redux';
1413
import Amount from '../../screens/Wallets/LNURLWithdraw/Amount';
1514
import Confirm from '../../screens/Wallets/LNURLWithdraw/Confirm';
@@ -32,7 +31,6 @@ const screenOptions: NativeStackNavigationOptions = {
3231
};
3332

3433
const LNURLWithdrawNavigation = (): ReactElement => {
35-
const snapPoints = useSnapPoints('large');
3634
const { isOpen, wParams } = useAppSelector((state) => {
3735
return sheetSelector(state, 'lnurlWithdraw');
3836
});
@@ -46,7 +44,7 @@ const LNURLWithdrawNavigation = (): ReactElement => {
4644
wParams.minWithdrawable === wParams.maxWithdrawable ? 'Confirm' : 'Amount';
4745

4846
return (
49-
<BottomSheet id="lnurlWithdraw" snapPoints={snapPoints}>
47+
<BottomSheet id="lnurlWithdraw" size="large">
5048
<NavigationIndependentTree>
5149
<BottomSheetNavigationContainer key={isOpen.toString()}>
5250
<Stack.Navigator

src/navigation/bottom-sheet/OrangeTicketNavigation.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import React, {
1515

1616
import BottomSheet from '../../components/BottomSheet';
1717
import { __TREASURE_HUNT_HOST__ } from '../../constants/env';
18-
import { useSnapPoints } from '../../hooks/bottomSheet';
1918
import { useAppSelector } from '../../hooks/redux';
2019
import ErrorScreen from '../../screens/OrangeTicket/Error';
2120
import Prize from '../../screens/OrangeTicket/Prize';
@@ -42,7 +41,6 @@ const screenOptions: NativeStackNavigationOptions = {
4241
};
4342

4443
const OrangeTicket = (): ReactElement => {
45-
const snapPoints = useSnapPoints('large');
4644
const [isLoading, setIsLoading] = useState(true);
4745
const [amount, setAmount] = useState<number>();
4846
const [errorCode, setErrorCode] = useState<number>();
@@ -150,7 +148,7 @@ const OrangeTicket = (): ReactElement => {
150148
}
151149

152150
return (
153-
<BottomSheet id="orangeTicket" snapPoints={snapPoints}>
151+
<BottomSheet id="orangeTicket" size="large">
154152
<NavigationIndependentTree>
155153
<BottomSheetNavigationContainer key={isOpen.toString()}>
156154
<Stack.Navigator

src/navigation/bottom-sheet/PINNavigation.tsx

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import { BiometryType } from 'react-native-biometrics';
99

1010
import BottomSheet from '../../components/BottomSheet';
1111
import { __E2E__ } from '../../constants/env';
12-
import { useSnapPoints } from '../../hooks/bottomSheet';
1312
import AskForBiometrics from '../../screens/Settings/PIN/AskForBiometrics';
1413
import ChoosePIN from '../../screens/Settings/PIN/ChoosePIN';
1514
import PINPrompt from '../../screens/Settings/PIN/PINPrompt';
@@ -33,10 +32,8 @@ const screenOptions: NativeStackNavigationOptions = {
3332
};
3433

3534
const PINNavigation = (): ReactElement => {
36-
const snapPoints = useSnapPoints('medium');
37-
3835
return (
39-
<BottomSheet id="pinNavigation" snapPoints={snapPoints}>
36+
<BottomSheet id="pinNavigation" size="medium">
4037
<NavigationIndependentTree>
4138
<BottomSheetNavigationContainer>
4239
<Stack.Navigator screenOptions={screenOptions}>

0 commit comments

Comments
 (0)