Display 'None' for empty subtitles streams

This commit is contained in:
Bogdan 2026-04-22 16:59:45 +03:00 committed by Mark McDowall
parent b3e815e341
commit 581e118532

View file

@ -61,39 +61,50 @@ function MediaInfo(props: MediaInfoProps) {
<DescriptionListItem
key={key}
title={translate('MediaInfoSubtitlesHeader')}
data={value.reduce(
(acc: React.ReactNode[] | null, subtitleStream, index) => {
const language = getLanguageName(subtitleStream.language);
data={
value.length > 0
? value.reduce(
(
acc: React.ReactNode[] | null,
subtitleStream,
index
) => {
const language = getLanguageName(
subtitleStream.language
);
let line = `${
subtitleStream.format?.toUpperCase() || translate('Unknown')
}`;
let line = `${
subtitleStream.format?.toUpperCase() ||
translate('Unknown')
}`;
if (
subtitleStream.title !== undefined &&
subtitleStream.title !== language
) {
line += ` | ${subtitleStream.title}`;
}
if (
subtitleStream.title !== undefined &&
subtitleStream.title !== language
) {
line += ` | ${subtitleStream.title}`;
}
if (subtitleStream.forced) {
line += ` | ${translate('MediaInfoForced')}`;
}
if (subtitleStream.forced) {
line += ` | ${translate('MediaInfoForced')}`;
}
if (subtitleStream.hearingImpaired) {
line += ` | ${translate('MediaInfoHearingImpaired')}`;
}
if (subtitleStream.hearingImpaired) {
line += ` | ${translate('MediaInfoHearingImpaired')}`;
}
const curr = (
<span key={index} title={line}>
{language}
</span>
);
const curr = (
<span key={index} title={line}>
{language}
</span>
);
return acc === null ? [curr] : [acc, ' / ', curr];
},
null
)}
return acc === null ? [curr] : [acc, ' / ', curr];
},
null
)
: translate('None')
}
/>
);
}