Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
Unai Abrisketa committed Aug 27, 2020
2 parents c6dd194 + aa364f2 commit 2094593
Show file tree
Hide file tree
Showing 15 changed files with 820 additions and 480 deletions.
23 changes: 23 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,26 @@
### v0.12.1.pre

* bug-fixes
* Fix camelize function for hashes containing arrays

### v0.12.0.pre

* features
* Add locations methods
* `Locations#all`
* `Locations#create`
* `Locations#delete`
* `Locations#find`
* `Locations#update`

* enhancements
* Use `autoload` instead of `require`

### v0.11.1.pre

* bug-fixes
* Use `BeyondApi::Error` for authentication errors

### v0.11.0.pre

* enhancements
Expand Down
2 changes: 1 addition & 1 deletion Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
PATH
remote: .
specs:
beyond_api (0.11.0.pre)
beyond_api (0.12.1.pre)
faraday (~> 0.15)

GEM
Expand Down
16 changes: 9 additions & 7 deletions lib/beyond_api/error.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,18 @@

module BeyondApi
class Error < StandardError
attr_reader :error_id, :details, :trace_id, :full_message, :status_code
attr_reader :error_id, :details, :trace_id, :full_message, :status_code, :error, :error_description

def initialize(data, status_code = nil)
@error_id = data['errorId']
@details = data['details']
@trace_id = data['traceId']
@full_message = data
@status_code = status_code
@error_id = data['errorId']
@details = data['details']
@trace_id = data['traceId']
@error = data['error']
@error_description = data['error_description']
@full_message = data
@status_code = status_code

super(data['message'])
super(data['message'] || data['error_description'])
end
end
end
9 changes: 8 additions & 1 deletion lib/beyond_api/ext.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,14 @@ class Hash
def deep_transform_keys(&block)
result = {}
each do |key, value|
result[yield(key)] = value.is_a?(Hash) ? value.deep_transform_keys(&block) : value
result[yield(key)] = case value
when Hash
value.deep_transform_keys(&block)
when Array
value.camelize_keys
else
value
end
end
result
end
Expand Down
17 changes: 9 additions & 8 deletions lib/beyond_api/resources/products.rb
Original file line number Diff line number Diff line change
@@ -1,16 +1,17 @@
# frozen_string_literal: true

require "beyond_api/utils"
require "beyond_api/resources/products/attachments"
require "beyond_api/resources/products/availability"
require "beyond_api/resources/products/cross_sells"
require "beyond_api/resources/products/custom_attributes"
require "beyond_api/resources/products/images"
require "beyond_api/resources/products/searches"
require "beyond_api/resources/products/variation_properties"
require "beyond_api/resources/products/videos"

module BeyondApi
autoload :ProductAttachments, "beyond_api/resources/products/attachments"
autoload :ProductAvailability, "beyond_api/resources/products/availability"
autoload :ProductCrossSells, "beyond_api/resources/products/cross_sells"
autoload :ProductCustomAttributes, "beyond_api/resources/products/custom_attributes"
autoload :ProductImages, "beyond_api/resources/products/images"
autoload :ProductSearches, "beyond_api/resources/products/searches"
autoload :ProductVariationProperties, "beyond_api/resources/products/variation_properties"
autoload :ProductVideos, "beyond_api/resources/products/videos"

class Products < Base
include BeyondApi::ProductAttachments
include BeyondApi::ProductAvailability
Expand Down
Loading

0 comments on commit 2094593

Please sign in to comment.