paapi 0.0.5 → 0.0.6
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 +4 -4
- data/CHANGELOG.md +9 -0
- data/lib/paapi/client.rb +1 -1
- data/lib/paapi/item.rb +39 -2
- data/lib/paapi/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 575a4e25893cf1bb736c8408e3e20bc6b5715106c08fb2091f345da874ef92e7
|
4
|
+
data.tar.gz: fc0bd5eb43f322b06791debb6e5bbbfed24229d05b976eadab85ade83db460e4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a64c83aed626c43c29506fe089ea12bf9bfc462e47ea638b6b9a7c3c85e7d056cb28627bb78e6c7337fd1c8bd612d2a9c78e21fbb2b6a37530650731b66d1aa5
|
7
|
+
data.tar.gz: db1456668417437c546c32141b5cb9491ced6ee78ce1fab75854d8f9423ea92683bf836df3a9b0dc024d63f238fc4c7f4769bdc6f363c5230c410cf22f2ae3d7
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
## 0.0.6
|
2
|
+
- Handle more date parsing failures.
|
3
|
+
- Get width, height, depth and weight from items
|
4
|
+
## 0.0.5
|
5
|
+
|
6
|
+
- Merged pull request #3 allowing options to be passed into the get_items and get_variations request
|
7
|
+
- Merged #4 a bug fix for image_url
|
8
|
+
- Added test cases for parsing response
|
9
|
+
|
data/lib/paapi/client.rb
CHANGED
@@ -29,7 +29,7 @@ module Paapi
|
|
29
29
|
@market = a_market
|
30
30
|
@marketplace = MARKETPLACES[market.to_sym]
|
31
31
|
if !Paapi.partner_market.nil?
|
32
|
-
@partner_tag = Paapi.partner_market.dig(a_market) || @partner_tag
|
32
|
+
@partner_tag = Paapi.partner_market.dig(a_market.to_sym) || @partner_tag
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
data/lib/paapi/item.rb
CHANGED
@@ -1,8 +1,13 @@
|
|
1
1
|
require 'nameable'
|
2
|
+
require 'forwardable'
|
2
3
|
|
3
4
|
module Paapi
|
4
5
|
class Item
|
6
|
+
extend Forwardable
|
5
7
|
attr_accessor :hash
|
8
|
+
|
9
|
+
def_delegators :@hash, :dig
|
10
|
+
|
6
11
|
def initialize(data)
|
7
12
|
@hash = data
|
8
13
|
end
|
@@ -37,12 +42,12 @@ module Paapi
|
|
37
42
|
|
38
43
|
def publication_date
|
39
44
|
d = get(%w{ItemInfo ContentInfo PublicationDate DisplayValue})
|
40
|
-
return
|
45
|
+
return Date.parse(d) rescue nil
|
41
46
|
end
|
42
47
|
|
43
48
|
def release_date
|
44
49
|
d = get(%w{ItemInfo ProductInfo ReleaseDate DisplayValue})
|
45
|
-
return
|
50
|
+
return Date.parse(d) rescue nil
|
46
51
|
end
|
47
52
|
|
48
53
|
def contributors
|
@@ -77,6 +82,18 @@ module Paapi
|
|
77
82
|
contributors_of 'Publisher'
|
78
83
|
end
|
79
84
|
|
85
|
+
def languages
|
86
|
+
get(%w{ItemInfo ContentInfo Languages DisplayValues})
|
87
|
+
end
|
88
|
+
|
89
|
+
def original_language
|
90
|
+
languages&.find {|l| l['Type'] == 'Original Language' }&.dig('DisplayValue')
|
91
|
+
end
|
92
|
+
|
93
|
+
def published_language
|
94
|
+
languages&.find {|l| l['Type'] == 'Published' }&.dig('DisplayValue')
|
95
|
+
end
|
96
|
+
|
80
97
|
def eans
|
81
98
|
get(%w{ItemInfo ExternalIds EANs DisplayValues})
|
82
99
|
end
|
@@ -105,6 +122,26 @@ module Paapi
|
|
105
122
|
get(%w{ItemInfo TechnicalInfo Formats DisplayValues})
|
106
123
|
end
|
107
124
|
|
125
|
+
def height
|
126
|
+
data = get(%w{ItemInfo ProductInfo ItemDimensions Height})
|
127
|
+
[data.dig('DisplayValue'), data.dig('Unit')].join(' ')
|
128
|
+
end
|
129
|
+
|
130
|
+
def length
|
131
|
+
data = get(%w{ItemInfo ProductInfo ItemDimensions Length})
|
132
|
+
[data.dig('DisplayValue'), data.dig('Unit')].join(' ')
|
133
|
+
end
|
134
|
+
|
135
|
+
def width
|
136
|
+
data = get(%w{ItemInfo ProductInfo ItemDimensions Width})
|
137
|
+
[data.dig('DisplayValue'), data.dig('Unit')].join(' ')
|
138
|
+
end
|
139
|
+
|
140
|
+
def weight
|
141
|
+
data = get(%w{ItemInfo ProductInfo ItemDimensions Weight})
|
142
|
+
[data.dig('DisplayValue'), data.dig('Unit')].join(' ')
|
143
|
+
end
|
144
|
+
|
108
145
|
def kindle?
|
109
146
|
!package.nil? && package&.include?('Kindle eBook')
|
110
147
|
end
|
data/lib/paapi/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: paapi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dan Milne
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-10-
|
11
|
+
date: 2019-10-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -131,6 +131,7 @@ extra_rdoc_files: []
|
|
131
131
|
files:
|
132
132
|
- ".gitignore"
|
133
133
|
- ".travis.yml"
|
134
|
+
- CHANGELOG.md
|
134
135
|
- Gemfile
|
135
136
|
- LICENSE.txt
|
136
137
|
- README.md
|