spree_storefront 5.0.5 → 5.1.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 (80) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/concerns/spree/locale_urls.rb +13 -1
  3. data/app/controllers/concerns/spree/storefront/devise_concern.rb +42 -0
  4. data/app/controllers/spree/addresses_controller.rb +5 -1
  5. data/app/controllers/spree/checkout_controller.rb +27 -9
  6. data/app/controllers/spree/contacts_controller.rb +1 -1
  7. data/app/controllers/spree/line_items_controller.rb +7 -14
  8. data/app/controllers/spree/products_controller.rb +2 -4
  9. data/app/controllers/spree/search_controller.rb +1 -1
  10. data/app/controllers/spree/store_controller.rb +31 -26
  11. data/app/controllers/spree/taxons_controller.rb +1 -3
  12. data/app/helpers/spree/analytics_helper.rb +6 -2
  13. data/app/helpers/spree/cart_helper.rb +1 -1
  14. data/app/helpers/spree/checkout_analytics_helper.rb +1 -1
  15. data/app/helpers/spree/checkout_helper.rb +1 -1
  16. data/app/helpers/spree/filters_helper.rb +2 -6
  17. data/app/helpers/spree/page_helper.rb +15 -0
  18. data/app/helpers/spree/products_helper.rb +14 -6
  19. data/app/helpers/spree/storefront_helper.rb +12 -1
  20. data/app/helpers/spree/storefront_locale_helper.rb +3 -0
  21. data/app/helpers/spree/theme_helper.rb +76 -0
  22. data/app/helpers/spree/wishlist_helper.rb +3 -0
  23. data/app/javascript/spree/storefront/controllers/card_validation_controller.js +0 -2
  24. data/app/javascript/spree/storefront/controllers/cart_controller.js +0 -5
  25. data/app/javascript/spree/storefront/controllers/product_form_controller.js +21 -18
  26. data/app/javascript/spree/storefront/controllers/slideover_controller.js +2 -0
  27. data/app/views/devise/passwords/edit.html.erb +1 -1
  28. data/app/views/devise/registrations/_form.html.erb +2 -2
  29. data/app/views/devise/registrations/new.html.erb +1 -1
  30. data/app/views/devise/sessions/new.html.erb +16 -0
  31. data/app/views/devise/shared/_links.html.erb +3 -3
  32. data/app/views/spree/account/wished_items/create.turbo_stream.erb +1 -0
  33. data/app/views/spree/addresses/edit.html.erb +6 -2
  34. data/app/views/spree/addresses/new.html.erb +3 -0
  35. data/app/views/spree/checkout/_address.html.erb +4 -3
  36. data/app/views/spree/checkout/_coupon_code.html.erb +1 -1
  37. data/app/views/spree/checkout/_delivery.html.erb +2 -1
  38. data/app/views/spree/checkout/_missing_all_line_items.html.erb +2 -2
  39. data/app/views/spree/checkout/_payment_methods.html.erb +1 -1
  40. data/app/views/spree/checkout/_summary.html.erb +44 -45
  41. data/app/views/spree/checkout/edit.html.erb +5 -3
  42. data/app/views/spree/checkout/payment/_gateway.html.erb +12 -12
  43. data/app/views/spree/line_items/create.turbo_stream.erb +1 -0
  44. data/app/views/spree/line_items/destroy.turbo_stream.erb +10 -14
  45. data/app/views/spree/products/show.html.erb +2 -1
  46. data/app/views/spree/seo/sitemap.xml.erb +2 -2
  47. data/app/views/themes/default/spree/account/_order.html.erb +5 -5
  48. data/app/views/themes/default/spree/account/addresses/_address.html.erb +14 -4
  49. data/app/views/themes/default/spree/account/addresses/_edit_address_modal.html.erb +38 -0
  50. data/app/views/themes/default/spree/account/addresses/_new_address_modal.html.erb +38 -0
  51. data/app/views/themes/default/spree/account/addresses/index.html.erb +22 -2
  52. data/app/views/themes/default/spree/checkout/complete.html.erb +1 -1
  53. data/app/views/themes/default/spree/orders/_line_item.html.erb +3 -3
  54. data/app/views/themes/default/spree/orders/edit.html.erb +2 -0
  55. data/app/views/themes/default/spree/page_sections/_featured_product.html.erb +1 -1
  56. data/app/views/themes/default/spree/page_sections/_featured_taxon.html.erb +2 -2
  57. data/app/views/themes/default/spree/page_sections/_featured_taxons.html.erb +5 -4
  58. data/app/views/themes/default/spree/policies/show.html.erb +7 -11
  59. data/app/views/themes/default/spree/posts/_post.html.erb +11 -20
  60. data/app/views/themes/default/spree/products/_add_to_cart_button.html.erb +12 -6
  61. data/app/views/themes/default/spree/products/_details.html.erb +1 -1
  62. data/app/views/themes/default/spree/products/_json_ld.html.erb +1 -1
  63. data/app/views/themes/default/spree/products/_json_ld_variant.html.erb +1 -1
  64. data/app/views/themes/default/spree/products/_media_gallery.html.erb +2 -1
  65. data/app/views/themes/default/spree/products/filters/_availability.html.erb +1 -1
  66. data/app/views/themes/default/spree/products/filters/_price.html.erb +4 -4
  67. data/app/views/themes/default/spree/products/filters/_taxons.erb +5 -5
  68. data/app/views/themes/default/spree/shared/_cart_icon.html.erb +2 -4
  69. data/app/views/themes/default/spree/shared/_cart_pane.html.erb +2 -5
  70. data/app/views/themes/default/spree/shared/_error_messages.html.erb +1 -1
  71. data/app/views/themes/default/spree/shared/_meta_tags.html.erb +2 -2
  72. data/config/locales/en.yml +0 -8
  73. data/lib/generators/spree/storefront/devise/devise_generator.rb +47 -0
  74. data/lib/generators/spree/storefront/devise/templates/user_passwords_controller.rb +17 -0
  75. data/lib/generators/spree/storefront/devise/templates/user_registrations_controller.rb +17 -0
  76. data/lib/generators/spree/storefront/devise/templates/user_sessions_controller.rb +17 -0
  77. data/lib/generators/spree/storefront/theme/templates/model.rb.tt +4 -91
  78. data/lib/spree/storefront/engine.rb +7 -1
  79. metadata +13 -7
  80. data/app/views/themes/default/spree/page_sections/_featured_posts.html.erb +0 -56
