From 1984fba421e40607ac174b50dd51349292f28dc1 Mon Sep 17 00:00:00 2001 From: Marek Libra Date: Fri, 19 Jan 2024 08:22:26 +0100 Subject: [PATCH] fix(notifications): use baseUrl from configuration --- plugins/notifications/src/api/NotificationsApiImpl.ts | 7 ++++++- plugins/notifications/src/plugin.ts | 7 ++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/plugins/notifications/src/api/NotificationsApiImpl.ts b/plugins/notifications/src/api/NotificationsApiImpl.ts index 15e9560ed5..971e8b80c2 100644 --- a/plugins/notifications/src/api/NotificationsApiImpl.ts +++ b/plugins/notifications/src/api/NotificationsApiImpl.ts @@ -1,4 +1,4 @@ -import { FetchApi } from '@backstage/core-plugin-api'; +import { ConfigApi, FetchApi } from '@backstage/core-plugin-api'; import { Configuration, @@ -15,14 +15,19 @@ import { export type NotificationsApiOptions = { fetchApi: FetchApi; + configApi: ConfigApi; }; export class NotificationsApiImpl implements NotificationsApi { private readonly backendRestApi: NotificationsOpenApi; constructor(options: NotificationsApiOptions) { + const backendUrl = options.configApi.getString('backend.baseUrl'); + const basePath = `${backendUrl}/api/notifications`; + const configuration = new Configuration({ fetchApi: options.fetchApi.fetch, + basePath, }); this.backendRestApi = new NotificationsOpenApi(configuration); } diff --git a/plugins/notifications/src/plugin.ts b/plugins/notifications/src/plugin.ts index d9fde98ed7..9a9560bbaf 100644 --- a/plugins/notifications/src/plugin.ts +++ b/plugins/notifications/src/plugin.ts @@ -1,9 +1,9 @@ import { + configApiRef, createApiFactory, createPlugin, createRoutableExtension, fetchApiRef, - // identityApiRef, } from '@backstage/core-plugin-api'; import { NotificationsApiImpl, notificationsApiRef } from './api'; @@ -17,10 +17,11 @@ export const notificationsPlugin = createPlugin({ apis: [ createApiFactory({ api: notificationsApiRef, - deps: { fetchApi: fetchApiRef }, - factory({ fetchApi }) { + deps: { fetchApi: fetchApiRef, configApi: configApiRef }, + factory({ fetchApi, configApi }) { return new NotificationsApiImpl({ fetchApi, + configApi, }); }, }),