sleeper_rb 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +15 -0
- data/.rspec +3 -0
- data/.rubocop.yml +18 -0
- data/.travis.yml +8 -0
- data/CHANGELOG.md +9 -0
- data/CODE_OF_CONDUCT.md +84 -0
- data/Gemfile +14 -0
- data/Gemfile.lock +91 -0
- data/LICENSE.txt +21 -0
- data/README.md +92 -0
- data/Rakefile +24 -0
- data/bin/console +15 -0
- data/bin/setup +8 -0
- data/docs/SleeperRb/BadRequest.html +106 -0
- data/docs/SleeperRb/Client.html +354 -0
- data/docs/SleeperRb/NotFound.html +106 -0
- data/docs/SleeperRb/RateLimitExceeded.html +106 -0
- data/docs/SleeperRb/Resources/Avatar.html +231 -0
- data/docs/SleeperRb/Resources/Draft/Metadata.html +419 -0
- data/docs/SleeperRb/Resources/Draft/Pick/Metadata.html +346 -0
- data/docs/SleeperRb/Resources/Draft/Pick.html +430 -0
- data/docs/SleeperRb/Resources/Draft/PickArray.html +108 -0
- data/docs/SleeperRb/Resources/Draft/Settings.html +361 -0
- data/docs/SleeperRb/Resources/Draft.html +560 -0
- data/docs/SleeperRb/Resources/DraftArray.html +198 -0
- data/docs/SleeperRb/Resources/League/Matchup.html +349 -0
- data/docs/SleeperRb/Resources/League/MatchupArray.html +108 -0
- data/docs/SleeperRb/Resources/League/Roster/Settings.html +415 -0
- data/docs/SleeperRb/Resources/League/Roster.html +409 -0
- data/docs/SleeperRb/Resources/League/RosterArray.html +108 -0
- data/docs/SleeperRb/Resources/League/ScoringSettings.html +808 -0
- data/docs/SleeperRb/Resources/League/Settings.html +648 -0
- data/docs/SleeperRb/Resources/League/Transaction/Metadata.html +119 -0
- data/docs/SleeperRb/Resources/League/Transaction/Settings.html +140 -0
- data/docs/SleeperRb/Resources/League/Transaction/WaiverBudget.html +292 -0
- data/docs/SleeperRb/Resources/League/Transaction.html +679 -0
- data/docs/SleeperRb/Resources/League/TransactionArray.html +272 -0
- data/docs/SleeperRb/Resources/League.html +688 -0
- data/docs/SleeperRb/Resources/LeagueArray.html +272 -0
- data/docs/SleeperRb/Resources/NflState.html +252 -0
- data/docs/SleeperRb/Resources/Player.html +860 -0
- data/docs/SleeperRb/Resources/PlayerArray.html +108 -0
- data/docs/SleeperRb/Resources/TradedPick.html +345 -0
- data/docs/SleeperRb/Resources/TradedPickArray.html +108 -0
- data/docs/SleeperRb/Resources/User/Metadata.html +140 -0
- data/docs/SleeperRb/Resources/User.html +406 -0
- data/docs/SleeperRb/Resources/UserArray.html +108 -0
- data/docs/SleeperRb/Resources.html +99 -0
- data/docs/SleeperRb/ServerError.html +106 -0
- data/docs/SleeperRb/Utilities/ArrayProxy.html +184 -0
- data/docs/SleeperRb/Utilities/Cache/ClassMethods.html +326 -0
- data/docs/SleeperRb/Utilities/Cache.html +253 -0
- data/docs/SleeperRb/Utilities/Request.html +120 -0
- data/docs/SleeperRb/Utilities/RosterPosition.html +239 -0
- data/docs/SleeperRb/Utilities.html +99 -0
- data/docs/SleeperRb.html +113 -0
- data/docs/created.rid +38 -0
- data/docs/css/fonts.css +167 -0
- data/docs/css/rdoc.css +619 -0
- data/docs/fonts/Lato-Light.ttf +0 -0
- data/docs/fonts/Lato-LightItalic.ttf +0 -0
- data/docs/fonts/Lato-Regular.ttf +0 -0
- data/docs/fonts/Lato-RegularItalic.ttf +0 -0
- data/docs/fonts/SourceCodePro-Bold.ttf +0 -0
- data/docs/fonts/SourceCodePro-Regular.ttf +0 -0
- data/docs/images/add.png +0 -0
- data/docs/images/arrow_up.png +0 -0
- data/docs/images/brick.png +0 -0
- data/docs/images/brick_link.png +0 -0
- data/docs/images/bug.png +0 -0
- data/docs/images/bullet_black.png +0 -0
- data/docs/images/bullet_toggle_minus.png +0 -0
- data/docs/images/bullet_toggle_plus.png +0 -0
- data/docs/images/date.png +0 -0
- data/docs/images/delete.png +0 -0
- data/docs/images/find.png +0 -0
- data/docs/images/loadingAnimation.gif +0 -0
- data/docs/images/macFFBgHack.png +0 -0
- data/docs/images/package.png +0 -0
- data/docs/images/page_green.png +0 -0
- data/docs/images/page_white_text.png +0 -0
- data/docs/images/page_white_width.png +0 -0
- data/docs/images/plugin.png +0 -0
- data/docs/images/ruby.png +0 -0
- data/docs/images/tag_blue.png +0 -0
- data/docs/images/tag_green.png +0 -0
- data/docs/images/transparent.png +0 -0
- data/docs/images/wrench.png +0 -0
- data/docs/images/wrench_orange.png +0 -0
- data/docs/images/zoom.png +0 -0
- data/docs/index.html +171 -0
- data/docs/js/darkfish.js +84 -0
- data/docs/js/navigation.js +105 -0
- data/docs/js/navigation.js.gz +0 -0
- data/docs/js/search.js +110 -0
- data/docs/js/search_index.js +1 -0
- data/docs/js/search_index.js.gz +0 -0
- data/docs/js/searcher.js +229 -0
- data/docs/js/searcher.js.gz +0 -0
- data/docs/table_of_contents.html +770 -0
- data/lib/sleeper_rb/client.rb +80 -0
- data/lib/sleeper_rb/resources/avatar.rb +43 -0
- data/lib/sleeper_rb/resources/draft/metadata.rb +83 -0
- data/lib/sleeper_rb/resources/draft/pick/metadata.rb +64 -0
- data/lib/sleeper_rb/resources/draft/pick.rb +85 -0
- data/lib/sleeper_rb/resources/draft/pick_array.rb +11 -0
- data/lib/sleeper_rb/resources/draft/settings.rb +73 -0
- data/lib/sleeper_rb/resources/draft.rb +129 -0
- data/lib/sleeper_rb/resources/draft_array.rb +25 -0
- data/lib/sleeper_rb/resources/league/matchup.rb +66 -0
- data/lib/sleeper_rb/resources/league/matchup_array.rb +11 -0
- data/lib/sleeper_rb/resources/league/roster/settings.rb +76 -0
- data/lib/sleeper_rb/resources/league/roster.rb +73 -0
- data/lib/sleeper_rb/resources/league/roster_array.rb +11 -0
- data/lib/sleeper_rb/resources/league/scoring_settings.rb +172 -0
- data/lib/sleeper_rb/resources/league/settings.rb +148 -0
- data/lib/sleeper_rb/resources/league/transaction/metadata.rb +22 -0
- data/lib/sleeper_rb/resources/league/transaction/settings.rb +22 -0
- data/lib/sleeper_rb/resources/league/transaction/waiver_budget.rb +52 -0
- data/lib/sleeper_rb/resources/league/transaction.rb +153 -0
- data/lib/sleeper_rb/resources/league/transaction_array.rb +43 -0
- data/lib/sleeper_rb/resources/league.rb +197 -0
- data/lib/sleeper_rb/resources/league_array.rb +41 -0
- data/lib/sleeper_rb/resources/nfl_state.rb +51 -0
- data/lib/sleeper_rb/resources/player.rb +189 -0
- data/lib/sleeper_rb/resources/player_array.rb +16 -0
- data/lib/sleeper_rb/resources/traded_pick.rb +63 -0
- data/lib/sleeper_rb/resources/traded_pick_array.rb +9 -0
- data/lib/sleeper_rb/resources/user/metadata.rb +20 -0
- data/lib/sleeper_rb/resources/user.rb +104 -0
- data/lib/sleeper_rb/resources/user_array.rb +9 -0
- data/lib/sleeper_rb/utilities/array_proxy.rb +47 -0
- data/lib/sleeper_rb/utilities/cache.rb +132 -0
- data/lib/sleeper_rb/utilities/request.rb +42 -0
- data/lib/sleeper_rb/utilities/roster_position.rb +30 -0
- data/lib/sleeper_rb/version.rb +5 -0
- data/lib/sleeper_rb.rb +15 -0
- data/sleeper_rb.gemspec +35 -0
- metadata +185 -0
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module SleeperRb
|
|
4
|
+
module Resources
|
|
5
|
+
class League
|
|
6
|
+
class Roster
|
|
7
|
+
##
|
|
8
|
+
# Settings for a specific roster in a league, including W/L/D, scoring_data, and waiver info.
|
|
9
|
+
class Settings
|
|
10
|
+
include SleeperRb::Utilities::Cache
|
|
11
|
+
|
|
12
|
+
##
|
|
13
|
+
# :attr_reader: wins
|
|
14
|
+
|
|
15
|
+
##
|
|
16
|
+
# :attr_reader: waiver_position
|
|
17
|
+
|
|
18
|
+
##
|
|
19
|
+
# :attr_reader: waiver_budget_used
|
|
20
|
+
|
|
21
|
+
##
|
|
22
|
+
# :attr_reader: total_moves
|
|
23
|
+
|
|
24
|
+
##
|
|
25
|
+
# :attr_reader: ties
|
|
26
|
+
|
|
27
|
+
##
|
|
28
|
+
# :attr_reader: losses
|
|
29
|
+
|
|
30
|
+
##
|
|
31
|
+
# :attr_reader: fpts_decimal
|
|
32
|
+
|
|
33
|
+
##
|
|
34
|
+
# :attr_reader: fpts_against_decimal
|
|
35
|
+
|
|
36
|
+
##
|
|
37
|
+
# :attr_reader: fpts_against
|
|
38
|
+
|
|
39
|
+
##
|
|
40
|
+
# :attr_reader: fpts
|
|
41
|
+
|
|
42
|
+
cached_attr :wins, :waiver_position, :waiver_budget_used, :total_moves, :ties, :losses, :fpts_decimal,
|
|
43
|
+
:fpts_against_decimal, :fpts_against, :fpts
|
|
44
|
+
|
|
45
|
+
skip_refresh :all
|
|
46
|
+
|
|
47
|
+
##
|
|
48
|
+
# @return [Float] All points scored by the roster
|
|
49
|
+
def total_points
|
|
50
|
+
(fpts.to_f + (fpts_decimal.to_f * 0.01)).round(2)
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
##
|
|
54
|
+
# @return [Float] All points scored against the roster
|
|
55
|
+
def total_points_against
|
|
56
|
+
(fpts_against.to_f + (fpts_against_decimal.to_f * 0.01)).round(2)
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
##
|
|
60
|
+
# @return [Float] Percentage of games won by the roster
|
|
61
|
+
def win_pct
|
|
62
|
+
return 0.0 unless [wins, ties, losses].any?(&:positive?)
|
|
63
|
+
|
|
64
|
+
((wins.to_f / (wins + ties + losses)) * 100.0).round(2)
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
##
|
|
68
|
+
# @return [String] Record for the roster in W - L - T format
|
|
69
|
+
def record_string
|
|
70
|
+
"#{wins} - #{losses} - #{ties}"
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
end
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative "roster/settings"
|
|
4
|
+
|
|
5
|
+
module SleeperRb
|
|
6
|
+
module Resources
|
|
7
|
+
class League
|
|
8
|
+
##
|
|
9
|
+
# A roster belonging to a specific user in a specific league.
|
|
10
|
+
class Roster
|
|
11
|
+
include SleeperRb::Utilities::Cache
|
|
12
|
+
|
|
13
|
+
PLAYER_LAMBDA = ->(array) { PlayerArray.new(array&.map { |player_id| Player.new(player_id: player_id) }) }
|
|
14
|
+
|
|
15
|
+
##
|
|
16
|
+
# :attr_reader: roster_id
|
|
17
|
+
|
|
18
|
+
##
|
|
19
|
+
# :attr_reader: owner_id
|
|
20
|
+
|
|
21
|
+
##
|
|
22
|
+
# :attr_reader: league_id
|
|
23
|
+
|
|
24
|
+
##
|
|
25
|
+
# :method: league
|
|
26
|
+
# The league to which the roster belongs
|
|
27
|
+
#
|
|
28
|
+
# @return [{SleeperRb::Resources::League}[rdoc-ref:SleeperRb::Resources::League]]
|
|
29
|
+
|
|
30
|
+
##
|
|
31
|
+
# :method: settings
|
|
32
|
+
#
|
|
33
|
+
# @return [{SleeperRb::Resources::League::Roster::Settings}[rdoc-ref:SleeperRb::Resources::League::Roster::Settings]]
|
|
34
|
+
|
|
35
|
+
##
|
|
36
|
+
# :method: starters
|
|
37
|
+
# The players currently starting for this roster.
|
|
38
|
+
#
|
|
39
|
+
# @return [{SleeperRb::Resources::PlayerArray}[rdoc-ref:SleeperRb::Resources::PlayerArray]]
|
|
40
|
+
|
|
41
|
+
##
|
|
42
|
+
# :method: players
|
|
43
|
+
# The players currently currently on the roster.
|
|
44
|
+
#
|
|
45
|
+
# @return [{SleeperRb::Resources::PlayerArray}[rdoc-ref:SleeperRb::Resources::PlayerArray]]
|
|
46
|
+
|
|
47
|
+
##
|
|
48
|
+
# :method: reserve
|
|
49
|
+
# The players currently on the reserve for this roster.
|
|
50
|
+
#
|
|
51
|
+
# @return [{SleeperRb::Resources::PlayerArray}[rdoc-ref:SleeperRb::Resources::PlayerArray]]
|
|
52
|
+
|
|
53
|
+
cached_attr :roster_id, :owner_id, :league_id, :league,
|
|
54
|
+
settings: ->(settings) { Settings.new(settings) },
|
|
55
|
+
starters: PLAYER_LAMBDA,
|
|
56
|
+
players: PLAYER_LAMBDA,
|
|
57
|
+
reserve: PLAYER_LAMBDA
|
|
58
|
+
|
|
59
|
+
delegate(*Settings.cached_attrs.keys, to: :settings)
|
|
60
|
+
|
|
61
|
+
skip_refresh :all
|
|
62
|
+
|
|
63
|
+
##
|
|
64
|
+
# :method: owner
|
|
65
|
+
#
|
|
66
|
+
# @return [{SleeperRb::Resources::User}[rdoc-ref:SleeperRb::Resources::User]]
|
|
67
|
+
cached_association :owner do
|
|
68
|
+
User.new(user_id: owner_id)
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
end
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module SleeperRb
|
|
4
|
+
module Resources
|
|
5
|
+
class League
|
|
6
|
+
##
|
|
7
|
+
# Scoring settings for a League instance
|
|
8
|
+
class ScoringSettings
|
|
9
|
+
include SleeperRb::Utilities::Cache
|
|
10
|
+
|
|
11
|
+
##
|
|
12
|
+
# :attr_reader: pass_2pt
|
|
13
|
+
|
|
14
|
+
##
|
|
15
|
+
# :attr_reader: pass_int
|
|
16
|
+
|
|
17
|
+
##
|
|
18
|
+
# :attr_reader: fgmiss
|
|
19
|
+
|
|
20
|
+
##
|
|
21
|
+
# :attr_reader: rec_yd
|
|
22
|
+
|
|
23
|
+
##
|
|
24
|
+
# :attr_reader: xpmiss
|
|
25
|
+
|
|
26
|
+
##
|
|
27
|
+
# :attr_reader: blk_kick
|
|
28
|
+
|
|
29
|
+
##
|
|
30
|
+
# :attr_reader: pts_allow_7_13
|
|
31
|
+
|
|
32
|
+
##
|
|
33
|
+
# :attr_reader: ff
|
|
34
|
+
|
|
35
|
+
##
|
|
36
|
+
# :attr_reader: fgm_20_29
|
|
37
|
+
|
|
38
|
+
##
|
|
39
|
+
# :attr_reader: fgm_30_39
|
|
40
|
+
|
|
41
|
+
##
|
|
42
|
+
# :attr_reader: fgm_40_49
|
|
43
|
+
|
|
44
|
+
##
|
|
45
|
+
# :attr_reader: pts_allow_1_6
|
|
46
|
+
|
|
47
|
+
##
|
|
48
|
+
# :attr_reader: st_fum_rec
|
|
49
|
+
|
|
50
|
+
##
|
|
51
|
+
# :attr_reader: def_st_ff
|
|
52
|
+
|
|
53
|
+
##
|
|
54
|
+
# :attr_reader: st_ff
|
|
55
|
+
|
|
56
|
+
##
|
|
57
|
+
# :attr_reader: pts_allow_28_34
|
|
58
|
+
|
|
59
|
+
##
|
|
60
|
+
# :attr_reader: fgm_50p
|
|
61
|
+
|
|
62
|
+
##
|
|
63
|
+
# :attr_reader: fum_rec
|
|
64
|
+
|
|
65
|
+
##
|
|
66
|
+
# :attr_reader: def_td
|
|
67
|
+
|
|
68
|
+
##
|
|
69
|
+
# :attr_reader: fgm_0_19
|
|
70
|
+
|
|
71
|
+
##
|
|
72
|
+
# :attr_reader: int
|
|
73
|
+
|
|
74
|
+
##
|
|
75
|
+
# :attr_reader: pts_allow_0
|
|
76
|
+
|
|
77
|
+
##
|
|
78
|
+
# :attr_reader: pts_allow_21_27
|
|
79
|
+
|
|
80
|
+
##
|
|
81
|
+
# :attr_reader: rec_2pt
|
|
82
|
+
|
|
83
|
+
##
|
|
84
|
+
# :attr_reader: rec
|
|
85
|
+
|
|
86
|
+
##
|
|
87
|
+
# :attr_reader: xpm
|
|
88
|
+
|
|
89
|
+
##
|
|
90
|
+
# :attr_reader: st_d
|
|
91
|
+
|
|
92
|
+
##
|
|
93
|
+
# :attr_reader: def_st_fum_rec
|
|
94
|
+
|
|
95
|
+
##
|
|
96
|
+
# :attr_reader: def_st_td
|
|
97
|
+
|
|
98
|
+
##
|
|
99
|
+
# :attr_reader: sack
|
|
100
|
+
|
|
101
|
+
##
|
|
102
|
+
# :attr_reader: fum_rec_td
|
|
103
|
+
|
|
104
|
+
##
|
|
105
|
+
# :attr_reader: rush_2pt
|
|
106
|
+
|
|
107
|
+
##
|
|
108
|
+
# :attr_reader: rec_td
|
|
109
|
+
|
|
110
|
+
##
|
|
111
|
+
# :attr_reader: pts_allow_35p
|
|
112
|
+
|
|
113
|
+
##
|
|
114
|
+
# :attr_reader: pts_allow_14_20
|
|
115
|
+
|
|
116
|
+
##
|
|
117
|
+
# :attr_reader: rush_yd
|
|
118
|
+
|
|
119
|
+
##
|
|
120
|
+
# :attr_reader: pass_yd
|
|
121
|
+
|
|
122
|
+
##
|
|
123
|
+
# :attr_reader: pass_td
|
|
124
|
+
|
|
125
|
+
##
|
|
126
|
+
# :attr_reader: rush_td
|
|
127
|
+
|
|
128
|
+
##
|
|
129
|
+
# :attr_reader: fum_lost
|
|
130
|
+
|
|
131
|
+
##
|
|
132
|
+
# :attr_reader: fum
|
|
133
|
+
|
|
134
|
+
##
|
|
135
|
+
# :attr_reader: safe
|
|
136
|
+
|
|
137
|
+
# rubocop:disable Naming/VariableNumber
|
|
138
|
+
FIELDS = %i[
|
|
139
|
+
pass_2pt pass_int fgmiss rec_yd xpmiss blk_kick pts_allow_7_13 ff fgm_20_29 fgm_30_39 fgm_40_49 pts_allow_1_6
|
|
140
|
+
st_fum_rec def_st_ff st_ff pts_allow_28_34 fgm_50p fum_rec def_td fgm_0_19 int pts_allow_0 pts_allow_21_27
|
|
141
|
+
rec_2pt rec xpm st_td def_st_fum_rec def_st_td sack fum_rec_td rush_2pt rec_td pts_allow_35p pts_allow_14_20
|
|
142
|
+
rush_yd pass_yd pass_td rush_td fum_lost fum safe
|
|
143
|
+
].freeze
|
|
144
|
+
# rubocop:enable Naming/VariableNumber
|
|
145
|
+
|
|
146
|
+
FIELDS.each do |field|
|
|
147
|
+
cached_attr field => :float
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
skip_refresh :all
|
|
151
|
+
|
|
152
|
+
##
|
|
153
|
+
# @return [Boolean] If league uses PPR scoring
|
|
154
|
+
def ppr?
|
|
155
|
+
rec.to_i == 1
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
##
|
|
159
|
+
# @return [Boolean] If league uses Half-PPR scoring
|
|
160
|
+
def half_ppr?
|
|
161
|
+
rec > 0.0 && rec < 1.0
|
|
162
|
+
end
|
|
163
|
+
|
|
164
|
+
##
|
|
165
|
+
# @return [Boolean] If league uses Standard (0 PPR) scoring
|
|
166
|
+
def standard?
|
|
167
|
+
rec.zero?
|
|
168
|
+
end
|
|
169
|
+
end
|
|
170
|
+
end
|
|
171
|
+
end
|
|
172
|
+
end
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module SleeperRb
|
|
4
|
+
module Resources
|
|
5
|
+
class League
|
|
6
|
+
##
|
|
7
|
+
# Non-scoring settings for a League instance
|
|
8
|
+
class Settings
|
|
9
|
+
include SleeperRb::Utilities::Cache
|
|
10
|
+
|
|
11
|
+
##
|
|
12
|
+
# :attr_reader: max_keepers
|
|
13
|
+
|
|
14
|
+
##
|
|
15
|
+
# :attr_reader: draft_rounds
|
|
16
|
+
|
|
17
|
+
##
|
|
18
|
+
# :attr_reader: trade_review_days
|
|
19
|
+
|
|
20
|
+
##
|
|
21
|
+
# :attr_reader: reserve_allow_dnr
|
|
22
|
+
|
|
23
|
+
##
|
|
24
|
+
# :attr_reader: capacity_override
|
|
25
|
+
|
|
26
|
+
##
|
|
27
|
+
# :attr_reader: pick_trading
|
|
28
|
+
|
|
29
|
+
##
|
|
30
|
+
# :attr_reader: disable_trades
|
|
31
|
+
|
|
32
|
+
##
|
|
33
|
+
# :attr_reader: taxi_years
|
|
34
|
+
|
|
35
|
+
##
|
|
36
|
+
# :attr_reader: taxi_allow_vets
|
|
37
|
+
|
|
38
|
+
##
|
|
39
|
+
# :attr_reader: best_ball
|
|
40
|
+
|
|
41
|
+
##
|
|
42
|
+
# :attr_reader: disable_adds
|
|
43
|
+
|
|
44
|
+
##
|
|
45
|
+
# :attr_reader: waiver_type
|
|
46
|
+
|
|
47
|
+
##
|
|
48
|
+
# :attr_reader: bench_lock
|
|
49
|
+
|
|
50
|
+
##
|
|
51
|
+
# :attr_reader: reserve_allow_sus
|
|
52
|
+
|
|
53
|
+
##
|
|
54
|
+
# :attr_reader: type
|
|
55
|
+
|
|
56
|
+
##
|
|
57
|
+
# :attr_reader: reserve_allow_cov
|
|
58
|
+
|
|
59
|
+
##
|
|
60
|
+
# :attr_reader: waiver_clear_days
|
|
61
|
+
|
|
62
|
+
##
|
|
63
|
+
# :attr_reader: daily_waivers_last_ran
|
|
64
|
+
|
|
65
|
+
##
|
|
66
|
+
# :attr_reader: waiver_day_of_week
|
|
67
|
+
|
|
68
|
+
##
|
|
69
|
+
# :attr_reader: start_week
|
|
70
|
+
|
|
71
|
+
##
|
|
72
|
+
# :attr_reader: playoff_teams
|
|
73
|
+
|
|
74
|
+
##
|
|
75
|
+
# :attr_reader: num_teams
|
|
76
|
+
|
|
77
|
+
##
|
|
78
|
+
# :attr_reader: reserve_slots
|
|
79
|
+
|
|
80
|
+
##
|
|
81
|
+
# :attr_reader: playoff_round_type
|
|
82
|
+
|
|
83
|
+
##
|
|
84
|
+
# :attr_reader: daily_waivers_hours
|
|
85
|
+
|
|
86
|
+
##
|
|
87
|
+
# :attr_reader: waiver_budget
|
|
88
|
+
|
|
89
|
+
##
|
|
90
|
+
# :attr_reader: reserve_allow_out
|
|
91
|
+
|
|
92
|
+
##
|
|
93
|
+
# :attr_reader: offseason_adds
|
|
94
|
+
|
|
95
|
+
##
|
|
96
|
+
# :attr_reader: playoff_seed_type
|
|
97
|
+
|
|
98
|
+
##
|
|
99
|
+
# :attr_reader: daily_waivers
|
|
100
|
+
|
|
101
|
+
##
|
|
102
|
+
# :attr_reader: playoff_week_start
|
|
103
|
+
|
|
104
|
+
##
|
|
105
|
+
# :attr_reader: daily_waivers_days
|
|
106
|
+
|
|
107
|
+
##
|
|
108
|
+
# :attr_reader: league_average_match
|
|
109
|
+
|
|
110
|
+
##
|
|
111
|
+
# :attr_reader: leg
|
|
112
|
+
|
|
113
|
+
##
|
|
114
|
+
# :attr_reader: trade_deadline
|
|
115
|
+
|
|
116
|
+
##
|
|
117
|
+
# :attr_reader: reserve_allow_doubtful
|
|
118
|
+
|
|
119
|
+
##
|
|
120
|
+
# :attr_reader: taxi_deadline
|
|
121
|
+
|
|
122
|
+
##
|
|
123
|
+
# :attr_reader: reserve_allow_na
|
|
124
|
+
|
|
125
|
+
##
|
|
126
|
+
# :attr_reader: taxi_slots
|
|
127
|
+
|
|
128
|
+
##
|
|
129
|
+
# :attr_reader: playoff_type
|
|
130
|
+
|
|
131
|
+
FIELDS = %i[
|
|
132
|
+
max_keepers draft_rounds trade_review_days reserve_allow_dnr capacity_override taxi_years waiver_type
|
|
133
|
+
bench_lock type waiver_clear_days daily_waivers_last_ran waiver_day_of_week start_week playoff_teams
|
|
134
|
+
num_teams reserve_slots playoff_round_type daily_waivers_hour waiver_budget playoff_type taxi_slots
|
|
135
|
+
reserve_allow_out playoff_seed_type daily_waivers playoff_week_start daily_waivers_days taxi_deadline
|
|
136
|
+
league_average_match leg trade_deadline
|
|
137
|
+
].freeze
|
|
138
|
+
|
|
139
|
+
cached_attr(*FIELDS, best_ball: :int_to_bool, pick_trading: :int_to_bool, disable_trades: :int_to_bool,
|
|
140
|
+
taxi_allow_vets: :int_to_bool, disable_adds: :int_to_bool, reserve_allow_sus: :int_to_bool,
|
|
141
|
+
reserve_allow_cov: :int_to_bool, offseason_adds: :int_to_bool, reserve_allow_doubtful: :int_to_bool,
|
|
142
|
+
reserve_allow_na: :int_to_bool)
|
|
143
|
+
|
|
144
|
+
skip_refresh :all
|
|
145
|
+
end
|
|
146
|
+
end
|
|
147
|
+
end
|
|
148
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# frozen-string-literal: true
|
|
2
|
+
|
|
3
|
+
module SleeperRb
|
|
4
|
+
module Resources
|
|
5
|
+
class League
|
|
6
|
+
class Transaction
|
|
7
|
+
##
|
|
8
|
+
# Miscellaneous information about the transaction, for example notes about why a waiver bid did not go through.
|
|
9
|
+
class Metadata
|
|
10
|
+
include SleeperRb::Utilities::Cache
|
|
11
|
+
|
|
12
|
+
# The Sleeper documentation lists this field for transactions but none of the examples show the actual
|
|
13
|
+
# structure of the object. This is left here for now as a placeholder to be filled in once I come across
|
|
14
|
+
# a transaction where the metadata is not null.
|
|
15
|
+
cached_attr
|
|
16
|
+
|
|
17
|
+
skip_refresh :all
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# frozen-string-literal: true
|
|
2
|
+
|
|
3
|
+
module SleeperRb
|
|
4
|
+
module Resources
|
|
5
|
+
class League
|
|
6
|
+
class Transaction
|
|
7
|
+
##
|
|
8
|
+
# Settings for a transaction, includes information like FAAB bid amount.
|
|
9
|
+
class Settings
|
|
10
|
+
include SleeperRb::Utilities::Cache
|
|
11
|
+
|
|
12
|
+
##
|
|
13
|
+
# :attr_reader: waiver_bid
|
|
14
|
+
|
|
15
|
+
cached_attr :waiver_bid
|
|
16
|
+
|
|
17
|
+
skip_refresh :all
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# frozen-string-literal: true
|
|
2
|
+
|
|
3
|
+
module SleeperRb
|
|
4
|
+
module Resources
|
|
5
|
+
class League
|
|
6
|
+
class Transaction
|
|
7
|
+
##
|
|
8
|
+
# Represents data about a waiver budget exchange in a transaction (trade).
|
|
9
|
+
class WaiverBudget
|
|
10
|
+
include SleeperRb::Utilities::Cache
|
|
11
|
+
|
|
12
|
+
##
|
|
13
|
+
# :attr_reader: sender
|
|
14
|
+
|
|
15
|
+
##
|
|
16
|
+
# :attr_reader: receiver
|
|
17
|
+
|
|
18
|
+
##
|
|
19
|
+
# :attr_reader: amount
|
|
20
|
+
|
|
21
|
+
##
|
|
22
|
+
# :method: transaction
|
|
23
|
+
# The transaction to which this belongs.
|
|
24
|
+
#
|
|
25
|
+
# @return [{SleeperRb::Resources::League::Transaction}[rdoc-ref:SleeperRb::Resources::League::Transaction]]
|
|
26
|
+
|
|
27
|
+
cached_attr :sender, :receiver, :amount, :transaction
|
|
28
|
+
|
|
29
|
+
skip_refresh :all
|
|
30
|
+
|
|
31
|
+
##
|
|
32
|
+
# :method: sending_roster
|
|
33
|
+
# Returns the roster object that sent the WaiverBudget in this transaction.
|
|
34
|
+
#
|
|
35
|
+
# @return [{SleeperRb::Resources::League::Roster}[rdoc-ref:SleeperRb::Resources::League::Roster]]
|
|
36
|
+
cached_association :sending_roster do
|
|
37
|
+
transaction.league.rosters.detect { |roster| roster.roster_id == sender }
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
##
|
|
41
|
+
# :method: receiving_roster
|
|
42
|
+
# Returns the roster object that received the WaiverBudget in this transaction.
|
|
43
|
+
#
|
|
44
|
+
# @return [{SleeperRb::Resources::League::Roster}[rdoc-ref:SleeperRb::Resources::League::Roster]]
|
|
45
|
+
cached_association :receiving_roster do
|
|
46
|
+
transaction.league.rosters.detect { |roster| roster.roster_id == receiver }
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|