@mmstack/translate 20.5.3 → 20.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -205,13 +205,11 @@ function injectIntl() {
205
205
  * ```
206
206
  */
207
207
  function injectDynamicLocale() {
208
- const defaultLocale = injectDefaultLocale();
209
208
  const store = inject(TranslationStore);
210
209
  const source = computed(() => store.locale());
211
210
  const set = (value) => {
212
- const isDefaultOrHasLoaders = value === defaultLocale || store.hasLocaleLoaders(value);
213
211
  if (value === untracked(source) ||
214
- !isDefaultOrHasLoaders ||
212
+ !store.hasLocaleLoaders(value) ||
215
213
  untracked(store.loadQueue).includes(value))
216
214
  return;
217
215
  store.loadQueue.update((q) => [...q, value]);
@@ -281,6 +279,7 @@ function registerNamespace(defaultTranslation, other) {
281
279
  const resolver = async () => {
282
280
  const store = inject(TranslationStore);
283
281
  const locale = untracked(store.locale);
282
+ const defaultLocale = injectDefaultLocale();
284
283
  const tPromise = other[locale];
285
284
  const promise = tPromise ?? defaultTranslation;
286
285
  if (!promise && isDevMode()) {
@@ -295,7 +294,10 @@ function registerNamespace(defaultTranslation, other) {
295
294
  isDevMode()) {
296
295
  return console.warn(`Expected locale to be ${locale} but got ${translation.locale}`);
297
296
  }
298
- store.registerOnDemandLoaders(translation.namespace, other);
297
+ store.registerOnDemandLoaders(translation.namespace, {
298
+ ...other,
299
+ [defaultLocale]: defaultTranslation,
300
+ });
299
301
  store.register(translation.namespace, {
300
302
  [locale]: translation.flat,
301
303
  });
@@ -1 +1 @@
1
- {"version":3,"file":"mmstack-translate.mjs","sources":["../tmp-esm2022/lib/delim.js","../tmp-esm2022/lib/compile.js","../tmp-esm2022/lib/create-namespace.js","../tmp-esm2022/lib/translation-store.js","../tmp-esm2022/lib/register-namespace.js","../tmp-esm2022/lib/translate.js","../tmp-esm2022/lib/translator.js","../tmp-esm2022/mmstack-translate.js"],"sourcesContent":["const KEY_DELIM = '::MMT_DELIM::';\nexport function prependDelim(prefix, key) {\n return `${prefix}${KEY_DELIM}${key}`;\n}\nexport function replaceWithDelim(str, repl = '.') {\n return str.replaceAll(repl, KEY_DELIM);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90cmFuc2xhdGUvc3JjL2xpYi9kZWxpbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFNBQVMsR0FBRyxlQUFlLENBQUM7QUFFbEMsTUFBTSxVQUFVLFlBQVksQ0FBQyxNQUFjLEVBQUUsR0FBVztJQUN0RCxPQUFPLEdBQUcsTUFBTSxHQUFHLFNBQVMsR0FBRyxHQUFHLEVBQUUsQ0FBQztBQUN2QyxDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEdBQVcsRUFBRSxJQUFJLEdBQUcsR0FBRztJQUN0RCxPQUFPLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ3pDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBLRVlfREVMSU0gPSAnOjpNTVRfREVMSU06Oic7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJlcGVuZERlbGltKHByZWZpeDogc3RyaW5nLCBrZXk6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIGAke3ByZWZpeH0ke0tFWV9ERUxJTX0ke2tleX1gO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVwbGFjZVdpdGhEZWxpbShzdHI6IHN0cmluZywgcmVwbCA9ICcuJyk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIHN0ci5yZXBsYWNlQWxsKHJlcGwsIEtFWV9ERUxJTSk7XHJcbn1cclxuIl19","import { prependDelim } from './delim';\nconst INTERNAL_SYMBOL = Symbol.for('mmstack-translate-internal');\nfunction isTranslationObject(t) {\n return typeof t === 'object' && t !== null;\n}\nfunction flattenTranslation(obj) {\n return Object.entries(obj).reduce((acc, [key, value]) => {\n if (typeof value === 'string') {\n acc[key] = value;\n }\n else if (isTranslationObject(value)) {\n Object.entries(flattenTranslation(value)).forEach(([nestedKey, nestedValue]) => {\n acc[prependDelim(key, nestedKey)] = nestedValue;\n });\n }\n return acc;\n }, {});\n}\nexport function compileTranslation(translation, ns, locale) {\n return {\n locale,\n flat: flattenTranslation(translation),\n namespace: ns,\n [INTERNAL_SYMBOL]: {\n shape: {},\n map: {},\n },\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RyYW5zbGF0ZS9zcmMvbGliL2NvbXBpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFNBQVMsQ0FBQztBQU92QyxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDRCQUE0QixDQUFDLENBQUM7QUF5Q2pFLFNBQVMsbUJBQW1CLENBQUMsQ0FBVTtJQUNyQyxPQUFPLE9BQU8sQ0FBQyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDO0FBQzdDLENBQUM7QUFFRCxTQUFTLGtCQUFrQixDQUFtQyxHQUFNO0lBQ2xFLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQy9CLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUU7UUFDcEIsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM5QixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ25CLENBQUM7YUFBTSxJQUFJLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FDL0MsQ0FBQyxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsRUFBRSxFQUFFO2dCQUMzQixHQUFHLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQyxHQUFHLFdBQVcsQ0FBQztZQUNsRCxDQUFDLENBQ0YsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsRUFDRCxFQUE0QixDQUM3QixDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxrQkFBa0IsQ0FLaEMsV0FBYyxFQUNkLEVBQU8sRUFDUCxNQUFnQjtJQUtoQixPQUFPO1FBQ0wsTUFBTTtRQUNOLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxXQUFXLENBQUM7UUFDckMsU0FBUyxFQUFFLEVBQUU7UUFDYixDQUFDLGVBQWUsQ0FBQyxFQUFFO1lBQ2pCLEtBQUssRUFBRSxFQUFZO1lBQ25CLEdBQUcsRUFBRSxFQUFVO1NBQ2hCO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwcmVwZW5kRGVsaW0gfSBmcm9tICcuL2RlbGltJztcclxuaW1wb3J0IHR5cGUge1xyXG4gIGluZmVyVHJhbnNsYXRpb25QYXJhbU1hcCxcclxuICBpbmZlclRyYW5zbGF0aW9uU2hhcGUsXHJcbn0gZnJvbSAnLi9wYXJhbWV0ZXJpemUudHlwZSc7XHJcbmltcG9ydCB0eXBlIHsgVW5rbm93blN0cmluZ0tleU9iamVjdCB9IGZyb20gJy4vc3RyaW5nLWtleS1vYmplY3QudHlwZSc7XHJcblxyXG5jb25zdCBJTlRFUk5BTF9TWU1CT0wgPSBTeW1ib2wuZm9yKCdtbXN0YWNrLXRyYW5zbGF0ZS1pbnRlcm5hbCcpO1xyXG5cclxudHlwZSBJbnRlcm5hbFN5bWJvbCA9IHR5cGVvZiBJTlRFUk5BTF9TWU1CT0w7XHJcblxyXG5leHBvcnQgdHlwZSBDb21waWxlZFRyYW5zbGF0aW9uPFxyXG4gIFQgZXh0ZW5kcyBVbmtub3duU3RyaW5nS2V5T2JqZWN0LFxyXG4gIFROUyBleHRlbmRzIHN0cmluZyxcclxuICBUTG9jYWxlIGV4dGVuZHMgc3RyaW5nID0gc3RyaW5nLFxyXG4+ID0ge1xyXG4gIGZsYXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XHJcbiAgbG9jYWxlPzogVExvY2FsZTtcclxuICBuYW1lc3BhY2U6IFROUztcclxuICBbSU5URVJOQUxfU1lNQk9MXToge1xyXG4gICAgc2hhcGU6IGluZmVyVHJhbnNsYXRpb25TaGFwZTxUPjtcclxuICAgIG1hcDogaW5mZXJUcmFuc2xhdGlvblBhcmFtTWFwPFROUywgVD47XHJcbiAgfTtcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIG1lcmdlVHJhbnNsYXRpb25NYXBzPFxyXG4gIFRNYWluIGV4dGVuZHMgQ29tcGlsZWRUcmFuc2xhdGlvbjxVbmtub3duU3RyaW5nS2V5T2JqZWN0LCBzdHJpbmc+LFxyXG4gIFRPdGhlciBleHRlbmRzIENvbXBpbGVkVHJhbnNsYXRpb248VW5rbm93blN0cmluZ0tleU9iamVjdCwgc3RyaW5nPixcclxuPiA9IE9taXQ8VE1haW4sIEludGVybmFsU3ltYm9sPiAmIHtcclxuICBbSU5URVJOQUxfU1lNQk9MXToge1xyXG4gICAgc2hhcGU6IGluZmVyQ29tcGlsZWRUcmFuc2xhdGlvblNoYXBlPFRNYWluPjtcclxuICAgIG1hcDogaW5mZXJDb21waWxlZFRyYW5zbGF0aW9uTWFwPFRPdGhlcj4gJlxyXG4gICAgICBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25NYXA8VE1haW4+O1xyXG4gIH07XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25OYW1lc3BhY2U8XHJcbiAgVCBleHRlbmRzIENvbXBpbGVkVHJhbnNsYXRpb248VW5rbm93blN0cmluZ0tleU9iamVjdCwgc3RyaW5nPixcclxuPiA9IFRbJ25hbWVzcGFjZSddO1xyXG5cclxuZXhwb3J0IHR5cGUgaW5mZXJDb21waWxlZFRyYW5zbGF0aW9uU2hhcGU8XHJcbiAgVCBleHRlbmRzIENvbXBpbGVkVHJhbnNsYXRpb248VW5rbm93blN0cmluZ0tleU9iamVjdCwgc3RyaW5nPixcclxuPiA9IFRbSW50ZXJuYWxTeW1ib2xdWydzaGFwZSddO1xyXG5cclxuZXhwb3J0IHR5cGUgaW5mZXJDb21waWxlZFRyYW5zbGF0aW9uTWFwPFxyXG4gIFQgZXh0ZW5kcyBDb21waWxlZFRyYW5zbGF0aW9uPFVua25vd25TdHJpbmdLZXlPYmplY3QsIHN0cmluZz4sXHJcbj4gPSBUW0ludGVybmFsU3ltYm9sXVsnbWFwJ107XHJcblxyXG5mdW5jdGlvbiBpc1RyYW5zbGF0aW9uT2JqZWN0KHQ6IHVua25vd24pOiB0IGlzIFVua25vd25TdHJpbmdLZXlPYmplY3Qge1xyXG4gIHJldHVybiB0eXBlb2YgdCA9PT0gJ29iamVjdCcgJiYgdCAhPT0gbnVsbDtcclxufVxyXG5cclxuZnVuY3Rpb24gZmxhdHRlblRyYW5zbGF0aW9uPFQgZXh0ZW5kcyBVbmtub3duU3RyaW5nS2V5T2JqZWN0PihvYmo6IFQpIHtcclxuICByZXR1cm4gT2JqZWN0LmVudHJpZXMob2JqKS5yZWR1Y2UoXHJcbiAgICAoYWNjLCBba2V5LCB2YWx1ZV0pID0+IHtcclxuICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICBhY2Nba2V5XSA9IHZhbHVlO1xyXG4gICAgICB9IGVsc2UgaWYgKGlzVHJhbnNsYXRpb25PYmplY3QodmFsdWUpKSB7XHJcbiAgICAgICAgT2JqZWN0LmVudHJpZXMoZmxhdHRlblRyYW5zbGF0aW9uKHZhbHVlKSkuZm9yRWFjaChcclxuICAgICAgICAgIChbbmVzdGVkS2V5LCBuZXN0ZWRWYWx1ZV0pID0+IHtcclxuICAgICAgICAgICAgYWNjW3ByZXBlbmREZWxpbShrZXksIG5lc3RlZEtleSldID0gbmVzdGVkVmFsdWU7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiBhY2M7XHJcbiAgICB9LFxyXG4gICAge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPixcclxuICApO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY29tcGlsZVRyYW5zbGF0aW9uPFxyXG4gIFQgZXh0ZW5kcyBVbmtub3duU3RyaW5nS2V5T2JqZWN0LFxyXG4gIFROUyBleHRlbmRzIHN0cmluZyxcclxuICBUTG9jYWxlIGV4dGVuZHMgc3RyaW5nID0gc3RyaW5nLFxyXG4+KFxyXG4gIHRyYW5zbGF0aW9uOiBULFxyXG4gIG5zOiBUTlMsXHJcbiAgbG9jYWxlPzogVExvY2FsZSxcclxuKTogQ29tcGlsZWRUcmFuc2xhdGlvbjxULCBUTlMsIFRMb2NhbGU+IHtcclxuICB0eXBlICRTaGFwZSA9IGluZmVyVHJhbnNsYXRpb25TaGFwZTxUPjtcclxuICB0eXBlICRNYXAgPSBpbmZlclRyYW5zbGF0aW9uUGFyYW1NYXA8VE5TLCBUPjtcclxuXHJcbiAgcmV0dXJuIHtcclxuICAgIGxvY2FsZSxcclxuICAgIGZsYXQ6IGZsYXR0ZW5UcmFuc2xhdGlvbih0cmFuc2xhdGlvbiksXHJcbiAgICBuYW1lc3BhY2U6IG5zLFxyXG4gICAgW0lOVEVSTkFMX1NZTUJPTF06IHtcclxuICAgICAgc2hhcGU6IHt9IGFzICRTaGFwZSxcclxuICAgICAgbWFwOiB7fSBhcyAkTWFwLFxyXG4gICAgfSxcclxuICB9O1xyXG59XHJcbiJdfQ==","import { compileTranslation, } from './compile';\nexport function createNamespace(ns, translation) {\n const compiled = compileTranslation(translation, ns);\n const namespace = {\n translation: compileTranslation(translation, ns),\n createTranslation: (locale, translation) => {\n return compileTranslation(translation, ns, locale);\n },\n createMergedNamespace: (otherNs, otherTranslation) => {\n return createNamespace(otherNs, otherTranslation);\n },\n };\n return namespace;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW5hbWVzcGFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RyYW5zbGF0ZS9zcmMvbGliL2NyZWF0ZS1uYW1lc3BhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLGtCQUFrQixHQUduQixNQUFNLFdBQVcsQ0FBQztBQTJCbkIsTUFBTSxVQUFVLGVBQWUsQ0FHN0IsRUFBTyxFQUFFLFdBQWM7SUFDdkIsTUFBTSxRQUFRLEdBQUcsa0JBQWtCLENBQVMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBSzdELE1BQU0sU0FBUyxHQUFpRDtRQUM5RCxXQUFXLEVBQUUsa0JBQWtCLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztRQUNoRCxpQkFBaUIsRUFBRSxDQUNqQixNQUFlLEVBQ2YsV0FBbUIsRUFDbkIsRUFBRTtZQUNGLE9BQU8sa0JBQWtCLENBQUMsV0FBVyxFQUFFLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNyRCxDQUFDO1FBQ0QscUJBQXFCLEVBQUUsQ0FRckIsT0FBaUIsRUFDakIsZ0JBQXdCLEVBQ3hCLEVBQUU7WUFDRixPQUFPLGVBQWUsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLENBSTdCLENBQUM7UUFDdEIsQ0FBQztLQUNGLENBQUM7SUFFRixPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21waWxlZFRyYW5zbGF0aW9uLFxyXG4gIGNvbXBpbGVUcmFuc2xhdGlvbixcclxuICBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25TaGFwZSxcclxuICBtZXJnZVRyYW5zbGF0aW9uTWFwcyxcclxufSBmcm9tICcuL2NvbXBpbGUnO1xyXG5pbXBvcnQgeyBVbmtub3duU3RyaW5nS2V5T2JqZWN0IH0gZnJvbSAnLi9zdHJpbmcta2V5LW9iamVjdC50eXBlJztcclxuXHJcbnR5cGUgVHJhbnNsYXRpb25OYW1lc3BhY2U8XHJcbiAgVE5TIGV4dGVuZHMgc3RyaW5nLFxyXG4gIFQgZXh0ZW5kcyBDb21waWxlZFRyYW5zbGF0aW9uPFVua25vd25TdHJpbmdLZXlPYmplY3QsIFROUz4sXHJcbiAgVFNoYXBlIGV4dGVuZHMgVW5rbm93blN0cmluZ0tleU9iamVjdCxcclxuPiA9IHtcclxuICB0cmFuc2xhdGlvbjogVDtcclxuICBjcmVhdGVUcmFuc2xhdGlvbjogPFRMb2NhbGUgZXh0ZW5kcyBzdHJpbmc+KFxyXG4gICAgbG9jYWxlOiBUTG9jYWxlLFxyXG4gICAgdHJhbnNsYXRpb246IFRTaGFwZSxcclxuICApID0+IENvbXBpbGVkVHJhbnNsYXRpb248VFNoYXBlLCBUTlMsIFRMb2NhbGU+O1xyXG4gIGNyZWF0ZU1lcmdlZE5hbWVzcGFjZTogPFxyXG4gICAgVE90aGVyTlMgZXh0ZW5kcyBzdHJpbmcsXHJcbiAgICBjb25zdCBUT3RoZXIgZXh0ZW5kcyBVbmtub3duU3RyaW5nS2V5T2JqZWN0LFxyXG4gICAgVE90aGVyQ29tcGlsZWQgZXh0ZW5kcyBDb21waWxlZFRyYW5zbGF0aW9uPFRPdGhlciwgVE90aGVyTlM+LFxyXG4gID4oXHJcbiAgICBuczogVE90aGVyTlMsXHJcbiAgICB0cmFuc2xhdGlvbjogVE90aGVyLFxyXG4gICkgPT4gVHJhbnNsYXRpb25OYW1lc3BhY2U8XHJcbiAgICBUT3RoZXJOUyxcclxuICAgIG1lcmdlVHJhbnNsYXRpb25NYXBzPFRPdGhlckNvbXBpbGVkLCBUPixcclxuICAgIGluZmVyQ29tcGlsZWRUcmFuc2xhdGlvblNoYXBlPFRPdGhlckNvbXBpbGVkPlxyXG4gID47XHJcbn07XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTmFtZXNwYWNlPFxyXG4gIGNvbnN0IFQgZXh0ZW5kcyBVbmtub3duU3RyaW5nS2V5T2JqZWN0LFxyXG4gIFROUyBleHRlbmRzIHN0cmluZyxcclxuPihuczogVE5TLCB0cmFuc2xhdGlvbjogVCkge1xyXG4gIGNvbnN0IGNvbXBpbGVkID0gY29tcGlsZVRyYW5zbGF0aW9uPFQsIFROUz4odHJhbnNsYXRpb24sIG5zKTtcclxuXHJcbiAgdHlwZSBUQ29tcGlsZWQgPSB0eXBlb2YgY29tcGlsZWQ7XHJcbiAgdHlwZSBUU2hhcGUgPSBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25TaGFwZTx0eXBlb2YgY29tcGlsZWQ+O1xyXG5cclxuICBjb25zdCBuYW1lc3BhY2U6IFRyYW5zbGF0aW9uTmFtZXNwYWNlPFROUywgVENvbXBpbGVkLCBUU2hhcGU+ID0ge1xyXG4gICAgdHJhbnNsYXRpb246IGNvbXBpbGVUcmFuc2xhdGlvbih0cmFuc2xhdGlvbiwgbnMpLFxyXG4gICAgY3JlYXRlVHJhbnNsYXRpb246IDxUTG9jYWxlIGV4dGVuZHMgc3RyaW5nPihcclxuICAgICAgbG9jYWxlOiBUTG9jYWxlLFxyXG4gICAgICB0cmFuc2xhdGlvbjogVFNoYXBlLFxyXG4gICAgKSA9PiB7XHJcbiAgICAgIHJldHVybiBjb21waWxlVHJhbnNsYXRpb24odHJhbnNsYXRpb24sIG5zLCBsb2NhbGUpO1xyXG4gICAgfSxcclxuICAgIGNyZWF0ZU1lcmdlZE5hbWVzcGFjZTogPFxyXG4gICAgICBUT3RoZXIgZXh0ZW5kcyBVbmtub3duU3RyaW5nS2V5T2JqZWN0LFxyXG4gICAgICBUT3RoZXJOUyBleHRlbmRzIHN0cmluZyxcclxuICAgICAgVE90aGVyQ29tcGlsZWQgZXh0ZW5kcyBDb21waWxlZFRyYW5zbGF0aW9uPFxyXG4gICAgICAgIFRPdGhlcixcclxuICAgICAgICBUT3RoZXJOU1xyXG4gICAgICA+ID0gQ29tcGlsZWRUcmFuc2xhdGlvbjxUT3RoZXIsIFRPdGhlck5TPixcclxuICAgID4oXHJcbiAgICAgIG90aGVyTnM6IFRPdGhlck5TLFxyXG4gICAgICBvdGhlclRyYW5zbGF0aW9uOiBUT3RoZXIsXHJcbiAgICApID0+IHtcclxuICAgICAgcmV0dXJuIGNyZWF0ZU5hbWVzcGFjZShvdGhlck5zLCBvdGhlclRyYW5zbGF0aW9uKSBhcyBUcmFuc2xhdGlvbk5hbWVzcGFjZTxcclxuICAgICAgICBUT3RoZXJOUyxcclxuICAgICAgICBtZXJnZVRyYW5zbGF0aW9uTWFwczxUT3RoZXJDb21waWxlZCwgVENvbXBpbGVkPixcclxuICAgICAgICBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25TaGFwZTxUT3RoZXJDb21waWxlZD5cclxuICAgICAgPiBhcyB1bmtub3duIGFzIGFueTtcclxuICAgIH0sXHJcbiAgfTtcclxuXHJcbiAgcmV0dXJuIG5hbWVzcGFjZTtcclxufVxyXG4iXX0=","import { computed, effect, inject, Injectable, InjectionToken, isDevMode, LOCALE_ID, resource, signal, untracked, } from '@angular/core';\nimport { createIntl, createIntlCache } from '@formatjs/intl';\nimport { prependDelim } from './delim';\nimport * as i0 from \"@angular/core\";\nconst CONFIG_TOKEN = new InjectionToken('mmstack-intl-config');\nexport function provideIntlConfig(config) {\n return {\n useValue: config,\n provide: CONFIG_TOKEN,\n };\n}\nexport function injectIntlConfig() {\n return inject(CONFIG_TOKEN, { optional: true }) ?? undefined;\n}\nexport function injectDefaultLocale() {\n return injectIntlConfig()?.defaultLocale ?? 'en-US';\n}\nexport class TranslationStore {\n cache = createIntlCache();\n config = injectIntlConfig();\n loadQueue = signal([], ...(ngDevMode ? [{ debugName: \"loadQueue\" }] : []));\n locale = signal(inject(LOCALE_ID), ...(ngDevMode ? [{ debugName: \"locale\" }] : []));\n defaultLocale = injectDefaultLocale();\n translations = signal({\n [this.defaultLocale]: {},\n }, ...(ngDevMode ? [{ debugName: \"translations\" }] : []));\n onDemandLoaders = new Map();\n nonMessageConfig = computed(() => ({\n ...this.config,\n locale: this.locale(),\n }), ...(ngDevMode ? [{ debugName: \"nonMessageConfig\" }] : []));\n messages = computed(() => this.translations()[this.locale()] ??\n this.translations()[this.defaultLocale] ??\n {}, ...(ngDevMode ? [{ debugName: \"messages\" }] : []));\n dynamicLocaleLoader = resource({\n params: computed(() => this.loadQueue().at(0) ?? null),\n loader: async ({ params: newLocale, abortSignal }) => {\n if (!newLocale)\n return;\n const currentTranslations = untracked(this.translations);\n const loadPromises = [];\n for (const [namespace, loaders] of this.onDemandLoaders.entries()) {\n const loader = loaders[newLocale];\n if (loader) {\n const hasNamespaceForLocale = currentTranslations[newLocale] &&\n Object.keys(currentTranslations[newLocale]).some((key) => key.startsWith(`${prependDelim(namespace, '').slice(0, -1)}`));\n if (!hasNamespaceForLocale) {\n loadPromises.push(loader()\n .then((translation) => {\n if (abortSignal.aborted)\n return null;\n return {\n namespace: translation.namespace,\n flat: translation.flat,\n };\n })\n .catch((err) => {\n if (isDevMode()) {\n console.error('[Translate] Failed to load', namespace, newLocale, err);\n }\n return null;\n }));\n }\n }\n }\n return Promise.all(loadPromises)\n .then((res) => res.filter((r) => r !== null))\n .then((res) => ({\n locales: res,\n locale: newLocale,\n }));\n },\n });\n intl = computed(() => createIntl({\n ...this.nonMessageConfig(),\n messages: this.messages(),\n }, this.cache), ...(ngDevMode ? [{ debugName: \"intl\" }] : []));\n constructor() {\n effect(() => {\n if (\n // should never be in error state, but best to check in case something throws\n this.dynamicLocaleLoader.error() ||\n this.dynamicLocaleLoader.isLoading())\n return;\n const dynamicLocales = this.dynamicLocaleLoader.value();\n if (!dynamicLocales)\n return;\n for (const locale of dynamicLocales.locales) {\n this.register(locale.namespace, {\n [dynamicLocales.locale]: locale.flat,\n });\n }\n this.loadQueue.update((q) => q.filter((l) => l !== dynamicLocales.locale));\n this.locale.set(dynamicLocales.locale);\n });\n }\n formatMessage(key, values) {\n const message = this.translations()[this.locale()]?.[key] ?? '';\n if (!message)\n return '';\n return this.intl().formatMessage({ id: key, defaultMessage: message }, values);\n }\n register(namespace, flat) {\n this.translations.update((cur) => {\n return Object.entries(flat).reduce((acc, [locale, translation]) => {\n const localeTranslation = acc[locale] ?? {};\n const withNS = Object.entries(translation ?? {}).reduce((acc, [key, value]) => {\n acc[prependDelim(namespace, key)] = value;\n return acc;\n }, {});\n acc[locale] = {\n ...localeTranslation,\n ...withNS,\n };\n return acc;\n }, { ...cur });\n });\n }\n registerOnDemandLoaders(namespace, loaders) {\n this.onDemandLoaders.set(namespace, loaders);\n }\n hasLocaleLoaders(locale) {\n return Array.from(this.onDemandLoaders.values()).some((loaders) => loaders[locale]);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: TranslationStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: TranslationStore, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: TranslationStore, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\nexport function injectIntl() {\n return inject(TranslationStore).intl;\n}\n/**\n * Inject a dynamic locale signal that supports runtime language switching.\n *\n * @returns A writable signal with the current locale and loading state.\n * Only allows switching to locales that have registered loaders.\n *\n * @example\n * ```typescript\n * const locale = injectDynamicLocale();\n *\n * // Switch language (triggers automatic translation loading)\n * locale.set('sl-SI');\n *\n * // Check loading state\n * if (locale.isLoading()) {\n * // Show spinner\n * }\n * ```\n */\nexport function injectDynamicLocale() {\n const defaultLocale = injectDefaultLocale();\n const store = inject(TranslationStore);\n const source = computed(() => store.locale());\n const set = (value) => {\n const isDefaultOrHasLoaders = value === defaultLocale || store.hasLocaleLoaders(value);\n if (value === untracked(source) ||\n !isDefaultOrHasLoaders ||\n untracked(store.loadQueue).includes(value))\n return;\n store.loadQueue.update((q) => [...q, value]);\n };\n source.set = set;\n source.update = (updater) => {\n const next = updater(untracked(source));\n source.set(next);\n };\n source.asReadonly = () => source;\n source.isLoading = store.dynamicLocaleLoader.isLoading;\n return source;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24tc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90cmFuc2xhdGUvc3JjL2xpYi90cmFuc2xhdGlvbi1zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFDTixNQUFNLEVBQ04sVUFBVSxFQUNWLGNBQWMsRUFDZCxTQUFTLEVBQ1QsU0FBUyxFQUVULFFBQVEsRUFFUixNQUFNLEVBQ04sU0FBUyxHQUVWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFjLE1BQU0sZ0JBQWdCLENBQUM7QUFFekUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFHdkMsTUFBTSxZQUFZLEdBQUcsSUFBSSxjQUFjLENBRXJDLHFCQUFxQixDQUFDLENBQUM7QUFFekIsTUFBTSxVQUFVLGlCQUFpQixDQUMvQixNQUErQztJQUUvQyxPQUFPO1FBQ0wsUUFBUSxFQUFFLE1BQU07UUFDaEIsT0FBTyxFQUFFLFlBQVk7S0FDdEIsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsZ0JBQWdCO0lBQzlCLE9BQU8sTUFBTSxDQUFDLFlBQVksRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxJQUFJLFNBQVMsQ0FBQztBQUMvRCxDQUFDO0FBRUQsTUFBTSxVQUFVLG1CQUFtQjtJQUNqQyxPQUFPLGdCQUFnQixFQUFFLEVBQUUsYUFBYSxJQUFJLE9BQU8sQ0FBQztBQUN0RCxDQUFDO0FBS0QsTUFBTSxPQUFPLGdCQUFnQjtJQUNWLEtBQUssR0FBRyxlQUFlLEVBQUUsQ0FBQztJQUMxQixNQUFNLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztJQUNwQyxTQUFTLEdBQUcsTUFBTSxDQUFXLEVBQUUscURBQUMsQ0FBQztJQUNqQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxT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QUFLLGFBQWEsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFM0QsSUFDRSxLQUFLLEtBQUssU0FBUyxDQUFDLE1BQU0sQ0FBQztZQUMzQixDQUFDLHFCQUFxQjtZQUN0QixTQUFTLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFFMUMsT0FBTztRQUNULEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDL0MsQ0FBQyxDQUFDO0lBQ0YsTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7SUFDakIsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLE9BQWtDLEVBQUUsRUFBRTtRQUNyRCxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDeEMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNuQixDQUFDLENBQUM7SUFDRixNQUFNLENBQUMsVUFBVSxHQUFHLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQztJQUVqQyxNQUFNLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUM7SUFFdkQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgY29tcHV0ZWQsXHJcbiAgZWZmZWN0LFxyXG4gIGluamVjdCxcclxuICBJbmplY3RhYmxlLFxyXG4gIEluamVjdGlvblRva2VuLFxyXG4gIGlzRGV2TW9kZSxcclxuICBMT0NBTEVfSUQsXHJcbiAgUHJvdmlkZXIsXHJcbiAgcmVzb3VyY2UsXHJcbiAgU2lnbmFsLFxyXG4gIHNpZ25hbCxcclxuICB1bnRyYWNrZWQsXHJcbiAgV3JpdGFibGVTaWduYWwsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGNyZWF0ZUludGwsIGNyZWF0ZUludGxDYWNoZSwgSW50bENvbmZpZyB9IGZyb20gJ0Bmb3JtYXRqcy9pbnRsJztcclxuaW1wb3J0IHsgQ29tcGlsZWRUcmFuc2xhdGlvbiB9IGZyb20gJy4vY29tcGlsZSc7XHJcbmltcG9ydCB7IHByZXBlbmREZWxpbSB9IGZyb20gJy4vZGVsaW0nO1xyXG5pbXBvcnQgeyBVbmtub3duU3RyaW5nS2V5T2JqZWN0IH0gZnJvbSAnLi9zdHJpbmcta2V5LW9iamVjdC50eXBlJztcclxuXHJcbmNvbnN0IENPTkZJR19UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxcclxuICBPbWl0PEludGxDb25maWcsICdsb2NhbGUnIHwgJ21lc3NhZ2VzJz5cclxuPignbW1zdGFjay1pbnRsLWNvbmZpZycpO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVJbnRsQ29uZmlnKFxyXG4gIGNvbmZpZzogT21pdDxJbnRsQ29uZmlnLCAnbG9jYWxlJyB8ICdtZXNzYWdlcyc+LFxyXG4pOiBQcm92aWRlciB7XHJcbiAgcmV0dXJuIHtcclxuICAgIHVzZVZhbHVlOiBjb25maWcsXHJcbiAgICBwcm92aWRlOiBDT05GSUdfVE9LRU4sXHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdEludGxDb25maWcoKSB7XHJcbiAgcmV0dXJuIGluamVjdChDT05GSUdfVE9LRU4sIHsgb3B0aW9uYWw6IHRydWUgfSkgPz8gdW5kZWZpbmVkO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0RGVmYXVsdExvY2FsZSgpIHtcclxuICByZXR1cm4gaW5qZWN0SW50bENvbmZpZygpPy5kZWZhdWx0TG9jYWxlID8/ICdlbi1VUyc7XHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGlvblN0b3JlIHtcclxuICBwcml2YXRlIHJlYWRvbmx5IGNhY2hlID0gY3JlYXRlSW50bENhY2hlKCk7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBjb25maWcgPSBpbmplY3RJbnRsQ29uZmlnKCk7XHJcbiAgcmVhZG9ubHkgbG9hZFF1ZXVlID0gc2lnbmFsPHN0cmluZ1tdPihbXSk7XHJcbiAgcmVhZG9ubHkgbG9jYWxlID0gc2lnbmFsKGluamVjdChMT0NBTEVfSUQpKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRMb2NhbGUgPSBpbmplY3REZWZhdWx0TG9jYWxlKCk7XHJcbiAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGlvbnMgPSBzaWduYWw8XHJcbiAgICBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PlxyXG4gID4oe1xyXG4gICAgW3RoaXMuZGVmYXVsdExvY2FsZV06IHt9LFxyXG4gIH0pO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IG9uRGVtYW5kTG9hZGVycyA9IG5ldyBNYXA8XHJcbiAgICBzdHJpbmcsXHJcbiAgICBSZWNvcmQ8XHJcbiAgICAgIHN0cmluZyxcclxuICAgICAgKCkgPT4gUHJvbWlzZTxDb21waWxlZFRyYW5zbGF0aW9uPFVua25vd25TdHJpbmdLZXlPYmplY3QsIHN0cmluZz4+XHJcbiAgICA+XHJcbiAgPigpO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IG5vbk1lc3NhZ2VDb25maWcgPSBjb21wdXRlZCgoKSA9PiAoe1xyXG4gICAgLi4udGhpcy5jb25maWcsXHJcbiAgICBsb2NhbGU6IHRoaXMubG9jYWxlKCksXHJcbiAgfSkpO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2VzID0gY29tcHV0ZWQoXHJcbiAgICAoKSA9PlxyXG4gICAgICB0aGlzLnRyYW5zbGF0aW9ucygpW3RoaXMubG9jYWxlKCldID8/XHJcbiAgICAgIHRoaXMudHJhbnNsYXRpb25zKClbdGhpcy5kZWZhdWx0TG9jYWxlXSA/P1xyXG4gICAgICB7fSxcclxuICApO1xyXG5cclxuICByZWFkb25seSBkeW5hbWljTG9jYWxlTG9hZGVyID0gcmVzb3VyY2Uoe1xyXG4gICAgcGFyYW1zOiBjb21wdXRlZCgoKSA9PiB0aGlzLmxvYWRRdWV1ZSgpLmF0KDApID8/IG51bGwpLFxyXG4gICAgbG9hZGVyOiBhc3luYyAoeyBwYXJhbXM6IG5ld0xvY2FsZSwgYWJvcnRTaWduYWwgfSkgPT4ge1xyXG4gICAgICBpZiAoIW5ld0xvY2FsZSkgcmV0dXJuO1xyXG5cclxuICAgICAgY29uc3QgY3VycmVudFRyYW5zbGF0aW9ucyA9IHVudHJhY2tlZCh0aGlzLnRyYW5zbGF0aW9ucyk7XHJcblxyXG4gICAgICBjb25zdCBsb2FkUHJvbWlzZXM6IFByb21pc2U8e1xyXG4gICAgICAgIG5hbWVzcGFjZTogc3RyaW5nO1xyXG4gICAgICAgIGZsYXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XHJcbiAgICAgIH0gfCBudWxsPltdID0gW107XHJcblxyXG4gICAgICBmb3IgKGNvbnN0IFtuYW1lc3BhY2UsIGxvYWRlcnNdIG9mIHRoaXMub25EZW1hbmRMb2FkZXJzLmVudHJpZXMoKSkge1xyXG4gICAgICAgIGNvbnN0IGxvYWRlciA9IGxvYWRlcnNbbmV3TG9jYWxlXTtcclxuICAgICAgICBpZiAobG9hZGVyKSB7XHJcbiAgICAgICAgICBjb25zdCBoYXNOYW1lc3BhY2VGb3JMb2NhbGUgPVxyXG4gICAgICAgICAgICBjdXJyZW50VHJhbnNsYXRpb25zW25ld0xvY2FsZV0gJiZcclxuICAgICAgICAgICAgT2JqZWN0LmtleXMoY3VycmVudFRyYW5zbGF0aW9uc1tuZXdMb2NhbGVdKS5zb21lKChrZXkpID0+XHJcbiAgICAgICAgICAgICAga2V5LnN0YXJ0c1dpdGgoYCR7cHJlcGVuZERlbGltKG5hbWVzcGFjZSwgJycpLnNsaWNlKDAsIC0xKX1gKSxcclxuICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICBpZiAoIWhhc05hbWVzcGFjZUZvckxvY2FsZSkge1xyXG4gICAgICAgICAgICBsb2FkUHJvbWlzZXMucHVzaChcclxuICAgICAgICAgICAgICBsb2FkZXIoKVxyXG4gICAgICAgICAgICAgICAgLnRoZW4oKHRyYW5zbGF0aW9uKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIGlmIChhYm9ydFNpZ25hbC5hYm9ydGVkKSByZXR1cm4gbnVsbDtcclxuICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgICAgICBuYW1lc3BhY2U6IHRyYW5zbGF0aW9uLm5hbWVzcGFjZSxcclxuICAgICAgICAgICAgICAgICAgICBmbGF0OiB0cmFuc2xhdGlvbi5mbGF0LFxyXG4gICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXHJcbiAgICAgICAgICAgICAgICAgICAgICAnW1RyYW5zbGF0ZV0gRmFpbGVkIHRvIGxvYWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgbmFtZXNwYWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgbmV3TG9jYWxlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgZXJyLFxyXG4gICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gUHJvbWlzZS5hbGwobG9hZFByb21pc2VzKVxyXG4gICAgICAgIC50aGVuKChyZXMpID0+IHJlcy5maWx0ZXIoKHIpID0+IHIgIT09IG51bGwpKVxyXG4gICAgICAgIC50aGVuKChyZXMpID0+ICh7XHJcbiAgICAgICAgICBsb2NhbGVzOiByZXMsXHJcbiAgICAgICAgICBsb2NhbGU6IG5ld0xvY2FsZSxcclxuICAgICAgICB9KSk7XHJcbiAgICB9LFxyXG4gIH0pO1xyXG5cclxuICByZWFkb25seSBpbnRsID0gY29tcHV0ZWQoKCkgPT5cclxuICAgIGNyZWF0ZUludGwoXHJcbiAgICAgIHtcclxuICAgICAgICAuLi50aGlzLm5vbk1lc3NhZ2VDb25maWcoKSxcclxuICAgICAgICBtZXNzYWdlczogdGhpcy5tZXNzYWdlcygpLFxyXG4gICAgICB9LFxyXG4gICAgICB0aGlzLmNhY2hlLFxyXG4gICAgKSxcclxuICApO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIGVmZmVjdCgoKSA9PiB7XHJcbiAgICAgIGlmIChcclxuICAgICAgICAvLyBzaG91bGQgbmV2ZXIgYmUgaW4gZXJyb3Igc3RhdGUsIGJ1dCBiZXN0IHRvIGNoZWNrIGluIGNhc2Ugc29tZXRoaW5nIHRocm93c1xyXG4gICAgICAgIHRoaXMuZHluYW1pY0xvY2FsZUxvYWRlci5lcnJvcigpIHx8XHJcbiAgICAgICAgdGhpcy5keW5hbWljTG9jYWxlTG9hZGVyLmlzTG9hZGluZygpXHJcbiAgICAgIClcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIGNvbnN0IGR5bmFtaWNMb2NhbGVzID0gdGhpcy5keW5hbWljTG9jYWxlTG9hZGVyLnZhbHVlKCk7XHJcblxyXG4gICAgICBpZiAoIWR5bmFtaWNMb2NhbGVzKSByZXR1cm47XHJcbiAgICAgIGZvciAoY29uc3QgbG9jYWxlIG9mIGR5bmFtaWNMb2NhbGVzLmxvY2FsZXMpIHtcclxuICAgICAgICB0aGlzLnJlZ2lzdGVyKGxvY2FsZS5uYW1lc3BhY2UsIHtcclxuICAgICAgICAgIFtkeW5hbWljTG9jYWxlcy5sb2NhbGVdOiBsb2NhbGUuZmxhdCxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmxvYWRRdWV1ZS51cGRhdGUoKHEpID0+XHJcbiAgICAgICAgcS5maWx0ZXIoKGwpID0+IGwgIT09IGR5bmFtaWNMb2NhbGVzLmxvY2FsZSksXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMubG9jYWxlLnNldChkeW5hbWljTG9jYWxlcy5sb2NhbGUpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBmb3JtYXRNZXNzYWdlKGtleTogc3RyaW5nLCB2YWx1ZXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+KSB7XHJcbiAgICBjb25zdCBtZXNzYWdlID0gdGhpcy50cmFuc2xhdGlvbnMoKVt0aGlzLmxvY2FsZSgpXT8uW2tleV0gPz8gJyc7XHJcblxyXG4gICAgaWYgKCFtZXNzYWdlKSByZXR1cm4gJyc7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaW50bCgpLmZvcm1hdE1lc3NhZ2UoXHJcbiAgICAgIHsgaWQ6IGtleSwgZGVmYXVsdE1lc3NhZ2U6IG1lc3NhZ2UgfSxcclxuICAgICAgdmFsdWVzLFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyKFxyXG4gICAgbmFtZXNwYWNlOiBzdHJpbmcsXHJcbiAgICBmbGF0OiBQYXJ0aWFsPFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+PixcclxuICApIHtcclxuICAgIHRoaXMudHJhbnNsYXRpb25zLnVwZGF0ZSgoY3VyKSA9PiB7XHJcbiAgICAgIHJldHVybiBPYmplY3QuZW50cmllcyhmbGF0KS5yZWR1Y2UoXHJcbiAgICAgICAgKGFjYywgW2xvY2FsZSwgdHJhbnNsYXRpb25dKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBsb2NhbGVUcmFuc2xhdGlvbiA9IGFjY1tsb2NhbGVdID8/IHt9O1xyXG5cclxuICAgICAgICAgIGNvbnN0IHdpdGhOUyA9IE9iamVjdC5lbnRyaWVzKHRyYW5zbGF0aW9uID8/IHt9KS5yZWR1Y2UoXHJcbiAgICAgICAgICAgIChhY2MsIFtrZXksIHZhbHVlXSkgPT4ge1xyXG4gICAgICAgICAgICAgIGFjY1twcmVwZW5kRGVsaW0obmFtZXNwYWNlLCBrZXkpXSA9IHZhbHVlO1xyXG4gICAgICAgICAgICAgIHJldHVybiBhY2M7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHt9IGFzIFJlY29yZDxzdHJpbmcsIHN0cmluZz4sXHJcbiAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgIGFjY1tsb2NhbGVdID0ge1xyXG4gICAgICAgICAgICAuLi5sb2NhbGVUcmFuc2xhdGlvbixcclxuICAgICAgICAgICAgLi4ud2l0aE5TLFxyXG4gICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICByZXR1cm4gYWNjO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgeyAuLi5jdXIgfSxcclxuICAgICAgKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkRlbWFuZExvYWRlcnMoXHJcbiAgICBuYW1lc3BhY2U6IHN0cmluZyxcclxuICAgIGxvYWRlcnM6IFJlY29yZDxzdHJpbmcsICgpID0+IFByb21pc2U8YW55Pj4sXHJcbiAgKSB7XHJcbiAgICB0aGlzLm9uRGVtYW5kTG9hZGVycy5zZXQobmFtZXNwYWNlLCBsb2FkZXJzKTtcclxuICB9XHJcblxyXG4gIGhhc0xvY2FsZUxvYWRlcnMobG9jYWxlOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMub25EZW1hbmRMb2FkZXJzLnZhbHVlcygpKS5zb21lKFxyXG4gICAgICAobG9hZGVycykgPT4gbG9hZGVyc1tsb2NhbGVdLFxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RJbnRsKCkge1xyXG4gIHJldHVybiBpbmplY3QoVHJhbnNsYXRpb25TdG9yZSkuaW50bDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEluamVjdCBhIGR5bmFtaWMgbG9jYWxlIHNpZ25hbCB0aGF0IHN1cHBvcnRzIHJ1bnRpbWUgbGFuZ3VhZ2Ugc3dpdGNoaW5nLlxyXG4gKlxyXG4gKiBAcmV0dXJucyBBIHdyaXRhYmxlIHNpZ25hbCB3aXRoIHRoZSBjdXJyZW50IGxvY2FsZSBhbmQgbG9hZGluZyBzdGF0ZS5cclxuICogT25seSBhbGxvd3Mgc3dpdGNoaW5nIHRvIGxvY2FsZXMgdGhhdCBoYXZlIHJlZ2lzdGVyZWQgbG9hZGVycy5cclxuICpcclxuICogQGV4YW1wbGVcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiBjb25zdCBsb2NhbGUgPSBpbmplY3REeW5hbWljTG9jYWxlKCk7XHJcbiAqXHJcbiAqIC8vIFN3aXRjaCBsYW5ndWFnZSAodHJpZ2dlcnMgYXV0b21hdGljIHRyYW5zbGF0aW9uIGxvYWRpbmcpXHJcbiAqIGxvY2FsZS5zZXQoJ3NsLVNJJyk7XHJcbiAqXHJcbiAqIC8vIENoZWNrIGxvYWRpbmcgc3RhdGVcclxuICogaWYgKGxvY2FsZS5pc0xvYWRpbmcoKSkge1xyXG4gKiAgIC8vIFNob3cgc3Bpbm5lclxyXG4gKiB9XHJcbiAqIGBgYFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdER5bmFtaWNMb2NhbGUoKTogV3JpdGFibGVTaWduYWw8c3RyaW5nPiAmIHtcclxuICBpc0xvYWRpbmc6IFNpZ25hbDxib29sZWFuPjtcclxufSB7XHJcbiAgY29uc3QgZGVmYXVsdExvY2FsZSA9IGluamVjdERlZmF1bHRMb2NhbGUoKTtcclxuICBjb25zdCBzdG9yZSA9IGluamVjdChUcmFuc2xhdGlvblN0b3JlKTtcclxuXHJcbiAgY29uc3Qgc291cmNlID0gY29tcHV0ZWQoKCkgPT4gc3RvcmUubG9jYWxlKCkpIGFzIFdyaXRhYmxlU2lnbmFsPHN0cmluZz4gJiB7XHJcbiAgICBpc0xvYWRpbmc6IFNpZ25hbDxib29sZWFuPjtcclxuICB9O1xyXG5cclxuICBjb25zdCBzZXQgPSAodmFsdWU6IHN0cmluZykgPT4ge1xyXG4gICAgY29uc3QgaXNEZWZhdWx0T3JIYXNMb2FkZXJzID1cclxuICAgICAgdmFsdWUgPT09IGRlZmF1bHRMb2NhbGUgfHwgc3RvcmUuaGFzTG9jYWxlTG9hZGVycyh2YWx1ZSk7XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICB2YWx1ZSA9PT0gdW50cmFja2VkKHNvdXJjZSkgfHxcclxuICAgICAgIWlzRGVmYXVsdE9ySGFzTG9hZGVycyB8fFxyXG4gICAgICB1bnRyYWNrZWQoc3RvcmUubG9hZFF1ZXVlKS5pbmNsdWRlcyh2YWx1ZSlcclxuICAgIClcclxuICAgICAgcmV0dXJuO1xyXG4gICAgc3RvcmUubG9hZFF1ZXVlLnVwZGF0ZSgocSkgPT4gWy4uLnEsIHZhbHVlXSk7XHJcbiAgfTtcclxuICBzb3VyY2Uuc2V0ID0gc2V0O1xyXG4gIHNvdXJjZS51cGRhdGUgPSAodXBkYXRlcjogKHZhbHVlOiBzdHJpbmcpID0+IHN0cmluZykgPT4ge1xyXG4gICAgY29uc3QgbmV4dCA9IHVwZGF0ZXIodW50cmFja2VkKHNvdXJjZSkpO1xyXG4gICAgc291cmNlLnNldChuZXh0KTtcclxuICB9O1xyXG4gIHNvdXJjZS5hc1JlYWRvbmx5ID0gKCkgPT4gc291cmNlO1xyXG5cclxuICBzb3VyY2UuaXNMb2FkaW5nID0gc3RvcmUuZHluYW1pY0xvY2FsZUxvYWRlci5pc0xvYWRpbmc7XHJcblxyXG4gIHJldHVybiBzb3VyY2U7XHJcbn1cclxuIl19","import { computed, inject, isDevMode, isSignal, untracked, } from '@angular/core';\nimport { replaceWithDelim } from './delim';\nimport { TranslationStore } from './translation-store';\nfunction createEqualsRecord(keys = []) {\n let keyMatcher;\n if (keys.length === 0) {\n keyMatcher = () => true;\n }\n else if (keys.length === 1) {\n const key = keys[0];\n keyMatcher = (a, b) => a[key] === b[key];\n }\n else {\n keyMatcher = (a, b) => {\n return keys.every((k) => a[k] === b[k]);\n };\n }\n return (a, b) => {\n if (!a && !b)\n return true;\n if (!a || !b)\n return false;\n return keyMatcher(a, b);\n };\n}\nfunction addSignalFn(fn, store) {\n const withSig = fn;\n const asSignal = (key, ...args) => {\n const variables = args[0];\n const stringKey = key;\n const flatPath = replaceWithDelim(stringKey);\n const varsFn = variables ?? (() => undefined);\n const varsSignal = isSignal(varsFn)\n ? varsFn\n : computed(varsFn, {\n equal: createEqualsRecord(Object.keys(varsFn() ?? {})),\n });\n return computed(() => store.formatMessage(flatPath, varsSignal()));\n };\n withSig.asSignal = asSignal;\n return withSig;\n}\nexport function createT(store) {\n return (key, ...args) => {\n const variables = args[0];\n const stringKey = key;\n return store.formatMessage(replaceWithDelim(stringKey), variables);\n };\n}\nexport function registerNamespace(defaultTranslation, other) {\n const injectT = () => {\n const store = inject(TranslationStore);\n return addSignalFn(createT(store), store);\n };\n let defaultTranslationLoaded = false;\n const resolver = async () => {\n const store = inject(TranslationStore);\n const locale = untracked(store.locale);\n const tPromise = other[locale];\n const promise = tPromise ?? defaultTranslation;\n if (!promise && isDevMode()) {\n return console.warn(`No translation found for locale: ${locale}`);\n }\n if (promise === defaultTranslation && defaultTranslationLoaded)\n return;\n try {\n const translation = await promise();\n if (promise !== defaultTranslation &&\n translation.locale !== locale &&\n isDevMode()) {\n return console.warn(`Expected locale to be ${locale} but got ${translation.locale}`);\n }\n store.registerOnDemandLoaders(translation.namespace, other);\n store.register(translation.namespace, {\n [locale]: translation.flat,\n });\n if (promise === defaultTranslation) {\n defaultTranslationLoaded = true;\n }\n }\n catch {\n if (isDevMode()) {\n console.warn(`Failed to load translation for locale: ${locale}`);\n }\n }\n };\n return {\n injectNamespaceT: injectT,\n resolveNamespaceTranslation: resolver,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXItbmFtZXNwYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdHJhbnNsYXRlL3NyYy9saWIvcmVnaXN0ZXItbmFtZXNwYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxRQUFRLEVBRVIsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBTXZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUt2RCxTQUFTLGtCQUFrQixDQUE0QixPQUFvQixFQUFFO0lBQzNFLElBQUksVUFBbUMsQ0FBQztJQUV4QyxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDdEIsVUFBVSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQztJQUMxQixDQUFDO1NBQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzdCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwQixVQUFVLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNDLENBQUM7U0FBTSxDQUFDO1FBQ04sVUFBVSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3BCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFDLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRCxPQUFPLENBQUMsQ0FBSyxFQUFFLENBQUssRUFBVyxFQUFFO1FBQy9CLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDMUIsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUMzQixPQUFPLFVBQVUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDMUIsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQXVCRCxTQUFTLFdBQVcsQ0FDbEIsRUFBTyxFQUNQLEtBQXVCO0lBRXZCLE1BQU0sT0FBTyxHQUFHLEVBQStDLENBQUM7SUFFaEUsTUFBTSxRQUFRLEdBQUcsQ0FDZixHQUFTLEVBQ1QsR0FBRyxJQUF1RCxFQUMxQyxFQUFFO1FBQ2xCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQXNDLENBQUM7UUFDL0QsTUFBTSxTQUFTLEdBQUcsR0FBYSxDQUFDO1FBRWhDLE1BQU0sUUFBUSxHQUFHLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTdDLE1BQU0sTUFBTSxHQUFHLFNBQVMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlDLE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDakMsQ0FBQyxDQUFDLE1BQU07WUFDUixDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRTtnQkFDZixLQUFLLEVBQUUsa0JBQWtCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQzthQUN2RCxDQUFDLENBQUM7UUFFUCxPQUFPLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDckUsQ0FBQyxDQUFDO0lBRUYsT0FBTyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFFNUIsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQztBQUVELE1BQU0sVUFBVSxPQUFPLENBQ3JCLEtBQXVCO0lBRXZCLE9BQU8sQ0FDTCxHQUFTLEVBQ1QsR0FBRyxJQUFpRCxFQUM1QyxFQUFFO1FBQ1YsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBZ0MsQ0FBQztRQUN6RCxNQUFNLFNBQVMsR0FBRyxHQUFhLENBQUM7UUFFaEMsT0FBTyxLQUFLLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3JFLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBRy9CLGtCQUEyQyxFQUMzQyxLQVNDO0lBTUQsTUFBTSxPQUFPLEdBQUcsR0FBUyxFQUFFO1FBQ3pCLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRXZDLE9BQU8sV0FBVyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM1QyxDQUFDLENBQUM7SUFFRixJQUFJLHdCQUF3QixHQUFHLEtBQUssQ0FBQztJQUNyQyxNQUFNLFFBQVEsR0FBRyxLQUFLLElBQUksRUFBRTtRQUMxQixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN2QyxNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQXVDLENBQUM7UUFFckUsTUFBTSxPQUFPLEdBQUcsUUFBUSxJQUFJLGtCQUFrQixDQUFDO1FBQy9DLElBQUksQ0FBQyxPQUFPLElBQUksU0FBUyxFQUFFLEVBQUUsQ0FBQztZQUM1QixPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0NBQW9DLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDcEUsQ0FBQztRQUVELElBQUksT0FBTyxLQUFLLGtCQUFrQixJQUFJLHdCQUF3QjtZQUFFLE9BQU87UUFFdkUsSUFBSSxDQUFDO1lBQ0gsTUFBTSxXQUFXLEdBQUcsTUFBTSxPQUFPLEVBQUUsQ0FBQztZQUVwQyxJQUNFLE9BQU8sS0FBSyxrQkFBa0I7Z0JBQzlCLFdBQVcsQ0FBQyxNQUFNLEtBQUssTUFBTTtnQkFDN0IsU0FBUyxFQUFFLEVBQ1gsQ0FBQztnQkFDRCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQ2pCLHlCQUF5QixNQUFNLFlBQVksV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUNoRSxDQUFDO1lBQ0osQ0FBQztZQUVELEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBRTVELEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRTtnQkFDcEMsQ0FBQyxNQUFNLENBQUMsRUFBRSxXQUFXLENBQUMsSUFBSTthQUMzQixDQUFDLENBQUM7WUFDSCxJQUFJLE9BQU8sS0FBSyxrQkFBa0IsRUFBRSxDQUFDO2dCQUNuQyx3QkFBd0IsR0FBRyxJQUFJLENBQUM7WUFDbEMsQ0FBQztRQUNILENBQUM7UUFBQyxNQUFNLENBQUM7WUFDUCxJQUFJLFNBQVMsRUFBRSxFQUFFLENBQUM7Z0JBQ2hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsMENBQTBDLE1BQU0sRUFBRSxDQUFDLENBQUM7WUFDbkUsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDLENBQUM7SUFFRixPQUFPO1FBQ0wsZ0JBQWdCLEVBQUUsT0FBTztRQUN6QiwyQkFBMkIsRUFBRSxRQUFRO0tBQ3RDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBjb21wdXRlZCxcclxuICBpbmplY3QsXHJcbiAgaXNEZXZNb2RlLFxyXG4gIGlzU2lnbmFsLFxyXG4gIFNpZ25hbCxcclxuICB1bnRyYWNrZWQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgQ29tcGlsZWRUcmFuc2xhdGlvbixcclxuICBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25NYXAsXHJcbiAgaW5mZXJDb21waWxlZFRyYW5zbGF0aW9uTmFtZXNwYWNlLFxyXG59IGZyb20gJy4vY29tcGlsZSc7XHJcbmltcG9ydCB7IHJlcGxhY2VXaXRoRGVsaW0gfSBmcm9tICcuL2RlbGltJztcclxuaW1wb3J0IHsgVW5rbm93blN0cmluZ0tleU9iamVjdCB9IGZyb20gJy4vc3RyaW5nLWtleS1vYmplY3QudHlwZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0aW9uU3RvcmUgfSBmcm9tICcuL3RyYW5zbGF0aW9uLXN0b3JlJztcclxuXHJcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbnR5cGUgQW55U3RyaW5nUmVjb3JkID0gUmVjb3JkPHN0cmluZywgYW55PjtcclxuXHJcbmZ1bmN0aW9uIGNyZWF0ZUVxdWFsc1JlY29yZDxUIGV4dGVuZHMgQW55U3RyaW5nUmVjb3JkPihrZXlzOiAoa2V5b2YgVClbXSA9IFtdKSB7XHJcbiAgbGV0IGtleU1hdGNoZXI6IChhOiBULCBiOiBUKSA9PiBib29sZWFuO1xyXG5cclxuICBpZiAoa2V5cy5sZW5ndGggPT09IDApIHtcclxuICAgIGtleU1hdGNoZXIgPSAoKSA9PiB0cnVlO1xyXG4gIH0gZWxzZSBpZiAoa2V5cy5sZW5ndGggPT09IDEpIHtcclxuICAgIGNvbnN0IGtleSA9IGtleXNbMF07XHJcbiAgICBrZXlNYXRjaGVyID0gKGEsIGIpID0+IGFba2V5XSA9PT0gYltrZXldO1xyXG4gIH0gZWxzZSB7XHJcbiAgICBrZXlNYXRjaGVyID0gKGEsIGIpID0+IHtcclxuICAgICAgcmV0dXJuIGtleXMuZXZlcnkoKGspID0+IGFba10gPT09IGJba10pO1xyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHJldHVybiAoYT86IFQsIGI/OiBUKTogYm9vbGVhbiA9PiB7XHJcbiAgICBpZiAoIWEgJiYgIWIpIHJldHVybiB0cnVlO1xyXG4gICAgaWYgKCFhIHx8ICFiKSByZXR1cm4gZmFsc2U7XHJcbiAgICByZXR1cm4ga2V5TWF0Y2hlcihhLCBiKTtcclxuICB9O1xyXG59XHJcblxyXG50eXBlIFRGdW5jdGlvbjxUTWFwIGV4dGVuZHMgQW55U3RyaW5nUmVjb3JkPiA9IDxcclxuICBUS2V5IGV4dGVuZHMga2V5b2YgVE1hcCAmIHN0cmluZyxcclxuPihcclxuICBrZXk6IFRLZXksXHJcbiAgLi4uYXJnczogVE1hcFtUS2V5XSBleHRlbmRzIHZvaWQgPyBbXSA6IFtUTWFwW1RLZXldXVxyXG4pID0+IHN0cmluZztcclxuXHJcbnR5cGUgU2lnbmFsVEZ1bmN0aW9uPFRNYXAgZXh0ZW5kcyBBbnlTdHJpbmdSZWNvcmQ+ID0gPFxyXG4gIFRLZXkgZXh0ZW5kcyBrZXlvZiBUTWFwICYgc3RyaW5nLFxyXG4+KFxyXG4gIGtleTogVEtleSxcclxuICAuLi5hcmdzOiBUTWFwW1RLZXldIGV4dGVuZHMgdm9pZCA/IFtdIDogWygpID0+IFRNYXBbVEtleV1dXHJcbikgPT4gU2lnbmFsPHN0cmluZz47XHJcblxyXG50eXBlIFRGdW5jdGlvbldpdGhTaWduYWxDb25zdHJ1Y3RvcjxcclxuICBUTWFwIGV4dGVuZHMgQW55U3RyaW5nUmVjb3JkLFxyXG4gIFRGTiBleHRlbmRzIFRGdW5jdGlvbjxUTWFwPixcclxuPiA9IFRGTiAmIHtcclxuICBhc1NpZ25hbDogU2lnbmFsVEZ1bmN0aW9uPFRNYXA+O1xyXG59O1xyXG5cclxuZnVuY3Rpb24gYWRkU2lnbmFsRm48VE1hcCBleHRlbmRzIEFueVN0cmluZ1JlY29yZCwgVEZuIGV4dGVuZHMgVEZ1bmN0aW9uPFRNYXA+PihcclxuICBmbjogVEZuLFxyXG4gIHN0b3JlOiBUcmFuc2xhdGlvblN0b3JlLFxyXG4pOiBURnVuY3Rpb25XaXRoU2lnbmFsQ29uc3RydWN0b3I8VE1hcCwgVEZuPiB7XHJcbiAgY29uc3Qgd2l0aFNpZyA9IGZuIGFzIFRGdW5jdGlvbldpdGhTaWduYWxDb25zdHJ1Y3RvcjxUTWFwLCBURm4+O1xyXG5cclxuICBjb25zdCBhc1NpZ25hbCA9IDxUS2V5IGV4dGVuZHMga2V5b2YgVE1hcCAmIHN0cmluZz4oXHJcbiAgICBrZXk6IFRLZXksXHJcbiAgICAuLi5hcmdzOiBUTWFwW1RLZXldIGV4dGVuZHMgdm9pZCA/IFtdIDogWygpID0+IFRNYXBbVEtleV1dXHJcbiAgKTogU2lnbmFsPHN0cmluZz4gPT4ge1xyXG4gICAgY29uc3QgdmFyaWFibGVzID0gYXJnc1swXSBhcyAoKSA9PiBBbnlTdHJpbmdSZWNvcmQgfCB1bmRlZmluZWQ7XHJcbiAgICBjb25zdCBzdHJpbmdLZXkgPSBrZXkgYXMgc3RyaW5nO1xyXG5cclxuICAgIGNvbnN0IGZsYXRQYXRoID0gcmVwbGFjZVdpdGhEZWxpbShzdHJpbmdLZXkpO1xyXG5cclxuICAgIGNvbnN0IHZhcnNGbiA9IHZhcmlhYmxlcyA/PyAoKCkgPT4gdW5kZWZpbmVkKTtcclxuICAgIGNvbnN0IHZhcnNTaWduYWwgPSBpc1NpZ25hbCh2YXJzRm4pXHJcbiAgICAgID8gdmFyc0ZuXHJcbiAgICAgIDogY29tcHV0ZWQodmFyc0ZuLCB7XHJcbiAgICAgICAgICBlcXVhbDogY3JlYXRlRXF1YWxzUmVjb3JkKE9iamVjdC5rZXlzKHZhcnNGbigpID8/IHt9KSksXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIGNvbXB1dGVkKCgpID0+IHN0b3JlLmZvcm1hdE1lc3NhZ2UoZmxhdFBhdGgsIHZhcnNTaWduYWwoKSkpO1xyXG4gIH07XHJcblxyXG4gIHdpdGhTaWcuYXNTaWduYWwgPSBhc1NpZ25hbDtcclxuXHJcbiAgcmV0dXJuIHdpdGhTaWc7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVUPFRNYXAgZXh0ZW5kcyBBbnlTdHJpbmdSZWNvcmQ+KFxyXG4gIHN0b3JlOiBUcmFuc2xhdGlvblN0b3JlLFxyXG4pOiBURnVuY3Rpb248VE1hcD4ge1xyXG4gIHJldHVybiA8VEtleSBleHRlbmRzIGtleW9mIFRNYXAgJiBzdHJpbmc+KFxyXG4gICAga2V5OiBUS2V5LFxyXG4gICAgLi4uYXJnczogVE1hcFtUS2V5XSBleHRlbmRzIHZvaWQgPyBbXSA6IFtUTWFwW1RLZXldXVxyXG4gICk6IHN0cmluZyA9PiB7XHJcbiAgICBjb25zdCB2YXJpYWJsZXMgPSBhcmdzWzBdIGFzIEFueVN0cmluZ1JlY29yZCB8IHVuZGVmaW5lZDtcclxuICAgIGNvbnN0IHN0cmluZ0tleSA9IGtleSBhcyBzdHJpbmc7XHJcblxyXG4gICAgcmV0dXJuIHN0b3JlLmZvcm1hdE1lc3NhZ2UocmVwbGFjZVdpdGhEZWxpbShzdHJpbmdLZXkpLCB2YXJpYWJsZXMpO1xyXG4gIH07XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZWdpc3Rlck5hbWVzcGFjZTxcclxuICBURGVmYXVsdCBleHRlbmRzIENvbXBpbGVkVHJhbnNsYXRpb248VW5rbm93blN0cmluZ0tleU9iamVjdCwgc3RyaW5nPixcclxuPihcclxuICBkZWZhdWx0VHJhbnNsYXRpb246ICgpID0+IFByb21pc2U8VERlZmF1bHQ+LFxyXG4gIG90aGVyOiBSZWNvcmQ8XHJcbiAgICBzdHJpbmcsXHJcbiAgICAoKSA9PiBQcm9taXNlPFxyXG4gICAgICBDb21waWxlZFRyYW5zbGF0aW9uPFxyXG4gICAgICAgIFVua25vd25TdHJpbmdLZXlPYmplY3QsXHJcbiAgICAgICAgaW5mZXJDb21waWxlZFRyYW5zbGF0aW9uTmFtZXNwYWNlPFREZWZhdWx0PixcclxuICAgICAgICBzdHJpbmdcclxuICAgICAgPlxyXG4gICAgPlxyXG4gID4sXHJcbikge1xyXG4gIHR5cGUgJE1hcCA9IGluZmVyQ29tcGlsZWRUcmFuc2xhdGlvbk1hcDxURGVmYXVsdD47XHJcbiAgdHlwZSAkQmFzZVRGTiA9IFRGdW5jdGlvbjwkTWFwPjtcclxuICB0eXBlICRURk4gPSBURnVuY3Rpb25XaXRoU2lnbmFsQ29uc3RydWN0b3I8JE1hcCwgJEJhc2VURk4+O1xyXG5cclxuICBjb25zdCBpbmplY3RUID0gKCk6ICRURk4gPT4ge1xyXG4gICAgY29uc3Qgc3RvcmUgPSBpbmplY3QoVHJhbnNsYXRpb25TdG9yZSk7XHJcblxyXG4gICAgcmV0dXJuIGFkZFNpZ25hbEZuKGNyZWF0ZVQoc3RvcmUpLCBzdG9yZSk7XHJcbiAgfTtcclxuXHJcbiAgbGV0IGRlZmF1bHRUcmFuc2xhdGlvbkxvYWRlZCA9IGZhbHNlO1xyXG4gIGNvbnN0IHJlc29sdmVyID0gYXN5bmMgKCkgPT4ge1xyXG4gICAgY29uc3Qgc3RvcmUgPSBpbmplY3QoVHJhbnNsYXRpb25TdG9yZSk7XHJcbiAgICBjb25zdCBsb2NhbGUgPSB1bnRyYWNrZWQoc3RvcmUubG9jYWxlKTtcclxuICAgIGNvbnN0IHRQcm9taXNlID0gb3RoZXJbbG9jYWxlXSBhcyAodHlwZW9mIG90aGVyKVtzdHJpbmddIHwgdW5kZWZpbmVkO1xyXG5cclxuICAgIGNvbnN0IHByb21pc2UgPSB0UHJvbWlzZSA/PyBkZWZhdWx0VHJhbnNsYXRpb247XHJcbiAgICBpZiAoIXByb21pc2UgJiYgaXNEZXZNb2RlKCkpIHtcclxuICAgICAgcmV0dXJuIGNvbnNvbGUud2FybihgTm8gdHJhbnNsYXRpb24gZm91bmQgZm9yIGxvY2FsZTogJHtsb2NhbGV9YCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHByb21pc2UgPT09IGRlZmF1bHRUcmFuc2xhdGlvbiAmJiBkZWZhdWx0VHJhbnNsYXRpb25Mb2FkZWQpIHJldHVybjtcclxuXHJcbiAgICB0cnkge1xyXG4gICAgICBjb25zdCB0cmFuc2xhdGlvbiA9IGF3YWl0IHByb21pc2UoKTtcclxuXHJcbiAgICAgIGlmIChcclxuICAgICAgICBwcm9taXNlICE9PSBkZWZhdWx0VHJhbnNsYXRpb24gJiZcclxuICAgICAgICB0cmFuc2xhdGlvbi5sb2NhbGUgIT09IGxvY2FsZSAmJlxyXG4gICAgICAgIGlzRGV2TW9kZSgpXHJcbiAgICAgICkge1xyXG4gICAgICAgIHJldHVybiBjb25zb2xlLndhcm4oXHJcbiAgICAgICAgICBgRXhwZWN0ZWQgbG9jYWxlIHRvIGJlICR7bG9jYWxlfSBidXQgZ290ICR7dHJhbnNsYXRpb24ubG9jYWxlfWAsXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgc3RvcmUucmVnaXN0ZXJPbkRlbWFuZExvYWRlcnModHJhbnNsYXRpb24ubmFtZXNwYWNlLCBvdGhlcik7XHJcblxyXG4gICAgICBzdG9yZS5yZWdpc3Rlcih0cmFuc2xhdGlvbi5uYW1lc3BhY2UsIHtcclxuICAgICAgICBbbG9jYWxlXTogdHJhbnNsYXRpb24uZmxhdCxcclxuICAgICAgfSk7XHJcbiAgICAgIGlmIChwcm9taXNlID09PSBkZWZhdWx0VHJhbnNsYXRpb24pIHtcclxuICAgICAgICBkZWZhdWx0VHJhbnNsYXRpb25Mb2FkZWQgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoIHtcclxuICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgY29uc29sZS53YXJuKGBGYWlsZWQgdG8gbG9hZCB0cmFuc2xhdGlvbiBmb3IgbG9jYWxlOiAke2xvY2FsZX1gKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIHJldHVybiB7XHJcbiAgICBpbmplY3ROYW1lc3BhY2VUOiBpbmplY3RULFxyXG4gICAgcmVzb2x2ZU5hbWVzcGFjZVRyYW5zbGF0aW9uOiByZXNvbHZlcixcclxuICB9O1xyXG59XHJcbiJdfQ==","import { afterRenderEffect, computed, Directive, ElementRef, inject, input, Renderer2, } from '@angular/core';\nimport { createT } from './register-namespace';\nimport { TranslationStore } from './translation-store';\nimport * as i0 from \"@angular/core\";\nexport class Translate {\n t = createT(inject(TranslationStore));\n translate = input.required(...(ngDevMode ? [{ debugName: \"translate\" }] : []));\n constructor() {\n const key = computed(() => {\n const vars = this.translate();\n return (Array.isArray(vars) ? vars[0] : vars);\n }, ...(ngDevMode ? [{ debugName: \"key\" }] : []));\n const args = computed(() => {\n const vars = this.translate();\n return (Array.isArray(vars) ? vars[1] : undefined);\n }, ...(ngDevMode ? [{ debugName: \"args\", equal: (a, b) => {\n if (a === undefined && b === undefined)\n return true;\n if (a === undefined || b === undefined)\n return false;\n const aObj = a;\n const keys = Object.keys(aObj);\n const bObj = b;\n if (!keys.length)\n return !Object.keys(bObj).length;\n return keys.every((key) => aObj[key] === bObj[key]);\n } }] : [{\n equal: (a, b) => {\n if (a === undefined && b === undefined)\n return true;\n if (a === undefined || b === undefined)\n return false;\n const aObj = a;\n const keys = Object.keys(aObj);\n const bObj = b;\n if (!keys.length)\n return !Object.keys(bObj).length;\n return keys.every((key) => aObj[key] === bObj[key]);\n },\n }]));\n const translation = computed(() => this.t(key(), args()), ...(ngDevMode ? [{ debugName: \"translation\" }] : []));\n const renderer = inject(Renderer2);\n const el = inject(ElementRef);\n afterRenderEffect({\n write: () => {\n renderer.setProperty(el.nativeElement, 'textContent', translation());\n },\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: Translate, deps: [], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.3.1\", type: Translate, isStandalone: true, inputs: { translate: { classPropertyName: \"translate\", publicName: \"translate\", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: Translate, decorators: [{\n type: Directive\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdHJhbnNsYXRlL3NyYy9saWIvdHJhbnNsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsUUFBUSxFQUNSLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUd2RCxNQUFNLE9BQWdCLFNBQVM7SUFNWixDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7SUFFOUMsU0FBUyxHQUNoQixLQUFLLENBQUMsUUFBUSxvREFJWCxDQUFDO0lBRU47UUFDRSxNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3hCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM5QixPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQVMsQ0FBQztRQUN4RCxDQUFDLCtDQUFDLENBQUM7UUFFSCxNQUFNLElBQUksR0FBRyxRQUFRLENBQ25CLEdBQUcsRUFBRTtZQUNILE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM5QixPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQWUsQ0FBQztRQUNuRSxDQUFDLHdDQUVDLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtvQkFDZCxJQUFJLENBQUMsS0FBSyxTQUFTLElBQUksQ0FBQyxLQUFLLFNBQVM7d0JBQUUsT0FBTyxJQUFJLENBQUM7b0JBQ3BELElBQUksQ0FBQyxLQUFLLFNBQVMsSUFBSSxDQUFDLEtBQUssU0FBUzt3QkFBRSxPQUFPLEtBQUssQ0FBQztvQkFFckQsTUFBTSxJQUFJLEdBQUcsQ0FBMkIsQ0FBQztvQkFDekMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDL0IsTUFBTSxJQUFJLEdBQUcsQ0FBMkIsQ0FBQztvQkFFekMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNO3dCQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQztvQkFFbkQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELENBQUMsT0FaSDtnQkFDRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7b0JBQ2QsSUFBSSxDQUFDLEtBQUssU0FBUyxJQUFJLENBQUMsS0FBSyxTQUFTO3dCQUFFLE9BQU8sSUFBSSxDQUFDO29CQUNwRCxJQUFJLENBQUMsS0FBSyxTQUFTLElBQUksQ0FBQyxLQUFLLFNBQVM7d0JBQUUsT0FBTyxLQUFLLENBQUM7b0JBRXJELE1BQU0sSUFBSSxHQUFHLENBQTJCLENBQUM7b0JBQ3pDLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQy9CLE1BQU0sSUFBSSxHQUFHLENBQTJCLENBQUM7b0JBRXpDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTTt3QkFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUM7b0JBRW5ELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUN0RCxDQUFDO2FBQ0YsR0FDRixDQUFDO1FBRUYsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsdURBQUMsQ0FBQztRQUUxRCxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkMsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUEwQixVQUFVLENBQUMsQ0FBQztRQUV2RCxpQkFBaUIsQ0FBQztZQUNoQixLQUFLLEVBQUUsR0FBRyxFQUFFO2dCQUNWLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUN2RSxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0FwRG1CLFNBQVM7MkZBQVQsU0FBUzs7MkZBQVQsU0FBUztrQkFEOUIsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgYWZ0ZXJSZW5kZXJFZmZlY3QsXHJcbiAgY29tcHV0ZWQsXHJcbiAgRGlyZWN0aXZlLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgaW5qZWN0LFxyXG4gIGlucHV0LFxyXG4gIFJlbmRlcmVyMixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tcGlsZWRUcmFuc2xhdGlvbiwgaW5mZXJDb21waWxlZFRyYW5zbGF0aW9uTWFwIH0gZnJvbSAnLi9jb21waWxlJztcclxuaW1wb3J0IHsgY3JlYXRlVCB9IGZyb20gJy4vcmVnaXN0ZXItbmFtZXNwYWNlJztcclxuaW1wb3J0IHsgVW5rbm93blN0cmluZ0tleU9iamVjdCB9IGZyb20gJy4vc3RyaW5nLWtleS1vYmplY3QudHlwZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0aW9uU3RvcmUgfSBmcm9tICcuL3RyYW5zbGF0aW9uLXN0b3JlJztcclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHJhbnNsYXRlPFxyXG4gIFRJbnB1dCBleHRlbmRzIHN0cmluZyxcclxuICBUIGV4dGVuZHMgQ29tcGlsZWRUcmFuc2xhdGlvbjxVbmtub3duU3RyaW5nS2V5T2JqZWN0LCBzdHJpbmc+LFxyXG4gIFRNYXAgZXh0ZW5kcyBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25NYXA8VD4gPSBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25NYXA8VD4sXHJcbiAgVEtleSBleHRlbmRzIFRJbnB1dCAmIGtleW9mIFRNYXAgJiBzdHJpbmcgPSBUSW5wdXQgJiBrZXlvZiBUTWFwICYgc3RyaW5nLFxyXG4+IHtcclxuICBwcml2YXRlIHJlYWRvbmx5IHQgPSBjcmVhdGVUKGluamVjdChUcmFuc2xhdGlvblN0b3JlKSk7XHJcblxyXG4gIHJlYWRvbmx5IHRyYW5zbGF0ZSA9XHJcbiAgICBpbnB1dC5yZXF1aXJlZDxcclxuICAgICAgVE1hcFtUS2V5XSBleHRlbmRzIHZvaWRcclxuICAgICAgICA/IFRLZXkgfCBba2V5OiBUS2V5XVxyXG4gICAgICAgIDogW2tleTogVEtleSwgdmFyczogVE1hcFtUS2V5XV1cclxuICAgID4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBjb25zdCBrZXkgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICAgIGNvbnN0IHZhcnMgPSB0aGlzLnRyYW5zbGF0ZSgpO1xyXG4gICAgICByZXR1cm4gKEFycmF5LmlzQXJyYXkodmFycykgPyB2YXJzWzBdIDogdmFycykgYXMgVEtleTtcclxuICAgIH0pO1xyXG5cclxuICAgIGNvbnN0IGFyZ3MgPSBjb21wdXRlZChcclxuICAgICAgKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHZhcnMgPSB0aGlzLnRyYW5zbGF0ZSgpO1xyXG4gICAgICAgIHJldHVybiAoQXJyYXkuaXNBcnJheSh2YXJzKSA/IHZhcnNbMV0gOiB1bmRlZmluZWQpIGFzIFRNYXBbVEtleV07XHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBlcXVhbDogKGEsIGIpID0+IHtcclxuICAgICAgICAgIGlmIChhID09PSB1bmRlZmluZWQgJiYgYiA9PT0gdW5kZWZpbmVkKSByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgIGlmIChhID09PSB1bmRlZmluZWQgfHwgYiA9PT0gdW5kZWZpbmVkKSByZXR1cm4gZmFsc2U7XHJcblxyXG4gICAgICAgICAgY29uc3QgYU9iaiA9IGEgYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcclxuICAgICAgICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhhT2JqKTtcclxuICAgICAgICAgIGNvbnN0IGJPYmogPSBiIGFzIFJlY29yZDxzdHJpbmcsIHN0cmluZz47XHJcblxyXG4gICAgICAgICAgaWYgKCFrZXlzLmxlbmd0aCkgcmV0dXJuICFPYmplY3Qua2V5cyhiT2JqKS5sZW5ndGg7XHJcblxyXG4gICAgICAgICAgcmV0dXJuIGtleXMuZXZlcnkoKGtleSkgPT4gYU9ialtrZXldID09PSBiT2JqW2tleV0pO1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICApO1xyXG5cclxuICAgIGNvbnN0IHRyYW5zbGF0aW9uID0gY29tcHV0ZWQoKCkgPT4gdGhpcy50KGtleSgpLCBhcmdzKCkpKTtcclxuXHJcbiAgICBjb25zdCByZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xyXG4gICAgY29uc3QgZWwgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xyXG5cclxuICAgIGFmdGVyUmVuZGVyRWZmZWN0KHtcclxuICAgICAgd3JpdGU6ICgpID0+IHtcclxuICAgICAgICByZW5kZXJlci5zZXRQcm9wZXJ0eShlbC5uYXRpdmVFbGVtZW50LCAndGV4dENvbnRlbnQnLCB0cmFuc2xhdGlvbigpKTtcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=","import { ChangeDetectorRef, effect, inject } from '@angular/core';\nimport { createT } from './register-namespace';\nimport { TranslationStore } from './translation-store';\nexport class Translator {\n store = inject(TranslationStore);\n t = createT(this.store);\n constructor() {\n const cdr = inject(ChangeDetectorRef);\n effect(() => {\n this.store.locale();\n cdr.markForCheck();\n });\n }\n transform(key, ...args) {\n const actualArgs = args.filter((a) => typeof a === 'object');\n return this.t(key, ...actualArgs);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RyYW5zbGF0ZS9zcmMvbGliL3RyYW5zbGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXZELE1BQU0sT0FBZ0IsVUFBVTtJQUliLEtBQUssR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNqQyxDQUFDLEdBQUcsT0FBTyxDQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUUvQztRQUNFLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRXRDLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3BCLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxTQUFTLENBQ1AsR0FBTSxFQUNOLEdBQUcsSUFFMkI7UUFFOUIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FDNUIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FDWSxDQUFDO1FBRTNDLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxVQUFVLENBQUMsQ0FBQztJQUNwQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgZWZmZWN0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tcGlsZWRUcmFuc2xhdGlvbiwgaW5mZXJDb21waWxlZFRyYW5zbGF0aW9uTWFwIH0gZnJvbSAnLi9jb21waWxlJztcclxuaW1wb3J0IHsgY3JlYXRlVCB9IGZyb20gJy4vcmVnaXN0ZXItbmFtZXNwYWNlJztcclxuaW1wb3J0IHsgVW5rbm93blN0cmluZ0tleU9iamVjdCB9IGZyb20gJy4vc3RyaW5nLWtleS1vYmplY3QudHlwZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0aW9uU3RvcmUgfSBmcm9tICcuL3RyYW5zbGF0aW9uLXN0b3JlJztcclxuXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUcmFuc2xhdG9yPFxyXG4gIFQgZXh0ZW5kcyBDb21waWxlZFRyYW5zbGF0aW9uPFVua25vd25TdHJpbmdLZXlPYmplY3QsIHN0cmluZz4sXHJcbiAgVE1hcCBleHRlbmRzIGluZmVyQ29tcGlsZWRUcmFuc2xhdGlvbk1hcDxUPiA9IGluZmVyQ29tcGlsZWRUcmFuc2xhdGlvbk1hcDxUPixcclxuPiB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBzdG9yZSA9IGluamVjdChUcmFuc2xhdGlvblN0b3JlKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IHQgPSBjcmVhdGVUPFRNYXA+KHRoaXMuc3RvcmUpO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIGNvbnN0IGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XHJcblxyXG4gICAgZWZmZWN0KCgpID0+IHtcclxuICAgICAgdGhpcy5zdG9yZS5sb2NhbGUoKTtcclxuICAgICAgY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICB0cmFuc2Zvcm08SyBleHRlbmRzIGtleW9mIFRNYXAgJiBzdHJpbmc+KFxyXG4gICAga2V5OiBLLFxyXG4gICAgLi4uYXJnczogVE1hcFtLXSBleHRlbmRzIHZvaWRcclxuICAgICAgPyBbbG9jYWxlPzogc3RyaW5nXVxyXG4gICAgICA6IFtUTWFwW0tdLCBsb2NhbGU/OiBzdHJpbmddXHJcbiAgKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGFjdHVhbEFyZ3MgPSBhcmdzLmZpbHRlcihcclxuICAgICAgKGEpID0+IHR5cGVvZiBhID09PSAnb2JqZWN0JyxcclxuICAgICkgYXMgVE1hcFtLXSBleHRlbmRzIHZvaWQgPyBbXSA6IFtUTWFwW0tdXTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy50KGtleSwgLi4uYWN0dWFsQXJncyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW1zdGFjay10cmFuc2xhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy90cmFuc2xhdGUvc3JjL21tc3RhY2stdHJhbnNsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mmstack-translate.mjs","sources":["../tmp-esm2022/lib/delim.js","../tmp-esm2022/lib/compile.js","../tmp-esm2022/lib/create-namespace.js","../tmp-esm2022/lib/translation-store.js","../tmp-esm2022/lib/register-namespace.js","../tmp-esm2022/lib/translate.js","../tmp-esm2022/lib/translator.js","../tmp-esm2022/mmstack-translate.js"],"sourcesContent":["const KEY_DELIM = '::MMT_DELIM::';\nexport function prependDelim(prefix, key) {\n return `${prefix}${KEY_DELIM}${key}`;\n}\nexport function replaceWithDelim(str, repl = '.') {\n return str.replaceAll(repl, KEY_DELIM);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90cmFuc2xhdGUvc3JjL2xpYi9kZWxpbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFNBQVMsR0FBRyxlQUFlLENBQUM7QUFFbEMsTUFBTSxVQUFVLFlBQVksQ0FBQyxNQUFjLEVBQUUsR0FBVztJQUN0RCxPQUFPLEdBQUcsTUFBTSxHQUFHLFNBQVMsR0FBRyxHQUFHLEVBQUUsQ0FBQztBQUN2QyxDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEdBQVcsRUFBRSxJQUFJLEdBQUcsR0FBRztJQUN0RCxPQUFPLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ3pDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBLRVlfREVMSU0gPSAnOjpNTVRfREVMSU06Oic7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJlcGVuZERlbGltKHByZWZpeDogc3RyaW5nLCBrZXk6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIGAke3ByZWZpeH0ke0tFWV9ERUxJTX0ke2tleX1gO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVwbGFjZVdpdGhEZWxpbShzdHI6IHN0cmluZywgcmVwbCA9ICcuJyk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIHN0ci5yZXBsYWNlQWxsKHJlcGwsIEtFWV9ERUxJTSk7XHJcbn1cclxuIl19","import { prependDelim } from './delim';\nconst INTERNAL_SYMBOL = Symbol.for('mmstack-translate-internal');\nfunction isTranslationObject(t) {\n return typeof t === 'object' && t !== null;\n}\nfunction flattenTranslation(obj) {\n return Object.entries(obj).reduce((acc, [key, value]) => {\n if (typeof value === 'string') {\n acc[key] = value;\n }\n else if (isTranslationObject(value)) {\n Object.entries(flattenTranslation(value)).forEach(([nestedKey, nestedValue]) => {\n acc[prependDelim(key, nestedKey)] = nestedValue;\n });\n }\n return acc;\n }, {});\n}\nexport function compileTranslation(translation, ns, locale) {\n return {\n locale,\n flat: flattenTranslation(translation),\n namespace: ns,\n [INTERNAL_SYMBOL]: {\n shape: {},\n map: {},\n },\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RyYW5zbGF0ZS9zcmMvbGliL2NvbXBpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFNBQVMsQ0FBQztBQU92QyxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDRCQUE0QixDQUFDLENBQUM7QUF5Q2pFLFNBQVMsbUJBQW1CLENBQUMsQ0FBVTtJQUNyQyxPQUFPLE9BQU8sQ0FBQyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDO0FBQzdDLENBQUM7QUFFRCxTQUFTLGtCQUFrQixDQUFtQyxHQUFNO0lBQ2xFLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQy9CLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUU7UUFDcEIsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM5QixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ25CLENBQUM7YUFBTSxJQUFJLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FDL0MsQ0FBQyxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsRUFBRSxFQUFFO2dCQUMzQixHQUFHLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQyxHQUFHLFdBQVcsQ0FBQztZQUNsRCxDQUFDLENBQ0YsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsRUFDRCxFQUE0QixDQUM3QixDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxrQkFBa0IsQ0FLaEMsV0FBYyxFQUNkLEVBQU8sRUFDUCxNQUFnQjtJQUtoQixPQUFPO1FBQ0wsTUFBTTtRQUNOLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxXQUFXLENBQUM7UUFDckMsU0FBUyxFQUFFLEVBQUU7UUFDYixDQUFDLGVBQWUsQ0FBQyxFQUFFO1lBQ2pCLEtBQUssRUFBRSxFQUFZO1lBQ25CLEdBQUcsRUFBRSxFQUFVO1NBQ2hCO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwcmVwZW5kRGVsaW0gfSBmcm9tICcuL2RlbGltJztcclxuaW1wb3J0IHR5cGUge1xyXG4gIGluZmVyVHJhbnNsYXRpb25QYXJhbU1hcCxcclxuICBpbmZlclRyYW5zbGF0aW9uU2hhcGUsXHJcbn0gZnJvbSAnLi9wYXJhbWV0ZXJpemUudHlwZSc7XHJcbmltcG9ydCB0eXBlIHsgVW5rbm93blN0cmluZ0tleU9iamVjdCB9IGZyb20gJy4vc3RyaW5nLWtleS1vYmplY3QudHlwZSc7XHJcblxyXG5jb25zdCBJTlRFUk5BTF9TWU1CT0wgPSBTeW1ib2wuZm9yKCdtbXN0YWNrLXRyYW5zbGF0ZS1pbnRlcm5hbCcpO1xyXG5cclxudHlwZSBJbnRlcm5hbFN5bWJvbCA9IHR5cGVvZiBJTlRFUk5BTF9TWU1CT0w7XHJcblxyXG5leHBvcnQgdHlwZSBDb21waWxlZFRyYW5zbGF0aW9uPFxyXG4gIFQgZXh0ZW5kcyBVbmtub3duU3RyaW5nS2V5T2JqZWN0LFxyXG4gIFROUyBleHRlbmRzIHN0cmluZyxcclxuICBUTG9jYWxlIGV4dGVuZHMgc3RyaW5nID0gc3RyaW5nLFxyXG4+ID0ge1xyXG4gIGZsYXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XHJcbiAgbG9jYWxlPzogVExvY2FsZTtcclxuICBuYW1lc3BhY2U6IFROUztcclxuICBbSU5URVJOQUxfU1lNQk9MXToge1xyXG4gICAgc2hhcGU6IGluZmVyVHJhbnNsYXRpb25TaGFwZTxUPjtcclxuICAgIG1hcDogaW5mZXJUcmFuc2xhdGlvblBhcmFtTWFwPFROUywgVD47XHJcbiAgfTtcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIG1lcmdlVHJhbnNsYXRpb25NYXBzPFxyXG4gIFRNYWluIGV4dGVuZHMgQ29tcGlsZWRUcmFuc2xhdGlvbjxVbmtub3duU3RyaW5nS2V5T2JqZWN0LCBzdHJpbmc+LFxyXG4gIFRPdGhlciBleHRlbmRzIENvbXBpbGVkVHJhbnNsYXRpb248VW5rbm93blN0cmluZ0tleU9iamVjdCwgc3RyaW5nPixcclxuPiA9IE9taXQ8VE1haW4sIEludGVybmFsU3ltYm9sPiAmIHtcclxuICBbSU5URVJOQUxfU1lNQk9MXToge1xyXG4gICAgc2hhcGU6IGluZmVyQ29tcGlsZWRUcmFuc2xhdGlvblNoYXBlPFRNYWluPjtcclxuICAgIG1hcDogaW5mZXJDb21waWxlZFRyYW5zbGF0aW9uTWFwPFRPdGhlcj4gJlxyXG4gICAgICBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25NYXA8VE1haW4+O1xyXG4gIH07XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25OYW1lc3BhY2U8XHJcbiAgVCBleHRlbmRzIENvbXBpbGVkVHJhbnNsYXRpb248VW5rbm93blN0cmluZ0tleU9iamVjdCwgc3RyaW5nPixcclxuPiA9IFRbJ25hbWVzcGFjZSddO1xyXG5cclxuZXhwb3J0IHR5cGUgaW5mZXJDb21waWxlZFRyYW5zbGF0aW9uU2hhcGU8XHJcbiAgVCBleHRlbmRzIENvbXBpbGVkVHJhbnNsYXRpb248VW5rbm93blN0cmluZ0tleU9iamVjdCwgc3RyaW5nPixcclxuPiA9IFRbSW50ZXJuYWxTeW1ib2xdWydzaGFwZSddO1xyXG5cclxuZXhwb3J0IHR5cGUgaW5mZXJDb21waWxlZFRyYW5zbGF0aW9uTWFwPFxyXG4gIFQgZXh0ZW5kcyBDb21waWxlZFRyYW5zbGF0aW9uPFVua25vd25TdHJpbmdLZXlPYmplY3QsIHN0cmluZz4sXHJcbj4gPSBUW0ludGVybmFsU3ltYm9sXVsnbWFwJ107XHJcblxyXG5mdW5jdGlvbiBpc1RyYW5zbGF0aW9uT2JqZWN0KHQ6IHVua25vd24pOiB0IGlzIFVua25vd25TdHJpbmdLZXlPYmplY3Qge1xyXG4gIHJldHVybiB0eXBlb2YgdCA9PT0gJ29iamVjdCcgJiYgdCAhPT0gbnVsbDtcclxufVxyXG5cclxuZnVuY3Rpb24gZmxhdHRlblRyYW5zbGF0aW9uPFQgZXh0ZW5kcyBVbmtub3duU3RyaW5nS2V5T2JqZWN0PihvYmo6IFQpIHtcclxuICByZXR1cm4gT2JqZWN0LmVudHJpZXMob2JqKS5yZWR1Y2UoXHJcbiAgICAoYWNjLCBba2V5LCB2YWx1ZV0pID0+IHtcclxuICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICBhY2Nba2V5XSA9IHZhbHVlO1xyXG4gICAgICB9IGVsc2UgaWYgKGlzVHJhbnNsYXRpb25PYmplY3QodmFsdWUpKSB7XHJcbiAgICAgICAgT2JqZWN0LmVudHJpZXMoZmxhdHRlblRyYW5zbGF0aW9uKHZhbHVlKSkuZm9yRWFjaChcclxuICAgICAgICAgIChbbmVzdGVkS2V5LCBuZXN0ZWRWYWx1ZV0pID0+IHtcclxuICAgICAgICAgICAgYWNjW3ByZXBlbmREZWxpbShrZXksIG5lc3RlZEtleSldID0gbmVzdGVkVmFsdWU7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiBhY2M7XHJcbiAgICB9LFxyXG4gICAge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPixcclxuICApO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY29tcGlsZVRyYW5zbGF0aW9uPFxyXG4gIFQgZXh0ZW5kcyBVbmtub3duU3RyaW5nS2V5T2JqZWN0LFxyXG4gIFROUyBleHRlbmRzIHN0cmluZyxcclxuICBUTG9jYWxlIGV4dGVuZHMgc3RyaW5nID0gc3RyaW5nLFxyXG4+KFxyXG4gIHRyYW5zbGF0aW9uOiBULFxyXG4gIG5zOiBUTlMsXHJcbiAgbG9jYWxlPzogVExvY2FsZSxcclxuKTogQ29tcGlsZWRUcmFuc2xhdGlvbjxULCBUTlMsIFRMb2NhbGU+IHtcclxuICB0eXBlICRTaGFwZSA9IGluZmVyVHJhbnNsYXRpb25TaGFwZTxUPjtcclxuICB0eXBlICRNYXAgPSBpbmZlclRyYW5zbGF0aW9uUGFyYW1NYXA8VE5TLCBUPjtcclxuXHJcbiAgcmV0dXJuIHtcclxuICAgIGxvY2FsZSxcclxuICAgIGZsYXQ6IGZsYXR0ZW5UcmFuc2xhdGlvbih0cmFuc2xhdGlvbiksXHJcbiAgICBuYW1lc3BhY2U6IG5zLFxyXG4gICAgW0lOVEVSTkFMX1NZTUJPTF06IHtcclxuICAgICAgc2hhcGU6IHt9IGFzICRTaGFwZSxcclxuICAgICAgbWFwOiB7fSBhcyAkTWFwLFxyXG4gICAgfSxcclxuICB9O1xyXG59XHJcbiJdfQ==","import { compileTranslation, } from './compile';\nexport function createNamespace(ns, translation) {\n const compiled = compileTranslation(translation, ns);\n const namespace = {\n translation: compileTranslation(translation, ns),\n createTranslation: (locale, translation) => {\n return compileTranslation(translation, ns, locale);\n },\n createMergedNamespace: (otherNs, otherTranslation) => {\n return createNamespace(otherNs, otherTranslation);\n },\n };\n return namespace;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW5hbWVzcGFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RyYW5zbGF0ZS9zcmMvbGliL2NyZWF0ZS1uYW1lc3BhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLGtCQUFrQixHQUduQixNQUFNLFdBQVcsQ0FBQztBQTJCbkIsTUFBTSxVQUFVLGVBQWUsQ0FHN0IsRUFBTyxFQUFFLFdBQWM7SUFDdkIsTUFBTSxRQUFRLEdBQUcsa0JBQWtCLENBQVMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBSzdELE1BQU0sU0FBUyxHQUFpRDtRQUM5RCxXQUFXLEVBQUUsa0JBQWtCLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztRQUNoRCxpQkFBaUIsRUFBRSxDQUNqQixNQUFlLEVBQ2YsV0FBbUIsRUFDbkIsRUFBRTtZQUNGLE9BQU8sa0JBQWtCLENBQUMsV0FBVyxFQUFFLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNyRCxDQUFDO1FBQ0QscUJBQXFCLEVBQUUsQ0FRckIsT0FBaUIsRUFDakIsZ0JBQXdCLEVBQ3hCLEVBQUU7WUFDRixPQUFPLGVBQWUsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLENBSTdCLENBQUM7UUFDdEIsQ0FBQztLQUNGLENBQUM7SUFFRixPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21waWxlZFRyYW5zbGF0aW9uLFxyXG4gIGNvbXBpbGVUcmFuc2xhdGlvbixcclxuICBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25TaGFwZSxcclxuICBtZXJnZVRyYW5zbGF0aW9uTWFwcyxcclxufSBmcm9tICcuL2NvbXBpbGUnO1xyXG5pbXBvcnQgeyBVbmtub3duU3RyaW5nS2V5T2JqZWN0IH0gZnJvbSAnLi9zdHJpbmcta2V5LW9iamVjdC50eXBlJztcclxuXHJcbnR5cGUgVHJhbnNsYXRpb25OYW1lc3BhY2U8XHJcbiAgVE5TIGV4dGVuZHMgc3RyaW5nLFxyXG4gIFQgZXh0ZW5kcyBDb21waWxlZFRyYW5zbGF0aW9uPFVua25vd25TdHJpbmdLZXlPYmplY3QsIFROUz4sXHJcbiAgVFNoYXBlIGV4dGVuZHMgVW5rbm93blN0cmluZ0tleU9iamVjdCxcclxuPiA9IHtcclxuICB0cmFuc2xhdGlvbjogVDtcclxuICBjcmVhdGVUcmFuc2xhdGlvbjogPFRMb2NhbGUgZXh0ZW5kcyBzdHJpbmc+KFxyXG4gICAgbG9jYWxlOiBUTG9jYWxlLFxyXG4gICAgdHJhbnNsYXRpb246IFRTaGFwZSxcclxuICApID0+IENvbXBpbGVkVHJhbnNsYXRpb248VFNoYXBlLCBUTlMsIFRMb2NhbGU+O1xyXG4gIGNyZWF0ZU1lcmdlZE5hbWVzcGFjZTogPFxyXG4gICAgVE90aGVyTlMgZXh0ZW5kcyBzdHJpbmcsXHJcbiAgICBjb25zdCBUT3RoZXIgZXh0ZW5kcyBVbmtub3duU3RyaW5nS2V5T2JqZWN0LFxyXG4gICAgVE90aGVyQ29tcGlsZWQgZXh0ZW5kcyBDb21waWxlZFRyYW5zbGF0aW9uPFRPdGhlciwgVE90aGVyTlM+LFxyXG4gID4oXHJcbiAgICBuczogVE90aGVyTlMsXHJcbiAgICB0cmFuc2xhdGlvbjogVE90aGVyLFxyXG4gICkgPT4gVHJhbnNsYXRpb25OYW1lc3BhY2U8XHJcbiAgICBUT3RoZXJOUyxcclxuICAgIG1lcmdlVHJhbnNsYXRpb25NYXBzPFRPdGhlckNvbXBpbGVkLCBUPixcclxuICAgIGluZmVyQ29tcGlsZWRUcmFuc2xhdGlvblNoYXBlPFRPdGhlckNvbXBpbGVkPlxyXG4gID47XHJcbn07XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTmFtZXNwYWNlPFxyXG4gIGNvbnN0IFQgZXh0ZW5kcyBVbmtub3duU3RyaW5nS2V5T2JqZWN0LFxyXG4gIFROUyBleHRlbmRzIHN0cmluZyxcclxuPihuczogVE5TLCB0cmFuc2xhdGlvbjogVCkge1xyXG4gIGNvbnN0IGNvbXBpbGVkID0gY29tcGlsZVRyYW5zbGF0aW9uPFQsIFROUz4odHJhbnNsYXRpb24sIG5zKTtcclxuXHJcbiAgdHlwZSBUQ29tcGlsZWQgPSB0eXBlb2YgY29tcGlsZWQ7XHJcbiAgdHlwZSBUU2hhcGUgPSBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25TaGFwZTx0eXBlb2YgY29tcGlsZWQ+O1xyXG5cclxuICBjb25zdCBuYW1lc3BhY2U6IFRyYW5zbGF0aW9uTmFtZXNwYWNlPFROUywgVENvbXBpbGVkLCBUU2hhcGU+ID0ge1xyXG4gICAgdHJhbnNsYXRpb246IGNvbXBpbGVUcmFuc2xhdGlvbih0cmFuc2xhdGlvbiwgbnMpLFxyXG4gICAgY3JlYXRlVHJhbnNsYXRpb246IDxUTG9jYWxlIGV4dGVuZHMgc3RyaW5nPihcclxuICAgICAgbG9jYWxlOiBUTG9jYWxlLFxyXG4gICAgICB0cmFuc2xhdGlvbjogVFNoYXBlLFxyXG4gICAgKSA9PiB7XHJcbiAgICAgIHJldHVybiBjb21waWxlVHJhbnNsYXRpb24odHJhbnNsYXRpb24sIG5zLCBsb2NhbGUpO1xyXG4gICAgfSxcclxuICAgIGNyZWF0ZU1lcmdlZE5hbWVzcGFjZTogPFxyXG4gICAgICBUT3RoZXIgZXh0ZW5kcyBVbmtub3duU3RyaW5nS2V5T2JqZWN0LFxyXG4gICAgICBUT3RoZXJOUyBleHRlbmRzIHN0cmluZyxcclxuICAgICAgVE90aGVyQ29tcGlsZWQgZXh0ZW5kcyBDb21waWxlZFRyYW5zbGF0aW9uPFxyXG4gICAgICAgIFRPdGhlcixcclxuICAgICAgICBUT3RoZXJOU1xyXG4gICAgICA+ID0gQ29tcGlsZWRUcmFuc2xhdGlvbjxUT3RoZXIsIFRPdGhlck5TPixcclxuICAgID4oXHJcbiAgICAgIG90aGVyTnM6IFRPdGhlck5TLFxyXG4gICAgICBvdGhlclRyYW5zbGF0aW9uOiBUT3RoZXIsXHJcbiAgICApID0+IHtcclxuICAgICAgcmV0dXJuIGNyZWF0ZU5hbWVzcGFjZShvdGhlck5zLCBvdGhlclRyYW5zbGF0aW9uKSBhcyBUcmFuc2xhdGlvbk5hbWVzcGFjZTxcclxuICAgICAgICBUT3RoZXJOUyxcclxuICAgICAgICBtZXJnZVRyYW5zbGF0aW9uTWFwczxUT3RoZXJDb21waWxlZCwgVENvbXBpbGVkPixcclxuICAgICAgICBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25TaGFwZTxUT3RoZXJDb21waWxlZD5cclxuICAgICAgPiBhcyB1bmtub3duIGFzIGFueTtcclxuICAgIH0sXHJcbiAgfTtcclxuXHJcbiAgcmV0dXJuIG5hbWVzcGFjZTtcclxufVxyXG4iXX0=","import { computed, effect, inject, Injectable, InjectionToken, isDevMode, LOCALE_ID, resource, signal, untracked, } from '@angular/core';\nimport { createIntl, createIntlCache } from '@formatjs/intl';\nimport { prependDelim } from './delim';\nimport * as i0 from \"@angular/core\";\nconst CONFIG_TOKEN = new InjectionToken('mmstack-intl-config');\nexport function provideIntlConfig(config) {\n return {\n useValue: config,\n provide: CONFIG_TOKEN,\n };\n}\nexport function injectIntlConfig() {\n return inject(CONFIG_TOKEN, { optional: true }) ?? undefined;\n}\nexport function injectDefaultLocale() {\n return injectIntlConfig()?.defaultLocale ?? 'en-US';\n}\nexport class TranslationStore {\n cache = createIntlCache();\n config = injectIntlConfig();\n loadQueue = signal([], ...(ngDevMode ? [{ debugName: \"loadQueue\" }] : []));\n locale = signal(inject(LOCALE_ID), ...(ngDevMode ? [{ debugName: \"locale\" }] : []));\n defaultLocale = injectDefaultLocale();\n translations = signal({\n [this.defaultLocale]: {},\n }, ...(ngDevMode ? [{ debugName: \"translations\" }] : []));\n onDemandLoaders = new Map();\n nonMessageConfig = computed(() => ({\n ...this.config,\n locale: this.locale(),\n }), ...(ngDevMode ? [{ debugName: \"nonMessageConfig\" }] : []));\n messages = computed(() => this.translations()[this.locale()] ??\n this.translations()[this.defaultLocale] ??\n {}, ...(ngDevMode ? [{ debugName: \"messages\" }] : []));\n dynamicLocaleLoader = resource({\n params: computed(() => this.loadQueue().at(0) ?? null),\n loader: async ({ params: newLocale, abortSignal }) => {\n if (!newLocale)\n return;\n const currentTranslations = untracked(this.translations);\n const loadPromises = [];\n for (const [namespace, loaders] of this.onDemandLoaders.entries()) {\n const loader = loaders[newLocale];\n if (loader) {\n const hasNamespaceForLocale = currentTranslations[newLocale] &&\n Object.keys(currentTranslations[newLocale]).some((key) => key.startsWith(`${prependDelim(namespace, '').slice(0, -1)}`));\n if (!hasNamespaceForLocale) {\n loadPromises.push(loader()\n .then((translation) => {\n if (abortSignal.aborted)\n return null;\n return {\n namespace: translation.namespace,\n flat: translation.flat,\n };\n })\n .catch((err) => {\n if (isDevMode()) {\n console.error('[Translate] Failed to load', namespace, newLocale, err);\n }\n return null;\n }));\n }\n }\n }\n return Promise.all(loadPromises)\n .then((res) => res.filter((r) => r !== null))\n .then((res) => ({\n locales: res,\n locale: newLocale,\n }));\n },\n });\n intl = computed(() => createIntl({\n ...this.nonMessageConfig(),\n messages: this.messages(),\n }, this.cache), ...(ngDevMode ? [{ debugName: \"intl\" }] : []));\n constructor() {\n effect(() => {\n if (\n // should never be in error state, but best to check in case something throws\n this.dynamicLocaleLoader.error() ||\n this.dynamicLocaleLoader.isLoading())\n return;\n const dynamicLocales = this.dynamicLocaleLoader.value();\n if (!dynamicLocales)\n return;\n for (const locale of dynamicLocales.locales) {\n this.register(locale.namespace, {\n [dynamicLocales.locale]: locale.flat,\n });\n }\n this.loadQueue.update((q) => q.filter((l) => l !== dynamicLocales.locale));\n this.locale.set(dynamicLocales.locale);\n });\n }\n formatMessage(key, values) {\n const message = this.translations()[this.locale()]?.[key] ?? '';\n if (!message)\n return '';\n return this.intl().formatMessage({ id: key, defaultMessage: message }, values);\n }\n register(namespace, flat) {\n this.translations.update((cur) => {\n return Object.entries(flat).reduce((acc, [locale, translation]) => {\n const localeTranslation = acc[locale] ?? {};\n const withNS = Object.entries(translation ?? {}).reduce((acc, [key, value]) => {\n acc[prependDelim(namespace, key)] = value;\n return acc;\n }, {});\n acc[locale] = {\n ...localeTranslation,\n ...withNS,\n };\n return acc;\n }, { ...cur });\n });\n }\n registerOnDemandLoaders(namespace, loaders) {\n this.onDemandLoaders.set(namespace, loaders);\n }\n hasLocaleLoaders(locale) {\n return Array.from(this.onDemandLoaders.values()).some((loaders) => loaders[locale]);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: TranslationStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: TranslationStore, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: TranslationStore, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\nexport function injectIntl() {\n return inject(TranslationStore).intl;\n}\n/**\n * Inject a dynamic locale signal that supports runtime language switching.\n *\n * @returns A writable signal with the current locale and loading state.\n * Only allows switching to locales that have registered loaders.\n *\n * @example\n * ```typescript\n * const locale = injectDynamicLocale();\n *\n * // Switch language (triggers automatic translation loading)\n * locale.set('sl-SI');\n *\n * // Check loading state\n * if (locale.isLoading()) {\n * // Show spinner\n * }\n * ```\n */\nexport function injectDynamicLocale() {\n const store = inject(TranslationStore);\n const source = computed(() => store.locale());\n const set = (value) => {\n if (value === untracked(source) ||\n !store.hasLocaleLoaders(value) ||\n untracked(store.loadQueue).includes(value))\n return;\n store.loadQueue.update((q) => [...q, value]);\n };\n source.set = set;\n source.update = (updater) => {\n const next = updater(untracked(source));\n source.set(next);\n };\n source.asReadonly = () => source;\n source.isLoading = store.dynamicLocaleLoader.isLoading;\n return source;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24tc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90cmFuc2xhdGUvc3JjL2xpYi90cmFuc2xhdGlvbi1zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFDTixNQUFNLEVBQ04sVUFBVSxFQUNWLGNBQWMsRUFDZCxTQUFTLEVBQ1QsU0FBUyxFQUVULFFBQVEsRUFFUixNQUFNLEVBQ04sU0FBUyxHQUVWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFjLE1BQU0sZ0JBQWdCLENBQUM7QUFFekUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFHdkMsTUFBTSxZQUFZLEdBQUcsSUFBSSxjQUFjLENBRXJDLHFCQUFxQixDQUFDLENBQUM7QUFFekIsTUFBTSxVQUFVLGlCQUFpQixDQUMvQixNQUErQztJQUUvQyxPQUFPO1FBQ0wsUUFBUSxFQUFFLE1BQU07UUFDaEIsT0FBTyxFQUFFLFlBQVk7S0FDdEIsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsZ0JBQWdCO0lBQzlCLE9BQU8sTUFBTSxDQUFDLFlBQVksRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxJQUFJLFNBQVMsQ0FBQztBQUMvRCxDQUFDO0FBRUQsTUFBTSxVQUFVLG1CQUFtQjtJQUNqQyxPQUFPLGdCQUFnQixFQUFFLEVBQUUsYUFBYSxJQUFJLE9BQU8sQ0FBQztBQUN0RCxDQUFDO0FBS0QsTUFBTSxPQUFPLGdCQUFnQjtJQUNWLEtBQUssR0FBRyxlQUFlLEVBQUUsQ0FBQztJQUMxQixNQUFNLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztJQUNwQyxTQUFTLEdBQUcsTUFBTSxDQUFXLEVBQUUscURBQUMsQ0FBQztJQUNqQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxT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LENBQUMsS0FBSyxDQUFDO1lBQzlCLFNBQVMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztZQUUxQyxPQUFPO1FBQ1QsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUMvQyxDQUFDLENBQUM7SUFDRixNQUFNLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztJQUNqQixNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsT0FBa0MsRUFBRSxFQUFFO1FBQ3JELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN4QyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25CLENBQUMsQ0FBQztJQUNGLE1BQU0sQ0FBQyxVQUFVLEdBQUcsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDO0lBRWpDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQztJQUV2RCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBjb21wdXRlZCxcclxuICBlZmZlY3QsXHJcbiAgaW5qZWN0LFxyXG4gIEluamVjdGFibGUsXHJcbiAgSW5qZWN0aW9uVG9rZW4sXHJcbiAgaXNEZXZNb2RlLFxyXG4gIExPQ0FMRV9JRCxcclxuICBQcm92aWRlcixcclxuICByZXNvdXJjZSxcclxuICBTaWduYWwsXHJcbiAgc2lnbmFsLFxyXG4gIHVudHJhY2tlZCxcclxuICBXcml0YWJsZVNpZ25hbCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgY3JlYXRlSW50bCwgY3JlYXRlSW50bENhY2hlLCBJbnRsQ29uZmlnIH0gZnJvbSAnQGZvcm1hdGpzL2ludGwnO1xyXG5pbXBvcnQgeyBDb21waWxlZFRyYW5zbGF0aW9uIH0gZnJvbSAnLi9jb21waWxlJztcclxuaW1wb3J0IHsgcHJlcGVuZERlbGltIH0gZnJvbSAnLi9kZWxpbSc7XHJcbmltcG9ydCB7IFVua25vd25TdHJpbmdLZXlPYmplY3QgfSBmcm9tICcuL3N0cmluZy1rZXktb2JqZWN0LnR5cGUnO1xyXG5cclxuY29uc3QgQ09ORklHX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPFxyXG4gIE9taXQ8SW50bENvbmZpZywgJ2xvY2FsZScgfCAnbWVzc2FnZXMnPlxyXG4+KCdtbXN0YWNrLWludGwtY29uZmlnJyk7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUludGxDb25maWcoXHJcbiAgY29uZmlnOiBPbWl0PEludGxDb25maWcsICdsb2NhbGUnIHwgJ21lc3NhZ2VzJz4sXHJcbik6IFByb3ZpZGVyIHtcclxuICByZXR1cm4ge1xyXG4gICAgdXNlVmFsdWU6IGNvbmZpZyxcclxuICAgIHByb3ZpZGU6IENPTkZJR19UT0tFTixcclxuICB9O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0SW50bENvbmZpZygpIHtcclxuICByZXR1cm4gaW5qZWN0KENPTkZJR19UT0tFTiwgeyBvcHRpb25hbDogdHJ1ZSB9KSA/PyB1bmRlZmluZWQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpbmplY3REZWZhdWx0TG9jYWxlKCkge1xyXG4gIHJldHVybiBpbmplY3RJbnRsQ29uZmlnKCk/LmRlZmF1bHRMb2NhbGUgPz8gJ2VuLVVTJztcclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zbGF0aW9uU3RvcmUge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgY2FjaGUgPSBjcmVhdGVJbnRsQ2FjaGUoKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZyA9IGluamVjdEludGxDb25maWcoKTtcclxuICByZWFkb25seSBsb2FkUXVldWUgPSBzaWduYWw8c3RyaW5nW10+KFtdKTtcclxuICByZWFkb25seSBsb2NhbGUgPSBzaWduYWwoaW5qZWN0KExPQ0FMRV9JRCkpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdExvY2FsZSA9IGluamVjdERlZmF1bHRMb2NhbGUoKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0aW9ucyA9IHNpZ25hbDxcclxuICAgIFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+XHJcbiAgPih7XHJcbiAgICBbdGhpcy5kZWZhdWx0TG9jYWxlXToge30sXHJcbiAgfSk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgb25EZW1hbmRMb2FkZXJzID0gbmV3IE1hcDxcclxuICAgIHN0cmluZyxcclxuICAgIFJlY29yZDxcclxuICAgICAgc3RyaW5nLFxyXG4gICAgICAoKSA9PiBQcm9taXNlPENvbXBpbGVkVHJhbnNsYXRpb248VW5rbm93blN0cmluZ0tleU9iamVjdCwgc3RyaW5nPj5cclxuICAgID5cclxuICA+KCk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgbm9uTWVzc2FnZUNvbmZpZyA9IGNvbXB1dGVkKCgpID0+ICh7XHJcbiAgICAuLi50aGlzLmNvbmZpZyxcclxuICAgIGxvY2FsZTogdGhpcy5sb2NhbGUoKSxcclxuICB9KSk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgbWVzc2FnZXMgPSBjb21wdXRlZChcclxuICAgICgpID0+XHJcbiAgICAgIHRoaXMudHJhbnNsYXRpb25zKClbdGhpcy5sb2NhbGUoKV0gPz9cclxuICAgICAgdGhpcy50cmFuc2xhdGlvbnMoKVt0aGlzLmRlZmF1bHRMb2NhbGVdID8/XHJcbiAgICAgIHt9LFxyXG4gICk7XHJcblxyXG4gIHJlYWRvbmx5IGR5bmFtaWNMb2NhbGVMb2FkZXIgPSByZXNvdXJjZSh7XHJcbiAgICBwYXJhbXM6IGNvbXB1dGVkKCgpID0+IHRoaXMubG9hZFF1ZXVlKCkuYXQoMCkgPz8gbnVsbCksXHJcbiAgICBsb2FkZXI6IGFzeW5jICh7IHBhcmFtczogbmV3TG9jYWxlLCBhYm9ydFNpZ25hbCB9KSA9PiB7XHJcbiAgICAgIGlmICghbmV3TG9jYWxlKSByZXR1cm47XHJcblxyXG4gICAgICBjb25zdCBjdXJyZW50VHJhbnNsYXRpb25zID0gdW50cmFja2VkKHRoaXMudHJhbnNsYXRpb25zKTtcclxuXHJcbiAgICAgIGNvbnN0IGxvYWRQcm9taXNlczogUHJvbWlzZTx7XHJcbiAgICAgICAgbmFtZXNwYWNlOiBzdHJpbmc7XHJcbiAgICAgICAgZmxhdDogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcclxuICAgICAgfSB8IG51bGw+W10gPSBbXTtcclxuXHJcbiAgICAgIGZvciAoY29uc3QgW25hbWVzcGFjZSwgbG9hZGVyc10gb2YgdGhpcy5vbkRlbWFuZExvYWRlcnMuZW50cmllcygpKSB7XHJcbiAgICAgICAgY29uc3QgbG9hZGVyID0gbG9hZGVyc1tuZXdMb2NhbGVdO1xyXG4gICAgICAgIGlmIChsb2FkZXIpIHtcclxuICAgICAgICAgIGNvbnN0IGhhc05hbWVzcGFjZUZvckxvY2FsZSA9XHJcbiAgICAgICAgICAgIGN1cnJlbnRUcmFuc2xhdGlvbnNbbmV3TG9jYWxlXSAmJlxyXG4gICAgICAgICAgICBPYmplY3Qua2V5cyhjdXJyZW50VHJhbnNsYXRpb25zW25ld0xvY2FsZV0pLnNvbWUoKGtleSkgPT5cclxuICAgICAgICAgICAgICBrZXkuc3RhcnRzV2l0aChgJHtwcmVwZW5kRGVsaW0obmFtZXNwYWNlLCAnJykuc2xpY2UoMCwgLTEpfWApLFxyXG4gICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgIGlmICghaGFzTmFtZXNwYWNlRm9yTG9jYWxlKSB7XHJcbiAgICAgICAgICAgIGxvYWRQcm9taXNlcy5wdXNoKFxyXG4gICAgICAgICAgICAgIGxvYWRlcigpXHJcbiAgICAgICAgICAgICAgICAudGhlbigodHJhbnNsYXRpb24pID0+IHtcclxuICAgICAgICAgICAgICAgICAgaWYgKGFib3J0U2lnbmFsLmFib3J0ZWQpIHJldHVybiBudWxsO1xyXG4gICAgICAgICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgICAgIG5hbWVzcGFjZTogdHJhbnNsYXRpb24ubmFtZXNwYWNlLFxyXG4gICAgICAgICAgICAgICAgICAgIGZsYXQ6IHRyYW5zbGF0aW9uLmZsYXQsXHJcbiAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihcclxuICAgICAgICAgICAgICAgICAgICAgICdbVHJhbnNsYXRlXSBGYWlsZWQgdG8gbG9hZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICBuYW1lc3BhY2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICBuZXdMb2NhbGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICBlcnIsXHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiBQcm9taXNlLmFsbChsb2FkUHJvbWlzZXMpXHJcbiAgICAgICAgLnRoZW4oKHJlcykgPT4gcmVzLmZpbHRlcigocikgPT4gciAhPT0gbnVsbCkpXHJcbiAgICAgICAgLnRoZW4oKHJlcykgPT4gKHtcclxuICAgICAgICAgIGxvY2FsZXM6IHJlcyxcclxuICAgICAgICAgIGxvY2FsZTogbmV3TG9jYWxlLFxyXG4gICAgICAgIH0pKTtcclxuICAgIH0sXHJcbiAgfSk7XHJcblxyXG4gIHJlYWRvbmx5IGludGwgPSBjb21wdXRlZCgoKSA9PlxyXG4gICAgY3JlYXRlSW50bChcclxuICAgICAge1xyXG4gICAgICAgIC4uLnRoaXMubm9uTWVzc2FnZUNvbmZpZygpLFxyXG4gICAgICAgIG1lc3NhZ2VzOiB0aGlzLm1lc3NhZ2VzKCksXHJcbiAgICAgIH0sXHJcbiAgICAgIHRoaXMuY2FjaGUsXHJcbiAgICApLFxyXG4gICk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgZWZmZWN0KCgpID0+IHtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIC8vIHNob3VsZCBuZXZlciBiZSBpbiBlcnJvciBzdGF0ZSwgYnV0IGJlc3QgdG8gY2hlY2sgaW4gY2FzZSBzb21ldGhpbmcgdGhyb3dzXHJcbiAgICAgICAgdGhpcy5keW5hbWljTG9jYWxlTG9hZGVyLmVycm9yKCkgfHxcclxuICAgICAgICB0aGlzLmR5bmFtaWNMb2NhbGVMb2FkZXIuaXNMb2FkaW5nKClcclxuICAgICAgKVxyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgY29uc3QgZHluYW1pY0xvY2FsZXMgPSB0aGlzLmR5bmFtaWNMb2NhbGVMb2FkZXIudmFsdWUoKTtcclxuXHJcbiAgICAgIGlmICghZHluYW1pY0xvY2FsZXMpIHJldHVybjtcclxuICAgICAgZm9yIChjb25zdCBsb2NhbGUgb2YgZHluYW1pY0xvY2FsZXMubG9jYWxlcykge1xyXG4gICAgICAgIHRoaXMucmVnaXN0ZXIobG9jYWxlLm5hbWVzcGFjZSwge1xyXG4gICAgICAgICAgW2R5bmFtaWNMb2NhbGVzLmxvY2FsZV06IGxvY2FsZS5mbGF0LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMubG9hZFF1ZXVlLnVwZGF0ZSgocSkgPT5cclxuICAgICAgICBxLmZpbHRlcigobCkgPT4gbCAhPT0gZHluYW1pY0xvY2FsZXMubG9jYWxlKSxcclxuICAgICAgKTtcclxuICAgICAgdGhpcy5sb2NhbGUuc2V0KGR5bmFtaWNMb2NhbGVzLmxvY2FsZSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGZvcm1hdE1lc3NhZ2Uoa2V5OiBzdHJpbmcsIHZhbHVlcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlcj4pIHtcclxuICAgIGNvbnN0IG1lc3NhZ2UgPSB0aGlzLnRyYW5zbGF0aW9ucygpW3RoaXMubG9jYWxlKCldPy5ba2V5XSA/PyAnJztcclxuXHJcbiAgICBpZiAoIW1lc3NhZ2UpIHJldHVybiAnJztcclxuXHJcbiAgICByZXR1cm4gdGhpcy5pbnRsKCkuZm9ybWF0TWVzc2FnZShcclxuICAgICAgeyBpZDoga2V5LCBkZWZhdWx0TWVzc2FnZTogbWVzc2FnZSB9LFxyXG4gICAgICB2YWx1ZXMsXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXIoXHJcbiAgICBuYW1lc3BhY2U6IHN0cmluZyxcclxuICAgIGZsYXQ6IFBhcnRpYWw8UmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4+LFxyXG4gICkge1xyXG4gICAgdGhpcy50cmFuc2xhdGlvbnMudXBkYXRlKChjdXIpID0+IHtcclxuICAgICAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKGZsYXQpLnJlZHVjZShcclxuICAgICAgICAoYWNjLCBbbG9jYWxlLCB0cmFuc2xhdGlvbl0pID0+IHtcclxuICAgICAgICAgIGNvbnN0IGxvY2FsZVRyYW5zbGF0aW9uID0gYWNjW2xvY2FsZV0gPz8ge307XHJcblxyXG4gICAgICAgICAgY29uc3Qgd2l0aE5TID0gT2JqZWN0LmVudHJpZXModHJhbnNsYXRpb24gPz8ge30pLnJlZHVjZShcclxuICAgICAgICAgICAgKGFjYywgW2tleSwgdmFsdWVdKSA9PiB7XHJcbiAgICAgICAgICAgICAgYWNjW3ByZXBlbmREZWxpbShuYW1lc3BhY2UsIGtleSldID0gdmFsdWU7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIGFjYztcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPixcclxuICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgYWNjW2xvY2FsZV0gPSB7XHJcbiAgICAgICAgICAgIC4uLmxvY2FsZVRyYW5zbGF0aW9uLFxyXG4gICAgICAgICAgICAuLi53aXRoTlMsXHJcbiAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgIHJldHVybiBhY2M7XHJcbiAgICAgICAgfSxcclxuICAgICAgICB7IC4uLmN1ciB9LFxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uRGVtYW5kTG9hZGVycyhcclxuICAgIG5hbWVzcGFjZTogc3RyaW5nLFxyXG4gICAgbG9hZGVyczogUmVjb3JkPHN0cmluZywgKCkgPT4gUHJvbWlzZTxhbnk+PixcclxuICApIHtcclxuICAgIHRoaXMub25EZW1hbmRMb2FkZXJzLnNldChuYW1lc3BhY2UsIGxvYWRlcnMpO1xyXG4gIH1cclxuXHJcbiAgaGFzTG9jYWxlTG9hZGVycyhsb2NhbGU6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5vbkRlbWFuZExvYWRlcnMudmFsdWVzKCkpLnNvbWUoXHJcbiAgICAgIChsb2FkZXJzKSA9PiBsb2FkZXJzW2xvY2FsZV0sXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdEludGwoKSB7XHJcbiAgcmV0dXJuIGluamVjdChUcmFuc2xhdGlvblN0b3JlKS5pbnRsO1xyXG59XHJcblxyXG4vKipcclxuICogSW5qZWN0IGEgZHluYW1pYyBsb2NhbGUgc2lnbmFsIHRoYXQgc3VwcG9ydHMgcnVudGltZSBsYW5ndWFnZSBzd2l0Y2hpbmcuXHJcbiAqXHJcbiAqIEByZXR1cm5zIEEgd3JpdGFibGUgc2lnbmFsIHdpdGggdGhlIGN1cnJlbnQgbG9jYWxlIGFuZCBsb2FkaW5nIHN0YXRlLlxyXG4gKiBPbmx5IGFsbG93cyBzd2l0Y2hpbmcgdG8gbG9jYWxlcyB0aGF0IGhhdmUgcmVnaXN0ZXJlZCBsb2FkZXJzLlxyXG4gKlxyXG4gKiBAZXhhbXBsZVxyXG4gKiBgYGB0eXBlc2NyaXB0XHJcbiAqIGNvbnN0IGxvY2FsZSA9IGluamVjdER5bmFtaWNMb2NhbGUoKTtcclxuICpcclxuICogLy8gU3dpdGNoIGxhbmd1YWdlICh0cmlnZ2VycyBhdXRvbWF0aWMgdHJhbnNsYXRpb24gbG9hZGluZylcclxuICogbG9jYWxlLnNldCgnc2wtU0knKTtcclxuICpcclxuICogLy8gQ2hlY2sgbG9hZGluZyBzdGF0ZVxyXG4gKiBpZiAobG9jYWxlLmlzTG9hZGluZygpKSB7XHJcbiAqICAgLy8gU2hvdyBzcGlubmVyXHJcbiAqIH1cclxuICogYGBgXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0RHluYW1pY0xvY2FsZSgpOiBXcml0YWJsZVNpZ25hbDxzdHJpbmc+ICYge1xyXG4gIGlzTG9hZGluZzogU2lnbmFsPGJvb2xlYW4+O1xyXG59IHtcclxuICBjb25zdCBzdG9yZSA9IGluamVjdChUcmFuc2xhdGlvblN0b3JlKTtcclxuXHJcbiAgY29uc3Qgc291cmNlID0gY29tcHV0ZWQoKCkgPT4gc3RvcmUubG9jYWxlKCkpIGFzIFdyaXRhYmxlU2lnbmFsPHN0cmluZz4gJiB7XHJcbiAgICBpc0xvYWRpbmc6IFNpZ25hbDxib29sZWFuPjtcclxuICB9O1xyXG5cclxuICBjb25zdCBzZXQgPSAodmFsdWU6IHN0cmluZykgPT4ge1xyXG4gICAgaWYgKFxyXG4gICAgICB2YWx1ZSA9PT0gdW50cmFja2VkKHNvdXJjZSkgfHxcclxuICAgICAgIXN0b3JlLmhhc0xvY2FsZUxvYWRlcnModmFsdWUpIHx8XHJcbiAgICAgIHVudHJhY2tlZChzdG9yZS5sb2FkUXVldWUpLmluY2x1ZGVzKHZhbHVlKVxyXG4gICAgKVxyXG4gICAgICByZXR1cm47XHJcbiAgICBzdG9yZS5sb2FkUXVldWUudXBkYXRlKChxKSA9PiBbLi4ucSwgdmFsdWVdKTtcclxuICB9O1xyXG4gIHNvdXJjZS5zZXQgPSBzZXQ7XHJcbiAgc291cmNlLnVwZGF0ZSA9ICh1cGRhdGVyOiAodmFsdWU6IHN0cmluZykgPT4gc3RyaW5nKSA9PiB7XHJcbiAgICBjb25zdCBuZXh0ID0gdXBkYXRlcih1bnRyYWNrZWQoc291cmNlKSk7XHJcbiAgICBzb3VyY2Uuc2V0KG5leHQpO1xyXG4gIH07XHJcbiAgc291cmNlLmFzUmVhZG9ubHkgPSAoKSA9PiBzb3VyY2U7XHJcblxyXG4gIHNvdXJjZS5pc0xvYWRpbmcgPSBzdG9yZS5keW5hbWljTG9jYWxlTG9hZGVyLmlzTG9hZGluZztcclxuXHJcbiAgcmV0dXJuIHNvdXJjZTtcclxufVxyXG4iXX0=","import { computed, inject, isDevMode, isSignal, untracked, } from '@angular/core';\nimport { replaceWithDelim } from './delim';\nimport { injectDefaultLocale, TranslationStore } from './translation-store';\nfunction createEqualsRecord(keys = []) {\n let keyMatcher;\n if (keys.length === 0) {\n keyMatcher = () => true;\n }\n else if (keys.length === 1) {\n const key = keys[0];\n keyMatcher = (a, b) => a[key] === b[key];\n }\n else {\n keyMatcher = (a, b) => {\n return keys.every((k) => a[k] === b[k]);\n };\n }\n return (a, b) => {\n if (!a && !b)\n return true;\n if (!a || !b)\n return false;\n return keyMatcher(a, b);\n };\n}\nfunction addSignalFn(fn, store) {\n const withSig = fn;\n const asSignal = (key, ...args) => {\n const variables = args[0];\n const stringKey = key;\n const flatPath = replaceWithDelim(stringKey);\n const varsFn = variables ?? (() => undefined);\n const varsSignal = isSignal(varsFn)\n ? varsFn\n : computed(varsFn, {\n equal: createEqualsRecord(Object.keys(varsFn() ?? {})),\n });\n return computed(() => store.formatMessage(flatPath, varsSignal()));\n };\n withSig.asSignal = asSignal;\n return withSig;\n}\nexport function createT(store) {\n return (key, ...args) => {\n const variables = args[0];\n const stringKey = key;\n return store.formatMessage(replaceWithDelim(stringKey), variables);\n };\n}\nexport function registerNamespace(defaultTranslation, other) {\n const injectT = () => {\n const store = inject(TranslationStore);\n return addSignalFn(createT(store), store);\n };\n let defaultTranslationLoaded = false;\n const resolver = async () => {\n const store = inject(TranslationStore);\n const locale = untracked(store.locale);\n const defaultLocale = injectDefaultLocale();\n const tPromise = other[locale];\n const promise = tPromise ?? defaultTranslation;\n if (!promise && isDevMode()) {\n return console.warn(`No translation found for locale: ${locale}`);\n }\n if (promise === defaultTranslation && defaultTranslationLoaded)\n return;\n try {\n const translation = await promise();\n if (promise !== defaultTranslation &&\n translation.locale !== locale &&\n isDevMode()) {\n return console.warn(`Expected locale to be ${locale} but got ${translation.locale}`);\n }\n store.registerOnDemandLoaders(translation.namespace, {\n ...other,\n [defaultLocale]: defaultTranslation,\n });\n store.register(translation.namespace, {\n [locale]: translation.flat,\n });\n if (promise === defaultTranslation) {\n defaultTranslationLoaded = true;\n }\n }\n catch {\n if (isDevMode()) {\n console.warn(`Failed to load translation for locale: ${locale}`);\n }\n }\n };\n return {\n injectNamespaceT: injectT,\n resolveNamespaceTranslation: resolver,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXItbmFtZXNwYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdHJhbnNsYXRlL3NyYy9saWIvcmVnaXN0ZXItbmFtZXNwYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxRQUFRLEVBRVIsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBTXZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUUzQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUs1RSxTQUFTLGtCQUFrQixDQUE0QixPQUFvQixFQUFFO0lBQzNFLElBQUksVUFBbUMsQ0FBQztJQUV4QyxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDdEIsVUFBVSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQztJQUMxQixDQUFDO1NBQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzdCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwQixVQUFVLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNDLENBQUM7U0FBTSxDQUFDO1FBQ04sVUFBVSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3BCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFDLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRCxPQUFP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QUksd0JBQXdCO1lBQUUsT0FBTztRQUV2RSxJQUFJLENBQUM7WUFDSCxNQUFNLFdBQVcsR0FBRyxNQUFNLE9BQU8sRUFBRSxDQUFDO1lBRXBDLElBQ0UsT0FBTyxLQUFLLGtCQUFrQjtnQkFDOUIsV0FBVyxDQUFDLE1BQU0sS0FBSyxNQUFNO2dCQUM3QixTQUFTLEVBQUUsRUFDWCxDQUFDO2dCQUNELE9BQU8sT0FBTyxDQUFDLElBQUksQ0FDakIseUJBQXlCLE1BQU0sWUFBWSxXQUFXLENBQUMsTUFBTSxFQUFFLENBQ2hFLENBQUM7WUFDSixDQUFDO1lBRUQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUU7Z0JBQ25ELEdBQUcsS0FBSztnQkFDUixDQUFDLGFBQWEsQ0FBQyxFQUFFLGtCQUFrQjthQUNwQyxDQUFDLENBQUM7WUFFSCxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUU7Z0JBQ3BDLENBQUMsTUFBTSxDQUFDLEVBQUUsV0FBVyxDQUFDLElBQUk7YUFDM0IsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxPQUFPLEtBQUssa0JBQWtCLEVBQUUsQ0FBQztnQkFDbkMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDO1lBQ2xDLENBQUM7UUFDSCxDQUFDO1FBQUMsTUFBTSxDQUFDO1lBQ1AsSUFBSSxTQUFTLEVBQUUsRUFBRSxDQUFDO2dCQUNoQixPQUFPLENBQUMsSUFBSSxDQUFDLDBDQUEwQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1lBQ25FLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQyxDQUFDO0lBRUYsT0FBTztRQUNMLGdCQUFnQixFQUFFLE9BQU87UUFDekIsMkJBQTJCLEVBQUUsUUFBUTtLQUN0QyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgY29tcHV0ZWQsXHJcbiAgaW5qZWN0LFxyXG4gIGlzRGV2TW9kZSxcclxuICBpc1NpZ25hbCxcclxuICBTaWduYWwsXHJcbiAgdW50cmFja2VkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIENvbXBpbGVkVHJhbnNsYXRpb24sXHJcbiAgaW5mZXJDb21waWxlZFRyYW5zbGF0aW9uTWFwLFxyXG4gIGluZmVyQ29tcGlsZWRUcmFuc2xhdGlvbk5hbWVzcGFjZSxcclxufSBmcm9tICcuL2NvbXBpbGUnO1xyXG5pbXBvcnQgeyByZXBsYWNlV2l0aERlbGltIH0gZnJvbSAnLi9kZWxpbSc7XHJcbmltcG9ydCB7IFVua25vd25TdHJpbmdLZXlPYmplY3QgfSBmcm9tICcuL3N0cmluZy1rZXktb2JqZWN0LnR5cGUnO1xyXG5pbXBvcnQgeyBpbmplY3REZWZhdWx0TG9jYWxlLCBUcmFuc2xhdGlvblN0b3JlIH0gZnJvbSAnLi90cmFuc2xhdGlvbi1zdG9yZSc7XHJcblxyXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG50eXBlIEFueVN0cmluZ1JlY29yZCA9IFJlY29yZDxzdHJpbmcsIGFueT47XHJcblxyXG5mdW5jdGlvbiBjcmVhdGVFcXVhbHNSZWNvcmQ8VCBleHRlbmRzIEFueVN0cmluZ1JlY29yZD4oa2V5czogKGtleW9mIFQpW10gPSBbXSkge1xyXG4gIGxldCBrZXlNYXRjaGVyOiAoYTogVCwgYjogVCkgPT4gYm9vbGVhbjtcclxuXHJcbiAgaWYgKGtleXMubGVuZ3RoID09PSAwKSB7XHJcbiAgICBrZXlNYXRjaGVyID0gKCkgPT4gdHJ1ZTtcclxuICB9IGVsc2UgaWYgKGtleXMubGVuZ3RoID09PSAxKSB7XHJcbiAgICBjb25zdCBrZXkgPSBrZXlzWzBdO1xyXG4gICAga2V5TWF0Y2hlciA9IChhLCBiKSA9PiBhW2tleV0gPT09IGJba2V5XTtcclxuICB9IGVsc2Uge1xyXG4gICAga2V5TWF0Y2hlciA9IChhLCBiKSA9PiB7XHJcbiAgICAgIHJldHVybiBrZXlzLmV2ZXJ5KChrKSA9PiBhW2tdID09PSBiW2tdKTtcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICByZXR1cm4gKGE/OiBULCBiPzogVCk6IGJvb2xlYW4gPT4ge1xyXG4gICAgaWYgKCFhICYmICFiKSByZXR1cm4gdHJ1ZTtcclxuICAgIGlmICghYSB8fCAhYikgcmV0dXJuIGZhbHNlO1xyXG4gICAgcmV0dXJuIGtleU1hdGNoZXIoYSwgYik7XHJcbiAgfTtcclxufVxyXG5cclxudHlwZSBURnVuY3Rpb248VE1hcCBleHRlbmRzIEFueVN0cmluZ1JlY29yZD4gPSA8XHJcbiAgVEtleSBleHRlbmRzIGtleW9mIFRNYXAgJiBzdHJpbmcsXHJcbj4oXHJcbiAga2V5OiBUS2V5LFxyXG4gIC4uLmFyZ3M6IFRNYXBbVEtleV0gZXh0ZW5kcyB2b2lkID8gW10gOiBbVE1hcFtUS2V5XV1cclxuKSA9PiBzdHJpbmc7XHJcblxyXG50eXBlIFNpZ25hbFRGdW5jdGlvbjxUTWFwIGV4dGVuZHMgQW55U3RyaW5nUmVjb3JkPiA9IDxcclxuICBUS2V5IGV4dGVuZHMga2V5b2YgVE1hcCAmIHN0cmluZyxcclxuPihcclxuICBrZXk6IFRLZXksXHJcbiAgLi4uYXJnczogVE1hcFtUS2V5XSBleHRlbmRzIHZvaWQgPyBbXSA6IFsoKSA9PiBUTWFwW1RLZXldXVxyXG4pID0+IFNpZ25hbDxzdHJpbmc+O1xyXG5cclxudHlwZSBURnVuY3Rpb25XaXRoU2lnbmFsQ29uc3RydWN0b3I8XHJcbiAgVE1hcCBleHRlbmRzIEFueVN0cmluZ1JlY29yZCxcclxuICBURk4gZXh0ZW5kcyBURnVuY3Rpb248VE1hcD4sXHJcbj4gPSBURk4gJiB7XHJcbiAgYXNTaWduYWw6IFNpZ25hbFRGdW5jdGlvbjxUTWFwPjtcclxufTtcclxuXHJcbmZ1bmN0aW9uIGFkZFNpZ25hbEZuPFRNYXAgZXh0ZW5kcyBBbnlTdHJpbmdSZWNvcmQsIFRGbiBleHRlbmRzIFRGdW5jdGlvbjxUTWFwPj4oXHJcbiAgZm46IFRGbixcclxuICBzdG9yZTogVHJhbnNsYXRpb25TdG9yZSxcclxuKTogVEZ1bmN0aW9uV2l0aFNpZ25hbENvbnN0cnVjdG9yPFRNYXAsIFRGbj4ge1xyXG4gIGNvbnN0IHdpdGhTaWcgPSBmbiBhcyBURnVuY3Rpb25XaXRoU2lnbmFsQ29uc3RydWN0b3I8VE1hcCwgVEZuPjtcclxuXHJcbiAgY29uc3QgYXNTaWduYWwgPSA8VEtleSBleHRlbmRzIGtleW9mIFRNYXAgJiBzdHJpbmc+KFxyXG4gICAga2V5OiBUS2V5LFxyXG4gICAgLi4uYXJnczogVE1hcFtUS2V5XSBleHRlbmRzIHZvaWQgPyBbXSA6IFsoKSA9PiBUTWFwW1RLZXldXVxyXG4gICk6IFNpZ25hbDxzdHJpbmc+ID0+IHtcclxuICAgIGNvbnN0IHZhcmlhYmxlcyA9IGFyZ3NbMF0gYXMgKCkgPT4gQW55U3RyaW5nUmVjb3JkIHwgdW5kZWZpbmVkO1xyXG4gICAgY29uc3Qgc3RyaW5nS2V5ID0ga2V5IGFzIHN0cmluZztcclxuXHJcbiAgICBjb25zdCBmbGF0UGF0aCA9IHJlcGxhY2VXaXRoRGVsaW0oc3RyaW5nS2V5KTtcclxuXHJcbiAgICBjb25zdCB2YXJzRm4gPSB2YXJpYWJsZXMgPz8gKCgpID0+IHVuZGVmaW5lZCk7XHJcbiAgICBjb25zdCB2YXJzU2lnbmFsID0gaXNTaWduYWwodmFyc0ZuKVxyXG4gICAgICA/IHZhcnNGblxyXG4gICAgICA6IGNvbXB1dGVkKHZhcnNGbiwge1xyXG4gICAgICAgICAgZXF1YWw6IGNyZWF0ZUVxdWFsc1JlY29yZChPYmplY3Qua2V5cyh2YXJzRm4oKSA/PyB7fSkpLFxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgIHJldHVybiBjb21wdXRlZCgoKSA9PiBzdG9yZS5mb3JtYXRNZXNzYWdlKGZsYXRQYXRoLCB2YXJzU2lnbmFsKCkpKTtcclxuICB9O1xyXG5cclxuICB3aXRoU2lnLmFzU2lnbmFsID0gYXNTaWduYWw7XHJcblxyXG4gIHJldHVybiB3aXRoU2lnO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlVDxUTWFwIGV4dGVuZHMgQW55U3RyaW5nUmVjb3JkPihcclxuICBzdG9yZTogVHJhbnNsYXRpb25TdG9yZSxcclxuKTogVEZ1bmN0aW9uPFRNYXA+IHtcclxuICByZXR1cm4gPFRLZXkgZXh0ZW5kcyBrZXlvZiBUTWFwICYgc3RyaW5nPihcclxuICAgIGtleTogVEtleSxcclxuICAgIC4uLmFyZ3M6IFRNYXBbVEtleV0gZXh0ZW5kcyB2b2lkID8gW10gOiBbVE1hcFtUS2V5XV1cclxuICApOiBzdHJpbmcgPT4ge1xyXG4gICAgY29uc3QgdmFyaWFibGVzID0gYXJnc1swXSBhcyBBbnlTdHJpbmdSZWNvcmQgfCB1bmRlZmluZWQ7XHJcbiAgICBjb25zdCBzdHJpbmdLZXkgPSBrZXkgYXMgc3RyaW5nO1xyXG5cclxuICAgIHJldHVybiBzdG9yZS5mb3JtYXRNZXNzYWdlKHJlcGxhY2VXaXRoRGVsaW0oc3RyaW5nS2V5KSwgdmFyaWFibGVzKTtcclxuICB9O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJOYW1lc3BhY2U8XHJcbiAgVERlZmF1bHQgZXh0ZW5kcyBDb21waWxlZFRyYW5zbGF0aW9uPFVua25vd25TdHJpbmdLZXlPYmplY3QsIHN0cmluZz4sXHJcbj4oXHJcbiAgZGVmYXVsdFRyYW5zbGF0aW9uOiAoKSA9PiBQcm9taXNlPFREZWZhdWx0PixcclxuICBvdGhlcjogUmVjb3JkPFxyXG4gICAgc3RyaW5nLFxyXG4gICAgKCkgPT4gUHJvbWlzZTxcclxuICAgICAgQ29tcGlsZWRUcmFuc2xhdGlvbjxcclxuICAgICAgICBVbmtub3duU3RyaW5nS2V5T2JqZWN0LFxyXG4gICAgICAgIGluZmVyQ29tcGlsZWRUcmFuc2xhdGlvbk5hbWVzcGFjZTxURGVmYXVsdD4sXHJcbiAgICAgICAgc3RyaW5nXHJcbiAgICAgID5cclxuICAgID5cclxuICA+LFxyXG4pIHtcclxuICB0eXBlICRNYXAgPSBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25NYXA8VERlZmF1bHQ+O1xyXG4gIHR5cGUgJEJhc2VURk4gPSBURnVuY3Rpb248JE1hcD47XHJcbiAgdHlwZSAkVEZOID0gVEZ1bmN0aW9uV2l0aFNpZ25hbENvbnN0cnVjdG9yPCRNYXAsICRCYXNlVEZOPjtcclxuXHJcbiAgY29uc3QgaW5qZWN0VCA9ICgpOiAkVEZOID0+IHtcclxuICAgIGNvbnN0IHN0b3JlID0gaW5qZWN0KFRyYW5zbGF0aW9uU3RvcmUpO1xyXG5cclxuICAgIHJldHVybiBhZGRTaWduYWxGbihjcmVhdGVUKHN0b3JlKSwgc3RvcmUpO1xyXG4gIH07XHJcblxyXG4gIGxldCBkZWZhdWx0VHJhbnNsYXRpb25Mb2FkZWQgPSBmYWxzZTtcclxuICBjb25zdCByZXNvbHZlciA9IGFzeW5jICgpID0+IHtcclxuICAgIGNvbnN0IHN0b3JlID0gaW5qZWN0KFRyYW5zbGF0aW9uU3RvcmUpO1xyXG4gICAgY29uc3QgbG9jYWxlID0gdW50cmFja2VkKHN0b3JlLmxvY2FsZSk7XHJcbiAgICBjb25zdCBkZWZhdWx0TG9jYWxlID0gaW5qZWN0RGVmYXVsdExvY2FsZSgpO1xyXG4gICAgY29uc3QgdFByb21pc2UgPSBvdGhlcltsb2NhbGVdIGFzICh0eXBlb2Ygb3RoZXIpW3N0cmluZ10gfCB1bmRlZmluZWQ7XHJcblxyXG4gICAgY29uc3QgcHJvbWlzZSA9IHRQcm9taXNlID8/IGRlZmF1bHRUcmFuc2xhdGlvbjtcclxuICAgIGlmICghcHJvbWlzZSAmJiBpc0Rldk1vZGUoKSkge1xyXG4gICAgICByZXR1cm4gY29uc29sZS53YXJuKGBObyB0cmFuc2xhdGlvbiBmb3VuZCBmb3IgbG9jYWxlOiAke2xvY2FsZX1gKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAocHJvbWlzZSA9PT0gZGVmYXVsdFRyYW5zbGF0aW9uICYmIGRlZmF1bHRUcmFuc2xhdGlvbkxvYWRlZCkgcmV0dXJuO1xyXG5cclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IHRyYW5zbGF0aW9uID0gYXdhaXQgcHJvbWlzZSgpO1xyXG5cclxuICAgICAgaWYgKFxyXG4gICAgICAgIHByb21pc2UgIT09IGRlZmF1bHRUcmFuc2xhdGlvbiAmJlxyXG4gICAgICAgIHRyYW5zbGF0aW9uLmxvY2FsZSAhPT0gbG9jYWxlICYmXHJcbiAgICAgICAgaXNEZXZNb2RlKClcclxuICAgICAgKSB7XHJcbiAgICAgICAgcmV0dXJuIGNvbnNvbGUud2FybihcclxuICAgICAgICAgIGBFeHBlY3RlZCBsb2NhbGUgdG8gYmUgJHtsb2NhbGV9IGJ1dCBnb3QgJHt0cmFuc2xhdGlvbi5sb2NhbGV9YCxcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBzdG9yZS5yZWdpc3Rlck9uRGVtYW5kTG9hZGVycyh0cmFuc2xhdGlvbi5uYW1lc3BhY2UsIHtcclxuICAgICAgICAuLi5vdGhlcixcclxuICAgICAgICBbZGVmYXVsdExvY2FsZV06IGRlZmF1bHRUcmFuc2xhdGlvbixcclxuICAgICAgfSk7XHJcblxyXG4gICAgICBzdG9yZS5yZWdpc3Rlcih0cmFuc2xhdGlvbi5uYW1lc3BhY2UsIHtcclxuICAgICAgICBbbG9jYWxlXTogdHJhbnNsYXRpb24uZmxhdCxcclxuICAgICAgfSk7XHJcbiAgICAgIGlmIChwcm9taXNlID09PSBkZWZhdWx0VHJhbnNsYXRpb24pIHtcclxuICAgICAgICBkZWZhdWx0VHJhbnNsYXRpb25Mb2FkZWQgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoIHtcclxuICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgY29uc29sZS53YXJuKGBGYWlsZWQgdG8gbG9hZCB0cmFuc2xhdGlvbiBmb3IgbG9jYWxlOiAke2xvY2FsZX1gKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIHJldHVybiB7XHJcbiAgICBpbmplY3ROYW1lc3BhY2VUOiBpbmplY3RULFxyXG4gICAgcmVzb2x2ZU5hbWVzcGFjZVRyYW5zbGF0aW9uOiByZXNvbHZlcixcclxuICB9O1xyXG59XHJcbiJdfQ==","import { afterRenderEffect, computed, Directive, ElementRef, inject, input, Renderer2, } from '@angular/core';\nimport { createT } from './register-namespace';\nimport { TranslationStore } from './translation-store';\nimport * as i0 from \"@angular/core\";\nexport class Translate {\n t = createT(inject(TranslationStore));\n translate = input.required(...(ngDevMode ? [{ debugName: \"translate\" }] : []));\n constructor() {\n const key = computed(() => {\n const vars = this.translate();\n return (Array.isArray(vars) ? vars[0] : vars);\n }, ...(ngDevMode ? [{ debugName: \"key\" }] : []));\n const args = computed(() => {\n const vars = this.translate();\n return (Array.isArray(vars) ? vars[1] : undefined);\n }, ...(ngDevMode ? [{ debugName: \"args\", equal: (a, b) => {\n if (a === undefined && b === undefined)\n return true;\n if (a === undefined || b === undefined)\n return false;\n const aObj = a;\n const keys = Object.keys(aObj);\n const bObj = b;\n if (!keys.length)\n return !Object.keys(bObj).length;\n return keys.every((key) => aObj[key] === bObj[key]);\n } }] : [{\n equal: (a, b) => {\n if (a === undefined && b === undefined)\n return true;\n if (a === undefined || b === undefined)\n return false;\n const aObj = a;\n const keys = Object.keys(aObj);\n const bObj = b;\n if (!keys.length)\n return !Object.keys(bObj).length;\n return keys.every((key) => aObj[key] === bObj[key]);\n },\n }]));\n const translation = computed(() => this.t(key(), args()), ...(ngDevMode ? [{ debugName: \"translation\" }] : []));\n const renderer = inject(Renderer2);\n const el = inject(ElementRef);\n afterRenderEffect({\n write: () => {\n renderer.setProperty(el.nativeElement, 'textContent', translation());\n },\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: Translate, deps: [], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.3.1\", type: Translate, isStandalone: true, inputs: { translate: { classPropertyName: \"translate\", publicName: \"translate\", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: Translate, decorators: [{\n type: Directive\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdHJhbnNsYXRlL3NyYy9saWIvdHJhbnNsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsUUFBUSxFQUNSLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUd2RCxNQUFNLE9BQWdCLFNBQVM7SUFNWixDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7SUFFOUMsU0FBUyxHQUNoQixLQUFLLENBQUMsUUFBUSxvREFJWCxDQUFDO0lBRU47UUFDRSxNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3hCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM5QixPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQVMsQ0FBQztRQUN4RCxDQUFDLCtDQUFDLENBQUM7UUFFSCxNQUFNLElBQUksR0FBRyxRQUFRLENBQ25CLEdBQUcsRUFBRTtZQUNILE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM5QixPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQWUsQ0FBQztRQUNuRSxDQUFDLHdDQUVDLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtvQkFDZCxJQUFJLENBQUMsS0FBSyxTQUFTLElBQUksQ0FBQyxLQUFLLFNBQVM7d0JBQUUsT0FBTyxJQUFJLENBQUM7b0JBQ3BELElBQUksQ0FBQyxLQUFLLFNBQVMsSUFBSSxDQUFDLEtBQUssU0FBUzt3QkFBRSxPQUFPLEtBQUssQ0FBQztvQkFFckQsTUFBTSxJQUFJLEdBQUcsQ0FBMkIsQ0FBQztvQkFDekMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDL0IsTUFBTSxJQUFJLEdBQUcsQ0FBMkIsQ0FBQztvQkFFekMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNO3dCQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQztvQkFFbkQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELENBQUMsT0FaSDtnQkFDRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7b0JBQ2QsSUFBSSxDQUFDLEtBQUssU0FBUyxJQUFJLENBQUMsS0FBSyxTQUFTO3dCQUFFLE9BQU8sSUFBSSxDQUFDO29CQUNwRCxJQUFJLENBQUMsS0FBSyxTQUFTLElBQUksQ0FBQyxLQUFLLFNBQVM7d0JBQUUsT0FBTyxLQUFLLENBQUM7b0JBRXJELE1BQU0sSUFBSSxHQUFHLENBQTJCLENBQUM7b0JBQ3pDLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQy9CLE1BQU0sSUFBSSxHQUFHLENBQTJCLENBQUM7b0JBRXpDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTTt3QkFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUM7b0JBRW5ELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUN0RCxDQUFDO2FBQ0YsR0FDRixDQUFDO1FBRUYsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsdURBQUMsQ0FBQztRQUUxRCxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkMsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUEwQixVQUFVLENBQUMsQ0FBQztRQUV2RCxpQkFBaUIsQ0FBQztZQUNoQixLQUFLLEVBQUUsR0FBRyxFQUFFO2dCQUNWLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUN2RSxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0FwRG1CLFNBQVM7MkZBQVQsU0FBUzs7MkZBQVQsU0FBUztrQkFEOUIsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgYWZ0ZXJSZW5kZXJFZmZlY3QsXHJcbiAgY29tcHV0ZWQsXHJcbiAgRGlyZWN0aXZlLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgaW5qZWN0LFxyXG4gIGlucHV0LFxyXG4gIFJlbmRlcmVyMixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tcGlsZWRUcmFuc2xhdGlvbiwgaW5mZXJDb21waWxlZFRyYW5zbGF0aW9uTWFwIH0gZnJvbSAnLi9jb21waWxlJztcclxuaW1wb3J0IHsgY3JlYXRlVCB9IGZyb20gJy4vcmVnaXN0ZXItbmFtZXNwYWNlJztcclxuaW1wb3J0IHsgVW5rbm93blN0cmluZ0tleU9iamVjdCB9IGZyb20gJy4vc3RyaW5nLWtleS1vYmplY3QudHlwZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0aW9uU3RvcmUgfSBmcm9tICcuL3RyYW5zbGF0aW9uLXN0b3JlJztcclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHJhbnNsYXRlPFxyXG4gIFRJbnB1dCBleHRlbmRzIHN0cmluZyxcclxuICBUIGV4dGVuZHMgQ29tcGlsZWRUcmFuc2xhdGlvbjxVbmtub3duU3RyaW5nS2V5T2JqZWN0LCBzdHJpbmc+LFxyXG4gIFRNYXAgZXh0ZW5kcyBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25NYXA8VD4gPSBpbmZlckNvbXBpbGVkVHJhbnNsYXRpb25NYXA8VD4sXHJcbiAgVEtleSBleHRlbmRzIFRJbnB1dCAmIGtleW9mIFRNYXAgJiBzdHJpbmcgPSBUSW5wdXQgJiBrZXlvZiBUTWFwICYgc3RyaW5nLFxyXG4+IHtcclxuICBwcml2YXRlIHJlYWRvbmx5IHQgPSBjcmVhdGVUKGluamVjdChUcmFuc2xhdGlvblN0b3JlKSk7XHJcblxyXG4gIHJlYWRvbmx5IHRyYW5zbGF0ZSA9XHJcbiAgICBpbnB1dC5yZXF1aXJlZDxcclxuICAgICAgVE1hcFtUS2V5XSBleHRlbmRzIHZvaWRcclxuICAgICAgICA/IFRLZXkgfCBba2V5OiBUS2V5XVxyXG4gICAgICAgIDogW2tleTogVEtleSwgdmFyczogVE1hcFtUS2V5XV1cclxuICAgID4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBjb25zdCBrZXkgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICAgIGNvbnN0IHZhcnMgPSB0aGlzLnRyYW5zbGF0ZSgpO1xyXG4gICAgICByZXR1cm4gKEFycmF5LmlzQXJyYXkodmFycykgPyB2YXJzWzBdIDogdmFycykgYXMgVEtleTtcclxuICAgIH0pO1xyXG5cclxuICAgIGNvbnN0IGFyZ3MgPSBjb21wdXRlZChcclxuICAgICAgKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHZhcnMgPSB0aGlzLnRyYW5zbGF0ZSgpO1xyXG4gICAgICAgIHJldHVybiAoQXJyYXkuaXNBcnJheSh2YXJzKSA/IHZhcnNbMV0gOiB1bmRlZmluZWQpIGFzIFRNYXBbVEtleV07XHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBlcXVhbDogKGEsIGIpID0+IHtcclxuICAgICAgICAgIGlmIChhID09PSB1bmRlZmluZWQgJiYgYiA9PT0gdW5kZWZpbmVkKSByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgIGlmIChhID09PSB1bmRlZmluZWQgfHwgYiA9PT0gdW5kZWZpbmVkKSByZXR1cm4gZmFsc2U7XHJcblxyXG4gICAgICAgICAgY29uc3QgYU9iaiA9IGEgYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcclxuICAgICAgICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhhT2JqKTtcclxuICAgICAgICAgIGNvbnN0IGJPYmogPSBiIGFzIFJlY29yZDxzdHJpbmcsIHN0cmluZz47XHJcblxyXG4gICAgICAgICAgaWYgKCFrZXlzLmxlbmd0aCkgcmV0dXJuICFPYmplY3Qua2V5cyhiT2JqKS5sZW5ndGg7XHJcblxyXG4gICAgICAgICAgcmV0dXJuIGtleXMuZXZlcnkoKGtleSkgPT4gYU9ialtrZXldID09PSBiT2JqW2tleV0pO1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICApO1xyXG5cclxuICAgIGNvbnN0IHRyYW5zbGF0aW9uID0gY29tcHV0ZWQoKCkgPT4gdGhpcy50KGtleSgpLCBhcmdzKCkpKTtcclxuXHJcbiAgICBjb25zdCByZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xyXG4gICAgY29uc3QgZWwgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xyXG5cclxuICAgIGFmdGVyUmVuZGVyRWZmZWN0KHtcclxuICAgICAgd3JpdGU6ICgpID0+IHtcclxuICAgICAgICByZW5kZXJlci5zZXRQcm9wZXJ0eShlbC5uYXRpdmVFbGVtZW50LCAndGV4dENvbnRlbnQnLCB0cmFuc2xhdGlvbigpKTtcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=","import { ChangeDetectorRef, effect, inject } from '@angular/core';\nimport { createT } from './register-namespace';\nimport { TranslationStore } from './translation-store';\nexport class Translator {\n store = inject(TranslationStore);\n t = createT(this.store);\n constructor() {\n const cdr = inject(ChangeDetectorRef);\n effect(() => {\n this.store.locale();\n cdr.markForCheck();\n });\n }\n transform(key, ...args) {\n const actualArgs = args.filter((a) => typeof a === 'object');\n return this.t(key, ...actualArgs);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RyYW5zbGF0ZS9zcmMvbGliL3RyYW5zbGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXZELE1BQU0sT0FBZ0IsVUFBVTtJQUliLEtBQUssR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNqQyxDQUFDLEdBQUcsT0FBTyxDQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUUvQztRQUNFLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRXRDLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3BCLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxTQUFTLENBQ1AsR0FBTSxFQUNOLEdBQUcsSUFFMkI7UUFFOUIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FDNUIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FDWSxDQUFDO1FBRTNDLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxVQUFVLENBQUMsQ0FBQztJQUNwQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgZWZmZWN0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tcGlsZWRUcmFuc2xhdGlvbiwgaW5mZXJDb21waWxlZFRyYW5zbGF0aW9uTWFwIH0gZnJvbSAnLi9jb21waWxlJztcclxuaW1wb3J0IHsgY3JlYXRlVCB9IGZyb20gJy4vcmVnaXN0ZXItbmFtZXNwYWNlJztcclxuaW1wb3J0IHsgVW5rbm93blN0cmluZ0tleU9iamVjdCB9IGZyb20gJy4vc3RyaW5nLWtleS1vYmplY3QudHlwZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0aW9uU3RvcmUgfSBmcm9tICcuL3RyYW5zbGF0aW9uLXN0b3JlJztcclxuXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUcmFuc2xhdG9yPFxyXG4gIFQgZXh0ZW5kcyBDb21waWxlZFRyYW5zbGF0aW9uPFVua25vd25TdHJpbmdLZXlPYmplY3QsIHN0cmluZz4sXHJcbiAgVE1hcCBleHRlbmRzIGluZmVyQ29tcGlsZWRUcmFuc2xhdGlvbk1hcDxUPiA9IGluZmVyQ29tcGlsZWRUcmFuc2xhdGlvbk1hcDxUPixcclxuPiB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBzdG9yZSA9IGluamVjdChUcmFuc2xhdGlvblN0b3JlKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IHQgPSBjcmVhdGVUPFRNYXA+KHRoaXMuc3RvcmUpO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIGNvbnN0IGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XHJcblxyXG4gICAgZWZmZWN0KCgpID0+IHtcclxuICAgICAgdGhpcy5zdG9yZS5sb2NhbGUoKTtcclxuICAgICAgY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICB0cmFuc2Zvcm08SyBleHRlbmRzIGtleW9mIFRNYXAgJiBzdHJpbmc+KFxyXG4gICAga2V5OiBLLFxyXG4gICAgLi4uYXJnczogVE1hcFtLXSBleHRlbmRzIHZvaWRcclxuICAgICAgPyBbbG9jYWxlPzogc3RyaW5nXVxyXG4gICAgICA6IFtUTWFwW0tdLCBsb2NhbGU/OiBzdHJpbmddXHJcbiAgKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGFjdHVhbEFyZ3MgPSBhcmdzLmZpbHRlcihcclxuICAgICAgKGEpID0+IHR5cGVvZiBhID09PSAnb2JqZWN0JyxcclxuICAgICkgYXMgVE1hcFtLXSBleHRlbmRzIHZvaWQgPyBbXSA6IFtUTWFwW0tdXTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy50KGtleSwgLi4uYWN0dWFsQXJncyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW1zdGFjay10cmFuc2xhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy90cmFuc2xhdGUvc3JjL21tc3RhY2stdHJhbnNsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mmstack/translate",
3
- "version": "20.5.3",
3
+ "version": "20.5.4",
4
4
  "keywords": [
5
5
  "angular",
6
6
  "localize",