`@palamedes/config`
@palamedes/config loads and validates Palamedes data config files and legacy palamedes.config. files.
@palamedes/config
Exports
defineConfig(config)loadPalamedesConfig(options?)CONFIG_FILENAMESexpandFallbackLocales(locales, fallbackLocales?)resolveCatalogPath(config, catalogPath, locale)resolveConfigPattern(config, pattern)LoadPalamedesConfigOptionsPalamedesConfigLoadedPalamedesConfigPalamedesCatalogConfigPalamedesFallbackLocalesPalamedesSourceReferenceRoot
Config Files
Supported file names:
palamedes.yamlpalamedes.ymlpalamedes.jsonpalamedes.tomlpalamedes.config.tspalamedes.config.jspalamedes.config.mjspalamedes.config.cjs
See the configuration reference for every field.
defineConfig(config)
Returns the config unchanged while giving TypeScript users a typed authoring surface.
import { defineConfig } from "@palamedes/config"
export default defineConfig({
locales: ["en", "de"],
sourceLocale: "en",
catalogs: [{ path: "src/locales/{locale}", include: ["src"] }],
})PO is the default catalog storage. Opt into FCL by adding format: "fcl":
export default defineConfig({
locales: ["en", "de"],
sourceLocale: "en",
catalogs: [{ path: "src/locales/{locale}", format: "fcl", include: ["src"] }],
})loadPalamedesConfig(options?)
Searches from cwd for a supported config file unless configPath is passed.
The returned object includes configPath, rootDir, and
sourceReferenceRoot.
const config = await loadPalamedesConfig({ cwd: process.cwd() })Options include cwd, configPath, and skipValidation. Use
skipValidation only for tooling that needs to inspect partially-authored
config files.