prizepicks 0.2.3 → 0.3.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 183eed6e5471c6f7b26e7076d3a30cbf8e26e08a78d4ffef94c657d273fc8dbc
4
- data.tar.gz: 04755b4158b46b51b8f000947ab88cf73eff1522045cc26d81e5c1d6edc9c07b
3
+ metadata.gz: 4b1539070fa0e989da3bb9621f1e2bb3d11cebf05a6039d631d15d0953aa6d18
4
+ data.tar.gz: 119466c75e8a12cd177c5e3fe487e810601e26abd1d60d0430ae6d82c61e3704
5
5
  SHA512:
6
- metadata.gz: 81ba3a66bda7617deff0619b1cd36e63e8d1e9be7fdc91e8541e42d889fdb1fc4547cd0b6eab0a917b08e87933ffc8cd91e9457399a6c698d55c543eecf8ee1b
7
- data.tar.gz: 9a5a88823ed7ebaf0ed4b24f83a46fd177a4adb3778d4991aca8f54577e4a10bd9c3bd11c4556d67d302c7783e229f55b441e37141a5db34bdad068e6788a3d8
6
+ metadata.gz: a5886d830c924fb9d1f029170302f443c206770c0d0a45d5faeee129d70b6b5e8081087753f7e0f1cfb5b23b154a209bc01b5b929228badeafa19b063dbbd38d
7
+ data.tar.gz: c860dde10c155d5a51df914f7f4518fdf1e748d2b7139aaf16d57f64c29b08f113cd2df2a6d7a554dbbcdc5253a8e89d9f59faaa6ff6511fd7b83c976cc272fb
data/.rubocop.yml CHANGED
@@ -30,6 +30,8 @@ Metrics/LineLength:
30
30
  Max: 120
31
31
  Style/Documentation:
32
32
  Enabled: false
33
+ Style/HashSyntax:
34
+ Enabled: false
33
35
  Style/ModuleFunction:
34
36
  Enabled: false
35
37
  Style/TrailingCommaInHashLiteral:
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.3.0](https://www.github.com/troyizzle/prizepicks/compare/v0.2.3...v0.3.0) (2023-02-24)
4
+
5
+
6
+ ### Features
7
+
8
+ * related predictions on entry class ([bb60d4b](https://www.github.com/troyizzle/prizepicks/commit/bb60d4bdbeb346659df22caef897a4a81f5268cc))
9
+ * return included response in collection ([a816739](https://www.github.com/troyizzle/prizepicks/commit/a8167393304415e483b9155019527e527d5503c8))
10
+
3
11
  ### [0.2.3](https://www.github.com/troyizzle/prizepicks/compare/v0.2.2...v0.2.3) (2023-02-21)
4
12
 
5
13
 
@@ -1,20 +1,35 @@
1
1
  # frozen_string_literal: true
2
2
  module PrizePicks
3
3
  class Collection
4
- attr_reader :data, :total_pages, :current_page
4
+ attr_reader :data, :included, :total_pages, :current_page
5
5
 
6
6
  def self.from_response(response, type:)
7
7
  new(
8
8
  data: response['data'].map { |attrs| type.new(attrs) },
9
+ included: parse_included_data(response['included']),
9
10
  current_page: response.dig('meta', 'current_page'),
10
11
  total_pages: response.dig('meta', 'total_pages')
11
12
  )
12
13
  end
13
14
 
14
- def initialize(data:, current_page:, total_pages:)
15
+ def initialize(data:, included:, current_page:, total_pages:)
15
16
  @data = data
17
+ @included = included
16
18
  @current_page = current_page
17
19
  @total_pages = total_pages
18
20
  end
21
+
22
+ def self.parse_included_data(included)
23
+ included.map do |attrs|
24
+ type = attrs['type'].capitalize
25
+ class_name = "PrizePicks::#{type}"
26
+ klass = if Object.const_defined?(class_name)
27
+ Object.const_get(class_name)
28
+ else
29
+ PrizePicks::Base
30
+ end
31
+ klass.new(attrs)
32
+ end
33
+ end
19
34
  end
20
35
  end
@@ -1,5 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
  module PrizePicks
3
3
  class Entry < Base
4
+ def related_predictions
5
+ data.dig('relationships', 'predictions', 'data').map { |d| d['id'] }
6
+ end
4
7
  end
5
8
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PrizePicks
4
- VERSION = '0.2.3'
4
+ VERSION = '0.3.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: prizepicks
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Troy Underwood
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-02-21 00:00:00.000000000 Z
11
+ date: 2023-02-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday