spree_frontend 4.1.0 → 4.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +120 -0
- data/.codeclimate.yml +36 -0
- data/.deepsource.toml +19 -0
- data/.editorconfig +22 -0
- data/.eslintignore +7 -0
- data/.eslintrc +36 -0
- data/.gem_release.yml +7 -0
- data/.github/CONTRIBUTING.md +1 -0
- data/.github/ISSUE_TEMPLATE/bug_report.md +47 -0
- data/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
- data/.github/ISSUE_TEMPLATE.md +39 -0
- data/.github/dependabot.yml +32 -0
- data/.gitignore +58 -0
- data/.rubocop.yml +197 -0
- data/.solargraph.yml +20 -0
- data/.stylelintignore +4 -0
- data/.stylelintrc +6 -0
- data/CODE_OF_CONDUCT.md +22 -0
- data/Gemfile +57 -3
- data/LICENSE +1 -1
- data/README.md +89 -0
- data/Rakefile +1 -1
- data/SECURITY.md +1 -0
- data/app/assets/config/spree_frontend_manifest.js +5 -0
- data/app/assets/images/arrow-down.svg +12 -0
- data/app/assets/images/arrow-right-circle-fill.svg +3 -0
- data/app/assets/images/card-image.svg +4 -0
- data/app/assets/images/edit.svg +1 -1
- data/app/assets/images/favicon.ico +0 -0
- data/app/assets/images/file-image.svg +4 -0
- data/app/assets/images/global.svg +1 -0
- data/app/assets/images/image.svg +4 -0
- data/app/assets/images/info.svg +7 -0
- data/app/assets/images/logo/spree_50.png +0 -0
- data/app/assets/images/logo-spree.png +0 -0
- data/app/assets/images/logo.png +0 -0
- data/app/assets/images/logo.svg +10 -1
- data/app/assets/images/logo@2x.png +0 -0
- data/app/assets/images/logo@3x.png +0 -0
- data/app/assets/images/noimage/large.png +0 -0
- data/app/assets/images/noimage/mini.png +0 -0
- data/app/assets/images/noimage/plp.png +0 -0
- data/app/assets/images/noimage/plp.svg +16 -0
- data/app/assets/images/noimage/product.png +0 -0
- data/app/assets/images/noimage/small.png +0 -0
- data/app/assets/images/pagination-arrow-right.svg +3 -10
- data/app/assets/images/pagination-double-arrow-right.svg +6 -13
- data/app/assets/images/plus.svg +1 -1
- data/app/assets/images/search.svg +1 -1
- data/app/assets/javascripts/spree/frontend/account.js +1 -1
- data/app/assets/javascripts/spree/frontend/api/main.js +36 -0
- data/app/assets/javascripts/spree/frontend/api/storefront/cart.js +49 -0
- data/app/assets/javascripts/spree/frontend/cart.js +24 -2
- data/app/assets/javascripts/spree/frontend/checkout/address.js +78 -52
- data/app/assets/javascripts/spree/frontend/checkout/address_book.js +38 -40
- data/app/assets/javascripts/spree/frontend/checkout/payment.js +63 -23
- data/app/assets/javascripts/spree/frontend/checkout/shipment.js +15 -2
- data/app/assets/javascripts/spree/frontend/checkout.js +17 -1
- data/app/assets/javascripts/spree/frontend/coupon_manager.js +1 -1
- data/app/assets/javascripts/spree/frontend/currency.js +44 -0
- data/app/assets/javascripts/spree/frontend/locale.es6 +12 -0
- data/app/assets/javascripts/spree/frontend/login.js +5 -0
- data/app/assets/javascripts/spree/frontend/main.js +78 -0
- data/app/assets/javascripts/spree/frontend/main_nav_bar.js +86 -0
- data/app/assets/javascripts/spree/frontend/{turbolinks_scroll_fix.js → turbo_scroll_fix.js} +3 -3
- data/app/assets/javascripts/spree/frontend/views/spree/home/product_carousels.js +4 -4
- data/app/assets/javascripts/spree/frontend/views/spree/product/related.js +3 -3
- data/app/assets/javascripts/spree/frontend/views/spree/products/cart_form.js +67 -18
- data/app/assets/javascripts/spree/frontend/views/spree/products/description.js +1 -1
- data/app/assets/javascripts/spree/frontend/views/spree/products/index.js +76 -15
- data/app/assets/javascripts/spree/frontend/views/spree/products/price_filters.es6 +46 -0
- data/app/assets/javascripts/spree/frontend/views/spree/shared/mobile_navigation.js +9 -10
- data/app/assets/javascripts/spree/frontend/views/spree/shared/product_added_modal.js +7 -0
- data/app/assets/javascripts/spree/frontend/views/spree/shared/variant_select.js +93 -0
- data/app/assets/javascripts/spree/frontend.js +68 -11
- data/app/assets/stylesheets/spree/frontend/application.scss +5 -2
- data/app/assets/stylesheets/spree/frontend/components-bootstrap/button.scss +8 -0
- data/app/assets/stylesheets/spree/frontend/components-bootstrap/carousel.scss +4 -0
- data/app/assets/stylesheets/spree/frontend/components-custom/inputs.scss +80 -1
- data/app/assets/stylesheets/spree/frontend/flags/_flag-icon-base.scss +23 -0
- data/app/assets/stylesheets/spree/frontend/flags/_flag-icon-list.scss +265 -0
- data/app/assets/stylesheets/spree/frontend/flags/_variables.scss +2 -0
- data/app/assets/stylesheets/spree/frontend/flags/flag-icon.scss +3 -0
- data/app/assets/stylesheets/spree/frontend/functions.scss +1 -0
- data/app/assets/stylesheets/spree/frontend/helpers/spree/frontend_helper.scss +48 -0
- data/app/assets/stylesheets/spree/frontend/variables/bootstrap-overrides.scss +2 -2
- data/app/assets/stylesheets/spree/frontend/variables/helper-variables.scss +1 -0
- data/app/assets/stylesheets/spree/frontend/variables/variables.scss +54 -0
- data/app/assets/stylesheets/spree/frontend/views/spree/checkout/confirm.scss +27 -26
- data/app/assets/stylesheets/spree/frontend/views/spree/checkout/delivery.scss +6 -0
- data/app/assets/stylesheets/spree/frontend/views/spree/checkout/edit.scss +24 -10
- data/app/assets/stylesheets/spree/frontend/views/spree/cms_sections/_index.scss +1 -0
- data/app/assets/stylesheets/spree/frontend/views/spree/cms_sections/product_buy_bar.scss +20 -0
- data/app/assets/stylesheets/spree/frontend/views/spree/home/index.scss +54 -67
- data/app/assets/stylesheets/spree/frontend/views/spree/orders/edit.scss +4 -3
- data/app/assets/stylesheets/spree/frontend/views/spree/orders/show.scss +3 -0
- data/app/assets/stylesheets/spree/frontend/views/spree/products/cart_form.scss +8 -0
- data/app/assets/stylesheets/spree/frontend/views/spree/products/gallery_modal.scss +7 -0
- data/app/assets/stylesheets/spree/frontend/views/spree/products/index.scss +55 -26
- data/app/assets/stylesheets/spree/frontend/views/spree/products/show.scss +7 -0
- data/app/assets/stylesheets/spree/frontend/views/spree/shared/_color_select.scss +10 -9
- data/app/assets/stylesheets/spree/frontend/views/spree/shared/carousel/single.scss +1 -1
- data/app/assets/stylesheets/spree/frontend/views/spree/shared/carousel/thumbnails.scss +1 -0
- data/app/assets/stylesheets/spree/frontend/views/spree/shared/cart.scss +9 -4
- data/app/assets/stylesheets/spree/frontend/views/spree/shared/category_nav_bar.scss +3 -3
- data/app/assets/stylesheets/spree/frontend/views/spree/shared/change_store.scss +7 -0
- data/app/assets/stylesheets/spree/frontend/views/spree/shared/footer.scss +4 -0
- data/app/assets/stylesheets/spree/frontend/views/spree/shared/main_nav_bar.scss +42 -26
- data/app/assets/stylesheets/spree/frontend/views/spree/shared/mobile_navigation.scss +34 -3
- data/app/assets/stylesheets/spree/frontend/views/spree/shared/nav_bar.scss +24 -7
- data/app/assets/stylesheets/spree/frontend/views/spree/shared/quantity_select.scss +9 -12
- data/app/assets/stylesheets/spree/frontend/views/spree/shared/search_form.scss +12 -0
- data/app/assets/stylesheets/spree/frontend/views/spree/users/show.scss +7 -13
- data/app/assets/stylesheets/spree/frontend.css +0 -1
- data/app/controllers/concerns/spree/checkout/address_book.rb +9 -7
- data/app/controllers/concerns/spree/locale_urls.rb +21 -0
- data/app/controllers/spree/addresses_controller.rb +16 -33
- data/app/controllers/spree/checkout_controller.rb +15 -13
- data/app/controllers/spree/cms_pages_controller.rb +29 -0
- data/app/controllers/spree/content_controller.rb +0 -2
- data/app/controllers/spree/currency_controller.rb +17 -0
- data/app/controllers/spree/errors_controller.rb +11 -0
- data/app/controllers/spree/home_controller.rb +38 -1
- data/app/controllers/spree/locale_controller.rb +35 -6
- data/app/controllers/spree/orders_controller.rb +12 -10
- data/app/controllers/spree/products_controller.rb +46 -28
- data/app/controllers/spree/store_controller.rb +77 -12
- data/app/controllers/spree/taxons_controller.rb +16 -8
- data/app/helpers/spree/addresses_helper.rb +64 -12
- data/app/helpers/spree/cache_helper.rb +7 -0
- data/app/helpers/spree/cms_pages_helper.rb +23 -0
- data/app/helpers/spree/frontend_helper.rb +170 -18
- data/app/helpers/spree/navigation_helper.rb +81 -4
- data/app/helpers/spree/products_filters_helper.rb +168 -0
- data/app/helpers/spree/store_helper.rb +41 -0
- data/app/helpers/spree/structured_data_helper.rb +6 -2
- data/app/helpers/spree/taxons_helper.rb +2 -2
- data/app/services/spree/build_localized_redirect_url.rb +141 -0
- data/app/views/kaminari/twitter-bootstrap-4/_first_page.html.erb +3 -3
- data/app/views/kaminari/twitter-bootstrap-4/_gap.html.erb +2 -2
- data/app/views/kaminari/twitter-bootstrap-4/_last_page.html.erb +3 -3
- data/app/views/kaminari/twitter-bootstrap-4/_next_page.html.erb +3 -3
- data/app/views/kaminari/twitter-bootstrap-4/_page.html.erb +2 -2
- data/app/views/kaminari/twitter-bootstrap-4/_paginator.html.erb +2 -2
- data/app/views/kaminari/twitter-bootstrap-4/_prev_page.html.erb +3 -3
- data/app/views/spree/address/_form.html.erb +26 -27
- data/app/views/spree/addresses/_form.html.erb +15 -6
- data/app/views/spree/addresses/edit.html.erb +13 -8
- data/app/views/spree/addresses/new.html.erb +8 -4
- data/app/views/spree/checkout/_address.html.erb +19 -23
- data/app/views/spree/checkout/_confirm.html.erb +1 -75
- data/app/views/spree/checkout/_credit_card.html.erb +3 -2
- data/app/views/spree/checkout/_delivery.html.erb +11 -4
- data/app/views/spree/checkout/_delivery_informations.html.erb +51 -0
- data/app/views/spree/checkout/_payment.html.erb +5 -24
- data/app/views/spree/checkout/_payment_sources.html.erb +17 -0
- data/app/views/spree/checkout/_summary.html.erb +22 -19
- data/app/views/spree/checkout/edit.html.erb +22 -2
- data/app/views/spree/checkout/payment/_gateway.html.erb +2 -2
- data/app/views/spree/checkout/registration.html.erb +3 -3
- data/app/views/spree/cms_pages/show.html.erb +16 -0
- data/app/views/spree/errors/not_found.html.erb +2 -2
- data/app/views/spree/home/index.html.erb +17 -123
- data/app/views/spree/layouts/checkout.html.erb +3 -1
- data/app/views/spree/layouts/spree_application.html.erb +3 -2
- data/app/views/spree/locale/index.html.erb +1 -0
- data/app/views/spree/orders/_coupon_code.html.erb +3 -4
- data/app/views/spree/orders/_line_item.html.erb +4 -4
- data/app/views/spree/orders/_line_item_data.html.erb +3 -3
- data/app/views/spree/orders/edit.html.erb +2 -3
- data/app/views/spree/orders/show.html.erb +2 -72
- data/app/views/spree/products/_cart_form.html.erb +5 -2
- data/app/views/spree/products/_color_option_type.html.erb +14 -14
- data/app/views/spree/products/_description.html.erb +19 -14
- data/app/views/spree/products/_filters_desktop.html.erb +80 -40
- data/app/views/spree/products/_filters_mobile.html.erb +47 -15
- data/app/views/spree/products/_gallery.html.erb +4 -6
- data/app/views/spree/products/_gallery_modal.html.erb +4 -6
- data/app/views/spree/products/_option_type.html.erb +1 -3
- data/app/views/spree/products/_product.html.erb +1 -1
- data/app/views/spree/products/_properties.html.erb +6 -4
- data/app/views/spree/products/_sort_desktop.html.erb +20 -14
- data/app/views/spree/products/_sort_mobile.html.erb +24 -8
- data/app/views/spree/products/_thumbnails.html.erb +2 -2
- data/app/views/spree/products/index.html.erb +7 -4
- data/app/views/spree/products/related.html.erb +11 -5
- data/app/views/spree/products/show.html.erb +2 -3
- data/app/views/spree/shared/_breadcrumbs.html.erb +2 -2
- data/app/views/spree/shared/_carousel_4_products.html.erb +14 -20
- data/app/views/spree/shared/_cart.html.erb +1 -1
- data/app/views/spree/shared/_checkout_header.html.erb +22 -21
- data/app/views/spree/shared/_color_select.html.erb +3 -3
- data/app/views/spree/shared/_copyright.html.erb +1 -10
- data/app/views/spree/shared/_currency_dropdown.html.erb +13 -0
- data/app/views/spree/shared/_delete_address_popup.html.erb +1 -2
- data/app/views/spree/shared/_error_messages.html.erb +2 -2
- data/app/views/spree/shared/_footer.html.erb +31 -21
- data/app/views/spree/shared/_get_started.html.erb +32 -0
- data/app/views/spree/shared/_head.html.erb +8 -5
- data/app/views/spree/shared/_header.html.erb +4 -4
- data/app/views/spree/shared/_internationalization_options.html.erb +31 -0
- data/app/views/spree/shared/_line_item.html.erb +3 -3
- data/app/views/spree/shared/_link_to_account.html.erb +7 -4
- data/app/views/spree/shared/_link_to_cart.html.erb +1 -2
- data/app/views/spree/shared/_locale_and_currency.html.erb +6 -0
- data/app/views/spree/shared/_locale_dropdown.html.erb +13 -0
- data/app/views/spree/shared/_login.html.erb +5 -5
- data/app/views/spree/shared/_main_nav_bar.html.erb +69 -45
- data/app/views/spree/shared/_mobile_internationalization_options.html.erb +37 -0
- data/app/views/spree/shared/_mobile_navigation.html.erb +48 -63
- data/app/views/spree/shared/_nav_bar.html.erb +9 -19
- data/app/views/spree/shared/_no_product_available.html.erb +1 -1
- data/app/views/spree/shared/_option_values.html.erb +2 -21
- data/app/views/spree/shared/_order_details.html.erb +117 -174
- data/app/views/spree/shared/_paths.html.erb +8 -0
- data/app/views/spree/shared/_payment.html.erb +2 -2
- data/app/views/spree/shared/_payment_sources.html.erb +2 -2
- data/app/views/spree/shared/_product_added_modal.html.erb +3 -3
- data/app/views/spree/shared/_properties.html.erb +4 -0
- data/app/views/spree/shared/_quantity_select.html.erb +2 -2
- data/app/views/spree/shared/_search.html.erb +9 -13
- data/app/views/spree/shared/_translations.html.erb +8 -7
- data/app/views/spree/shared/carousel/_single.html.erb +9 -14
- data/app/views/spree/shared/carousel/_thumbnails.html.erb +35 -39
- data/app/views/spree/shared/cms/pages/_edit_mode.html.erb +13 -0
- data/app/views/spree/shared/cms/sections/_featured_article.html.erb +27 -0
- data/app/views/spree/shared/cms/sections/_hero_image.html.erb +60 -0
- data/app/views/spree/shared/cms/sections/_image_gallery.html.erb +171 -0
- data/app/views/spree/shared/cms/sections/_product_carousel.html.erb +5 -0
- data/app/views/spree/shared/cms/sections/_rich_text_content.html.erb +3 -0
- data/app/views/spree/shared/cms/sections/_side_by_side_images.html.erb +118 -0
- data/app/views/spree/taxons/_header.html.erb +7 -2
- data/app/views/spree/users/_address.html.erb +16 -24
- data/app/views/spree/users/_address_controls.html.erb +10 -0
- data/app/views/spree/users/show.html.erb +21 -16
- data/config/initializers/admin_actions.rb +18 -0
- data/config/initializers/assets.rb +4 -13
- data/config/initializers/canonical_rails.rb +1 -1
- data/config/routes.rb +30 -26
- data/lib/generators/spree/frontend/copy_storefront/copy_storefront_generator.rb +1 -7
- data/lib/generators/spree/frontend/install/install_generator.rb +34 -0
- data/lib/generators/spree/frontend/install/templates/app/assets/config/manifest.js +2 -0
- data/lib/generators/spree/frontend/install/templates/vendor/assets/javascripts/spree/frontend/all.js +8 -0
- data/lib/generators/spree/frontend/install/templates/vendor/assets/stylesheets/spree/frontend/all.css +9 -0
- data/lib/spree/frontend/configuration.rb +18 -0
- data/lib/spree/frontend/engine.rb +3 -1
- data/lib/spree/frontend/version.rb +9 -0
- data/lib/spree/frontend.rb +8 -4
- data/license.md +13 -0
- data/spec/fixtures/files/store_favicon.ico +0 -0
- data/spree_frontend.gemspec +26 -14
- data/vendor/assets/javascripts/cleave.js +8 -0
- data/vendor/assets/javascripts/fetch.umd.js +531 -0
- data/vendor/assets/javascripts/jquery.payment.js +652 -0
- data/vendor/assets/javascripts/jsuri.js +458 -0
- data/vendor/assets/javascripts/polyfill.min.js +1 -0
- metadata +224 -86
- data/app/assets/images/homepage/big_category_banner.jpg +0 -0
- data/app/assets/images/homepage/big_category_banner_mobile.jpg +0 -0
- data/app/assets/images/homepage/big_category_banner_tablet_landscape.jpg +0 -0
- data/app/assets/images/homepage/big_category_banner_tablet_portrait.jpg +0 -0
- data/app/assets/images/homepage/category_banner_lower.jpg +0 -0
- data/app/assets/images/homepage/category_banner_lower_mobile.jpg +0 -0
- data/app/assets/images/homepage/category_banner_lower_tablet_landscape.jpg +0 -0
- data/app/assets/images/homepage/category_banner_lower_tablet_portrait.jpg +0 -0
- data/app/assets/images/homepage/category_banner_upper.jpg +0 -0
- data/app/assets/images/homepage/category_banner_upper_mobile.jpg +0 -0
- data/app/assets/images/homepage/category_banner_upper_tablet_landscape.jpg +0 -0
- data/app/assets/images/homepage/category_banner_upper_tablet_portrait.jpg +0 -0
- data/app/assets/images/homepage/main_banner.jpg +0 -0
- data/app/assets/images/homepage/main_banner_mobile.jpg +0 -0
- data/app/assets/images/homepage/main_banner_tablet_landscape.jpg +0 -0
- data/app/assets/images/homepage/main_banner_tablet_portrait.jpg +0 -0
- data/app/assets/images/homepage/promo_banner_left.jpg +0 -0
- data/app/assets/images/homepage/promo_banner_left_mobile.jpg +0 -0
- data/app/assets/images/homepage/promo_banner_left_tablet_landscape.jpg +0 -0
- data/app/assets/images/homepage/promo_banner_left_tablet_portrait.jpg +0 -0
- data/app/assets/images/homepage/promo_banner_right.jpg +0 -0
- data/app/assets/images/homepage/promo_banner_right_mobile.jpg +0 -0
- data/app/assets/images/homepage/promo_banner_right_tablet_landscape.jpg +0 -0
- data/app/assets/images/homepage/promo_banner_right_tablet_portrait.jpg +0 -0
- data/app/assets/images/meganav/promo_banner_left-first-category.jpg +0 -0
- data/app/assets/images/meganav/promo_banner_left-second-category.jpg +0 -0
- data/app/assets/images/meganav/promo_banner_left-third-category.jpg +0 -0
- data/app/assets/images/meganav/promo_banner_right-first-category.jpg +0 -0
- data/app/assets/images/meganav/promo_banner_right-second-category.jpg +0 -0
- data/app/assets/images/meganav/promo_banner_right-third-category.jpg +0 -0
- data/app/assets/images/noimage/big_category_banner.jpg +0 -0
- data/app/assets/images/noimage/big_category_banner_mobile.jpg +0 -0
- data/app/assets/images/noimage/big_category_banner_tablet_landscape.jpg +0 -0
- data/app/assets/images/noimage/big_category_banner_tablet_portrait.jpg +0 -0
- data/app/assets/images/noimage/category_banner.jpg +0 -0
- data/app/assets/images/noimage/category_banner_mobile.jpg +0 -0
- data/app/assets/images/noimage/category_banner_plp.jpg +0 -0
- data/app/assets/images/noimage/category_banner_tablet_landscape.jpg +0 -0
- data/app/assets/images/noimage/category_banner_tablet_portrait.jpg +0 -0
- data/app/assets/images/noimage/main_banner.jpg +0 -0
- data/app/assets/images/noimage/main_banner_mobile.jpg +0 -0
- data/app/assets/images/noimage/main_banner_tablet_landscape.jpg +0 -0
- data/app/assets/images/noimage/main_banner_tablet_portrait.jpg +0 -0
- data/app/assets/images/noimage/product_photo.jpg +0 -0
- data/app/assets/images/noimage/promo_banner.jpg +0 -0
- data/app/assets/images/noimage/promo_banner_megamenu.jpg +0 -0
- data/app/assets/images/noimage/promo_banner_mobile.jpg +0 -0
- data/app/assets/images/noimage/promo_banner_tablet_landscape.jpg +0 -0
- data/app/assets/images/noimage/promo_banner_tablet_portrait.jpg +0 -0
- data/app/assets/images/spark-logo@3x.png +0 -0
- data/app/assets/stylesheets/spree/frontend/_glyphicons_urls_fix.scss +0 -10
- data/app/assets/stylesheets/spree/frontend/address_book.scss +0 -8
- data/app/models/spree/frontend_configuration.rb +0 -7
- data/app/views/spree/shared/_taxonomies.html.erb +0 -16
- /data/app/views/spree/{shared → errors}/forbidden.html.erb +0 -0
- /data/app/views/spree/{shared → errors}/unauthorized.html.erb +0 -0
@@ -1,6 +1,26 @@
|
|
1
|
+
.position-absolute-center {
|
2
|
+
position:absolute;
|
3
|
+
left:50%;
|
4
|
+
top:50%;
|
5
|
+
transform:translate(-50%, -50%);
|
6
|
+
}
|
7
|
+
|
8
|
+
.position-absolute-x-center {
|
9
|
+
position:absolute;
|
10
|
+
left:50%;
|
11
|
+
transform:translate(-50%, 0);
|
12
|
+
}
|
13
|
+
|
14
|
+
.position-absolute-y-center {
|
15
|
+
position:absolute;
|
16
|
+
top:50%;
|
17
|
+
transform:translate(0, -50%);
|
18
|
+
}
|
19
|
+
|
1
20
|
#breadcrumbs {
|
2
21
|
padding: 0;
|
3
22
|
}
|
23
|
+
|
4
24
|
.breadcrumb {
|
5
25
|
background: none;
|
6
26
|
padding: 0.5rem 0;
|
@@ -23,3 +43,31 @@
|
|
23
43
|
.breadcrumb-product-name {
|
24
44
|
padding-right: 9.5px;
|
25
45
|
}
|
46
|
+
|
47
|
+
.truncate {
|
48
|
+
white-space: nowrap;
|
49
|
+
overflow: hidden;
|
50
|
+
text-overflow: ellipsis;
|
51
|
+
}
|
52
|
+
|
53
|
+
// Aspect Ratios
|
54
|
+
[style*="--aspect-ratio"] > img,
|
55
|
+
[style*="--aspect-ratio"] > svg {
|
56
|
+
width: 100%;
|
57
|
+
height: 100%;
|
58
|
+
position: absolute;
|
59
|
+
top: 0;
|
60
|
+
left: 0;
|
61
|
+
}
|
62
|
+
|
63
|
+
@supports (--custom:property) {
|
64
|
+
[style*="--aspect-ratio"] {
|
65
|
+
position: relative;
|
66
|
+
}
|
67
|
+
|
68
|
+
[style*="--aspect-ratio"]::before {
|
69
|
+
content: "";
|
70
|
+
display: block;
|
71
|
+
padding-bottom: calc(100% / (var(--aspect-ratio)));
|
72
|
+
}
|
73
|
+
}
|
@@ -1,3 +1,4 @@
|
|
1
|
+
// we're keeping this file for legacy installations relying on it
|
1
2
|
$grid-gutter-width: 19px;
|
2
3
|
$body-color: $font-color;
|
3
4
|
$theme-colors: (
|
@@ -35,6 +36,5 @@ $grid-breakpoints: (
|
|
35
36
|
$container-max-widths: (
|
36
37
|
sm: 768px,
|
37
38
|
md: 992px,
|
38
|
-
lg: 1200px
|
39
|
-
xl: 1200px
|
39
|
+
lg: 1200px
|
40
40
|
);
|
@@ -1,3 +1,4 @@
|
|
1
|
+
// main spree variables
|
1
2
|
$primary-color: #0074c2;
|
2
3
|
$secondary-color: #4c4c4c;
|
3
4
|
$primary-background: #ffffff;
|
@@ -18,3 +19,56 @@ $spree-header-max-width: 1440px;
|
|
18
19
|
$spree-header-mobile-height: 50px;
|
19
20
|
$spree-header-tablet-height: 75px;
|
20
21
|
$spree-header-desktop-height: 75px;
|
22
|
+
|
23
|
+
// bootstrap overrides
|
24
|
+
$grid-gutter-width: 1rem;
|
25
|
+
$body-color: $font-color;
|
26
|
+
$theme-colors: (
|
27
|
+
// standard bootstrap colors
|
28
|
+
"primary": $primary-color,
|
29
|
+
"secondary": $secondary-color,
|
30
|
+
"danger": #f53737,
|
31
|
+
"info": #999999,
|
32
|
+
"warning": #ffc107,
|
33
|
+
"light-secondary": #999999,
|
34
|
+
"borders": $second-global-border,
|
35
|
+
"dark-borders": $global-border-style,
|
36
|
+
"light-background": $primary-background,
|
37
|
+
"dark-text": $font-color,
|
38
|
+
"overlay": rgba(76, 76, 76, 0.5),
|
39
|
+
"shadow": rgba(0, 0, 0, 0.16)
|
40
|
+
);
|
41
|
+
$enable-rounded: false;
|
42
|
+
$enable-shadows: false;
|
43
|
+
$enable-gradients: false;
|
44
|
+
$font-family-sans-serif: $font-family;
|
45
|
+
$font-weight-medium: 500;
|
46
|
+
.font-weight-medium {
|
47
|
+
font-weight: $font-weight-medium;
|
48
|
+
}
|
49
|
+
$btn-border-width: 2px;
|
50
|
+
$modal-dialog-margin: 0;
|
51
|
+
$grid-breakpoints: (
|
52
|
+
xs: 0,
|
53
|
+
sm: 576px,
|
54
|
+
md: 768px,
|
55
|
+
lg: 992px,
|
56
|
+
xl: 1200px
|
57
|
+
);
|
58
|
+
$container-max-widths: (
|
59
|
+
sm: 768px,
|
60
|
+
md: 992px,
|
61
|
+
lg: 1200px
|
62
|
+
);
|
63
|
+
|
64
|
+
// helper variables
|
65
|
+
$container-padding: $grid-gutter-width / 2;
|
66
|
+
$photo-width-to-height-ratio: 30001/ 37500;
|
67
|
+
$photo-width-to-height-ratio-zoom: 28015 / 37500;
|
68
|
+
$thumbnails-carousel-single-height: 100% / $photo-width-to-height-ratio;
|
69
|
+
$thumbnails-carousel-single-height-zoom: 100% /
|
70
|
+
$photo-width-to-height-ratio-zoom;
|
71
|
+
$zoom-height-breakpoint: calc(
|
72
|
+
650px / #{$photo-width-to-height-ratio-zoom} + 102px * 2
|
73
|
+
);
|
74
|
+
$spree-plp-filter-desktop-position: $spree-header-desktop-height + 77px;
|
@@ -2,11 +2,6 @@
|
|
2
2
|
display: flex;
|
3
3
|
flex-direction: column;
|
4
4
|
|
5
|
-
div:first-child {
|
6
|
-
-webkit-flex: 0;
|
7
|
-
flex-shrink: 0;
|
8
|
-
}
|
9
|
-
|
10
5
|
&-order-details {
|
11
6
|
padding-bottom: 40px;
|
12
7
|
font-weight: 500;
|
@@ -36,6 +31,9 @@
|
|
36
31
|
}
|
37
32
|
|
38
33
|
&-line-items {
|
34
|
+
@include media-breakpoint-down(sm) {
|
35
|
+
flex-basis: 100%;
|
36
|
+
}
|
39
37
|
@include media-breakpoint-up(lg) {
|
40
38
|
border: none;
|
41
39
|
flex: 1 1 0;
|
@@ -48,15 +46,6 @@
|
|
48
46
|
&-line-item {
|
49
47
|
$self: &;
|
50
48
|
|
51
|
-
a {
|
52
|
-
max-width: 50%;
|
53
|
-
margin-right: 20px;
|
54
|
-
|
55
|
-
@include media-breakpoint-up(lg) {
|
56
|
-
margin-right: 40px;
|
57
|
-
}
|
58
|
-
}
|
59
|
-
|
60
49
|
img {
|
61
50
|
width: 90px;
|
62
51
|
height: auto;
|
@@ -73,14 +62,28 @@
|
|
73
62
|
&-name {
|
74
63
|
font-size: font-px-to-rem(14px);
|
75
64
|
border-top: 1px solid $global-border-style;
|
65
|
+
margin-right: 20px;
|
76
66
|
|
77
|
-
|
78
|
-
|
67
|
+
&-image {
|
68
|
+
padding-right: 16px;
|
79
69
|
}
|
80
70
|
|
81
|
-
|
82
|
-
|
83
|
-
|
71
|
+
&-link {
|
72
|
+
max-width: 50%;
|
73
|
+
|
74
|
+
@include media-breakpoint-up(lg) {
|
75
|
+
margin-right: 40px;
|
76
|
+
}
|
77
|
+
|
78
|
+
|
79
|
+
@include media-breakpoint-up(sm) {
|
80
|
+
font-size: font-px-to-rem(27px);
|
81
|
+
}
|
82
|
+
|
83
|
+
@include media-breakpoint-up(lg) {
|
84
|
+
font-size: font-px-to-rem(22px);
|
85
|
+
width: 55%;
|
86
|
+
}
|
84
87
|
}
|
85
88
|
|
86
89
|
&-options {
|
@@ -185,6 +188,8 @@
|
|
185
188
|
}
|
186
189
|
|
187
190
|
&-delivery-informations {
|
191
|
+
flex-basis: 100%;
|
192
|
+
|
188
193
|
div:first-child {
|
189
194
|
flex-shrink: unset;
|
190
195
|
-webkit-flex: unset;
|
@@ -253,13 +258,9 @@
|
|
253
258
|
}
|
254
259
|
|
255
260
|
#checkout-summary {
|
256
|
-
|
257
|
-
@include media-breakpoint-
|
258
|
-
margin-top:
|
259
|
-
}
|
260
|
-
@include media-breakpoint-up(lg) {
|
261
|
-
flex: 0 0 40%;
|
262
|
-
align-self: flex-start;
|
261
|
+
flex: 1 1 0;
|
262
|
+
@include media-breakpoint-down(sm) {
|
263
|
+
margin-top: 20px;
|
263
264
|
}
|
264
265
|
}
|
265
266
|
}
|
@@ -32,9 +32,21 @@
|
|
32
32
|
}
|
33
33
|
}
|
34
34
|
&-text {
|
35
|
-
|
35
|
+
color: black;
|
36
|
+
font-size: 0.8rem;
|
37
|
+
@include media-breakpoint-up(sm) {
|
38
|
+
font-size: 1rem;
|
39
|
+
}
|
40
|
+
@include media-breakpoint-up(lg) {
|
41
|
+
font-size: 1.25rem;
|
42
|
+
}
|
43
|
+
svg {
|
44
|
+
height: 15px;
|
45
|
+
padding-top: 2px;
|
46
|
+
}
|
36
47
|
&:hover {
|
37
48
|
text-decoration: underline;
|
49
|
+
color: black;
|
38
50
|
}
|
39
51
|
}
|
40
52
|
}
|
@@ -149,7 +161,7 @@
|
|
149
161
|
}
|
150
162
|
hr {
|
151
163
|
margin: 0;
|
152
|
-
|
164
|
+
flex: 1;
|
153
165
|
border: 1px solid theme-color('info');
|
154
166
|
}
|
155
167
|
}
|
@@ -160,8 +172,11 @@
|
|
160
172
|
.nav-item {
|
161
173
|
color: theme-color('info');
|
162
174
|
font-weight: 600;
|
175
|
+
max-width: 70px;
|
176
|
+
text-align: center;
|
163
177
|
@include media-breakpoint-up(sm) {
|
164
178
|
font-weight: 500;
|
179
|
+
max-width: 100px;
|
165
180
|
}
|
166
181
|
a {
|
167
182
|
color: inherit;
|
@@ -385,19 +400,19 @@
|
|
385
400
|
}
|
386
401
|
&-header {
|
387
402
|
font-size: font-px-to-rem(16px);
|
403
|
+
hyphens: auto;
|
404
|
+
overflow-wrap: break-word;
|
405
|
+
word-wrap: break-word;
|
388
406
|
font-weight: 500;
|
389
|
-
line-height: 1.06;
|
390
407
|
letter-spacing: 0.4px;
|
391
|
-
margin-bottom:
|
408
|
+
margin-bottom: 30px;
|
392
409
|
@include media-breakpoint-up(sm) {
|
393
410
|
font-size: font-px-to-rem(29px);
|
394
|
-
line-height: 1.1;
|
395
411
|
letter-spacing: 0.73px;
|
396
412
|
margin-bottom: 74px;
|
397
413
|
}
|
398
414
|
@include media-breakpoint-up(lg) {
|
399
415
|
font-size: font-px-to-rem(26px);
|
400
|
-
line-height: 0.65;
|
401
416
|
letter-spacing: 0.65px;
|
402
417
|
margin-bottom: 35px;
|
403
418
|
}
|
@@ -494,9 +509,6 @@
|
|
494
509
|
font-size: font-px-to-rem(16px);
|
495
510
|
}
|
496
511
|
}
|
497
|
-
.delete-address-img {
|
498
|
-
color: $primary-color;
|
499
|
-
}
|
500
512
|
}
|
501
513
|
|
502
514
|
#checkout-summary {
|
@@ -508,7 +520,8 @@
|
|
508
520
|
height: 100%;
|
509
521
|
padding: 0;
|
510
522
|
max-width: 380px;
|
511
|
-
|
523
|
+
margin-right: 0;
|
524
|
+
margin-left: auto;
|
512
525
|
}
|
513
526
|
}
|
514
527
|
|
@@ -517,3 +530,4 @@
|
|
517
530
|
}
|
518
531
|
}
|
519
532
|
}
|
533
|
+
|
@@ -0,0 +1 @@
|
|
1
|
+
@import "spree/frontend/views/spree/cms_sections/product_buy_bar";
|
@@ -0,0 +1,20 @@
|
|
1
|
+
.row.section-row.sticky-top {
|
2
|
+
z-index: 3;
|
3
|
+
background-color: rgba(255, 255, 255, 0.95);
|
4
|
+
padding: 5px 0;
|
5
|
+
border-top: 1px solid $global-border-style;
|
6
|
+
border-bottom: 1px solid $global-border-style;
|
7
|
+
top: $spree-header-mobile-height + 24px;
|
8
|
+
|
9
|
+
.buy-container {
|
10
|
+
min-height: $spree-header-mobile-height;
|
11
|
+
}
|
12
|
+
|
13
|
+
li.buy-bar {
|
14
|
+
a { color: grey;
|
15
|
+
&.active {
|
16
|
+
color: $header-font-color;
|
17
|
+
}
|
18
|
+
}
|
19
|
+
}
|
20
|
+
}
|
@@ -1,10 +1,29 @@
|
|
1
|
+
:root {
|
2
|
+
--spree-border-color: transparent;
|
3
|
+
}
|
4
|
+
|
5
|
+
.brand {
|
6
|
+
img {
|
7
|
+
width: 85%;
|
8
|
+
max-width: 140px;
|
9
|
+
}
|
10
|
+
}
|
11
|
+
|
12
|
+
.section-row {
|
13
|
+
margin-bottom: #{$grid-gutter-width};
|
14
|
+
}
|
15
|
+
|
16
|
+
.match-col-gap {
|
17
|
+
padding-left: $container-padding;
|
18
|
+
padding-right: $container-padding;
|
19
|
+
}
|
20
|
+
|
1
21
|
.homepage {
|
2
22
|
&-hero-image {
|
3
23
|
display: flex;
|
4
|
-
justify-content:
|
24
|
+
justify-content: flex-start;
|
5
25
|
flex-direction: column;
|
6
26
|
text-align: center;
|
7
|
-
height: 204px;
|
8
27
|
width: 100%;
|
9
28
|
overflow: hidden;
|
10
29
|
|
@@ -16,16 +35,7 @@
|
|
16
35
|
height: 100%;
|
17
36
|
}
|
18
37
|
|
19
|
-
@include media-breakpoint-up(md) {
|
20
|
-
height: 418px;
|
21
|
-
}
|
22
|
-
|
23
|
-
@include media-breakpoint-up(lg) {
|
24
|
-
height: 600px;
|
25
|
-
}
|
26
|
-
|
27
38
|
.hero-content {
|
28
|
-
position: absolute;
|
29
39
|
z-index: 1;
|
30
40
|
right: 10%;
|
31
41
|
}
|
@@ -40,7 +50,7 @@
|
|
40
50
|
|
41
51
|
@include media-breakpoint-up(md) {
|
42
52
|
font-size: font-px-to-rem(44px);
|
43
|
-
width:
|
53
|
+
width: 398px;
|
44
54
|
}
|
45
55
|
|
46
56
|
@include media-breakpoint-up(lg) {
|
@@ -65,17 +75,6 @@
|
|
65
75
|
|
66
76
|
&-taxon-box {
|
67
77
|
display: block;
|
68
|
-
flex-direction: column;
|
69
|
-
height: 140px;
|
70
|
-
position: relative;
|
71
|
-
overflow: hidden;
|
72
|
-
|
73
|
-
img {
|
74
|
-
display: block;
|
75
|
-
object-fit: cover;
|
76
|
-
width: 100%;
|
77
|
-
height: 100%;
|
78
|
-
}
|
79
78
|
|
80
79
|
h3 {
|
81
80
|
margin: 0;
|
@@ -97,14 +96,6 @@
|
|
97
96
|
}
|
98
97
|
}
|
99
98
|
|
100
|
-
@include media-breakpoint-up(md) {
|
101
|
-
height: 324px;
|
102
|
-
}
|
103
|
-
|
104
|
-
@include media-breakpoint-up(lg) {
|
105
|
-
height: 390px;
|
106
|
-
}
|
107
|
-
|
108
99
|
&-text {
|
109
100
|
width: 100%;
|
110
101
|
text-transform: uppercase;
|
@@ -133,10 +124,10 @@
|
|
133
124
|
&-fashion-trends-box {
|
134
125
|
background: $secondary-background;
|
135
126
|
color: $secondary-font-color;
|
136
|
-
padding: 30px
|
127
|
+
padding: 30px 15px;
|
137
128
|
|
138
129
|
@include media-breakpoint-up(md) {
|
139
|
-
padding:
|
130
|
+
padding: 5vw 0px;
|
140
131
|
}
|
141
132
|
|
142
133
|
&-summer-text {
|
@@ -178,11 +169,12 @@
|
|
178
169
|
color: $font-color;
|
179
170
|
margin: auto;
|
180
171
|
font-size: font-px-to-rem(12px);
|
181
|
-
width: 283px;
|
172
|
+
max-width: 283px;
|
182
173
|
|
183
174
|
@include media-breakpoint-up(md) {
|
184
175
|
font-size: font-px-to-rem(16px);
|
185
|
-
width:
|
176
|
+
width: 90%;
|
177
|
+
max-width: 608px;
|
186
178
|
}
|
187
179
|
}
|
188
180
|
.spree-btn {
|
@@ -190,58 +182,36 @@
|
|
190
182
|
border: solid 2px theme-color('primary');
|
191
183
|
font-size: font-px-to-rem(12px);
|
192
184
|
font-weight: bold;
|
185
|
+
max-width: 100%;
|
193
186
|
@include media-breakpoint-up(md) {
|
194
187
|
font-size: font-px-to-rem(22px);
|
195
|
-
width: 400px;
|
196
|
-
padding-top: 0.7rem;
|
197
188
|
}
|
198
189
|
@include media-breakpoint-up(lg) {
|
199
190
|
font-size: font-px-to-rem(20px);
|
200
|
-
width: 497.2px;
|
201
191
|
}
|
202
192
|
}
|
203
193
|
}
|
204
194
|
}
|
205
195
|
|
206
196
|
&-bottom-box {
|
207
|
-
background: $secondary-background;
|
208
|
-
color: $secondary-font-color;
|
209
|
-
display: flex;
|
210
|
-
justify-content: center;
|
211
|
-
flex-direction: column;
|
212
|
-
text-align: center;
|
213
|
-
height: 168px;
|
214
|
-
overflow: hidden;
|
215
|
-
|
216
197
|
img {
|
217
198
|
width: 100%;
|
218
199
|
object-fit: cover;
|
219
200
|
}
|
220
201
|
|
221
|
-
@include media-breakpoint-up(md) {
|
222
|
-
height: 363px;
|
223
|
-
}
|
224
|
-
@include media-breakpoint-up(lg) {
|
225
|
-
height: 350px;
|
226
|
-
}
|
227
|
-
|
228
202
|
&-inner {
|
229
203
|
background: $primary-background;
|
230
204
|
margin: auto;
|
231
|
-
padding: 10px 30px;
|
232
205
|
position: absolute;
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
padding: 30px 100px;
|
238
|
-
}
|
206
|
+
max-height: 70%;
|
207
|
+
min-width: 60%;
|
208
|
+
max-width: 80%;
|
209
|
+
bottom: 35px;
|
239
210
|
|
240
211
|
&-small-text {
|
241
212
|
font-weight: 500;
|
242
213
|
line-height: 0.9;
|
243
214
|
letter-spacing: 0.25px;
|
244
|
-
text-align: center;
|
245
215
|
color: theme-color('primary');
|
246
216
|
font-size: font-px-to-rem(10px);
|
247
217
|
|
@@ -257,9 +227,12 @@
|
|
257
227
|
font-weight: 600;
|
258
228
|
line-height: 1.2;
|
259
229
|
letter-spacing: 0.38px;
|
260
|
-
text-align: center;
|
261
230
|
color: $font-color;
|
262
|
-
font-size: font-px-to-rem(
|
231
|
+
font-size: font-px-to-rem(14px);
|
232
|
+
|
233
|
+
@include media-breakpoint-up(sm) {
|
234
|
+
font-size: font-px-to-rem(22px);
|
235
|
+
}
|
263
236
|
|
264
237
|
@include media-breakpoint-up(md) {
|
265
238
|
font-size: font-px-to-rem(27px);
|
@@ -280,14 +253,28 @@
|
|
280
253
|
text-decoration: none !important;
|
281
254
|
}
|
282
255
|
&-text {
|
283
|
-
font-size: 12px;
|
256
|
+
font-size: font-px-to-rem(12px);
|
284
257
|
|
285
258
|
@include media-breakpoint-up(md) {
|
286
|
-
font-size: 22px;
|
259
|
+
font-size: font-px-to-rem(22px);
|
287
260
|
}
|
288
261
|
@include media-breakpoint-up(lg) {
|
289
|
-
font-size: 24px;
|
262
|
+
font-size: font-px-to-rem(24px);
|
290
263
|
}
|
291
264
|
}
|
292
265
|
}
|
266
|
+
|
267
|
+
&-hpb {
|
268
|
+
border: 3px solid var(--spree-border-color);
|
269
|
+
}
|
270
|
+
}
|
271
|
+
|
272
|
+
#missingHomepage {
|
273
|
+
.missing-homepage-logo-container {
|
274
|
+
width: 160px;
|
275
|
+
|
276
|
+
img {
|
277
|
+
max-width: 100%;
|
278
|
+
}
|
279
|
+
}
|
293
280
|
}
|
@@ -42,7 +42,7 @@
|
|
42
42
|
}
|
43
43
|
}
|
44
44
|
&-continue-link {
|
45
|
-
margin-top:
|
45
|
+
margin-top: 100px;
|
46
46
|
margin-bottom: 30px;
|
47
47
|
@include media-breakpoint-up(sm) {
|
48
48
|
padding: 20px 12px;
|
@@ -131,7 +131,7 @@
|
|
131
131
|
}
|
132
132
|
}
|
133
133
|
&-description {
|
134
|
-
|
134
|
+
h2 {
|
135
135
|
font-size: font-px-to-rem(14px);
|
136
136
|
@include media-breakpoint-up(sm) {
|
137
137
|
font-size: font-px-to-rem(22px);
|
@@ -227,6 +227,7 @@
|
|
227
227
|
border-width: 1px !important;
|
228
228
|
border-style: solid;
|
229
229
|
color: color-yiq($input-background);
|
230
|
+
touch-action: manipulation;
|
230
231
|
@include media-breakpoint-up(sm) {
|
231
232
|
height: 51.4px;
|
232
233
|
font-size: font-px-to-rem(24px);
|
@@ -358,7 +359,7 @@
|
|
358
359
|
}
|
359
360
|
}
|
360
361
|
}
|
361
|
-
input[type=text] {
|
362
|
+
input[type="text"] {
|
362
363
|
-webkit-appearance: none;
|
363
364
|
-moz-appearance: none;
|
364
365
|
appearance: none;
|
@@ -6,6 +6,11 @@
|
|
6
6
|
@include media-breakpoint-up(sm) {
|
7
7
|
font-size: font-px-to-rem(36px);
|
8
8
|
}
|
9
|
+
|
10
|
+
.compare-at-price {
|
11
|
+
color: theme-color("info");
|
12
|
+
text-decoration: line-through;
|
13
|
+
}
|
9
14
|
}
|
10
15
|
&-general-availability {
|
11
16
|
font-size: font-px-to-rem(12px);
|
@@ -87,6 +92,9 @@
|
|
87
92
|
border-color: theme-color("dark-text");
|
88
93
|
}
|
89
94
|
}
|
95
|
+
&:focus + label, &:focus + svg {
|
96
|
+
outline: theme-color("dark-text") dotted 2px;
|
97
|
+
}
|
90
98
|
&--bad-combination {
|
91
99
|
& + #{$self2}-label {
|
92
100
|
position: relative;
|