spree_core 4.1.15 → 4.2.0.beta

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 (92) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/spree/base_controller.rb +1 -0
  3. data/app/helpers/spree/base_helper.rb +23 -2
  4. data/app/helpers/spree/mail_helper.rb +24 -0
  5. data/app/mailers/spree/base_mailer.rb +17 -3
  6. data/app/mailers/spree/order_mailer.rb +11 -2
  7. data/app/mailers/spree/reimbursement_mailer.rb +4 -2
  8. data/app/mailers/spree/shipment_mailer.rb +4 -2
  9. data/app/models/concerns/spree/default_price.rb +2 -1
  10. data/app/models/concerns/spree/user_methods.rb +11 -5
  11. data/app/models/spree/app_configuration.rb +5 -0
  12. data/app/models/spree/app_dependencies.rb +1 -7
  13. data/app/models/spree/line_item.rb +11 -3
  14. data/app/models/spree/option_type.rb +5 -1
  15. data/app/models/spree/order/address_book.rb +20 -7
  16. data/app/models/spree/order/store_credit.rb +0 -8
  17. data/app/models/spree/order.rb +28 -12
  18. data/app/models/spree/price.rb +26 -2
  19. data/app/models/spree/product.rb +17 -7
  20. data/app/models/spree/promotion_handler/coupon.rb +3 -2
  21. data/app/models/spree/reimbursement.rb +2 -0
  22. data/app/models/spree/shipment.rb +2 -5
  23. data/app/models/spree/stock_location.rb +13 -2
  24. data/app/models/spree/store.rb +19 -2
  25. data/app/models/spree/variant.rb +15 -2
  26. data/app/presenters/spree/variant_presenter.rb +7 -0
  27. data/app/presenters/spree/variants/option_types_presenter.rb +1 -0
  28. data/app/services/spree/checkout/update.rb +2 -13
  29. data/app/views/layouts/spree/base_mailer.html.erb +45 -40
  30. data/app/views/spree/order_mailer/cancel_email.html.erb +19 -25
  31. data/app/views/spree/order_mailer/cancel_email.text.erb +24 -2
  32. data/app/views/spree/order_mailer/confirm_email.html.erb +18 -65
  33. data/app/views/spree/order_mailer/confirm_email.text.erb +2 -1
  34. data/app/views/spree/order_mailer/store_owner_notification_email.html.erb +23 -0
  35. data/app/views/spree/order_mailer/store_owner_notification_email.text.erb +38 -0
  36. data/app/views/spree/reimbursement_mailer/reimbursement_email.html.erb +53 -58
  37. data/app/views/spree/reimbursement_mailer/reimbursement_email.text.erb +3 -1
  38. data/app/views/spree/shared/_base_mailer_footer.html.erb +6 -14
  39. data/app/views/spree/shared/_base_mailer_header.html.erb +12 -32
  40. data/app/views/spree/shared/_base_mailer_stylesheets.html.erb +293 -625
  41. data/app/views/spree/shared/_purchased_items_table.html.erb +60 -0
  42. data/app/views/spree/shared/purchased_items_table/_adjustment.html.erb +13 -0
  43. data/app/views/spree/shared/purchased_items_table/_line_item.html.erb +27 -0
  44. data/app/views/spree/shared/purchased_items_table/_subtotal.html.erb +13 -0
  45. data/app/views/spree/shared/purchased_items_table/_total.html.erb +13 -0
  46. data/app/views/spree/shipment_mailer/shipped_email.html.erb +31 -36
  47. data/app/views/spree/shipment_mailer/shipped_email.text.erb +2 -1
  48. data/config/initializers/assets.rb +1 -0
  49. data/config/locales/en.yml +113 -13
  50. data/db/default/spree/stores.rb +11 -10
  51. data/db/migrate/20140309033438_create_store_from_preferences.rb +1 -1
  52. data/db/migrate/20191016134113_add_deafult_value_for_store_default_currency.rb +1 -1
  53. data/db/migrate/20191017121054_add_supported_currencies_to_store.rb +10 -0
  54. data/db/migrate/20200102141311_add_social_to_spree_stores.rb +4 -1
  55. data/db/migrate/20200212144523_add_hide_from_nav_to_taxons.rb +1 -1
  56. data/db/migrate/20200308210757_add_default_locale_to_spree_store.rb +7 -0
  57. data/db/migrate/20200310145140_add_customer_support_email_to_spree_store.rb +7 -0
  58. data/db/migrate/20200421095017_add_compare_at_amount_to_spree_prices.rb +7 -0
  59. data/db/migrate/20200423123001_add_default_country_id_to_spree_store.rb +9 -0
  60. data/db/migrate/20200430072209_add_footer_fields_to_spree_stores.rb +8 -0
  61. data/db/migrate/20200513154939_add_show_property_to_spree_product_properties.rb +5 -0
  62. data/db/migrate/20200607161221_add_store_owner_order_notification_delivered_to_spree_orders.rb +7 -0
  63. data/db/migrate/20200607161222_add_new_order_notifications_email_to_spree_stores.rb +7 -0
  64. data/db/migrate/20200826075557_add_unique_index_on_taxon_id_and_product_id_to_spree_products_taxons.rb +5 -0
  65. data/lib/generators/spree/dummy/dummy_generator.rb +1 -0
  66. data/lib/generators/spree/install/templates/vendor/assets/javascripts/spree/backend/all.js +0 -2
  67. data/lib/generators/spree/install/templates/vendor/assets/javascripts/spree/frontend/all.js +0 -2
  68. data/lib/generators/spree/mailers_preview/mailers_preview_generator.rb +23 -0
  69. data/lib/generators/spree/mailers_preview/templates/mailers/previews/order_preview.rb +13 -0
  70. data/lib/generators/spree/mailers_preview/templates/mailers/previews/reimbursement_preview.rb +5 -0
  71. data/lib/generators/spree/mailers_preview/templates/mailers/previews/shipment_preview.rb +5 -0
  72. data/lib/generators/spree/mailers_preview/templates/mailers/previews/user_preview.rb +11 -0
  73. data/lib/spree/core/controller_helpers/common.rb +1 -0
  74. data/lib/spree/core/controller_helpers/currency_helpers.rb +15 -0
  75. data/lib/spree/core/controller_helpers/store.rb +12 -1
  76. data/lib/spree/core/version.rb +1 -1
  77. data/lib/spree/core.rb +1 -0
  78. data/lib/spree/permitted_attributes.rb +7 -4
  79. data/lib/spree/testing_support/authorization_helpers.rb +7 -4
  80. data/lib/spree/testing_support/capybara_ext.rb +0 -7
  81. data/lib/spree/testing_support/factories/store_factory.rb +11 -8
  82. data/spree_core.gemspec +6 -6
  83. data/vendor/assets/javascripts/cleave.js +1669 -0
  84. metadata +44 -32
  85. data/app/finders/spree/addresses/find.rb +0 -17
  86. data/app/models/spree/order_contents.rb +0 -31
  87. data/app/services/spree/account/addresses/base.rb +0 -39
  88. data/app/services/spree/account/addresses/create.rb +0 -18
  89. data/app/services/spree/account/addresses/update.rb +0 -18
  90. data/app/views/spree/order_mailer/_adjustment.html.erb +0 -8
  91. data/app/views/spree/order_mailer/_subtotal.html.erb +0 -8
  92. data/app/views/spree/order_mailer/_total.html.erb +0 -8
