Sha256: 2419df23794fa73591d193e59d56093be8467539cf672b657383550c5cc6eb13
Contents?: true
Size: 747 Bytes
Versions: 5
Compression:
Stored size: 747 Bytes
Contents
# frozen_string_literal: true module ActionTracker class CollectionProxy include Enumerable include ActionTracker::Pagination attr_reader :model_name def initialize(response, model_name) @response = response @model_name = model_name end def code @response.code end def each raw_data.each do |record| yield record_klass.new(record) end end def raw_data @response.dig(model_name.plural) end def entry_name(options = {}) model_name.singular.pluralize(options[:count]) end private def meta OpenStruct.new(@response.dig('meta')) end def record_klass model_name.instance_variable_get(:@klass) end end end
Version data entries
5 entries across 5 versions & 1 rubygems