spree_api 1.2.5 → 1.3.0.rc1

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.
Files changed (115) hide show
  1. data/.rspec +1 -0
  2. data/app/controllers/spree/api/addresses_controller.rb +17 -0
  3. data/app/controllers/spree/api/base_controller.rb +111 -0
  4. data/app/controllers/spree/api/countries_controller.rb +14 -0
  5. data/app/controllers/spree/api/images_controller.rb +29 -0
  6. data/app/controllers/spree/api/line_items_controller.rb +38 -0
  7. data/app/controllers/spree/api/orders_controller.rb +81 -0
  8. data/app/controllers/spree/api/payments_controller.rb +75 -0
  9. data/app/controllers/spree/api/product_properties_controller.rb +61 -0
  10. data/app/controllers/spree/api/products_controller.rb +45 -0
  11. data/app/controllers/spree/api/return_authorizations_controller.rb +50 -0
  12. data/app/controllers/spree/api/shipments_controller.rb +41 -0
  13. data/app/controllers/spree/api/taxonomies_controller.rb +46 -0
  14. data/app/controllers/spree/api/taxons_controller.rb +49 -0
  15. data/app/controllers/spree/api/variants_controller.rb +71 -0
  16. data/app/controllers/spree/api/zones_controller.rb +43 -0
  17. data/app/helpers/spree/api/api_helpers.rb +0 -5
  18. data/app/overrides/api_admin_user_edit_form.rb +1 -1
  19. data/app/views/spree/admin/users/_api_fields.html.erb +26 -14
  20. data/app/views/spree/api/{v1/addresses/show.rabl → addresses/show.v1.rabl} +0 -0
  21. data/app/views/spree/api/{v1/countries/index.rabl → countries/index.v1.rabl} +0 -0
  22. data/app/views/spree/api/{v1/countries/show.rabl → countries/show.v1.rabl} +0 -0
  23. data/app/views/spree/api/{v1/errors/gateway_error.rabl → errors/gateway_error.v1.rabl} +0 -0
  24. data/app/views/spree/api/{v1/errors/invalid_api_key.rabl → errors/invalid_api_key.v1.rabl} +0 -0
  25. data/app/views/spree/api/{v1/errors/invalid_resource.rabl → errors/invalid_resource.v1.rabl} +0 -0
  26. data/app/views/spree/api/{v1/errors/must_specify_api_key.rabl → errors/must_specify_api_key.v1.rabl} +0 -0
  27. data/app/views/spree/api/{v1/errors/not_found.rabl → errors/not_found.v1.rabl} +0 -0
  28. data/app/views/spree/api/{v1/errors/unauthorized.rabl → errors/unauthorized.v1.rabl} +0 -0
  29. data/app/views/spree/api/{v1/images/show.rabl → images/show.v1.rabl} +0 -0
  30. data/app/views/spree/api/{v1/line_items/new.rabl → line_items/new.v1.rabl} +0 -0
  31. data/app/views/spree/api/{v1/line_items/show.rabl → line_items/show.v1.rabl} +1 -1
  32. data/app/views/spree/api/{v1/orders/address.rabl → orders/address.v1.rabl} +0 -0
  33. data/app/views/spree/api/{v1/orders/canceled.rabl → orders/canceled.v1.rabl} +0 -0
  34. data/app/views/spree/api/{v1/orders/cart.rabl → orders/cart.v1.rabl} +0 -0
  35. data/app/views/spree/api/{v1/orders/complete.rabl → orders/complete.v1.rabl} +0 -0
  36. data/app/views/spree/api/{v1/orders/could_not_transition.rabl → orders/could_not_transition.v1.rabl} +0 -0
  37. data/app/views/spree/api/{v1/orders/delivery.rabl → orders/delivery.v1.rabl} +0 -0
  38. data/app/views/spree/api/{v1/orders/index.rabl → orders/index.v1.rabl} +0 -0
  39. data/app/views/spree/api/{v1/orders/invalid_shipping_method.rabl → orders/invalid_shipping_method.v1.rabl} +0 -0
  40. data/app/views/spree/api/{v1/orders/payment.rabl → orders/payment.v1.rabl} +0 -0
  41. data/app/views/spree/api/{v1/orders/show.rabl → orders/show.v1.rabl} +6 -6
  42. data/app/views/spree/api/{v1/payments/credit_over_limit.rabl → payments/credit_over_limit.v1.rabl} +0 -0
  43. data/app/views/spree/api/{v1/payments/index.rabl → payments/index.v1.rabl} +0 -0
  44. data/app/views/spree/api/{v1/payments/new.rabl → payments/new.v1.rabl} +0 -0
  45. data/app/views/spree/api/{v1/payments/show.rabl → payments/show.v1.rabl} +0 -0
  46. data/app/views/spree/api/{v1/product_properties/index.rabl → product_properties/index.v1.rabl} +0 -0
  47. data/app/views/spree/api/{v1/product_properties/new.rabl → product_properties/new.v1.rabl} +0 -0
  48. data/app/views/spree/api/{v1/product_properties/show.rabl → product_properties/show.v1.rabl} +0 -0
  49. data/app/views/spree/api/{v1/products/index.rabl → products/index.v1.rabl} +1 -2
  50. data/app/views/spree/api/{v1/products/new.rabl → products/new.v1.rabl} +0 -0
  51. data/app/views/spree/api/{v1/products/product.rabl → products/product.v1.rabl} +0 -0
  52. data/app/views/spree/api/{v1/products/show.rabl → products/show.v1.rabl} +1 -1
  53. data/app/views/spree/api/{v1/return_authorizations/index.rabl → return_authorizations/index.v1.rabl} +0 -0
  54. data/app/views/spree/api/{v1/return_authorizations/new.rabl → return_authorizations/new.v1.rabl} +0 -0
  55. data/app/views/spree/api/{v1/return_authorizations/show.rabl → return_authorizations/show.v1.rabl} +0 -0
  56. data/app/views/spree/api/{v1/shipments/cannot_ready_shipment.rabl → shipments/cannot_ready_shipment.v1.rabl} +0 -0
  57. data/app/views/spree/api/{v1/shipments/show.rabl → shipments/show.v1.rabl} +0 -0
  58. data/app/views/spree/api/{v1/taxonomies/index.rabl → taxonomies/index.v1.rabl} +1 -1
  59. data/app/views/spree/api/{v1/taxonomies/nested.rabl → taxonomies/nested.v1.rabl} +1 -1
  60. data/app/views/spree/api/{v1/taxonomies/new.rabl → taxonomies/new.v1.rabl} +0 -0
  61. data/app/views/spree/api/{v1/taxonomies/show.rabl → taxonomies/show.v1.rabl} +1 -1
  62. data/app/views/spree/api/{v1/taxons/index.rabl → taxons/index.v1.rabl} +1 -1
  63. data/app/views/spree/api/{v1/taxons/new.rabl → taxons/new.v1.rabl} +0 -0
  64. data/app/views/spree/api/{v1/taxons/show.rabl → taxons/show.v1.rabl} +0 -0
  65. data/app/views/spree/api/{v1/taxons/taxons.rabl → taxons/taxons.v1.rabl} +1 -1
  66. data/app/views/spree/api/{v1/variants/index.rabl → variants/index.v1.rabl} +0 -0
  67. data/app/views/spree/api/{v1/variants/new.rabl → variants/new.v1.rabl} +0 -0
  68. data/app/views/spree/api/{v1/variants/show.rabl → variants/show.v1.rabl} +1 -1
  69. data/app/views/spree/api/{v1/variants/variant.rabl → variants/variant.v1.rabl} +0 -0
  70. data/app/views/spree/api/{v1/zones/index.rabl → zones/index.v1.rabl} +1 -1
  71. data/app/views/spree/api/{v1/zones/show.rabl → zones/show.v1.rabl} +0 -0
  72. data/config/initializers/metal_load_paths.rb +1 -1
  73. data/config/routes.rb +34 -37
  74. data/db/migrate/20120411123334_resize_api_key_field.rb +1 -1
  75. data/lib/spree/api/engine.rb +8 -1
  76. data/lib/spree_api.rb +1 -0
  77. data/spec/controllers/spree/api/{v1/addresses_controller_spec.rb → addresses_controller_spec.rb} +3 -3
  78. data/spec/controllers/spree/api/{v1/base_controller_spec.rb → base_controller_spec.rb} +2 -9
  79. data/spec/controllers/spree/api/{v1/countries_controller_spec.rb → countries_controller_spec.rb} +5 -5
  80. data/spec/controllers/spree/api/{v1/images_controller_spec.rb → images_controller_spec.rb} +1 -1
  81. data/spec/controllers/spree/api/{v1/line_items_controller_spec.rb → line_items_controller_spec.rb} +2 -2
  82. data/spec/controllers/spree/api/{v1/orders_controller_spec.rb → orders_controller_spec.rb} +7 -12
  83. data/spec/controllers/spree/api/{v1/payments_controller_spec.rb → payments_controller_spec.rb} +2 -2
  84. data/spec/controllers/spree/api/{v1/product_properties_controller_spec.rb → product_properties_controller_spec.rb} +2 -3
  85. data/spec/controllers/spree/api/{v1/products_controller_spec.rb → products_controller_spec.rb} +14 -7
  86. data/spec/controllers/spree/api/{v1/return_authorizations_controller_spec.rb → return_authorizations_controller_spec.rb} +4 -4
  87. data/spec/controllers/spree/api/{v1/shipments_controller_spec.rb → shipments_controller_spec.rb} +4 -9
  88. data/spec/controllers/spree/api/{v1/taxonomies_controller_spec.rb → taxonomies_controller_spec.rb} +11 -11
  89. data/spec/controllers/spree/api/{v1/taxons_controller_spec.rb → taxons_controller_spec.rb} +7 -7
  90. data/spec/controllers/spree/api/{v1/unauthenticated_products_controller_spec.rb → unauthenticated_products_controller_spec.rb} +1 -1
  91. data/spec/controllers/spree/api/{v1/variants_controller_spec.rb → variants_controller_spec.rb} +4 -5
  92. data/spec/controllers/spree/api/{v1/zones_controller_spec.rb → zones_controller_spec.rb} +7 -7
  93. data/spec/support/controller_hacks.rb +1 -1
  94. data/spec/support/have_attributes_matcher.rb +2 -2
  95. data/spree_api.gemspec +1 -0
  96. metadata +139 -115
  97. checksums.yaml +0 -7
  98. data/app/controllers/spree/api/v1/addresses_controller.rb +0 -19
  99. data/app/controllers/spree/api/v1/base_controller.rb +0 -111
  100. data/app/controllers/spree/api/v1/countries_controller.rb +0 -18
  101. data/app/controllers/spree/api/v1/images_controller.rb +0 -32
  102. data/app/controllers/spree/api/v1/inventory_units_controller.rb +0 -50
  103. data/app/controllers/spree/api/v1/line_items_controller.rb +0 -40
  104. data/app/controllers/spree/api/v1/orders_controller.rb +0 -83
  105. data/app/controllers/spree/api/v1/payments_controller.rb +0 -77
  106. data/app/controllers/spree/api/v1/product_properties_controller.rb +0 -64
  107. data/app/controllers/spree/api/v1/products_controller.rb +0 -47
  108. data/app/controllers/spree/api/v1/return_authorizations_controller.rb +0 -53
  109. data/app/controllers/spree/api/v1/shipments_controller.rb +0 -43
  110. data/app/controllers/spree/api/v1/taxonomies_controller.rb +0 -50
  111. data/app/controllers/spree/api/v1/taxons_controller.rb +0 -51
  112. data/app/controllers/spree/api/v1/variants_controller.rb +0 -74
  113. data/app/controllers/spree/api/v1/zones_controller.rb +0 -45
  114. data/app/views/spree/api/v1/inventory_units/show.rabl +0 -2
  115. data/spec/controllers/spree/api/v1/inventory_units_controller_spec.rb +0 -46
