Remove abbreviation of “language” in function names

This commit is contained in:
schroda
2025-05-09 00:42:56 +02:00
parent d27c5c445f
commit dcd57aea8f
8 changed files with 28 additions and 22 deletions

View File

@@ -21,7 +21,7 @@ import { useTranslation } from 'react-i18next';
import { Virtuoso } from 'react-virtuoso';
import { CustomTooltip } from '@/modules/core/components/CustomTooltip.tsx';
import { translateExtensionLanguage } from '@/modules/extension/Extensions.utils.ts';
import { langSortCmp, toUniqueLanguageCodes } from '@/modules/core/utils/Languages.ts';
import { languageSortComparator, toUniqueLanguageCodes } from '@/modules/core/utils/Languages.ts';
interface IProps {
selectedLanguages: string[];
@@ -38,7 +38,10 @@ export function LanguageSelect(props: IProps) {
const languagesSortedBySelectState = useMemo(
() =>
toUniqueLanguageCodes([...tmpSelectedLanguages.toSorted(langSortCmp), ...languages.toSorted(langSortCmp)]),
toUniqueLanguageCodes([
...tmpSelectedLanguages.toSorted(languageSortComparator),
...languages.toSorted(languageSortComparator),
]),
[languages, tmpSelectedLanguages],
);

View File

@@ -62,7 +62,7 @@ export function getLanguage(code: string): LanguageObject {
};
}
export function langCodeToName(code: string): string {
export function languageCodeToName(code: string): string {
return getLanguage(code).nativeName;
}
@@ -89,12 +89,13 @@ function defaultNativeLang(): readonly string[] {
return preferredLanguages;
}
export function extensionDefaultLangs(): string[] {
export function extensionDefaultLanguages(): string[] {
return [...defaultNativeLang()];
}
export function sourceDefualtLangs(): string[] {
export function sourceDefaultLanguages(): string[] {
return [...defaultNativeLang()];
}
export const langSortCmp = (a: string, b: string) => langCodeToName(a).localeCompare(langCodeToName(b));
export const languageSortComparator = (a: string, b: string) =>
languageCodeToName(a).localeCompare(languageCodeToName(b));

View File

@@ -17,8 +17,8 @@ import {
} from '@/modules/extension/Extensions.types.ts';
import {
DefaultLanguage,
langCodeToName,
langSortCmp,
languageCodeToName,
languageSortComparator,
toComparableLanguage,
toComparableLanguages,
toUniqueLanguageCodes,
@@ -56,7 +56,7 @@ export const isExtensionStateOrLanguage = (languageCode: string): boolean =>
export const translateExtensionLanguage = (languageCode: string): string =>
isExtensionStateOrLanguage(languageCode)
? t(extensionLanguageToTranslationKey[languageCode as ExtensionGroupState | DefaultLanguage])
: langCodeToName(languageCode);
: languageCodeToName(languageCode);
export function groupExtensionsByLanguage(extensions: TExtension[]): GroupedExtensionsResult {
const extensionsByLanguage = Object.groupBy<ExtensionGroupState | string, TExtension>(extensions, (extension) => {
@@ -86,7 +86,7 @@ export function groupExtensionsByLanguage(extensions: TExtension[]): GroupedExte
return 1;
}
return langSortCmp(a, b);
return languageSortComparator(a, b);
});
const groupedExtensionsSortedByLanguage = extensionsBySortedLanguage.map(([language, extensionsOfLanguage]) => [
@@ -98,7 +98,7 @@ export function groupExtensionsByLanguage(extensions: TExtension[]): GroupedExte
}
export const getLanguagesFromExtensions = (extensions: TExtension[]): string[] =>
[...new Set(extensions.map((extension) => extension.lang))].toSorted(langSortCmp);
[...new Set(extensions.map((extension) => extension.lang))].toSorted(languageSortComparator);
export const filterExtensions = (
extensions: TExtension[],

View File

@@ -16,7 +16,7 @@ import { useTranslation } from 'react-i18next';
import Box from '@mui/material/Box';
import { requestManager } from '@/lib/requests/RequestManager.ts';
import { useLocalStorage } from '@/modules/core/hooks/useStorage.tsx';
import { sourceDefualtLangs } from '@/modules/core/utils/Languages.ts';
import { sourceDefaultLanguages } from '@/modules/core/utils/Languages.ts';
import { AppbarSearch } from '@/modules/core/components/AppbarSearch.tsx';
import { LanguageSelect } from '@/modules/core/components/inputs/LanguageSelect.tsx';
import { useDebounce } from '@/modules/core/hooks/useDebounce.ts';
@@ -194,7 +194,7 @@ export const SearchAll: React.FC = () => {
const [query] = useQueryParam('query', StringParam);
const searchString = useDebounce(query, TRIGGER_SEARCH_THRESHOLD);
const [shownLangs, setShownLangs] = useLocalStorage<string[]>('shownSourceLangs', sourceDefualtLangs());
const [shownLangs, setShownLangs] = useLocalStorage<string[]>('shownSourceLangs', sourceDefaultLanguages());
const {
settings: { showNsfw },
} = useMetadataServerSettings();

View File

@@ -10,7 +10,7 @@ import { DEFAULT_DEVICE } from '@/modules/device/services/Device.ts';
import { DEFAULT_SORT_SETTINGS } from '@/modules/migration/Migration.constants.ts';
import { MetadataServerSettings } from '@/modules/settings/Settings.types.ts';
import { GridLayout } from '@/modules/core/Core.types.ts';
import { extensionDefaultLangs } from '@/modules/core/utils/Languages.ts';
import { extensionDefaultLanguages } from '@/modules/core/utils/Languages.ts';
export const SERVER_SETTINGS_METADATA_DEFAULT: MetadataServerSettings = {
// downloads
@@ -41,7 +41,7 @@ export const SERVER_SETTINGS_METADATA_DEFAULT: MetadataServerSettings = {
// browse
hideLibraryEntries: false,
extensionLanguages: extensionDefaultLangs(),
extensionLanguages: extensionDefaultLanguages(),
showNsfw: true,
// history

View File

@@ -21,7 +21,7 @@ import { MediaQuery } from '@/modules/core/utils/MediaQuery.tsx';
import { NumberSetting } from '@/modules/core/components/settings/NumberSetting.tsx';
import { useLocalStorage } from '@/modules/core/hooks/useStorage.tsx';
import { I18nResourceCode, i18nResources } from '@/i18n';
import { langCodeToName } from '@/modules/core/utils/Languages.ts';
import { languageCodeToName } from '@/modules/core/utils/Languages.ts';
import { ThemeList } from '@/modules/theme/components/ThemeList.tsx';
import {
createUpdateMetadataServerSettings,
@@ -145,7 +145,7 @@ export const Appearance = () => {
>
{i18nResources.map((language) => (
<MenuItem key={language} value={language}>
{langCodeToName(language)}
{languageCodeToName(language)}
</MenuItem>
))}
</Select>

View File

@@ -15,7 +15,7 @@ import { useTranslation } from 'react-i18next';
import { CustomTooltip } from '@/modules/core/components/CustomTooltip.tsx';
import { requestManager } from '@/lib/requests/RequestManager.ts';
import { useLocalStorage } from '@/modules/core/hooks/useStorage.tsx';
import { sourceDefualtLangs } from '@/modules/core/utils/Languages.ts';
import { sourceDefaultLanguages } from '@/modules/core/utils/Languages.ts';
import { LoadingPlaceholder } from '@/modules/core/components/feedback/LoadingPlaceholder.tsx';
import { SourceCard } from '@/modules/source/components/SourceCard.tsx';
import { LanguageSelect } from '@/modules/core/components/inputs/LanguageSelect.tsx';
@@ -31,7 +31,7 @@ import { useAppAction } from '@/modules/navigation-bar/hooks/useAppAction.ts';
export function Sources() {
const { t } = useTranslation();
const [shownLangs, setShownLangs] = useLocalStorage<string[]>('shownSourceLangs', sourceDefualtLangs());
const [shownLangs, setShownLangs] = useLocalStorage<string[]>('shownSourceLangs', sourceDefaultLanguages());
const {
settings: { showNsfw },
} = useMetadataServerSettings();

View File

@@ -15,7 +15,7 @@ import {
} from '@/modules/source/Source.types.ts';
import {
DefaultLanguage,
langSortCmp,
languageSortComparator,
toComparableLanguage,
toComparableLanguages,
toUniqueLanguageCodes,
@@ -37,14 +37,16 @@ export class Sources {
}
static getLanguages(sources: (SourceIdInfo & SourceLanguageInfo)[]): string[] {
return [...new Set(sources.map((source) => Sources.getLanguage(source)))].toSorted(langSortCmp);
return [...new Set(sources.map((source) => Sources.getLanguage(source)))].toSorted(languageSortComparator);
}
static groupByLanguage<Source extends SourceIdInfo & SourceLanguageInfo & SourceDisplayNameInfo>(
sources: Source[],
): Record<string, Source[]> {
const sourcesByLanguage = Object.groupBy(sources, (source) => Sources.getLanguage(source));
const sourcesBySortedLanguage = Object.entries(sourcesByLanguage).toSorted(([a], [b]) => langSortCmp(a, b));
const sourcesBySortedLanguage = Object.entries(sourcesByLanguage).toSorted(([a], [b]) =>
languageSortComparator(a, b),
);
const sortedSourcesBySortedLanguage = sourcesBySortedLanguage.map(([language, sourcesOfLanguage]) => [
language,
(sourcesOfLanguage ?? []).toSorted((a, b) => a.displayName.localeCompare(b.displayName)),