@coreui/coreui 4.2.6 → 4.3.0-beta.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 (194) hide show
  1. package/LICENSE +5 -6
  2. package/README.md +2 -2
  3. package/dist/css/coreui-grid.css +36 -83
  4. package/dist/css/coreui-grid.css.map +1 -1
  5. package/dist/css/coreui-grid.min.css +4 -6
  6. package/dist/css/coreui-grid.min.css.map +1 -1
  7. package/dist/css/coreui-grid.rtl.css +40 -89
  8. package/dist/css/coreui-grid.rtl.css.map +1 -1
  9. package/dist/css/coreui-grid.rtl.min.css +8 -12
  10. package/dist/css/coreui-grid.rtl.min.css.map +1 -1
  11. package/dist/css/coreui-reboot.css +176 -48
  12. package/dist/css/coreui-reboot.css.map +1 -1
  13. package/dist/css/coreui-reboot.min.css +4 -6
  14. package/dist/css/coreui-reboot.min.css.map +1 -1
  15. package/dist/css/coreui-reboot.rtl.css +180 -54
  16. package/dist/css/coreui-reboot.rtl.css.map +1 -1
  17. package/dist/css/coreui-reboot.rtl.min.css +8 -12
  18. package/dist/css/coreui-reboot.rtl.min.css.map +1 -1
  19. package/dist/css/coreui-utilities.css +1328 -95
  20. package/dist/css/coreui-utilities.css.map +1 -1
  21. package/dist/css/coreui-utilities.min.css +4 -6
  22. package/dist/css/coreui-utilities.min.css.map +1 -1
  23. package/dist/css/coreui-utilities.rtl.css +1237 -101
  24. package/dist/css/coreui-utilities.rtl.css.map +1 -1
  25. package/dist/css/coreui-utilities.rtl.min.css +8 -12
  26. package/dist/css/coreui-utilities.rtl.min.css.map +1 -1
  27. package/dist/css/coreui.css +2385 -885
  28. package/dist/css/coreui.css.map +1 -1
  29. package/dist/css/coreui.min.css +4 -6
  30. package/dist/css/coreui.min.css.map +1 -1
  31. package/dist/css/coreui.rtl.css +2299 -905
  32. package/dist/css/coreui.rtl.css.map +1 -1
  33. package/dist/css/coreui.rtl.min.css +8 -12
  34. package/dist/css/coreui.rtl.min.css.map +1 -1
  35. package/dist/js/coreui.bundle.js +317 -304
  36. package/dist/js/coreui.bundle.js.map +1 -1
  37. package/dist/js/coreui.bundle.min.js +4 -4
  38. package/dist/js/coreui.bundle.min.js.map +1 -1
  39. package/dist/js/coreui.esm.js +277 -258
  40. package/dist/js/coreui.esm.js.map +1 -1
  41. package/dist/js/coreui.esm.min.js +4 -4
  42. package/dist/js/coreui.esm.min.js.map +1 -1
  43. package/dist/js/coreui.js +280 -260
  44. package/dist/js/coreui.js.map +1 -1
  45. package/dist/js/coreui.min.js +4 -4
  46. package/dist/js/coreui.min.js.map +1 -1
  47. package/js/dist/alert.js +10 -9
  48. package/js/dist/alert.js.map +1 -1
  49. package/js/dist/base-component.js +11 -10
  50. package/js/dist/base-component.js.map +1 -1
  51. package/js/dist/button.js +10 -9
  52. package/js/dist/button.js.map +1 -1
  53. package/js/dist/carousel.js +11 -10
  54. package/js/dist/carousel.js.map +1 -1
  55. package/js/dist/collapse.js +10 -9
  56. package/js/dist/collapse.js.map +1 -1
  57. package/js/dist/dom/data.js +5 -5
  58. package/js/dist/dom/data.js.map +1 -1
  59. package/js/dist/dom/event-handler.js +9 -9
  60. package/js/dist/dom/event-handler.js.map +1 -1
  61. package/js/dist/dom/manipulator.js +5 -5
  62. package/js/dist/dom/manipulator.js.map +1 -1
  63. package/js/dist/dom/selector-engine.js +6 -5
  64. package/js/dist/dom/selector-engine.js.map +1 -1
  65. package/js/dist/dropdown.js +13 -12
  66. package/js/dist/dropdown.js.map +1 -1
  67. package/js/dist/modal.js +12 -13
  68. package/js/dist/modal.js.map +1 -1
  69. package/js/dist/navigation.js +10 -9
  70. package/js/dist/navigation.js.map +1 -1
  71. package/js/dist/offcanvas.js +13 -12
  72. package/js/dist/offcanvas.js.map +1 -1
  73. package/js/dist/popover.js +10 -9
  74. package/js/dist/popover.js.map +1 -1
  75. package/js/dist/scrollspy.js +16 -15
  76. package/js/dist/scrollspy.js.map +1 -1
  77. package/js/dist/sidebar.js +10 -9
  78. package/js/dist/sidebar.js.map +1 -1
  79. package/js/dist/tab.js +13 -12
  80. package/js/dist/tab.js.map +1 -1
  81. package/js/dist/toast.js +10 -9
  82. package/js/dist/toast.js.map +1 -1
  83. package/js/dist/tooltip.js +14 -13
  84. package/js/dist/tooltip.js.map +1 -1
  85. package/js/dist/util/backdrop.js +10 -9
  86. package/js/dist/util/backdrop.js.map +1 -1
  87. package/js/dist/util/component-functions.js +10 -9
  88. package/js/dist/util/component-functions.js.map +1 -1
  89. package/js/dist/util/config.js +10 -9
  90. package/js/dist/util/config.js.map +1 -1
  91. package/js/dist/util/focustrap.js +6 -5
  92. package/js/dist/util/focustrap.js.map +1 -1
  93. package/js/dist/util/index.js +5 -5
  94. package/js/dist/util/index.js.map +1 -1
  95. package/js/dist/util/sanitizer.js +30 -32
  96. package/js/dist/util/sanitizer.js.map +1 -1
  97. package/js/dist/util/scrollbar.js +10 -9
  98. package/js/dist/util/scrollbar.js.map +1 -1
  99. package/js/dist/util/swipe.js +10 -9
  100. package/js/dist/util/swipe.js.map +1 -1
  101. package/js/dist/util/template-factory.js +10 -9
  102. package/js/dist/util/template-factory.js.map +1 -1
  103. package/js/index.esm.js +21 -0
  104. package/js/index.umd.js +38 -0
  105. package/js/src/alert.js +4 -4
  106. package/js/src/base-component.js +4 -4
  107. package/js/src/button.js +4 -4
  108. package/js/src/carousel.js +7 -7
  109. package/js/src/collapse.js +5 -5
  110. package/js/src/dom/data.js +2 -2
  111. package/js/src/dom/event-handler.js +4 -5
  112. package/js/src/dom/manipulator.js +2 -2
  113. package/js/src/dom/selector-engine.js +2 -2
  114. package/js/src/dropdown.js +9 -9
  115. package/js/src/modal.js +9 -10
  116. package/js/src/navigation.js +4 -4
  117. package/js/src/offcanvas.js +11 -11
  118. package/js/src/popover.js +3 -3
  119. package/js/src/scrollspy.js +8 -8
  120. package/js/src/sidebar.js +5 -5
  121. package/js/src/tab.js +7 -7
  122. package/js/src/toast.js +4 -4
  123. package/js/src/tooltip.js +9 -9
  124. package/js/src/util/backdrop.js +3 -3
  125. package/js/src/util/component-functions.js +3 -3
  126. package/js/src/util/config.js +3 -3
  127. package/js/src/util/focustrap.js +2 -2
  128. package/js/src/util/index.js +2 -2
  129. package/js/src/util/sanitizer.js +40 -43
  130. package/js/src/util/scrollbar.js +3 -3
  131. package/js/src/util/swipe.js +3 -3
  132. package/js/src/util/template-factory.js +4 -4
  133. package/package.json +52 -43
  134. package/scss/_accordion.scss +9 -1
  135. package/scss/_alert.scss +6 -10
  136. package/scss/_badge.scss +2 -1
  137. package/scss/_button-group.scss +4 -4
  138. package/scss/_buttons.scss +23 -1
  139. package/scss/_card.scss +8 -3
  140. package/scss/_carousel.scss +24 -8
  141. package/scss/_close.scss +32 -9
  142. package/scss/_dropdown.scss +3 -3
  143. package/scss/_functions.scss +6 -22
  144. package/scss/_grid.scss +8 -0
  145. package/scss/_helpers.scss +2 -0
  146. package/scss/_list-group.scss +11 -2
  147. package/scss/_maps.scss +125 -0
  148. package/scss/_mixins.scss +1 -4
  149. package/scss/_nav.scss +7 -0
  150. package/scss/_navbar.scss +18 -4
  151. package/scss/_offcanvas.scss +4 -2
  152. package/scss/_pagination.scss +1 -1
  153. package/scss/_progress.scss +10 -1
  154. package/scss/_reboot.scss +2 -3
  155. package/scss/_root.scss +144 -16
  156. package/scss/_tables.scss +18 -15
  157. package/scss/_tooltip.scss +5 -6
  158. package/scss/_type.scss +3 -1
  159. package/scss/_utilities.scss +182 -23
  160. package/scss/_variables-dark.scss +169 -0
  161. package/scss/_variables.scss +361 -344
  162. package/scss/coreui-grid.rtl.scss +2 -7
  163. package/scss/coreui-grid.scss +3 -10
  164. package/scss/coreui-reboot.rtl.scss +2 -7
  165. package/scss/coreui-reboot.scss +4 -7
  166. package/scss/coreui-utilities.rtl.scss +2 -7
  167. package/scss/coreui-utilities.scss +3 -7
  168. package/scss/coreui.rtl.scss +2 -7
  169. package/scss/coreui.scss +3 -7
  170. package/scss/forms/_floating-labels.scss +23 -4
  171. package/scss/forms/_form-check.scss +22 -24
  172. package/scss/forms/_form-control.scss +33 -13
  173. package/scss/forms/_form-range.scss +8 -8
  174. package/scss/forms/_form-select.scss +19 -10
  175. package/scss/forms/_form-text.scss +1 -1
  176. package/scss/forms/_input-group.scss +1 -1
  177. package/scss/forms/_labels.scss +2 -2
  178. package/scss/helpers/_color-bg.scss +12 -2
  179. package/scss/helpers/_colored-links.scss +20 -2
  180. package/scss/helpers/_focus-ring.scss +5 -0
  181. package/scss/helpers/_icon-link.scss +25 -0
  182. package/scss/mixins/_alert.scss +4 -1
  183. package/scss/mixins/_banner.scss +7 -0
  184. package/scss/mixins/_breakpoints.scss +0 -13
  185. package/scss/mixins/_caret.scss +31 -26
  186. package/scss/mixins/_color-mode.scss +21 -0
  187. package/scss/mixins/_forms.scss +8 -7
  188. package/scss/mixins/_grid.scss +1 -1
  189. package/scss/mixins/_list-group.scss +3 -0
  190. package/scss/mixins/_utilities.scss +35 -15
  191. package/scss/mixins/_visually-hidden.scss +5 -1
  192. package/scss/sidebar/_sidebar.scss +10 -2
  193. package/scss/vendor/_rfs.scss +24 -30
  194. package/scss/mixins/_css-vars.scss +0 -87
@@ -0,0 +1,25 @@
1
+ .icon-link {
2
+ display: inline-flex;
3
+ gap: $icon-link-gap;
4
+ align-items: center;
5
+ text-decoration-color: rgba(var(--#{$prefix}link-color-rgb), var(--#{$prefix}link-opacity, .5));
6
+ text-underline-offset: $icon-link-underline-offset;
7
+ backface-visibility: hidden;
8
+
9
+ > .bi {
10
+ flex-shrink: 0;
11
+ width: $icon-link-icon-size;
12
+ height: $icon-link-icon-size;
13
+ fill: currentcolor;
14
+ @include transition($icon-link-icon-transition);
15
+ }
16
+ }
17
+
18
+ .icon-link-hover {
19
+ &:hover,
20
+ &:focus-visible {
21
+ > .bi {
22
+ transform: var(--#{$prefix}icon-link-transform, $icon-link-icon-transform);
23
+ }
24
+ }
25
+ }
@@ -1,15 +1,18 @@
1
+ @include deprecate("`alert-variant()`", "v4.3.0", "v6.0.0");
2
+
1
3
  // scss-docs-start alert-variant-mixin
2
4
  @mixin alert-variant($background, $border, $color) {
3
5
  --#{$prefix}alert-color: #{$color};
4
6
  --#{$prefix}alert-bg: #{$background};
5
7
  --#{$prefix}alert-border-color: #{$border};
8
+ --#{$prefix}alert-link-color: #{shade-color($color, 20%)};
6
9
 
7
10
  @if $enable-gradients {
8
11
  background-image: var(--#{$prefix}gradient);
9
12
  }
10
13
 
11
14
  .alert-link {
12
- color: shade-color($color, 20%);
15
+ color: var(--#{$prefix}alert-link-color);
13
16
  }
14
17
  }
15
18
  // scss-docs-end alert-variant-mixin
@@ -0,0 +1,7 @@
1
+ @mixin bsBanner($file) {
2
+ /*!
3
+ * CoreUI #{$file} v4.3.0-beta.0 (https://coreui.io)
4
+ * Copyright (c) 2023 creativeLabs Łukasz Holeczek
5
+ * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
6
+ */
7
+ }
@@ -22,19 +22,6 @@
22
22
  @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);
23
23
  }
24
24
 
25
- // Name of the previous breakpoint, or null for the first breakpoint.
26
- //
27
- // >> breakpoint-before(lg)
28
- // md
29
- // >> breakpoint-next(lg, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
30
- // md
31
- // >> breakpoint-next(lg, $breakpoint-names: (xs sm md lg xl))
32
- // md
33
- @function breakpoint-before($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {
34
- $n: index($breakpoint-names, $name);
35
- @return if($n != null and $n < length($breakpoint-names), nth($breakpoint-names, $n - 1), null);
36
- }
37
-
38
25
  // Minimum breakpoint width. Null for the smallest (first) breakpoint.
39
26
  //
40
27
  // >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))
@@ -1,44 +1,49 @@
1
1
  // scss-docs-start caret-mixins
2
- @mixin caret-down {
3
- border-top: $caret-width solid;
4
- border-right: $caret-width solid transparent;
2
+ @mixin caret-down($width: $caret-width) {
3
+ border-top: $width solid;
4
+ border-right: $width solid transparent;
5
5
  border-bottom: 0;
6
- border-left: $caret-width solid transparent;
6
+ border-left: $width solid transparent;
7
7
  }
8
8
 
9
- @mixin caret-up {
9
+ @mixin caret-up($width: $caret-width) {
10
10
  border-top: 0;
11
- border-right: $caret-width solid transparent;
12
- border-bottom: $caret-width solid;
13
- border-left: $caret-width solid transparent;
11
+ border-right: $width solid transparent;
12
+ border-bottom: $width solid;
13
+ border-left: $width solid transparent;
14
14
  }
15
15
 
16
- @mixin caret-end {
17
- border-top: $caret-width solid transparent;
16
+ @mixin caret-end($width: $caret-width) {
17
+ border-top: $width solid transparent;
18
18
  border-right: 0;
19
- border-bottom: $caret-width solid transparent;
20
- border-left: $caret-width solid;
19
+ border-bottom: $width solid transparent;
20
+ border-left: $width solid;
21
21
  }
22
22
 
23
- @mixin caret-start {
24
- border-top: $caret-width solid transparent;
25
- border-right: $caret-width solid;
26
- border-bottom: $caret-width solid transparent;
23
+ @mixin caret-start($width: $caret-width) {
24
+ border-top: $width solid transparent;
25
+ border-right: $width solid;
26
+ border-bottom: $width solid transparent;
27
27
  }
28
28
 
29
- @mixin caret($direction: down) {
29
+ @mixin caret(
30
+ $direction: down,
31
+ $width: $caret-width,
32
+ $spacing: $caret-spacing,
33
+ $vertical-align: $caret-vertical-align
34
+ ) {
30
35
  @if $enable-caret {
31
36
  &::after {
32
37
  display: inline-block;
33
- @include ltr-rtl("margin-left", $caret-spacing);
34
- vertical-align: $caret-vertical-align;
38
+ margin-left: $spacing;
39
+ vertical-align: $vertical-align;
35
40
  content: "";
36
41
  @if $direction == down {
37
- @include caret-down();
42
+ @include caret-down($width);
38
43
  } @else if $direction == up {
39
- @include caret-up();
44
+ @include caret-up($width);
40
45
  } @else if $direction == end {
41
- @include caret-end();
46
+ @include caret-end($width);
42
47
  }
43
48
  }
44
49
 
@@ -49,15 +54,15 @@
49
54
 
50
55
  &::before {
51
56
  display: inline-block;
52
- @include ltr-rtl("margin-right", $caret-spacing);
53
- vertical-align: $caret-vertical-align;
57
+ margin-right: $spacing;
58
+ vertical-align: $vertical-align;
54
59
  content: "";
55
- @include caret-start();
60
+ @include caret-start($width);
56
61
  }
57
62
  }
58
63
 
59
64
  &:empty::after {
60
- @include ltr-rtl("margin-left", 0);
65
+ margin-left: 0;
61
66
  }
62
67
  }
63
68
  }
@@ -0,0 +1,21 @@
1
+ // scss-docs-start color-mode-mixin
2
+ @mixin color-mode($mode: light, $root: false) {
3
+ @if $color-mode-type == "media-query" {
4
+ @if $root == true {
5
+ @media (prefers-color-scheme: $mode) {
6
+ :root {
7
+ @content;
8
+ }
9
+ }
10
+ } @else {
11
+ @media (prefers-color-scheme: $mode) {
12
+ @content;
13
+ }
14
+ }
15
+ } @else {
16
+ [data-coreui-theme="#{$mode}"] {
17
+ @content;
18
+ }
19
+ }
20
+ }
21
+ // scss-docs-end color-mode-mixin
@@ -21,7 +21,8 @@
21
21
  $icon,
22
22
  $tooltip-color: color-contrast($color),
23
23
  $tooltip-bg-color: rgba($color, $form-feedback-tooltip-opacity),
24
- $focus-box-shadow: 0 0 $input-btn-focus-blur $input-focus-width rgba($color, $input-btn-focus-color-opacity)
24
+ $focus-box-shadow: 0 0 $input-btn-focus-blur $input-focus-width rgba($color, $input-btn-focus-color-opacity),
25
+ $border-color: $color
25
26
  ) {
26
27
  .#{$state}-feedback {
27
28
  display: none;
@@ -56,7 +57,7 @@
56
57
 
57
58
  .form-control {
58
59
  @include form-validation-state-selector($state) {
59
- border-color: $color;
60
+ border-color: $border-color;
60
61
 
61
62
  @if $enable-validation-icons {
62
63
  @include ltr-rtl("padding-right", $input-height-inner);
@@ -67,7 +68,7 @@
67
68
  }
68
69
 
69
70
  &:focus {
70
- border-color: $color;
71
+ border-color: $border-color;
71
72
  box-shadow: $focus-box-shadow;
72
73
  }
73
74
  }
@@ -85,20 +86,20 @@
85
86
 
86
87
  .form-select {
87
88
  @include form-validation-state-selector($state) {
88
- border-color: $color;
89
+ border-color: $border-color;
89
90
 
90
91
  @if $enable-validation-icons {
91
92
  &:not([multiple]):not([size]),
92
93
  &:not([multiple])[size="1"] {
94
+ --#{$prefix}form-select-bg-icon: #{escape-svg($icon)};
93
95
  @include ltr-rtl("padding-right", $form-select-feedback-icon-padding-end);
94
- background-image: escape-svg($form-select-indicator), escape-svg($icon);
95
96
  @include ltr-rtl-value-only("background-position", #{$form-select-bg-position, $form-select-feedback-icon-position});
96
97
  background-size: $form-select-bg-size, $form-select-feedback-icon-size;
97
98
  }
98
99
  }
99
100
 
100
101
  &:focus {
101
- border-color: $color;
102
+ border-color: $border-color;
102
103
  box-shadow: $focus-box-shadow;
103
104
  }
104
105
  }
@@ -114,7 +115,7 @@
114
115
 
115
116
  .form-check-input {
116
117
  @include form-validation-state-selector($state) {
117
- border-color: $color;
118
+ border-color: $border-color;
118
119
 
119
120
  &:checked {
120
121
  background-color: $color;
@@ -51,7 +51,7 @@
51
51
  // Row columns
52
52
  //
53
53
  // Specify on a parent element(e.g., .row) to force immediate children into NN
54
- // numberof columns. Supports wrapping to new lines, but does not do a Masonry
54
+ // number of columns. Supports wrapping to new lines, but does not do a Masonry
55
55
  // style grid.
56
56
  @mixin row-cols($count) {
57
57
  > * {
@@ -1,4 +1,7 @@
1
+ @include deprecate("`list-group-item-variant()`", "v4.3.0", "v6.0.0");
2
+
1
3
  // List Groups
4
+
2
5
  // scss-docs-start list-group-mixin
3
6
  @mixin list-group-item-variant($state, $variant) {
4
7
  $background: map-get($variant, "bg");
@@ -1,6 +1,6 @@
1
1
  // Utility generator
2
2
  // Used to generate utilities & print utilities
3
- @mixin generate-utility($utility, $infix, $is-rfs-media-query: false) {
3
+ @mixin generate-utility($utility, $infix: "", $is-rfs-media-query: false) {
4
4
  $values: map-get($utility, values);
5
5
 
6
6
  // If the values are a list or string, convert it into a map
@@ -31,9 +31,6 @@
31
31
  // Don't prefix if value key is null (e.g. with shadow class)
32
32
  $property-class-modifier: if($key, if($property-class == "" and $infix == "", "", "-") + $key, "");
33
33
 
34
- // Generate RTL version
35
- $generate-rtl: if(map-has-key($utility, rtl), map-get($utility, rtl), false);
36
-
37
34
  @if map-get($utility, rfs) {
38
35
  // Inside the media query
39
36
  @if $is-rfs-media-query {
@@ -48,6 +45,7 @@
48
45
  }
49
46
 
50
47
  $is-css-var: map-get($utility, css-var);
48
+ $is-dark-mode: map-get($utility, dark-mode);
51
49
  $is-local-vars: map-get($utility, local-vars);
52
50
  $is-rtl: map-get($utility, rtl);
53
51
 
@@ -57,8 +55,15 @@
57
55
  }
58
56
 
59
57
  @if $is-css-var {
60
- .#{$property-class + $infix + $property-class-modifier} {
61
- --#{$prefix}#{$css-variable-name}: #{$value};
58
+ @if $enable-dark-mode and $is-dark-mode {
59
+ #{theme-prefix("dark", "#{$property-class + $infix + $property-class-modifier}")},
60
+ .#{$property-class + $infix + $property-class-modifier} {
61
+ --#{$prefix}#{$css-variable-name}: #{$value};
62
+ }
63
+ } @else {
64
+ .#{$property-class + $infix + $property-class-modifier} {
65
+ --#{$prefix}#{$css-variable-name}: #{$value};
66
+ }
62
67
  }
63
68
 
64
69
  @each $pseudo in $state {
@@ -67,19 +72,34 @@
67
72
  }
68
73
  }
69
74
  } @else {
70
- .#{$property-class + $infix + $property-class-modifier} {
71
- @each $property in $properties {
72
- @if $is-local-vars {
73
- @each $local-var, $variable in $is-local-vars {
74
- --#{$prefix}#{$local-var}: #{$variable};
75
+ @if $enable-dark-mode and $is-dark-mode {
76
+ #{theme-prefix("dark", "#{$property-class + $infix + $property-class-modifier}")},
77
+ .#{$property-class + $infix + $property-class-modifier} {
78
+ @each $property in $properties {
79
+ @if $is-local-vars {
80
+ @each $local-var, $variable in $is-local-vars {
81
+ --#{$prefix}#{$local-var}: #{$variable};
82
+ }
75
83
  }
76
- }
77
- @if $generate-rtl == true {
78
- @include ltr-rtl($property, $value, null, null, if($enable-important-utilities, !important, null));
79
- } @else {
80
84
  #{$property}: $value if($enable-important-utilities, !important, null);
81
85
  }
82
86
  }
87
+ } @else {
88
+ .#{$property-class + $infix + $property-class-modifier} {
89
+ @each $property in $properties {
90
+ @if $is-local-vars {
91
+ @each $local-var, $variable in $is-local-vars {
92
+ --#{$prefix}#{$local-var}: #{$variable};
93
+ }
94
+ }
95
+ @if $is-rtl == true {
96
+ @include ltr-rtl($property, $value, null, null, if($enable-important-utilities, !important, null));
97
+ } @else {
98
+ #{$property}: $value if($enable-important-utilities, !important, null);
99
+ }
100
+
101
+ }
102
+ }
83
103
  }
84
104
 
85
105
  @each $pseudo in $state {
@@ -6,7 +6,6 @@
6
6
  // See: https://kittygiraudel.com/2016/10/13/css-hide-and-seek/
7
7
 
8
8
  @mixin visually-hidden() {
9
- position: absolute !important;
10
9
  width: 1px !important;
11
10
  height: 1px !important;
12
11
  padding: 0 !important;
@@ -15,6 +14,11 @@
15
14
  clip: rect(0, 0, 0, 0) !important;
16
15
  white-space: nowrap !important;
17
16
  border: 0 !important;
17
+
18
+ // Fix for positioned table caption that could become anonymous cells
19
+ &:not(caption) {
20
+ position: absolute !important;
21
+ }
18
22
  }
19
23
 
20
24
  // Use to only display content when it's focused, or one of its child elements is focused
@@ -25,9 +25,7 @@
25
25
  --#{$prefix}sidebar-toggler-indicator-height: #{$sidebar-toggler-indicator-height};
26
26
  --#{$prefix}sidebar-toggler-hover-bg: #{$sidebar-toggler-hover-bg};
27
27
  --#{$prefix}sidebar-toggler-indicator-hover: #{escape-svg($sidebar-toggler-indicator-hover-icon)};
28
-
29
28
  --#{$prefix}sidebar-narrow-width: #{$sidebar-narrow-width};
30
-
31
29
  --#{$prefix}sidebar-nav-title-padding-x: #{$sidebar-nav-title-padding-x};
32
30
  --#{$prefix}sidebar-nav-title-padding-y: #{$sidebar-nav-title-padding-y};
33
31
  --#{$prefix}sidebar-nav-title-margin-top: #{$sidebar-nav-title-margin-top};
@@ -319,3 +317,13 @@
319
317
  @include overlay-backdrop(var(--#{$prefix}backdrop-zindex), var(--#{$prefix}backdrop-bg), var(--#{$prefix}backdrop-opacity));
320
318
  }
321
319
  }
320
+
321
+ @if $enable-dark-mode {
322
+ @include color-mode(dark) {
323
+ .sidebar {
324
+ --#{$prefix}sidebar-bg: #{$sidebar-bg-dark};
325
+ --#{$prefix}sidebar-border-width: #{$sidebar-border-width-dark};
326
+ --#{$prefix}sidebar-border-color: #{$sidebar-border-color-dark};
327
+ }
328
+ }
329
+ }
@@ -1,4 +1,4 @@
1
- // stylelint-disable property-blacklist, scss/dollar-variable-default
1
+ // stylelint-disable scss/dimension-no-non-numeric-values
2
2
 
3
3
  // SCSS RFS mixin
4
4
  //
@@ -154,8 +154,7 @@ $rfs-mq-property-height: if($rfs-mode == max-media-query, max-height, min-height
154
154
  &.enable-rfs {
155
155
  @content;
156
156
  }
157
- }
158
- @else {
157
+ } @else {
159
158
  @content;
160
159
  }
161
160
  }
@@ -168,7 +167,7 @@ $rfs-mq-property-height: if($rfs-mode == max-media-query, max-height, min-height
168
167
  @content;
169
168
  }
170
169
 
171
- @include _rfs-media-query {
170
+ @include _rfs-media-query () {
172
171
  .enable-rfs &,
173
172
  &.enable-rfs {
174
173
  @content;
@@ -182,7 +181,7 @@ $rfs-mq-property-height: if($rfs-mode == max-media-query, max-height, min-height
182
181
  @content;
183
182
  }
184
183
  }
185
- @include _rfs-media-query {
184
+ @include _rfs-media-query () {
186
185
  @content;
187
186
  }
188
187
  }
@@ -193,12 +192,12 @@ $rfs-mq-property-height: if($rfs-mode == max-media-query, max-height, min-height
193
192
  // Convert to list
194
193
  $values: if(type-of($values) != list, ($values,), $values);
195
194
 
196
- $val: '';
195
+ $val: "";
197
196
 
198
197
  // Loop over each value and calculate value
199
198
  @each $value in $values {
200
199
  @if $value == 0 {
201
- $val: $val + ' 0';
200
+ $val: $val + " 0";
202
201
  }
203
202
  @else {
204
203
  // Cache $value unit
@@ -206,15 +205,14 @@ $rfs-mq-property-height: if($rfs-mode == max-media-query, max-height, min-height
206
205
 
207
206
  @if $unit == px {
208
207
  // Convert to rem if needed
209
- $val: $val + ' ' + if($rfs-unit == rem, #{divide($value, $value * 0 + $rfs-rem-value)}rem, $value);
208
+ $val: $val + " " + if($rfs-unit == rem, #{divide($value, $value * 0 + $rfs-rem-value)}rem, $value);
210
209
  }
211
210
  @else if $unit == rem {
212
211
  // Convert to px if needed
213
- $val: $val + ' ' + if($rfs-unit == px, #{divide($value, $value * 0 + 1) * $rfs-rem-value}px, $value);
214
- }
215
- @else {
212
+ $val: $val + " " + if($rfs-unit == px, #{divide($value, $value * 0 + 1) * $rfs-rem-value}px, $value);
213
+ } @else {
216
214
  // If $value isn't a number (like inherit) or $value has a unit (not px or rem, like 1.5em) or $ is 0, just print the value
217
- $val: $val + ' ' + $value;
215
+ $val: $val + " " + $value;
218
216
  }
219
217
  }
220
218
  }
@@ -228,30 +226,26 @@ $rfs-mq-property-height: if($rfs-mode == max-media-query, max-height, min-height
228
226
  // Convert to list
229
227
  $values: if(type-of($values) != list, ($values,), $values);
230
228
 
231
- $val: '';
229
+ $val: "";
232
230
 
233
231
  // Loop over each value and calculate value
234
232
  @each $value in $values {
235
233
  @if $value == 0 {
236
- $val: $val + ' 0';
237
- }
238
-
239
- @else {
234
+ $val: $val + " 0";
235
+ } @else {
240
236
  // Cache $value unit
241
237
  $unit: if(type-of($value) == "number", unit($value), false);
242
238
 
243
239
  // If $value isn't a number (like inherit) or $value has a unit (not px or rem, like 1.5em) or $ is 0, just print the value
244
240
  @if not $unit or $unit != px and $unit != rem {
245
- $val: $val + ' ' + $value;
246
- }
247
-
248
- @else {
241
+ $val: $val + " " + $value;
242
+ } @else {
249
243
  // Remove unit from $value for calculations
250
244
  $value: divide($value, $value * 0 + if($unit == px, 1, divide(1, $rfs-rem-value)));
251
245
 
252
246
  // Only add the media query if the value is greater than the minimum value
253
247
  @if abs($value) <= $rfs-base-value or not $enable-rfs {
254
- $val: $val + ' ' + if($rfs-unit == rem, #{divide($value, $rfs-rem-value)}rem, #{$value}px);
248
+ $val: $val + " " + if($rfs-unit == rem, #{divide($value, $rfs-rem-value)}rem, #{$value}px);
255
249
  }
256
250
  @else {
257
251
  // Calculate the minimum value
@@ -273,7 +267,7 @@ $rfs-mq-property-height: if($rfs-mode == max-media-query, max-height, min-height
273
267
  $variable-width: #{divide($value-diff * 100, $rfs-breakpoint)}#{$variable-unit};
274
268
 
275
269
  // Return the calculated value
276
- $val: $val + ' calc(' + $min-width + if($value < 0, ' - ', ' + ') + $variable-width + ')';
270
+ $val: $val + " calc(" + $min-width + if($value < 0, " - ", " + ") + $variable-width + ")";
277
271
  }
278
272
  }
279
273
  }
@@ -287,22 +281,22 @@ $rfs-mq-property-height: if($rfs-mode == max-media-query, max-height, min-height
287
281
  @mixin rfs($values, $property: font-size) {
288
282
  @if $values != null {
289
283
  $val: rfs-value($values);
290
- $fluidVal: rfs-fluid-value($values);
284
+ $fluid-val: rfs-fluid-value($values);
291
285
 
292
286
  // Do not print the media query if responsive & non-responsive values are the same
293
- @if $val == $fluidVal {
287
+ @if $val == $fluid-val {
294
288
  #{$property}: $val;
295
289
  }
296
290
  @else {
297
- @include _rfs-rule {
298
- #{$property}: if($rfs-mode == max-media-query, $val, $fluidVal);
291
+ @include _rfs-rule () {
292
+ #{$property}: if($rfs-mode == max-media-query, $val, $fluid-val);
299
293
 
300
294
  // Include safari iframe resize fix if needed
301
295
  min-width: if($rfs-safari-iframe-resize-bug-fix, (0 * 1vw), null);
302
296
  }
303
297
 
304
- @include _rfs-media-query-rule {
305
- #{$property}: if($rfs-mode == max-media-query, $fluidVal, $val);
298
+ @include _rfs-media-query-rule () {
299
+ #{$property}: if($rfs-mode == max-media-query, $fluid-val, $val);
306
300
  }
307
301
  }
308
302
  }
@@ -351,4 +345,4 @@ $rfs-mq-property-height: if($rfs-mode == max-media-query, max-height, min-height
351
345
 
352
346
  @mixin margin-left($value) {
353
347
  @include rfs($value, margin-left);
354
- }
348
+ }
@@ -1,87 +0,0 @@
1
- @mixin css-vars() {
2
- .accordion {
3
- @if variable-exists("accordion-button-bg") {
4
- --#{$prefix}accordion-button-bg: #{$accordion-button-bg};
5
- }
6
- @if variable-exists("accordion-button-color") {
7
- --#{$prefix}accordion-button-color: #{$accordion-button-color};
8
- }
9
- @if variable-exists("accordion-border-color") {
10
- --#{$prefix}accordion-border-color: #{$accordion-border-color};
11
- }
12
- @if variable-exists("accordion-button-active-color") {
13
- --#{$prefix}accordion-button-active-color: #{$accordion-button-active-color};
14
- }
15
- @if variable-exists("accordion-button-active-bg") {
16
- --#{$prefix}accordion-button-active-bg: #{$accordion-button-active-bg};
17
- }
18
- @if variable-exists("accordion-button-focus-border-color") {
19
- --#{$prefix}accordion-button-focus-border-color: #{$accordion-button-focus-border-color};
20
- }
21
- }
22
-
23
- .badge {
24
- @if variable-exists("badge-color") {
25
- --#{$prefix}badge-color: #{$badge-color};
26
- }
27
- }
28
-
29
-
30
- // // Accordion
31
- // --#{$prefix}accordion-border-color: #{$accordion-border-color};
32
- // --#{$prefix}accordion-button-active-color: #{$accordion-button-active-color};
33
- // --#{$prefix}accordion-button-active-bg: #{$accordion-button-active-bg};
34
- // --#{$prefix}accordion-button-focus-border-color: #{$accordion-button-focus-border-color};
35
-
36
- // // Badge
37
- // --#{$prefix}badge-color: #{$badge-color};
38
-
39
- // // Breadcrumb
40
- // --#{$prefix}breadcrumb-bg: #{$breadcrumb-bg};
41
- // --#{$prefix}breadcrumb-active-color: #{$breadcrumb-active-color};
42
- // --#{$prefix}breadcrumb-divider-color: #{$breadcrumb-divider-color};
43
-
44
- // // Card
45
- // --#{$prefix}card-bg: #{$card-bg};
46
- // --#{$prefix}card-border-color: #{$card-border-color};
47
- // --#{$prefix}card-color: #{$card-color};
48
- // --#{$prefix}card-cap-color: #{$card-cap-color};
49
- // --#{$prefix}card-cap-bg: #{$card-cap-bg};
50
-
51
- // // Close
52
- // --#{$prefix}btn-close-color: #{$btn-close-color};
53
- // --#{$prefix}btn-close-bg: #{escape-svg($btn-close-bg)};
54
-
55
- // // Dropdown
56
- // --#{$prefix}dropdown-color: #{$dropdown-color};
57
- // --#{$prefix}dropdown-bg: #{$dropdown-bg};
58
- // --#{$prefix}dropdown-border-color: #{$dropdown-border-color};
59
- // --#{$prefix}dropdown-divider-bg: #{$dropdown-divider-bg};
60
- // --#{$prefix}dropdown-link-color: #{$dropdown-link-color};
61
- // --#{$prefix}dropdown-link-hover-color: #{$dropdown-link-hover-color};
62
- // --#{$prefix}dropdown-link-active-color: #{$dropdown-link-active-color};
63
- // --#{$prefix}dropdown-link-disabled-color: #{$dropdown-link-disabled-color};
64
- // --#{$prefix}dropdown-header-color: #{$dropdown-header-color};
65
-
66
- // // Images
67
- // --#{$prefix}thumbnail-bg: #{$thumbnail-bg};
68
- // --#{$prefix}thumbnail-border-color: #{$thumbnail-border-color};
69
-
70
- // // Images / Figure
71
- // --#{$prefix}figure-caption-color: $figure-caption-color;
72
-
73
- // // List Group
74
- // --#{$prefix}list-group-action-color: #{$list-group-action-color};
75
- // --#{$prefix}list-group-action-hover-color: #{$list-group-action-hover-color};
76
- // --#{$prefix}list-group-hover-bg: #{$list-group-hover-bg};
77
- // --#{$prefix}list-group-action-active-color: #{$list-group-action-active-color};
78
- // --#{$prefix}list-group-action-active-bg: #{$list-group-action-active-bg};
79
- // --#{$prefix}list-group-color: #{$list-group-color};
80
- // --#{$prefix}list-group-bg: #{$list-group-bg};
81
- // --#{$prefix}list-group-border-color: #{$list-group-border-color};
82
- // --#{$prefix}list-group-disabled-color: #{$list-group-disabled-color};
83
- // --#{$prefix}list-group-disabled-bg: #{$list-group-disabled-bg};
84
- // --#{$prefix}list-group-active-color: #{$list-group-active-color};
85
- // --#{$prefix}list-group-active-bg: #{$list-group-active-bg};
86
- // --#{$prefix}list-group-active-border-color: #{$list-group-active-border-color};
87
- }