@@ -0,0 +1,50 @@
1
+ module Spree
2
+ module Api
3
+ class ReturnAuthorizationsController < Spree::Api::BaseController
4
+ before_filter :authorize_admin!
5
+
6
+ def index
7
+ @return_authorizations = order.return_authorizations.ransack(params[:q]).result
8
+ .page(params[:page]).per(params[:per_page])
9
+ end
10
+
11
+ def show
12
+ @return_authorization = order.return_authorizations.find(params[:id])
13
+ end
14
+
15
+ def create
16
+ @return_authorization = order.return_authorizations.build(params[:return_authorization], :as => :api)
17
+ if @return_authorization.save
18
+ render :show, :status => 201
19
+ else
20
+ invalid_resource!(@return_authorization)
21
+ end
22
+ end
23
+
24
+ def update
25
+ @return_authorization = order.return_authorizations.find(params[:id])
26
+ if @return_authorization.update_attributes(params[:return_authorization])
27
+ render :show
28
+ else
29
+ invalid_resource!(@return_authorization)
30
+ end
31
+ end
32
+
33
+ def destroy
34
+ @return_authorization = order.return_authorizations.find(params[:id])
35
+ @return_authorization.destroy
36
+ render :text => nil, :status => 204
37
+ end
38
+
39
+ private
40
+
41
+ def order
42
+ @order ||= Order.find_by_number!(params[:order_id])
43
+ end
44
+
45
+ def authorize_admin!
46
+ authorize! :manage, Spree::ReturnAuthorization
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,41 @@
1
+ module Spree
2
+ module Api
3
+ class ShipmentsController < Spree::Api::BaseController
4
+ before_filter :find_order
5
+ before_filter :find_and_update_shipment, :only => [:ship, :ready]
6
+
7
+ def ready
8
+ authorize! :read, Shipment
9
+ unless @shipment.ready?
10
+ if @shipment.can_ready?
11
+ @shipment.ready!
12
+ else
13
+ render "spree/api/shipments/cannot_ready_shipment", :status => 422 and return
14
+ end
15
+ end
16
+ render :show
17
+ end
18
+
19
+ def ship
20
+ authorize! :read, Shipment
21
+ unless @shipment.shipped?
22
+ @shipment.ship!
23
+ end
24
+ render :show
25
+ end
26
+
27
+ private
28
+
29
+ def find_order
30
+ @order = Spree::Order.find_by_number!(params[:order_id])
31
+ authorize! :read, @order
32
+ end
33
+
34
+ def find_and_update_shipment
35
+ @shipment = @order.shipments.find_by_number!(params[:id])
36
+ @shipment.update_attributes(params[:shipment])
37
+ @shipment.reload
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,46 @@
1
+ module Spree
2
+ module Api
3
+ class TaxonomiesController < Spree::Api::BaseController
4
+ def index
5
+ @taxonomies = Taxonomy.order('name').includes(:root => :children).ransack(params[:q]).result
6
+ .page(params[:page]).per(params[:per_page])
7
+ end
8
+
9
+ def show
10
+ @taxonomy = Taxonomy.find(params[:id])
11
+ end
12
+
13
+ def create
14
+ authorize! :create, Taxonomy
15
+ @taxonomy = Taxonomy.new(params[:taxonomy])
16
+ if @taxonomy.save
17
+ render :show, :status => 201
18
+ else
19
+ invalid_resource!(@taxonomy)
20
+ end
21
+ end
22
+
23
+ def update
24
+ authorize! :update, Taxonomy
25
+ if taxonomy.update_attributes(params[:taxonomy])
26
+ render :show, :status => 200
27
+ else
28
+ invalid_resource!(taxonomy)
29
+ end
30
+ end
31
+
32
+ def destroy
33
+ authorize! :delete, Taxonomy
34
+ taxonomy.destroy
35
+ render :text => nil, :status => 204
36
+ end
37
+
38
+ private
39
+
40
+ def taxonomy
41
+ @taxonomy ||= Taxonomy.find(params[:id])
42
+ end
43
+
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,49 @@
1
+ module Spree
2
+ module Api
3
+ class TaxonsController < Spree::Api::BaseController
4
+ def index
5
+ @taxons = taxonomy.root.children
6
+ end
7
+
8
+ def show
9
+ @taxon = taxon
10
+ end
11
+
12
+ def create
13
+ authorize! :create, Taxon
14
+ @taxon = Taxon.new(params[:taxon])
15
+ if @taxon.save
16
+ render :show, :status => 201
17
+ else
18
+ invalid_resource!(@taxon)
19
+ end
20
+ end
21
+
22
+ def update
23
+ authorize! :update, Taxon
24
+ if taxon.update_attributes(params[:taxon])
25
+ render :show, :status => 200
26
+ else
27
+ invalid_resource!(taxon)
28
+ end
29
+ end
30
+
31
+ def destroy
32
+ authorize! :delete, Taxon
33
+ taxon.destroy
34
+ render :text => nil, :status => 204
35
+ end
36
+
37
+ private
38
+
39
+ def taxonomy
40
+ @taxonomy ||= Taxonomy.find(params[:taxonomy_id])
41
+ end
42
+
43
+ def taxon
44
+ @taxon ||= taxonomy.taxons.find(params[:id])
45
+ end
46
+
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,71 @@
1
+ module Spree
2
+ module Api
3
+ class VariantsController < Spree::Api::BaseController
4
+ before_filter :product
5
+
6
+ def index
7
+ @variants = scope.includes(:option_values).ransack(params[:q]).result.
8
+ page(params[:page]).per(params[:per_page])
9
+ end
10
+
11
+ def show
12
+ @variant = scope.includes(:option_values).find(params[:id])
13
+ end
14
+
15
+ def new
16
+ end
17
+
18
+ def create
19
+ authorize! :create, Variant
20
+ @variant = scope.new(params[:product])
21
+ if @variant.save
22
+ render :show, :status => 201
23
+ else
24
+ invalid_resource!(@variant)
25
+ end
26
+ end
27
+
28
+ def update
29
+ authorize! :update, Variant
30
+ @variant = scope.find(params[:id])
31
+ if @variant.update_attributes(params[:variant])
32
+ render :show, :status => 200
33
+ else
34
+ invalid_resource!(@product)
35
+ end
36
+ end
37
+
38
+ def destroy
39
+ authorize! :delete, Variant
40
+ @variant = scope.find(params[:id])
41
+ @variant.destroy
42
+ render :text => nil, :status => 204
43
+ end
44
+
45
+ private
46
+ def product
47
+ @product ||= Spree::Product.find_by_permalink(params[:product_id]) if params[:product_id]
48
+ end
49
+
50
+ def scope
51
+ if @product
52
+ unless current_api_user.has_spree_role?("admin") || params[:show_deleted]
53
+ variants = @product.variants_including_master
54
+ else
55
+ variants = @product.variants_including_master_and_deleted
56
+ end
57
+ else
58
+ variants = Variant.scoped
59
+ if current_api_user.has_spree_role?("admin")
60
+ unless params[:show_deleted]
61
+ variants = Variant.active
62
+ end
63
+ else
64
+ variants = variants.active
65
+ end
66
+ end
67
+ variants
68
+ end
69
+ end
70
+ end
71
+ end
@@ -0,0 +1,43 @@
1
+ module Spree
2
+ module Api
3
+ class ZonesController < Spree::Api::BaseController
4
+ def index
5
+ @zones = Zone.order('name ASC').ransack(params[:q]).result.page(params[:page]).per(params[:per_page])
6
+ end
7
+
8
+ def show
9
+ zone
10
+ end
11
+
12
+ def create
13
+ authorize! :create, Zone
14
+ @zone = Zone.new(map_nested_attributes_keys(Spree::Zone, params[:zone]))
15
+ if @zone.save
16
+ render :show, :status => 201
17
+ else
18
+ invalid_resource!(@zone)
19
+ end
20
+ end
21
+
22
+ def update
23
+ authorize! :update, Zone
24
+ if zone.update_attributes(map_nested_attributes_keys(Spree::Zone, params[:zone]))
25
+ render :show, :status => 200
26
+ else
27
+ invalid_resource!(@zone)
28
+ end
29
+ end
30
+
31
+ def destroy
32
+ authorize! :delete, Zone
33
+ zone.destroy
34
+ render :text => nil, :status => 204
35
+ end
36
+
37
+ private
38
+ def zone
39
+ @zone ||= Spree::Zone.find(params[:id])
40
+ end
41
+ end
42
+ end
43
+ end
@@ -64,11 +64,6 @@ module Spree
64
64
  [:id, :name, :permalink, :position, :parent_id, :taxonomy_id]
