spree_frontend 4.3.3 → 4.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +191 -0
  3. data/.codeclimate.yml +36 -0
  4. data/.deepsource.toml +19 -0
  5. data/.editorconfig +22 -0
  6. data/.eslintignore +7 -0
  7. data/.eslintrc +36 -0
  8. data/.gem_release.yml +7 -0
  9. data/.github/CONTRIBUTING.md +1 -0
  10. data/.github/ISSUE_TEMPLATE/bug_report.md +47 -0
  11. data/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  12. data/.github/ISSUE_TEMPLATE.md +39 -0
  13. data/.github/dependabot.yml +32 -0
  14. data/.gitignore +58 -0
  15. data/.rubocop.yml +197 -0
  16. data/.solargraph.yml +20 -0
  17. data/.stylelintignore +4 -0
  18. data/.stylelintrc +6 -0
  19. data/CODE_OF_CONDUCT.md +22 -0
  20. data/Gemfile +62 -3
  21. data/LICENSE +1 -1
  22. data/README.md +35 -0
  23. data/SECURITY.md +1 -0
  24. data/app/assets/javascripts/spree/frontend/checkout/address.js +0 -4
  25. data/app/controllers/spree/addresses_controller.rb +2 -2
  26. data/app/controllers/spree/locale_controller.rb +1 -1
  27. data/app/controllers/spree/store_controller.rb +42 -1
  28. data/app/helpers/spree/frontend_helper.rb +19 -1
  29. data/app/helpers/spree/navigation_helper.rb +1 -1
  30. data/app/helpers/spree/store_helper.rb +1 -1
  31. data/app/models/spree/frontend_configuration.rb +7 -1
  32. data/app/services/spree/build_localized_redirect_url.rb +101 -0
  33. data/app/views/spree/checkout/_delivery.html.erb +1 -1
  34. data/app/views/spree/products/_description.html.erb +1 -1
  35. data/app/views/spree/shared/_link_to_account.html.erb +3 -1
  36. data/app/views/spree/shared/_paths.html.erb +1 -1
  37. data/config/routes.rb +4 -4
  38. data/lib/spree/frontend/engine.rb +2 -1
  39. data/lib/spree/frontend/version.rb +9 -0
  40. data/license.md +13 -0
  41. data/spree_frontend.gemspec +2 -2
  42. metadata +32 -10
  43. data/app/views/spree/shared/_taxonomies.html.erb +0 -16
@@ -1,6 +1,8 @@
1
1
  <% if try_spree_current_user %>
2
2
  <%= link_to Spree.t(:my_account).upcase, spree.account_path, class: 'dropdown-item' if spree.respond_to?(:account_path) %>
3
- <%= link_to Spree.t('nav_bar.admin_panel'), spree.admin_orders_path(locale: nil), class: 'dropdown-item text-uppercase' if try_spree_current_user.has_spree_role?(:admin) %>
3
+ <% if spree.respond_to(:admin_orders_path) %>
4
+ <%= link_to Spree.t('nav_bar.admin_panel'), spree.admin_orders_path(locale: nil), class: 'dropdown-item text-uppercase' if try_spree_current_user.has_spree_role?(:admin) %>
5
+ <% end %>
4
6
  <%= link_to Spree.t(:logout).upcase, spree_logout_path, class: 'dropdown-item', method: :get if defined?(spree_logout_path) %>
5
7
  <% else %>
6
8
  <%= link_to Spree.t(:login).upcase, spree_login_path, class: 'dropdown-item' if defined?(spree_login_path) %>
@@ -2,7 +2,7 @@
2
2
  SpreePaths = <%==
3
3
  {
4
4
  mounted_at: Rails.application.routes.url_helpers.spree_path(trailing_slash: true),
5
- admin: Spree.admin_path.gsub(/\A(\/)?(.*[^\/])(\/)?\z/, '\\2/')
5
+ admin: Spree.respond_to?(:admin_path) ? Spree.admin_path.gsub(/\A(\/)?(.*[^\/])(\/)?\z/, '\\2/') : '/admin'
6
6
  }.to_json
7
7
  %>
8
8
  </script>
data/config/routes.rb CHANGED
@@ -2,11 +2,11 @@ Spree::Core::Engine.add_routes do
2
2
  scope '(:locale)', locale: /#{Spree.available_locales.join('|')}/, defaults: { locale: nil } do
3
3
  root to: 'home#index'
4
4
 
