From 88ea431c60a9cf9f8ebdeaba2896efb94504477a Mon Sep 17 00:00:00 2001 From: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com> Date: Tue, 25 Jul 2023 13:54:30 +0200 Subject: [PATCH] use extension helpers to load translation extensions --- .../registry/translation.registry.ts | 23 +++++-------------- 1 file changed, 6 insertions(+), 17 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/libs/localization-api/registry/translation.registry.ts b/src/Umbraco.Web.UI.Client/src/libs/localization-api/registry/translation.registry.ts index 0966b9193b..c5d76e949e 100644 --- a/src/Umbraco.Web.UI.Client/src/libs/localization-api/registry/translation.registry.ts +++ b/src/Umbraco.Web.UI.Client/src/libs/localization-api/registry/translation.registry.ts @@ -1,3 +1,4 @@ +import { hasDefaultExport, loadExtension } from '@umbraco-cms/backoffice/extension-api'; import { UmbBackofficeExtensionRegistry } from '@umbraco-cms/backoffice/extension-registry'; import { ReplaySubject } from '@umbraco-cms/backoffice/external/rxjs'; @@ -31,27 +32,15 @@ export class UmbTranslationRegistry { for (const [dictionaryName, dictionary] of Object.entries(extension.meta.translations)) { this.#addOrUpdateDictionary(dictionaryName, dictionary); } + return; } // If extension contains a js file, load it and add the default dictionary to the inner dictionary. - if (extension.loader) { - const loader = await extension.loader(); - if (loader.default) { - for (const [dictionaryName, dictionary] of Object.entries(loader.default)) { - this.#addOrUpdateDictionary(dictionaryName, dictionary); - } - } - } + const loadedExtension = await loadExtension(extension); - // If extension contains a json file, load it and add the default dictionary to the inner dictionary. - if (extension.js) { - const js = await import(extension.js); - if (js.default) { - for (const [dictionaryName, dictionary] of Object.entries(js.default)) { - if (dictionary && typeof dictionary === 'object') { - this.#addOrUpdateDictionary(dictionaryName, dictionary as Record); - } - } + if (loadedExtension && hasDefaultExport(loadedExtension)) { + for (const [dictionaryName, dictionary] of Object.entries(loadedExtension.default)) { + this.#addOrUpdateDictionary(dictionaryName, dictionary); } } })