This commit is contained in:
imeepos
2026-01-29 15:51:39 +08:00
parent 6279752f23
commit 7e6de68891
16 changed files with 2106 additions and 456 deletions

View File

@@ -0,0 +1,42 @@
import React from 'react'
import { View, Text, StyleSheet } from 'react-native'
export interface MessageEmptyStateProps {
message?: string
icon?: React.ReactNode
}
export function MessageEmptyState({
message = '暂无消息',
icon,
}: MessageEmptyStateProps) {
return (
<View testID="message-empty-state" style={styles.container}>
<View testID="empty-state-icon" style={styles.iconContainer}>
{icon || <Text style={styles.defaultIcon}>📭</Text>}
</View>
<Text testID="empty-state-message" style={styles.message}>
{message}
</Text>
</View>
)
}
const styles = StyleSheet.create({
container: {
flex: 1,
alignItems: 'center',
justifyContent: 'center',
backgroundColor: 'transparent',
},
iconContainer: {
marginBottom: 12,
},
defaultIcon: {
fontSize: 48,
},
message: {
fontSize: 14,
color: '#8A8A8A',
},
})