about summary refs log tree commit diff
path: root/src/view/com/auth/onboarding/RecommendedFeedsDesktop.tsx
blob: 937313bc6d2ddf98445ed8961266f8db3501a5d7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
import React from 'react'
import {FlatList, StyleSheet, View} from 'react-native'
import {observer} from 'mobx-react-lite'
import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
import {Text} from 'view/com/util/text/Text'
import {TitleColumnLayout} from 'view/com/util/layouts/TitleColumnLayout'
import {Button} from 'view/com/util/forms/Button'
import {RecommendedFeedsItem} from './RecommendedFeedsItem'
import {usePalette} from 'lib/hooks/usePalette'
import {RECOMMENDED_FEEDS} from 'lib/constants'

type Props = {
  next: () => void
}
export const RecommendedFeedsDesktop = observer(({next}: Props) => {
  const pal = usePalette('default')

  const title = (
    <>
      <Text style={[pal.textLight, styles.title1]}>Choose your</Text>
      <Text style={[pal.link, styles.title2]}>Recomended</Text>
      <Text style={[pal.link, styles.title2]}>Feeds</Text>
      <Text type="2xl-medium" style={[pal.textLight, styles.description]}>
        Feeds are created by users to curate content. Choose some feeds that you
        find interesting.
      </Text>
      <View
        style={{
          flexDirection: 'row',
          justifyContent: 'flex-end',
          marginTop: 20,
        }}>
        <Button onPress={next} testID="continueBtn">
          <View
            style={{
              flexDirection: 'row',
              alignItems: 'center',
              paddingLeft: 2,
              gap: 6,
            }}>
            <Text
              type="2xl-medium"
              style={{color: '#fff', position: 'relative', top: -1}}>
              Done
            </Text>
            <FontAwesomeIcon icon="angle-right" color="#fff" size={14} />
          </View>
        </Button>
      </View>
    </>
  )

  return (
    <TitleColumnLayout
      testID="recommendedFeedsScreen"
      title={title}
      horizontal
      titleStyle={{minWidth: 470}}
      contentStyle={{paddingHorizontal: 0}}>
      <FlatList
        data={RECOMMENDED_FEEDS}
        renderItem={({item}) => <RecommendedFeedsItem {...item} />}
        keyExtractor={item => item.did + item.rkey}
        style={{flex: 1}}
      />
    </TitleColumnLayout>
  )
})

const styles = StyleSheet.create({
  container: {
    flex: 1,
    marginHorizontal: 16,
    justifyContent: 'space-between',
  },
  title1: {
    fontSize: 36,
    fontWeight: '800',
    textAlign: 'right',
  },
  title2: {
    fontSize: 58,
    fontWeight: '800',
    textAlign: 'right',
  },
  description: {
    maxWidth: 400,
    marginTop: 10,
    marginLeft: 'auto',
    textAlign: 'right',
  },
})