diff --git a/src/core/server/graph/resolvers/StorySettings.ts b/src/core/server/graph/resolvers/StorySettings.ts index 251c1028a..8e88a641c 100644 --- a/src/core/server/graph/resolvers/StorySettings.ts +++ b/src/core/server/graph/resolvers/StorySettings.ts @@ -1,6 +1,8 @@ import * as story from "coral-server/models/story"; +import { hasFeatureFlag } from "coral-server/models/tenant"; import { + GQLFEATURE_FLAG, GQLSTORY_MODE, GQLStorySettingsTypeResolver, } from "../schema/__generated__/types"; @@ -21,11 +23,17 @@ export const StorySettings: GQLStorySettingsTypeResolver< enabled: false, }; }, - mode: s => { + // FEATURE_FLAG:ENABLE_QA + mode: (s, input, ctx) => { if (s.mode) { return s.mode; } + // FEATURE_FLAG:DEFAULT_QA_STORY_MODE + if (hasFeatureFlag(ctx.tenant, GQLFEATURE_FLAG.DEFAULT_QA_STORY_MODE)) { + return GQLSTORY_MODE.QA; + } + return GQLSTORY_MODE.COMMENTS; }, experts: (s, input, ctx) => { diff --git a/src/core/server/graph/schema/schema.graphql b/src/core/server/graph/schema/schema.graphql index 2b63a8675..d8038beb0 100644 --- a/src/core/server/graph/schema/schema.graphql +++ b/src/core/server/graph/schema/schema.graphql @@ -353,6 +353,11 @@ enum FEATURE_FLAG { ENABLE_QA when enabled will turn off Q&A features client side. """ ENABLE_QA + + """ + DEFAULT_QA_STORY_MODE will set the story mode to QA by default. + """ + DEFAULT_QA_STORY_MODE } # The moderation mode of the site.