mirror of
https://github.com/jeffvli/feishin.git
synced 2026-07-23 10:56:28 +02:00
Use proper casing for i18n locales (#1998)
This commit is contained in:
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user