@@ -1,6 +1,4 @@
1
- <% item_count ||= current_order&.item_count %>
2
-
3
- <%= turbo_frame_tag "cart-icon-#{item_count}", target: '_top' do %>
1
+ <%= turbo_frame_tag "cart-icon-#{current_order&.item_count}", target: '_top' do %>
4
2
  <%= link_to spree.cart_path,
5
3
  class: 'relative block w-6',
6
4
  id: "cart-pane-link",
@@ -8,7 +6,7 @@
8
6
  onclick: 'event.preventDefault()' do %>
9
7
  <%= render 'spree/shared/icons/cart' %>
10
8
  <span class='cart-counter w-full text-[8px] font-extrabold absolute top-[10px] text-center'>
11
- <%= item_count if item_count&.positive? %>
9
+ <%= current_order.item_count if current_order&.item_count&.positive? %>
12
10
  </span>
13
11
  <span class='sr-only'><%= Spree.t('storefront.cart.items_in_cart') %>, <%= Spree.t('storefront.cart.view_bag') %></span>
14
12
  <% end %>
@@ -1,6 +1,3 @@
1
- <% order ||= current_order %>
2
- <% item_count ||= order&.item_count %>
3
-
4
1
  <!-- begin sidebar/slideover -->
5
2
  <div
6
3
  id="cart-pane"
@@ -28,13 +25,13 @@
28
25
  <span class='relative block w-6'>
29
26
  <%= render 'spree/shared/icons/cart' %>
30
27
  <span class='cart-counter w-full text-[8px] font-extrabold absolute top-[10px] text-center'>
