From d4f3b425a428b6060036f90f25a9e18443aecba6 Mon Sep 17 00:00:00 2001 From: Dan Milne Date: Wed, 18 Sep 2019 09:47:28 +1000 Subject: [PATCH] Formatting fixes. Add more shortcuts --- lib/paapi/item.rb | 38 +++++++++++++++++++++++++++----------- 1 file changed, 27 insertions(+), 11 deletions(-) diff --git a/lib/paapi/item.rb b/lib/paapi/item.rb index 9bb81d3..9b8fb4c 100644 --- a/lib/paapi/item.rb +++ b/lib/paapi/item.rb @@ -4,43 +4,59 @@ module Paapi def initialize(data) @raw = data end - + def asin get(['ASIN']) end - + + def detail_url + get(['DetailPageURL']) + end + + def image_url + get(%w{Images Primary Large Height URL}) + end + def title get(%w{ItemInfo Title DisplayValue}) end - + + def contributors + get(%w{ItemInfo ByLineInfo Contributors}) + end + + def authors + a = contributors.select { |e| e['Role'] == 'Author' }.map { |e| Nameable(e['Name'])} + end + def release_date get(%w{ItemInfo ReleaseDate}) end - + def eans get(%w{ItemInfo ExternalIds EANs DisplayValues}) end - + def upcs get(%w{ItemInfo ExternalIds UPCs DisplayValues}) end - + def features get(%w{ItemInfo Features DisplayValues})&.join(' ') end - + def part_number get(%w{ItemInfo ManufactureInfo ItemPartNumber DisplayValue}) end - def format + def package get(%w{ItemInfo TechnicalInfo Formats DisplayValues}) end - + def kindle? - !format.nil? && format&.include?('Kindle eBook') + !package.nil? && package&.include?('Kindle eBook') end - + def get(keys) @raw.dig(*keys) end