mirror of https://git.lenooby09.tech/LeNooby09/social-app.git
1import {Pressable, StyleSheet, Text, View} from 'react-native'
2import {LinearGradient} from 'expo-linear-gradient'
3import {msg, Trans} from '@lingui/macro'
4import {useLingui} from '@lingui/react'
5
6import {usePalette} from '#/lib/hooks/usePalette'
7import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries'
8import {colors, gradients, s} from '#/lib/styles'
9
10export const ConfirmLanguagesButton = ({
11 onPress,
12 extraText,
13}: {
14 onPress: () => void
15 extraText?: string
16}) => {
17 const pal = usePalette('default')
18 const {_} = useLingui()
19 const {isMobile} = useWebMediaQueries()
20 return (
21 <View
22 style={[
23 styles.btnContainer,
24 pal.borderDark,
25 isMobile && {
26 paddingBottom: 40,
27 borderTopWidth: 1,
28 },
29 ]}>
30 <Pressable
31 testID="confirmContentLanguagesBtn"
32 onPress={onPress}
33 accessibilityRole="button"
34 accessibilityLabel={_(msg`Confirm content language settings`)}
35 accessibilityHint="">
36 <LinearGradient
37 colors={[gradients.blueLight.start, gradients.blueLight.end]}
38 start={{x: 0, y: 0}}
39 end={{x: 1, y: 1}}
40 style={[styles.btn]}>
41 <Text style={[s.white, s.bold, s.f18]}>
42 <Trans>Done{extraText}</Trans>
43 </Text>
44 </LinearGradient>
45 </Pressable>
46 </View>
47 )
48}
49
50const styles = StyleSheet.create({
51 btnContainer: {
52 paddingTop: 10,
53 paddingHorizontal: 10,
54 },
55 btn: {
56 flexDirection: 'row',
57 alignItems: 'center',
58 justifyContent: 'center',
59 width: '100%',
60 borderRadius: 32,
61 padding: 14,
62 backgroundColor: colors.gray1,
63 },
64})