paapi 0.0.6 → 0.0.7
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 +5 -0
- data/lib/paapi.rb +1 -0
- data/lib/paapi/item.rb +1 -1
- data/lib/paapi/listing.rb +48 -0
- data/lib/paapi/response.rb +5 -8
- 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: cd5bdeba6d4ee3d4958b7d23f6cc3402a2461a6ea3791411d5f43db1bef8a9b6
|
4
|
+
data.tar.gz: 240b621b910f947bd7b6bfdec340ee435439262b28435c16b8f95073ac6e9ae7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cfac80fc181b08a016f061811582f64f5bfbed490296899097d8942df86c90f6182e59dc622755d79a3203eee4e3a3aa62e5284e2cdcbc7defc6f67c12a09e68
|
7
|
+
data.tar.gz: 767aaa41948585bd10b9a6fd4a25a3957028cf102bcd72c4cfebf65e7db9ff0c842396db5865824977eeba1d37182c10e5bed59054a0ddc558fd2928f6fdc2ca
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,11 @@
|
|
1
|
+
## 0.0.7
|
2
|
+
- Rename Item#json to Item#hash for consistency
|
3
|
+
- Add offer / listing parsing
|
4
|
+
|
1
5
|
## 0.0.6
|
2
6
|
- Handle more date parsing failures.
|
3
7
|
- Get width, height, depth and weight from items
|
8
|
+
|
4
9
|
## 0.0.5
|
5
10
|
|
6
11
|
- Merged pull request #3 allowing options to be passed into the get_items and get_variations request
|
data/lib/paapi.rb
CHANGED
data/lib/paapi/item.rb
CHANGED
@@ -0,0 +1,48 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'forwardable'
|
4
|
+
|
5
|
+
module Paapi
|
6
|
+
class Listing
|
7
|
+
extend Forwardable
|
8
|
+
def_delegators :@hash, :dig
|
9
|
+
|
10
|
+
attr_accessor :hash
|
11
|
+
def initialize(data)
|
12
|
+
@hash = data
|
13
|
+
end
|
14
|
+
|
15
|
+
def availability
|
16
|
+
get(%w{Availability Message})
|
17
|
+
end
|
18
|
+
|
19
|
+
def amazon_fulfilled?
|
20
|
+
get(%w{DeliveryInfo IsAmazonFulfilled})
|
21
|
+
end
|
22
|
+
|
23
|
+
def free_shipping_eligible?
|
24
|
+
get(%w{DeliveryInfo IsFreeShippingEligible})
|
25
|
+
end
|
26
|
+
|
27
|
+
def prime_eligible?
|
28
|
+
get(%w{DeliveryInfo IsPrimeEligible})
|
29
|
+
end
|
30
|
+
|
31
|
+
def price
|
32
|
+
get(%w{Price})
|
33
|
+
end
|
34
|
+
|
35
|
+
def merchant
|
36
|
+
get(%w{MerchantInfo Name})
|
37
|
+
end
|
38
|
+
|
39
|
+
def condition
|
40
|
+
get(%w{Condition Value})
|
41
|
+
end
|
42
|
+
|
43
|
+
def get(keys)
|
44
|
+
@hash.dig(*keys)
|
45
|
+
end
|
46
|
+
|
47
|
+
end
|
48
|
+
end
|
data/lib/paapi/response.rb
CHANGED
@@ -2,14 +2,14 @@ require 'json'
|
|
2
2
|
|
3
3
|
module Paapi
|
4
4
|
class Response
|
5
|
-
attr_reader :http_response, :
|
5
|
+
attr_reader :http_response, :hash, :datas, :doc, :items
|
6
6
|
|
7
7
|
def initialize(response)
|
8
8
|
@http_response = response
|
9
|
-
@
|
9
|
+
@hash = JSON.parse(response.body.to_s)
|
10
10
|
|
11
|
-
@items_data = @
|
12
|
-
@items_data ||= @
|
11
|
+
@items_data = @hash.dig('ItemsResult', 'Items')
|
12
|
+
@items_data ||= @hash.dig('SearchResult', 'Items')
|
13
13
|
@items_data ||= []
|
14
14
|
|
15
15
|
@items = @items_data.map {|d| Item.new(d)}
|
@@ -17,10 +17,7 @@ module Paapi
|
|
17
17
|
end
|
18
18
|
|
19
19
|
def result_count
|
20
|
-
@
|
20
|
+
@hash.dig('SearchResult', 'TotalResultCount')
|
21
21
|
end
|
22
|
-
|
23
|
-
|
24
|
-
|
25
22
|
end
|
26
23
|
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.7
|
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-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -141,6 +141,7 @@ files:
|
|
141
141
|
- lib/paapi.rb
|
142
142
|
- lib/paapi/client.rb
|
143
143
|
- lib/paapi/item.rb
|
144
|
+
- lib/paapi/listing.rb
|
144
145
|
- lib/paapi/response.rb
|
145
146
|
- lib/paapi/version.rb
|
146
147
|
- paapi.gemspec
|