# File lib/paper_trail/version_concern.rb, line 108
      def where_object(args = {})
        raise ArgumentError, 'expected to receive a Hash' unless args.is_a?(Hash)

        if columns_hash['object'].type == :jsonb
          where("object @> ?", args.to_json)
        elsif columns_hash['object'].type == :json
          predicates = []
          values = []
          args.each do |field, value|
            predicates.push "object->>? = ?"
            values.concat([field, value.to_s])
          end
          sql = predicates.join(" and ")
          where(sql, *values)
        else
          arel_field = arel_table[:object]
          where_conditions = args.map { |field, value|
            PaperTrail.serializer.where_object_condition(arel_field, field, value)
          }.reduce { |a, e| a.and(e) }
          where(where_conditions)
        end
      end