From ee0c7dad95d10f941c019d9b3f6f5e5eefa98073 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20Lyngs=C3=B8?= Date: Thu, 16 Nov 2023 14:03:23 +0100 Subject: [PATCH] append more properties to add base url for --- .../server-extension-registrator.controller.ts | 14 +++++++++++--- .../package/repository/package.repository.ts | 13 +++++++++++-- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/apps/backoffice/server-extension-registrator.controller.ts b/src/Umbraco.Web.UI.Client/src/apps/backoffice/server-extension-registrator.controller.ts index 6da37139bd..da47cd2df2 100644 --- a/src/Umbraco.Web.UI.Client/src/apps/backoffice/server-extension-registrator.controller.ts +++ b/src/Umbraco.Web.UI.Client/src/apps/backoffice/server-extension-registrator.controller.ts @@ -23,7 +23,7 @@ export class UmbServerExtensionRegistrator extends UmbBaseController { This code is copy pasted from the package repository. We probably don't need this is the package repository anymore. */ - const { data: packages } = await tryExecuteAndNotify(this._host, PackageResource.getPackageManifest()); + const { data: packages } = await tryExecuteAndNotify(this, PackageResource.getPackageManifest()); if (packages) { // Append packages to the store but only if they have a name @@ -39,13 +39,21 @@ export class UmbServerExtensionRegistrator extends UmbBaseController { * Crude check to see if extension is of type "js" since it is safe to assume we do not * need to load any other types of extensions in the backoffice (we need a js file to load) */ - + // Add API base url if the js path is relative if ('js' in e && typeof e.js === 'string' && !e.js.startsWith('http')) { e.js = `${this.#apiBaseUrl}${e.js}`; } - // TODO: Niels: I assume we also need to do this for, element and api? + // Add API base url if the element path is relative + if ('element' in e && typeof e.element === 'string' && !e.element.startsWith('http')) { + e.element = `${this.#apiBaseUrl}${e.element}`; + } + + // Add API base url if the element path api relative + if ('api' in e && typeof e.api === 'string' && !e.api.startsWith('http')) { + e.api = `${this.#apiBaseUrl}${e.api}`; + } extensions.push(e); } diff --git a/src/Umbraco.Web.UI.Client/src/packages/packages/package/repository/package.repository.ts b/src/Umbraco.Web.UI.Client/src/packages/packages/package/repository/package.repository.ts index 9335f81662..09b237a020 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/packages/package/repository/package.repository.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/packages/package/repository/package.repository.ts @@ -54,11 +54,21 @@ export class UmbPackageRepository extends UmbBaseController implements UmbApi { * Crude check to see if extension is of type "js" since it is safe to assume we do not * need to load any other types of extensions in the backoffice (we need a js file to load) */ - // Add API base url if the js path is relative + // Add API base url if the js path is relative if ('js' in e && typeof e.js === 'string' && !e.js.startsWith('http')) { e.js = `${this.#apiBaseUrl}${e.js}`; } + // Add API base url if the element path is relative + if ('element' in e && typeof e.element === 'string' && !e.element.startsWith('http')) { + e.element = `${this.#apiBaseUrl}${e.element}`; + } + + // Add API base url if the element path api relative + if ('api' in e && typeof e.api === 'string' && !e.api.startsWith('http')) { + e.api = `${this.#apiBaseUrl}${e.api}`; + } + extensions.push(e); } }); @@ -106,5 +116,4 @@ export class UmbPackageRepository extends UmbBaseController implements UmbApi { await this.#init; return this.#packageStore!.migrations; } - }