spree_admin 5.0.4 → 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 (250) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/login_sidebar_background.png +0 -0
  3. data/app/assets/stylesheets/spree/admin/components/_bulk_panel.scss +8 -1
  4. data/app/assets/stylesheets/spree/admin/components/_buttons.scss +12 -20
  5. data/app/assets/stylesheets/spree/admin/components/_cards.scss +9 -3
  6. data/app/assets/stylesheets/spree/admin/components/_dropdowns.scss +13 -40
  7. data/app/assets/stylesheets/spree/admin/components/_filters.scss +32 -3
  8. data/app/assets/stylesheets/spree/admin/components/_main.scss +107 -31
  9. data/app/assets/stylesheets/spree/admin/components/_media_form.scss +21 -9
  10. data/app/assets/stylesheets/spree/admin/components/_modals.scss +4 -3
  11. data/app/assets/stylesheets/spree/admin/components/_navbar.scss +5 -9
  12. data/app/assets/stylesheets/spree/admin/components/_navigation.scss +0 -1
  13. data/app/assets/stylesheets/spree/admin/components/_sortable_tree.scss +6 -2
  14. data/app/assets/stylesheets/spree/admin/components/_tables.scss +35 -5
  15. data/app/assets/stylesheets/spree/admin/global/_variables.scss +37 -17
  16. data/app/assets/stylesheets/spree/admin/plugins/tom-select.bootstrap4.scss +5 -4
  17. data/app/assets/stylesheets/spree/admin/shared/_base.scss +50 -17
  18. data/app/assets/stylesheets/spree/admin/shared/_forms.scss +6 -2
  19. data/app/assets/stylesheets/spree/admin/views/_page_builder.scss +30 -21
  20. data/app/controllers/concerns/spree/admin/breadcrumb_concern.rb +22 -0
  21. data/app/controllers/concerns/spree/admin/preferences_concern.rb +22 -0
  22. data/app/controllers/concerns/spree/admin/products_breadcrumb_concern.rb +22 -0
  23. data/app/controllers/concerns/spree/admin/promotions_breadcrumb_concern.rb +23 -0
  24. data/app/controllers/concerns/spree/admin/storefront_breadcrumb_concern.rb +12 -0
  25. data/app/controllers/spree/admin/addresses_controller.rb +4 -0
  26. data/app/controllers/spree/admin/admin_users_controller.rb +112 -0
  27. data/app/controllers/spree/admin/assets_controller.rb +7 -9
  28. data/app/controllers/spree/admin/base_controller.rb +21 -10
  29. data/app/controllers/spree/admin/checkouts_controller.rb +4 -0
  30. data/app/controllers/spree/admin/classifications_controller.rb +4 -0
  31. data/app/controllers/spree/admin/coupon_codes_controller.rb +2 -0
  32. data/app/controllers/spree/admin/custom_domains_controller.rb +6 -0
  33. data/app/controllers/spree/admin/customer_returns_controller.rb +4 -0
  34. data/app/controllers/spree/admin/dashboard_controller.rb +8 -2
  35. data/app/controllers/spree/admin/digital_assets_controller.rb +8 -0
  36. data/app/controllers/spree/admin/exports_controller.rb +6 -2
  37. data/app/controllers/spree/admin/integrations_controller.rb +61 -0
  38. data/app/controllers/spree/admin/invitations_controller.rb +128 -0
  39. data/app/controllers/spree/admin/line_items_controller.rb +4 -0
  40. data/app/controllers/spree/admin/oauth_applications_controller.rb +6 -0
  41. data/app/controllers/spree/admin/option_types_controller.rb +15 -0
  42. data/app/controllers/spree/admin/option_values_controller.rb +4 -0
  43. data/app/controllers/spree/admin/orders/return_authorizations_controller.rb +4 -0
  44. data/app/controllers/spree/admin/orders_controller.rb +11 -0
  45. data/app/controllers/spree/admin/page_blocks_controller.rb +3 -2
  46. data/app/controllers/spree/admin/page_links_controller.rb +9 -0
  47. data/app/controllers/spree/admin/page_sections_controller.rb +13 -4
  48. data/app/controllers/spree/admin/pages_controller.rb +7 -0
  49. data/app/controllers/spree/admin/payment_methods_controller.rb +23 -12
  50. data/app/controllers/spree/admin/post_categories_controller.rb +3 -0
  51. data/app/controllers/spree/admin/posts_controller.rb +11 -0
  52. data/app/controllers/spree/admin/products_controller.rb +11 -8
  53. data/app/controllers/spree/admin/promotion_actions_controller.rb +10 -2
  54. data/app/controllers/spree/admin/promotion_rules_controller.rb +10 -2
  55. data/app/controllers/spree/admin/promotions_controller.rb +6 -0
  56. data/app/controllers/spree/admin/properties_controller.rb +15 -0
  57. data/app/controllers/spree/admin/refund_reasons_controller.rb +7 -0
  58. data/app/controllers/spree/admin/refunds_controller.rb +4 -0
  59. data/app/controllers/spree/admin/reimbursement_types_controller.rb +7 -0
  60. data/app/controllers/spree/admin/reimbursements_controller.rb +4 -0
  61. data/app/controllers/spree/admin/reports_controller.rb +12 -2
  62. data/app/controllers/spree/admin/resource_controller.rb +1 -1
  63. data/app/controllers/spree/admin/return_authorization_reasons_controller.rb +7 -0
  64. data/app/controllers/spree/admin/return_authorizations_controller.rb +4 -0
  65. data/app/controllers/spree/admin/return_items_controller.rb +6 -0
  66. data/app/controllers/spree/admin/role_users_controller.rb +36 -0
  67. data/app/controllers/spree/admin/roles_controller.rb +8 -0
  68. data/app/controllers/spree/admin/shipments_controller.rb +2 -2
  69. data/app/controllers/spree/admin/shipping_categories_controller.rb +7 -0
  70. data/app/controllers/spree/admin/shipping_methods_controller.rb +6 -0
  71. data/app/controllers/spree/admin/stock_items_controller.rb +13 -0
  72. data/app/controllers/spree/admin/stock_locations_controller.rb +7 -0
  73. data/app/controllers/spree/admin/stock_transfers_controller.rb +14 -2
  74. data/app/controllers/spree/admin/store_credit_categories_controller.rb +5 -0
  75. data/app/controllers/spree/admin/store_credits_controller.rb +4 -0
  76. data/app/controllers/spree/admin/storefront_controller.rb +3 -0
  77. data/app/controllers/spree/admin/stores_controller.rb +17 -2
  78. data/app/controllers/spree/admin/tax_categories_controller.rb +7 -0
  79. data/app/controllers/spree/admin/tax_rates_controller.rb +6 -0
  80. data/app/controllers/spree/admin/taxonomies_controller.rb +15 -0
  81. data/app/controllers/spree/admin/taxons_controller.rb +24 -1
  82. data/app/controllers/spree/admin/themes_controller.rb +7 -0
  83. data/app/controllers/spree/admin/translations_controller.rb +9 -1
  84. data/app/controllers/spree/admin/user_passwords_controller.rb +22 -0
  85. data/app/controllers/spree/admin/user_sessions_controller.rb +23 -0
  86. data/app/controllers/spree/admin/users_controller.rb +11 -2
  87. data/app/controllers/spree/admin/variants_controller.rb +13 -0
  88. data/app/controllers/spree/admin/webhooks_subscribers_controller.rb +3 -0
  89. data/app/controllers/spree/admin/zones_controller.rb +5 -0
  90. data/app/helpers/spree/admin/base_helper.rb +32 -31
  91. data/app/helpers/spree/admin/bulk_operations_helper.rb +8 -2
  92. data/app/helpers/spree/admin/modal_helper.rb +1 -1
  93. data/app/helpers/spree/admin/navigation_helper.rb +11 -5
  94. data/app/helpers/spree/admin/orders_helper.rb +1 -3
  95. data/app/helpers/spree/admin/posts_helper.rb +1 -1
  96. data/app/helpers/spree/admin/session_assets_helper.rb +1 -1
  97. data/app/helpers/spree/admin/stores_helper.rb +1 -18
  98. data/app/helpers/spree/admin/tags_helper.rb +2 -2
  99. data/app/javascript/spree/admin/application.js +2 -0
  100. data/app/javascript/spree/admin/helpers/bootstrap.js +3 -3
  101. data/app/views/active_storage/_upload_form.html.erb +1 -1
  102. data/app/views/layouts/spree/minimal.html.erb +22 -0
  103. data/app/views/spree/admin/admin_users/_admin_user.html.erb +19 -0
  104. data/app/views/spree/admin/admin_users/_audit_log.html.erb +5 -0
  105. data/app/views/spree/admin/admin_users/_form.html.erb +12 -0
  106. data/app/views/spree/admin/admin_users/edit.html.erb +35 -0
  107. data/app/views/spree/admin/admin_users/index.html.erb +18 -0
  108. data/app/views/spree/admin/admin_users/new.html.erb +21 -0
  109. data/app/views/spree/admin/admin_users/show.html.erb +113 -0
  110. data/app/views/spree/admin/coupon_codes/index.html.erb +6 -6
  111. data/app/views/spree/admin/custom_domains/_custom_domains.html.erb +1 -1
  112. data/app/views/spree/admin/customer_returns/index.html.erb +1 -1
  113. data/app/views/spree/admin/dashboard/_store_preview.html.erb +1 -1
  114. data/app/views/spree/admin/dashboard/_top_products.html.erb +4 -2
  115. data/app/views/spree/admin/digital_assets/_table.html.erb +1 -1
  116. data/app/views/spree/admin/digital_assets/index.html.erb +0 -1
  117. data/app/views/spree/admin/exports/index.html.erb +1 -1
  118. data/app/views/spree/admin/integrations/_integration.html.erb +36 -0
  119. data/app/views/spree/admin/integrations/edit.html.erb +11 -0
  120. data/app/views/spree/admin/integrations/index.html.erb +23 -0
  121. data/app/views/spree/admin/integrations/new.html.erb +14 -0
  122. data/app/views/spree/admin/invitations/_invitation.html.erb +52 -0
  123. data/app/views/spree/admin/invitations/create.turbo_stream.erb +4 -0
  124. data/app/views/spree/admin/invitations/index.html.erb +21 -0
  125. data/app/views/spree/admin/invitations/new.html.erb +32 -0
  126. data/app/views/spree/admin/invitations/show.html.erb +9 -0
  127. data/app/views/spree/admin/line_items/new.html.erb +2 -2
  128. data/app/views/spree/admin/oauth_applications/index.html.erb +1 -1
  129. data/app/views/spree/admin/option_types/edit.html.erb +1 -1
  130. data/app/views/spree/admin/option_types/index.html.erb +1 -1
  131. data/app/views/spree/admin/orders/_customer.html.erb +1 -2
  132. data/app/views/spree/admin/orders/_filters.html.erb +17 -21
  133. data/app/views/spree/admin/orders/_list.html.erb +1 -1
  134. data/app/views/spree/admin/orders/_refunds.html.erb +1 -1
  135. data/app/views/spree/admin/orders/_shipment.html.erb +1 -1
  136. data/app/views/spree/admin/orders/_table_filter_dropdown.html.erb +2 -2
  137. data/app/views/spree/admin/orders/customer_returns/_customer_return.html.erb +1 -1
  138. data/app/views/spree/admin/orders/customer_returns/_return_item_decision.html.erb +1 -1
  139. data/app/views/spree/admin/orders/return_authorizations/_form.html.erb +1 -1
  140. data/app/views/spree/admin/orders/return_authorizations/show.html.erb +2 -2
  141. data/app/views/spree/admin/page_blocks/_form_tab_buttons.html.erb +5 -7
  142. data/app/views/spree/admin/page_blocks/edit.html.erb +3 -5
  143. data/app/views/spree/admin/page_builder/_add_block.html.erb +1 -1
  144. data/app/views/spree/admin/page_builder/_header.html.erb +35 -28
  145. data/app/views/spree/admin/page_builder/_pages_dropdown.html.erb +15 -21
  146. data/app/views/spree/admin/page_builder/_sidebar.html.erb +1 -1
  147. data/app/views/spree/admin/page_builder/_sidebar_block.html.erb +1 -1
  148. data/app/views/spree/admin/page_links/_list.html.erb +2 -2
  149. data/app/views/spree/admin/page_links/edit.html.erb +2 -4
  150. data/app/views/spree/admin/page_sections/_form_tab_buttons.html.erb +6 -10
  151. data/app/views/spree/admin/page_sections/new.html.erb +1 -1
  152. data/app/views/spree/admin/pages/edit.html.erb +2 -2
  153. data/app/views/spree/admin/payment_methods/index.html.erb +16 -15
  154. data/app/views/spree/admin/payments/_payment.html.erb +1 -1
  155. data/app/views/spree/admin/post_categories/index.html.erb +1 -1
  156. data/app/views/spree/admin/posts/index.html.erb +1 -1
  157. data/app/views/spree/admin/products/_bulk_operations.html.erb +1 -1
  158. data/app/views/spree/admin/products/_filters.html.erb +2 -5
  159. data/app/views/spree/admin/products/_list.html.erb +1 -1
  160. data/app/views/spree/admin/products/_table_filter_dropdown.html.erb +2 -2
  161. data/app/views/spree/admin/products/form/_categorization.html.erb +34 -30
  162. data/app/views/spree/admin/promotion_actions/_promotion_action.html.erb +1 -1
  163. data/app/views/spree/admin/promotion_rules/_promotion_rule.html.erb +1 -1
  164. data/app/views/spree/admin/promotions/_filters.html.erb +2 -6
  165. data/app/views/spree/admin/promotions/_header.html.erb +1 -3
  166. data/app/views/spree/admin/promotions/_sidebar.html.erb +18 -0
  167. data/app/views/spree/admin/promotions/_table_filter_dropdown.html.erb +2 -2
  168. data/app/views/spree/admin/promotions/index.html.erb +1 -1
  169. data/app/views/spree/admin/properties/edit.html.erb +1 -1
  170. data/app/views/spree/admin/properties/index.html.erb +1 -1
  171. data/app/views/spree/admin/refund_reasons/index.html.erb +1 -1
  172. data/app/views/spree/admin/reimbursement_types/index.html.erb +1 -1
  173. data/app/views/spree/admin/reimbursements/edit.html.erb +2 -2
  174. data/app/views/spree/admin/reimbursements/show.html.erb +1 -1
  175. data/app/views/spree/admin/reports/_report.html.erb +1 -1
  176. data/app/views/spree/admin/return_authorization_reasons/index.html.erb +1 -1
  177. data/app/views/spree/admin/return_authorizations/_filters.html.erb +2 -2
  178. data/app/views/spree/admin/return_authorizations/_list.html.erb +1 -1
  179. data/app/views/spree/admin/roles/edit.html.erb +6 -4
  180. data/app/views/spree/admin/roles/index.html.erb +11 -7
  181. data/app/views/spree/admin/shared/_alerts.html.erb +1 -1
  182. data/app/views/spree/admin/shared/_breadcrumbs.html.erb +13 -0
  183. data/app/views/spree/admin/shared/_calendar_range_picker.html.erb +1 -1
  184. data/app/views/spree/admin/shared/_content_header.html.erb +3 -3
  185. data/app/views/spree/admin/shared/_filters_button.html.erb +1 -1
  186. data/app/views/spree/admin/shared/_filters_search_bar.html.erb +1 -1
  187. data/app/views/spree/admin/shared/_head.html.erb +4 -0
  188. data/app/views/spree/admin/shared/_header.html.erb +26 -17
  189. data/app/views/spree/admin/shared/_index_table_options.html.erb +1 -1
  190. data/app/views/spree/admin/shared/_multi_product_picker.html.erb +1 -1
  191. data/app/views/spree/admin/shared/_new_item_dropdown.html.erb +32 -0
  192. data/app/views/spree/admin/shared/_no_resource_found.html.erb +6 -3
  193. data/app/views/spree/admin/shared/_offcanvas_nav.html.erb +1 -14
  194. data/app/views/spree/admin/shared/_refunds.html.erb +1 -1
  195. data/app/views/spree/admin/shared/_sidebar.html.erb +0 -8
  196. data/app/views/spree/admin/shared/_team_nav.html.erb +13 -0
  197. data/app/views/spree/admin/shared/_user_dropdown.html.erb +25 -20
  198. data/app/views/spree/admin/shared/devise/_links.html.erb +18 -0
  199. data/app/views/spree/admin/shared/sidebar/_enterprise_edition_notice.html.erb +7 -5
  200. data/app/views/spree/admin/shared/sidebar/_integrations_nav.html.erb +5 -7
  201. data/app/views/spree/admin/shared/sidebar/_orders_nav.html.erb +2 -2
  202. data/app/views/spree/admin/shared/sidebar/_products_nav.html.erb +2 -2
  203. data/app/views/spree/admin/shared/sidebar/_promotions_nav.html.erb +17 -0
  204. data/app/views/spree/admin/shared/sidebar/_returns_nav.html.erb +1 -1
  205. data/app/views/spree/admin/shared/sidebar/_store_dropdown.html.erb +33 -75
  206. data/app/views/spree/admin/shared/sidebar/_store_nav.html.erb +14 -34
  207. data/app/views/spree/admin/shared/sidebar/_storefront_nav.html.erb +4 -2
  208. data/app/views/spree/admin/shared/sidebar/_vendors_nav.html.erb +9 -7
  209. data/app/views/spree/admin/shared/sortable_tree/_taxonomy.html.erb +1 -1
  210. data/app/views/spree/admin/shipping_categories/index.html.erb +1 -1
  211. data/app/views/spree/admin/shipping_methods/_form.html.erb +7 -134
  212. data/app/views/spree/admin/shipping_methods/form/_display.html.erb +25 -0
  213. data/app/views/spree/admin/shipping_methods/form/_estimated_transit_business_days.html.erb +23 -0
  214. data/app/views/spree/admin/shipping_methods/form/_shipping_categories.html.erb +21 -0
  215. data/app/views/spree/admin/shipping_methods/form/_tax_category.html.erb +16 -0
  216. data/app/views/spree/admin/shipping_methods/form/_tracking_url.html.erb +18 -0
  217. data/app/views/spree/admin/shipping_methods/form/_zones.html.erb +26 -0
  218. data/app/views/spree/admin/shipping_methods/index.html.erb +1 -1
  219. data/app/views/spree/admin/stock_items/index.html.erb +1 -1
  220. data/app/views/spree/admin/stock_locations/_stock_location.html.erb +5 -3
  221. data/app/views/spree/admin/stock_locations/index.html.erb +4 -2
  222. data/app/views/spree/admin/stock_transfers/index.html.erb +1 -1
  223. data/app/views/spree/admin/store_credit_categories/index.html.erb +1 -1
  224. data/app/views/spree/admin/store_credits/_list.html.erb +1 -1
  225. data/app/views/spree/admin/stores/edit_emails.html.erb +1 -1
  226. data/app/views/spree/admin/stores/form/_emails.html.erb +1 -1
  227. data/app/views/spree/admin/tax_categories/index.html.erb +1 -1
  228. data/app/views/spree/admin/tax_rates/index.html.erb +1 -1
  229. data/app/views/spree/admin/taxonomies/index.html.erb +1 -1
  230. data/app/views/spree/admin/themes/_theme.html.erb +6 -4
  231. data/app/views/spree/admin/themes/_theme_preview_image.html.erb +6 -4
  232. data/app/views/spree/admin/themes/index.html.erb +1 -1
  233. data/app/views/spree/admin/translations/edit.html.erb +1 -1
  234. data/app/views/spree/admin/user_passwords/edit.html.erb +21 -0
  235. data/app/views/spree/admin/user_passwords/new.html.erb +12 -0
  236. data/app/views/spree/admin/user_sessions/new.html.erb +16 -0
  237. data/app/views/spree/admin/users/_form.html.erb +9 -7
  238. data/app/views/spree/admin/users/_user.html.erb +4 -4
  239. data/app/views/spree/admin/users/index.html.erb +1 -1
  240. data/app/views/spree/admin/users/new.html.erb +1 -1
  241. data/app/views/spree/admin/variants/_search_result.html.erb +1 -1
  242. data/app/views/spree/admin/variants/form/_media_asset.html.erb +1 -1
  243. data/app/views/spree/admin/webhooks_subscribers/index.html.erb +1 -1
  244. data/app/views/spree/admin/zones/_form.html.erb +11 -15
  245. data/app/views/spree/admin/zones/index.html.erb +1 -1
  246. data/config/locales/en.yml +3 -0
  247. data/config/routes.rb +13 -1
  248. data/lib/spree/admin/engine.rb +2 -0
  249. data/lib/spree/admin.rb +1 -0
  250. metadata +65 -8
