Use proper casing for i18n locales (#1998)

This commit is contained in:
Jeff
2026-05-11 19:42:07 -07:00
committed by GitHub
parent e49e488b4c
commit e2a1d813a9
224 changed files with 17323 additions and 18474 deletions
@@ -110,7 +110,7 @@ export const JellyfinSongFilters = ({
const yesNoFilters = [
{
label: t('filter.isFavorited', { postProcess: 'sentenceCase' }),
label: t('filter.isFavorited'),
onChange: (favorite: boolean | undefined) => {
setFavorite(favorite ?? null);
},
@@ -203,16 +203,16 @@ export const JellyfinSongFilters = ({
return (
<Group gap="xs" justify="space-between" w="100%">
<Text fw={500} size="sm">
{t('entity.artist', { count: 2, postProcess: 'sentenceCase' })}
{t('entity.artist', { count: 2 })}
</Text>
<SegmentedControl
data={[
{
label: t('common.filter_single', { postProcess: 'titleCase' }),
label: t('common.filter_single'),
value: 'single',
},
{
label: t('common.filter_multiple', { postProcess: 'titleCase' }),
label: t('common.filter_multiple'),
value: 'multi',
},
]}
@@ -251,16 +251,16 @@ export const JellyfinSongFilters = ({
return (
<Group gap="xs" justify="space-between" w="100%">
<Text fw={500} size="sm">
{t('entity.genre', { count: 2, postProcess: 'sentenceCase' })}
{t('entity.genre', { count: 2 })}
</Text>
<SegmentedControl
data={[
{
label: t('common.filter_single', { postProcess: 'titleCase' }),
label: t('common.filter_single'),
value: 'single',
},
{
label: t('common.filter_multiple', { postProcess: 'titleCase' }),
label: t('common.filter_multiple'),
value: 'multi',
},
]}
@@ -317,7 +317,7 @@ export const JellyfinSongFilters = ({
<Group grow>
<NumberInput
hideControls={false}
label={t('filter.fromYear', { postProcess: 'sentenceCase' })}
label={t('filter.fromYear')}
max={2300}
min={1700}
onChange={(e) => debouncedHandleMinYearFilter(e)}
@@ -326,7 +326,7 @@ export const JellyfinSongFilters = ({
/>
<NumberInput
hideControls={false}
label={t('filter.toYear', { postProcess: 'sentenceCase' })}
label={t('filter.toYear')}
max={2300}
min={1700}
onChange={(e) => debouncedHandleMaxYearFilter(e)}
@@ -128,15 +128,15 @@ export const NavidromeSongFilters = ({
const segmentedControlData = useMemo(
() => [
{
label: t('common.none', { postProcess: 'titleCase' }),
label: t('common.none'),
value: 'none',
},
{
label: t('common.yes', { postProcess: 'titleCase' }),
label: t('common.yes'),
value: 'true',
},
{
label: t('common.no', { postProcess: 'titleCase' }),
label: t('common.no'),
value: 'false',
},
],
@@ -189,16 +189,16 @@ export const NavidromeSongFilters = ({
return (
<Group gap="xs" justify="space-between" w="100%">
<Text fw={500} size="sm">
{t('entity.genre', { count: 2, postProcess: 'sentenceCase' })}
{t('entity.genre', { count: 2 })}
</Text>
<SegmentedControl
data={[
{
label: t('common.filter_single', { postProcess: 'titleCase' }),
label: t('common.filter_single'),
value: 'single',
},
{
label: t('common.filter_multiple', { postProcess: 'titleCase' }),
label: t('common.filter_multiple'),
value: 'multi',
},
]}
@@ -242,16 +242,16 @@ export const NavidromeSongFilters = ({
return (
<Group gap="xs" justify="space-between" w="100%">
<Text fw={500} size="sm">
{t('entity.artist', { count: 2, postProcess: 'sentenceCase' })}
{t('entity.artist', { count: 2 })}
</Text>
<SegmentedControl
data={[
{
label: t('common.filter_single', { postProcess: 'titleCase' }),
label: t('common.filter_single'),
value: 'single',
},
{
label: t('common.filter_multiple', { postProcess: 'titleCase' }),
label: t('common.filter_multiple'),
value: 'multi',
},
]}
@@ -278,7 +278,7 @@ export const NavidromeSongFilters = ({
<Stack px="md" py="md">
<Stack gap="xs">
<Text size="sm" weight={500}>
{t('filter.isFavorited', { postProcess: 'sentenceCase' })}
{t('filter.isFavorited')}
</Text>
<SegmentedControl
data={segmentedControlData}
@@ -295,7 +295,7 @@ export const NavidromeSongFilters = ({
<Divider my="md" />
<Stack gap="xs">
<Text size="sm" weight={500}>
{t('filter.isRated', { postProcess: 'sentenceCase' })}
{t('filter.isRated')}
</Text>
<SegmentedControl
data={segmentedControlData}
@@ -339,7 +339,7 @@ export const NavidromeSongFilters = ({
)}
<NumberInput
hideControls={false}
label={t('common.year', { postProcess: 'titleCase' })}
label={t('common.year')}
max={5000}
min={0}
onChange={(e) => debouncedHandleYearFilter(e)}
@@ -47,8 +47,8 @@ export const SongListHeaderFilters = ({ toggleGenreTarget }: { toggleGenreTarget
const choice = useMemo(() => {
return target === GenreTarget.ALBUM
? t('entity.album', { count: 2, postProcess: 'titleCase' })
: t('entity.track', { count: 2, postProcess: 'titleCase' });
? t('entity.album', { count: 2 })
: t('entity.track', { count: 2 });
}, [target, t]);
const hasActiveFilters = useMemo(() => {
@@ -73,7 +73,7 @@ const PlayButton = () => {
const PageTitle = ({ title }: { title?: string }) => {
const { t } = useTranslation();
const { pageKey } = useListContext();
const pageTitle = title || t('page.trackList.title', { postProcess: 'titleCase' });
const pageTitle = title || t('page.trackList.title');
switch (pageKey) {
case ItemListKey.ALBUM_ARTIST_SONG:
@@ -100,7 +100,7 @@ export const SubsonicSongFilters = ({
const artistFilterLabel = useMemo(() => {
return (
<Text fw={500} size="sm">
{t('entity.artist', { count: 2, postProcess: 'sentenceCase' })}
{t('entity.artist', { count: 2 })}
</Text>
);
}, [t]);
@@ -120,7 +120,7 @@ export const SubsonicSongFilters = ({
const genreFilterLabel = useMemo(() => {
return (
<Text fw={500} size="sm">
{t('entity.genre', { count: 1, postProcess: 'sentenceCase' })}
{t('entity.genre', { count: 1 })}
</Text>
);
}, [t]);
@@ -128,7 +128,7 @@ export const SubsonicSongFilters = ({
const toggleFilters = useMemo(
() => [
{
label: t('filter.isFavorited', { postProcess: 'sentenceCase' }),
label: t('filter.isFavorited'),
onChange: (e: ChangeEvent<HTMLInputElement>) => {
if (isFavoriteDisabled && e.target.checked) return;
const favoriteValue = e.target.checked ? true : undefined;