Sha256: 785158f1968c708467e78ec1bd6f73de7416c8a5c139461667525ee7e7a52c2e

Contents?: true

Size: 589 Bytes

Versions: 9

Compression:

Stored size: 589 Bytes

Contents

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

9 entries across 9 versions & 1 rubygems

Version Path
graphql_devise-0.12.3 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.12.2 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.12.1 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.12.0 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.11.4 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.11.3 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.11.2 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.11.1 lib/graphql_devise/mount_method/operation_sanitizer.rb
graphql_devise-0.11.0 lib/graphql_devise/mount_method/operation_sanitizer.rb