31
- <%= item_count if item_count&.positive? %>
28
+ <%= current_order.item_count if current_order.present? && current_order.item_count.to_i > 0 %>
32
29
  </span>
33
30
  <span class='sr-only'><%= Spree.t('storefront.cart.items_in_cart') %>, <%= Spree.t('storefront.cart.view_bag') %></span>
34
31
  </span>
35
32
  </div>
36
33
  <div class='flex-1 h-0 overflow-y-auto'>
37
- <%= turbo_frame_tag cart_id(order), class: 'cart-contents', src: spree.cart_path, data: { turbo_permanent: true } %>
34
+ <%= turbo_frame_tag cart_id(current_order), class: 'cart-contents', src: spree.cart_path, data: { turbo_permanent: true } %>
38
35
  </div>
39
36
  </div>
40
37
  </div>
@@ -1,5 +1,5 @@
1
1
  <% if target && target.errors.any? %>
2
- <div id="errorExplanation" class="alert-error text-center mb-4 p-2">
2
+ <div id="errorExplanation" class="<%= local_assigns[:class] || 'alert-error text-center mb-4 p-2' %>">
3
3
  <ul>
4
4
  <% target.errors.full_messages.each do |msg| %>
5
5
  <li><%= msg %></li>
@@ -32,9 +32,9 @@
32
32
  <meta property="twitter:image" content="<%= image_url %>" />
33
33
  <% end %>
34
34
 
35
- <% if @product.present? && @product.price_in(current_currency).present? %>
35
+ <% if @product && @product.price_in(current_currency).present? %>
36
36
  <meta property="og:price:amount" content="<%= @product.price_in(current_currency).amount.to_s %>">
37
- <meta property="og:price:currency" content="<%= current_currency %>">
37
+ <meta property="og:price:currency" content="<%= current_order&.currency || current_store.default_currency %>">
38
38
  <% end %>
39
39
 
40
40
  <% if current_store.twitter.present? %>
@@ -20,7 +20,6 @@ en:
20
20
  checkout:
21
21
  all_transactions_are_secure_and_encrypted: All transactions are secure and encrypted
22
22
  already_have_an_account: Already have an account?
23
- backorder_notice: 'Some products in your cart will be dispatched a bit later than the rest of your order:'
24
23
  by_placing_this_order_you_agree_to: By placing this order you agree to
25
24
  calculated_at_next_step: Calculated at next step
26
25
  continue_to_cart: Continue to cart
@@ -31,13 +30,11 @@ en:
31
30
  one: This item will be removed from your cart because there are no delivery methods available for your address.
32
31
  other: These %{count} items will be removed from your cart because there are no delivery methods available for your address.
33
32
  gift_card_amount_applied: Gift card %{code} applied %{amount} to your order.
34
- it_seems_you_already_have_an_account_html: It seems you already have an account with us. Please %{link} to continue.
35
33
  or_continue_below: or continue below
36
34
  order_already_paid: You don't need to pay anything, just click Place now button to confirm the order.
37
35
  order_success: Your order is confirmed!
38
36
  order_success_message: When your order is ready, you will receive an email confirmation.
39
37
  payment_processing_message: You will receive an email confirmation when your payment is processed.
40
- return_to_cart: Return to cart
41
38
  shipping_not_available: Shipping not available
42
39
  signup_for_an_account: Create an account for faster future purchases, order tracking, and more.
43
40
  store_credits_amount_applied: You applied a %{amount} store credit to your order.
@@ -53,10 +50,6 @@ en:
53
50
  description: Take control of your settings and tailor your experience according to your preferences. Customize your notifications to suit your needs.
54
51
  join: Email me about new products, sales, and more. You can unsubscribe at any time.
55
52
  status: You are currently %{status} to the newsletters.
56
- policies:
57
- last_update_at: Last update %{date}
58
- products:
59
- pinch_to_zoom_html: Pinch to<br>zoom
60
53
  refund_action_not_required_message:
61
54
  order_canceled:
