lib/graphql-preview.rb in graphql-preview-0.0.6 vs lib/graphql-preview.rb in graphql-preview-0.0.7
- old
+ new
@@ -1,12 +1,22 @@
require "graphql"
require "graphql-preview/version"
require "graphql-preview/schema_modification"
require "graphql-preview/mask"
+require "graphql-preview/member_from_path"
require "graphql-preview/extensions/enabled_previews"
module GraphQLPreview
+ def self.visible?(member, context:)
+ return true unless member.respond_to?(:metadata)
+ return true unless member.metadata[:preview_toggled_by]
+ unless context.key?(:schema_previews)
+ raise ArgumentError, "[GraphQLPreview] `:schema_previews` was not provided to the `context`"
+ end
+
+ context[:schema_previews].include?(member.metadata[:preview_toggled_by].toggled_by)
+ end
end
module GraphQL
Schema.class_eval do
# To support `graphql-ruby`'s `.define` based API