0f004312d3
Ensures static generation is used and the dictionary is not accidentally used in client components ## Bug - [ ] Related issues linked using `fixes #number` - [ ] Integration tests added - [ ] Errors have a helpful link attached, see [`contributing.md`](https://github.com/vercel/next.js/blob/canary/contributing.md) ## Feature - [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. - [ ] Related issues linked using `fixes #number` - [ ] [e2e](https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs) tests added - [ ] Documentation added - [ ] Telemetry added. In case of a feature if it's used or not. - [ ] Errors have a helpful link attached, see [`contributing.md`](https://github.com/vercel/next.js/blob/canary/contributing.md) ## Documentation / Examples - [ ] Make sure the linting passes by running `pnpm build && pnpm lint` - [ ] The "examples guidelines" are followed from [our contributing doc](https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md)
12 lines
538 B
TypeScript
12 lines
538 B
TypeScript
import 'server-only'
|
|
import type { Locale } from './i18n-config'
|
|
|
|
// We enumerate all dictionaries here for better linting and typescript support
|
|
// We also get the defalt import for cleaner types
|
|
const dictionaries = {
|
|
en: () => import('./dictionaries/en.json').then((module) => module.default),
|
|
de: () => import('./dictionaries/de.json').then((module) => module.default),
|
|
cs: () => import('./dictionaries/cs.json').then((module) => module.default),
|
|
}
|
|
|
|
export const getDictionary = async (locale: Locale) => dictionaries[locale]()
|