Initial Commit

This commit is contained in:
2026-05-27 23:47:53 +01:00
parent fbc70f96e6
commit 9b28db724f
18103 changed files with 1600554 additions and 0 deletions

View File

@@ -0,0 +1,58 @@
/**
* Ordered list of built-in supported locale codes shipped with the
* Suaveplan i18n family. The order is the canonical default order
* used by the locale detector when no caller-supplied preference list
* is available.
*/
export const DEFAULT_LOCALES = [
"en",
"es",
"fr",
"de",
"cy",
"zh",
"ar",
"ru",
"pl",
"ja",
"ko",
"pt",
"it",
"nl",
"he",
"fa",
] as const;
/** String-literal union of every code in {@link DEFAULT_LOCALES}. */
export type DefaultLocale = (typeof DEFAULT_LOCALES)[number];
/**
* Per-locale display metadata: English `name`, locale-native
* `nativeName`, and the canonical text `direction`.
*
* Every entry in {@link DEFAULT_LOCALES} has a corresponding
* descriptor here. The `direction` field SHALL agree with the
* locale's membership in `RTL_LOCALES` — a unit test asserts the
* cross-file invariant.
*/
export const LOCALE_DESCRIPTORS: Record<
string,
{ name: string; nativeName: string; direction: "ltr" | "rtl" }
> = {
en: { name: "English", nativeName: "English", direction: "ltr" },
es: { name: "Spanish", nativeName: "Español", direction: "ltr" },
fr: { name: "French", nativeName: "Français", direction: "ltr" },
de: { name: "German", nativeName: "Deutsch", direction: "ltr" },
cy: { name: "Welsh", nativeName: "Cymraeg", direction: "ltr" },
zh: { name: "Chinese", nativeName: "中文", direction: "ltr" },
ar: { name: "Arabic", nativeName: "العربية", direction: "rtl" },
ru: { name: "Russian", nativeName: "Русский", direction: "ltr" },
pl: { name: "Polish", nativeName: "Polski", direction: "ltr" },
ja: { name: "Japanese", nativeName: "日本語", direction: "ltr" },
ko: { name: "Korean", nativeName: "한국어", direction: "ltr" },
pt: { name: "Portuguese", nativeName: "Português", direction: "ltr" },
it: { name: "Italian", nativeName: "Italiano", direction: "ltr" },
nl: { name: "Dutch", nativeName: "Nederlands", direction: "ltr" },
he: { name: "Hebrew", nativeName: "עברית", direction: "rtl" },
fa: { name: "Persian", nativeName: "فارسی", direction: "rtl" },
};