class Kitsu::Producer

Attributes

data[RW]

Public Class Methods

find(studio) click to toggle source
# File lib/kitsu/producer.rb, line 49
def self.find(studio)
  parsed = API.get("producers?filter[slug]=#{studio}")
  self.new(parsed['data'].first)
end
new(data) click to toggle source
# File lib/kitsu/producer.rb, line 6
def initialize(data)
  @data = data
end

Public Instance Methods

anime(**filters) click to toggle source
# File lib/kitsu/producer.rb, line 12
def anime(**filters)
  anime = anime_related.map do |parsed|
    Kitsu::Anime.new(parsed)
  end
  anime.select do |a|
    filters.all? do |key, value|
      a.data['attributes'][key.to_s] == value

    end
  end
end
library_entries() click to toggle source
# File lib/kitsu/producer.rb, line 33
def library_entries
  parsed = API.get(@data['relationships']['animeProductions']['links']['related'])

  library_entries = [parsed]
  loop do
    parsed = API.get(parsed['links']['next'])
    library_entries << parsed
    break unless parsed['links'].key? 'next'
  end

  library_entries.flatten.map do |producer|
    Kitsu::LibraryEntry.new(producer)
  end
end