From bc06103cf9eb93bf3fc2a1b5ffdee6d867dc1448 Mon Sep 17 00:00:00 2001 From: Kamil Kisiela Date: Thu, 9 Nov 2023 09:40:03 +0100 Subject: [PATCH] Use version.compositeSchemaSDL instead of keep recomposing the schema (#3329) --- packages/services/api/src/modules/lab/resolvers.ts | 9 +++++++++ packages/services/api/src/modules/schema/resolvers.ts | 6 ++++++ 2 files changed, 15 insertions(+) diff --git a/packages/services/api/src/modules/lab/resolvers.ts b/packages/services/api/src/modules/lab/resolvers.ts index 4716400a1..a07093307 100644 --- a/packages/services/api/src/modules/lab/resolvers.ts +++ b/packages/services/api/src/modules/lab/resolvers.ts @@ -36,6 +36,15 @@ export const resolvers: LabModule.Resolvers = { return null; } + if (latestSchema.compositeSchemaSDL) { + return { + schema: latestSchema.compositeSchemaSDL, + mocks: {}, + }; + } + + // Legacy Fallback + const [ schemas, { type, externalComposition, nativeFederation, legacyRegistryModel }, diff --git a/packages/services/api/src/modules/schema/resolvers.ts b/packages/services/api/src/modules/schema/resolvers.ts index 5c530724b..1c20cbf05 100644 --- a/packages/services/api/src/modules/schema/resolvers.ts +++ b/packages/services/api/src/modules/schema/resolvers.ts @@ -935,6 +935,12 @@ export const resolvers: SchemaModule.Resolvers = { .then(r => r.supergraph); }, async sdl(version, _, { injector }) { + if (version.compositeSchemaSDL) { + return version.compositeSchemaSDL; + } + + // Legacy Fallback + const [project, organization] = await Promise.all([ injector.get(ProjectManager).getProject({ organization: version.organization,