@@ -1,5 +1,5 @@
1
1
  <%= content_for(:page_title) do %>
2
- Email settings
2
+ <%= Spree.t(:emails) %>
3
3
  <% end %>
4
4
 
5
5
  <div class="row">
@@ -12,7 +12,7 @@
12
12
  <% if @collection.any? %>
13
13
  <div class="table-responsive">
14
14
  <table class="table">
15
- <thead class="text-muted">
15
+ <thead>
16
16
  <tr>
17
17
  <th><%= Spree.t(:name) %></th>
18
18
  <th><%= Spree.t(:tax_code) %></th>
@@ -12,7 +12,7 @@
12
12
  <% if @collection.any? %>
13
13
  <div class="table-responsive">
14
14
  <table class="table">
15
- <thead class="text-muted">
15
+ <thead>
16
16
  <tr data-hook="rate_header">
17
17
  <th><%= Spree.t(:name) %></th>
18
18
  <th><%= Spree.t(:tax_category) %></th>
@@ -17,7 +17,7 @@
17
17
  <% if @taxonomies.present? %>
18
18
  <div class="table-responsive">
19
19
  <table class="table" id='listing_taxonomies'>
20
- <thead class="text-muted">
20
+ <thead>
21
21
  <tr data-hook="listing_taxonomies_header">
22
22
  <th class="no-border handel-head"></th>
23
23
  <th><%= Spree.t(:name) %></th>
@@ -1,13 +1,15 @@
1
1
  <tr id="<%= spree_dom_id theme %>">
2
2
  <td class="w-70 p-0">
3
3
  <%= link_to theme.ready? ? spree.edit_admin_theme_path(theme) : '#', class: 'd-flex align-items-top p-3' do %>
4
- <%= render 'spree/admin/themes/theme_preview_image', theme: theme %>
4
+ <div class="w-20">
5
+ <%= render 'spree/admin/themes/theme_preview_image', theme: theme, css_class: 'img-thumbnail w-100' %>
6
+ </div>
5
7
 
6
- <div class="d-flex flex-column ml-3">
8
+ <div class="d-flex flex-column ml-3 w-80">
7
9
  <strong><%= theme.name %></strong>
8
10
  <p class="mb-0 mt-1">
9
11
  <span class="text-muted">
10
- <%= Spree.t(:updated) %>:
12
+ <%= Spree.t(:updated_at) %>:
11
13
  <%= local_time_ago(theme.updated_at, class: 'with-tip') %>
12
14
  </span>
13
15
  </p>
@@ -38,7 +40,7 @@
38
40
  <%= link_to Spree.t('actions.publish'), publish_admin_theme_path(theme), class: 'btn btn-sm btn-light mr-2', data: { turbo_method: :put } unless theme.default? %>
39
41
  <div class="dropdown">
40
42
  <button class="btn btn-sm btn-light h-100" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
41
- <%= icon('dots', class: 'mr-0') %>
43
+ <%= icon('dots-vertical', class: 'mr-0') %>
42
44
  </button>
43
45
  <div class="dropdown-menu dropdown-menu-right" aria-labelledby="dropdownMenuButton">
44
46
  <%= link_to_edit theme, class: 'dropdown-item' %>
@@ -1,15 +1,17 @@
1
1
  <% width ||= 120 %>
2
2
  <% height ||= 72 %>
3
+ <% css_class ||= 'img-thumbnail border-0' %>
3
4
 
4
5
  <% if theme.screenshot.attached? && theme.screenshot.variable? %>
5
- <%= spree_image_tag(theme.screenshot, width: width, height: height, class: 'img-thumbnail', style: "width: #{width}px; height: #{height}px", loading: :lazy) %>
6
+ <%= image_tag(spree_image_url(theme.screenshot, width: width, height: height), class: css_class, loading: :lazy) %>
6
7
  <% elsif theme.class.preview_image_url.present? %>
7
8
  <%= image_tag(
8
9
  theme.class.preview_image_url,
9
- class: 'img-thumbnail',
10
- style: "width: #{width}px; height: #{height}px",
10
+ class: css_class,
11
11
  loading: :lazy
12
12
  ) %>
13
13
  <% else %>
14
- <%= render 'spree/admin/shared/no_image', width: width, height: height %>
14
+ <div class="rounded bg-light text-muted d-flex align-items-center justify-content-center img-fluid" style="height: <%= height %>px">
15
+ <%= icon('camera-off', class: 'text-muted opacity-50') %>
16
+ </div>
15
17
  <% end %>
@@ -29,7 +29,7 @@
29
29
  <div class="card-lg">
30
30
  <div class="table-responsive rounded-lg">
31
31
  <table class="table">
32
- <thead class="text-muted">
32
+ <thead>
33
33
  <tr>
34
34
  <th class="bg-transparent"><%= Spree.t(:theme) %></th>
35
35
  <th class="bg-transparent"><%= Spree.t(:status) %></th>
@@ -15,7 +15,7 @@
15
15
  <%= turbo_frame_tag :translations_table, class: "table-responsive border rounded bg-white my-3", refresh: "morph" do %>
16
16
  <%= hidden_field_tag :translation_locale, @selected_translation_locale %>
17
17
  <table class="table">
18
- <thead class="text-muted">
18
+ <thead>
19
19
  <tr>
20
20
  <th scope="col" class="text-center"><%= Spree.t(:field) %></th>
21
21
  <th scope="col" class="text-center" style="width: 40%;"><%= Spree.t('i18n.this_file_language', locale: :en) %> (<%= Spree.t(:default) %>)</th>
@@ -0,0 +1,21 @@
1
+ <% content_for(:title, Spree.t(:forgot_password)) %>
2
+
3
+ <h1 class="mb-3 font-weight-light"><%= Spree.t(:change_password) %></h1>
4
+ <%= form_for(resource, as: resource_name, url: password_path(resource_name), html: { method: :put }, data: { turbo_frame: :_top, turbo: false }) do |f| %>
5
+ <%= render partial: 'spree/admin/shared/error_messages', locals: { target: resource } %>
6
+ <%= f.hidden_field :reset_password_token %>
7
+ <div class="form-group mb-3">
8
+ <%= f.label :password, Spree.t(:password), required: true, class: 'form-label' %>
9
+ <% if @minimum_password_length %>
10
+ <em>(<%= @minimum_password_length %> characters minimum)</em>
11
+ <% end %>
12
+ <%= f.password_field :password, autofocus: true, autocomplete: "new-password", class: 'form-control form-control-lg rounded-sm', min: @minimum_password_length %>
13
+ </div>
14
+ <div class="form-group mb-3">
15
+ <%= f.label :password_confirmation, Spree.t(:confirm_password), required: true, class: 'form-label' %>
16
+ <%= f.password_field :password_confirmation, autocomplete: "new-password", class: 'form-control form-control-lg rounded-sm', min: @minimum_password_length %>
17
+ </div>
18
+ <%= render 'spree/admin/shared/devise/links', f: f %>
19
+ <%= turbo_save_button_tag Spree.t(:reset_password), class: 'btn btn-primary btn-lg w-100' %>
20
+ <% end %>
21
+
@@ -0,0 +1,12 @@
1
+ <% content_for(:title, Spree.t(:forgot_password)) %>
2
+
3
+ <h1 class="mb-3 font-weight-light"><%= Spree.t(:forgot_password) %></h1>
4
+ <%= form_for(resource, as: resource_name, url: password_path(resource_name), data: { turbo_frame: :_top }) do |f| %>
5
+ <div class="form-group mb-3">
6
+ <%= f.label :email, Spree.t(:email), required: true, class: 'form-label' %>
7
+ <%= f.email_field :email, required: true, class: 'form-control form-control-lg rounded-sm', placeholder: 'steve@apple.com', data: { enable_button_target: :input }, autocomplete: :email, autofocus: true %>
8
+ </div>
9
+ <%= render 'spree/admin/shared/devise/links', f: f %>
10
+ <%= turbo_save_button_tag Spree.t(:reset_password), class: 'btn btn-primary btn-lg w-100' %>
11
+ <% end %>
12
+
@@ -0,0 +1,16 @@
1
+ <% content_for(:title, Spree.t(:login)) %>
2
+
3
+ <h1 class="mb-3 font-weight-light">Welcome back</h1>
4
+ <%= form_for resource, as: resource_name, url: session_path(resource_name), data: { controller: 'enable-button', turbo: false } do |f| %>
5
+ <div class="form-group mb-3">
6
+ <%= f.label :email, Spree.t(:email), required: true, class: 'form-label' %>
7
+ <%= f.email_field :email, required: true, class: 'form-control form-control-lg rounded-sm', placeholder: 'steve@getvendo.com', data: { enable_button_target: :input }, autocomplete: :email, autofocus: true %>
8
+ </div>
9
+ <div class="form-group mb-3">
10
+ <%= f.label :password, Spree.t(:password), required: true, class: 'form-label' %>
11
+ <%= f.password_field :password, required: true, class: 'form-control form-control-lg rounded-sm', placeholder: '********', autocomplete: 'current-password' %>
12
+ </div>
13
+ <%= render 'spree/admin/shared/devise/links', f: f %>
14
+ <%= turbo_save_button_tag Spree.t(:login), class: 'btn btn-primary btn-lg w-100' %>
15
+ <% end %>
16
+
@@ -22,13 +22,15 @@
22
22
  <%= f.label :tag_list, Spree.t(:tags) %>
23
23
  <%= tom_select_tag 'user[tag_list]', multiple: true, class: 'w-100', options: user_tags_json_array, active_option: @user.tag_list, value_field: :name, create: true %>
24
24
  </div>
25
- <div class="form-group">
26
- <%= f.label :spree_role_ids, Spree.t(:roles) %>
27
- <%= f.select :spree_role_ids,
28
- options_from_collection_for_select(Spree::Role.all, 'id', 'name', @user.spree_roles.pluck(:id)),
29
- { prompt: false },
30
- { multiple: true, data: { controller: 'autocomplete-select' } } %>
31
- </div>
25
+ <% if @user.class == Spree.admin_user_class && can?(:manage, Spree::Role) %>
26
+ <div class="form-group">
27
+ <%= f.label :spree_role_ids, Spree.t(:roles) %>
28
+ <%= f.select :spree_role_ids,
29
+ options_from_collection_for_select(Spree::Role.all, 'id', 'name', @user.spree_roles.pluck(:id)),
30
+ { prompt: false },
31
+ { multiple: true, data: { controller: 'autocomplete-select' } } %>
32
+ </div>
33
+ <% end %>
32
34
  <div class="custom-control custom-checkbox mb-3">
33
35
  <%= f.check_box :accepts_email_marketing, class: 'custom-control-input' %>
34
36
  <%= f.label :accepts_email_marketing, Spree.t(:accepts_email_marketing), class: 'custom-control-label' %>
@@ -2,7 +2,7 @@
2
2
  <td class="pr-0 w-5">
3
3
  <%= bulk_operations_checkbox(user) %>
4
4
  </td>
5
- <td class='w-50 no-wrap py-0 pl-1 pr-0'>
5
+ <td class='w-50 text-nowrap py-0 pl-1 pr-0'>
6
6
  <%= render 'spree/admin/shared/user', user: user %>
7
7
  </td>
8
8
  <td class="cursor-pointer" data-action="click->row-link#openLink">
@@ -12,7 +12,7 @@
12
12
  <%= customer_location_flag(user) %>
13
13
  <%= customer_location(user) %>
14
14
  </td>
15
- <td class='w-10 no-wrap cursor-pointer' data-action="click->row-link#openLink"><%= user.completed_orders_for_store(current_store).count %></td>
16
- <td class='w-10 no-wrap cursor-pointer' data-action="click->row-link#openLink"><%= user.display_amount_spent_in(current_currency) %></td>
17
- <td class='w-10 no-wrap cursor-pointer' data-action="click->row-link#openLink"><%= local_time(user.created_at) %></td>
15
+ <td class='w-10 text-nowrap cursor-pointer' data-action="click->row-link#openLink"><%= user.completed_orders_for_store(current_store).count %></td>
16
+ <td class='w-10 text-nowrap cursor-pointer' data-action="click->row-link#openLink"><%= user.display_amount_spent_in(current_currency) %></td>
17
+ <td class='w-10 text-nowrap cursor-pointer' data-action="click->row-link#openLink"><%= local_time(user.created_at) %></td>
18
18
  </tr>
@@ -43,7 +43,7 @@
43
43
 
44
44
  <div class="table-responsive">
45
45
  <table class="table" id="listing_users">
46
- <thead class="text-muted">
46
+ <thead>
47
47
  <tr data-hook="admin_users_index_headers">
48
48
  <th scope="col" class="pr-0 w-5">
49
49
  <%= bulk_operations_select_all_checkbox %>
@@ -1,6 +1,6 @@
1
1
  <% content_for :page_title do %>
2
2
  <%= page_header_back_button spree.admin_users_path %>
3
- <%= Spree.t(:new_user) %>
3
+ <%= Spree.t(:new_customer) %>
4
4
  <% end %>
5
5
 
6
6
  <%= form_for [:admin, @user], url: spree.admin_users_path, method: :post do |f| %>
@@ -1,6 +1,6 @@
1
1
  <div class="search-picker__option <% if variant.purchasable? || params[:all] %>cursor-pointer<% else %>opacity-50 disabled<% end %>" data-action="click->search-picker#toggle">
2
2
  <%= radio_button_tag "#{params[:param_name]}[variant_id]", variant.id, false, class: "custom-control-input", id: "ids_#{variant.id}", data: { action: 'search-picker#toggle', search_picker_target: "checkbox" }, disabled: !params[:all] && !variant.purchasable? %>
3
- <label for="ids_<%= variant.id %>" class="pr-2">
3
+ <label for="ids_<%= variant.id %>" class="pr-2 <% unless variant.purchasable? %>cursor-not-allowed<% end %>">
4
4
  <div class="w-70 d-flex align-items-center">
5
5
  <div class="variant-image">
6
6
  <%= render 'spree/admin/shared/product_image', object: variant %>
@@ -1,4 +1,4 @@
1
- <div id="<%= spree_dom_id(asset) %>" class="media-form__image border border-gray-200" data-sortable-update-url="<%= spree.admin_asset_path(asset) %>">
1
+ <div id="<%= spree_dom_id(asset) %>" class="media-form__image" data-sortable-update-url="<%= spree.admin_asset_path(asset) %>">
2
2
  <div class="custom-control custom-checkbox d-none">
3
3
  <%= check_box_tag "ids[]", asset.id, false, class: "custom-control-input", id: "#{asset.id}-checkbox", data: { media_form_target: "checkbox", action: 'media-form#showDeleteButton' } %>
4
4
  <label class="custom-control-label" for="<%= asset.id %>-checkbox"><span></span></label>
@@ -8,7 +8,7 @@
8
8
  <% if @collection.any? %>
9
9
  <div class="table-responsive">
10
10
  <table class="table">
11
- <thead class="text-muted">
11
+ <thead>
12
12
  <tr>
13
13
  <th><%= Spree.t(:url) %></th>
14
14
  <th><%= Spree.t(:active) %></th>
@@ -17,26 +17,22 @@
17
17
  <%= zone_form.text_field :description, class: 'form-control' %>
18
18
  </div>
19
19
 
20
- <div class="form-group checkbox">
21
- <%= label_tag "zone[#{:default_tax}" do %>
22
- <%= zone_form.check_box :default_tax %>
23
- <%= Spree.t(:default_tax_zone) %>
24
- <% end %>
20
+ <div class="form-group">
21
+ <div class="custom-control custom-checkbox">
22
+ <%= zone_form.check_box :default_tax, class: 'custom-control-input' %>
23
+ <%= zone_form.label :default_tax, Spree.t(:default_tax_zone), class: 'custom-control-label' %>
24
+ </div>
25
25
  </div>
26
26
 
27
27
  <div class="form-group">
28
28
  <strong><%= Spree.t(:type) %></strong>
29
- <div class="radio my-2">
30
- <%= label_tag :country_based do %>
31
- <%= zone_form.radio_button :kind, :country, id: 'country_based', data: { action: 'auto-submit#submit' } %>
32
- <%= Spree.t(:country_based) %>
33
- <% end %>
29
+ <div class="custom-control custom-radio my-2">
30
+ <%= zone_form.radio_button :kind, :country, id: 'country_based', class: 'custom-control-input', data: { action: 'auto-submit#submit' } %>
31
+ <%= label_tag :country_based, Spree.t(:country_based), class: 'custom-control-label' %>
34
32
  </div>
35
- <div class="radio my-2">
36
- <%= label_tag :state_based do %>
37
- <%= zone_form.radio_button :kind, :state, id: 'state_based', data: { action: 'auto-submit#submit' } %>
38
- <%= Spree.t(:state_based) %>
39
- <% end %>
33
+ <div class="custom-control custom-radio my-2">
34
+ <%= zone_form.radio_button :kind, :state, id: 'state_based', class: 'custom-control-input', data: { action: 'auto-submit#submit' } %>
35
+ <%= label_tag :state_based, Spree.t(:state_based), class: 'custom-control-label' %>
40
36
  </div>
41
37
  </div>
42
38
  </div>
@@ -16,7 +16,7 @@
16
16
  <% if @collection.any? %>
17
17
  <div class="table-responsive">
18
18
  <table class="table">
19
- <thead class="text-muted">
19
+ <thead>
20
20
  <tr>
21
21
  <th><%= sort_link @search,:name, Spree.t(:name) %></th>
22
22
  <th>
@@ -74,6 +74,9 @@ en:
74
74
  export_only_filtered_records: Export only filtered records, matching the search criteria
75
75
  filters: Filters
76
76
  getting_started: Getting started
77
+ integrations:
78
+ invalid_integration_type: This integration is not allowed
79
+ page_subtitle: Connect your store to third-party services to enhance customer experience.
77
80
  manage_currencies: Manage Currencies
78
81
  manage_properties: Manage Properties
79
82
  manage_stock_locations: Manage Stock Locations
data/config/routes.rb CHANGED
@@ -147,7 +147,9 @@ Spree::Core::Engine.add_routes do
147
147
  end
148
148
  end
149
149
  # setting up a new store
150
- resources :stores, only: [:new, :create]
150
+ resources :stores, only: [:new, :create] do
151
+ resources :role_users, only: [:destroy]
152
+ end
151
153
  resources :payment_methods, except: :show
152
154
  resources :shipping_methods, except: :show
153
155
  resources :shipping_categories, except: :show
@@ -165,6 +167,9 @@ Spree::Core::Engine.add_routes do
165
167
  end
166
168
  resources :custom_domains, except: :show
167
169
 
170
+ # integrations
171
+ resources :integrations
172
+
168
173
  # storefront / page builder
169
174
  resource :storefront, only: [:edit, :update], controller: :storefront
170
175
  resources :themes, except: [:new, :show] do
@@ -214,6 +219,13 @@ Spree::Core::Engine.add_routes do
214
219
 
215
220
  # account management
216
221
  resources :roles, except: :show
222
+ resources :invitations, except: [:edit, :update] do
223
+ member do
224
+ put :accept
225
+ put :resend
226
+ end
227
+ end
228
+ resources :admin_users, except: [:destroy]
217
229
 
218
230
  # Action Text
219
231
  namespace :action_text do
@@ -22,6 +22,7 @@ module Spree
22
22
  :store_form_partials,
23
23
  :store_nav_partials,
24
24
  :settings_nav_partials,
25
+ :shipping_method_form_partials,
25
26
  :store_settings_nav_partials,
26
27
  :store_orders_nav_partials,
27
28
  :store_products_nav_partials,
@@ -97,6 +98,7 @@ module Spree
97
98
  Rails.application.config.spree_admin.store_form_partials = []
98
99
  Rails.application.config.spree_admin.store_nav_partials = []
99
100
  Rails.application.config.spree_admin.settings_nav_partials = []
101
+ Rails.application.config.spree_admin.shipping_method_form_partials = []
100
102
  Rails.application.config.spree_admin.store_settings_nav_partials = []
101
103
  Rails.application.config.spree_admin.store_orders_nav_partials = []
102
104
  Rails.application.config.spree_admin.store_products_nav_partials = []
data/lib/spree/admin.rb CHANGED
@@ -4,6 +4,7 @@ require 'spree_api'
4
4
  require 'sprockets/railtie'
5
5
 
6
6
  require 'active_link_to'
7
+ require 'breadcrumbs_on_rails'
7
8
  require 'chartkick'
8
9
  require 'currency_select'
9
10
  require 'groupdate'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.4
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-05-22 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,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 5.0.4
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.4
26
+ version: 5.1.0.beta
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: spree_api
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 5.0.4
33
+ version: 5.1.0.beta
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 5.0.4
40
+ version: 5.1.0.beta
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: active_link_to
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -72,6 +72,20 @@ dependencies:
72
72
  - - ">="
73
73
  - !ruby/object:Gem::Version
74
74
  version: 4.6.2.1
75
+ - !ruby/object:Gem::Dependency
76
+ name: breadcrumbs_on_rails
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '4.1'
82
+ type: :runtime
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: '4.1'
75
89
  - !ruby/object:Gem::Dependency
76
90
  name: chartkick
77
91
  requirement: !ruby/object:Gem::Requirement
@@ -266,6 +280,7 @@ files:
266
280
  - Rakefile
267
281
  - app/assets/config/spree_admin_manifest.js
268
282
  - app/assets/images/favicon_256x256.png
283
+ - app/assets/images/login_sidebar_background.png
269
284
  - app/assets/stylesheets/spree/admin/actiontext.css
270
285
  - app/assets/stylesheets/spree/admin/application.scss
271
286
  - app/assets/stylesheets/spree/admin/components/_alerts.scss
@@ -311,11 +326,17 @@ files:
311
326
  - app/assets/stylesheets/spree/admin/views/_dashboard.scss
312
327
  - app/assets/stylesheets/spree/admin/views/_page_builder.scss
313
328
  - app/controllers/concerns/spree/admin/analytics_concern.rb
329
+ - app/controllers/concerns/spree/admin/breadcrumb_concern.rb
314
330
  - app/controllers/concerns/spree/admin/bulk_operations_concern.rb
315
331
  - app/controllers/concerns/spree/admin/order_concern.rb
316
332
  - app/controllers/concerns/spree/admin/page_builder_concern.rb
333
+ - app/controllers/concerns/spree/admin/preferences_concern.rb
334
+ - app/controllers/concerns/spree/admin/products_breadcrumb_concern.rb
335
+ - app/controllers/concerns/spree/admin/promotions_breadcrumb_concern.rb
336
+ - app/controllers/concerns/spree/admin/storefront_breadcrumb_concern.rb
317
337
  - app/controllers/spree/admin/action_text/video_embeds_controller.rb
318
338
  - app/controllers/spree/admin/addresses_controller.rb
339
+ - app/controllers/spree/admin/admin_users_controller.rb
319
340
  - app/controllers/spree/admin/assets_controller.rb
320
341
  - app/controllers/spree/admin/base_controller.rb
321
342
  - app/controllers/spree/admin/checkouts_controller.rb
@@ -327,6 +348,8 @@ files:
327
348
  - app/controllers/spree/admin/digital_assets_controller.rb
328
349
  - app/controllers/spree/admin/errors_controller.rb
329
350
  - app/controllers/spree/admin/exports_controller.rb
351
+ - app/controllers/spree/admin/integrations_controller.rb
352
+ - app/controllers/spree/admin/invitations_controller.rb
330
353
  - app/controllers/spree/admin/line_items_controller.rb
331
354
  - app/controllers/spree/admin/oauth_applications_controller.rb
332
355
  - app/controllers/spree/admin/option_types_controller.rb
@@ -362,6 +385,7 @@ files:
362
385
  - app/controllers/spree/admin/return_authorization_reasons_controller.rb
363
386
  - app/controllers/spree/admin/return_authorizations_controller.rb
364
387
  - app/controllers/spree/admin/return_items_controller.rb
388
+ - app/controllers/spree/admin/role_users_controller.rb
365
389
  - app/controllers/spree/admin/roles_controller.rb
366
390
  - app/controllers/spree/admin/shipments_controller.rb
367
391
  - app/controllers/spree/admin/shipping_categories_controller.rb
@@ -379,6 +403,8 @@ files:
379
403
  - app/controllers/spree/admin/taxons_controller.rb
380
404
  - app/controllers/spree/admin/themes_controller.rb
381
405
  - app/controllers/spree/admin/translations_controller.rb
406
+ - app/controllers/spree/admin/user_passwords_controller.rb
407
+ - app/controllers/spree/admin/user_sessions_controller.rb
382
408
  - app/controllers/spree/admin/users_controller.rb
383
409
  - app/controllers/spree/admin/variants_controller.rb
384
410
  - app/controllers/spree/admin/webhooks_subscribers_controller.rb
@@ -471,9 +497,17 @@ files:
471
497
  - app/views/kaminari/admin-twitter-bootstrap-4/_paginator.html.erb
472
498
  - app/views/kaminari/admin-twitter-bootstrap-4/_prev_page.html.erb
473
499
  - app/views/layouts/spree/admin.html.erb
500
+ - app/views/layouts/spree/minimal.html.erb
474
501
  - app/views/layouts/spree/page_builder.html.erb
475
502
  - app/views/spree/admin/addresses/edit.html.erb
476
503
  - app/views/spree/admin/addresses/new.html.erb
504
+ - app/views/spree/admin/admin_users/_admin_user.html.erb
505
+ - app/views/spree/admin/admin_users/_audit_log.html.erb
506
+ - app/views/spree/admin/admin_users/_form.html.erb
507
+ - app/views/spree/admin/admin_users/edit.html.erb
508
+ - app/views/spree/admin/admin_users/index.html.erb
509
+ - app/views/spree/admin/admin_users/new.html.erb
510
+ - app/views/spree/admin/admin_users/show.html.erb
477
511
  - app/views/spree/admin/assets/bulk_destroy.turbo_stream.erb
478
512
  - app/views/spree/admin/assets/create.turbo_stream.erb
479
513
  - app/views/spree/admin/assets/destroy.turbo_stream.erb
@@ -524,6 +558,15 @@ files:
524
558
  - app/views/spree/admin/exports/create.turbo_stream.erb
525
559
  - app/views/spree/admin/exports/index.html.erb
526
560
  - app/views/spree/admin/exports/new.html.erb
561
+ - app/views/spree/admin/integrations/_integration.html.erb
562
+ - app/views/spree/admin/integrations/edit.html.erb
563
+ - app/views/spree/admin/integrations/index.html.erb
564
+ - app/views/spree/admin/integrations/new.html.erb
565
+ - app/views/spree/admin/invitations/_invitation.html.erb
566
+ - app/views/spree/admin/invitations/create.turbo_stream.erb
567
+ - app/views/spree/admin/invitations/index.html.erb
568
+ - app/views/spree/admin/invitations/new.html.erb
569
+ - app/views/spree/admin/invitations/show.html.erb
527
570
  - app/views/spree/admin/line_items/edit.html.erb
528
571
  - app/views/spree/admin/line_items/new.html.erb
529
572
  - app/views/spree/admin/oauth_applications/_form.html.erb
@@ -826,6 +869,7 @@ files:
826
869
  - app/views/spree/admin/shared/_alerts.html.erb
827
870
  - app/views/spree/admin/shared/_analytics_loader_skeleton.html.erb
828
871
  - app/views/spree/admin/shared/_audit_nav.html.erb
872
+ - app/views/spree/admin/shared/_breadcrumbs.html.erb
829
873
  - app/views/spree/admin/shared/_bulk_modal.html.erb
830
874
  - app/views/spree/admin/shared/_calculator_fields.html.erb
831
875
  - app/views/spree/admin/shared/_calendar_range_picker.html.erb
@@ -847,6 +891,7 @@ files:
847
891
  - app/views/spree/admin/shared/_map.html.erb
848
892
  - app/views/spree/admin/shared/_modal.html.erb
849
893
  - app/views/spree/admin/shared/_multi_product_picker.html.erb
894
+ - app/views/spree/admin/shared/_new_item_dropdown.html.erb
850
895
  - app/views/spree/admin/shared/_new_resource_links.html.erb
851
896
  - app/views/spree/admin/shared/_no_image.html.erb
852
897
  - app/views/spree/admin/shared/_no_resource_found.html.erb
@@ -864,8 +909,10 @@ files:
864
909
  - app/views/spree/admin/shared/_spinner.html.erb
865
910
  - app/views/spree/admin/shared/_stock_nav.html.erb
866
911
  - app/views/spree/admin/shared/_tax_nav.html.erb
912
+ - app/views/spree/admin/shared/_team_nav.html.erb
867
913
  - app/views/spree/admin/shared/_user.html.erb
868
914
  - app/views/spree/admin/shared/_user_dropdown.html.erb
915
+ - app/views/spree/admin/shared/devise/_links.html.erb
869
916
  - app/views/spree/admin/shared/named_types/_edit.html.erb
870
917
  - app/views/spree/admin/shared/named_types/_form.html.erb
871
918
  - app/views/spree/admin/shared/named_types/_new.html.erb
@@ -874,6 +921,7 @@ files:
874
921
  - app/views/spree/admin/shared/sidebar/_integrations_nav.html.erb
875
922
  - app/views/spree/admin/shared/sidebar/_orders_nav.html.erb
876
923
  - app/views/spree/admin/shared/sidebar/_products_nav.html.erb
924
+ - app/views/spree/admin/shared/sidebar/_promotions_nav.html.erb
877
925
  - app/views/spree/admin/shared/sidebar/_returns_nav.html.erb
878
926
  - app/views/spree/admin/shared/sidebar/_store_dropdown.html.erb
879
927
  - app/views/spree/admin/shared/sidebar/_store_nav.html.erb
@@ -890,6 +938,12 @@ files:
890
938
  - app/views/spree/admin/shipping_methods/_form.html.erb
891
939
  - app/views/spree/admin/shipping_methods/_shipping_method.html.erb
892
940
  - app/views/spree/admin/shipping_methods/edit.html.erb
941
+ - app/views/spree/admin/shipping_methods/form/_display.html.erb
942
+ - app/views/spree/admin/shipping_methods/form/_estimated_transit_business_days.html.erb
943
+ - app/views/spree/admin/shipping_methods/form/_shipping_categories.html.erb
944
+ - app/views/spree/admin/shipping_methods/form/_tax_category.html.erb
945
+ - app/views/spree/admin/shipping_methods/form/_tracking_url.html.erb
946
+ - app/views/spree/admin/shipping_methods/form/_zones.html.erb
893
947
  - app/views/spree/admin/shipping_methods/index.html.erb
894
948
  - app/views/spree/admin/shipping_methods/new.html.erb
895
949
  - app/views/spree/admin/shipping_methods/update.turbo_stream.erb
@@ -968,6 +1022,9 @@ files:
968
1022
  - app/views/spree/admin/translations/stores/_form.html.erb
969
1023
  - app/views/spree/admin/translations/taxonomies/_form.html.erb
970
1024
  - app/views/spree/admin/translations/taxons/_form.html.erb
1025
+ - app/views/spree/admin/user_passwords/edit.html.erb
1026
+ - app/views/spree/admin/user_passwords/new.html.erb
1027
+ - app/views/spree/admin/user_sessions/new.html.erb
971
1028
  - app/views/spree/admin/users/_billing.html.erb
972
1029
  - app/views/spree/admin/users/_details.html.erb
973
1030
  - app/views/spree/admin/users/_extra_actions.html.erb
@@ -1058,9 +1115,9 @@ licenses:
1058
1115
  - AGPL-3.0-or-later
1059
1116
  metadata:
1060
1117
  bug_tracker_uri: https://github.com/spree/spree/issues
1061
- changelog_uri: https://github.com/spree/spree/releases/tag/v5.0.4
1118
+ changelog_uri: https://github.com/spree/spree/releases/tag/v5.1.0.beta
1062
1119
  documentation_uri: https://docs.spreecommerce.org/
1063
- source_code_uri: https://github.com/spree/spree/tree/v5.0.4
1120
+ source_code_uri: https://github.com/spree/spree/tree/v5.1.0.beta
1064
1121
  post_install_message:
1065
1122
  rdoc_options: []
1066
1123
  require_paths: