refactor: remove dead code (#3337)

This commit is contained in:
Hampus authored and GitHub committed 2026-10-09 01:41:26 +02:00
1 parent a19002652b
commit 93d1f8af46
1527 files changed
+21170 -73846

No files matched your search

@@ -1,46 +1,8 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
import type {LocaleCode} from '@fluxer/constants/src/Locales';
import {
getLocaleByCode,
getLocaleDisplayName,
getLocaleFlagCode,
getLocaleLanguageCode,
} from '@pkgs/locale/src/catalog/LocaleCatalog';
import {resolveLocaleFromAcceptLanguageHeader} from '@pkgs/locale/src/resolution/AcceptLanguageNegotiation';
interface LocaleMetadata {
code: LocaleCode;
languageCode: string;
name: string;
flagCode: string;
}
export function getLocaleMetadata(locale: LocaleCode): LocaleMetadata {
return {
code: locale,
languageCode: getLocaleLanguageCode(locale),
name: getLocaleDisplayName(locale),
flagCode: getLocaleFlagCode(locale),
};
}
export function getLocaleName(locale: LocaleCode): string {
return getLocaleDisplayName(locale);
}
export function getFlagCode(locale: LocaleCode): string {
return getLocaleFlagCode(locale);
}
export function getLocaleFromCode(code: string): LocaleCode | null {
return getLocaleByCode(code);
}
export function getLocaleCode(locale: LocaleCode): string {
return getLocaleLanguageCode(locale);
}
export function parseAcceptLanguage(acceptLanguageHeader: string | null | undefined): LocaleCode {
return resolveLocaleFromAcceptLanguageHeader(acceptLanguageHeader);
}
@@ -2,12 +2,6 @@
import {AllLocales, type LocaleCode, Locales} from '@fluxer/constants/src/Locales';
interface LocaleMetadata {
displayName: string;
flagCode: string;
aliases?: ReadonlyArray<string>;
}
export const DEFAULT_LOCALE: LocaleCode = Locales.EN_US;
const SUPPORTED_LOCALES: ReadonlyArray<LocaleCode> = AllLocales;
const SUPPORTED_LOCALE_SET: ReadonlySet<LocaleCode> = new Set<LocaleCode>(SUPPORTED_LOCALES);
@@ -21,146 +15,10 @@ const LANGUAGE_FALLBACK_BY_LANGUAGE_CODE: Record<string, LocaleCode> = {
zh: Locales.ZH_CN,
sv: Locales.SV_SE,
};
const LOCALE_METADATA_BY_CODE: Record<LocaleCode, LocaleMetadata> = {
[Locales.AR]: {
displayName: 'العربية',
flagCode: '1f1f8-1f1e6',
},
[Locales.BG]: {
displayName: 'Български',
flagCode: '1f1e7-1f1ec',
},
[Locales.CS]: {
displayName: 'Čeština',
flagCode: '1f1e8-1f1ff',
},
[Locales.DA]: {
displayName: 'Dansk',
flagCode: '1f1e9-1f1f0',
},
[Locales.DE]: {
displayName: 'Deutsch',
flagCode: '1f1e9-1f1ea',
},
[Locales.EL]: {
displayName: 'Ελληνικά',
flagCode: '1f1ec-1f1f7',
},
[Locales.EN_GB]: {
displayName: 'English',
flagCode: '1f1ec-1f1e7',
},
[Locales.EN_US]: {
displayName: 'English (US)',
flagCode: '1f1fa-1f1f8',
aliases: ['en'],
},
[Locales.ES_ES]: {
displayName: 'Español (España)',
flagCode: '1f1ea-1f1f8',
},
[Locales.ES_419]: {
displayName: 'Español (Latinoamérica)',
flagCode: '1f30e',
},
[Locales.FI]: {
displayName: 'Suomi',
flagCode: '1f1eb-1f1ee',
},
[Locales.FR]: {
displayName: 'Français',
flagCode: '1f1eb-1f1f7',
},
[Locales.HE]: {
displayName: 'עברית',
flagCode: '1f1ee-1f1f1',
},
[Locales.HI]: {
displayName: 'हिन्दी',
flagCode: '1f1ee-1f1f3',
},
[Locales.HR]: {
displayName: 'Hrvatski',
flagCode: '1f1ed-1f1f7',
},
[Locales.HU]: {
displayName: 'Magyar',
flagCode: '1f1ed-1f1fa',
},
[Locales.ID]: {
displayName: 'Bahasa Indonesia',
flagCode: '1f1ee-1f1e9',
},
[Locales.IT]: {
displayName: 'Italiano',
flagCode: '1f1ee-1f1f9',
},
[Locales.JA]: {
displayName: '日本語',
flagCode: '1f1ef-1f1f5',
},
[Locales.KO]: {
displayName: '한국어',
flagCode: '1f1f0-1f1f7',
},
[Locales.LT]: {
displayName: 'Lietuvių',
flagCode: '1f1f1-1f1f9',
},
[Locales.NL]: {
displayName: 'Nederlands',
flagCode: '1f1f3-1f1f1',
},
[Locales.NO]: {
displayName: 'Norsk',
flagCode: '1f1f3-1f1f4',
aliases: ['nb', 'nn'],
},
[Locales.PL]: {
displayName: 'Polski',
flagCode: '1f1f5-1f1f1',
},
[Locales.PT_BR]: {
displayName: 'Português (Brasil)',
flagCode: '1f1e7-1f1f7',
},
[Locales.RO]: {
displayName: 'Română',
flagCode: '1f1f7-1f1f4',
},
[Locales.RU]: {
displayName: 'Русский',
flagCode: '1f1f7-1f1fa',
},
[Locales.SV_SE]: {
displayName: 'Svenska',
flagCode: '1f1f8-1f1ea',
aliases: ['sv'],
},
[Locales.TH]: {
displayName: 'ไทย',
flagCode: '1f1f9-1f1ed',
},
[Locales.TR]: {
displayName: 'Türkçe',
flagCode: '1f1f9-1f1f7',
},
[Locales.UK]: {
displayName: 'Українська',
flagCode: '1f1fa-1f1e6',
},
[Locales.VI]: {
displayName: 'Tiếng Việt',
flagCode: '1f1fb-1f1f3',
},
[Locales.ZH_CN]: {
displayName: '简体中文',
flagCode: '1f1e8-1f1f3',
},
[Locales.ZH_TW]: {
displayName: '繁體中文',
flagCode: '1f1f9-1f1fc',
},
const LOCALE_ALIASES: Partial<Record<LocaleCode, ReadonlyArray<string>>> = {
[Locales.EN_US]: ['en'],
[Locales.NO]: ['nb', 'nn'],
[Locales.SV_SE]: ['sv'],
};
const NORMALIZED_LOCALE_TO_CODE = createNormalizedLocaleLookup();
@@ -172,14 +30,6 @@ function isSupportedLocale(locale: LocaleCode): boolean {
return SUPPORTED_LOCALE_SET.has(locale);
}
export function getLocaleDisplayName(locale: LocaleCode): string {
return LOCALE_METADATA_BY_CODE[locale].displayName;
}
export function getLocaleFlagCode(locale: LocaleCode): string {
return LOCALE_METADATA_BY_CODE[locale].flagCode;
}
export function getLocaleByCode(code: string): LocaleCode | null {
const normalizedCode = normalizeLocaleCode(code);
if (!normalizedCode) {
@@ -189,10 +39,6 @@ export function getLocaleByCode(code: string): LocaleCode | null {
return locale ?? null;
}
export function getLocaleLanguageCode(locale: LocaleCode): string {
return locale.split('-')[0];
}
export function getPreferredLocaleForLanguageCode(languageCode: string): LocaleCode | null {
const normalizedLanguageCode = normalizeLocaleCode(languageCode);
if (!normalizedLanguageCode) {
@@ -228,7 +74,7 @@ function createNormalizedLocaleLookup(): ReadonlyMap<string, LocaleCode> {
lookup.set(normalizeLocaleCode(locale), locale);
}
for (const locale of SUPPORTED_LOCALES) {
const aliases = LOCALE_METADATA_BY_CODE[locale].aliases ?? [];
const aliases = LOCALE_ALIASES[locale] ?? [];
for (const alias of aliases) {
lookup.set(normalizeLocaleCode(alias), locale);
}
@@ -1,89 +1,14 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
import {AllLocales, type LocaleCode, Locales} from '@fluxer/constants/src/Locales';
import {
getFlagCode,
getLocaleCode,
getLocaleFromCode,
getLocaleMetadata,
getLocaleName,
parseAcceptLanguage,
} from '@pkgs/locale/src/LocaleService';
import {type LocaleCode, Locales} from '@fluxer/constants/src/Locales';
import {parseAcceptLanguage} from '@pkgs/locale/src/LocaleService';
import {describe, expect, it} from 'vitest';
interface LocaleLookupCase {
input: string;
expected: LocaleCode | null;
}
interface AcceptLanguageCase {
header: string | null | undefined;
expected: LocaleCode;
}
const localeNameCases: Array<{
locale: LocaleCode;
expected: string;
}> = [
{locale: Locales.EN_US, expected: 'English (US)'},
{locale: Locales.EN_GB, expected: 'English'},
{locale: Locales.DE, expected: 'Deutsch'},
{locale: Locales.JA, expected: '日本語'},
{locale: Locales.ZH_CN, expected: '简体中文'},
{locale: Locales.ZH_TW, expected: '繁體中文'},
{locale: Locales.ES_419, expected: 'Español (Latinoamérica)'},
{locale: Locales.PT_BR, expected: 'Português (Brasil)'},
];
const flagCodeCases: Array<{
locale: LocaleCode;
expected: string;
}> = [
{locale: Locales.EN_US, expected: '1f1fa-1f1f8'},
{locale: Locales.EN_GB, expected: '1f1ec-1f1e7'},
{locale: Locales.DE, expected: '1f1e9-1f1ea'},
{locale: Locales.JA, expected: '1f1ef-1f1f5'},
{locale: Locales.ZH_CN, expected: '1f1e8-1f1f3'},
{locale: Locales.ES_419, expected: '1f30e'},
{locale: Locales.PT_BR, expected: '1f1e7-1f1f7'},
];
const localeLookupCases: Array<LocaleLookupCase> = [
{input: 'en', expected: Locales.EN_US},
{input: 'en-US', expected: Locales.EN_US},
{input: 'en-us', expected: Locales.EN_US},
{input: 'en_GB', expected: Locales.EN_GB},
{input: 'en-gb', expected: Locales.EN_GB},
{input: 'de', expected: Locales.DE},
{input: 'ja', expected: Locales.JA},
{input: 'zh-CN', expected: Locales.ZH_CN},
{input: 'zh-cn', expected: Locales.ZH_CN},
{input: 'zh-TW', expected: Locales.ZH_TW},
{input: 'zh-tw', expected: Locales.ZH_TW},
{input: 'es-419', expected: Locales.ES_419},
{input: 'pt-br', expected: Locales.PT_BR},
{input: 'sv', expected: Locales.SV_SE},
{input: 'sv-se', expected: Locales.SV_SE},
{input: 'nb', expected: Locales.NO},
{input: 'nn', expected: Locales.NO},
{input: 'NB', expected: Locales.NO},
{input: 'xx', expected: null},
{input: '', expected: null},
{input: 'en-AU', expected: null},
];
const localeCodeCases: Array<{
locale: LocaleCode;
expected: string;
}> = [
{locale: Locales.EN_US, expected: 'en'},
{locale: Locales.EN_GB, expected: 'en'},
{locale: Locales.DE, expected: 'de'},
{locale: Locales.ZH_CN, expected: 'zh'},
{locale: Locales.ZH_TW, expected: 'zh'},
{locale: Locales.ES_ES, expected: 'es'},
{locale: Locales.ES_419, expected: 'es'},
{locale: Locales.PT_BR, expected: 'pt'},
{locale: Locales.SV_SE, expected: 'sv'},
{locale: Locales.JA, expected: 'ja'},
];
const acceptLanguageCases: Array<AcceptLanguageCase> = [
{header: null, expected: Locales.EN_US},
{header: undefined, expected: Locales.EN_US},
@@ -140,57 +65,6 @@ const acceptLanguageCases: Array<AcceptLanguageCase> = [
];
describe('LocaleService', () => {
describe('getLocaleMetadata', () => {
it('returns consolidated metadata for a locale', () => {
expect(getLocaleMetadata(Locales.EN_US)).toEqual({
code: Locales.EN_US,
languageCode: 'en',
name: 'English (US)',
flagCode: '1f1fa-1f1f8',
});
});
it('returns metadata for every supported locale', () => {
for (const locale of AllLocales) {
const metadata = getLocaleMetadata(locale);
expect(metadata.code).toBe(locale);
expect(metadata.name.length).toBeGreaterThan(0);
expect(metadata.flagCode.length).toBeGreaterThan(0);
}
});
});
describe('getLocaleName', () => {
for (const {locale, expected} of localeNameCases) {
it(`returns ${expected} for ${locale}`, () => {
expect(getLocaleName(locale)).toBe(expected);
});
}
});
describe('getFlagCode', () => {
for (const {locale, expected} of flagCodeCases) {
it(`returns ${expected} for ${locale}`, () => {
expect(getFlagCode(locale)).toBe(expected);
});
}
});
describe('getLocaleFromCode', () => {
for (const {input, expected} of localeLookupCases) {
it(`resolves ${input || 'empty'} to ${expected ?? 'null'}`, () => {
expect(getLocaleFromCode(input)).toBe(expected);
});
}
it('resolves canonical locale codes for all supported locales', () => {
for (const locale of AllLocales) {
expect(getLocaleFromCode(locale)).toBe(locale);
}
});
});
describe('getLocaleCode', () => {
for (const {locale, expected} of localeCodeCases) {
it(`returns ${expected} for ${locale}`, () => {
expect(getLocaleCode(locale)).toBe(expected);
});
}
});
describe('parseAcceptLanguage', () => {
for (const {header, expected} of acceptLanguageCases) {
it(`selects ${expected} for ${header ?? 'nullish header'}`, () => {