65
65
  end
66
66
 
67
- def inventory_unit_attributes
68
- [:id, :lock_version, :state, :variant_id, :order_id,
69
- :shipment_id, :return_authorization_id]
70
- end
71
-
72
67
  def return_authorization_attributes
73
68
  [:id, :number, :state, :amount, :order_id, :reason, :created_at, :updated_at]
74
69
  end
@@ -1,6 +1,6 @@
1
1
  Deface::Override.new(:virtual_path => "spree/admin/users/edit",
2
2
  :name => "api_admin_user_edit_form",
3
- :insert_after => "[data-hook='admin_user_edit_form'], #admin_user_edit_form[data-hook]",
3
+ :insert_after => "[data-hook='admin_user_edit_general_settings']",
4
4
  :partial => "spree/admin/users/api_fields",
5
5
  :disabled => false)
6
6
 
@@ -1,20 +1,32 @@
1
- <h2><%= t('access', :scope => 'spree.api') %></h2>
1
+ <fieldset data-hook="admin_user_api_key" class="omega six columns">
2
+ <legend><%= t('access', :scope => 'spree.api') %></legend>
2
3
 
3
- <% if @user.spree_api_key.present? %>
4
- <p><strong><%= t('key', :scope => 'spree.api') %></strong> <%= @user.spree_api_key %></p>
4
+ <% if @user.spree_api_key.present? %>
5
+ <div class="field">
6
+ <%= label_tag t('key', :scope => 'spree.api') %>:
7
+ <%= @user.spree_api_key %>
8
+ </div>
9
+ <div class="filter-actions actions">
10
+ <%= form_tag spree.clear_api_key_admin_user_path(@user), :method => :put do %>
11
+ <%= button t('clear_key', :scope => 'spree.api'), 'icon-trash' %>
12
+ <% end %>
5
13
 
