@lingui/cli
Version:
Lingui CLI to extract messages, compile catalogs, and manage translation workflows
30 lines (29 loc) • 926 B
JavaScript
import { getConfig } from "@lingui/conf";
import { extractFromBundleAndWrite } from "../extractFromBundleAndWrite.js";
import { getFormat } from "../../api/formats/index.js";
let linguiConfig;
let format;
const extractWorker = async (linguiConfigPath, entryPoint, bundleFile, outputPattern, template, locales, clean, overwrite) => {
if (!linguiConfig) {
// initialize config once per worker, speed up workers follow execution
linguiConfig = getConfig({
configPath: linguiConfigPath,
skipValidation: true,
});
}
if (!format) {
format = await getFormat(linguiConfig.format, linguiConfig.sourceLocale);
}
return await extractFromBundleAndWrite({
entryPoint,
bundleFile,
outputPattern,
format,
linguiConfig,
locales,
overwrite,
clean,
template,
});
};
export { extractWorker };