solidus_core 3.2.5 → 3.3.0

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 (91) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +6 -2
  3. data/app/controllers/spree/base_controller.rb +1 -1
  4. data/app/models/concerns/spree/active_storage_adapter/attachment.rb +4 -0
  5. data/app/models/concerns/spree/ransackable_attributes.rb +24 -4
  6. data/app/models/concerns/spree/user_methods.rb +2 -2
  7. data/app/models/spree/address.rb +1 -1
  8. data/app/models/spree/calculator/flat_fee.rb +21 -0
  9. data/app/models/spree/country.rb +1 -1
  10. data/app/models/spree/credit_card.rb +1 -1
  11. data/app/models/spree/customer_return.rb +1 -1
  12. data/app/models/spree/line_item.rb +2 -2
  13. data/app/models/spree/option_type.rb +1 -1
  14. data/app/models/spree/option_value.rb +1 -1
  15. data/app/models/spree/order/number_generator.rb +7 -1
  16. data/app/models/spree/order.rb +4 -3
  17. data/app/models/spree/order_promotion.rb +1 -1
  18. data/app/models/spree/order_updater.rb +11 -2
  19. data/app/models/spree/payment/processing.rb +58 -55
  20. data/app/models/spree/payment_method/bogus_credit_card.rb +6 -7
  21. data/app/models/spree/payment_method/simple_bogus_credit_card.rb +8 -0
  22. data/app/models/spree/payment_method.rb +16 -10
  23. data/app/models/spree/price.rb +1 -1
  24. data/app/models/spree/product.rb +3 -3
  25. data/app/models/spree/product_property.rb +1 -1
  26. data/app/models/spree/promotion/actions/free_shipping.rb +1 -0
  27. data/app/models/spree/promotion/order_adjustments_recalculator.rb +92 -0
  28. data/app/models/spree/promotion.rb +2 -2
  29. data/app/models/spree/promotion_code.rb +1 -1
  30. data/app/models/spree/property.rb +1 -1
  31. data/app/models/spree/return_authorization.rb +1 -1
  32. data/app/models/spree/shipment.rb +2 -2
  33. data/app/models/spree/state.rb +1 -1
  34. data/app/models/spree/stock_item.rb +1 -1
  35. data/app/models/spree/stock_location.rb +1 -1
  36. data/app/models/spree/stock_movement.rb +2 -2
  37. data/app/models/spree/store_credit_prioritizer.rb +17 -0
  38. data/app/models/spree/tax/tax_helpers.rb +2 -2
  39. data/app/models/spree/tax_calculator/default.rb +31 -0
  40. data/app/models/spree/tax_rate.rb +9 -3
  41. data/app/models/spree/taxon.rb +1 -1
  42. data/app/models/spree/taxonomy.rb +1 -1
  43. data/app/models/spree/user_last_url_storer/rules/authentication_rule.rb +1 -1
  44. data/app/models/spree/variant.rb +25 -5
  45. data/app/models/spree/zone.rb +1 -1
  46. data/config/locales/en.yml +17 -2
  47. data/db/migrate/20220805202442_add_level_to_spree_tax_rates.rb +5 -0
  48. data/db/migrate/20221123152807_add_shipping_category_to_spree_variants.rb +5 -0
  49. data/db/seeds.rb +4 -1
  50. data/lib/generators/solidus/install/app_templates/authentication/custom.rb +21 -0
  51. data/lib/generators/solidus/install/app_templates/authentication/devise.rb +16 -0
  52. data/lib/generators/solidus/install/app_templates/authentication/existing.rb +10 -0
  53. data/lib/generators/solidus/install/app_templates/authentication/none.rb +1 -0
  54. data/lib/generators/solidus/install/app_templates/frontend/break_down_solidus_gem.rb +54 -0
  55. data/lib/generators/solidus/install/app_templates/frontend/classic.rb +16 -0
  56. data/lib/generators/solidus/install/app_templates/frontend/none.rb +2 -0
  57. data/lib/generators/solidus/install/app_templates/frontend/starter.rb +3 -0
  58. data/lib/generators/solidus/install/app_templates/payment_method/bolt.rb +11 -9
  59. data/lib/generators/solidus/install/app_templates/payment_method/paypal.rb +8 -9
  60. data/lib/generators/solidus/install/install_generator.rb +213 -190
  61. data/lib/generators/solidus/install/templates/config/initializers/spree.rb.tt +3 -4
  62. data/lib/generators/spree/custom_user/custom_user_generator.rb +6 -4
  63. data/lib/generators/spree/custom_user/templates/authentication_helpers.rb.tt +2 -6
  64. data/lib/generators/spree/custom_user/templates/migration.rb.tt +7 -3
  65. data/lib/generators/spree/dummy/dummy_generator.rb +10 -8
  66. data/lib/generators/spree/dummy/templates/rails/database.yml +6 -12
  67. data/lib/spree/app_configuration.rb +23 -0
  68. data/lib/spree/core/controller_helpers/current_host.rb +5 -1
  69. data/lib/spree/core/engine.rb +1 -0
  70. data/lib/spree/core/search/base.rb +17 -8
  71. data/lib/spree/core/version.rb +2 -2
  72. data/lib/spree/core.rb +1 -20
  73. data/lib/spree/migrations.rb +12 -10
  74. data/lib/spree/permitted_attributes.rb +4 -1
  75. data/lib/spree/preferences/static_model_preferences.rb +25 -8
  76. data/lib/spree/rails_compatibility.rb +0 -17
  77. data/lib/spree/testing_support/common_rake.rb +7 -6
  78. data/lib/spree/testing_support/dummy_app.rb +2 -2
  79. data/lib/spree/testing_support/factories/address_factory.rb +9 -11
  80. data/lib/spree/testing_support/factories/calculator_factory.rb +3 -0
  81. data/lib/spree/testing_support/factories/country_factory.rb +1 -2
  82. data/lib/spree/testing_support/factories/promotion_factory.rb +28 -14
  83. data/lib/spree/testing_support/factories/state_factory.rb +8 -2
  84. data/lib/spree/testing_support/factory_bot.rb +1 -1
  85. data/lib/spree/testing_support/order_walkthrough.rb +1 -1
  86. data/lib/tasks/colorado_delivery_fee.rake +28 -0
  87. data/solidus_core.gemspec +2 -2
  88. metadata +33 -22
  89. data/lib/generators/solidus/install/install_generator/bundler_context.rb +0 -105
  90. data/lib/generators/solidus/install/install_generator/install_frontend.rb +0 -61
  91. data/lib/generators/solidus/install/install_generator/support_solidus_frontend_extraction.rb +0 -48
