Sha256: 931ba741fa470b430d814be7092545b4ab83c27d6cf25d5ddf808e6f74250e9b

Contents?: true

Size: 923 Bytes

Versions: 12

Compression:

Stored size: 923 Bytes

Contents

# frozen_string_literal: true

require 'uploadcare/entity/file'
require 'uploadcare/entity/decorator/paginator'
require 'dry/monads'
require 'api_struct'

module Uploadcare
  module Entity
    # This serializer returns lists of files
    #
    # This is a paginated list, so all pagination methods apply
    # @see Uploadcare::Entity::Decorator::Paginator
    class FileList < ApiStruct::Entity
      include Uploadcare::Entity::Decorator::Paginator
      client_service Client::FileListClient

      attr_entity :next, :previous, :total, :per_page

      has_entities :results, as: Uploadcare::Entity::File
      has_entities :result, as: Uploadcare::Entity::File

      # alias for result/results, depending on which API this FileList was initialized from
      # @return [Array] of [Uploadcare::Entity::File]
      def files
        results
      rescue ApiStruct::EntityError
        result
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
uploadcare-ruby-4.4.3 lib/uploadcare/entity/file_list.rb
uploadcare-ruby-4.4.2 lib/uploadcare/entity/file_list.rb
uploadcare-ruby-4.4.1 lib/uploadcare/entity/file_list.rb
uploadcare-ruby-4.4.0 lib/uploadcare/entity/file_list.rb
uploadcare-ruby-4.3.6 lib/uploadcare/entity/file_list.rb
uploadcare-ruby-4.3.5 lib/uploadcare/entity/file_list.rb
uploadcare-ruby-4.3.4 lib/uploadcare/entity/file_list.rb
uploadcare-ruby-4.3.3 lib/uploadcare/entity/file_list.rb
uploadcare-ruby-4.3.2 lib/uploadcare/entity/file_list.rb
uploadcare-ruby-4.3.1 lib/uploadcare/entity/file_list.rb
uploadcare-ruby-4.3.0 lib/uploadcare/entity/file_list.rb
uploadcare-ruby-4.2.0 lib/uploadcare/entity/file_list.rb