Sha256: 1d7bb3b4c035788b68f41350dc53e0d45ae2a89fe955e7e8abc32b991f6504ca

Contents?: true

Size: 733 Bytes

Versions: 7

Compression:

Stored size: 733 Bytes

Contents

module Ecoportal
  module API
    class GraphQL
      module Logic
        class Payload < Ecoportal::API::GraphQL::Base::Model
          class GenericItem
            def initialize(*_args, **_kargs)
              raise "Missuse error. You should define a item_class for a class that inherits from GraphqlPayload class."
            end
          end

          passthrough :clientMutationId

          class_resolver :item_class, GenericItem
          embeds_one :item, klass: :item_class
          embeds_one :errors, klass: Ecoportal::API::GraphQL::Error::ValidationErrors, nullable: true

          def success?
            !errors || errors.empty?
          end
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
ecoportal-api-graphql-0.4.3 lib/ecoportal/api/graphql/logic/payload.rb
ecoportal-api-graphql-0.4.2 lib/ecoportal/api/graphql/logic/payload.rb
ecoportal-api-graphql-0.4.1 lib/ecoportal/api/graphql/logic/payload.rb
ecoportal-api-graphql-0.4.0 lib/ecoportal/api/graphql/logic/payload.rb
ecoportal-api-graphql-0.3.16 lib/ecoportal/api/graphql/logic/payload.rb
ecoportal-api-graphql-0.3.15 lib/ecoportal/api/graphql/logic/payload.rb
ecoportal-api-graphql-0.3.14 lib/ecoportal/api/graphql/logic/payload.rb