Sha256: 9deb1d0e251dad328f518a17f70635c29127e6145d22104d22c6bbd7b5f8134b

Contents?: true

Size: 620 Bytes

Versions: 13

Compression:

Stored size: 620 Bytes

Contents

# frozen_string_literal: true

module GraphqlDevise
  module MountMethod
    class OperationSanitizer
      def self.call(default:, only:, skipped:)
        new(
          default: default,
          only:    only,
          skipped: skipped
        ).call
      end

      def initialize(default:, only:, skipped:)
        @default = default
        @only    = only
        @skipped = skipped
      end

      def call
        if @only.present?
          @default.slice(*@only)
        elsif @skipped.present?
          @default.except(*@skipped)
        else
          @default
        end
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
graphql_devise-0.16.0 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.15.0 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.14.3 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.14.2 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.14.1 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.14.0 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.13.6 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.13.5 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.13.4 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.13.3 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.13.2 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.13.1 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.13.0 lib/graphql_devise/mount_method/operation_sanitizer.rb