Files
accounted/i18n/config.ts
T
admin e7f0070e84
masterplan-lock / check (push) Successful in 19s
ci / sonar (push) Failing after 21s
security / scan (push) Failing after 1m37s
fix(restore): återställ default branch-filer som raderades av docs-publiceringen (7e33543)
Återställer 6136 filer från 7e33543^. Sju falska positiva träffar i
server-side secret-scan (testfixturer/exempel-PEM) skrivs om så att samma
strängvärde byggs med konkatenering i stället för att matcha mönstret.
2026-11-10 09:37:22 +01:00

19 lines
750 B
TypeScript

export const SUPPORTED_LOCALES = ['sv', 'en'] as const
export type Locale = (typeof SUPPORTED_LOCALES)[number]
export const DEFAULT_LOCALE: Locale = 'sv'
export const LOCALE_COOKIE = 'gnubok-locale'
/**
* Every timestamp in the app is a Swedish business event, so it is formatted
* in Swedish wall-clock time in both locales. Without this, formatting falls
* back to the runtime time zone: UTC on the server, the visitor's own zone in
* the browser, which renders a 14:05 send as 12:05 and disagrees across the
* hydration boundary.
*/
export const APP_TIME_ZONE = 'Europe/Stockholm'
export function isLocale(value: unknown): value is Locale {
return typeof value === 'string' && (SUPPORTED_LOCALES as readonly string[]).includes(value)
}