Sha256: 06f99b9c625380c1a7c44b21116b2ae1e37be7071e174ec1ac04128e4abc0d19
Contents?: true
Size: 834 Bytes
Versions: 10
Compression:
Stored size: 834 Bytes
Contents
# frozen_string_literal: true module LedgerSync module QuickBooksOnline module Serialization module Type class SerializeTransactionReferenceType < LedgerSync::Type::Value def cast_value(value:) return if value.nil? raise "List expected. Given: #{value.class.name}" unless value.is_a?(Array) unless value.all?(LedgerSync::Resource) raise "Resources expected. Given: #{value.map { |i| i.class.name }.join(', ')}" end value.map do |resource| { 'TxnId' => resource.ledger_id, 'TxnType' => Client.ledger_resource_type_for( resource_class: resource.class ).classify } end end end end end end end
Version data entries
10 entries across 10 versions & 1 rubygems