bootstrap 5.1.1 → 5.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/assets/javascripts/bootstrap/alert.js +18 -153
  4. data/assets/javascripts/bootstrap/base-component.js +44 -127
  5. data/assets/javascripts/bootstrap/button.js +16 -80
  6. data/assets/javascripts/bootstrap/carousel.js +225 -497
  7. data/assets/javascripts/bootstrap/collapse.js +79 -262
  8. data/assets/javascripts/bootstrap/dom/data.js +6 -8
  9. data/assets/javascripts/bootstrap/dom/event-handler.js +95 -133
  10. data/assets/javascripts/bootstrap/dom/manipulator.js +25 -29
  11. data/assets/javascripts/bootstrap/dom/selector-engine.js +17 -59
  12. data/assets/javascripts/bootstrap/dropdown.js +124 -342
  13. data/assets/javascripts/bootstrap/modal.js +122 -767
  14. data/assets/javascripts/bootstrap/offcanvas.js +102 -671
  15. data/assets/javascripts/bootstrap/popover.js +42 -124
  16. data/assets/javascripts/bootstrap/scrollspy.js +186 -269
  17. data/assets/javascripts/bootstrap/tab.js +222 -221
  18. data/assets/javascripts/bootstrap/toast.js +41 -227
  19. data/assets/javascripts/bootstrap/tooltip.js +283 -629
  20. data/assets/javascripts/bootstrap/util/backdrop.js +165 -0
  21. data/assets/javascripts/bootstrap/util/component-functions.js +46 -0
  22. data/assets/javascripts/bootstrap/util/config.js +79 -0
  23. data/assets/javascripts/bootstrap/util/focustrap.js +129 -0
  24. data/assets/javascripts/bootstrap/util/index.js +350 -0
  25. data/assets/javascripts/bootstrap/util/sanitizer.js +122 -0
  26. data/assets/javascripts/bootstrap/util/scrollbar.js +138 -0
  27. data/assets/javascripts/bootstrap/util/swipe.js +155 -0
  28. data/assets/javascripts/bootstrap/util/template-factory.js +177 -0
  29. data/assets/javascripts/bootstrap-global-this-define.js +1 -1
  30. data/assets/javascripts/bootstrap-sprockets.js +16 -7
  31. data/assets/javascripts/bootstrap.js +2094 -1891
  32. data/assets/javascripts/bootstrap.min.js +3 -3
  33. data/assets/stylesheets/_bootstrap-grid.scss +3 -6
  34. data/assets/stylesheets/_bootstrap-reboot.scss +3 -7
  35. data/assets/stylesheets/_bootstrap.scss +4 -6
  36. data/assets/stylesheets/bootstrap/_accordion.scss +52 -24
  37. data/assets/stylesheets/bootstrap/_alert.scss +18 -4
  38. data/assets/stylesheets/bootstrap/_badge.scss +14 -5
  39. data/assets/stylesheets/bootstrap/_breadcrumb.scss +22 -10
  40. data/assets/stylesheets/bootstrap/_button-group.scss +3 -0
  41. data/assets/stylesheets/bootstrap/_buttons.scss +97 -22
  42. data/assets/stylesheets/bootstrap/_card.scss +55 -37
  43. data/assets/stylesheets/bootstrap/_close.scss +1 -1
  44. data/assets/stylesheets/bootstrap/_containers.scss +1 -1
  45. data/assets/stylesheets/bootstrap/_dropdown.scss +83 -75
  46. data/assets/stylesheets/bootstrap/_functions.scss +7 -7
  47. data/assets/stylesheets/bootstrap/_grid.scss +3 -3
  48. data/assets/stylesheets/bootstrap/_helpers.scss +1 -0
  49. data/assets/stylesheets/bootstrap/_list-group.scss +44 -27
  50. data/assets/stylesheets/bootstrap/_maps.scss +54 -0
  51. data/assets/stylesheets/bootstrap/_modal.scss +71 -43
  52. data/assets/stylesheets/bootstrap/_nav.scss +53 -20
  53. data/assets/stylesheets/bootstrap/_navbar.scss +91 -150
  54. data/assets/stylesheets/bootstrap/_offcanvas.scss +119 -59
  55. data/assets/stylesheets/bootstrap/_pagination.scss +66 -21
  56. data/assets/stylesheets/bootstrap/_placeholders.scss +1 -1
  57. data/assets/stylesheets/bootstrap/_popover.scss +90 -52
  58. data/assets/stylesheets/bootstrap/_progress.scss +20 -9
  59. data/assets/stylesheets/bootstrap/_reboot.scss +25 -40
  60. data/assets/stylesheets/bootstrap/_root.scss +40 -21
  61. data/assets/stylesheets/bootstrap/_spinners.scss +38 -22
  62. data/assets/stylesheets/bootstrap/_tables.scss +38 -25
  63. data/assets/stylesheets/bootstrap/_toasts.scss +35 -16
  64. data/assets/stylesheets/bootstrap/_tooltip.scss +61 -56
  65. data/assets/stylesheets/bootstrap/_type.scss +2 -0
  66. data/assets/stylesheets/bootstrap/_utilities.scss +43 -26
  67. data/assets/stylesheets/bootstrap/_variables.scss +118 -124
  68. data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +3 -6
  69. data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +14 -3
  70. data/assets/stylesheets/bootstrap/forms/_form-check.scss +28 -5
  71. data/assets/stylesheets/bootstrap/forms/_form-control.scss +12 -37
  72. data/assets/stylesheets/bootstrap/forms/_form-select.scss +2 -1
  73. data/assets/stylesheets/bootstrap/forms/_input-group.scss +15 -7
  74. data/assets/stylesheets/bootstrap/helpers/_color-bg.scss +10 -0
  75. data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +2 -2
  76. data/assets/stylesheets/bootstrap/helpers/_position.scss +7 -1
  77. data/assets/stylesheets/bootstrap/helpers/_ratio.scss +2 -2
  78. data/assets/stylesheets/bootstrap/helpers/_vr.scss +1 -1
  79. data/assets/stylesheets/bootstrap/mixins/_alert.scss +7 -3
  80. data/assets/stylesheets/bootstrap/mixins/_banner.scss +9 -0
  81. data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +8 -8
  82. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +32 -95
  83. data/assets/stylesheets/bootstrap/mixins/_container.scss +4 -2
  84. data/assets/stylesheets/bootstrap/mixins/_forms.scss +8 -0
  85. data/assets/stylesheets/bootstrap/mixins/_gradients.scss +1 -1
  86. data/assets/stylesheets/bootstrap/mixins/_grid.scss +13 -12
  87. data/assets/stylesheets/bootstrap/mixins/_pagination.scss +4 -25
  88. data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +1 -1
  89. data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +12 -9
  90. data/assets/stylesheets/bootstrap/mixins/_utilities.scss +12 -4
  91. data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +1 -1
  92. data/bootstrap.gemspec +1 -1
  93. data/lib/bootstrap/version.rb +2 -2
  94. data/tasks/updater/js.rb +9 -4
  95. metadata +16 -4
@@ -60,40 +60,13 @@ $colors: (
60
60
  "green": $green,
61
61
  "teal": $teal,
62
62
  "cyan": $cyan,
63
+ "black": $black,
63
64
  "white": $white,
64
65
  "gray": $gray-600,
65
66
  "gray-dark": $gray-800
66
67
  ) !default;
67
68
  // scss-docs-end colors-map
68
69
 
69
- // scss-docs-start theme-color-variables
70
- $primary: $blue !default;
71
- $secondary: $gray-600 !default;
72
- $success: $green !default;
73
- $info: $cyan !default;
74
- $warning: $yellow !default;
75
- $danger: $red !default;
76
- $light: $gray-100 !default;
77
- $dark: $gray-900 !default;
78
- // scss-docs-end theme-color-variables
79
-
80
- // scss-docs-start theme-colors-map
81
- $theme-colors: (
82
- "primary": $primary,
83
- "secondary": $secondary,
84
- "success": $success,
85
- "info": $info,
86
- "warning": $warning,
87
- "danger": $danger,
88
- "light": $light,
89
- "dark": $dark
90
- ) !default;
91
- // scss-docs-end theme-colors-map
92
-
93
- // scss-docs-start theme-colors-rgb
94
- $theme-colors-rgb: map-loop($theme-colors, to-rgb, "$value") !default;
95
- // scss-docs-end theme-colors-rgb
96
-
97
70
  // The contrast ratio to reach against white, to determine if color changes from "light" to "dark". Acceptable values for WCAG 2.0 are 3, 4.5 and 7.
98
71
  // See https://www.w3.org/TR/WCAG20/#visual-audio-contrast-contrast
99
72
  $min-contrast-ratio: 4.5 !default;
@@ -228,8 +201,8 @@ $indigos: (
228
201
  ) !default;
229
202
 
230
203
  $purples: (
231
- "purple-100": $purple-200,
232
- "purple-200": $purple-100,
204
+ "purple-100": $purple-100,
205
+ "purple-200": $purple-200,
233
206
  "purple-300": $purple-300,
234
207
  "purple-400": $purple-400,
235
208
  "purple-500": $purple-500,
@@ -324,6 +297,30 @@ $cyans: (
324
297
  ) !default;
325
298
  // fusv-enable
326
299
 
300
+ // scss-docs-start theme-color-variables
301
+ $primary: $blue !default;
302
+ $secondary: $gray-600 !default;
303
+ $success: $green !default;
304
+ $info: $cyan !default;
305
+ $warning: $yellow !default;
306
+ $danger: $red !default;
307
+ $light: $gray-100 !default;
308
+ $dark: $gray-900 !default;
309
+ // scss-docs-end theme-color-variables
310
+
311
+ // scss-docs-start theme-colors-map
312
+ $theme-colors: (
313
+ "primary": $primary,
314
+ "secondary": $secondary,
315
+ "success": $success,
316
+ "info": $info,
317
+ "warning": $warning,
318
+ "danger": $danger,
319
+ "light": $light,
320
+ "dark": $dark
321
+ ) !default;
322
+ // scss-docs-end theme-colors-map
323
+
327
324
  // Characters which are escaped by the escape-svg function
328
325
  $escaped-characters: (
329
326
  ("<", "%3c"),
@@ -345,6 +342,7 @@ $enable-transitions: true !default;
345
342
  $enable-reduced-motion: true !default;
346
343
  $enable-smooth-scroll: true !default;
347
344
  $enable-grid-classes: true !default;
345
+ $enable-container-classes: true !default;
348
346
  $enable-cssgrid: false !default;
349
347
  $enable-button-pointers: true !default;
350
348
  $enable-rfs: true !default;
@@ -355,7 +353,8 @@ $enable-important-utilities: true !default;
355
353
 
356
354
  // Prefix for :root CSS variables
357
355
 
358
- $variable-prefix: bs- !default;
356
+ $variable-prefix: bs- !default; // Deprecated in v5.2.0 for the shorter `$prefix`
357
+ $prefix: $variable-prefix !default;
359
358
 
360
359
  // Gradient
361
360
  //
@@ -381,8 +380,6 @@ $spacers: (
381
380
  4: $spacer * 1.5,
382
381
  5: $spacer * 3,
383
382
  ) !default;
384
-
385
- $negative-spacers: if($enable-negative-margins, negativify-map($spacers), null) !default;
386
383
  // scss-docs-end spacer-variables-maps
387
384
 
388
385
  // Position
@@ -405,39 +402,6 @@ $body-bg: $white !default;
405
402
  $body-color: $gray-900 !default;
406
403
  $body-text-align: null !default;
407
404
 
408
- // Utilities maps
409
- //
410
- // Extends the default `$theme-colors` maps to help create our utilities.
411
-
412
- // Come v6, we'll de-dupe these variables. Until then, for backward compatibility, we keep them to reassign.
413
- // scss-docs-start utilities-colors
414
- $utilities-colors: $theme-colors-rgb !default;
415
- // scss-docs-end utilities-colors
416
-
417
- // scss-docs-start utilities-text-colors
418
- $utilities-text: map-merge(
419
- $utilities-colors,
420
- (
421
- "black": to-rgb($black),
422
- "white": to-rgb($white),
423
- "body": to-rgb($body-color)
424
- )
425
- ) !default;
426
- $utilities-text-colors: map-loop($utilities-text, rgba-css-var, "$key", "text") !default;
427
- // scss-docs-end utilities-text-colors
428
-
429
- // scss-docs-start utilities-bg-colors
430
- $utilities-bg: map-merge(
431
- $utilities-colors,
432
- (
433
- "black": to-rgb($black),
434
- "white": to-rgb($white),
435
- "body": to-rgb($body-bg)
436
- )
437
- ) !default;
438
- $utilities-bg-colors: map-loop($utilities-bg, rgba-css-var, "$key", "bg") !default;
439
- // scss-docs-end utilities-bg-colors
440
-
441
405
  // Links
442
406
  //
443
407
  // Style anchor elements.
@@ -503,11 +467,9 @@ $grid-columns: 12 !default;
503
467
  $grid-gutter-width: 1.5rem !default;
504
468
  $grid-row-columns: 6 !default;
505
469
 
506
- $gutters: $spacers !default;
507
-
508
470
  // Container padding
509
471
 
510
- $container-padding-x: $grid-gutter-width * .5 !default;
472
+ $container-padding-x: $grid-gutter-width !default;
511
473
 
512
474
 
513
475
  // Components
@@ -524,13 +486,17 @@ $border-widths: (
524
486
  5: 5px
525
487
  ) !default;
526
488
 
489
+ $border-style: solid !default;
527
490
  $border-color: $gray-300 !default;
491
+ $border-color-translucent: rgba($black, .175) !default;
528
492
  // scss-docs-end border-variables
529
493
 
530
494
  // scss-docs-start border-radius-variables
531
- $border-radius: .25rem !default;
532
- $border-radius-sm: .2rem !default;
533
- $border-radius-lg: .3rem !default;
495
+ $border-radius: .375rem !default;
496
+ $border-radius-sm: .25rem !default;
497
+ $border-radius-lg: .5rem !default;
498
+ $border-radius-xl: 1rem !default;
499
+ $border-radius-2xl: 2rem !default;
534
500
  $border-radius-pill: 50rem !default;
535
501
  // scss-docs-end border-radius-variables
536
502
 
@@ -574,11 +540,11 @@ $aspect-ratios: (
574
540
 
575
541
  // scss-docs-start font-variables
576
542
  // stylelint-disable value-keyword-case
577
- $font-family-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !default;
543
+ $font-family-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !default;
578
544
  $font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !default;
579
545
  // stylelint-enable value-keyword-case
580
- $font-family-base: var(--#{$variable-prefix}font-sans-serif) !default;
581
- $font-family-code: var(--#{$variable-prefix}font-monospace) !default;
546
+ $font-family-base: var(--#{$prefix}font-sans-serif) !default;
547
+ $font-family-code: var(--#{$prefix}font-monospace) !default;
582
548
 
583
549
  // $font-size-root affects the value of `rem`, which is used for as well font sizes, paddings, and margins
584
550
  // $font-size-base affects the font size of the body text
@@ -590,6 +556,7 @@ $font-size-lg: $font-size-base * 1.25 !default;
590
556
  $font-weight-lighter: lighter !default;
591
557
  $font-weight-light: 300 !default;
592
558
  $font-weight-normal: 400 !default;
559
+ $font-weight-semibold: 600 !default;
593
560
  $font-weight-bold: 700 !default;
594
561
  $font-weight-bolder: bolder !default;
595
562
 
@@ -637,6 +604,8 @@ $display-font-sizes: (
637
604
  6: 2.5rem
638
605
  ) !default;
639
606
 
607
+ $display-font-family: null !default;
608
+ $display-font-style: null !default;
640
609
  $display-font-weight: 300 !default;
641
610
  $display-line-height: $headings-line-height !default;
642
611
  // scss-docs-end display-headings
@@ -660,22 +629,26 @@ $blockquote-footer-font-size: $small-font-size !default;
660
629
 
661
630
  $hr-margin-y: $spacer !default;
662
631
  $hr-color: inherit !default;
663
- $hr-height: $border-width !default;
632
+
633
+ // fusv-disable
634
+ $hr-bg-color: null !default; // Deprecated in v5.2.0
635
+ $hr-height: null !default; // Deprecated in v5.2.0
636
+ // fusv-enable
637
+
638
+ $hr-border-color: null !default; // Allows for inherited colors
639
+ $hr-border-width: $border-width !default;
664
640
  $hr-opacity: .25 !default;
665
641
 
666
642
  $legend-margin-bottom: .5rem !default;
667
643
  $legend-font-size: 1.5rem !default;
668
644
  $legend-font-weight: null !default;
669
645
 
670
- $mark-padding: .2em !default;
671
-
672
646
  $dt-font-weight: $font-weight-bold !default;
673
647
 
674
- $nested-kbd-font-weight: $font-weight-bold !default;
675
-
676
648
  $list-inline-padding: .5rem !default;
677
649
 
678
- $mark-bg: #fcf8e3 !default;
650
+ $mark-padding: .1875em !default;
651
+ $mark-bg: $yellow-100 !default;
679
652
  // scss-docs-end type-variables
680
653
 
681
654
 
@@ -691,7 +664,7 @@ $table-cell-padding-x-sm: .25rem !default;
691
664
 
692
665
  $table-cell-vertical-align: top !default;
693
666
 
694
- $table-color: $body-color !default;
667
+ $table-color: var(--#{$prefix}body-color) !default;
695
668
  $table-bg: transparent !default;
696
669
  $table-accent-bg: transparent !default;
697
670
 
@@ -711,11 +684,12 @@ $table-hover-bg: rgba($black, $table-hover-bg-factor) !default;
711
684
 
712
685
  $table-border-factor: .1 !default;
713
686
  $table-border-width: $border-width !default;
714
- $table-border-color: $border-color !default;
687
+ $table-border-color: var(--#{$prefix}border-color) !default;
715
688
 
716
689
  $table-striped-order: odd !default;
690
+ $table-striped-columns-order: even !default;
717
691
 
718
- $table-group-separator-color: currentColor !default;
692
+ $table-group-separator-color: currentcolor !default;
719
693
 
720
694
  $table-caption-color: $text-muted !default;
721
695
 
@@ -794,8 +768,8 @@ $btn-focus-box-shadow: $input-btn-focus-box-shadow !default;
794
768
  $btn-disabled-opacity: .65 !default;
795
769
  $btn-active-box-shadow: inset 0 3px 5px rgba($black, .125) !default;
796
770
 
797
- $btn-link-color: $link-color !default;
798
- $btn-link-hover-color: $link-hover-color !default;
771
+ $btn-link-color: var(--#{$prefix}link-color) !default;
772
+ $btn-link-hover-color: var(--#{$prefix}link-hover-color) !default;
799
773
  $btn-link-disabled-color: $gray-600 !default;
800
774
 
801
775
  // Allows for customizing button radius independently from global border radius
@@ -851,6 +825,7 @@ $input-padding-x-lg: $input-btn-padding-x-lg !default;
851
825
  $input-font-size-lg: $input-btn-font-size-lg !default;
852
826
 
853
827
  $input-bg: $body-bg !default;
828
+ $input-disabled-color: null !default;
854
829
  $input-disabled-bg: $gray-200 !default;
855
830
  $input-disabled-border-color: null !default;
856
831
 
@@ -908,7 +883,7 @@ $form-check-input-focus-box-shadow: $input-btn-focus-box-shadow !default;
908
883
  $form-check-input-checked-color: $component-active-color !default;
909
884
  $form-check-input-checked-bg-color: $component-active-bg !default;
910
885
  $form-check-input-checked-border-color: $form-check-input-checked-bg-color !default;
911
- $form-check-input-checked-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><path fill='none' stroke='#{$form-check-input-checked-color}' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/></svg>") !default;
886
+ $form-check-input-checked-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><path fill='none' stroke='#{$form-check-input-checked-color}' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/></svg>") !default;
912
887
  $form-check-radio-checked-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='2' fill='#{$form-check-input-checked-color}'/></svg>") !default;
913
888
 
914
889
  $form-check-input-indeterminate-color: $component-active-color !default;
@@ -924,7 +899,7 @@ $form-check-inline-margin-end: 1rem !default;
924
899
  // scss-docs-end form-check-variables
925
900
 
926
901
  // scss-docs-start form-switch-variables
927
- $form-switch-color: rgba(0, 0, 0, .25) !default;
902
+ $form-switch-color: rgba($black, .25) !default;
928
903
  $form-switch-width: 2em !default;
929
904
  $form-switch-padding-start: $form-switch-width + .5em !default;
930
905
  $form-switch-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$form-switch-color}'/></svg>") !default;
@@ -964,7 +939,7 @@ $form-select-disabled-border-color: $input-disabled-border-color !default;
964
939
  $form-select-bg-position: right $form-select-padding-x center !default;
965
940
  $form-select-bg-size: 16px 12px !default; // In pixels because image dimensions
966
941
  $form-select-indicator-color: $gray-800 !default;
967
- $form-select-indicator: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='#{$form-select-indicator-color}' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/></svg>") !default;
942
+ $form-select-indicator: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='#{$form-select-indicator-color}' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/></svg>") !default;
968
943
 
969
944
  $form-select-feedback-icon-padding-end: $form-select-padding-x * 2.5 + $form-select-indicator-padding !default;
970
945
  $form-select-feedback-icon-position: center right $form-select-indicator-padding !default;
@@ -972,7 +947,7 @@ $form-select-feedback-icon-size: $input-height-inner-half $input-height-i
972
947
 
973
948
  $form-select-border-width: $input-border-width !default;
974
949
  $form-select-border-color: $input-border-color !default;
975
- $form-select-border-radius: $border-radius !default;
950
+ $form-select-border-radius: $input-border-radius !default;
976
951
  $form-select-box-shadow: $box-shadow-inset !default;
977
952
 
978
953
  $form-select-focus-border-color: $input-focus-border-color !default;
@@ -982,10 +957,12 @@ $form-select-focus-box-shadow: 0 0 0 $form-select-focus-width $input-btn-focu
982
957
  $form-select-padding-y-sm: $input-padding-y-sm !default;
983
958
  $form-select-padding-x-sm: $input-padding-x-sm !default;
984
959
  $form-select-font-size-sm: $input-font-size-sm !default;
960
+ $form-select-border-radius-sm: $input-border-radius-sm !default;
985
961
 
986
962
  $form-select-padding-y-lg: $input-padding-y-lg !default;
987
963
  $form-select-padding-x-lg: $input-padding-x-lg !default;
988
964
  $form-select-font-size-lg: $input-font-size-lg !default;
965
+ $form-select-border-radius-lg: $input-border-radius-lg !default;
989
966
 
990
967
  $form-select-transition: $input-transition !default;
991
968
  // scss-docs-end form-select-variables
@@ -1039,7 +1016,7 @@ $form-feedback-valid-color: $success !default;
1039
1016
  $form-feedback-invalid-color: $danger !default;
1040
1017
 
1041
1018
  $form-feedback-icon-valid-color: $form-feedback-valid-color !default;
1042
- $form-feedback-icon-valid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' 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;
1019
+ $form-feedback-icon-valid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'><path fill='#{$form-feedback-icon-valid-color}' d='M2.3 6.73.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;
1043
1020
  $form-feedback-icon-invalid-color: $form-feedback-invalid-color !default;
1044
1021
  $form-feedback-icon-invalid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='#{$form-feedback-icon-invalid-color}'><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;
1045
1022
  // scss-docs-end form-feedback-variables
@@ -1072,6 +1049,7 @@ $zindex-modal-backdrop: 1050 !default;
1072
1049
  $zindex-modal: 1055 !default;
1073
1050
  $zindex-popover: 1070 !default;
1074
1051
  $zindex-tooltip: 1080 !default;
1052
+ $zindex-toast: 1090 !default;
1075
1053
  // scss-docs-end zindex-stack
1076
1054
 
1077
1055
 
@@ -1082,8 +1060,8 @@ $nav-link-padding-y: .5rem !default;
1082
1060
  $nav-link-padding-x: 1rem !default;
1083
1061
  $nav-link-font-size: null !default;
1084
1062
  $nav-link-font-weight: null !default;
1085
- $nav-link-color: $link-color !default;
1086
- $nav-link-hover-color: $link-hover-color !default;
1063
+ $nav-link-color: var(--#{$prefix}link-color) !default;
1064
+ $nav-link-hover-color: var(--#{$prefix}link-hover-color) !default;
1087
1065
  $nav-link-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out !default;
1088
1066
  $nav-link-disabled-color: $gray-600 !default;
1089
1067
 
@@ -1158,7 +1136,7 @@ $dropdown-spacer: .125rem !default;
1158
1136
  $dropdown-font-size: $font-size-base !default;
1159
1137
  $dropdown-color: $body-color !default;
1160
1138
  $dropdown-bg: $white !default;
1161
- $dropdown-border-color: rgba($black, .15) !default;
1139
+ $dropdown-border-color: var(--#{$prefix}border-color-translucent) !default;
1162
1140
  $dropdown-border-radius: $border-radius !default;
1163
1141
  $dropdown-border-width: $border-width !default;
1164
1142
  $dropdown-inner-border-radius: subtract($dropdown-border-radius, $dropdown-border-width) !default;
@@ -1179,7 +1157,11 @@ $dropdown-item-padding-y: $spacer * .25 !default;
1179
1157
  $dropdown-item-padding-x: $spacer !default;
1180
1158
 
1181
1159
  $dropdown-header-color: $gray-600 !default;
1182
- $dropdown-header-padding: $dropdown-padding-y $dropdown-item-padding-x !default;
1160
+ $dropdown-header-padding-x: $dropdown-item-padding-x !default;
1161
+ $dropdown-header-padding-y: $dropdown-padding-y !default;
1162
+ // fusv-disable
1163
+ $dropdown-header-padding: $dropdown-header-padding-y $dropdown-header-padding-x !default; // Deprecated in v5.2.0
1164
+ // fusv-enable
1183
1165
  // scss-docs-end dropdown-variables
1184
1166
 
1185
1167
  // scss-docs-start dropdown-dark-variables
@@ -1208,19 +1190,21 @@ $pagination-padding-x-sm: .5rem !default;
1208
1190
  $pagination-padding-y-lg: .75rem !default;
1209
1191
  $pagination-padding-x-lg: 1.5rem !default;
1210
1192
 
1211
- $pagination-color: $link-color !default;
1193
+ $pagination-font-size: $font-size-base !default;
1194
+
1195
+ $pagination-color: var(--#{$prefix}link-color) !default;
1212
1196
  $pagination-bg: $white !default;
1213
- $pagination-border-width: $border-width !default;
1214
1197
  $pagination-border-radius: $border-radius !default;
1215
- $pagination-margin-start: -$pagination-border-width !default;
1198
+ $pagination-border-width: $border-width !default;
1199
+ $pagination-margin-start: ($pagination-border-width * -1) !default;
1216
1200
  $pagination-border-color: $gray-300 !default;
1217
1201
 
1218
- $pagination-focus-color: $link-hover-color !default;
1202
+ $pagination-focus-color: var(--#{$prefix}link-hover-color) !default;
1219
1203
  $pagination-focus-bg: $gray-200 !default;
1220
1204
  $pagination-focus-box-shadow: $input-btn-focus-box-shadow !default;
1221
1205
  $pagination-focus-outline: 0 !default;
1222
1206
 
1223
- $pagination-hover-color: $link-hover-color !default;
1207
+ $pagination-hover-color: var(--#{$prefix}link-hover-color) !default;
1224
1208
  $pagination-hover-bg: $gray-200 !default;
1225
1209
  $pagination-hover-border-color: $gray-300 !default;
1226
1210
 
@@ -1253,7 +1237,7 @@ $card-spacer-y: $spacer !default;
1253
1237
  $card-spacer-x: $spacer !default;
1254
1238
  $card-title-spacer-y: $spacer * .5 !default;
1255
1239
  $card-border-width: $border-width !default;
1256
- $card-border-color: rgba($black, .125) !default;
1240
+ $card-border-color: var(--#{$prefix}border-color-translucent) !default;
1257
1241
  $card-border-radius: $border-radius !default;
1258
1242
  $card-box-shadow: null !default;
1259
1243
  $card-inner-border-radius: subtract($card-border-radius, $card-border-width) !default;
@@ -1273,10 +1257,10 @@ $card-group-margin: $grid-gutter-width * .5 !default;
1273
1257
  // scss-docs-start accordion-variables
1274
1258
  $accordion-padding-y: 1rem !default;
1275
1259
  $accordion-padding-x: 1.25rem !default;
1276
- $accordion-color: $body-color !default;
1260
+ $accordion-color: var(--#{$prefix}body-color) !default;
1277
1261
  $accordion-bg: $body-bg !default;
1278
1262
  $accordion-border-width: $border-width !default;
1279
- $accordion-border-color: rgba($black, .125) !default;
1263
+ $accordion-border-color: var(--#{$prefix}border-color) !default;
1280
1264
  $accordion-border-radius: $border-radius !default;
1281
1265
  $accordion-inner-border-radius: subtract($accordion-border-radius, $accordion-border-width) !default;
1282
1266
 
@@ -1286,7 +1270,7 @@ $accordion-body-padding-x: $accordion-padding-x !default;
1286
1270
  $accordion-button-padding-y: $accordion-padding-y !default;
1287
1271
  $accordion-button-padding-x: $accordion-padding-x !default;
1288
1272
  $accordion-button-color: $accordion-color !default;
1289
- $accordion-button-bg: $accordion-bg !default;
1273
+ $accordion-button-bg: var(--#{$prefix}accordion-bg) !default;
1290
1274
  $accordion-transition: $btn-transition, border-radius .15s ease !default;
1291
1275
  $accordion-button-active-bg: tint-color($component-active-bg, 90%) !default;
1292
1276
  $accordion-button-active-color: shade-color($primary, 10%) !default;
@@ -1315,11 +1299,13 @@ $tooltip-border-radius: $border-radius !default;
1315
1299
  $tooltip-opacity: .9 !default;
1316
1300
  $tooltip-padding-y: $spacer * .25 !default;
1317
1301
  $tooltip-padding-x: $spacer * .5 !default;
1318
- $tooltip-margin: 0 !default;
1302
+ $tooltip-margin: null !default; // TODO: remove this in v6
1319
1303
 
1320
1304
  $tooltip-arrow-width: .8rem !default;
1321
1305
  $tooltip-arrow-height: .4rem !default;
1322
- $tooltip-arrow-color: $tooltip-bg !default;
1306
+ // fusv-disable
1307
+ $tooltip-arrow-color: null !default; // Deprecated in Bootstrap 5.2.0 for CSS variables
1308
+ // fusv-enable
1323
1309
  // scss-docs-end tooltip-variables
1324
1310
 
1325
1311
  // Form tooltips must come after regular tooltips
@@ -1340,13 +1326,14 @@ $popover-font-size: $font-size-sm !default;
1340
1326
  $popover-bg: $white !default;
1341
1327
  $popover-max-width: 276px !default;
1342
1328
  $popover-border-width: $border-width !default;
1343
- $popover-border-color: rgba($black, .2) !default;
1329
+ $popover-border-color: var(--#{$prefix}border-color-translucent) !default;
1344
1330
  $popover-border-radius: $border-radius-lg !default;
1345
1331
  $popover-inner-border-radius: subtract($popover-border-radius, $popover-border-width) !default;
1346
1332
  $popover-box-shadow: $box-shadow !default;
1347
1333
 
1334
+ $popover-header-font-size: $font-size-base !default;
1348
1335
  $popover-header-bg: shade-color($popover-bg, 6%) !default;
1349
- $popover-header-color: $headings-color !default;
1336
+ $popover-header-color: var(--#{$prefix}heading-color) !default;
1350
1337
  $popover-header-padding-y: .5rem !default;
1351
1338
  $popover-header-padding-x: $spacer !default;
1352
1339
 
@@ -1356,11 +1343,14 @@ $popover-body-padding-x: $spacer !default;
1356
1343
 
1357
1344
  $popover-arrow-width: 1rem !default;
1358
1345
  $popover-arrow-height: .5rem !default;
1359
- $popover-arrow-color: $popover-bg !default;
1360
-
1361
- $popover-arrow-outer-color: fade-in($popover-border-color, .05) !default;
1362
1346
  // scss-docs-end popover-variables
1363
1347
 
1348
+ // fusv-disable
1349
+ // Deprecated in Bootstrap 5.2.0 for CSS variables
1350
+ $popover-arrow-color: $popover-bg !default;
1351
+ $popover-arrow-outer-color: var(--#{$prefix}border-color-translucent) !default;
1352
+ // fusv-enable
1353
+
1364
1354
 
1365
1355
  // Toasts
1366
1356
 
@@ -1371,15 +1361,15 @@ $toast-padding-y: .5rem !default;
1371
1361
  $toast-font-size: .875rem !default;
1372
1362
  $toast-color: null !default;
1373
1363
  $toast-background-color: rgba($white, .85) !default;
1374
- $toast-border-width: 1px !default;
1375
- $toast-border-color: rgba(0, 0, 0, .1) !default;
1364
+ $toast-border-width: $border-width !default;
1365
+ $toast-border-color: var(--#{$prefix}border-color-translucent) !default;
1376
1366
  $toast-border-radius: $border-radius !default;
1377
1367
  $toast-box-shadow: $box-shadow !default;
1378
1368
  $toast-spacing: $container-padding-x !default;
1379
1369
 
1380
1370
  $toast-header-color: $gray-600 !default;
1381
1371
  $toast-header-background-color: rgba($white, .85) !default;
1382
- $toast-header-border-color: rgba(0, 0, 0, .05) !default;
1372
+ $toast-header-border-color: rgba($black, .05) !default;
1383
1373
  // scss-docs-end toast-variables
1384
1374
 
1385
1375
 
@@ -1409,7 +1399,7 @@ $modal-title-line-height: $line-height-base !default;
1409
1399
 
1410
1400
  $modal-content-color: null !default;
1411
1401
  $modal-content-bg: $white !default;
1412
- $modal-content-border-color: rgba($black, .2) !default;
1402
+ $modal-content-border-color: var(--#{$prefix}border-color-translucent) !default;
1413
1403
  $modal-content-border-width: $border-width !default;
1414
1404
  $modal-content-border-radius: $border-radius-lg !default;
1415
1405
  $modal-content-inner-border-radius: subtract($modal-content-border-radius, $modal-content-border-width) !default;
@@ -1418,14 +1408,17 @@ $modal-content-box-shadow-sm-up: $box-shadow !default;
1418
1408
 
1419
1409
  $modal-backdrop-bg: $black !default;
1420
1410
  $modal-backdrop-opacity: .5 !default;
1421
- $modal-header-border-color: $border-color !default;
1422
- $modal-footer-border-color: $modal-header-border-color !default;
1411
+
1412
+ $modal-header-border-color: var(--#{$prefix}border-color) !default;
1423
1413
  $modal-header-border-width: $modal-content-border-width !default;
1424
- $modal-footer-border-width: $modal-header-border-width !default;
1425
1414
  $modal-header-padding-y: $modal-inner-padding !default;
1426
1415
  $modal-header-padding-x: $modal-inner-padding !default;
1427
1416
  $modal-header-padding: $modal-header-padding-y $modal-header-padding-x !default; // Keep this for backwards compatibility
1428
1417
 
1418
+ $modal-footer-bg: null !default;
1419
+ $modal-footer-border-color: $modal-header-border-color !default;
1420
+ $modal-footer-border-width: $modal-header-border-width !default;
1421
+
1429
1422
  $modal-sm: 300px !default;
1430
1423
  $modal-md: 500px !default;
1431
1424
  $modal-lg: 800px !default;
@@ -1507,7 +1500,7 @@ $list-group-action-active-bg: $gray-200 !default;
1507
1500
  $thumbnail-padding: .25rem !default;
1508
1501
  $thumbnail-bg: $body-bg !default;
1509
1502
  $thumbnail-border-width: $border-width !default;
1510
- $thumbnail-border-color: $gray-300 !default;
1503
+ $thumbnail-border-color: var(--#{$prefix}border-color) !default;
1511
1504
  $thumbnail-border-radius: $border-radius !default;
1512
1505
  $thumbnail-box-shadow: $box-shadow-sm !default;
1513
1506
  // scss-docs-end thumbnail-variables
@@ -1597,7 +1590,7 @@ $btn-close-height: $btn-close-width !default;
1597
1590
  $btn-close-padding-x: .25em !default;
1598
1591
  $btn-close-padding-y: $btn-close-padding-x !default;
1599
1592
  $btn-close-color: $black !default;
1600
- $btn-close-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$btn-close-color}'><path d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/></svg>") !default;
1593
+ $btn-close-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$btn-close-color}'><path d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/></svg>") !default;
1601
1594
  $btn-close-focus-shadow: $input-btn-focus-box-shadow !default;
1602
1595
  $btn-close-opacity: .5 !default;
1603
1596
  $btn-close-hover-opacity: .75 !default;
@@ -1630,10 +1623,11 @@ $offcanvas-backdrop-opacity: $modal-backdrop-opacity !default;
1630
1623
  $code-font-size: $small-font-size !default;
1631
1624
  $code-color: $pink !default;
1632
1625
 
1633
- $kbd-padding-y: .2rem !default;
1634
- $kbd-padding-x: .4rem !default;
1626
+ $kbd-padding-y: .1875rem !default;
1627
+ $kbd-padding-x: .375rem !default;
1635
1628
  $kbd-font-size: $code-font-size !default;
1636
- $kbd-color: $white !default;
1637
- $kbd-bg: $gray-900 !default;
1629
+ $kbd-color: var(--#{$prefix}body-bg) !default;
1630
+ $kbd-bg: var(--#{$prefix}body-color) !default;
1631
+ $nested-kbd-font-weight: null !default; // Deprecated in v5.2.0, removing in v6
1638
1632
 
1639
1633
  $pre-color: null !default;
@@ -1,13 +1,10 @@
1
- /*!
2
- * Bootstrap Utilities v5.1.1 (https://getbootstrap.com/)
3
- * Copyright 2011-2021 The Bootstrap Authors
4
- * Copyright 2011-2021 Twitter, Inc.
5
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
6
- */
1
+ @import "mixins/banner";
2
+ @include bsBanner(Utilities);
7
3
 
8
4
  // Configuration
9
5
  @import "functions";
10
6
  @import "variables";
7
+ @import "maps";
11
8
  @import "mixins";
12
9
  @import "utilities";
13
10
 
@@ -2,6 +2,7 @@
2
2
  position: relative;
3
3
 
4
4
  > .form-control,
5
+ > .form-control-plaintext,
5
6
  > .form-select {
6
7
  height: $form-floating-height;
7
8
  line-height: $form-floating-line-height;
@@ -11,16 +12,20 @@
11
12
  position: absolute;
12
13
  top: 0;
13
14
  left: 0;
15
+ width: 100%;
14
16
  height: 100%; // allow textareas
15
17
  padding: $form-floating-padding-y $form-floating-padding-x;
18
+ overflow: hidden;
19
+ text-overflow: ellipsis;
20
+ white-space: nowrap;
16
21
  pointer-events: none;
17
22
  border: $input-border-width solid transparent; // Required for aligning label's text with the input as it affects inner box model
18
23
  transform-origin: 0 0;
19
24
  @include transition($form-floating-transition);
20
25
  }
21
26
 
22
- // stylelint-disable no-duplicate-selectors
23
- > .form-control {
27
+ > .form-control,
28
+ > .form-control-plaintext {
24
29
  padding: $form-floating-padding-y $form-floating-padding-x;
25
30
 
26
31
  &::placeholder {
@@ -46,6 +51,7 @@
46
51
 
47
52
  > .form-control:focus,
48
53
  > .form-control:not(:placeholder-shown),
54
+ > .form-control-plaintext,
49
55
  > .form-select {
50
56
  ~ label {
51
57
  opacity: $form-floating-label-opacity;
@@ -59,5 +65,10 @@
59
65
  transform: $form-floating-label-transform;
60
66
  }
61
67
  }
62
- // stylelint-enable no-duplicate-selectors
68
+
69
+ > .form-control-plaintext {
70
+ ~ label {
71
+ border-width: $input-border-width 0; // Required to properly position label text - as explained above
72
+ }
73
+ }
63
74
  }