{"version":3,"sources":["../../src/checkDictionaryChanges.ts"],"sourcesContent":["import { IntlayerEventListener } from '@intlayer/api';\n// @ts-ignore: @intlayer/backend is not built yet\nimport type { DictionaryAPI } from '@intlayer/backend';\nimport { buildIntlayerDictionary } from './transpiler/declaration_file_to_dictionary/intlayer_dictionary/buildIntlayerDictionary';\nimport { getConfiguration, appLogger } from '@intlayer/config';\n\nconst writeDictionary = async (dictionary: DictionaryAPI) => {\n  appLogger(`Writing dictionary ${dictionary.key}`);\n  await buildIntlayerDictionary([dictionary]);\n};\n\nexport const checkDictionaryChanges = async () => {\n  const configuration = getConfiguration();\n\n  const { editor } = configuration;\n\n  if (!editor.hotReload) return;\n  if (!editor.clientId) return;\n  if (!editor.clientSecret) return;\n\n  const eventSource = new IntlayerEventListener(configuration);\n\n  try {\n    await eventSource.initialize().then(() => {\n      appLogger('Connected to Intlayer. Hot reload enabled');\n    });\n  } catch (error) {\n    appLogger('Error initializing IntlayerEventListener:', {\n      level: 'error',\n    });\n  }\n\n  eventSource.onDictionaryAdded = writeDictionary;\n  eventSource.onDictionaryChange = writeDictionary;\n  eventSource.onDictionaryDeleted = writeDictionary;\n\n  return eventSource;\n};\n"],"mappings":"AAAA,SAAS,6BAA6B;AAGtC,SAAS,+BAA+B;AACxC,SAAS,kBAAkB,iBAAiB;AAE5C,MAAM,kBAAkB,OAAO,eAA8B;AAC3D,YAAU,sBAAsB,WAAW,GAAG,EAAE;AAChD,QAAM,wBAAwB,CAAC,UAAU,CAAC;AAC5C;AAEO,MAAM,yBAAyB,YAAY;AAChD,QAAM,gBAAgB,iBAAiB;AAEvC,QAAM,EAAE,OAAO,IAAI;AAEnB,MAAI,CAAC,OAAO,UAAW;AACvB,MAAI,CAAC,OAAO,SAAU;AACtB,MAAI,CAAC,OAAO,aAAc;AAE1B,QAAM,cAAc,IAAI,sBAAsB,aAAa;AAE3D,MAAI;AACF,UAAM,YAAY,WAAW,EAAE,KAAK,MAAM;AACxC,gBAAU,2CAA2C;AAAA,IACvD,CAAC;AAAA,EACH,SAAS,OAAO;AACd,cAAU,6CAA6C;AAAA,MACrD,OAAO;AAAA,IACT,CAAC;AAAA,EACH;AAEA,cAAY,oBAAoB;AAChC,cAAY,qBAAqB;AACjC,cAAY,sBAAsB;AAElC,SAAO;AACT;","names":[]}