Module: MLBStatsAPI::Teams

Included in:
Client
Defined in:
lib/mlb_stats_api/teams.rb

Instance Method Summary collapse

Instance Method Details

#affiliates(team_id, season: nil) ⇒ Object



29
# File 'lib/mlb_stats_api/teams.rb', line 29

def affiliates(team_id, season: nil) = get("/teams/#{team_id}/affiliates", season:)

#coaches(team_id, date: nil) ⇒ Object



31
# File 'lib/mlb_stats_api/teams.rb', line 31

def coaches(team_id, date: nil) = get("/teams/#{team_id}/coaches", date: (date || Date.today).strftime('%m/%d/%Y'))

#roster(team_id, type:, date: nil) ⇒ Object

def leaders(team_id) = get(“/teams/#team_id/leaders”)



35
# File 'lib/mlb_stats_api/teams.rb', line 35

def roster(team_id, type:, date: nil) = get("/teams/#{team_id}/roster/#{type}", date: date.strftime('%m/%d/%Y'))

#team(team_id) ⇒ Object



5
6
7
8
9
10
11
# File 'lib/mlb_stats_api/teams.rb', line 5

def team(team_id)
  data = load("mlb_stats_api:teams:#{team_id}") do
    get("/teams/#{team_id}", hydrate: 'venue(timezone)').dig('teams', 0)
  end

  MLBStatsAPI::Team.new data
end

#teams(*team_ids) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/mlb_stats_api/teams.rb', line 13

def teams(*team_ids)
  teams = ids = []

  team_ids.each do |team_id|
    value = @cache.load("mlb_stats_api:teams:#{team_id}")

    if value
      teams << MLBStatsAPI::Team.new(value)
    else
      ids << team_id
    end
  end

  teams.concat load_teams_by_id(ids)
end