62
55
  fully: This order has been canceled. No further action is required. You will receive a refund within couple business days.
@@ -73,7 +66,6 @@ en:
73
66
  partially: This order has been partially refunded. The amount paid by the selected payment method will be refunded within couple business days. Please reach out to %{customer_support_email} to receive new voucher.
74
67
  variant_picker:
75
68
  please_choose: Please choose %{option_type}
76
- please_choose_all_options: Please choose all options
77
69
  wished_items:
78
70
  add: Add to wishlist
79
71
  no_wished_items:
@@ -0,0 +1,47 @@
1
+ require 'rails/generators'
2
+
3
+ module Spree
4
+ module Storefront
5
+ module Generators
6
+ class DeviseGenerator < Rails::Generators::Base
7
+ desc 'Installs Spree Storefront Devise controllers'
8
+
9
+ def self.source_paths
10
+ [
11
+ File.expand_path('templates', __dir__),
12
+ File.expand_path('../templates', "../#{__FILE__}"),
13
+ File.expand_path('../templates', "../../#{__FILE__}")
14
+ ]
15
+ end
16
+
17
+ def install
18
+ template 'user_sessions_controller.rb', 'app/controllers/spree/user_sessions_controller.rb'
19
+ template 'user_registrations_controller.rb', 'app/controllers/spree/user_registrations_controller.rb'
20
+ template 'user_passwords_controller.rb', 'app/controllers/spree/user_passwords_controller.rb'
21
+
22
+ # add devise routes
23
+ insert_into_file 'config/routes.rb', after: "Rails.application.routes.draw do\n" do
24
+ <<-ROUTES.strip_heredoc.indent!(2)
25
+ Spree::Core::Engine.add_routes do
26
+ # Storefront routes
27
+ scope '(:locale)', locale: /\#{Spree.available_locales.join('|')\}/, defaults: { locale: nil } do
28
+ devise_for(
29
+ Spree.user_class.model_name.singular_route_key,
30
+ class_name: Spree.user_class.to_s,
31
+ path: :user,
32
+ controllers: {
33
+ sessions: 'spree/user_sessions',
34
+ passwords: 'spree/user_passwords',
35
+ registrations: 'spree/user_registrations'
36
+ },
37
+ router_name: :spree
38
+ )
39
+ end
40
+ end
41
+ ROUTES
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,17 @@
1
+ module Spree
2
+ class UserPasswordsController < ::Devise::PasswordsController
3
+ include Spree::Storefront::DeviseConcern
4
+
5
+ protected
6
+
7
+ def translation_scope
8
+ 'devise.user_passwords'
9
+ end
10
+
11
+ private
12
+
13
+ def title
14
+ Spree.t(:forgot_password)
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ module Spree
2
+ class UserRegistrationsController < ::Devise::RegistrationsController
3
+ include Spree::Storefront::DeviseConcern
4
+
5
+ protected
6
+
7
+ def translation_scope
8
+ 'devise.user_registrations'
9
+ end
10
+
11
+ private
12
+
13
+ def title
14
+ Spree.t(:sign_up)
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ module Spree
2
+ class UserSessionsController < ::Devise::SessionsController
3
+ include Spree::Storefront::DeviseConcern
4
+
5
+ protected
6
+
7
+ def translation_scope
8
+ 'devise.user_sessions'
9
+ end
10
+
11
+ private
12
+
13
+ def title
14
+ Spree.t(:login)
15
+ end
16
+ end
17
+ end
@@ -8,97 +8,10 @@ module Spree
8
8
  }
9
9
  end
10
10
 