data/solidus_core.gemspec CHANGED
@@ -20,14 +20,14 @@ Gem::Specification.new do |s|
20
20
  f.match(%r{^(spec|script)/})
21
21
  end
22
22
 
23
- s.required_ruby_version = '>= 2.5.0'
23
+ s.required_ruby_version = '>= 2.7.0'
24
24
  s.required_rubygems_version = '>= 1.8.23'
25
25
 
26
26
  %w[
27
27
  actionmailer actionpack actionview activejob activemodel activerecord
28
28
  activesupport railties
29
29
  ].each do |rails_dep|
30
- s.add_dependency rails_dep, ['>= 5.2', '< 7.1.x']
30
+ s.add_dependency rails_dep, ['>= 6.0', '< 7.1.x']
31
31
  end
32
32
 
33
33
  s.add_dependency 'activemerchant', '~> 1.66'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: solidus_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.5
4
+ version: 3.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Solidus Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-12-23 00:00:00.000000000 Z
11
+ date: 2023-01-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: actionmailer
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '5.2'
19
+ version: '6.0'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: 7.1.x
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: '5.2'
29
+ version: '6.0'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: 7.1.x
@@ -36,7 +36,7 @@ dependencies:
36
36
  requirements:
37
37
  - - ">="
38
38
  - !ruby/object:Gem::Version
39
- version: '5.2'
39
+ version: '6.0'
40
40
  - - "<"
41
41
  - !ruby/object:Gem::Version
42
42
  version: 7.1.x
@@ -46,7 +46,7 @@ dependencies:
46
46
  requirements:
