From e31e31bbe8f99048bb8cf57722345f9dd93eb18f Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Mon, 16 Jan 2023 14:50:24 +0100 Subject: [PATCH] backend-plugin-api: add $$type at runtime for SharedBackendEnvironment Signed-off-by: Patrik Oldsberg --- .../src/wiring/createSharedEnvironment.test.ts | 1 + .../src/wiring/createSharedEnvironment.ts | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/backend-plugin-api/src/wiring/createSharedEnvironment.test.ts b/packages/backend-plugin-api/src/wiring/createSharedEnvironment.test.ts index 0f15941a45..ec2cf1fe49 100644 --- a/packages/backend-plugin-api/src/wiring/createSharedEnvironment.test.ts +++ b/packages/backend-plugin-api/src/wiring/createSharedEnvironment.test.ts @@ -48,6 +48,7 @@ describe('createSharedEnvironment', () => { expect(env).toBeDefined(); const internalEnv = env() as unknown as InternalSharedBackendEnvironment; expect(internalEnv).toEqual({ + $$type: 'SharedBackendEnvironment', version: 'v1', services: undefined, }); diff --git a/packages/backend-plugin-api/src/wiring/createSharedEnvironment.ts b/packages/backend-plugin-api/src/wiring/createSharedEnvironment.ts index a353c01b9d..3258188772 100644 --- a/packages/backend-plugin-api/src/wiring/createSharedEnvironment.ts +++ b/packages/backend-plugin-api/src/wiring/createSharedEnvironment.ts @@ -79,6 +79,12 @@ export function createSharedEnvironment< ); } - return { version: 'v1', services } as unknown as SharedBackendEnvironment; + // Here to ensure type safety in this internal implementation. + const env: SharedBackendEnvironment & InternalSharedBackendEnvironment = { + $$type: 'SharedBackendEnvironment', + version: 'v1', + services, + }; + return env; }; }