import React from 'react';
import { StyleSheet, View } from 'react-native';
import { Ionicons } from '@expo/vector-icons';
import { getCategoryColor } from '../../theme/palette';
import { getCategoryIcon } from './categoryIcons';

interface CategoryIconProps {
  categoryId: string;
  /** 圆形底色直径，默认 36。 */
  size?: number;
}

/** 分类图标：Ionicon + 分类色圆形浅底（设计系统 §图标：替换 emoji）。 */
export function CategoryIcon({ categoryId, size = 36 }: CategoryIconProps) {
  const color = getCategoryColor(categoryId);
  return (
    <View
      style={[styles.circle, {
        width: size,
        height: size,
        borderRadius: size / 2,
        backgroundColor: color + '1A',
      }]}
    >
      <Ionicons name={getCategoryIcon(categoryId)} size={size * 0.55} color={color} />
    </View>
  );
}

const styles = StyleSheet.create({
  circle: { alignItems: 'center', justifyContent: 'center' },
});