47
47
  - - ">="
48
48
  - !ruby/object:Gem::Version
49
- version: '5.2'
49
+ version: '6.0'
50
50
  - - "<"
51
51
  - !ruby/object:Gem::Version
52
52
  version: 7.1.x
@@ -56,7 +56,7 @@ dependencies:
56
56
  requirements:
57
57
  - - ">="
58
58
  - !ruby/object:Gem::Version
59
- version: '5.2'
59
+ version: '6.0'
60
60
  - - "<"
61
61
  - !ruby/object:Gem::Version
62
62
  version: 7.1.x
@@ -66,7 +66,7 @@ dependencies:
66
66
  requirements:
67
67
  - - ">="
68
68
  - !ruby/object:Gem::Version
69
- version: '5.2'
69
+ version: '6.0'
70
70
  - - "<"
71
71
  - !ruby/object:Gem::Version
72
72
  version: 7.1.x
@@ -76,7 +76,7 @@ dependencies:
76
76
  requirements:
77
77
  - - ">="
78
78
  - !ruby/object:Gem::Version
79
- version: '5.2'
79
+ version: '6.0'
80
80
  - - "<"
81
81
  - !ruby/object:Gem::Version
82
82
  version: 7.1.x
@@ -86,7 +86,7 @@ dependencies:
86
86
  requirements:
87
87
  - - ">="
88
88
  - !ruby/object:Gem::Version
89
- version: '5.2'
89
+ version: '6.0'
90
90
  - - "<"
91
91
  - !ruby/object:Gem::Version
92
92
  version: 7.1.x
@@ -96,7 +96,7 @@ dependencies:
96
96
  requirements:
97
97
  - - ">="
98
98
  - !ruby/object:Gem::Version
99
- version: '5.2'
99
+ version: '6.0'
100
100
  - - "<"
101
101
  - !ruby/object:Gem::Version
102
102
  version: 7.1.x
@@ -106,7 +106,7 @@ dependencies:
106
106
  requirements:
107
107
  - - ">="
108
108
  - !ruby/object:Gem::Version
109
- version: '5.2'
109
+ version: '6.0'
110
110
  - - "<"
111
111
  - !ruby/object:Gem::Version
112
112
  version: 7.1.x
@@ -116,7 +116,7 @@ dependencies:
116
116
  requirements:
117
117
  - - ">="
118
118
  - !ruby/object:Gem::Version
119
- version: '5.2'
119
+ version: '6.0'
120
120
  - - "<"
121
121
  - !ruby/object:Gem::Version
122
122
  version: 7.1.x
@@ -126,7 +126,7 @@ dependencies:
126
126
  requirements:
127
127
  - - ">="
128
128
  - !ruby/object:Gem::Version
129
- version: '5.2'
129
+ version: '6.0'
130
130
  - - "<"
131
131
  - !ruby/object:Gem::Version
132
132
  version: 7.1.x
@@ -136,7 +136,7 @@ dependencies:
136
136
  requirements:
137
137
  - - ">="
138
138
  - !ruby/object:Gem::Version
139
- version: '5.2'
139
+ version: '6.0'
140
140
  - - "<"
141
141
  - !ruby/object:Gem::Version
142
142
  version: 7.1.x
@@ -146,7 +146,7 @@ dependencies:
146
146
  requirements:
147
147
  - - ">="
148
148
  - !ruby/object:Gem::Version
149
- version: '5.2'
149
+ version: '6.0'
150
150
  - - "<"
151
151
  - !ruby/object:Gem::Version
152
152
  version: 7.1.x
@@ -156,7 +156,7 @@ dependencies:
156
156
  requirements:
157
157
  - - ">="
158
158
  - !ruby/object:Gem::Version
159
- version: '5.2'
159
+ version: '6.0'
160
160
  - - "<"
161
161
  - !ruby/object:Gem::Version
162
162
  version: 7.1.x
@@ -166,7 +166,7 @@ dependencies:
166
166
  requirements:
167
167
  - - ">="
168
168
  - !ruby/object:Gem::Version
169
- version: '5.2'
169
+ version: '6.0'
170
170
  - - "<"
171
171
  - !ruby/object:Gem::Version
172
172
  version: 7.1.x
@@ -482,6 +482,7 @@ files:
482
482
  - app/models/spree/calculator.rb
483
483
  - app/models/spree/calculator/default_tax.rb
484
484
  - app/models/spree/calculator/distributed_amount.rb
485
+ - app/models/spree/calculator/flat_fee.rb
485
486
  - app/models/spree/calculator/flat_percent_item_total.rb
486
487
  - app/models/spree/calculator/flat_rate.rb
487
488
  - app/models/spree/calculator/flexi_rate.rb
@@ -552,6 +553,7 @@ files:
552
553
  - app/models/spree/promotion/actions/create_item_adjustments.rb
553
554
  - app/models/spree/promotion/actions/create_quantity_adjustments.rb
554
555
  - app/models/spree/promotion/actions/free_shipping.rb
556
+ - app/models/spree/promotion/order_adjustments_recalculator.rb
555
557
  - app/models/spree/promotion/rules/first_order.rb
556
558
  - app/models/spree/promotion/rules/first_repeat_purchase_since.rb
557
559
  - app/models/spree/promotion/rules/item_total.rb
@@ -654,6 +656,7 @@ files:
654
656
  - app/models/spree/store_credit.rb
655
657
  - app/models/spree/store_credit_category.rb
656
658
  - app/models/spree/store_credit_event.rb
659
+ - app/models/spree/store_credit_prioritizer.rb
657
660
  - app/models/spree/store_credit_reason.rb
658
661
  - app/models/spree/store_credit_type.rb
659
662
  - app/models/spree/store_payment_method.rb
@@ -763,14 +766,21 @@ files:
763
766
  - db/migrate/20210122110141_add_name_to_spree_addresses.rb
764
767
  - db/migrate/20210312061050_change_column_null_on_prices.rb
765
768
  - db/migrate/20220317165036_set_promotions_with_any_policy_to_all_if_possible.rb
769
+ - db/migrate/20220805202442_add_level_to_spree_tax_rates.rb
770
+ - db/migrate/20221123152807_add_shipping_category_to_spree_variants.rb
766
771
  - db/seeds.rb
772
+ - lib/generators/solidus/install/app_templates/authentication/custom.rb
773
+ - lib/generators/solidus/install/app_templates/authentication/devise.rb
774
+ - lib/generators/solidus/install/app_templates/authentication/existing.rb
775
+ - lib/generators/solidus/install/app_templates/authentication/none.rb
776
+ - lib/generators/solidus/install/app_templates/frontend/break_down_solidus_gem.rb
777
+ - lib/generators/solidus/install/app_templates/frontend/classic.rb
778
+ - lib/generators/solidus/install/app_templates/frontend/none.rb
779
+ - lib/generators/solidus/install/app_templates/frontend/starter.rb
767
780
  - lib/generators/solidus/install/app_templates/payment_method/bolt.rb
768
781
  - lib/generators/solidus/install/app_templates/payment_method/none.rb
769
782
  - lib/generators/solidus/install/app_templates/payment_method/paypal.rb
770
783
  - lib/generators/solidus/install/install_generator.rb
771
- - lib/generators/solidus/install/install_generator/bundler_context.rb
772
- - lib/generators/solidus/install/install_generator/install_frontend.rb
773
- - lib/generators/solidus/install/install_generator/support_solidus_frontend_extraction.rb
774
784
  - lib/generators/solidus/install/templates/config/initializers/spree.rb.tt
775
785
  - lib/generators/solidus/install/templates/vendor/assets/javascripts/spree/backend/all.js
776
786
  - lib/generators/solidus/install/templates/vendor/assets/stylesheets/spree/backend/all.css
@@ -973,6 +983,7 @@ files:
973
983
  - lib/spree/testing_support/url_helpers.rb
974
984
  - lib/spree/user_class_handle.rb
975
985
  - lib/spree_core.rb
986
+ - lib/tasks/colorado_delivery_fee.rake
976
987
  - lib/tasks/payment_method.rake
