From 9dacb366a115a83a2dda851d61e3a34d0da47244 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Fri, 10 Sep 2021 16:53:30 +0200 Subject: [PATCH] version-bridge: remove setGlobalSingleton Signed-off-by: Patrik Oldsberg --- packages/version-bridge/src/lib/VersionedContext.ts | 6 ++++-- packages/version-bridge/src/lib/globalObject.ts | 11 ----------- packages/version-bridge/src/lib/index.ts | 8 ++------ 3 files changed, 6 insertions(+), 19 deletions(-) diff --git a/packages/version-bridge/src/lib/VersionedContext.ts b/packages/version-bridge/src/lib/VersionedContext.ts index 310e091d0b..3cce599d11 100644 --- a/packages/version-bridge/src/lib/VersionedContext.ts +++ b/packages/version-bridge/src/lib/VersionedContext.ts @@ -15,7 +15,7 @@ */ import { createContext, useContext, Context } from 'react'; -import { getGlobalSingleton, setGlobalSingleton } from './globalObject'; +import { getGlobalSingleton } from './globalObject'; import { createVersionedValueMap, VersionedValue } from './VersionedValue'; export function useVersionedContext< @@ -33,7 +33,9 @@ export function useVersionedContext< export function createVersionedContextForTesting(key: string) { return { set(versions: { [version in number]: unknown }) { - setGlobalSingleton(key, createContext(createVersionedValueMap(versions))); + (globalThis as any)[`__@backstage/${key}__`] = createContext( + createVersionedValueMap(versions), + ); }, reset() { delete (globalThis as any)[`__@backstage/${key}__`]; diff --git a/packages/version-bridge/src/lib/globalObject.ts b/packages/version-bridge/src/lib/globalObject.ts index 7a400148fb..280885f768 100644 --- a/packages/version-bridge/src/lib/globalObject.ts +++ b/packages/version-bridge/src/lib/globalObject.ts @@ -30,17 +30,6 @@ const globalObject = getGlobalObject(); const makeKey = (id: string) => `__@backstage/${id}__`; -/** - * Used to provide a global singleton value, failing if it is already set. - */ -export function setGlobalSingleton(id: string, value: unknown): void { - const key = makeKey(id); - if (key in globalObject) { - throw new Error(`Global ${id} is already set`); - } - globalObject[key] = value; -} - /** * Used to access a global singleton value, failing if it is not already set. */ diff --git a/packages/version-bridge/src/lib/index.ts b/packages/version-bridge/src/lib/index.ts index 8951694428..08a9261ee9 100644 --- a/packages/version-bridge/src/lib/index.ts +++ b/packages/version-bridge/src/lib/index.ts @@ -14,14 +14,10 @@ * limitations under the License. */ -export { - getGlobalSingleton, - getOrCreateGlobalSingleton, - setGlobalSingleton, -} from './globalObject'; +export { getGlobalSingleton, getOrCreateGlobalSingleton } from './globalObject'; export { createVersionedContextForTesting, useVersionedContext, -} from './versionedValues'; +} from './VersionedContext'; export { createVersionedValueMap } from './VersionedValue'; export type { VersionedValue } from './VersionedValue';