metadata CHANGED
@@ -1,14 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.15
4
+ version: 4.2.0.beta
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sean Schofield
8
- autorequire:
8
+ - Spark Solutions
9
+ autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2024-04-21 00:00:00.000000000 Z
12
+ date: 2020-09-07 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: activemerchant
@@ -115,7 +116,7 @@ dependencies:
115
116
  version: 5.2.1
116
117
  - - "<"
117
118
  - !ruby/object:Gem::Version
118
- version: 5.4.0
119
+ version: 5.5.0
119
120
  type: :runtime
120
121
  prerelease: false
121
122
  version_requirements: !ruby/object:Gem::Requirement
@@ -125,7 +126,7 @@ dependencies:
125
126
  version: 5.2.1
126
127
  - - "<"
127
128
  - !ruby/object:Gem::Version
128
- version: 5.4.0
129
+ version: 5.5.0
129
130
  - !ruby/object:Gem::Dependency
130
131
  name: highline
131
132
  requirement: !ruby/object:Gem::Requirement
@@ -214,22 +215,16 @@ dependencies:
214
215
  name: rails
215
216
  requirement: !ruby/object:Gem::Requirement
216
217
  requirements:
217
- - - ">="
218
- - !ruby/object:Gem::Version
219
- version: '5.2'
220
- - - "<"
218
+ - - "~>"
221
219
  - !ruby/object:Gem::Version
222
- version: '6.1'
220
+ version: 6.0.0
223
221
  type: :runtime
224
222
  prerelease: false
225
223
  version_requirements: !ruby/object:Gem::Requirement
226
224
  requirements:
227
- - - ">="
228
- - !ruby/object:Gem::Version
229
- version: '5.2'
230
- - - "<"
225
+ - - "~>"
231
226
  - !ruby/object:Gem::Version
232
- version: '6.1'
227
+ version: 6.0.0
233
228
  - !ruby/object:Gem::Dependency
234
229
  name: ransack
235
230
  requirement: !ruby/object:Gem::Requirement
@@ -357,7 +352,7 @@ dependencies:
357
352
  version: 4.9.4
358
353
  - - "<"
359
354
  - !ruby/object:Gem::Version
360
- version: 4.12.0
355
+ version: 4.11.0
361
356
  type: :runtime
362
357
  prerelease: false
363
358
  version_requirements: !ruby/object:Gem::Requirement
@@ -367,7 +362,7 @@ dependencies:
367
362
  version: 4.9.4
368
363
  - - "<"
369
364
  - !ruby/object:Gem::Version
370
- version: 4.12.0
365
+ version: 4.11.0
371
366
  - !ruby/object:Gem::Dependency
372
367
  name: image_processing
373
368
  requirement: !ruby/object:Gem::Requirement
@@ -397,7 +392,7 @@ dependencies:
397
392
  - !ruby/object:Gem::Version
398
393
  version: '2.2'
399
394
  description: The bare bones necessary for Spree.
400
- email: sean@spreecommerce.com
395
+ email: hello@spreecommerce.org
401
396
  executables: []
402
397
  extensions: []
403
398
  extra_rdoc_files: []
@@ -412,7 +407,6 @@ files:
412
407
  - app/assets/images/noimage/small.png
413
408
  - app/assets/javascripts/spree.js
414
409
  - app/controllers/spree/base_controller.rb
415
- - app/finders/spree/addresses/find.rb
416
410
  - app/finders/spree/countries/find.rb
417
411
  - app/finders/spree/credit_cards/find.rb
418
412
  - app/finders/spree/line_items/find_by_variant.rb
@@ -423,6 +417,7 @@ files:
423
417
  - app/finders/spree/variants/option_types_finder.rb
424
418
  - app/finders/spree/variants/visible_finder.rb
425
419
  - app/helpers/spree/base_helper.rb
420
+ - app/helpers/spree/mail_helper.rb
426
421
  - app/helpers/spree/products_helper.rb
427
422
  - app/mailers/spree/base_mailer.rb
428
423
  - app/mailers/spree/order_mailer.rb
@@ -496,7 +491,6 @@ files:
496
491
  - app/models/spree/order/currency_updater.rb
497
492
  - app/models/spree/order/payments.rb
498
493
  - app/models/spree/order/store_credit.rb
499
- - app/models/spree/order_contents.rb
500
494
  - app/models/spree/order_inventory.rb
