diff options
Diffstat (limited to 'app/graphql/resolvers/base_resolver.rb')
-rw-r--r-- | app/graphql/resolvers/base_resolver.rb | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/app/graphql/resolvers/base_resolver.rb b/app/graphql/resolvers/base_resolver.rb index 6f847221f1b..17db91a685f 100644 --- a/app/graphql/resolvers/base_resolver.rb +++ b/app/graphql/resolvers/base_resolver.rb @@ -11,26 +11,25 @@ module Resolvers @requires_argument = true end + def self.requires_argument? + !!@requires_argument + end + def self.calls_gitaly! @calls_gitaly = true end + def self.calls_gitaly? + !!@calls_gitaly + end + # This is a flag to allow us to use `complexity_multiplier` to compute complexity for connection # fields(see BaseField#connection_complexity_multiplier) in resolvers that do external connection pagination, - # thus disabling the default `connection` option(see self.field_options method above). + # thus disabling the default `connection` option. def self.calculate_ext_conn_complexity false end - def self.field_options - extra_options = { - requires_argument: @requires_argument, - calls_gitaly: @calls_gitaly - }.compact - - super.merge(extra_options) - end - def self.singular_type return unless type @@ -63,8 +62,13 @@ module Resolvers type parent.singular_type, null: true def ready?(**args) - ready, early_return = super - [ready, select_result(early_return)] + value = super + + if value.is_a?(Array) + [value[0], select_result(value[1])] + else + value + end end def resolve(**args) |