skolplattformen-backup/packages/app/components/notificationsList.component.js

39 lines
1023 B
JavaScript
Raw Normal View History

import { useNotifications } from '@skolplattformen/api-hooks'
import { List } from '@ui-kitten/components'
import React, { useEffect, useState } from 'react'
import { StyleSheet } from 'react-native'
import { useChild } from './childContext.component'
import { Notification } from './notification.component'
2021-01-26 11:02:24 +00:00
export const NotificationsList = () => {
const child = useChild()
const { data, status, reload } = useNotifications(child)
const [refreshing, setRefreshing] = useState(status === 'loading')
useEffect(() => {
setRefreshing(status === 'loading')
}, [status])
const refresh = () => reload()
2021-01-26 11:02:24 +00:00
return (
<List
refreshing={refreshing}
2021-01-26 11:02:24 +00:00
style={styles.container}
contentContainerStyle={styles.contentContainer}
data={data}
2021-01-26 11:02:24 +00:00
renderItem={(info) => (
<Notification key={info.item.id} item={info.item} />
)}
/>
2021-01-26 11:02:24 +00:00
)
}
const styles = StyleSheet.create({
container: {
height: '100%',
width: '100%',
},
2021-01-26 11:02:24 +00:00
contentContainer: {
padding: 10,
},
2021-01-26 11:02:24 +00:00
})