mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-17 00:40:14 +01:00
63 lines
1.5 KiB
TypeScript
63 lines
1.5 KiB
TypeScript
|
|
import { useLocalize } from '~/hooks';
|
||
|
|
import { cn } from '~/utils';
|
||
|
|
|
||
|
|
export default function ProgressText({
|
||
|
|
progress,
|
||
|
|
error,
|
||
|
|
toolName = 'image_gen_oai',
|
||
|
|
}: {
|
||
|
|
progress: number;
|
||
|
|
error?: boolean;
|
||
|
|
toolName: string;
|
||
|
|
}) {
|
||
|
|
const localize = useLocalize();
|
||
|
|
|
||
|
|
const getText = () => {
|
||
|
|
if (error) {
|
||
|
|
return localize('com_ui_error');
|
||
|
|
}
|
||
|
|
|
||
|
|
if (toolName === 'image_edit_oai') {
|
||
|
|
if (progress >= 1) {
|
||
|
|
return localize('com_ui_image_edited');
|
||
|
|
}
|
||
|
|
if (progress >= 0.7) {
|
||
|
|
return localize('com_ui_final_touch');
|
||
|
|
}
|
||
|
|
if (progress >= 0.5) {
|
||
|
|
return localize('com_ui_adding_details');
|
||
|
|
}
|
||
|
|
if (progress >= 0.3) {
|
||
|
|
return localize('com_ui_edit_editing_image');
|
||
|
|
}
|
||
|
|
return localize('com_ui_getting_started');
|
||
|
|
}
|
||
|
|
|
||
|
|
if (progress >= 1) {
|
||
|
|
return localize('com_ui_image_created');
|
||
|
|
}
|
||
|
|
if (progress >= 0.7) {
|
||
|
|
return localize('com_ui_final_touch');
|
||
|
|
}
|
||
|
|
if (progress >= 0.5) {
|
||
|
|
return localize('com_ui_adding_details');
|
||
|
|
}
|
||
|
|
if (progress >= 0.3) {
|
||
|
|
return localize('com_ui_creating_image');
|
||
|
|
}
|
||
|
|
return localize('com_ui_getting_started');
|
||
|
|
};
|
||
|
|
|
||
|
|
const text = getText();
|
||
|
|
|
||
|
|
return (
|
||
|
|
<div
|
||
|
|
className={cn(
|
||
|
|
'progress-text-content pointer-events-none absolute left-0 top-0 inline-flex w-full items-center gap-2 overflow-visible whitespace-nowrap',
|
||
|
|
)}
|
||
|
|
>
|
||
|
|
<span className={`font-medium ${progress < 1 ? 'shimmer' : ''}`}>{text}</span>
|
||
|
|
</div>
|
||
|
|
);
|
||
|
|
}
|