UNPKG

@intlayer/chokidar

Version:

Uses chokidar to scan and build Intlayer declaration files into dictionaries based on Intlayer configuration.

32 lines 1.2 kB
import { IntlayerEventListener } from "@intlayer/api"; import { buildIntlayerDictionary } from "./transpiler/declaration_file_to_dictionary/intlayer_dictionary/buildIntlayerDictionary.mjs"; import { getConfiguration, appLogger } from "@intlayer/config"; const writeDictionary = async (dictionary) => { appLogger(`Writing dictionary ${dictionary.key}`); await buildIntlayerDictionary([dictionary]); }; const checkDictionaryChanges = async () => { const configuration = getConfiguration(); const { editor } = configuration; if (!editor.hotReload) return; if (!editor.clientId) return; if (!editor.clientSecret) return; const eventSource = new IntlayerEventListener(configuration); try { await eventSource.initialize().then(() => { appLogger("Connected to Intlayer. Hot reload enabled"); }); } catch (error) { appLogger("Error initializing IntlayerEventListener:", { level: "error" }); } eventSource.onDictionaryAdded = writeDictionary; eventSource.onDictionaryChange = writeDictionary; eventSource.onDictionaryDeleted = writeDictionary; return eventSource; }; export { checkDictionaryChanges }; //# sourceMappingURL=checkDictionaryChanges.mjs.map