@coreui/coreui 5.3.1 → 5.3.2

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 (115) hide show
  1. package/README.md +2 -2
  2. package/dist/css/coreui-grid.css +1 -1
  3. package/dist/css/coreui-grid.css.map +1 -1
  4. package/dist/css/coreui-grid.min.css +1 -1
  5. package/dist/css/coreui-grid.min.css.map +1 -1
  6. package/dist/css/coreui-grid.rtl.css +1 -1
  7. package/dist/css/coreui-grid.rtl.css.map +1 -1
  8. package/dist/css/coreui-grid.rtl.min.css +1 -1
  9. package/dist/css/coreui-grid.rtl.min.css.map +1 -1
  10. package/dist/css/coreui-reboot.css +1 -1
  11. package/dist/css/coreui-reboot.css.map +1 -1
  12. package/dist/css/coreui-reboot.min.css +1 -1
  13. package/dist/css/coreui-reboot.min.css.map +1 -1
  14. package/dist/css/coreui-reboot.rtl.css +1 -1
  15. package/dist/css/coreui-reboot.rtl.css.map +1 -1
  16. package/dist/css/coreui-reboot.rtl.min.css +1 -1
  17. package/dist/css/coreui-reboot.rtl.min.css.map +1 -1
  18. package/dist/css/coreui-utilities.css +1 -1
  19. package/dist/css/coreui-utilities.css.map +1 -1
  20. package/dist/css/coreui-utilities.min.css +1 -1
  21. package/dist/css/coreui-utilities.min.css.map +1 -1
  22. package/dist/css/coreui-utilities.rtl.css +1 -1
  23. package/dist/css/coreui-utilities.rtl.css.map +1 -1
  24. package/dist/css/coreui-utilities.rtl.min.css +1 -1
  25. package/dist/css/coreui-utilities.rtl.min.css.map +1 -1
  26. package/dist/css/coreui.css +57 -93
  27. package/dist/css/coreui.css.map +1 -1
  28. package/dist/css/coreui.min.css +2 -2
  29. package/dist/css/coreui.min.css.map +1 -1
  30. package/dist/css/coreui.rtl.css +59 -63
  31. package/dist/css/coreui.rtl.css.map +1 -1
  32. package/dist/css/coreui.rtl.min.css +2 -2
  33. package/dist/css/coreui.rtl.min.css.map +1 -1
  34. package/dist/css/themes/bootstrap/bootstrap.css +57 -93
  35. package/dist/css/themes/bootstrap/bootstrap.css.map +1 -1
  36. package/dist/css/themes/bootstrap/bootstrap.min.css +2 -2
  37. package/dist/css/themes/bootstrap/bootstrap.min.css.map +1 -1
  38. package/dist/css/themes/bootstrap/bootstrap.rtl.css +59 -63
  39. package/dist/css/themes/bootstrap/bootstrap.rtl.css.map +1 -1
  40. package/dist/css/themes/bootstrap/bootstrap.rtl.min.css +2 -2
  41. package/dist/css/themes/bootstrap/bootstrap.rtl.min.css.map +1 -1
  42. package/dist/js/bootstrap.bundle.js +4 -5
  43. package/dist/js/bootstrap.bundle.js.map +1 -1
  44. package/dist/js/bootstrap.bundle.min.js +2 -2
  45. package/dist/js/bootstrap.bundle.min.js.map +1 -1
  46. package/dist/js/bootstrap.esm.js +4 -5
  47. package/dist/js/bootstrap.esm.js.map +1 -1
  48. package/dist/js/bootstrap.esm.min.js +2 -2
  49. package/dist/js/bootstrap.esm.min.js.map +1 -1
  50. package/dist/js/bootstrap.js +4 -5
  51. package/dist/js/bootstrap.js.map +1 -1
  52. package/dist/js/bootstrap.min.js +2 -2
  53. package/dist/js/bootstrap.min.js.map +1 -1
  54. package/dist/js/coreui.bundle.js +4 -5
  55. package/dist/js/coreui.bundle.js.map +1 -1
  56. package/dist/js/coreui.bundle.min.js +2 -2
  57. package/dist/js/coreui.bundle.min.js.map +1 -1
  58. package/dist/js/coreui.esm.js +4 -5
  59. package/dist/js/coreui.esm.js.map +1 -1
  60. package/dist/js/coreui.esm.min.js +2 -2
  61. package/dist/js/coreui.esm.min.js.map +1 -1
  62. package/dist/js/coreui.js +4 -5
  63. package/dist/js/coreui.js.map +1 -1
  64. package/dist/js/coreui.min.js +2 -2
  65. package/dist/js/coreui.min.js.map +1 -1
  66. package/js/dist/alert.js +1 -1
  67. package/js/dist/base-component.js +2 -2
  68. package/js/dist/base-component.js.map +1 -1
  69. package/js/dist/button.js +1 -1
  70. package/js/dist/carousel.js +1 -1
  71. package/js/dist/collapse.js +1 -1
  72. package/js/dist/dom/data.js +1 -1
  73. package/js/dist/dom/event-handler.js +1 -1
  74. package/js/dist/dom/manipulator.js +1 -1
  75. package/js/dist/dom/selector-engine.js +1 -1
  76. package/js/dist/dropdown.js +2 -2
  77. package/js/dist/dropdown.js.map +1 -1
  78. package/js/dist/modal.js +1 -1
  79. package/js/dist/navigation.js +1 -1
  80. package/js/dist/offcanvas.js +1 -1
  81. package/js/dist/popover.js +1 -1
  82. package/js/dist/scrollspy.js +1 -1
  83. package/js/dist/sidebar.js +1 -1
  84. package/js/dist/tab.js +1 -1
  85. package/js/dist/toast.js +1 -1
  86. package/js/dist/tooltip.js +2 -3
  87. package/js/dist/tooltip.js.map +1 -1
  88. package/js/dist/util/backdrop.js +1 -1
  89. package/js/dist/util/component-functions.js +1 -1
  90. package/js/dist/util/config.js +1 -1
  91. package/js/dist/util/focustrap.js +1 -1
  92. package/js/dist/util/index.js +1 -1
  93. package/js/dist/util/sanitizer.js +1 -1
  94. package/js/dist/util/scrollbar.js +1 -1
  95. package/js/dist/util/swipe.js +1 -1
  96. package/js/dist/util/template-factory.js +1 -1
  97. package/js/src/base-component.js +1 -1
  98. package/js/src/dropdown.js +1 -1
  99. package/js/src/tooltip.js +1 -2
  100. package/package.json +24 -24
  101. package/scss/_banner.scss +1 -1
  102. package/scss/_button-group.scss +3 -2
  103. package/scss/_carousel.scss +18 -34
  104. package/scss/_close.scss +10 -7
  105. package/scss/_header.scss +1 -1
  106. package/scss/_list-group.scss +27 -25
  107. package/scss/_modal.scss +2 -1
  108. package/scss/_offcanvas.scss +2 -1
  109. package/scss/_pagination.scss +1 -1
  110. package/scss/_progress.scss +1 -1
  111. package/scss/_variables-dark.scss +16 -0
  112. package/scss/_variables.scss +9 -7
  113. package/scss/forms/_floating-labels.scss +1 -0
  114. package/scss/forms/_input-group.scss +1 -1
  115. package/scss/sidebar/_sidebar-nav.scss +1 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * CoreUI scrollbar.js v5.3.1 (https://coreui.io)
2
+ * CoreUI scrollbar.js v5.3.2 (https://coreui.io)
3
3
  * Copyright 2025 The CoreUI Team (https://github.com/orgs/coreui/people)
4
4
  * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * CoreUI swipe.js v5.3.1 (https://coreui.io)
2
+ * CoreUI swipe.js v5.3.2 (https://coreui.io)
3
3
  * Copyright 2025 The CoreUI Team (https://github.com/orgs/coreui/people)
4
4
  * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * CoreUI template-factory.js v5.3.1 (https://coreui.io)
2
+ * CoreUI template-factory.js v5.3.2 (https://coreui.io)
3
3
  * Copyright 2025 The CoreUI Team (https://github.com/orgs/coreui/people)
4
4
  * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
5
5
  */
@@ -17,7 +17,7 @@ import { executeAfterTransition, getElement } from './util/index.js'
17
17
  * Constants
18
18
  */
19
19
 
20
- const VERSION = '5.3.1'
20
+ const VERSION = '5.3.2'
21
21
 
22
22
  /**
23
23
  * Class definition
@@ -227,7 +227,7 @@ class Dropdown extends BaseComponent {
227
227
 
228
228
  _createPopper() {
229
229
  if (typeof Popper === 'undefined') {
230
- throw new TypeError('Bootstrap\'s dropdowns require Popper (https://popper.js.org)')
230
+ throw new TypeError('CoreUI\'s dropdowns require Popper (https://popper.js.org/docs/v2/)')
231
231
  }
232
232
 
233
233
  let referenceElement = this._element
package/js/src/tooltip.js CHANGED
@@ -108,7 +108,7 @@ const DefaultType = {
108
108
  class Tooltip extends BaseComponent {
109
109
  constructor(element, config) {
110
110
  if (typeof Popper === 'undefined') {
111
- throw new TypeError('Bootstrap\'s tooltips require Popper (https://popper.js.org)')
111
+ throw new TypeError('CoreUI\'s dropdowns require Popper (https://popper.js.org/docs/v2/)')
112
112
  }
113
113
 
114
114
  super(element, config)
@@ -163,7 +163,6 @@ class Tooltip extends BaseComponent {
163
163
  return
164
164
  }
165
165
 
166
- this._activeTrigger.click = !this._activeTrigger.click
167
166
  if (this._isShown()) {
168
167
  this._leave()
169
168
  return
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@coreui/coreui",
3
3
  "description": "The most popular front-end framework for developing responsive, mobile-first projects on the web rewritten and maintained by the CoreUI Team",
4
- "version": "5.3.1",
4
+ "version": "5.3.2",
5
5
  "config": {
6
6
  "version_short": "5.3"
7
7
  },
@@ -99,33 +99,33 @@
99
99
  "@popperjs/core": "^2.11.8"
100
100
  },
101
101
  "devDependencies": {
102
- "@babel/cli": "^7.26.4",
103
- "@babel/core": "^7.26.9",
102
+ "@babel/cli": "^7.27.0",
103
+ "@babel/core": "^7.26.10",
104
104
  "@babel/preset-env": "^7.26.9",
105
- "@docsearch/js": "^3.8.3",
106
- "@eslint/markdown": "^6.2.2",
105
+ "@docsearch/js": "^3.9.0",
106
+ "@eslint/markdown": "^6.4.0",
107
107
  "@popperjs/core": "^2.11.8",
108
108
  "@rollup/plugin-babel": "^6.0.4",
109
- "@rollup/plugin-commonjs": "^28.0.2",
110
- "@rollup/plugin-node-resolve": "^16.0.0",
109
+ "@rollup/plugin-commonjs": "^28.0.3",
110
+ "@rollup/plugin-node-resolve": "^16.0.1",
111
111
  "@rollup/plugin-replace": "^6.0.2",
112
112
  "@stackblitz/sdk": "^1.11.0",
113
- "autoprefixer": "^10.4.20",
114
- "bootstrap": "^5.3.3",
115
- "bundlewatch": "^0.4.0",
113
+ "autoprefixer": "^10.4.21",
114
+ "bootstrap": "^5.3.5",
115
+ "bundlewatch": "^0.4.1",
116
116
  "clean-css-cli": "^5.6.3",
117
117
  "clipboard": "^2.0.11",
118
118
  "cross-env": "^7.0.3",
119
- "eslint": "^9.20.1",
120
- "eslint-config-xo": "^0.46.0",
119
+ "eslint": "^9.25.1",
120
+ "eslint-config-xo": "0.46.0",
121
121
  "eslint-plugin-html": "^8.1.2",
122
122
  "eslint-plugin-import": "^2.31.0",
123
- "eslint-plugin-unicorn": "^56.0.1",
124
- "find-unused-sass-variables": "^6.0.0",
125
- "globals": "^15.15.0",
123
+ "eslint-plugin-unicorn": "^58.0.0",
124
+ "find-unused-sass-variables": "^6.1.0",
125
+ "globals": "^16.0.0",
126
126
  "globby": "^14.1.0",
127
127
  "hammer-simulator": "0.0.1",
128
- "hugo-bin": "^0.140.1",
128
+ "hugo-bin": "^0.143.7",
129
129
  "ip": "^2.0.1",
130
130
  "jasmine": "^5.6.0",
131
131
  "jquery": "^3.7.1",
@@ -139,18 +139,18 @@
139
139
  "karma-jasmine-html-reporter": "^2.1.0",
140
140
  "karma-rollup-preprocessor": "7.0.8",
141
141
  "lockfile-lint": "^4.14.0",
142
- "nodemon": "^3.1.9",
142
+ "nodemon": "^3.1.10",
143
143
  "npm-run-all": "^4.1.5",
144
- "postcss": "^8.5.2",
145
- "postcss-cli": "^11.0.0",
144
+ "postcss": "^8.5.3",
145
+ "postcss-cli": "^11.0.1",
146
146
  "postcss-combine-duplicated-selectors": "^10.0.3",
147
- "rollup": "^4.34.7",
147
+ "rollup": "^4.40.0",
148
148
  "rollup-plugin-istanbul": "^5.0.0",
149
- "sass-embedded": "^1.85.0",
149
+ "sass-embedded": "^1.87.0",
150
150
  "sass-true": "^8.1.0",
151
- "shelljs": "^0.8.5",
152
- "stylelint": "^16.14.1",
153
- "stylelint-config-twbs-bootstrap": "^15.1.0",
151
+ "shelljs": "^0.9.2",
152
+ "stylelint": "^16.19.0",
153
+ "stylelint-config-twbs-bootstrap": "^16.0.0",
154
154
  "terser": "5.39.0",
155
155
  "vnu-jar": "24.10.17"
156
156
  },
package/scss/_banner.scss CHANGED
@@ -1,7 +1,7 @@
1
1
  $file: "" !default;
2
2
 
3
3
  /*!
4
- * CoreUI #{$file} v5.3.1 (https://coreui.io)
4
+ * CoreUI #{$file} v5.3.2 (https://coreui.io)
5
5
  * Copyright (c) 2025 creativeLabs Łukasz Holeczek
6
6
  * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
7
7
  */
@@ -1,5 +1,6 @@
1
1
  @use "mixins/border-radius" as *;
2
2
  @use "mixins/box-shadow" as *;
3
+ @use "buttons" as *;
3
4
  @use "variables" as *;
4
5
 
5
6
  // Make the div behave like a button
@@ -43,7 +44,7 @@
43
44
  // Prevent double borders when buttons are next to each other
44
45
  > :not(.btn-check:first-child) + .btn,
45
46
  > .btn-group:not(:first-child) {
46
- margin-inline-start: calc(#{$btn-border-width} * -1); // stylelint-disable-line function-disallowed-list
47
+ margin-inline-start: calc(-1 * #{$btn-border-width}); // stylelint-disable-line function-disallowed-list
47
48
  }
48
49
 
49
50
  // Reset rounded corners
@@ -130,7 +131,7 @@
130
131
 
131
132
  > .btn:not(:first-child),
132
133
  > .btn-group:not(:first-child) {
133
- margin-top: calc(#{$btn-border-width} * -1); // stylelint-disable-line function-disallowed-list
134
+ margin-top: calc(-1 * #{$btn-border-width}); // stylelint-disable-line function-disallowed-list
134
135
  }
135
136
 
136
137
  // Reset rounded corners
@@ -1,8 +1,10 @@
1
1
  @use "functions/escape-svg" as *;
2
2
  @use "mixins/clearfix" as *;
3
3
  @use "mixins/color-mode" as *;
4
+ @use "mixins/ltr-rtl" as *;
4
5
  @use "mixins/transition" as *;
5
6
  @use "variables" as *;
7
+ @use "variables-dark" as *;
6
8
 
7
9
  // Notes on the classes:
8
10
  //
@@ -105,6 +107,7 @@
105
107
  color: $carousel-control-color;
106
108
  text-align: center;
107
109
  background: none;
110
+ filter: var(--#{$prefix}carousel-control-icon-filter);
108
111
  border: 0;
109
112
  opacity: $carousel-control-opacity;
110
113
  @include transition($carousel-control-transition);
@@ -138,19 +141,11 @@
138
141
  background-size: 100% 100%;
139
142
  }
140
143
 
141
- /* rtl:options: {
142
- "autoRename": true,
143
- "stringMap":[ {
144
- "name" : "prev-next",
145
- "search" : "prev",
146
- "replace" : "next"
147
- } ]
148
- } */
149
144
  .carousel-control-prev-icon {
150
- background-image: escape-svg($carousel-control-prev-icon-bg);
145
+ @include ltr-rtl-value-only("background-image", escape-svg($carousel-control-prev-icon-bg), escape-svg($carousel-control-next-icon-bg));
151
146
  }
152
147
  .carousel-control-next-icon {
153
- background-image: escape-svg($carousel-control-next-icon-bg);
148
+ @include ltr-rtl-value-only("background-image", escape-svg($carousel-control-next-icon-bg), escape-svg($carousel-control-prev-icon-bg));
154
149
  }
155
150
 
156
151
  // Optional indicator pips/controls
@@ -209,42 +204,31 @@
209
204
  left: (100% - $carousel-caption-width) * .5;
210
205
  padding-top: $carousel-caption-padding-y;
211
206
  padding-bottom: $carousel-caption-padding-y;
212
- color: $carousel-caption-color;
207
+ color: var(--#{$prefix}carousel-caption-color);
213
208
  text-align: center;
214
209
  }
215
210
 
216
211
  // Dark mode carousel
217
212
 
218
213
  @mixin carousel-dark() {
219
- .carousel-control-prev-icon,
220
- .carousel-control-next-icon {
221
- filter: $carousel-dark-control-icon-filter;
222
- }
223
-
224
- .carousel-indicators [data#{$data-infix}target] {
225
- background-color: $carousel-dark-indicator-active-bg;
226
- }
227
-
228
- .carousel-caption {
229
- color: $carousel-dark-caption-color;
230
- }
214
+ --#{$prefix}carousel-indicator-active-bg: #{$carousel-indicator-active-bg-dark};
215
+ --#{$prefix}carousel-caption-color: #{$carousel-caption-color-dark};
216
+ --#{$prefix}carousel-control-icon-filter: #{$carousel-control-icon-filter-dark};
231
217
  }
232
218
 
233
219
  .carousel-dark {
234
220
  @include carousel-dark();
235
221
  }
236
222
 
223
+ :root,
224
+ [data#{$data-infix}theme="light"] {
225
+ --#{$prefix}carousel-indicator-active-bg: #{$carousel-indicator-active-bg};
226
+ --#{$prefix}carousel-caption-color: #{$carousel-caption-color};
227
+ --#{$prefix}carousel-control-icon-filter: #{$carousel-control-icon-filter};
228
+ }
229
+
237
230
  @if $enable-dark-mode {
238
- @include color-mode(dark) {
239
- @if $color-mode-type == "media-query" {
240
- .carousel {
241
- @include carousel-dark();
242
- }
243
- } @else {
244
- .carousel,
245
- &.carousel {
246
- @include carousel-dark();
247
- }
248
- }
231
+ @include color-mode(dark, true) {
232
+ @include carousel-dark();
249
233
  }
250
234
  }
package/scss/_close.scss CHANGED
@@ -2,6 +2,7 @@
2
2
  @use "mixins/border-radius" as *;
3
3
  @use "mixins/color-mode" as *;
4
4
  @use "variables" as *;
5
+ @use "variables-dark" as *;
5
6
 
6
7
  // Transparent background and border properties included for button version.
7
8
  // iOS requires the button element instead of an anchor tag.
@@ -17,7 +18,6 @@
17
18
  --#{$prefix}btn-close-focus-shadow: #{$btn-close-focus-shadow};
18
19
  --#{$prefix}btn-close-focus-opacity: #{$btn-close-focus-opacity};
19
20
  --#{$prefix}btn-close-disabled-opacity: #{$btn-close-disabled-opacity};
20
- --#{$prefix}btn-close-white-filter: #{$btn-close-white-filter};
21
21
  // scss-docs-end close-css-vars
22
22
 
23
23
  box-sizing: content-box;
@@ -26,6 +26,7 @@
26
26
  padding: $btn-close-padding-y $btn-close-padding-x;
27
27
  color: var(--#{$prefix}btn-close-color);
28
28
  background: transparent var(--#{$prefix}btn-close-bg) center / $btn-close-width auto no-repeat; // include transparent for button elements
29
+ filter: var(--#{$prefix}btn-close-filter);
29
30
  border: 0; // for button elements
30
31
  @include border-radius();
31
32
  opacity: var(--#{$prefix}btn-close-opacity);
@@ -52,18 +53,20 @@
52
53
  }
53
54
 
54
55
  @mixin btn-close-white() {
55
- filter: var(--#{$prefix}btn-close-white-filter);
56
+ --#{$prefix}btn-close-filter: #{$btn-close-filter-dark};
56
57
  }
57
58
 
58
- .btn-close[data#{$data-infix}theme="dark"],
59
59
  .btn-close-white {
60
60
  @include btn-close-white();
61
61
  }
62
62
 
63
+ :root,
64
+ [data#{$data-infix}theme="light"] {
65
+ --#{$prefix}btn-close-filter: #{$btn-close-filter};
66
+ }
67
+
63
68
  @if $enable-dark-mode {
64
- @include color-mode(dark) {
65
- .btn-close {
66
- @include btn-close-white();
67
- }
69
+ @include color-mode(dark, true) {
70
+ @include btn-close-white();
68
71
  }
69
72
  }
package/scss/_header.scss CHANGED
@@ -75,7 +75,7 @@
75
75
  .header-divider {
76
76
  flex-basis: calc(100% + (2 * var(--#{$prefix}header-padding-x))); // stylelint-disable-line function-disallowed-list
77
77
  height: 0;
78
- margin: var(--#{$prefix}header-padding-y) calc(var(--#{$prefix}header-padding-x) * -1); // stylelint-disable-line function-disallowed-list
78
+ margin: var(--#{$prefix}header-padding-y) calc(-1 * var(--#{$prefix}header-padding-x)); // stylelint-disable-line function-disallowed-list
79
79
  border-top: var(--#{$prefix}header-divider-border);
80
80
  }
81
81
 
@@ -48,31 +48,6 @@
48
48
  }
49
49
  }
50
50
 
51
- // Interactive list items
52
- //
53
- // Use anchor or button elements instead of `li`s or `div`s to create interactive
54
- // list items. Includes an extra `.active` modifier class for selected items.
55
-
56
- .list-group-item-action {
57
- width: 100%; // For `<button>`s (anchors become 100% by default though)
58
- color: var(--#{$prefix}list-group-action-color);
59
- text-align: inherit; // For `<button>`s (anchors inherit)
60
-
61
- // Hover state
62
- &:hover,
63
- &:focus {
64
- z-index: 1; // Place hover/focus items above their siblings for proper border styling
65
- color: var(--#{$prefix}list-group-action-hover-color);
66
- text-decoration: none;
67
- background-color: var(--#{$prefix}list-group-action-hover-bg);
68
- }
69
-
70
- &:active {
71
- color: var(--#{$prefix}list-group-action-active-color);
72
- background-color: var(--#{$prefix}list-group-action-active-bg);
73
- }
74
- }
75
-
76
51
  // Individual list items
77
52
  //
78
53
  // Use on `li`s or `div`s within the `.list-group` parent.
@@ -120,6 +95,33 @@
120
95
  }
121
96
  }
122
97
 
98
+ // Interactive list items
99
+ //
100
+ // Use anchor or button elements instead of `li`s or `div`s to create interactive
101
+ // list items. Includes an extra `.active` modifier class for selected items.
102
+
103
+ .list-group-item-action {
104
+ width: 100%; // For `<button>`s (anchors become 100% by default though)
105
+ color: var(--#{$prefix}list-group-action-color);
106
+ text-align: inherit; // For `<button>`s (anchors inherit)
107
+
108
+ &:not(.active) {
109
+ // Hover state
110
+ &:hover,
111
+ &:focus {
112
+ z-index: 1; // Place hover/focus items above their siblings for proper border styling
113
+ color: var(--#{$prefix}list-group-action-hover-color);
114
+ text-decoration: none;
115
+ background-color: var(--#{$prefix}list-group-action-hover-bg);
116
+ }
117
+
118
+ &:active {
119
+ color: var(--#{$prefix}list-group-action-active-color);
120
+ background-color: var(--#{$prefix}list-group-action-active-bg);
121
+ }
122
+ }
123
+ }
124
+
123
125
  // Horizontal
124
126
  //
125
127
  // Change the layout of list group items from vertical (default) to horizontal.
package/scss/_modal.scss CHANGED
@@ -139,7 +139,8 @@
139
139
 
140
140
  .btn-close {
141
141
  padding: calc(var(--#{$prefix}modal-header-padding-y) * .5) calc(var(--#{$prefix}modal-header-padding-x) * .5);
142
- margin-inline: auto calc(-.5 * var(--#{$prefix}modal-header-padding-x));
142
+ margin-inline-start: auto;
143
+ margin-inline-end: calc(-.5 * var(--#{$prefix}modal-header-padding-x));
143
144
  margin-top: calc(-.5 * var(--#{$prefix}modal-header-padding-y));
144
145
  margin-bottom: calc(-.5 * var(--#{$prefix}modal-header-padding-y));
145
146
  }
@@ -134,7 +134,8 @@
134
134
 
135
135
  .btn-close {
136
136
  padding: calc(var(--#{$prefix}offcanvas-padding-y) * .5) calc(var(--#{$prefix}offcanvas-padding-x) * .5);
137
- margin-inline: auto calc(-.5 * var(--#{$prefix}offcanvas-padding-x));
137
+ margin-inline-start: auto;
138
+ margin-inline-end: calc(-.5 * var(--#{$prefix}offcanvas-padding-x));
138
139
  margin-top: calc(-.5 * var(--#{$prefix}offcanvas-padding-y));
139
140
  margin-bottom: calc(-.5 * var(--#{$prefix}offcanvas-padding-y));
140
141
  }
@@ -83,7 +83,7 @@
83
83
  margin-inline-start: $pagination-margin-start;
84
84
  }
85
85
 
86
- @if $pagination-margin-start == calc(#{$pagination-border-width} * -1) {
86
+ @if $pagination-margin-start == calc(-1 * #{$pagination-border-width}) {
87
87
  &:first-child {
88
88
  .page-link {
89
89
  @include border-start-radius(var(--#{$prefix}pagination-border-radius));
@@ -10,7 +10,7 @@
10
10
  // scss-docs-start progress-keyframes
11
11
  @if $enable-transitions {
12
12
  @keyframes progress-bar-stripes {
13
- 0% { background-position-x: $progress-height; }
13
+ 0% { background-position-x: var(--#{$prefix}progress-height); }
14
14
  }
15
15
  }
16
16
  // scss-docs-end progress-keyframes
@@ -146,4 +146,20 @@ $accordion-icon-active-color-dark: $primary-text-emphasis-dark !default;
146
146
 
147
147
  $accordion-button-icon-dark: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$accordion-icon-color-dark}'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/></svg>") !default;
148
148
  $accordion-button-active-icon-dark: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$accordion-icon-active-color-dark}'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/></svg>") !default;
149
+
150
+
151
+ //
152
+ // Carousel
153
+ //
154
+
155
+ $carousel-indicator-active-bg-dark: $carousel-dark-indicator-active-bg !default;
156
+ $carousel-caption-color-dark: $carousel-dark-caption-color !default;
157
+ $carousel-control-icon-filter-dark: $carousel-dark-control-icon-filter !default;
158
+
159
+
160
+ //
161
+ // Close button
162
+ //
163
+
164
+ $btn-close-filter-dark: $btn-close-white-filter !default;
149
165
  // scss-docs-end sass-dark-mode-vars
@@ -87,7 +87,7 @@ $colors: (
87
87
  ) !default;
88
88
  // scss-docs-end colors-map
89
89
 
90
- // 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.
90
+ // The contrast ratio to reach against white, to determine if color changes from "light" to "dark". Acceptable values for WCAG 2.2 are 3, 4.5 and 7.
91
91
  // See https://www.w3.org/TR/WCAG/#contrast-minimum
92
92
  $min-contrast-ratio: 4.5 !default;
93
93
 
@@ -1379,7 +1379,7 @@ $pagination-color: var(--#{$prefix}link-color) !default;
1379
1379
  $pagination-bg: var(--#{$prefix}body-bg) !default;
1380
1380
  $pagination-border-radius: var(--#{$prefix}border-radius) !default;
1381
1381
  $pagination-border-width: var(--#{$prefix}border-width) !default;
1382
- $pagination-margin-start: calc(#{$pagination-border-width} * -1) !default; // stylelint-disable-line function-disallowed-list
1382
+ $pagination-margin-start: calc(-1 * #{$pagination-border-width}) !default; // stylelint-disable-line function-disallowed-list
1383
1383
  $pagination-border-color: var(--#{$prefix}border-color) !default;
1384
1384
 
1385
1385
  $pagination-focus-color: var(--#{$prefix}link-hover-color) !default;
@@ -1588,7 +1588,7 @@ $modal-dialog-margin-y-sm-up: 1.75rem !default;
1588
1588
 
1589
1589
  $modal-title-line-height: $line-height-base !default;
1590
1590
 
1591
- $modal-content-color: null !default;
1591
+ $modal-content-color: var(--#{$prefix}body-color) !default;
1592
1592
  $modal-content-bg: var(--#{$prefix}body-bg) !default;
1593
1593
  $modal-content-border-color: var(--#{$prefix}border-color-translucent) !default;
1594
1594
  $modal-content-border-width: var(--#{$prefix}border-width) !default;
@@ -1854,6 +1854,7 @@ $carousel-control-width: 15% !default;
1854
1854
  $carousel-control-opacity: .5 !default;
1855
1855
  $carousel-control-hover-opacity: .9 !default;
1856
1856
  $carousel-control-transition: opacity .15s ease !default;
1857
+ $carousel-control-icon-filter: null !default;
1857
1858
 
1858
1859
  $carousel-indicator-width: 30px !default;
1859
1860
  $carousel-indicator-height: 3px !default;
@@ -1879,9 +1880,9 @@ $carousel-transition: transform $carousel-transition-duration eas
1879
1880
  // scss-docs-end carousel-variables
1880
1881
 
1881
1882
  // scss-docs-start carousel-dark-variables
1882
- $carousel-dark-indicator-active-bg: $black !default;
1883
- $carousel-dark-caption-color: $black !default;
1884
- $carousel-dark-control-icon-filter: invert(1) grayscale(100) !default;
1883
+ $carousel-dark-indicator-active-bg: $black !default; // Deprecated in v5.3.2
1884
+ $carousel-dark-caption-color: $black !default; // Deprecated in v5.3.2
1885
+ $carousel-dark-control-icon-filter: invert(1) grayscale(100) !default; // Deprecated in v5.3.2
1885
1886
  // scss-docs-end carousel-dark-variables
1886
1887
 
1887
1888
  // scss-docs-start sidebar-variables
@@ -2031,7 +2032,8 @@ $btn-close-opacity: .5 !default;
2031
2032
  $btn-close-hover-opacity: .75 !default;
2032
2033
  $btn-close-focus-opacity: 1 !default;
2033
2034
  $btn-close-disabled-opacity: .25 !default;
2034
- $btn-close-white-filter: invert(1) grayscale(100%) brightness(200%) !default;
2035
+ $btn-close-filter: null !default;
2036
+ $btn-close-white-filter: invert(1) grayscale(100%) brightness(200%) !default; // Deprecated in v5.3.2
2035
2037
  // scss-docs-end close-variables
2036
2038
 
2037
2039
 
@@ -53,6 +53,7 @@
53
53
  }
54
54
 
55
55
  > .form-select {
56
+ padding-inline-start: $form-floating-padding-x;
56
57
  padding-top: $form-floating-input-padding-t;
57
58
  padding-bottom: $form-floating-input-padding-b;
58
59
  }
@@ -127,7 +127,7 @@
127
127
  }
128
128
 
129
129
  > :not(:first-child):not(.dropdown-menu)#{$validation-messages} {
130
- margin-inline-start: calc(#{$input-border-width} * -1); // stylelint-disable-line function-disallowed-list
130
+ margin-inline-start: calc(-1 * #{$input-border-width}); // stylelint-disable-line function-disallowed-list
131
131
  @include border-start-radius(0);
132
132
  }
133
133
 
@@ -259,7 +259,7 @@
259
259
  }
260
260
 
261
261
  .nav-icon {
262
- margin-inline-start: calc((var(--#{$prefix}sidebar-nav-link-icon-width) + var(--#{$prefix}sidebar-nav-link-icon-margin)) * -1); // stylelint-disable-line function-disallowed-list
262
+ margin-inline-start: calc(-1 * (var(--#{$prefix}sidebar-nav-link-icon-width) + var(--#{$prefix}sidebar-nav-link-icon-margin))); // stylelint-disable-line function-disallowed-list
263
263
  }
264
264
  }
265
265