501
495
  - app/models/spree/order_merger.rb
502
496
  - app/models/spree/order_promotion.rb
@@ -626,9 +620,6 @@ files:
626
620
  - app/presenters/spree/variant_presenter.rb
627
621
  - app/presenters/spree/variants/option_types_presenter.rb
628
622
  - app/presenters/spree/variants/options_presenter.rb
629
- - app/services/spree/account/addresses/base.rb
630
- - app/services/spree/account/addresses/create.rb
631
- - app/services/spree/account/addresses/update.rb
632
623
  - app/services/spree/cart/add_item.rb
633
624
  - app/services/spree/cart/create.rb
634
625
  - app/services/spree/cart/estimate_shipping_rates.rb
@@ -651,13 +642,12 @@ files:
651
642
  - app/validators/db_maximum_length_validator.rb
652
643
  - app/validators/email_validator.rb
653
644
  - app/views/layouts/spree/base_mailer.html.erb
654
- - app/views/spree/order_mailer/_adjustment.html.erb
655
- - app/views/spree/order_mailer/_subtotal.html.erb
656
- - app/views/spree/order_mailer/_total.html.erb
657
645
  - app/views/spree/order_mailer/cancel_email.html.erb
658
646
  - app/views/spree/order_mailer/cancel_email.text.erb
659
647
  - app/views/spree/order_mailer/confirm_email.html.erb
660
648
  - app/views/spree/order_mailer/confirm_email.text.erb
649
+ - app/views/spree/order_mailer/store_owner_notification_email.html.erb
650
+ - app/views/spree/order_mailer/store_owner_notification_email.text.erb
661
651
  - app/views/spree/reimbursement_mailer/reimbursement_email.html.erb
662
652
  - app/views/spree/reimbursement_mailer/reimbursement_email.text.erb
663
653
  - app/views/spree/shared/_base_mailer_footer.html.erb
@@ -666,6 +656,11 @@ files:
666
656
  - app/views/spree/shared/_error_messages.html.erb
667
657
  - app/views/spree/shared/_mailer_line_item.html.erb
668
658
  - app/views/spree/shared/_paths.html.erb
659
+ - app/views/spree/shared/_purchased_items_table.html.erb
660
+ - app/views/spree/shared/purchased_items_table/_adjustment.html.erb
661
+ - app/views/spree/shared/purchased_items_table/_line_item.html.erb
662
+ - app/views/spree/shared/purchased_items_table/_subtotal.html.erb
663
+ - app/views/spree/shared/purchased_items_table/_total.html.erb
669
664
  - app/views/spree/shipment_mailer/shipped_email.html.erb
670
665
  - app/views/spree/shipment_mailer/shipped_email.text.erb
671
666
  - app/views/spree/test_mailer/test_email.html.erb
@@ -950,8 +945,18 @@ files:
950
945
  - db/migrate/20190523092729_add_user_id_and_deleted_at_to_spree_addresses.rb
951
946
  - db/migrate/20191005121504_add_store_id_to_payment_methods.rb
952
947
  - db/migrate/20191016134113_add_deafult_value_for_store_default_currency.rb
948
+ - db/migrate/20191017121054_add_supported_currencies_to_store.rb
953
949
  - db/migrate/20200102141311_add_social_to_spree_stores.rb
954
950
  - db/migrate/20200212144523_add_hide_from_nav_to_taxons.rb
951
+ - db/migrate/20200308210757_add_default_locale_to_spree_store.rb
952
+ - db/migrate/20200310145140_add_customer_support_email_to_spree_store.rb
953
+ - db/migrate/20200421095017_add_compare_at_amount_to_spree_prices.rb
954
+ - db/migrate/20200423123001_add_default_country_id_to_spree_store.rb
955
+ - db/migrate/20200430072209_add_footer_fields_to_spree_stores.rb
956
+ - db/migrate/20200513154939_add_show_property_to_spree_product_properties.rb
957
+ - db/migrate/20200607161221_add_store_owner_order_notification_delivered_to_spree_orders.rb
958
+ - db/migrate/20200607161222_add_new_order_notifications_email_to_spree_stores.rb
959
+ - db/migrate/20200826075557_add_unique_index_on_taxon_id_and_product_id_to_spree_products_taxons.rb
955
960
  - db/seeds.rb