6
- <%= form_tag spree.clear_api_key_admin_user_path(@user), :method => :put do %>
7
- <%= button t('clear_key', :scope => 'spree.api') %>
8
- <% end %>
14
+ <span class="or"><%= t(:or)%></span>
15
+
16
+ <%= form_tag spree.generate_api_key_admin_user_path(@user), :method => :put do %>
17
+ <%= button t('regenerate_key', :scope => 'spree.api'), 'icon-refresh' %>
18
+ <% end %>
19
+ </div>
9
20
 
10
- <%= form_tag spree.generate_api_key_admin_user_path(@user), :method => :put do %>
11
- <%= button t('regenerate_key', :scope => 'spree.api') %>
12
- <% end %>
21
+ <% else %>
13
22
 
14
- <% else %>
23
+ <div class="no-objects-found"><%= t('no_key', :scope => 'spree.api') %></div>
15
24
 
16
- <p><%= t('no_key', :scope => 'spree.api') %></p>
17
- <%= form_tag spree.generate_api_key_admin_user_path(@user), :method => :put do %>
18
- <%= button t('generate_key', :scope => 'spree.api') %>
25
+ <div class="filter-actions actions">
26
+ <%= form_tag spree.generate_api_key_admin_user_path(@user), :method => :put do %>
27
+ <%= button t('generate_key', :scope => 'spree.api'), 'icon-key' %>
28
+ <% end %>
29
+ </div>
19
30
  <% end %>
