"use client"; import React from 'react'; import { CharacterInfoCardType } from '@/types'; import useLocaleStore from '@/stores/localeStore'; import Image from 'next/image'; import ParseText from '../parseText'; import useDetailDataStore from '@/stores/detailDataStore'; import { getLocaleName } from '@/helper/getName'; import { useShallow } from 'zustand/react/shallow'; export default function CharacterInfoCard({ character, selectedCharacters, onCharacterToggle }: { character: CharacterInfoCardType, selectedCharacters: CharacterInfoCardType[], onCharacterToggle: (characterId: CharacterInfoCardType) => void }) { const isSelected = selectedCharacters.some((selectedCharacter) => selectedCharacter.avatar_id === character.avatar_id); const { mapAvatar, mapLightCone, baseType, damageType } = useDetailDataStore( useShallow((state) => ({ mapAvatar: state.mapAvatar, mapLightCone: state.mapLightCone, baseType: state.baseType, damageType: state.damageType, })) ); const { locale } = useLocaleStore( useShallow((state) => ({ locale: state.locale })) ); const avatar = mapAvatar?.[character.avatar_id.toString()]; return (