用途:教 Claude 为 React Native UI Kit 做主题与本地化。React Native 无 CSS,改用 JS 主题对象,由 CometChatThemeProvider 经 React Context 下发,各 CometChat 组件内部读取并合并默认样式。使用前应先阅读 cometchat-native-core。
主要能力:主题对象含 mode 与 light/dark 两个分支,支持颜色令牌(primary、extendedPrimary50–900、neutral50–900、background1–4、text/icon 系列、info/warning/success/error、sendBubbleBackground 等气泡令牌、staticBlack/staticWhite)、排版令牌(title、heading1–4、body、caption1/2、button,每项为 bold/medium/regular 变体;fontFamily 与 link 为扁平值)、组件级样式块(conversationStyles、messageHeaderStyles、messageListStyles、messageComposerStyles 等)。样式优先级:组件 style={} > 自定义主题 > 默认主题;主题与默认值深度合并。
使用方式:将 CometChatThemeProvider 放在 SafeAreaProvider 之下、CometChatProvider 之上,该包装器为必需。不传 mode 跟随系统,传 "light"/"dark" 强制模式,也可接入项目已有主题开关。自定义视图用 useTheme() 读取颜色与排版;本地化经 CometChatI18nProvider 与 useCometChatTranslation(),支持 18 种内置语言、设备自动检测与自定义翻译覆盖。
限制:颜色须为十六进制字符串;字体加载不由 UI Kit 负责,需项目自行处理(Expo useFonts 或 npx react-native-asset),字体未加载前不要引用其 fontFamily;可用样式键以 packages/ChatUiKit/src/theme/type.ts 为准。