11
- # COLORS
12
- # main colors
13
- preference :primary_color, :string, default: '#000000'
14
- preference :accent_color, :string, default: '#F0EFE9'
15
- preference :danger_color, :string, default: '#C73528'
16
- preference :neutral_color, :string, default: '#999999'
17
- preference :background_color, :string, default: '#FFFFFF'
18
- preference :text_color, :string, default: '#000000'
19
- preference :success_color, :string, default: '#00C773'
20
-
21
- # buttons
22
- preference :button_background_color, :string
23
- preference :button_text_color, :string, default: '#ffffff'
24
- preference :button_hover_background_color, :string
25
- preference :button_hover_text_color, :string
26
- preference :button_border_color, :string
27
-
28
- # borders
29
- preference :border_color, :string, default: '#E9E7DC'
30
- preference :sidebar_border_color, :string
31
-
32
- preference :secondary_button_background_color, :string
33
- preference :secondary_button_text_color, :string
34
- preference :secondary_button_hover_background_color, :string
35
- preference :secondary_button_hover_text_color, :string
36
-
37
- # inputs
38
- preference :input_text_color, :string, default: '#6b7280'
39
- preference :input_background_color, :string, default: '#ffffff'
40
- preference :input_border_color, :string
41
- preference :input_focus_border_color, :string
42
- preference :input_focus_background_color, :string
43
- preference :input_focus_text_color, :string
44
-
45
- # sidebar (checkout)
46
- preference :checkout_sidebar_background_color, :string, default: '#f3f4f6'
47
- preference :checkout_divider_background_color, :string
48
- preference :checkout_sidebar_text_color, :string
49
-
50
- # TYPOGRAPHY
51
- preference :custom_font_code, :string, default: nil
52
- # body
53
- preference :font_family, :string, default: 'Inter'
54
- preference :font_size_scale, :integer, default: 100
55
- # headers
56
- preference :header_font_family, :string, default: 'Inter'
57
- preference :header_font_size_scale, :integer, default: 100
58
- preference :headings_uppercase, :boolean, default: true
59
-
60
- # BUTTONS
61
- preference :button_border_thickness, :integer, default: 1
62
- preference :button_border_opacity, :integer, default: 100
63
- preference :button_border_radius, :integer, default: 100
64
- preference :button_shadow_opacity, :integer, default: 0
65
- preference :button_shadow_horizontal_offset, :integer, default: 0
66
- preference :button_shadow_vertical_offset, :integer, default: 4
67
- preference :button_shadow_blur, :integer, default: 5
68
-
69
- # INPUTS
70
- preference :input_border_thickness, :integer, default: 1
71
- preference :input_border_opacity, :integer, default: 100
72
- preference :input_border_radius, :integer, default: 8
73
- preference :input_shadow_opacity, :integer, default: 0
74
- preference :input_shadow_horizontal_offset, :integer, default: 0
75
- preference :input_shadow_vertical_offset, :integer, default: 4
76
- preference :input_shadow_blur, :integer, default: 5
77
-
78
- # BORDERS
79
- preference :border_width, :integer, default: 1
80
- preference :border_radius, :integer, default: 6
81
- preference :border_shadow_opacity, :integer, default: 0
82
- preference :border_shadow_horizontal_offset, :integer, default: 0
83
- preference :border_shadow_vertical_offset, :integer, default: 4
84
- preference :border_shadow_blur, :integer, default: 5
85
-
86
- # PRODUCT IMAGES
87
- preference :product_listing_image_height, :integer, default: 300
88
- preference :product_listing_image_width, :integer, default: 300
89
- preference :product_listing_image_height_mobile, :integer, default: 190
90
- preference :product_listing_image_width_mobile, :integer, default: 190
91
-
92
- # Returns an array of available layout section classes for the theme, eg. header, footer, newsletter, etc.
93
- #
94
- # @return [Array<Class>]
95
- def available_layout_sections
96
- [
97
- Spree::PageSections::AnnouncementBar,
98
- Spree::PageSections::Header,
99
- Spree::PageSections::Newsletter,
100
- Spree::PageSections::Footer
101
- ]
11
+ def custom_page_sections
12
+ # you can override this method in your theme to return a list of custom page sections for your theme
13
+ # [Spree::PageSections::Custom, Spree::PageSections::Custom2]
14
+ []
102
15
  end
103
16
  end
104
17
  end
@@ -7,11 +7,14 @@ module Spree
7
7
  :head_partials,
8
8
  :body_start_partials,
9
9
  :body_end_partials,