977
988
  - lib/tasks/solidus/check_orders_with_invalid_email.rake
978
989
  - lib/tasks/solidus/delete_prices_with_nil_amount.rake
@@ -1016,7 +1027,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
1016
1027
  requirements:
1017
1028
  - - ">="
1018
1029
  - !ruby/object:Gem::Version
1019
- version: 2.5.0
1030
+ version: 2.7.0
1020
1031
  required_rubygems_version: !ruby/object:Gem::Requirement
1021
1032
  requirements:
1022
1033
  - - ">="
@@ -1,105 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Solidus
4
- class InstallGenerator < Rails::Generators::AppBase
5
- # Bundler context during the install process.
6
- #
7
- # This class gives access to information about the bundler context in which
8
- # the install generator is run. I.e., which solidus components are present
9
- # in the user's Gemfile. It also allows modifying the Gemfile to add or
10
- # remove gems.
11
- #
12
- # @api private
13
- class BundlerContext
14
- # Write and remove into and from a Gemfile
15
- #
16
- # This custom injector fixes support for path, git and custom sources,
17
- # which is missing in bundler's upstream injector for a dependency fetched
18
- # with `Bundled.locked_gems.dependencies`.
19
- #
20
- # @api private
21
- class InjectorWithPathSupport < Bundler::Injector
22
- private def build_gem_lines(conservative_versioning)
23
- @deps.map do |d|
24
- name = d.name.dump
25
- is_local = d.source.instance_of?(Bundler::Source::Path)
26
- is_git = d.source.instance_of?(Bundler::Source::Git)
27
-
28
- requirement = if is_local
29
- ", path: \"#{d.source.path}\""
30
- elsif is_git
31
- ", git: \"#{d.git}\"".yield_self { |g| d.ref ? g + ", ref: \"#{d.ref}\"" : g }
32
- elsif conservative_versioning
33
- ", \"#{conservative_version(@definition.specs[d.name][0])}\""
34
- else
35
- ", #{d.requirement.as_list.map(&:dump).join(", ")}"
36
- end
37
-
38
- source = ", :source => \"#{d.source.remotes.join(",")}\"" unless is_local || is_git || d.source.nil?
39
-
40
- %(gem #{name}#{requirement}#{source})
41
- end.join("\n")
42
- end
43
- end
44
-
45
- attr_reader :dependencies, :injector
46
-
47
- def self.bundle_cleanly(&block)
48
- Bundler.respond_to?(:with_unbundled_env) ? Bundler.with_unbundled_env(&block) : Bundler.with_clean_env(&block)
49
- end
50
-
51
- def initialize
52
- @dependencies = uncached_dependencies
53
- @injector = InjectorWithPathSupport
54
- end
55
-
56
- def solidus_in_gemfile?
57
- !solidus_dependency.nil?
58
- end
59
-
60
- def component_in_gemfile?(name)
61
- !@dependencies["solidus_#{name}"].nil?
62
- end
63
-
64
- def break_down_components(components)
65
- raise <<~MSG unless solidus_in_gemfile?
66
- solidus meta gem needs to be present in the Gemfile to build the component dependency
67
- MSG
68
-
69
- @injector.inject(
70
- components.map { |component| dependency_for_component(component) }
71
- )
72
- end
73
-
74
- def remove(*args, **kwargs, &block)
75
- @injector.remove(*args, **kwargs, &block)
76
- end
77
-
78
- private
79
-
80
- def dependency_for_component(component)
81
- Bundler::Dependency.new(
82
- "solidus_#{component}",
83
- solidus_dependency.requirement,
84
- {
85
- "source" => solidus_dependency.source,
86
- "git" => solidus_dependency.source.try(:uri),
87
- "ref" => solidus_dependency.source.try(:ref)
88
- }
89
- )
90
- end
91
-
92
- def solidus_dependency
93
- @dependencies['solidus']
94
- end
95
-
96
- # We want to get the locked gems from `Bundler.definition.locked_gems`
97
- # instead of `Bundler.locked_gems` so that the locked gems won't be
98
- # memoized. See
99
- # https://rubydoc.info/gems/bundler/2.3.22/Bundler.locked_gems.
100
- def uncached_dependencies
101
- Bundler.definition.locked_gems.dependencies
102
- end
103
- end
104
- end
105
- end
@@ -1,61 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Solidus
4
- class InstallGenerator < Rails::Generators::AppBase
5
- class InstallFrontend
6
- attr_reader :bundler_context,
7
- :generator_context
8
-
9
- def initialize(bundler_context:, generator_context:)
10
- @bundler_context = bundler_context
11
- @generator_context = generator_context
12
- end
13
-
14
- def call(frontend)
15
- case frontend
16
- when 'solidus_frontend'
17
- install_solidus_frontend
18
- when 'solidus_starter_frontend'
19
- install_solidus_starter_frontend
20
- else
21
- install_custom_frontend
22
- end
23
- end
24
-
25
- private
26
-
27
- def install_solidus_frontend
28
- unless @bundler_context.component_in_gemfile?(:frontend)
29
- # `Rails::Generator::AppBase#bundle_command` is protected so have to `send` it.
30
- # See https://api.rubyonrails.org/v3.2.16/classes/Rails/Generators/AppBase.html#method-i-run_bundle
31
- @generator_context.send :bundle_command, 'add solidus_frontend'
32
- end
33
-
34
- # Solidus bolt will be handled in the installer as a payment method.
35
- begin
36
- skip_solidus_bolt = ENV['SKIP_SOLIDUS_BOLT']
37
- ENV['SKIP_SOLIDUS_BOLT'] = 'true'
38
- @generator_context.generate("solidus_frontend:install #{@generator_context.options[:auto_accept] ? '--auto-accept' : ''}")
39
- ensure
40
- ENV['SKIP_SOLIDUS_BOLT'] = skip_solidus_bolt
41
- end
42
- end
43
-
44
- def install_solidus_starter_frontend
45
- remove_solidus_frontend
46
- @generator_context.apply "https://raw.githubusercontent.com/solidusio/solidus_starter_frontend/v3.2/template.rb"
47
- end
48
-
49
- def install_custom_frontend
50
- remove_solidus_frontend
51
- @generator_context.apply ENV['FRONTEND'] or abort("Frontend installation failed.")
52
- end
53
-
54
- def remove_solidus_frontend
55
- return unless @bundler_context.component_in_gemfile?(:frontend)
56
-
57
- @bundler_context.remove(['solidus_frontend'])
58
- end
59
- end
60
- end
61
- end
@@ -1,48 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Solidus
4
- class InstallGenerator < Rails::Generators::AppBase
5
- # Helper for extracting solidus_frontend from solidus meta-gem
6
- #
7
- # We're recommending users use newer solidus_starter_frontend. However,
8
- # we're still shipping solidus_frontend as part of the solidus meta-gem. The
9
- # reason is that we don't want users updating previous versions to see its
10
- # storefront gone suddenly.
11
- #
12
- # In future solidus releases, solidus_frontend won't be a component anymore.
13
- # However, until that happens:
14
- #
15
- # - For users of the new frontend, we need to prevent pulling
16
- # solidus_frontend.
17
- # - For users of the legacy frontend, we need to prevent Bundler from
18
- # resolving it from the mono-repo while it's still there.
19
- #
20
- # This class is a needed companion during the deprecation
21
- # path. It'll modify the user's Gemfile, breaking the solidus gem down into
22
- # its components but solidus_frontend.
23
- class SupportSolidusFrontendExtraction
24
- attr_reader :bundler_context
25
-
26
- def initialize(bundler_context:)
27
- @bundler_context = bundler_context
28
- end
29
-
30
- def call
31
- return unless needs_to_break_down_solidus_meta_gem?
32
-
33
- break_down_solidus_meta_gem
34
- end
35
-
36
- private
37
-
38
- def break_down_solidus_meta_gem
39
- @bundler_context.break_down_components(%w[core backend api sample])
40
- @bundler_context.remove(['solidus'])
41
- end
42
-
43
- def needs_to_break_down_solidus_meta_gem?
44
- @bundler_context.solidus_in_gemfile?
45
- end
46
- end
47
- end
48
- end