Sha256: 10b610f6f5cca4de5f9b9315d0ac9b894480b758c8f71796a2d8bb038a02b90a

Contents?: true

Size: 673 Bytes

Versions: 1

Compression:

Stored size: 673 Bytes

Contents

# frozen_string_literal: true

module Ibrain
  module Types
    class BaseApiField < GraphQL::Schema::Field
      argument_class ::Ibrain::Types::BaseArgument

      def initialize(*args, session_required: true, roles: nil, active_required: true, **kwargs, &block)
        super(*args, camelize: false, **kwargs, &block)

        extension(Ibrain::Extentions::SessionRequired, session_required: session_required) if session_required
        extension(Ibrain::Extentions::Roles, roles: roles) if roles

        if ::Ibrain.config.is_activated_account_require && active_required
          extension(Ibrain::Extentions::ActiveRequired)
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ibrain-core-0.5.7 app/graphql/ibrain/types/base_api_field.rb