import { RelationshipOutgoing } from '@components/Relationship' import { StyleConstants } from '@utils/styles/constants' import React, { useMemo } from 'react' import { StyleSheet, View } from 'react-native' import HeaderSharedAccount from './HeaderShared/Account' import HeaderSharedApplication from './HeaderShared/Application' import HeaderSharedCreated from './HeaderShared/Created' import HeaderSharedVisibility from './HeaderShared/Visibility' import RelationshipIncoming from '@root/components/Relationship/Incoming' import HeaderSharedMuted from './HeaderShared/Muted' import HeaderActions from './HeaderActions/Root' import { QueryKeyTimeline } from '@utils/queryHooks/timeline' export interface Props { queryKey: QueryKeyTimeline notification: Mastodon.Notification } const TimelineHeaderNotification: React.FC = ({ queryKey, notification }) => { const actions = useMemo(() => { switch (notification.type) { case 'follow': return case 'follow_request': return default: return notification.status ? ( ) : null } }, [notification.type]) return ( {notification.status?.visibility ? ( ) : null} {actions} ) } const styles = StyleSheet.create({ base: { flex: 1, flexDirection: 'row' }, meta: { flexDirection: 'row', alignItems: 'center', marginTop: StyleConstants.Spacing.XS, marginBottom: StyleConstants.Spacing.S }, relationship: { marginLeft: StyleConstants.Spacing.M } }) export default React.memo(TimelineHeaderNotification, () => true)