10
+ :cart_partials,
10
11
  :add_to_cart_partials,
11
12
  :remove_from_cart_partials,
12
13
  :checkout_partials,
13
14
  :checkout_complete_partials,
14
- :quick_checkout_partials
15
+ :quick_checkout_partials,
16
+ :product_partials,
17
+ :add_to_wishlist_partials
15
18
  )
16
19
 
17
20
  # accessible via Rails.application.config.spree_storefront
@@ -44,11 +47,14 @@ module Spree
44
47
  Rails.application.config.spree_storefront.head_partials = []
45
48
  Rails.application.config.spree_storefront.body_start_partials = []
46
49
  Rails.application.config.spree_storefront.body_end_partials = []
50
+ Rails.application.config.spree_storefront.cart_partials = []
47
51
  Rails.application.config.spree_storefront.add_to_cart_partials = []
48
52
  Rails.application.config.spree_storefront.remove_from_cart_partials = []
49
53
  Rails.application.config.spree_storefront.checkout_partials = []
50
54
  Rails.application.config.spree_storefront.checkout_complete_partials = []
51
55
  Rails.application.config.spree_storefront.quick_checkout_partials = []
56
+ Rails.application.config.spree_storefront.product_partials = []
57
+ Rails.application.config.spree_storefront.add_to_wishlist_partials = []
52
58
  end
53
59
  end
54
60
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_storefront
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.5
4
+ version: 5.1.0.beta
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vendo Connect Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-06-30 00:00:00.000000000 Z
11
+ date: 2025-05-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: spree_core
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 5.0.5
19
+ version: 5.1.0.beta
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 5.0.5
26
+ version: 5.1.0.beta
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: active_link_to
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -205,6 +205,7 @@ files:
205
205
  - app/controllers/concerns/spree/cart_methods.rb
206
206
  - app/controllers/concerns/spree/locale_urls.rb
207
207
  - app/controllers/concerns/spree/password_protected.rb
208
+ - app/controllers/concerns/spree/storefront/devise_concern.rb
208
209
  - app/controllers/concerns/spree/theme_concern.rb
209
210
  - app/controllers/spree/account/addresses_controller.rb
210
211
  - app/controllers/spree/account/base_controller.rb
@@ -371,6 +372,8 @@ files:
371
372
  - app/views/themes/default/spree/account/_order.html.erb
372
373
  - app/views/themes/default/spree/account/_orders.html.erb
373
374
  - app/views/themes/default/spree/account/addresses/_address.html.erb
375
+ - app/views/themes/default/spree/account/addresses/_edit_address_modal.html.erb
376
+ - app/views/themes/default/spree/account/addresses/_new_address_modal.html.erb
374
377
  - app/views/themes/default/spree/account/addresses/index.html.erb
375
378
  - app/views/themes/default/spree/account/newsletter/_newsletter_settings.html.erb
376
379
  - app/views/themes/default/spree/account/newsletter/edit.html.erb
@@ -392,7 +395,6 @@ files:
392
395
  - app/views/themes/default/spree/orders/show.html.erb
393
396
  - app/views/themes/default/spree/page_sections/_announcement_bar.html.erb
394
397
  - app/views/themes/default/spree/page_sections/_custom_code.html.erb
395
- - app/views/themes/default/spree/page_sections/_featured_posts.html.erb
396
398
  - app/views/themes/default/spree/page_sections/_featured_product.html.erb
397
399
  - app/views/themes/default/spree/page_sections/_featured_taxon.html.erb
398
400
  - app/views/themes/default/spree/page_sections/_featured_taxons.html.erb
@@ -515,6 +517,10 @@ files:
515
517
  - config/initializers/heroicon.rb
516
518
  - config/locales/en.yml
517
519
  - config/routes.rb
520
+ - lib/generators/spree/storefront/devise/devise_generator.rb
521
+ - lib/generators/spree/storefront/devise/templates/user_passwords_controller.rb
522
+ - lib/generators/spree/storefront/devise/templates/user_registrations_controller.rb
523
+ - lib/generators/spree/storefront/devise/templates/user_sessions_controller.rb
518
524
  - lib/generators/spree/storefront/install/install_generator.rb
519
525
  - lib/generators/spree/storefront/install/templates/application.tailwind.css
520
526
  - lib/generators/spree/storefront/install/templates/dev
@@ -543,9 +549,9 @@ licenses:
543
549
  - AGPL-3.0-or-later
544
550
  metadata:
545
551
  bug_tracker_uri: https://github.com/spree/spree/issues
546
- changelog_uri: https://github.com/spree/spree/releases/tag/v5.0.5
552
+ changelog_uri: https://github.com/spree/spree/releases/tag/v5.1.0.beta
547
553
  documentation_uri: https://docs.spreecommerce.org/
548
- source_code_uri: https://github.com/spree/spree/tree/v5.0.5
554
+ source_code_uri: https://github.com/spree/spree/tree/v5.1.0.beta
549
555
  post_install_message:
550
556
  rdoc_options: []
551
557
  require_paths:
@@ -1,56 +0,0 @@
1
- <div style='<%= section_styles(section) %>' class='animate-fadeIn'>
2
- <div class='page-container'>
3
- <% heading_size =
4
- case section.preferred_heading_size
5
- when "small"
6
- "text-base font-medium"
7
- when "medium"
8
- "text-lg lg:text-xl font-medium"
9
- when "large"
10
- "text-xl lg:text-2xl font-medium"
11
- end %>
12
- <% if section.preferred_heading.present? %>
13
- <div class='mb-8 flex flex-col'>
14
- <h3
15
- class='
16
- <%= heading_size %> featured-taxon--title font-medium
17
- text-<%= section.preferred_heading_alignment %>
18
- '
19
- data-title="<%= section.preferred_heading.downcase %>"
20
- style='<%= section_heading_styles(section) %>'
21
- >
22
- <%= section.preferred_heading %>
23
- </h3>
24
-
25
- <% if section.description.present? %>
26
- <div class='pt-4 text-<%= section.preferred_description_alignment %>'>
27
- <%= section.description %>
28
- </div>
29
- <% end %>
30
- </div>
31
- <% end %>
32
- <div class='flex h-full relative'>
33
- <div
34
- class='
35
- swiper-container overflow-hidden flex-1 pr-8 lg:pr-0 -mx-4 lg:mx-0 flex flex-col
36
- lg:flex-col-reverse
37
- '
38
- data-controller='carousel'
39
- data-carousel-options-value='{ "slidesPerView": 1, "centeredSlides": false, "spaceBetween": 16, "grabCursor": true, "breakpoints": { "768": { "slidesPerView": 3, "spaceBetween": 24 } }, "navigation": { "nextEl": ".swiper-custom-button-next-<%= section.id %>", "prevEl": ".swiper-custom-button-prev-<%= section.id %>" } }'
40
- >
41
- <div class='swiper-wrapper px-4 lg:px-0 h-auto'>
42
- <%= render partial: "spree/posts/post",
43
- collection: section.posts,
44
- cached: spree_base_cache_scope,
45
- as: :post %>
46
- </div>
47
- <%= button_tag class: "absolute p-2 bg-white rounded-full z-10 border border-accent left-0 disabled:hidden hover:border-primary ml-2 lg:ml-0 swiper-custom-button-prev-#{section.id} block top-[100px]", aria: { label: "Previous posts" }, style: "transform: translate(-50%, -50%);" do %>
48
- <%= render "spree/shared/icons/chevron" %>
49
- <% end %>
50
- <%= button_tag class: "absolute p-2 bg-white rounded-full z-10 border border-accent right-0 disabled:hidden hover:border-primary mr-2 lg:mr-0 swiper-custom-button-next-#{section.id} block top-[100px]", aria: { label: "Next posts" }, style: "transform: translate(50%, -50%);" do %>
51
- <%= render "spree/shared/icons/chevron_right" %>
52
- <% end %>
53
- </div>
54
- </div>
55
- </div>
56
- </div>