spree_api 5.2.1 → 5.2.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/app/controllers/spree/api/v2/storefront/cart_controller.rb +1 -0
- data/lib/spree/api/dependencies.rb +2 -2
- data/lib/spree/api.rb +45 -0
- metadata +5 -5
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 0af82d85dc62f6abf26a1d3a1e6918937c6b5c25a9cf5da68e100d80ea072db1
|
|
4
|
+
data.tar.gz: '09e9ad23739c736a02e3604df01452dd04414dcbe2446c7074cc312fe1fd0d06'
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e80436d79b176e2e917a3e9140cfc06843a9399e33ce72dfc85b6370acd7a1b41b7ae07293b9aa9fb18d386ed15674babdfd5689c1febf23290aca47d6345283
|
|
7
|
+
data.tar.gz: 8ce901294b6cdad98732a753fb76df9cfc94f2749502f3f3baba458679fd30b60f4205ac22cc83702752593b1cf8d6e2263b5111659e4cf1f5c2715806d14081
|
|
@@ -120,6 +120,7 @@ module Spree
|
|
|
120
120
|
result_errors = coupon_codes.count > 1 ? select_errors(coupon_codes) : select_error(coupon_codes)
|
|
121
121
|
|
|
122
122
|
if result_errors.blank?
|
|
123
|
+
spree_current_order.reload
|
|
123
124
|
render_serialized_payload { serialized_current_order }
|
|
124
125
|
else
|
|
125
126
|
render_error_payload(result_errors)
|
|
@@ -53,10 +53,10 @@ module Spree
|
|
|
53
53
|
# serializers
|
|
54
54
|
storefront_address_serializer: 'Spree::V2::Storefront::AddressSerializer',
|
|
55
55
|
storefront_cart_serializer: 'Spree::V2::Storefront::CartSerializer',
|
|
56
|
-
storefront_cms_page_serializer:
|
|
56
|
+
storefront_cms_page_serializer: nil, # LEGACY
|
|
57
57
|
storefront_credit_card_serializer: 'Spree::V2::Storefront::CreditCardSerializer',
|
|
58
58
|
storefront_country_serializer: 'Spree::V2::Storefront::CountrySerializer',
|
|
59
|
-
storefront_menu_serializer:
|
|
59
|
+
storefront_menu_serializer: nil, # LEGACY
|
|
60
60
|
storefront_user_serializer: 'Spree::V2::Storefront::UserSerializer',
|
|
61
61
|
storefront_shipment_serializer: 'Spree::V2::Storefront::ShipmentSerializer',
|
|
62
62
|
storefront_taxon_serializer: 'Spree::V2::Storefront::TaxonSerializer',
|
data/lib/spree/api.rb
CHANGED
|
@@ -3,6 +3,51 @@ require 'spree/core'
|
|
|
3
3
|
module Spree
|
|
4
4
|
module Api
|
|
5
5
|
end
|
|
6
|
+
|
|
7
|
+
# API dependencies accessor for cleaner access to API dependencies
|
|
8
|
+
#
|
|
9
|
+
# @example Getting a dependency (returns resolved class)
|
|
10
|
+
# Spree.api.storefront_coupon_handler.call(order: order, coupon_code: code)
|
|
11
|
+
#
|
|
12
|
+
# @example Setting a dependency
|
|
13
|
+
# Spree.api.storefront_coupon_handler = MyApp::CouponHandler
|
|
14
|
+
#
|
|
15
|
+
# @return [Spree::ApiDependenciesAccessor] the API dependencies accessor
|
|
16
|
+
def self.api
|
|
17
|
+
@api_accessor ||= ApiDependenciesAccessor.new
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
class ApiDependenciesAccessor
|
|
21
|
+
def method_missing(method_name, *args, &block)
|
|
22
|
+
base_name = method_name.to_s.chomp('=').to_sym
|
|
23
|
+
|
|
24
|
+
return super unless api_dependency?(base_name)
|
|
25
|
+
|
|
26
|
+
if method_name.to_s.end_with?('=')
|
|
27
|
+
Spree::Api::Dependencies.send(method_name, args.first)
|
|
28
|
+
else
|
|
29
|
+
# Returns resolved class
|
|
30
|
+
Spree::Api::Dependencies.send("#{method_name}_class")
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def respond_to_missing?(method_name, include_private = false)
|
|
35
|
+
base_name = method_name.to_s.chomp('=').to_sym
|
|
36
|
+
api_dependency?(base_name) || super
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# Direct access to raw dependencies object for backwards compatibility
|
|
40
|
+
def dependencies
|
|
41
|
+
Spree::Api::Dependencies
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
private
|
|
45
|
+
|
|
46
|
+
def api_dependency?(name)
|
|
47
|
+
defined?(Spree::Api::Dependencies) &&
|
|
48
|
+
Spree::Api::Dependencies.class::INJECTION_POINTS.include?(name)
|
|
49
|
+
end
|
|
50
|
+
end
|
|
6
51
|
end
|
|
7
52
|
|
|
8
53
|
require 'spree/api/engine'
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: spree_api
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 5.2.
|
|
4
|
+
version: 5.2.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ryan Bigg
|
|
@@ -101,14 +101,14 @@ dependencies:
|
|
|
101
101
|
requirements:
|
|
102
102
|
- - '='
|
|
103
103
|
- !ruby/object:Gem::Version
|
|
104
|
-
version: 5.2.
|
|
104
|
+
version: 5.2.2
|
|
105
105
|
type: :runtime
|
|
106
106
|
prerelease: false
|
|
107
107
|
version_requirements: !ruby/object:Gem::Requirement
|
|
108
108
|
requirements:
|
|
109
109
|
- - '='
|
|
110
110
|
- !ruby/object:Gem::Version
|
|
111
|
-
version: 5.2.
|
|
111
|
+
version: 5.2.2
|
|
112
112
|
description: Spree's API
|
|
113
113
|
email:
|
|
114
114
|
- hello@spreecommerce.org
|
|
@@ -377,9 +377,9 @@ licenses:
|
|
|
377
377
|
- BSD-3-Clause
|
|
378
378
|
metadata:
|
|
379
379
|
bug_tracker_uri: https://github.com/spree/spree/issues
|
|
380
|
-
changelog_uri: https://github.com/spree/spree/releases/tag/v5.2.
|
|
380
|
+
changelog_uri: https://github.com/spree/spree/releases/tag/v5.2.2
|
|
381
381
|
documentation_uri: https://docs.spreecommerce.org/
|
|
382
|
-
source_code_uri: https://github.com/spree/spree/tree/v5.2.
|
|
382
|
+
source_code_uri: https://github.com/spree/spree/tree/v5.2.2
|
|
383
383
|
rdoc_options: []
|
|
384
384
|
require_paths:
|
|
385
385
|
- lib
|