bootstrap 4.3.1 → 4.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +15 -1
- data/CHANGELOG.md +2 -14
- data/README.md +1 -1
- data/assets/javascripts/bootstrap/alert.js +26 -35
- data/assets/javascripts/bootstrap/button.js +93 -52
- data/assets/javascripts/bootstrap/carousel.js +122 -120
- data/assets/javascripts/bootstrap/collapse.js +75 -71
- data/assets/javascripts/bootstrap/dropdown.js +143 -140
- data/assets/javascripts/bootstrap/modal.js +165 -134
- data/assets/javascripts/bootstrap/popover.js +47 -39
- data/assets/javascripts/bootstrap/scrollspy.js +71 -71
- data/assets/javascripts/bootstrap/tab.js +51 -60
- data/assets/javascripts/bootstrap/toast.js +84 -72
- data/assets/javascripts/bootstrap/tooltip.js +141 -131
- data/assets/javascripts/bootstrap/util.js +28 -7
- data/assets/javascripts/bootstrap-sprockets.js +6 -6
- data/assets/javascripts/bootstrap.js +811 -826
- data/assets/javascripts/bootstrap.min.js +3 -3
- data/assets/stylesheets/_bootstrap-grid.scss +3 -3
- data/assets/stylesheets/_bootstrap-reboot.scss +3 -3
- data/assets/stylesheets/_bootstrap.scss +3 -3
- data/assets/stylesheets/bootstrap/_badge.scss +1 -1
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +4 -1
- data/assets/stylesheets/bootstrap/_button-group.scss +1 -1
- data/assets/stylesheets/bootstrap/_buttons.scss +13 -8
- data/assets/stylesheets/bootstrap/_card.scss +28 -35
- data/assets/stylesheets/bootstrap/_carousel.scss +6 -6
- data/assets/stylesheets/bootstrap/_close.scss +2 -3
- data/assets/stylesheets/bootstrap/_code.scss +1 -1
- data/assets/stylesheets/bootstrap/_custom-forms.scss +24 -9
- data/assets/stylesheets/bootstrap/_dropdown.scss +5 -4
- data/assets/stylesheets/bootstrap/_forms.scss +26 -9
- data/assets/stylesheets/bootstrap/_functions.scss +60 -5
- data/assets/stylesheets/bootstrap/_grid.scss +33 -8
- data/assets/stylesheets/bootstrap/_images.scss +2 -2
- data/assets/stylesheets/bootstrap/_input-group.scss +1 -2
- data/assets/stylesheets/bootstrap/_list-group.scss +36 -31
- data/assets/stylesheets/bootstrap/_mixins.scss +3 -3
- data/assets/stylesheets/bootstrap/_modal.scss +28 -16
- data/assets/stylesheets/bootstrap/_nav.scss +4 -3
- data/assets/stylesheets/bootstrap/_navbar.scss +45 -15
- data/assets/stylesheets/bootstrap/_pagination.scss +3 -2
- data/assets/stylesheets/bootstrap/_popover.scss +8 -9
- data/assets/stylesheets/bootstrap/_print.scss +2 -2
- data/assets/stylesheets/bootstrap/_progress.scss +6 -2
- data/assets/stylesheets/bootstrap/_reboot.scss +24 -27
- data/assets/stylesheets/bootstrap/_root.scss +1 -0
- data/assets/stylesheets/bootstrap/_spinners.scss +1 -0
- data/assets/stylesheets/bootstrap/_tables.scss +3 -3
- data/assets/stylesheets/bootstrap/_type.scss +2 -2
- data/assets/stylesheets/bootstrap/_utilities.scss +2 -1
- data/assets/stylesheets/bootstrap/_variables.scss +46 -22
- data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +5 -3
- data/assets/stylesheets/bootstrap/mixins/_badge.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +26 -13
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +11 -8
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +8 -8
- data/assets/stylesheets/bootstrap/mixins/_float.scss +3 -3
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +34 -49
- data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +30 -15
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +18 -0
- data/assets/stylesheets/bootstrap/mixins/_hover.scss +4 -4
- data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +2 -1
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +3 -2
- data/assets/stylesheets/bootstrap/mixins/_table-row.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +3 -2
- data/assets/stylesheets/bootstrap/mixins/_transition.scss +17 -7
- data/assets/stylesheets/bootstrap/utilities/_background.scss +2 -2
- data/assets/stylesheets/bootstrap/utilities/_interactions.scss +5 -0
- data/assets/stylesheets/bootstrap/utilities/_text.scss +3 -4
- data/bootstrap.gemspec +1 -1
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/network.rb +2 -2
- data/test/dummy_rails/app/assets/config/manifest.js +3 -0
- data/test/dummy_rails/app/assets/stylesheets/.browserslistrc +1 -0
- data/test/gemfiles/rails_6_0.gemfile +7 -0
- data/test/support/dummy_rails_integration.rb +3 -1
- data/test/test_helper.rb +18 -13
- metadata +11 -5
@@ -101,6 +101,15 @@ $yiq-contrasted-threshold: 150 !default;
|
|
101
101
|
$yiq-text-dark: $gray-900 !default;
|
102
102
|
$yiq-text-light: $white !default;
|
103
103
|
|
104
|
+
// Characters which are escaped by the escape-svg function
|
105
|
+
$escaped-characters: (
|
106
|
+
("<","%3c"),
|
107
|
+
(">","%3e"),
|
108
|
+
("#","%23"),
|
109
|
+
("(","%28"),
|
110
|
+
(")","%29"),
|
111
|
+
) !default;
|
112
|
+
|
104
113
|
|
105
114
|
// Options
|
106
115
|
//
|
@@ -220,6 +229,7 @@ $container-max-widths: (
|
|
220
229
|
|
221
230
|
$grid-columns: 12 !default;
|
222
231
|
$grid-gutter-width: 30px !default;
|
232
|
+
$grid-row-columns: 6 !default;
|
223
233
|
|
224
234
|
|
225
235
|
// Components
|
@@ -366,7 +376,6 @@ $table-dark-accent-bg: rgba($white, .05) !default;
|
|
366
376
|
$table-dark-hover-color: $table-dark-color !default;
|
367
377
|
$table-dark-hover-bg: rgba($white, .075) !default;
|
368
378
|
$table-dark-border-color: lighten($table-dark-bg, 7.5%) !default;
|
369
|
-
$table-dark-color: $white !default;
|
370
379
|
|
371
380
|
$table-striped-order: odd !default;
|
372
381
|
|
@@ -412,6 +421,7 @@ $btn-padding-x: $input-btn-padding-x !default;
|
|
412
421
|
$btn-font-family: $input-btn-font-family !default;
|
413
422
|
$btn-font-size: $input-btn-font-size !default;
|
414
423
|
$btn-line-height: $input-btn-line-height !default;
|
424
|
+
$btn-white-space: null !default; // Set to `nowrap` to prevent text wrapping
|
415
425
|
|
416
426
|
$btn-padding-y-sm: $input-btn-padding-y-sm !default;
|
417
427
|
$btn-padding-x-sm: $input-btn-padding-x-sm !default;
|
@@ -488,13 +498,13 @@ $input-plaintext-color: $body-color !default;
|
|
488
498
|
|
489
499
|
$input-height-border: $input-border-width * 2 !default;
|
490
500
|
|
491
|
-
$input-height-inner:
|
492
|
-
$input-height-inner-half:
|
493
|
-
$input-height-inner-quarter:
|
501
|
+
$input-height-inner: add($input-line-height * 1em, $input-padding-y * 2) !default;
|
502
|
+
$input-height-inner-half: add($input-line-height * .5em, $input-padding-y) !default;
|
503
|
+
$input-height-inner-quarter: add($input-line-height * .25em, $input-padding-y / 2) !default;
|
494
504
|
|
495
|
-
$input-height:
|
496
|
-
$input-height-sm:
|
497
|
-
$input-height-lg:
|
505
|
+
$input-height: add($input-line-height * 1em, add($input-padding-y * 2, $input-height-border, false)) !default;
|
506
|
+
$input-height-sm: add($input-line-height-sm * 1em, add($input-padding-y-sm * 2, $input-height-border, false)) !default;
|
507
|
+
$input-height-lg: add($input-line-height-lg * 1em, add($input-padding-y-lg * 2, $input-height-border, false)) !default;
|
498
508
|
|
499
509
|
$input-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;
|
500
510
|
|
@@ -518,6 +528,7 @@ $custom-forms-transition: background-color .15s ease-in-out, borde
|
|
518
528
|
|
519
529
|
$custom-control-gutter: .5rem !default;
|
520
530
|
$custom-control-spacer-x: 1rem !default;
|
531
|
+
$custom-control-cursor: null !default;
|
521
532
|
|
522
533
|
$custom-control-indicator-size: 1rem !default;
|
523
534
|
$custom-control-indicator-bg: $input-bg !default;
|
@@ -527,6 +538,8 @@ $custom-control-indicator-box-shadow: $input-box-shadow !default;
|
|
527
538
|
$custom-control-indicator-border-color: $gray-500 !default;
|
528
539
|
$custom-control-indicator-border-width: $input-border-width !default;
|
529
540
|
|
541
|
+
$custom-control-label-color: null !default;
|
542
|
+
|
530
543
|
$custom-control-indicator-disabled-bg: $input-disabled-bg !default;
|
531
544
|
$custom-control-label-disabled-color: $gray-600 !default;
|
532
545
|
|
@@ -545,20 +558,20 @@ $custom-control-indicator-active-box-shadow: none !default;
|
|
545
558
|
$custom-control-indicator-active-border-color: $custom-control-indicator-active-bg !default;
|
546
559
|
|
547
560
|
$custom-checkbox-indicator-border-radius: $border-radius !default;
|
548
|
-
$custom-checkbox-indicator-icon-checked:
|
561
|
+
$custom-checkbox-indicator-icon-checked: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'><path fill='#{$custom-control-indicator-checked-color}' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/></svg>") !default;
|
549
562
|
|
550
563
|
$custom-checkbox-indicator-indeterminate-bg: $component-active-bg !default;
|
551
564
|
$custom-checkbox-indicator-indeterminate-color: $custom-control-indicator-checked-color !default;
|
552
|
-
$custom-checkbox-indicator-icon-indeterminate:
|
565
|
+
$custom-checkbox-indicator-icon-indeterminate: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'><path stroke='#{$custom-checkbox-indicator-indeterminate-color}' d='M0 2h4'/></svg>") !default;
|
553
566
|
$custom-checkbox-indicator-indeterminate-box-shadow: none !default;
|
554
567
|
$custom-checkbox-indicator-indeterminate-border-color: $custom-checkbox-indicator-indeterminate-bg !default;
|
555
568
|
|
556
569
|
$custom-radio-indicator-border-radius: 50% !default;
|
557
|
-
$custom-radio-indicator-icon-checked:
|
570
|
+
$custom-radio-indicator-icon-checked: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'><circle r='3' fill='#{$custom-control-indicator-checked-color}'/></svg>") !default;
|
558
571
|
|
559
572
|
$custom-switch-width: $custom-control-indicator-size * 1.75 !default;
|
560
573
|
$custom-switch-indicator-border-radius: $custom-control-indicator-size / 2 !default;
|
561
|
-
$custom-switch-indicator-size:
|
574
|
+
$custom-switch-indicator-size: subtract($custom-control-indicator-size, $custom-control-indicator-border-width * 4) !default;
|
562
575
|
|
563
576
|
$custom-select-padding-y: $input-padding-y !default;
|
564
577
|
$custom-select-padding-x: $input-padding-x !default;
|
@@ -574,10 +587,10 @@ $custom-select-bg: $input-bg !default;
|
|
574
587
|
$custom-select-disabled-bg: $gray-200 !default;
|
575
588
|
$custom-select-bg-size: 8px 10px !default; // In pixels because image dimensions
|
576
589
|
$custom-select-indicator-color: $gray-800 !default;
|
577
|
-
$custom-select-indicator:
|
578
|
-
$custom-select-background: $custom-select-indicator no-repeat right $custom-select-padding-x center / $custom-select-bg-size !default; // Used so we can have multiple background elements (e.g., arrow and feedback icon)
|
590
|
+
$custom-select-indicator: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'><path fill='#{$custom-select-indicator-color}' d='M2 0L0 2h4zm0 5L0 3h4z'/></svg>") !default;
|
591
|
+
$custom-select-background: escape-svg($custom-select-indicator) no-repeat right $custom-select-padding-x center / $custom-select-bg-size !default; // Used so we can have multiple background elements (e.g., arrow and feedback icon)
|
579
592
|
|
580
|
-
$custom-select-feedback-icon-padding-right:
|
593
|
+
$custom-select-feedback-icon-padding-right: add(1em * .75, (2 * $custom-select-padding-y * .75) + $custom-select-padding-x + $custom-select-indicator-padding) !default;
|
581
594
|
$custom-select-feedback-icon-position: center right ($custom-select-padding-x + $custom-select-indicator-padding) !default;
|
582
595
|
$custom-select-feedback-icon-size: $input-height-inner-half $input-height-inner-half !default;
|
583
596
|
|
@@ -650,9 +663,9 @@ $form-feedback-valid-color: theme-color("success") !default;
|
|
650
663
|
$form-feedback-invalid-color: theme-color("danger") !default;
|
651
664
|
|
652
665
|
$form-feedback-icon-valid-color: $form-feedback-valid-color !default;
|
653
|
-
$form-feedback-icon-valid:
|
666
|
+
$form-feedback-icon-valid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'><path fill='#{$form-feedback-icon-valid-color}' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/></svg>") !default;
|
654
667
|
$form-feedback-icon-invalid-color: $form-feedback-invalid-color !default;
|
655
|
-
$form-feedback-icon-invalid:
|
668
|
+
$form-feedback-icon-invalid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='#{$form-feedback-icon-invalid-color}' viewBox='0 0 12 12'><circle cx='6' cy='6' r='4.5'/><path stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/><circle cx='6' cy='8.2' r='.6' fill='#{$form-feedback-icon-invalid-color}' stroke='none'/></svg>") !default;
|
656
669
|
|
657
670
|
$form-validation-states: () !default;
|
658
671
|
// stylelint-disable-next-line scss/dollar-variable-default
|
@@ -728,14 +741,14 @@ $navbar-dark-color: rgba($white, .5) !default;
|
|
728
741
|
$navbar-dark-hover-color: rgba($white, .75) !default;
|
729
742
|
$navbar-dark-active-color: $white !default;
|
730
743
|
$navbar-dark-disabled-color: rgba($white, .25) !default;
|
731
|
-
$navbar-dark-toggler-icon-bg:
|
744
|
+
$navbar-dark-toggler-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'><path stroke='#{$navbar-dark-color}' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>") !default;
|
732
745
|
$navbar-dark-toggler-border-color: rgba($white, .1) !default;
|
733
746
|
|
734
747
|
$navbar-light-color: rgba($black, .5) !default;
|
735
748
|
$navbar-light-hover-color: rgba($black, .7) !default;
|
736
749
|
$navbar-light-active-color: rgba($black, .9) !default;
|
737
750
|
$navbar-light-disabled-color: rgba($black, .3) !default;
|
738
|
-
$navbar-light-toggler-icon-bg:
|
751
|
+
$navbar-light-toggler-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'><path stroke='#{$navbar-light-color}' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>") !default;
|
739
752
|
$navbar-light-toggler-border-color: rgba($black, .1) !default;
|
740
753
|
|
741
754
|
$navbar-light-brand-color: $navbar-light-active-color !default;
|
@@ -757,7 +770,7 @@ $dropdown-bg: $white !default;
|
|
757
770
|
$dropdown-border-color: rgba($black, .15) !default;
|
758
771
|
$dropdown-border-radius: $border-radius !default;
|
759
772
|
$dropdown-border-width: $border-width !default;
|
760
|
-
$dropdown-inner-border-radius:
|
773
|
+
$dropdown-inner-border-radius: subtract($dropdown-border-radius, $dropdown-border-width) !default;
|
761
774
|
$dropdown-divider-bg: $gray-200 !default;
|
762
775
|
$dropdown-divider-margin-y: $nav-divider-margin-y !default;
|
763
776
|
$dropdown-box-shadow: 0 .5rem 1rem rgba($black, .175) !default;
|
@@ -775,6 +788,7 @@ $dropdown-item-padding-y: .25rem !default;
|
|
775
788
|
$dropdown-item-padding-x: 1.5rem !default;
|
776
789
|
|
777
790
|
$dropdown-header-color: $gray-600 !default;
|
791
|
+
$dropdown-header-padding: $dropdown-padding-y $dropdown-item-padding-x !default;
|
778
792
|
|
779
793
|
|
780
794
|
// Pagination
|
@@ -822,9 +836,10 @@ $card-spacer-x: 1.25rem !default;
|
|
822
836
|
$card-border-width: $border-width !default;
|
823
837
|
$card-border-radius: $border-radius !default;
|
824
838
|
$card-border-color: rgba($black, .125) !default;
|
825
|
-
$card-inner-border-radius:
|
839
|
+
$card-inner-border-radius: subtract($card-border-radius, $card-border-width) !default;
|
826
840
|
$card-cap-bg: rgba($black, .03) !default;
|
827
841
|
$card-cap-color: null !default;
|
842
|
+
$card-height: null !default;
|
828
843
|
$card-color: null !default;
|
829
844
|
$card-bg: $white !default;
|
830
845
|
|
@@ -871,6 +886,7 @@ $popover-max-width: 276px !default;
|
|
871
886
|
$popover-border-width: $border-width !default;
|
872
887
|
$popover-border-color: rgba($black, .2) !default;
|
873
888
|
$popover-border-radius: $border-radius-lg !default;
|
889
|
+
$popover-inner-border-radius: subtract($popover-border-radius, $popover-border-width) !default;
|
874
890
|
$popover-box-shadow: 0 .25rem .5rem rgba($black, .2) !default;
|
875
891
|
|
876
892
|
$popover-header-bg: darken($popover-bg, 3%) !default;
|
@@ -929,6 +945,9 @@ $badge-pill-border-radius: 10rem !default;
|
|
929
945
|
// Padding applied to the modal body
|
930
946
|
$modal-inner-padding: 1rem !default;
|
931
947
|
|
948
|
+
// Margin between elements in footer, must be lower than or equal to 2 * $modal-inner-padding
|
949
|
+
$modal-footer-margin-between: .5rem !default;
|
950
|
+
|
932
951
|
$modal-dialog-margin: .5rem !default;
|
933
952
|
$modal-dialog-margin-y-sm-up: 1.75rem !default;
|
934
953
|
|
@@ -939,6 +958,7 @@ $modal-content-bg: $white !default;
|
|
939
958
|
$modal-content-border-color: rgba($black, .2) !default;
|
940
959
|
$modal-content-border-width: $border-width !default;
|
941
960
|
$modal-content-border-radius: $border-radius-lg !default;
|
961
|
+
$modal-content-inner-border-radius: subtract($modal-content-border-radius, $modal-content-border-width) !default;
|
942
962
|
$modal-content-box-shadow-xs: 0 .25rem .5rem rgba($black, .5) !default;
|
943
963
|
$modal-content-box-shadow-sm-up: 0 .5rem 1rem rgba($black, .5) !default;
|
944
964
|
|
@@ -960,6 +980,7 @@ $modal-sm: 300px !default;
|
|
960
980
|
$modal-fade-transform: translate(0, -50px) !default;
|
961
981
|
$modal-show-transform: none !default;
|
962
982
|
$modal-transition: transform .3s ease-out !default;
|
983
|
+
$modal-scale-transform: scale(1.02) !default;
|
963
984
|
|
964
985
|
|
965
986
|
// Alerts
|
@@ -1035,6 +1056,8 @@ $figure-caption-color: $gray-600 !default;
|
|
1035
1056
|
|
1036
1057
|
// Breadcrumbs
|
1037
1058
|
|
1059
|
+
$breadcrumb-font-size: null !default;
|
1060
|
+
|
1038
1061
|
$breadcrumb-padding-y: .75rem !default;
|
1039
1062
|
$breadcrumb-padding-x: 1rem !default;
|
1040
1063
|
$breadcrumb-item-padding: .5rem !default;
|
@@ -1069,8 +1092,8 @@ $carousel-caption-color: $white !default;
|
|
1069
1092
|
|
1070
1093
|
$carousel-control-icon-width: 20px !default;
|
1071
1094
|
|
1072
|
-
$carousel-control-prev-icon-bg:
|
1073
|
-
$carousel-control-next-icon-bg:
|
1095
|
+
$carousel-control-prev-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' width='8' height='8' viewBox='0 0 8 8'><path d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/></svg>") !default;
|
1096
|
+
$carousel-control-next-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' width='8' height='8' viewBox='0 0 8 8'><path d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/></svg>") !default;
|
1074
1097
|
|
1075
1098
|
$carousel-transition-duration: .6s !default;
|
1076
1099
|
$carousel-transition: transform $carousel-transition-duration ease-in-out !default; // Define transform transition first if using multiple transitions (e.g., `transform 2s ease, opacity .5s ease-out`)
|
@@ -1115,6 +1138,7 @@ $pre-scrollable-max-height: 340px !default;
|
|
1115
1138
|
$displays: none, inline, inline-block, block, table, table-row, table-cell, flex, inline-flex !default;
|
1116
1139
|
$overflows: auto, hidden !default;
|
1117
1140
|
$positions: static, relative, absolute, fixed, sticky !default;
|
1141
|
+
$user-selects: all, auto, none !default;
|
1118
1142
|
|
1119
1143
|
|
1120
1144
|
// Printing
|
@@ -2,20 +2,22 @@
|
|
2
2
|
|
3
3
|
// Contextual backgrounds
|
4
4
|
|
5
|
-
@mixin bg-variant($parent, $color) {
|
5
|
+
@mixin bg-variant($parent, $color, $ignore-warning: false) {
|
6
6
|
#{$parent} {
|
7
7
|
background-color: $color !important;
|
8
8
|
}
|
9
9
|
a#{$parent},
|
10
10
|
button#{$parent} {
|
11
|
-
@include hover-focus {
|
11
|
+
@include hover-focus() {
|
12
12
|
background-color: darken($color, 10%) !important;
|
13
13
|
}
|
14
14
|
}
|
15
|
+
@include deprecate("The `bg-variant` mixin", "v4.4.0", "v5", $ignore-warning);
|
15
16
|
}
|
16
17
|
|
17
|
-
@mixin bg-gradient-variant($parent, $color) {
|
18
|
+
@mixin bg-gradient-variant($parent, $color, $ignore-warning: false) {
|
18
19
|
#{$parent} {
|
19
20
|
background: $color linear-gradient(180deg, mix($body-bg, $color, 15%), $color) repeat-x !important;
|
20
21
|
}
|
22
|
+
@include deprecate("The `bg-gradient-variant` mixin", "v4.5.0", "v5", $ignore-warning);
|
21
23
|
}
|
@@ -1,9 +1,22 @@
|
|
1
1
|
// stylelint-disable property-blacklist
|
2
2
|
// Single side border-radius
|
3
3
|
|
4
|
+
// Helper function to replace negative values with 0
|
5
|
+
@function valid-radius($radius) {
|
6
|
+
$return: ();
|
7
|
+
@each $value in $radius {
|
8
|
+
@if type-of($value) == number {
|
9
|
+
$return: append($return, max($value, 0));
|
10
|
+
} @else {
|
11
|
+
$return: append($return, $value);
|
12
|
+
}
|
13
|
+
}
|
14
|
+
@return $return;
|
15
|
+
}
|
16
|
+
|
4
17
|
@mixin border-radius($radius: $border-radius, $fallback-border-radius: false) {
|
5
18
|
@if $enable-rounded {
|
6
|
-
border-radius: $radius;
|
19
|
+
border-radius: valid-radius($radius);
|
7
20
|
}
|
8
21
|
@else if $fallback-border-radius != false {
|
9
22
|
border-radius: $fallback-border-radius;
|
@@ -12,52 +25,52 @@
|
|
12
25
|
|
13
26
|
@mixin border-top-radius($radius) {
|
14
27
|
@if $enable-rounded {
|
15
|
-
border-top-left-radius: $radius;
|
16
|
-
border-top-right-radius: $radius;
|
28
|
+
border-top-left-radius: valid-radius($radius);
|
29
|
+
border-top-right-radius: valid-radius($radius);
|
17
30
|
}
|
18
31
|
}
|
19
32
|
|
20
33
|
@mixin border-right-radius($radius) {
|
21
34
|
@if $enable-rounded {
|
22
|
-
border-top-right-radius: $radius;
|
23
|
-
border-bottom-right-radius: $radius;
|
35
|
+
border-top-right-radius: valid-radius($radius);
|
36
|
+
border-bottom-right-radius: valid-radius($radius);
|
24
37
|
}
|
25
38
|
}
|
26
39
|
|
27
40
|
@mixin border-bottom-radius($radius) {
|
28
41
|
@if $enable-rounded {
|
29
|
-
border-bottom-right-radius: $radius;
|
30
|
-
border-bottom-left-radius: $radius;
|
42
|
+
border-bottom-right-radius: valid-radius($radius);
|
43
|
+
border-bottom-left-radius: valid-radius($radius);
|
31
44
|
}
|
32
45
|
}
|
33
46
|
|
34
47
|
@mixin border-left-radius($radius) {
|
35
48
|
@if $enable-rounded {
|
36
|
-
border-top-left-radius: $radius;
|
37
|
-
border-bottom-left-radius: $radius;
|
49
|
+
border-top-left-radius: valid-radius($radius);
|
50
|
+
border-bottom-left-radius: valid-radius($radius);
|
38
51
|
}
|
39
52
|
}
|
40
53
|
|
41
54
|
@mixin border-top-left-radius($radius) {
|
42
55
|
@if $enable-rounded {
|
43
|
-
border-top-left-radius: $radius;
|
56
|
+
border-top-left-radius: valid-radius($radius);
|
44
57
|
}
|
45
58
|
}
|
46
59
|
|
47
60
|
@mixin border-top-right-radius($radius) {
|
48
61
|
@if $enable-rounded {
|
49
|
-
border-top-right-radius: $radius;
|
62
|
+
border-top-right-radius: valid-radius($radius);
|
50
63
|
}
|
51
64
|
}
|
52
65
|
|
53
66
|
@mixin border-bottom-right-radius($radius) {
|
54
67
|
@if $enable-rounded {
|
55
|
-
border-bottom-right-radius: $radius;
|
68
|
+
border-bottom-right-radius: valid-radius($radius);
|
56
69
|
}
|
57
70
|
}
|
58
71
|
|
59
72
|
@mixin border-bottom-left-radius($radius) {
|
60
73
|
@if $enable-rounded {
|
61
|
-
border-bottom-left-radius: $radius;
|
74
|
+
border-bottom-left-radius: valid-radius($radius);
|
62
75
|
}
|
63
76
|
}
|
@@ -9,7 +9,7 @@
|
|
9
9
|
border-color: $border;
|
10
10
|
@include box-shadow($btn-box-shadow);
|
11
11
|
|
12
|
-
@include hover {
|
12
|
+
@include hover() {
|
13
13
|
color: color-yiq($hover-background);
|
14
14
|
@include gradient-bg($hover-background);
|
15
15
|
border-color: $hover-border;
|
@@ -17,10 +17,13 @@
|
|
17
17
|
|
18
18
|
&:focus,
|
19
19
|
&.focus {
|
20
|
-
|
20
|
+
color: color-yiq($hover-background);
|
21
|
+
@include gradient-bg($hover-background);
|
22
|
+
border-color: $hover-border;
|
21
23
|
@if $enable-shadows {
|
22
|
-
box-shadow
|
24
|
+
@include box-shadow($btn-box-shadow, 0 0 0 $btn-focus-width rgba(mix(color-yiq($background), $border, 15%), .5));
|
23
25
|
} @else {
|
26
|
+
// Avoid using mixin so we can pass custom focus shadow properly
|
24
27
|
box-shadow: 0 0 0 $btn-focus-width rgba(mix(color-yiq($background), $border, 15%), .5);
|
25
28
|
}
|
26
29
|
}
|
@@ -48,10 +51,10 @@
|
|
48
51
|
border-color: $active-border;
|
49
52
|
|
50
53
|
&:focus {
|
51
|
-
// Avoid using mixin so we can pass custom focus shadow properly
|
52
54
|
@if $enable-shadows and $btn-active-box-shadow != none {
|
53
|
-
box-shadow
|
55
|
+
@include box-shadow($btn-active-box-shadow, 0 0 0 $btn-focus-width rgba(mix(color-yiq($background), $border, 15%), .5));
|
54
56
|
} @else {
|
57
|
+
// Avoid using mixin so we can pass custom focus shadow properly
|
55
58
|
box-shadow: 0 0 0 $btn-focus-width rgba(mix(color-yiq($background), $border, 15%), .5);
|
56
59
|
}
|
57
60
|
}
|
@@ -62,7 +65,7 @@
|
|
62
65
|
color: $color;
|
63
66
|
border-color: $color;
|
64
67
|
|
65
|
-
@include hover {
|
68
|
+
@include hover() {
|
66
69
|
color: $color-hover;
|
67
70
|
background-color: $active-background;
|
68
71
|
border-color: $active-border;
|
@@ -87,10 +90,10 @@
|
|
87
90
|
border-color: $active-border;
|
88
91
|
|
89
92
|
&:focus {
|
90
|
-
// Avoid using mixin so we can pass custom focus shadow properly
|
91
93
|
@if $enable-shadows and $btn-active-box-shadow != none {
|
92
|
-
box-shadow
|
94
|
+
@include box-shadow($btn-active-box-shadow, 0 0 0 $btn-focus-width rgba($color, .5));
|
93
95
|
} @else {
|
96
|
+
// Avoid using mixin so we can pass custom focus shadow properly
|
94
97
|
box-shadow: 0 0 0 $btn-focus-width rgba($color, .5);
|
95
98
|
}
|
96
99
|
}
|
@@ -1,25 +1,25 @@
|
|
1
|
-
@mixin caret-down {
|
1
|
+
@mixin caret-down() {
|
2
2
|
border-top: $caret-width solid;
|
3
3
|
border-right: $caret-width solid transparent;
|
4
4
|
border-bottom: 0;
|
5
5
|
border-left: $caret-width solid transparent;
|
6
6
|
}
|
7
7
|
|
8
|
-
@mixin caret-up {
|
8
|
+
@mixin caret-up() {
|
9
9
|
border-top: 0;
|
10
10
|
border-right: $caret-width solid transparent;
|
11
11
|
border-bottom: $caret-width solid;
|
12
12
|
border-left: $caret-width solid transparent;
|
13
13
|
}
|
14
14
|
|
15
|
-
@mixin caret-right {
|
15
|
+
@mixin caret-right() {
|
16
16
|
border-top: $caret-width solid transparent;
|
17
17
|
border-right: 0;
|
18
18
|
border-bottom: $caret-width solid transparent;
|
19
19
|
border-left: $caret-width solid;
|
20
20
|
}
|
21
21
|
|
22
|
-
@mixin caret-left {
|
22
|
+
@mixin caret-left() {
|
23
23
|
border-top: $caret-width solid transparent;
|
24
24
|
border-right: $caret-width solid;
|
25
25
|
border-bottom: $caret-width solid transparent;
|
@@ -33,11 +33,11 @@
|
|
33
33
|
vertical-align: $caret-vertical-align;
|
34
34
|
content: "";
|
35
35
|
@if $direction == down {
|
36
|
-
@include caret-down;
|
36
|
+
@include caret-down();
|
37
37
|
} @else if $direction == up {
|
38
|
-
@include caret-up;
|
38
|
+
@include caret-up();
|
39
39
|
} @else if $direction == right {
|
40
|
-
@include caret-right;
|
40
|
+
@include caret-right();
|
41
41
|
}
|
42
42
|
}
|
43
43
|
|
@@ -51,7 +51,7 @@
|
|
51
51
|
margin-right: $caret-spacing;
|
52
52
|
vertical-align: $caret-vertical-align;
|
53
53
|
content: "";
|
54
|
-
@include caret-left;
|
54
|
+
@include caret-left();
|
55
55
|
}
|
56
56
|
}
|
57
57
|
|
@@ -1,14 +1,14 @@
|
|
1
1
|
// stylelint-disable declaration-no-important
|
2
2
|
|
3
|
-
@mixin float-left {
|
3
|
+
@mixin float-left() {
|
4
4
|
float: left !important;
|
5
5
|
@include deprecate("The `float-left` mixin", "v4.3.0", "v5");
|
6
6
|
}
|
7
|
-
@mixin float-right {
|
7
|
+
@mixin float-right() {
|
8
8
|
float: right !important;
|
9
9
|
@include deprecate("The `float-right` mixin", "v4.3.0", "v5");
|
10
10
|
}
|
11
|
-
@mixin float-none {
|
11
|
+
@mixin float-none() {
|
12
12
|
float: none !important;
|
13
13
|
@include deprecate("The `float-none` mixin", "v4.3.0", "v5");
|
14
14
|
}
|