5
- resources :products, only: [:index, :show], path: "/#{Spree::Config[:storefront_products_path]}"
5
+ resources :products, only: [:index, :show], path: '/products'
6
6
 
7
- get "/#{Spree::Config[:storefront_products_path]}/:id/related", to: 'products#related'
7
+ get '/products/:id/related', to: 'products#related'
8
8
  # route globbing for pretty nested taxon and product paths
9
- get "/#{Spree::Config[:storefront_taxons_path]}/*id", to: 'taxons#show', as: :nested_taxons
9
+ get '/t/*id', to: 'taxons#show', as: :nested_taxons
10
10
  get '/product_carousel/:id', to: 'taxons#product_carousel'
11
11
 
12
12
  # non-restful checkout stuff
@@ -34,7 +34,7 @@ Spree::Core::Engine.add_routes do
34
34
  get '/api_tokens', to: 'store#api_tokens'
35
35
  post '/ensure_cart', to: 'store#ensure_cart'
36
36
 
37
- get "#{Spree::Config[:storefront_pages_path]}/:slug", to: 'cms_pages#show', as: :page
37
+ get '/pages/:slug', to: 'cms_pages#show', as: :page
38
38
 
39
39
  get '/forbidden', to: 'errors#forbidden', as: :forbidden
40
40
  get '/unauthorized', to: 'errors#unauthorized', as: :unauthorized
@@ -20,7 +20,8 @@ module Spree
20
20
 
21
21
  initializer 'spree.frontend.checking_deprecated_preferences' do
22
22
  Spree::Frontend::Config.deprecated_preferences.each do |pref|
23
- warn "[DEPRECATION] Spree::Frontend::Config[:#{pref[:name]}] is deprecated. #{pref[:message]}"
23
+ # FIXME: we should only notify about deprecated preferences that are in use, not all of them
24
+ # warn "[DEPRECATION] Spree::Frontend::Config[:#{pref[:name]}] is deprecated. #{pref[:message]}"
24
25
  end
25
26
  end
26
27
  end
@@ -0,0 +1,9 @@
1
+ module Spree
2
+ module Frontend
3
+ VERSION = '4.4.0'.freeze
4
+
5
+ def self.version
6
+ VERSION
7
+ end
8
+ end
9
+ end
data/license.md ADDED
@@ -0,0 +1,13 @@
1
+ Spree License
2
+ =============
3
+
4
+ Copyright © 2007-2022, Spree Commerce Inc., Spark Solutions Sp. z o.o. and other contributors.
5
+ All rights reserved.
6
+
7
+ Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
8
+
9
+ * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
10
+ * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
11
+ * Neither the name of Spree Commerce Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
12
+
13
+ _This software is provided by the copyright holders and contributors "as is" and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall the copyright owner or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage._
@@ -1,10 +1,10 @@
1
1
  # encoding: UTF-8
2
- require_relative '../core/lib/spree/core/version.rb'
2
+ require_relative 'lib/spree/frontend/version'
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.platform = Gem::Platform::RUBY
6
6
  s.name = 'spree_frontend'
7
- s.version = Spree.version
7
+ s.version = Spree::Frontend.version
8
8
  s.authors = ['Sean Schofield', 'Spark Solutions']
9
9
  s.email = 'hello@spreecommerce.org'
10
10
  s.summary = 'The default Storefront built with Rails and Turbolinks for Spree eCommerce platform'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_frontend
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.3.3
4
+ version: 4.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sean Schofield
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2024-04-21 00:00:00.000000000 Z
12
+ date: 2022-03-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: spree_api
@@ -17,28 +17,28 @@ dependencies:
17
17
  requirements:
18
18
  - - ">="
19
19
  - !ruby/object:Gem::Version
20
- version: 4.3.3
20
+ version: 4.4.0
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - ">="
26
26
  - !ruby/object:Gem::Version
27
- version: 4.3.3
27
+ version: 4.4.0
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: spree_core
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
32
  - - ">="
33
33
  - !ruby/object:Gem::Version
34
- version: 4.3.3
34
+ version: 4.4.0
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - ">="
40
40
  - !ruby/object:Gem::Version
41
- version: 4.3.3
41
+ version: 4.4.0
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: babel-transpiler
44
44
  requirement: !ruby/object:Gem::Requirement
@@ -206,9 +206,29 @@ executables: []
206
206
  extensions: []
207
207
  extra_rdoc_files: []
208
208
  files:
209
+ - ".circleci/config.yml"
210
+ - ".codeclimate.yml"
211
+ - ".deepsource.toml"
212
+ - ".editorconfig"
213
+ - ".eslintignore"
214
+ - ".eslintrc"
215
+ - ".gem_release.yml"
216
+ - ".github/CONTRIBUTING.md"
217
+ - ".github/ISSUE_TEMPLATE.md"
218
+ - ".github/ISSUE_TEMPLATE/bug_report.md"
219
+ - ".github/ISSUE_TEMPLATE/feature_request.md"
220
+ - ".github/dependabot.yml"
221
+ - ".gitignore"
222
+ - ".rubocop.yml"
223
+ - ".solargraph.yml"
224
+ - ".stylelintignore"
225
+ - ".stylelintrc"
226
+ - CODE_OF_CONDUCT.md
209
227
  - Gemfile
210
228
  - LICENSE
229
+ - README.md
211
230
  - Rakefile
231
+ - SECURITY.md
212
232
  - app/assets/config/spree_frontend_manifest.js
213
233
  - app/assets/images/arrow-down.svg
214
234
  - app/assets/images/arrow-right-circle-fill.svg
@@ -685,6 +705,7 @@ files:
685
705
  - app/helpers/spree/structured_data_helper.rb
686
706
  - app/helpers/spree/taxons_helper.rb
687
707
  - app/models/spree/frontend_configuration.rb
708
+ - app/services/spree/build_localized_redirect_url.rb
688
709
  - app/views/kaminari/twitter-bootstrap-4/_first_page.html.erb
689
710
  - app/views/kaminari/twitter-bootstrap-4/_gap.html.erb
690
711
  - app/views/kaminari/twitter-bootstrap-4/_last_page.html.erb
@@ -791,7 +812,6 @@ files:
791
812
  - app/views/spree/shared/_search.html.erb
792
813
  - app/views/spree/shared/_shipment_tracking.html.erb
793
814
  - app/views/spree/shared/_sidebar.html.erb
794
- - app/views/spree/shared/_taxonomies.html.erb
795
815
  - app/views/spree/shared/_translations.html.erb
796
816
  - app/views/spree/shared/_user_form.html.erb
797
817
  - app/views/spree/shared/carousel/_single.html.erb
@@ -822,7 +842,9 @@ files:
822
842
  - lib/spree/frontend.rb
823
843
  - lib/spree/frontend/engine.rb
824
844
  - lib/spree/frontend/middleware/seo_assist.rb
845
+ - lib/spree/frontend/version.rb
825
846
  - lib/spree_frontend.rb
847
+ - license.md
826
848
  - script/rails
827
849
  - spec/fixtures/files/store_favicon.ico
828
850
  - spec/fixtures/thinking-cat.jpg
@@ -839,9 +861,9 @@ licenses:
839
861
  - BSD-3-Clause
840
862
  metadata:
841
863
  bug_tracker_uri: https://github.com/spree/spree/issues
842
- changelog_uri: https://github.com/spree/spree/releases/tag/v4.3.3
864
+ changelog_uri: https://github.com/spree/spree/releases/tag/v4.4.0
843
865
  documentation_uri: https://dev-docs.spreecommerce.org/
844
- source_code_uri: https://github.com/spree/spree/tree/v4.3.3
866
+ source_code_uri: https://github.com/spree/spree/tree/v4.4.0
845
867
  post_install_message:
846
868
  rdoc_options: []
847
869
  require_paths:
@@ -858,7 +880,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
858
880
  version: '0'
859
881
  requirements:
860
882
  - none
861
- rubygems_version: 3.5.3
883
+ rubygems_version: 3.2.32
862
884
  signing_key:
863
885
  specification_version: 4
864
886
  summary: The default Storefront built with Rails and Turbolinks for Spree eCommerce
@@ -1,16 +0,0 @@
1
- <% max_level = Spree::Config[:max_level_in_taxons_menu] || 1 %>
2
-
3
- <nav id="taxonomies" class="sidebar-item" data-hook aria-label="taxonomies">
4
- <% @taxonomies.each do |taxonomy| %>
5
- <% cache [I18n.locale, taxonomy, max_level, @taxon] do %>
6
- <% if taxonomy.root.children.any? %>
7
- <div class="mt-4">
8
- <h4 class='taxonomy-root h5'>
9
- <%= Spree.t(:shop_by_taxonomy, taxonomy: taxonomy.name) %>
10
- </h4>
11
- <%= taxons_tree(taxonomy.root, @taxon, max_level) %>
12
- </div>
13
- <% end %>
14
- <% end %>
15
- <% end %>
16
- </nav>