956
961
  - lib/friendly_id/slug_rails5_patch.rb
957
962
  - lib/generators/spree/custom_user/custom_user_generator.rb
@@ -978,10 +983,16 @@ files:
978
983
  - lib/generators/spree/install/templates/vendor/assets/javascripts/spree/frontend/all.js
979
984
  - lib/generators/spree/install/templates/vendor/assets/stylesheets/spree/backend/all.css
980
985
  - lib/generators/spree/install/templates/vendor/assets/stylesheets/spree/frontend/all.css
986
+ - lib/generators/spree/mailers_preview/mailers_preview_generator.rb
987
+ - lib/generators/spree/mailers_preview/templates/mailers/previews/order_preview.rb
988
+ - lib/generators/spree/mailers_preview/templates/mailers/previews/reimbursement_preview.rb
989
+ - lib/generators/spree/mailers_preview/templates/mailers/previews/shipment_preview.rb
990
+ - lib/generators/spree/mailers_preview/templates/mailers/previews/user_preview.rb
981
991
  - lib/spree/core.rb
982
992
  - lib/spree/core/components.rb
983
993
  - lib/spree/core/controller_helpers/auth.rb
984
994
  - lib/spree/core/controller_helpers/common.rb
995
+ - lib/spree/core/controller_helpers/currency_helpers.rb
985
996
  - lib/spree/core/controller_helpers/order.rb
986
997
  - lib/spree/core/controller_helpers/search.rb
987
998
  - lib/spree/core/controller_helpers/store.rb
@@ -1087,19 +1098,20 @@ files:
1087
1098
  - spec/fixtures/text-file.txt
1088
1099
  - spec/fixtures/thinking-cat.jpg
1089
1100
  - spree_core.gemspec
1101
+ - vendor/assets/javascripts/cleave.js
1090
1102
  - vendor/assets/javascripts/fetch.umd.js
1091
1103
  - vendor/assets/javascripts/jquery.payment.js
1092
1104
  - vendor/assets/javascripts/jsuri.js
1093
1105
  - vendor/assets/javascripts/polyfill.min.js
1094
- homepage: http://spreecommerce.org
1106
+ homepage: https://spreecommerce.org
1095
1107
  licenses:
1096
1108
  - BSD-3-Clause
1097
1109
  metadata:
1098
1110
  bug_tracker_uri: https://github.com/spree/spree/issues
1099
- changelog_uri: https://github.com/spree/spree/releases/tag/v4.1.15
1111
+ changelog_uri: https://github.com/spree/spree/releases/tag/v4.2.0.beta
1100
1112
  documentation_uri: https://guides.spreecommerce.org/
1101
- source_code_uri: https://github.com/spree/spree/tree/v4.1.15
1102
- post_install_message:
1113
+ source_code_uri: https://github.com/spree/spree/tree/v4.2.0.beta
1114
+ post_install_message:
1103
1115
  rdoc_options: []
1104
1116
  require_paths:
1105
1117
  - lib
@@ -1114,8 +1126,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1114
1126
  - !ruby/object:Gem::Version
1115
1127
  version: 1.8.23
1116
1128
  requirements: []
1117
- rubygems_version: 3.2.22
1118
- signing_key:
1129
+ rubygems_version: 3.1.2
1130
+ signing_key:
1119
1131
  specification_version: 4
1120
1132
  summary: The bare bones necessary for Spree.
1121
1133
  test_files: []
@@ -1,17 +0,0 @@
1
- module Spree
2
- module Addresses
3
- class Find
4
- def initialize(scope:, params:)
5
- @scope = scope
6
- end
7
-
8
- def execute
9
- scope
10
- end
11
-
12
- private
13
-
14
- attr_reader :scope
15
- end
16
- end
17
- end
@@ -1,31 +0,0 @@
1
- module Spree
2
- class OrderContents
3
- attr_accessor :order, :currency
4
-
5
- def initialize(order)
6
- @order = order
7
- end
8
-
9
- def add(variant, quantity = 1, options = {})
10
- Spree::Dependencies.cart_add_item_service.constantize.call(order: order,
11
- variant: variant,
12
- quantity: quantity,
13
- options: options).value
14
- end
15
-
16
- def remove(variant, quantity = 1, options = {})
17
- Spree::Dependencies.cart_remove_item_service.constantize.call(order: order,
18
- variant: variant,
19
- quantity: quantity,
20
- options: options).value
21
- end
22
-
23
- def remove_line_item(line_item, options = {})
24
- Spree::Cart::RemoveLineItem.call(order: @order, line_item: line_item, options: options).value
25
- end
26
-
27
- def update_cart(params)
28
- Spree::Dependencies.cart_update_service.constantize.call(order: order, params: params).value
29
- end
30
- end
31
- end
@@ -1,39 +0,0 @@
1
- module Spree
2
- module Account
3
- module Addresses
4
- class Base
5
- prepend Spree::ServiceModule::Base
6
-
7
- private
8
-
9
- attr_accessor :country
10
-
11
- def fill_country_and_state_ids(params)
12
- replace_country_iso_with_id(params)
13
- fill_state_id(params)
14
- end
15
-
16
- def replace_country_iso_with_id(params)
17
- iso = params[:country_iso]
18
- return params unless iso.present?
19
-
20
- country = Spree::Country.by_iso(iso)
21
- params[:country_id] = country&.id
22
- params.delete(:country_iso)
23
- params
24
- end
25
-
26
- def fill_state_id(params)
27
- state_name = params[:state_name]
28
- return params unless state_name.present?
29
-
30
- country ||= Spree::Country.find(params[:country_id]) if params[:country_id].present?
31
- return params unless country
32
-
33
- params[:state_id] = country.states.find_by(name: state_name)&.id
34
- params
35
- end
36
- end
37
- end
38
- end
39
- end
@@ -1,18 +0,0 @@
1
- module Spree
2
- module Account
3
- module Addresses
4
- class Create < ::Spree::Account::Addresses::Base
5
- def call(user:, address_params:)
6
- fill_country_and_state_ids(address_params)
7
-
8
- address = user.addresses.new(address_params)
9
- if address.save
10
- success(address)
11
- else
12
- failure(address)
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,18 +0,0 @@
1
- module Spree
2
- module Account
3
- module Addresses
4
- class Update < ::Spree::Account::Addresses::Base
5
- def call(address:, address_params:)
6
- address_params[:country_id] ||= address.country_id
7
- fill_country_and_state_ids(address_params)
8
-
9
- if address.update(address_params)
10
- success(address)
11
- else
12
- failure(address)
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,8 +0,0 @@
1
- <tr>
2
- <td class="six sub-columns">
3
- <%= raw(adjustment.label) %>:
4
- </td>
5
- <td class="six sub-columns last right">
6
- <%= adjustment.display_amount %>
7
- </td>
8
- </tr>
@@ -1,8 +0,0 @@
1
- <tr>
2
- <td class="six sub-columns">
3
- <%= Spree.t('order_mailer.subtotal') %>
4
- </td>
5
- <td class="six sub-columns last right">
6
- <%= order.display_item_total %>
7
- </td>
8
- </tr>
@@ -1,8 +0,0 @@
1
- <tr>
2
- <td class="six sub-columns">
3
- <strong><%= Spree.t('order_mailer.total') %></strong>
4
- </td>
5
- <td class="six sub-columns last right">
6
- <strong><%= order.display_total %></strong>
7
- </td>
8
- </tr>