paapi 0.0.7 → 0.1.2
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 +12 -0
- data/README.md +4 -4
- data/lib/paapi/item.rb +13 -9
- data/lib/paapi/response.rb +1 -0
- data/lib/paapi/version.rb +1 -1
- data/paapi.gemspec +1 -2
- metadata +11 -25
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 259e83f7564df1078faa89b5c4c284bb732c4ef4d325bbf5148cac06943469a7
|
4
|
+
data.tar.gz: 07fd0a94307184a443a86821d40ee3c9e8f9a25c2343e09e321828f90701e50d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e5e1cd4cc02383c8b6b3d6a3da997e847cb103e8e0a4abfaea50300c43a429dec2695269fa5c02ecbcf978c78020b08358c0804db03434f8981de761a30ce548
|
7
|
+
data.tar.gz: cdf7e41cd53b99b4402348ea17dd32e092d67d05144358dfcc87c8ac1ed79b130133be27a754421b392b8be10ba9dcbbe702571071ee4095aea7b4e6c323fd84
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,15 @@
|
|
1
|
+
## 0.1.2
|
2
|
+
- Use Contributor RoleType, rather than Role. RoleType uses lowercase, rather than capitalised.
|
3
|
+
|
4
|
+
## 0.1.0
|
5
|
+
- Remove Nameable dependancy and return the data as the API returns it.
|
6
|
+
|
7
|
+
## 0.0.9
|
8
|
+
- Fix bug with no contributors in response
|
9
|
+
|
10
|
+
## 0.0.8
|
11
|
+
- Fix a bug when accessing an empty name via Item
|
12
|
+
|
1
13
|
## 0.0.7
|
2
14
|
- Rename Item#json to Item#hash for consistency
|
3
15
|
- Add offer / listing parsing
|
data/README.md
CHANGED
@@ -2,10 +2,10 @@
|
|
2
2
|
|
3
3
|
`paapi` is a slim wrapper around [Amazon's Product Advertising API 5.0](https://webservices.amazon.com/paapi5/documentation/).
|
4
4
|
|
5
|
-
This gem is under heavy development and currently incomplete.
|
6
|
-
|
7
5
|
[](https://travis-ci.org/dkam/paapi)
|
8
6
|
|
7
|
+
If this gem doesn't meet your needs, try the [Vacumm gem](https://github.com/hakanensari/vacuum).
|
8
|
+
|
9
9
|
## Installation
|
10
10
|
|
11
11
|
Add this line to your application's Gemfile:
|
@@ -36,7 +36,7 @@ Paapi.configure do |config|
|
|
36
36
|
end
|
37
37
|
```
|
38
38
|
|
39
|
-
Configurable
|
39
|
+
Configurable items:
|
40
40
|
* access_key
|
41
41
|
* secret_key
|
42
42
|
* partner_tag
|
@@ -67,7 +67,7 @@ client.partner_tag
|
|
67
67
|
|
68
68
|
The full list of market keys is `au, br, ca, fr, de, in, it, jp, mx, es, tr, ae, uk, us`
|
69
69
|
|
70
|
-
### Using
|
70
|
+
### Using Paapi
|
71
71
|
|
72
72
|
```ruby
|
73
73
|
require 'paapi'
|
data/lib/paapi/item.rb
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
require 'nameable'
|
2
1
|
require 'forwardable'
|
3
2
|
|
4
3
|
module Paapi
|
@@ -51,35 +50,40 @@ module Paapi
|
|
51
50
|
end
|
52
51
|
|
53
52
|
def contributors
|
54
|
-
get(%w{ItemInfo ByLineInfo Contributors})
|
53
|
+
Array(get(%w{ItemInfo ByLineInfo Contributors}))
|
55
54
|
end
|
56
55
|
|
57
56
|
def contributors_of(kind)
|
58
|
-
|
57
|
+
kind = kind.to_s.gsub(/([[:alpha:]]+)/) { |w| w.downcase }
|
58
|
+
contributors.select { |e| e['RoleType'] == kind }&.map { |e| e.dig('Name') }&.reject {|n| n.to_s.empty?}
|
59
59
|
end
|
60
60
|
|
61
61
|
def actors
|
62
|
-
contributors_of '
|
62
|
+
contributors_of 'actor'
|
63
63
|
end
|
64
64
|
|
65
65
|
def artists
|
66
|
-
contributors_of '
|
66
|
+
contributors_of 'artist'
|
67
67
|
end
|
68
68
|
|
69
69
|
def authors
|
70
|
-
contributors_of '
|
70
|
+
contributors_of 'author'
|
71
|
+
end
|
72
|
+
|
73
|
+
def director
|
74
|
+
contributors_of 'director'
|
71
75
|
end
|
72
76
|
|
73
77
|
def illustrators
|
74
|
-
contributors_of '
|
78
|
+
contributors_of 'illustrator'
|
75
79
|
end
|
76
80
|
|
77
81
|
def narrators
|
78
|
-
contributors_of '
|
82
|
+
contributors_of 'narrator'
|
79
83
|
end
|
80
84
|
|
81
85
|
def publishers
|
82
|
-
contributors_of '
|
86
|
+
contributors_of 'publisher'
|
83
87
|
end
|
84
88
|
|
85
89
|
def languages
|
data/lib/paapi/response.rb
CHANGED
data/lib/paapi/version.rb
CHANGED
data/paapi.gemspec
CHANGED
@@ -26,12 +26,11 @@ Gem::Specification.new do |spec|
|
|
26
26
|
spec.require_paths = ['lib']
|
27
27
|
|
28
28
|
spec.add_development_dependency 'bundler', '~> 2.0'
|
29
|
-
spec.add_development_dependency 'rake', '
|
29
|
+
spec.add_development_dependency 'rake', '>= 12.3.r3'
|
30
30
|
spec.add_development_dependency 'minitest', '~> 5.0'
|
31
31
|
spec.add_development_dependency 'byebug', '~> 11'
|
32
32
|
spec.add_development_dependency 'awesome_print', '~> 1.8'
|
33
33
|
|
34
34
|
spec.add_dependency 'http', '~> 4'
|
35
35
|
spec.add_dependency 'aws-sigv4', '~> 1'
|
36
|
-
spec.add_dependency 'nameable', '~> 1'
|
37
36
|
end
|
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.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dan Milne
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-08-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -28,16 +28,16 @@ dependencies:
|
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 12.3.r3
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
40
|
+
version: 12.3.r3
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: minitest
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -108,21 +108,7 @@ dependencies:
|
|
108
108
|
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '1'
|
111
|
-
|
112
|
-
name: nameable
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
114
|
-
requirements:
|
115
|
-
- - "~>"
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: '1'
|
118
|
-
type: :runtime
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
requirements:
|
122
|
-
- - "~>"
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: '1'
|
125
|
-
description:
|
111
|
+
description:
|
126
112
|
email:
|
127
113
|
- d@nmilne.com
|
128
114
|
executables: []
|
@@ -151,7 +137,7 @@ licenses:
|
|
151
137
|
metadata:
|
152
138
|
homepage_uri: https://github.com/dkam/paapi
|
153
139
|
source_code_uri: https://github.com/dkam/paapi
|
154
|
-
post_install_message:
|
140
|
+
post_install_message:
|
155
141
|
rdoc_options: []
|
156
142
|
require_paths:
|
157
143
|
- lib
|
@@ -166,8 +152,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
166
152
|
- !ruby/object:Gem::Version
|
167
153
|
version: '0'
|
168
154
|
requirements: []
|
169
|
-
rubygems_version: 3.
|
170
|
-
signing_key:
|
155
|
+
rubygems_version: 3.1.2
|
156
|
+
signing_key:
|
171
157
|
specification_version: 4
|
172
158
|
summary: Client library for Amazon's Product Advertising API v5
|
173
159
|
test_files: []
|