Sha256: c51f46e033d77d426a3072cbc035356bef0884c3c740020d067580a06b0f5ce2
Contents?: true
Size: 1.18 KB
Versions: 13
Compression:
Stored size: 1.18 KB
Contents
module Eco::API::UseCases::GraphQL::Helpers::Location::Command class Result attr_reader :input, :result def initialize(input, result) @input = input @result = result end def command input.keys.first end def command_input_data input[command] end def node_id command_input_data[:nodeId] end def pending? !result || !success? end def applied? !pending? end def success? result&.ok end def error result&.error end def error? !!error end def error_msg return nil unless error? msg = '' msg << "(#{command} '#{node_id}') #{error.message}\n" || '' return msg if error.validationErrors.empty? msg << " • " + error.validationErrors.map do |err| err.message end.join("\n • ") msg end def command_result result&.command end def command_id return nil unless result command_result["id"] end def as_json { "request" => input, "response" => result.doc } end end end
Version data entries
13 entries across 13 versions & 1 rubygems