Sha256: 61d3161261213f1eaddb4c1faf6b153314899db846e8d3b36e168d171256cda7
Contents?: true
Size: 599 Bytes
Versions: 6
Compression:
Stored size: 599 Bytes
Contents
# frozen_string_literal: true module Pinata class Collection attr_reader :data, :next_page_token def self.from_response(response, key:, type:) body = response.body new( data: body["data"][key].map { |attrs| type.new(attrs) }, next_page_token: body.dig("data", "next_page_token") ) end def initialize(data:, next_page_token:) @data = data @next_page_token = (next_page_token.nil? || next_page_token.empty?) ? nil : next_page_token end def empty? data.empty? end def sample data.sample end end end
Version data entries
6 entries across 6 versions & 1 rubygems