File tree Expand file tree Collapse file tree 1 file changed +17
-6
lines changed Expand file tree Collapse file tree 1 file changed +17
-6
lines changed Original file line number Diff line number Diff line change @@ -230,6 +230,22 @@ export function getArgumentValues(
230
230
return coercedValues ;
231
231
}
232
232
233
+ /**
234
+ * If the directive does not exist on the node, returns undefined otherwise returns a DirectiveNode.
235
+ */
236
+ export function getDirective (
237
+ directiveDef : GraphQLDirective ,
238
+ node : { + directives ?: $ReadOnlyArray < DirectiveNode > , ... } ,
239
+ ) : void | DirectiveNode {
240
+ return (
241
+ node . directives &&
242
+ find (
243
+ node . directives ,
244
+ directive => directive . name . value === directiveDef . name ,
245
+ )
246
+ ) ;
247
+ }
248
+
233
249
/**
234
250
* Prepares an object map of argument values given a directive definition
235
251
* and a AST node which may contain directives. Optionally also accepts a map
@@ -246,12 +262,7 @@ export function getDirectiveValues(
246
262
node : { + directives ?: $ReadOnlyArray < DirectiveNode > , ... } ,
247
263
variableValues ?: ?ObjMap < mixed > ,
248
264
) : void | { [ argument : string ] : mixed , ... } {
249
- const directiveNode =
250
- node . directives &&
251
- find (
252
- node . directives ,
253
- directive => directive . name . value === directiveDef . name ,
254
- ) ;
265
+ const directiveNode = getDirective ( directiveDef , node ) ;
255
266
256
267
if ( directiveNode ) {
257
268
return getArgumentValues ( directiveDef , directiveNode , variableValues ) ;
You can’t perform that action at this time.
0 commit comments