ai-helpdesk-api / Frontend /src /components /shared /LanguageBadge.jsx
ritesh19180's picture
Upload folder using huggingface_hub
f88092b verified
Raw
History Blame Contribute Delete
1.57 kB
import React from 'react';
import { Globe } from 'lucide-react';
/**
* Compact badge shown on ticket cards when the ticket was originally
* submitted in a non-English language and auto-translated.
*
* Props:
* translation – ticket.metadata?.translation (object)
* compact – boolean, renders icon-only variant when true (default false)
*/
const LanguageBadge = ({ translation, compact = false }) => {
if (!translation?.translated) return null;
const langName = translation.source_language_name
|| translation.source_language?.toUpperCase()
|| 'Unknown';
if (compact) {
return (
<span
title={`Translated from ${langName}`}
className="inline-flex items-center gap-1 rounded-full px-2 py-0.5 text-[10px] font-bold
bg-sky-50 dark:bg-sky-900/30 text-sky-700 dark:text-sky-400
border border-sky-200 dark:border-sky-800/30 whitespace-nowrap"
>
<Globe size={10} className="shrink-0" />
{langName}
</span>
);
}
return (
<span
className="inline-flex items-center gap-1.5 rounded-full px-2.5 py-1 text-[11px] font-bold
bg-sky-50 dark:bg-sky-900/30 text-sky-700 dark:text-sky-400
border border-sky-200 dark:border-sky-800/30 whitespace-nowrap"
>
<Globe size={12} className="shrink-0" />
{langName}
</span>
);
};
export default LanguageBadge;