20
- <% end %>
31
+
32
+ </fieldset>
@@ -1,5 +1,5 @@
1
1
  object @line_item
2
2
  attributes *line_item_attributes
3
3
  child :variant do
4
- extends "spree/api/v1/variants/variant"
4
+ extends "spree/api/variants/variant"
5
5
  end
@@ -1,20 +1,20 @@
1
1
  object @order
2
2
  attributes *order_attributes
3
3
 
4
- if lookup_context.find_all("spree/api/v1/orders/#{@order.state}").present?
5
- extends "spree/api/v1/orders/#{@order.state}"
4
+ if lookup_context.find_all("spree/api/orders/#{@order.state}").present?
5
+ extends "spree/api/orders/#{@order.state}"
6
6
  end
7
7
 
8
8
  child :billing_address => :bill_address do
9
- extends "spree/api/v1/addresses/show"
9
+ extends "spree/api/addresses/show"
10
10
  end
11
11
 
12
12
  child :shipping_address => :ship_address do
13
- extends "spree/api/v1/addresses/show"
13
+ extends "spree/api/addresses/show"
14
14
  end
15
15
 
16
16
  child :line_items => :line_items do
17
- extends "spree/api/v1/line_items/show"
17
+ extends "spree/api/line_items/show"
18
18
  end
19
19
 
20
20
  child :payments => :payments do
@@ -25,5 +25,5 @@ child :payments => :payments do
25
25
  end
26
26
 
27
27
  child :shipments => :shipments do
28
- extends "spree/api/v1/shipments/show"
28
+ extends "spree/api/shipments/show"
29
29
  end