Files
App/components/Settings/component.tsx
Violet Caulfield 5754a3d236 Upgrade to React Native's New Architecture (#302)
Makes the UI operate more synchronously (read: fast 🔥🔥🔥)

Upgrades several dependencies
2025-04-30 03:30:24 -05:00

43 lines
1018 B
TypeScript

import React from 'react'
import SignOut from './helpers/sign-out'
import { NativeStackNavigationProp } from '@react-navigation/native-stack'
import { StackParamList } from '../types'
import { useSafeAreaFrame } from 'react-native-safe-area-context'
import { FlatList } from 'react-native'
import IconCard from '../Global/helpers/icon-card'
import Categories from './categories'
import StorageBar from '../Storage'
export default function Root({
navigation,
}: {
navigation: NativeStackNavigationProp<StackParamList>
}): React.JSX.Element {
const { width } = useSafeAreaFrame()
return (
<FlatList
contentInsetAdjustmentBehavior='automatic'
data={Categories}
numColumns={2}
renderItem={({ index, item }) => (
<IconCard
name={item.iconName}
caption={item.name}
width={width / 2.1}
onPress={() => {
navigation.navigate(item.name, item.params)
}}
largeIcon
/>
)}
ListFooterComponent={
<>
<StorageBar />
<SignOut />
</>
}
/>
)
}