Skip to content

Commit 36d0ec8

Browse files
kschoi-wevsinnerr0
authored andcommitted
Add supports for deprecated
Signed-off-by: kyongsikC <[email protected]>
1 parent fed12e8 commit 36d0ec8

File tree

3 files changed

+7
-1
lines changed

3 files changed

+7
-1
lines changed

packages/openapi-to-graphql/src/index.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -951,6 +951,8 @@ function getFieldForOperation<TSource, TContext, TArgs extends object>(
951951
fetch
952952
})
953953

954+
const deprecationReason = operation.operation.deprecated ? 'No longer supported' : undefined
955+
954956
// Get resolver and subscribe function for Subscription fields
955957
if (operation.operationType === GraphQLOperationType.Subscription) {
956958
const responseSchemaName = operation.responseDefinition
@@ -977,6 +979,7 @@ function getFieldForOperation<TSource, TContext, TArgs extends object>(
977979
resolve,
978980
subscribe,
979981
args,
982+
deprecationReason,
980983
description: operation.description
981984
}
982985

@@ -996,6 +999,7 @@ function getFieldForOperation<TSource, TContext, TArgs extends object>(
996999
type,
9971000
resolve,
9981001
args,
1002+
deprecationReason,
9991003
description: operation.description
10001004
}
10011005
}

packages/openapi-to-graphql/src/schema_builder.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -709,7 +709,7 @@ function createFields<TSource, TContext, TArgs extends object>({
709709
type: requiredProperty
710710
? new GraphQLNonNull(objectType as GraphQLOutputType)
711711
: (objectType as GraphQLOutputType),
712-
712+
deprecationReason: fieldSchema?.deprecated ? 'No longer supported' : undefined,
713713
description:
714714
typeof fieldSchema === 'object' ? fieldSchema.description : null
715715
}
@@ -1305,6 +1305,7 @@ export function getArgs<TSource, TContext, TArgs extends object>({
13051305

13061306
args[saneName] = {
13071307
type: paramRequired ? new GraphQLNonNull(type) : type,
1308+
deprecationReason: parameter.deprecated ? 'No longer supported' : undefined,
13081309
description: parameter.description // Might be undefined
13091310
}
13101311
})

packages/openapi-to-graphql/src/types/oas3.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ export type SchemaObject = {
3131
anyOf?: (SchemaObject | ReferenceObject)[]
3232
oneOf?: (SchemaObject | ReferenceObject)[]
3333
not?: (SchemaObject | ReferenceObject)[]
34+
deprecated?: boolean
3435
}
3536

3637
export type ReferenceObject = {

0 commit comments

Comments
 (0)