feat(i18n): foundation — react-i18next, language switcher, server-persisted choice
Set up react-i18next with locale files auto-loaded per area (Vite glob), a compact LanguageSwitcher, and language as a server-persisted preference (preferences.language) mirrored to localStorage. On first login the default UI language is guessed from the Google-reported locale (hu/en/de, else English). vite-env.d.ts types the build-time env.
This commit is contained in:
parent
ffc8a87fe4
commit
c165c3f274
9 changed files with 233 additions and 52 deletions
|
|
@ -1,10 +1,8 @@
|
|||
// Build info baked into the SPA at build time (Vite inlines VITE_*-prefixed env).
|
||||
// Injected via Docker build-args (see Dockerfile); falls back to "dev" for un-stamped builds.
|
||||
const env = (import.meta as unknown as { env: Record<string, string | undefined> }).env;
|
||||
|
||||
export const FRONTEND_VERSION = env.VITE_APP_VERSION || "dev";
|
||||
export const FRONTEND_SHA = env.VITE_GIT_SHA || "unknown";
|
||||
export const FRONTEND_BUILD_DATE = env.VITE_BUILD_DATE || "";
|
||||
export const FRONTEND_VERSION = import.meta.env.VITE_APP_VERSION || "dev";
|
||||
export const FRONTEND_SHA = import.meta.env.VITE_GIT_SHA || "unknown";
|
||||
export const FRONTEND_BUILD_DATE = import.meta.env.VITE_BUILD_DATE || "";
|
||||
|
||||
// Key for the "last version the user has seen release notes for" (drives the banner).
|
||||
export const SEEN_VERSION_KEY = "siftlode.seenVersion";
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue