solidus_backend 2.3.1 → 2.4.0.beta1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of solidus_backend might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/app/assets/javascripts/spree/backend/admin.js +0 -12
- data/app/assets/javascripts/spree/backend/number_field_updater.coffee +5 -5
- data/app/assets/javascripts/spree/backend/shipments.js +16 -14
- data/app/assets/javascripts/spree/backend/stock_transfers/count_update_forms.coffee +3 -3
- data/app/assets/javascripts/spree/backend/stock_transfers/transfer_item_deleting.coffee +1 -1
- data/app/assets/javascripts/spree/backend/taxonomy.js.coffee +1 -1
- data/app/assets/javascripts/spree/backend/templates/orders/details_adjustment_row.hbs +2 -2
- data/app/assets/javascripts/spree/backend/templates/orders/line_item.hbs +3 -3
- data/app/assets/javascripts/spree/backend/templates/stock_items/stock_location_stock_item.hbs +5 -5
- data/app/assets/javascripts/spree/backend/templates/stock_transfers/transfer_item.hbs +5 -5
- data/app/assets/javascripts/spree/backend/templates/taxons/_tree.hbs +7 -3
- data/app/assets/javascripts/spree/backend/templates/variants/line_items_autocomplete_stock.hbs +1 -1
- data/app/assets/javascripts/spree/backend/templates/variants/split.hbs +2 -2
- data/app/assets/javascripts/spree/backend/views/order/customer_details.js +1 -2
- data/app/assets/javascripts/spree/backend.js +1 -1
- data/app/assets/stylesheets/spree/backend/_bootstrap_custom.scss +27 -906
- data/app/assets/stylesheets/spree/backend/components/_actions.scss +13 -15
- data/app/assets/stylesheets/spree/backend/components/_date-picker.scss +1 -1
- data/app/assets/stylesheets/spree/backend/components/_editable_table.scss +0 -1
- data/app/assets/stylesheets/spree/backend/components/_messages.scss +8 -8
- data/app/assets/stylesheets/spree/backend/components/_navigation.scss +1 -1
- data/app/assets/stylesheets/spree/backend/components/_number_field_update.scss +1 -1
- data/app/assets/stylesheets/spree/backend/components/_number_with_currency.scss +1 -1
- data/app/assets/stylesheets/spree/backend/components/_pills.scss +92 -0
- data/app/assets/stylesheets/spree/backend/components/_sidebar.scss +7 -32
- data/app/assets/stylesheets/spree/backend/components/_states.scss +5 -27
- data/app/assets/stylesheets/spree/backend/components/_stock_table.scss +0 -12
- data/app/assets/stylesheets/spree/backend/globals/_variables.scss +58 -139
- data/app/assets/stylesheets/spree/backend/plugins/_bootstrap_tooltip.scss +11 -15
- data/app/assets/stylesheets/spree/backend/plugins/_select2.scss +7 -5
- data/app/assets/stylesheets/spree/backend/sections/_orders.scss +6 -6
- data/app/assets/stylesheets/spree/backend/sections/_products.scss +5 -1
- data/app/assets/stylesheets/spree/backend/sections/_promotions.scss +4 -2
- data/app/assets/stylesheets/spree/backend/sections/_stock_management.scss +4 -35
- data/app/assets/stylesheets/spree/backend/sections/_style_guide.scss +14 -15
- data/app/assets/stylesheets/spree/backend/sections/_taxonomies.scss +9 -16
- data/app/assets/stylesheets/spree/backend/shared/_forms.scss +23 -20
- data/app/assets/stylesheets/spree/backend/shared/_header.scss +1 -5
- data/app/assets/stylesheets/spree/backend/shared/_layout.scss +3 -23
- data/app/assets/stylesheets/spree/backend/shared/_tables.scss +40 -92
- data/app/assets/stylesheets/spree/backend/shared/_typography.scss +6 -6
- data/app/assets/stylesheets/spree/backend/spree_admin.scss +1 -1
- data/app/controllers/spree/admin/adjustments_controller.rb +1 -1
- data/app/controllers/spree/admin/customer_returns_controller.rb +0 -1
- data/app/controllers/spree/admin/promotion_actions_controller.rb +1 -1
- data/app/controllers/spree/admin/shipping_methods_controller.rb +1 -1
- data/app/controllers/spree/admin/style_guide_controller.rb +3 -2
- data/app/controllers/spree/admin/tax_rates_controller.rb +1 -1
- data/app/controllers/spree/admin/users_controller.rb +9 -4
- data/app/helpers/spree/admin/base_helper.rb +32 -35
- data/app/helpers/spree/admin/stock_transfers_helper.rb +0 -4
- data/app/models/spree/backend_configuration.rb +1 -1
- data/app/views/spree/admin/adjustment_reasons/index.html.erb +6 -4
- data/app/views/spree/admin/adjustments/_adjustment.html.erb +5 -5
- data/app/views/spree/admin/adjustments/_adjustments_table.html.erb +7 -7
- data/app/views/spree/admin/cancellations/index.html.erb +9 -5
- data/app/views/spree/admin/customer_returns/_reimbursements_table.html.erb +6 -3
- data/app/views/spree/admin/customer_returns/_return_item_decision.html.erb +12 -7
- data/app/views/spree/admin/customer_returns/_return_item_selection.html.erb +13 -8
- data/app/views/spree/admin/customer_returns/edit.html.erb +1 -1
- data/app/views/spree/admin/customer_returns/index.html.erb +5 -5
- data/app/views/spree/admin/images/_image_row.html.erb +14 -4
- data/app/views/spree/admin/images/index.html.erb +2 -1
- data/app/views/spree/admin/option_types/_option_value_fields.html.erb +6 -6
- data/app/views/spree/admin/option_types/edit.html.erb +2 -1
- data/app/views/spree/admin/option_types/index.html.erb +5 -5
- data/app/views/spree/admin/orders/_adjustments.html.erb +3 -3
- data/app/views/spree/admin/orders/_carton.html.erb +1 -1
- data/app/views/spree/admin/orders/_carton_manifest.html.erb +3 -3
- data/app/views/spree/admin/orders/_risk_analysis.html.erb +18 -16
- data/app/views/spree/admin/orders/_shipment.html.erb +26 -30
- data/app/views/spree/admin/orders/_shipment_manifest.html.erb +6 -6
- data/app/views/spree/admin/orders/confirm/_line_items.html.erb +3 -3
- data/app/views/spree/admin/orders/confirm/_payments.html.erb +6 -6
- data/app/views/spree/admin/orders/confirm/_shipment.html.erb +1 -1
- data/app/views/spree/admin/orders/confirm/_shipment_manifest.html.erb +3 -3
- data/app/views/spree/admin/orders/index.html.erb +25 -9
- data/app/views/spree/admin/payment_methods/_form.html.erb +4 -1
- data/app/views/spree/admin/payment_methods/index.html.erb +11 -7
- data/app/views/spree/admin/payments/_capture_events.html.erb +1 -1
- data/app/views/spree/admin/payments/_list.html.erb +9 -5
- data/app/views/spree/admin/payments/show.html.erb +2 -2
- data/app/views/spree/admin/prices/_master_variant_table.html.erb +2 -2
- data/app/views/spree/admin/prices/_table.html.erb +2 -2
- data/app/views/spree/admin/product_properties/_product_property_fields.html.erb +1 -1
- data/app/views/spree/admin/product_properties/index.html.erb +4 -2
- data/app/views/spree/admin/products/index.html.erb +10 -9
- data/app/views/spree/admin/promotions/actions/_create_item_adjustments.html.erb +1 -1
- data/app/views/spree/admin/promotions/actions/_promotion_calculators_with_custom_fields.html.erb +1 -1
- data/app/views/spree/admin/promotions/calculators/_default_fields.html.erb +3 -6
- data/app/views/spree/admin/promotions/calculators/tiered_flat_rate/_fields.html.erb +3 -8
- data/app/views/spree/admin/promotions/calculators/tiered_percent/_fields.html.erb +3 -8
- data/app/views/spree/admin/promotions/index.html.erb +24 -17
- data/app/views/spree/admin/promotions/rules/_user_role.html.erb +2 -2
- data/app/views/spree/admin/properties/index.html.erb +3 -3
- data/app/views/spree/admin/refund_reasons/index.html.erb +7 -5
- data/app/views/spree/admin/refunds/new.html.erb +1 -1
- data/app/views/spree/admin/reimbursement_types/index.html.erb +2 -2
- data/app/views/spree/admin/reimbursements/edit.html.erb +6 -6
- data/app/views/spree/admin/reimbursements/index.html.erb +9 -2
- data/app/views/spree/admin/reimbursements/show.html.erb +6 -6
- data/app/views/spree/admin/reports/index.html.erb +2 -2
- data/app/views/spree/admin/reports/sales_total.html.erb +1 -1
- data/app/views/spree/admin/return_authorizations/_form.html.erb +9 -5
- data/app/views/spree/admin/return_authorizations/edit.html.erb +9 -2
- data/app/views/spree/admin/return_authorizations/index.html.erb +11 -4
- data/app/views/spree/admin/search/products.json.jbuilder +10 -0
- data/app/views/spree/admin/search/users.json.jbuilder +37 -0
- data/app/views/spree/admin/shared/_calculator_fields.html.erb +4 -1
- data/app/views/spree/admin/shared/_modal.html.erb +18 -0
- data/app/views/spree/admin/shared/_number_field_update_actions.html.erb +2 -2
- data/app/views/spree/admin/shared/_number_field_update_cell.html.erb +1 -1
- data/app/views/spree/admin/shared/_order_summary.html.erb +21 -5
- data/app/views/spree/admin/shared/_refunds.html.erb +6 -6
- data/app/views/spree/admin/shared/_settings_sub_menu.html.erb +4 -4
- data/app/views/spree/admin/shared/named_types/_index.html.erb +7 -5
- data/app/views/spree/admin/shared/preference_fields/_boolean.html.erb +13 -0
- data/app/views/spree/admin/shared/preference_fields/_decimal.html.erb +12 -0
- data/app/views/spree/admin/shared/preference_fields/_integer.html.erb +12 -0
- data/app/views/spree/admin/shared/preference_fields/_password.html.erb +12 -0
- data/app/views/spree/admin/shared/preference_fields/_string.html.erb +12 -0
- data/app/views/spree/admin/shared/preference_fields/_text.html.erb +12 -0
- data/app/views/spree/admin/shipping_categories/index.html.erb +2 -2
- data/app/views/spree/admin/shipping_methods/index.html.erb +5 -5
- data/app/views/spree/admin/stock_items/_stock_management.html.erb +3 -3
- data/app/views/spree/admin/stock_locations/index.html.erb +9 -11
- data/app/views/spree/admin/stock_movements/index.html.erb +4 -4
- data/app/views/spree/admin/stock_transfers/_transfer_item_actions.html.erb +1 -1
- data/app/views/spree/admin/stock_transfers/_transfer_item_table.html.erb +2 -2
- data/app/views/spree/admin/stock_transfers/index.html.erb +10 -6
- data/app/views/spree/admin/stock_transfers/tracking_info.html.erb +1 -1
- data/app/views/spree/admin/store_credits/index.html.erb +53 -50
- data/app/views/spree/admin/store_credits/show.html.erb +5 -5
- data/app/views/spree/admin/stores/_form.html.erb +9 -0
- data/app/views/spree/admin/style_guide/topics/components/_modals.html.erb +50 -0
- data/app/views/spree/admin/style_guide/topics/components/_pills.html.erb +101 -0
- data/app/views/spree/admin/style_guide/topics/tables/_building_tables.html.erb +4 -4
- data/app/views/spree/admin/tax_categories/index.html.erb +5 -5
- data/app/views/spree/admin/tax_rates/index.html.erb +9 -9
- data/app/views/spree/admin/taxonomies/_list.html.erb +4 -4
- data/app/views/spree/admin/taxons/search.json.jbuilder +5 -0
- data/app/views/spree/admin/users/index.html.erb +64 -23
- data/app/views/spree/admin/users/items.html.erb +9 -13
- data/app/views/spree/admin/users/orders.html.erb +28 -12
- data/app/views/spree/admin/variants/_table.html.erb +6 -5
- data/app/views/spree/admin/variants/index.html.erb +12 -16
- data/app/views/spree/admin/variants/new.html.erb +1 -3
- data/app/views/spree/admin/zones/edit.html.erb +0 -3
- data/app/views/spree/admin/zones/index.html.erb +2 -6
- data/app/views/spree/admin/zones/new.html.erb +0 -3
- data/app/views/spree/layouts/admin.html.erb +9 -30
- data/config/routes.rb +0 -4
- data/lib/spree/backend.rb +2 -1
- data/solidus_backend.gemspec +3 -1
- data/spec/controllers/spree/admin/orders_controller_spec.rb +0 -5
- data/spec/controllers/spree/admin/payments_controller_spec.rb +1 -1
- data/spec/controllers/spree/admin/search_controller_spec.rb +2 -2
- data/spec/features/admin/configuration/payment_methods_spec.rb +1 -1
- data/spec/features/admin/configuration/zones_spec.rb +1 -1
- data/spec/features/admin/orders/adjustments_spec.rb +1 -1
- data/spec/features/admin/orders/cancelling_and_resuming_spec.rb +4 -4
- data/spec/features/admin/orders/cancelling_inventory_spec.rb +1 -1
- data/spec/features/admin/orders/customer_details_spec.rb +8 -1
- data/spec/features/admin/orders/listing_spec.rb +1 -1
- data/spec/features/admin/orders/new_order_spec.rb +3 -3
- data/spec/features/admin/orders/order_details_spec.rb +17 -16
- data/spec/features/admin/orders/payments_spec.rb +4 -4
- data/spec/features/admin/orders/risk_analysis_spec.rb +2 -2
- data/spec/features/admin/orders/shipments_spec.rb +1 -1
- data/spec/features/admin/products/edit/images_spec.rb +1 -1
- data/spec/features/admin/store_credits_spec.rb +3 -3
- data/spec/features/admin/stores_spec.rb +35 -0
- data/spec/features/admin/users_spec.rb +60 -13
- data/spec/spec_helper.rb +9 -4
- data/vendor/assets/javascripts/solidus_admin/bootstrap.js +657 -361
- data/vendor/assets/javascripts/solidus_admin/popover.js +4 -0
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_alert.scss +4 -11
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_badge.scss +4 -33
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_breadcrumb.scss +1 -1
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_button-group.scss +11 -15
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_buttons.scss +13 -42
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_card.scss +27 -80
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_carousel.scss +24 -17
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_close.scss +0 -2
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_custom-forms.scss +27 -36
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_dropdown.scss +15 -48
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_forms.scss +70 -68
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_functions.scss +90 -0
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_grid.scss +3 -2
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_images.scss +1 -1
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_input-group.scss +6 -8
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_jumbotron.scss +0 -4
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_list-group.scss +9 -36
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_media.scss +0 -4
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_mixins.scss +2 -18
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_modal.scss +3 -3
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_nav.scss +15 -16
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_navbar.scss +70 -54
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_pagination.scss +3 -4
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_popover.scss +96 -72
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_print.scss +1 -9
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_progress.scss +4 -4
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_reboot.scss +187 -95
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_tables.scss +34 -19
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_tooltip.scss +52 -35
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_type.scss +8 -28
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_utilities.scss +1 -0
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_variables.scss +286 -410
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/bootstrap-grid.scss +2 -8
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/bootstrap-reboot.scss +1 -2
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/bootstrap.scss +2 -15
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_alert.scss +4 -5
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_badge.scss +6 -5
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_border-radius.scss +3 -3
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_box-shadow.scss +5 -0
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_breakpoints.scss +23 -13
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_buttons.scss +11 -14
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_clearfix.scss +1 -1
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_forms.scss +57 -55
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_gradients.scss +1 -1
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_grid-framework.scss +9 -18
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_grid.scss +12 -65
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_hover.scss +6 -6
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_list-group.scss +2 -4
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_nav-divider.scss +3 -3
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_pagination.scss +1 -0
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_reset-text.scss +4 -3
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_resize.scss +1 -1
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_screen-reader.scss +5 -2
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_text-truncate.scss +1 -1
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_transition.scss +9 -0
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_visibility.scss +2 -2
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_background.scss +4 -17
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_borders.scss +20 -5
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_display.scss +36 -1
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/{_responsive-embed.scss → utilities/_embed.scss} +0 -0
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_flex.scss +0 -4
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_position.scss +5 -3
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_spacing.scss +10 -12
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_text.scss +5 -17
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_visibility.scss +4 -48
- metadata +73 -34
- data/app/assets/stylesheets/spree/backend/shared/_skeleton.scss +0 -242
- data/app/controllers/spree/admin/countries_controller.rb +0 -9
- data/app/controllers/spree/admin/states_controller.rb +0 -29
- data/app/helpers/spree/admin/reimbursements_helper.rb +0 -14
- data/app/views/spree/admin/countries/_form.html.erb +0 -22
- data/app/views/spree/admin/countries/edit.html.erb +0 -19
- data/app/views/spree/admin/countries/index.html.erb +0 -49
- data/app/views/spree/admin/countries/new.html.erb +0 -18
- data/app/views/spree/admin/search/products.rabl +0 -9
- data/app/views/spree/admin/search/users.rabl +0 -30
- data/app/views/spree/admin/shared/_areas_tabs.html.erb +0 -19
- data/app/views/spree/admin/states/_form.html.erb +0 -14
- data/app/views/spree/admin/states/_state_list.html.erb +0 -33
- data/app/views/spree/admin/states/edit.html.erb +0 -19
- data/app/views/spree/admin/states/index.html.erb +0 -39
- data/app/views/spree/admin/states/new.html.erb +0 -17
- data/app/views/spree/admin/style_guide/topics/typography/_tags.html.erb +0 -25
- data/app/views/spree/admin/taxons/search.rabl +0 -5
- data/app/views/spree/admin/variants/new.js.erb +0 -1
- data/spec/features/admin/configuration/countries_spec.rb +0 -22
- data/spec/features/admin/configuration/states_spec.rb +0 -64
- data/spec/helpers/admin/reimbursements_helper_spec.rb +0 -34
- data/vendor/assets/javascripts/solidus_admin/tether.js +0 -1726
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_custom.scss +0 -4
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/_normalize.scss +0 -461
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_cards.scss +0 -47
- data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_transforms.scss +0 -14
@@ -1,4 +1,4 @@
|
|
1
|
-
// scss-lint:disable PropertyCount
|
1
|
+
// scss-lint:disable PropertyCount, VendorPrefix
|
2
2
|
|
3
3
|
// Embedded icons from Open Iconic.
|
4
4
|
// Released under MIT and copyright 2014 Waybury.
|
@@ -15,7 +15,6 @@
|
|
15
15
|
min-height: (1rem * $line-height-base);
|
16
16
|
padding-left: $custom-control-gutter;
|
17
17
|
margin-right: $custom-control-spacer-x;
|
18
|
-
cursor: pointer;
|
19
18
|
}
|
20
19
|
|
21
20
|
.custom-control-input {
|
@@ -24,31 +23,29 @@
|
|
24
23
|
opacity: 0;
|
25
24
|
|
26
25
|
&:checked ~ .custom-control-indicator {
|
27
|
-
color: $custom-control-checked-
|
28
|
-
background-color: $custom-control-checked-
|
29
|
-
@include box-shadow($custom-control-checked-
|
26
|
+
color: $custom-control-indicator-checked-color;
|
27
|
+
background-color: $custom-control-indicator-checked-bg;
|
28
|
+
@include box-shadow($custom-control-indicator-checked-box-shadow);
|
30
29
|
}
|
31
30
|
|
32
31
|
&:focus ~ .custom-control-indicator {
|
33
32
|
// the mixin is not used here to make sure there is feedback
|
34
|
-
box-shadow: $custom-control-focus-
|
33
|
+
box-shadow: $custom-control-indicator-focus-box-shadow;
|
35
34
|
}
|
36
35
|
|
37
36
|
&:active ~ .custom-control-indicator {
|
38
|
-
color: $custom-control-active-
|
39
|
-
background-color: $custom-control-active-
|
40
|
-
@include box-shadow($custom-control-active-
|
37
|
+
color: $custom-control-indicator-active-color;
|
38
|
+
background-color: $custom-control-indicator-active-bg;
|
39
|
+
@include box-shadow($custom-control-indicator-active-box-shadow);
|
41
40
|
}
|
42
41
|
|
43
42
|
&:disabled {
|
44
43
|
~ .custom-control-indicator {
|
45
|
-
|
46
|
-
background-color: $custom-control-disabled-indicator-bg;
|
44
|
+
background-color: $custom-control-indicator-disabled-bg;
|
47
45
|
}
|
48
46
|
|
49
47
|
~ .custom-control-description {
|
50
|
-
color: $custom-control-disabled-
|
51
|
-
cursor: $custom-control-disabled-cursor;
|
48
|
+
color: $custom-control-description-disabled-color;
|
52
49
|
}
|
53
50
|
}
|
54
51
|
}
|
@@ -79,17 +76,17 @@
|
|
79
76
|
|
80
77
|
.custom-checkbox {
|
81
78
|
.custom-control-indicator {
|
82
|
-
@include border-radius($custom-checkbox-radius);
|
79
|
+
@include border-radius($custom-checkbox-indicator-border-radius);
|
83
80
|
}
|
84
81
|
|
85
82
|
.custom-control-input:checked ~ .custom-control-indicator {
|
86
|
-
background-image: $custom-checkbox-
|
83
|
+
background-image: $custom-checkbox-indicator-icon-checked;
|
87
84
|
}
|
88
85
|
|
89
86
|
.custom-control-input:indeterminate ~ .custom-control-indicator {
|
90
|
-
background-color: $custom-checkbox-indeterminate-bg;
|
91
|
-
background-image: $custom-checkbox-
|
92
|
-
@include box-shadow($custom-checkbox-indeterminate-box-shadow);
|
87
|
+
background-color: $custom-checkbox-indicator-indeterminate-bg;
|
88
|
+
background-image: $custom-checkbox-indicator-icon-indeterminate;
|
89
|
+
@include box-shadow($custom-checkbox-indicator-indeterminate-box-shadow);
|
93
90
|
}
|
94
91
|
}
|
95
92
|
|
@@ -99,11 +96,11 @@
|
|
99
96
|
|
100
97
|
.custom-radio {
|
101
98
|
.custom-control-indicator {
|
102
|
-
border-radius: $custom-radio-radius;
|
99
|
+
border-radius: $custom-radio-indicator-border-radius;
|
103
100
|
}
|
104
101
|
|
105
102
|
.custom-control-input:checked ~ .custom-control-indicator {
|
106
|
-
background-image: $custom-radio-
|
103
|
+
background-image: $custom-radio-indicator-icon-checked;
|
107
104
|
}
|
108
105
|
}
|
109
106
|
|
@@ -136,8 +133,7 @@
|
|
136
133
|
.custom-select {
|
137
134
|
display: inline-block;
|
138
135
|
max-width: 100%;
|
139
|
-
|
140
|
-
height: calc(#{$input-height} + #{$select-border-width});
|
136
|
+
height: $input-height;
|
141
137
|
padding: $custom-select-padding-y ($custom-select-padding-x + $custom-select-indicator-padding) $custom-select-padding-y $custom-select-padding-x;
|
142
138
|
line-height: $custom-select-line-height;
|
143
139
|
color: $custom-select-color;
|
@@ -145,10 +141,12 @@
|
|
145
141
|
background: $custom-select-bg $custom-select-indicator no-repeat right $custom-select-padding-x center;
|
146
142
|
background-size: $custom-select-bg-size;
|
147
143
|
border: $custom-select-border-width solid $custom-select-border-color;
|
148
|
-
@
|
149
|
-
|
150
|
-
|
151
|
-
|
144
|
+
@if $enable-rounded {
|
145
|
+
border-radius: $custom-select-border-radius;
|
146
|
+
} @else {
|
147
|
+
border-radius: 0;
|
148
|
+
}
|
149
|
+
appearance: none;
|
152
150
|
|
153
151
|
&:focus {
|
154
152
|
border-color: $custom-select-focus-border-color;
|
@@ -168,7 +166,6 @@
|
|
168
166
|
|
169
167
|
&:disabled {
|
170
168
|
color: $custom-select-disabled-color;
|
171
|
-
cursor: $cursor-disabled;
|
172
169
|
background-color: $custom-select-disabled-bg;
|
173
170
|
}
|
174
171
|
|
@@ -179,14 +176,10 @@
|
|
179
176
|
}
|
180
177
|
|
181
178
|
.custom-select-sm {
|
179
|
+
height: $custom-select-height-sm;
|
182
180
|
padding-top: $custom-select-padding-y;
|
183
181
|
padding-bottom: $custom-select-padding-y;
|
184
|
-
font-size: $custom-select-
|
185
|
-
|
186
|
-
// &:not([multiple]) {
|
187
|
-
// height: 26px;
|
188
|
-
// min-height: 26px;
|
189
|
-
// }
|
182
|
+
font-size: $custom-select-font-size-sm;
|
190
183
|
}
|
191
184
|
|
192
185
|
|
@@ -200,7 +193,6 @@
|
|
200
193
|
max-width: 100%;
|
201
194
|
height: $custom-file-height;
|
202
195
|
margin-bottom: 0;
|
203
|
-
cursor: pointer;
|
204
196
|
}
|
205
197
|
|
206
198
|
.custom-file-input {
|
@@ -208,7 +200,6 @@
|
|
208
200
|
max-width: 100%;
|
209
201
|
height: $custom-file-height;
|
210
202
|
margin: 0;
|
211
|
-
filter: alpha(opacity = 0);
|
212
203
|
opacity: 0;
|
213
204
|
|
214
205
|
&:focus ~ .custom-file-control {
|
@@ -234,7 +225,7 @@
|
|
234
225
|
@include box-shadow($custom-file-box-shadow);
|
235
226
|
|
236
227
|
@each $lang, $text in map-get($custom-file-text, placeholder) {
|
237
|
-
&:lang(#{$lang})::after {
|
228
|
+
&:lang(#{$lang}):empty::after {
|
238
229
|
content: $text;
|
239
230
|
}
|
240
231
|
}
|
@@ -10,21 +10,27 @@
|
|
10
10
|
display: inline-block;
|
11
11
|
width: 0;
|
12
12
|
height: 0;
|
13
|
-
margin-left: $caret-width;
|
14
|
-
vertical-align:
|
13
|
+
margin-left: $caret-width * .85;
|
14
|
+
vertical-align: $caret-width * .85;
|
15
15
|
content: "";
|
16
16
|
border-top: $caret-width solid;
|
17
17
|
border-right: $caret-width solid transparent;
|
18
18
|
border-left: $caret-width solid transparent;
|
19
19
|
}
|
20
20
|
|
21
|
-
|
22
|
-
|
23
|
-
outline: 0;
|
21
|
+
&:empty::after {
|
22
|
+
margin-left: 0;
|
24
23
|
}
|
25
24
|
}
|
26
25
|
|
26
|
+
// Allow for dropdowns to go bottom up (aka, dropup-menu)
|
27
|
+
// Just add .dropup after the standard .dropdown class and you're set.
|
27
28
|
.dropup {
|
29
|
+
.dropdown-menu {
|
30
|
+
margin-top: 0;
|
31
|
+
margin-bottom: $dropdown-spacer;
|
32
|
+
}
|
33
|
+
|
28
34
|
.dropdown-toggle {
|
29
35
|
&::after {
|
30
36
|
border-top: 0;
|
@@ -43,7 +49,7 @@
|
|
43
49
|
float: left;
|
44
50
|
min-width: $dropdown-min-width;
|
45
51
|
padding: $dropdown-padding-y 0;
|
46
|
-
margin: $dropdown-
|
52
|
+
margin: $dropdown-spacer 0 0; // override default ul
|
47
53
|
font-size: $font-size-base; // Redeclare because nesting can cause inheritance issues
|
48
54
|
color: $body-color;
|
49
55
|
text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer)
|
@@ -66,7 +72,7 @@
|
|
66
72
|
.dropdown-item {
|
67
73
|
display: block;
|
68
74
|
width: 100%; // For `<button>`s
|
69
|
-
padding:
|
75
|
+
padding: $dropdown-item-padding-y $dropdown-item-padding-x;
|
70
76
|
clear: both;
|
71
77
|
font-weight: $font-weight-normal;
|
72
78
|
color: $dropdown-link-color;
|
@@ -91,7 +97,6 @@
|
|
91
97
|
&.disabled,
|
92
98
|
&:disabled {
|
93
99
|
color: $dropdown-link-disabled-color;
|
94
|
-
cursor: $cursor-disabled;
|
95
100
|
background-color: transparent;
|
96
101
|
// Remove CSS gradients if they're enabled
|
97
102
|
@if $enable-gradients {
|
@@ -102,29 +107,14 @@
|
|
102
107
|
|
103
108
|
// Open state for the dropdown
|
104
109
|
.show {
|
105
|
-
// Show the menu
|
106
|
-
> .dropdown-menu {
|
107
|
-
display: block;
|
108
|
-
}
|
109
|
-
|
110
110
|
// Remove the outline when :focus is triggered
|
111
111
|
> a {
|
112
112
|
outline: 0;
|
113
113
|
}
|
114
114
|
}
|
115
115
|
|
116
|
-
|
117
|
-
|
118
|
-
// Add extra class to `.dropdown-menu` to flip the alignment of the dropdown
|
119
|
-
// menu with the parent.
|
120
|
-
.dropdown-menu-right {
|
121
|
-
right: 0;
|
122
|
-
left: auto; // Reset the default from `.dropdown-menu`
|
123
|
-
}
|
124
|
-
|
125
|
-
.dropdown-menu-left {
|
126
|
-
right: auto;
|
127
|
-
left: 0;
|
116
|
+
.dropdown-menu.show {
|
117
|
+
display: block;
|
128
118
|
}
|
129
119
|
|
130
120
|
// Dropdown section headers
|
@@ -136,26 +126,3 @@
|
|
136
126
|
color: $dropdown-header-color;
|
137
127
|
white-space: nowrap; // as with > li > a
|
138
128
|
}
|
139
|
-
|
140
|
-
// Backdrop to catch body clicks on mobile, etc.
|
141
|
-
.dropdown-backdrop {
|
142
|
-
position: fixed;
|
143
|
-
top: 0;
|
144
|
-
right: 0;
|
145
|
-
bottom: 0;
|
146
|
-
left: 0;
|
147
|
-
z-index: $zindex-dropdown-backdrop;
|
148
|
-
}
|
149
|
-
|
150
|
-
// Allow for dropdowns to go bottom up (aka, dropup-menu)
|
151
|
-
//
|
152
|
-
// Just add .dropup after the standard .dropdown class and you're set.
|
153
|
-
|
154
|
-
.dropup {
|
155
|
-
// Different positioning for bottom up menu
|
156
|
-
.dropdown-menu {
|
157
|
-
top: auto;
|
158
|
-
bottom: 100%;
|
159
|
-
margin-bottom: $dropdown-margin-top;
|
160
|
-
}
|
161
|
-
}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
// scss-lint:disable QualifyingElement
|
1
|
+
// scss-lint:disable QualifyingElement, VendorPrefix
|
2
2
|
|
3
3
|
//
|
4
4
|
// Textual form controls
|
@@ -9,9 +9,9 @@
|
|
9
9
|
width: 100%;
|
10
10
|
// // Make inputs at least the height of their button counterpart (base line-height + padding + border)
|
11
11
|
// height: $input-height;
|
12
|
-
padding: $input-padding-y $input-padding-x;
|
12
|
+
padding: $input-btn-padding-y $input-btn-padding-x;
|
13
13
|
font-size: $font-size-base;
|
14
|
-
line-height: $input-line-height;
|
14
|
+
line-height: $input-btn-line-height;
|
15
15
|
color: $input-color;
|
16
16
|
background-color: $input-bg;
|
17
17
|
// Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214.
|
@@ -42,7 +42,7 @@
|
|
42
42
|
|
43
43
|
// Placeholder
|
44
44
|
&::placeholder {
|
45
|
-
color: $input-color
|
45
|
+
color: $input-placeholder-color;
|
46
46
|
// Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526.
|
47
47
|
opacity: 1;
|
48
48
|
}
|
@@ -54,20 +54,15 @@
|
|
54
54
|
// don't honor that edge case; we style them as disabled anyway.
|
55
55
|
&:disabled,
|
56
56
|
&[readonly] {
|
57
|
-
background-color: $input-bg
|
57
|
+
background-color: $input-disabled-bg;
|
58
58
|
// iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655.
|
59
59
|
opacity: 1;
|
60
60
|
}
|
61
|
-
|
62
|
-
&:disabled {
|
63
|
-
cursor: $cursor-disabled;
|
64
|
-
}
|
65
61
|
}
|
66
62
|
|
67
63
|
select.form-control {
|
68
64
|
&:not([size]):not([multiple]) {
|
69
|
-
|
70
|
-
height: calc(#{$input-height} + #{$select-border-width});
|
65
|
+
height: $input-height;
|
71
66
|
}
|
72
67
|
|
73
68
|
&:focus::-ms-value {
|
@@ -95,20 +90,20 @@ select.form-control {
|
|
95
90
|
// For use with horizontal and inline forms, when you need the label text to
|
96
91
|
// align with the form controls.
|
97
92
|
.col-form-label {
|
98
|
-
padding-top: calc(#{$input-padding-y} - #{$input-btn-border-width} * 2);
|
99
|
-
padding-bottom: calc(#{$input-padding-y} - #{$input-btn-border-width} * 2);
|
93
|
+
padding-top: calc(#{$input-btn-padding-y} - #{$input-btn-border-width} * 2);
|
94
|
+
padding-bottom: calc(#{$input-btn-padding-y} - #{$input-btn-border-width} * 2);
|
100
95
|
margin-bottom: 0; // Override the `<label>` default
|
101
96
|
}
|
102
97
|
|
103
98
|
.col-form-label-lg {
|
104
|
-
padding-top: calc(#{$input-padding-y-lg} - #{$input-btn-border-width} * 2);
|
105
|
-
padding-bottom: calc(#{$input-padding-y-lg} - #{$input-btn-border-width} * 2);
|
99
|
+
padding-top: calc(#{$input-btn-padding-y-lg} - #{$input-btn-border-width} * 2);
|
100
|
+
padding-bottom: calc(#{$input-btn-padding-y-lg} - #{$input-btn-border-width} * 2);
|
106
101
|
font-size: $font-size-lg;
|
107
102
|
}
|
108
103
|
|
109
104
|
.col-form-label-sm {
|
110
|
-
padding-top: calc(#{$input-padding-y-sm} - #{$input-btn-border-width} * 2);
|
111
|
-
padding-bottom: calc(#{$input-padding-y-sm} - #{$input-btn-border-width} * 2);
|
105
|
+
padding-top: calc(#{$input-btn-padding-y-sm} - #{$input-btn-border-width} * 2);
|
106
|
+
padding-bottom: calc(#{$input-btn-padding-y-sm} - #{$input-btn-border-width} * 2);
|
112
107
|
font-size: $font-size-sm;
|
113
108
|
}
|
114
109
|
|
@@ -120,23 +115,23 @@ select.form-control {
|
|
120
115
|
// For use with horizontal and inline forms, when you need the legend text to
|
121
116
|
// be the same size as regular labels, and to align with the form controls.
|
122
117
|
.col-form-legend {
|
123
|
-
padding-top: $input-padding-y;
|
124
|
-
padding-bottom: $input-padding-y;
|
118
|
+
padding-top: $input-btn-padding-y;
|
119
|
+
padding-bottom: $input-btn-padding-y;
|
125
120
|
margin-bottom: 0;
|
126
121
|
font-size: $font-size-base;
|
127
122
|
}
|
128
123
|
|
129
124
|
|
130
|
-
//
|
125
|
+
// Readonly controls as plain text
|
131
126
|
//
|
132
|
-
// Apply class to
|
133
|
-
//
|
127
|
+
// Apply class to a readonly input to make it appear like regular plain
|
128
|
+
// text (without any border, background color, focus indicator)
|
134
129
|
|
135
|
-
.form-control-
|
136
|
-
padding-top: $input-padding-y;
|
137
|
-
padding-bottom: $input-padding-y;
|
130
|
+
.form-control-plaintext {
|
131
|
+
padding-top: $input-btn-padding-y;
|
132
|
+
padding-bottom: $input-btn-padding-y;
|
138
133
|
margin-bottom: 0; // match inputs if this class comes on inputs with default margins
|
139
|
-
line-height: $input-line-height;
|
134
|
+
line-height: $input-btn-line-height;
|
140
135
|
border: solid transparent;
|
141
136
|
border-width: $input-btn-border-width 0;
|
142
137
|
|
@@ -157,8 +152,9 @@ select.form-control {
|
|
157
152
|
// issue documented in https://github.com/twbs/bootstrap/issues/15074.
|
158
153
|
|
159
154
|
.form-control-sm {
|
160
|
-
padding: $input-padding-y-sm $input-padding-x-sm;
|
155
|
+
padding: $input-btn-padding-y-sm $input-btn-padding-x-sm;
|
161
156
|
font-size: $font-size-sm;
|
157
|
+
line-height: $input-btn-line-height-sm;
|
162
158
|
@include border-radius($input-border-radius-sm);
|
163
159
|
}
|
164
160
|
|
@@ -169,8 +165,9 @@ select.form-control-sm {
|
|
169
165
|
}
|
170
166
|
|
171
167
|
.form-control-lg {
|
172
|
-
padding: $input-padding-y-lg $input-padding-x-lg;
|
168
|
+
padding: $input-btn-padding-y-lg $input-btn-padding-x-lg;
|
173
169
|
font-size: $font-size-lg;
|
170
|
+
line-height: $input-btn-line-height-lg;
|
174
171
|
@include border-radius($input-border-radius-lg);
|
175
172
|
}
|
176
173
|
|
@@ -196,6 +193,24 @@ select.form-control-lg {
|
|
196
193
|
}
|
197
194
|
|
198
195
|
|
196
|
+
// Form grid
|
197
|
+
//
|
198
|
+
// Special replacement for our grid system's `.row` for tighter form layouts.
|
199
|
+
|
200
|
+
.form-row {
|
201
|
+
display: flex;
|
202
|
+
flex-wrap: wrap;
|
203
|
+
margin-right: -5px;
|
204
|
+
margin-left: -5px;
|
205
|
+
|
206
|
+
> .col,
|
207
|
+
> [class*="col-"] {
|
208
|
+
padding-right: 5px;
|
209
|
+
padding-left: 5px;
|
210
|
+
}
|
211
|
+
}
|
212
|
+
|
213
|
+
|
199
214
|
// Checkboxes and radios
|
200
215
|
//
|
201
216
|
// Indent the labels to position radios/checkboxes as hanging controls.
|
@@ -208,7 +223,6 @@ select.form-control-lg {
|
|
208
223
|
&.disabled {
|
209
224
|
.form-check-label {
|
210
225
|
color: $text-muted;
|
211
|
-
cursor: $cursor-disabled;
|
212
226
|
}
|
213
227
|
}
|
214
228
|
}
|
@@ -216,7 +230,6 @@ select.form-control-lg {
|
|
216
230
|
.form-check-label {
|
217
231
|
padding-left: $form-check-input-gutter;
|
218
232
|
margin-bottom: 0; // Override default `<label>` bottom margin
|
219
|
-
cursor: pointer;
|
220
233
|
}
|
221
234
|
|
222
235
|
.form-check-input {
|
@@ -243,48 +256,37 @@ select.form-control-lg {
|
|
243
256
|
}
|
244
257
|
|
245
258
|
|
246
|
-
// Form
|
259
|
+
// Form validation
|
247
260
|
//
|
248
|
-
//
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
.
|
256
|
-
|
257
|
-
|
258
|
-
background-repeat: no-repeat;
|
259
|
-
background-position: center right ($input-height / 4);
|
260
|
-
background-size: ($input-height / 2) ($input-height / 2);
|
261
|
+
// Provide feedback to users when form field values are valid or invalid. Works
|
262
|
+
// primarily for client-side validation via scoped `:invalid` and `:valid`
|
263
|
+
// pseudo-classes but also includes `.is-invalid` and `.is-valid` classes for
|
264
|
+
// server side validation.
|
265
|
+
|
266
|
+
.invalid-feedback {
|
267
|
+
display: none;
|
268
|
+
margin-top: .25rem;
|
269
|
+
font-size: .875rem;
|
270
|
+
color: $form-feedback-invalid-color;
|
261
271
|
}
|
262
272
|
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
background-image: $form-icon-warning;
|
277
|
-
}
|
278
|
-
}
|
279
|
-
|
280
|
-
.has-danger {
|
281
|
-
@include form-control-validation($brand-danger);
|
282
|
-
|
283
|
-
.form-control-danger {
|
284
|
-
background-image: $form-icon-danger;
|
285
|
-
}
|
273
|
+
.invalid-tooltip {
|
274
|
+
position: absolute;
|
275
|
+
top: 100%;
|
276
|
+
z-index: 5;
|
277
|
+
display: none;
|
278
|
+
width: 250px;
|
279
|
+
padding: .5rem;
|
280
|
+
margin-top: .1rem;
|
281
|
+
font-size: .875rem;
|
282
|
+
line-height: 1;
|
283
|
+
color: #fff;
|
284
|
+
background-color: rgba($form-feedback-invalid-color,.8);
|
285
|
+
border-radius: .2rem;
|
286
286
|
}
|
287
287
|
|
288
|
+
@include form-validation-state("valid", $form-feedback-valid-color);
|
289
|
+
@include form-validation-state("invalid", $form-feedback-invalid-color);
|
288
290
|
|
289
291
|
// Inline forms
|
290
292
|
//
|
@@ -333,7 +335,7 @@ select.form-control-lg {
|
|
333
335
|
}
|
334
336
|
|
335
337
|
// Make static controls behave like regular ones
|
336
|
-
.form-control-
|
338
|
+
.form-control-plaintext {
|
337
339
|
display: inline-block;
|
338
340
|
}
|
339
341
|
|
@@ -0,0 +1,90 @@
|
|
1
|
+
// Bootstrap functions
|
2
|
+
//
|
3
|
+
// Utility mixins and functions for evalutating source code across our variables, maps, and mixins.
|
4
|
+
|
5
|
+
// Ascending
|
6
|
+
// Used to evaluate Sass maps like our grid breakpoints.
|
7
|
+
@mixin _assert-ascending($map, $map-name) {
|
8
|
+
$prev-key: null;
|
9
|
+
$prev-num: null;
|
10
|
+
@each $key, $num in $map {
|
11
|
+
@if $prev-num == null {
|
12
|
+
// Do nothing
|
13
|
+
} @else if not comparable($prev-num, $num) {
|
14
|
+
@warn "Potentially invalid value for #{$map-name}: This map must be in ascending order, but key '#{$key}' has value #{$num} whose unit makes it incomparable to #{$prev-num}, the value of the previous key '#{$prev-key}' !";
|
15
|
+
} @else if $prev-num >= $num {
|
16
|
+
@warn "Invalid value for #{$map-name}: This map must be in ascending order, but key '#{$key}' has value #{$num} which isn't greater than #{$prev-num}, the value of the previous key '#{$prev-key}' !";
|
17
|
+
}
|
18
|
+
$prev-key: $key;
|
19
|
+
$prev-num: $num;
|
20
|
+
}
|
21
|
+
}
|
22
|
+
|
23
|
+
// Starts at zero
|
24
|
+
// Another grid mixin that ensures the min-width of the lowest breakpoint starts at 0.
|
25
|
+
@mixin _assert-starts-at-zero($map) {
|
26
|
+
$values: map-values($map);
|
27
|
+
$first-value: nth($values, 1);
|
28
|
+
@if $first-value != 0 {
|
29
|
+
@warn "First breakpoint in `$grid-breakpoints` must start at 0, but starts at #{$first-value}.";
|
30
|
+
}
|
31
|
+
}
|
32
|
+
|
33
|
+
// Replace `$search` with `$replace` in `$string`
|
34
|
+
// Used on our SVG icon backgrounds for custom forms.
|
35
|
+
//
|
36
|
+
// @author Hugo Giraudel
|
37
|
+
// @param {String} $string - Initial string
|
38
|
+
// @param {String} $search - Substring to replace
|
39
|
+
// @param {String} $replace ('') - New value
|
40
|
+
// @return {String} - Updated string
|
41
|
+
@function str-replace($string, $search, $replace: "") {
|
42
|
+
$index: str-index($string, $search);
|
43
|
+
|
44
|
+
@if $index {
|
45
|
+
@return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace);
|
46
|
+
}
|
47
|
+
|
48
|
+
@return $string;
|
49
|
+
}
|
50
|
+
|
51
|
+
// Color contrast
|
52
|
+
@mixin color-yiq($color) {
|
53
|
+
$r: red($color);
|
54
|
+
$g: green($color);
|
55
|
+
$b: blue($color);
|
56
|
+
|
57
|
+
$yiq: (($r * 299) + ($g * 587) + ($b * 114)) / 1000;
|
58
|
+
|
59
|
+
@if ($yiq >= 150) {
|
60
|
+
color: #111;
|
61
|
+
} @else {
|
62
|
+
color: #fff;
|
63
|
+
}
|
64
|
+
}
|
65
|
+
|
66
|
+
// Retreive color Sass maps
|
67
|
+
@function color($key: "blue") {
|
68
|
+
@return map-get($colors, $key);
|
69
|
+
}
|
70
|
+
|
71
|
+
@function theme-color($key: "primary") {
|
72
|
+
@return map-get($theme-colors, $key);
|
73
|
+
}
|
74
|
+
|
75
|
+
@function grayscale($key: "100") {
|
76
|
+
@return map-get($grays, $key);
|
77
|
+
}
|
78
|
+
|
79
|
+
// Request a theme color level
|
80
|
+
@function theme-color-level($color-name: "primary", $level: 0) {
|
81
|
+
$color: theme-color($color-name);
|
82
|
+
$color-base: if($level > 0, #000, #fff);
|
83
|
+
|
84
|
+
@if $level < 0 {
|
85
|
+
// Lighter values need a quick double negative for the Sass math to work
|
86
|
+
@return mix($color-base, $color, $level * -1 * $theme-color-interval);
|
87
|
+
} @else {
|
88
|
+
@return mix($color-base, $color, $level * $theme-color-interval);
|
89
|
+
}
|
90
|
+
}
|
@@ -11,11 +11,12 @@
|
|
11
11
|
|
12
12
|
// Fluid container
|
13
13
|
//
|
14
|
-
// Utilizes the mixin meant for fixed width containers, but
|
15
|
-
//
|
14
|
+
// Utilizes the mixin meant for fixed width containers, but with 100% width for
|
15
|
+
// fluid, full width layouts.
|
16
16
|
|
17
17
|
@if $enable-grid-classes {
|
18
18
|
.container-fluid {
|
19
|
+
width: 100%;
|
19
20
|
@include make-container();
|
20
21
|
}
|
21
22
|
}
|