fix: only allow one signal client instance at once

Signed-off-by: Heikki Hellgren <heikki.hellgren@op.fi>
This commit is contained in:
Heikki Hellgren
2023-12-08 14:38:34 +02:00
parent 6a730a4310
commit ec8c5fcb70
+11 -5
View File
@@ -22,6 +22,8 @@ import {
import { signalApiRef } from '@backstage/plugin-signals-react';
import { SignalClient } from './api/SignalClient';
let clientInstance: SignalClient | undefined = undefined;
/** @public */
export const signalsPlugin = createPlugin({
id: 'signals',
@@ -32,11 +34,15 @@ export const signalsPlugin = createPlugin({
identity: identityApiRef,
discoveryApi: discoveryApiRef,
},
factory: ({ identity, discoveryApi }) =>
SignalClient.create({
identity,
discoveryApi,
}),
factory: ({ identity, discoveryApi }) => {
if (!clientInstance) {
clientInstance = SignalClient.create({
identity,
discoveryApi,
});
}
return clientInstance;
},
}),
],
});