@coreui/coreui 4.1.5 → 4.2.1

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 (203) hide show
  1. package/LICENSE +2 -2
  2. package/README.md +64 -11
  3. package/dist/css/coreui-grid.css +23 -949
  4. package/dist/css/coreui-grid.css.map +1 -1
  5. package/dist/css/coreui-grid.min.css +3 -3
  6. package/dist/css/coreui-grid.min.css.map +1 -1
  7. package/dist/css/coreui-grid.rtl.css +25 -951
  8. package/dist/css/coreui-grid.rtl.css.map +1 -1
  9. package/dist/css/coreui-grid.rtl.min.css +5 -5
  10. package/dist/css/coreui-grid.rtl.min.css.map +1 -1
  11. package/dist/css/coreui-reboot.css +35 -42
  12. package/dist/css/coreui-reboot.css.map +1 -1
  13. package/dist/css/coreui-reboot.min.css +3 -3
  14. package/dist/css/coreui-reboot.min.css.map +1 -1
  15. package/dist/css/coreui-reboot.rtl.css +36 -44
  16. package/dist/css/coreui-reboot.rtl.css.map +1 -1
  17. package/dist/css/coreui-reboot.rtl.min.css +5 -5
  18. package/dist/css/coreui-reboot.rtl.min.css.map +1 -1
  19. package/dist/css/coreui-utilities.css +279 -951
  20. package/dist/css/coreui-utilities.css.map +1 -1
  21. package/dist/css/coreui-utilities.min.css +3 -3
  22. package/dist/css/coreui-utilities.min.css.map +1 -1
  23. package/dist/css/coreui-utilities.rtl.css +275 -953
  24. package/dist/css/coreui-utilities.rtl.css.map +1 -1
  25. package/dist/css/coreui-utilities.rtl.min.css +5 -5
  26. package/dist/css/coreui-utilities.rtl.min.css.map +1 -1
  27. package/dist/css/coreui.css +2179 -2259
  28. package/dist/css/coreui.css.map +1 -1
  29. package/dist/css/coreui.min.css +3 -3
  30. package/dist/css/coreui.min.css.map +1 -1
  31. package/dist/css/coreui.rtl.css +2166 -2253
  32. package/dist/css/coreui.rtl.css.map +1 -1
  33. package/dist/css/coreui.rtl.min.css +5 -5
  34. package/dist/css/coreui.rtl.min.css.map +1 -1
  35. package/dist/js/coreui.bundle.js +2095 -1906
  36. package/dist/js/coreui.bundle.js.map +1 -1
  37. package/dist/js/coreui.bundle.min.js +2 -2
  38. package/dist/js/coreui.bundle.min.js.map +1 -1
  39. package/dist/js/coreui.esm.js +2098 -1909
  40. package/dist/js/coreui.esm.js.map +1 -1
  41. package/dist/js/coreui.esm.min.js +2 -2
  42. package/dist/js/coreui.esm.min.js.map +1 -1
  43. package/dist/js/coreui.js +2099 -1910
  44. package/dist/js/coreui.js.map +1 -1
  45. package/dist/js/coreui.min.js +2 -2
  46. package/dist/js/coreui.min.js.map +1 -1
  47. package/js/dist/alert.js +10 -148
  48. package/js/dist/alert.js.map +1 -1
  49. package/js/dist/base-component.js +36 -122
  50. package/js/dist/base-component.js.map +1 -1
  51. package/js/dist/button.js +9 -76
  52. package/js/dist/button.js.map +1 -1
  53. package/js/dist/carousel.js +212 -507
  54. package/js/dist/carousel.js.map +1 -1
  55. package/js/dist/collapse.js +64 -251
  56. package/js/dist/collapse.js.map +1 -1
  57. package/js/dist/dom/data.js +2 -4
  58. package/js/dist/dom/data.js.map +1 -1
  59. package/js/dist/dom/event-handler.js +82 -133
  60. package/js/dist/dom/event-handler.js.map +1 -1
  61. package/js/dist/dom/manipulator.js +22 -26
  62. package/js/dist/dom/manipulator.js.map +1 -1
  63. package/js/dist/dom/selector-engine.js +16 -81
  64. package/js/dist/dom/selector-engine.js.map +1 -1
  65. package/js/dist/dropdown.js +99 -338
  66. package/js/dist/dropdown.js.map +1 -1
  67. package/js/dist/modal.js +106 -774
  68. package/js/dist/modal.js.map +1 -1
  69. package/js/dist/navigation.js +309 -0
  70. package/js/dist/navigation.js.map +1 -0
  71. package/js/dist/offcanvas.js +88 -680
  72. package/js/dist/offcanvas.js.map +1 -1
  73. package/js/dist/popover.js +35 -120
  74. package/js/dist/popover.js.map +1 -1
  75. package/js/dist/scrollspy.js +178 -264
  76. package/js/dist/scrollspy.js.map +1 -1
  77. package/js/dist/sidebar.js +347 -0
  78. package/js/dist/sidebar.js.map +1 -0
  79. package/js/dist/tab.js +226 -216
  80. package/js/dist/tab.js.map +1 -1
  81. package/js/dist/toast.js +27 -216
  82. package/js/dist/toast.js.map +1 -1
  83. package/js/dist/tooltip.js +271 -618
  84. package/js/dist/tooltip.js.map +1 -1
  85. package/js/dist/util/backdrop.js +166 -0
  86. package/js/dist/util/backdrop.js.map +1 -0
  87. package/js/dist/util/component-functions.js +47 -0
  88. package/js/dist/util/component-functions.js.map +1 -0
  89. package/js/dist/util/config.js +80 -0
  90. package/js/dist/util/config.js.map +1 -0
  91. package/js/dist/util/focustrap.js +130 -0
  92. package/js/dist/util/focustrap.js.map +1 -0
  93. package/js/dist/util/index.js +354 -0
  94. package/js/dist/util/index.js.map +1 -0
  95. package/js/dist/util/sanitizer.js +126 -0
  96. package/js/dist/util/sanitizer.js.map +1 -0
  97. package/js/dist/util/scrollbar.js +139 -0
  98. package/js/dist/util/scrollbar.js.map +1 -0
  99. package/js/dist/util/swipe.js +156 -0
  100. package/js/dist/util/swipe.js.map +1 -0
  101. package/js/dist/util/template-factory.js +178 -0
  102. package/js/dist/util/template-factory.js.map +1 -0
  103. package/js/src/alert.js +3 -15
  104. package/js/src/base-component.js +28 -18
  105. package/js/src/button.js +3 -15
  106. package/js/src/carousel.js +203 -320
  107. package/js/src/collapse.js +61 -94
  108. package/js/src/dom/data.js +1 -3
  109. package/js/src/dom/event-handler.js +74 -107
  110. package/js/src/dom/manipulator.js +22 -31
  111. package/js/src/dom/selector-engine.js +10 -19
  112. package/js/src/dropdown.js +84 -138
  113. package/js/src/modal.js +94 -158
  114. package/js/src/navigation.js +12 -13
  115. package/js/src/offcanvas.js +71 -60
  116. package/js/src/popover.js +31 -62
  117. package/js/src/scrollspy.js +166 -171
  118. package/js/src/sidebar.js +5 -8
  119. package/js/src/tab.js +201 -110
  120. package/js/src/toast.js +19 -41
  121. package/js/src/tooltip.js +264 -374
  122. package/js/src/util/backdrop.js +55 -36
  123. package/js/src/util/component-functions.js +1 -1
  124. package/js/src/util/config.js +66 -0
  125. package/js/src/util/focustrap.js +38 -28
  126. package/js/src/util/index.js +41 -57
  127. package/js/src/util/sanitizer.js +9 -17
  128. package/js/src/util/scrollbar.js +47 -30
  129. package/js/src/util/swipe.js +146 -0
  130. package/js/src/util/template-factory.js +160 -0
  131. package/package.json +40 -40
  132. package/scss/_accordion.scss +53 -25
  133. package/scss/_alert.scss +29 -9
  134. package/scss/_badge.scss +15 -6
  135. package/scss/_breadcrumb.scss +23 -11
  136. package/scss/_button-group.scss +3 -0
  137. package/scss/_buttons.scss +77 -50
  138. package/scss/_callout.scss +18 -6
  139. package/scss/_card.scss +55 -37
  140. package/scss/_carousel.scss +6 -6
  141. package/scss/_close.scss +4 -4
  142. package/scss/_containers.scss +1 -1
  143. package/scss/_dropdown.scss +86 -64
  144. package/scss/_footer.scss +15 -5
  145. package/scss/_functions.scss +11 -24
  146. package/scss/_grid.scss +3 -3
  147. package/scss/_header.scss +59 -34
  148. package/scss/_helpers.scss +1 -0
  149. package/scss/_images.scss +3 -3
  150. package/scss/_list-group.scss +47 -29
  151. package/scss/_maps.scss +54 -0
  152. package/scss/_modal.scss +70 -43
  153. package/scss/_nav.scss +53 -20
  154. package/scss/_navbar.scss +84 -94
  155. package/scss/_offcanvas.scss +120 -60
  156. package/scss/_pagination.scss +66 -21
  157. package/scss/_popover.scss +90 -52
  158. package/scss/_progress.scss +20 -9
  159. package/scss/_reboot.scss +31 -58
  160. package/scss/_root.scss +41 -21
  161. package/scss/_spinners.scss +37 -21
  162. package/scss/_subheader.scss +9 -9
  163. package/scss/_tables.scss +34 -36
  164. package/scss/_toasts.scss +35 -19
  165. package/scss/_tooltip.scss +61 -56
  166. package/scss/_utilities.scss +42 -27
  167. package/scss/_variables.scss +169 -148
  168. package/scss/coreui-grid.rtl.scss +2 -2
  169. package/scss/coreui-grid.scss +3 -2
  170. package/scss/coreui-reboot.rtl.scss +2 -2
  171. package/scss/coreui-reboot.scss +2 -2
  172. package/scss/coreui-utilities.rtl.scss +2 -2
  173. package/scss/coreui-utilities.scss +3 -2
  174. package/scss/coreui.rtl.scss +2 -2
  175. package/scss/coreui.scss +3 -2
  176. package/scss/forms/_floating-labels.scss +14 -3
  177. package/scss/forms/_form-check.scss +42 -19
  178. package/scss/forms/_form-control.scss +25 -50
  179. package/scss/forms/_form-range.scss +8 -8
  180. package/scss/forms/_form-select.scss +8 -8
  181. package/scss/forms/_form-text.scss +1 -1
  182. package/scss/forms/_input-group.scss +3 -3
  183. package/scss/forms/_labels.scss +2 -2
  184. package/scss/helpers/_color-bg.scss +10 -0
  185. package/scss/helpers/_colored-links.scss +2 -2
  186. package/scss/helpers/_position.scss +7 -1
  187. package/scss/helpers/_ratio.scss +2 -2
  188. package/scss/helpers/_vr.scss +1 -0
  189. package/scss/mixins/_alert.scss +10 -10
  190. package/scss/mixins/_breakpoints.scss +8 -8
  191. package/scss/mixins/_buttons.scss +45 -47
  192. package/scss/mixins/_container.scss +4 -2
  193. package/scss/mixins/_css-vars.scss +47 -47
  194. package/scss/mixins/_forms.scss +8 -0
  195. package/scss/mixins/_gradients.scss +1 -1
  196. package/scss/mixins/_grid.scss +11 -11
  197. package/scss/mixins/_list-group.scss +7 -9
  198. package/scss/mixins/_pagination.scss +4 -25
  199. package/scss/mixins/_table-variants.scss +20 -12
  200. package/scss/mixins/_utilities.scss +8 -3
  201. package/scss/sidebar/_sidebar-narrow.scss +10 -10
  202. package/scss/sidebar/_sidebar-nav.scss +33 -32
  203. package/scss/sidebar/_sidebar.scss +110 -56
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * CoreUI - HTML, CSS, and JavaScript UI Components Library
3
- * @version v4.1.5
3
+ * @version v4.2.1
4
4
  * @link https://coreui.io/
5
- * Copyright (c) 2021 creativeLabs Łukasz Holeczek
5
+ * Copyright (c) 2022 creativeLabs Łukasz Holeczek
6
6
  * License MIT (https://coreui.io/license/)
7
7
  */
8
8
 
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * CoreUI - HTML, CSS, and JavaScript UI Components Library
3
- * @version v4.1.5
3
+ * @version v4.2.1
4
4
  * @link https://coreui.io/
5
- * Copyright (c) 2021 creativeLabs Łukasz Holeczek
5
+ * Copyright (c) 2022 creativeLabs Łukasz Holeczek
6
6
  * License MIT (https://coreui.io/license/)
7
7
  */
8
8
 
@@ -10,6 +10,7 @@ $include-column-box-sizing: true !default;
10
10
 
11
11
  @import "functions";
12
12
  @import "variables";
13
+ @import "maps";
13
14
 
14
15
  @import "mixins/ltr-rtl";
15
16
  @import "mixins/lists";
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * CoreUI - HTML, CSS, and JavaScript UI Components Library
3
- * @version v4.1.5
3
+ * @version v4.2.1
4
4
  * @link https://coreui.io/
5
- * Copyright (c) 2021 creativeLabs Łukasz Holeczek
5
+ * Copyright (c) 2022 creativeLabs Łukasz Holeczek
6
6
  * License MIT (https://coreui.io/license/)
7
7
  */
8
8
 
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * CoreUI - HTML, CSS, and JavaScript UI Components Library
3
- * @version v4.1.5
3
+ * @version v4.2.1
4
4
  * @link https://coreui.io/
5
- * Copyright (c) 2021 creativeLabs Łukasz Holeczek
5
+ * Copyright (c) 2022 creativeLabs Łukasz Holeczek
6
6
  * License MIT (https://coreui.io/license/)
7
7
  */
8
8
 
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * CoreUI - HTML, CSS, and JavaScript UI Components Library
3
- * @version v4.1.5
3
+ * @version v4.2.1
4
4
  * @link https://coreui.io/
5
- * Copyright (c) 2021 creativeLabs Łukasz Holeczek
5
+ * Copyright (c) 2022 creativeLabs Łukasz Holeczek
6
6
  * License MIT (https://coreui.io/license/)
7
7
  */
8
8
 
@@ -1,14 +1,15 @@
1
1
  /*!
2
2
  * CoreUI - HTML, CSS, and JavaScript UI Components Library
3
- * @version v4.1.5
3
+ * @version v4.2.1
4
4
  * @link https://coreui.io/
5
- * Copyright (c) 2021 creativeLabs Łukasz Holeczek
5
+ * Copyright (c) 2022 creativeLabs Łukasz Holeczek
6
6
  * License MIT (https://coreui.io/license/)
7
7
  */
8
8
 
9
9
  // Configuration
10
10
  @import "functions";
11
11
  @import "variables";
12
+ @import "maps";
12
13
  @import "mixins";
13
14
  @import "utilities";
14
15
 
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * CoreUI - HTML, CSS, and JavaScript UI Components Library
3
- * @version v4.1.5
3
+ * @version v4.2.1
4
4
  * @link https://coreui.io/
5
- * Copyright (c) 2021 creativeLabs Łukasz Holeczek
5
+ * Copyright (c) 2022 creativeLabs Łukasz Holeczek
6
6
  * License MIT (https://coreui.io/license/)
7
7
  */
8
8
 
package/scss/coreui.scss CHANGED
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * CoreUI - HTML, CSS, and JavaScript UI Components Library
3
- * @version v4.1.5
3
+ * @version v4.2.1
4
4
  * @link https://coreui.io/
5
- * Copyright (c) 2021 creativeLabs Łukasz Holeczek
5
+ * Copyright (c) 2022 creativeLabs Łukasz Holeczek
6
6
  * License MIT (https://coreui.io/license/)
7
7
  */
8
8
 
@@ -10,6 +10,7 @@
10
10
  // Configuration
11
11
  @import "functions";
12
12
  @import "variables";
13
+ @import "maps";
13
14
  @import "mixins";
14
15
  @import "utilities";
15
16
 
@@ -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
  @include ltr-rtl("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
  }
@@ -16,18 +16,30 @@
16
16
  }
17
17
  }
18
18
 
19
+ .form-check-reverse {
20
+ padding-right: $form-check-padding-start;
21
+ padding-left: 0;
22
+ text-align: right;
23
+
24
+ .form-check-input {
25
+ float: right;
26
+ margin-right: $form-check-padding-start * -1;
27
+ margin-left: 0;
28
+ }
29
+ }
30
+
19
31
  .form-check-input {
20
32
  width: $form-check-input-width;
21
33
  height: $form-check-input-width;
22
34
  margin-top: ($line-height-base - $form-check-input-width) * .5; // line-height minus check height
23
35
  vertical-align: top;
24
- background-color: var(--#{$variable-prefix}form-check-input-bg, $form-check-input-bg);
36
+ background-color: var(--#{$prefix}form-check-input-bg, $form-check-input-bg);
25
37
  background-repeat: no-repeat;
26
38
  background-position: center;
27
39
  background-size: contain;
28
40
  border: $form-check-input-border;
29
41
  appearance: none;
30
- color-adjust: exact; // Keep themed appearance for print
42
+ print-color-adjust: exact; // Keep themed appearance for print
31
43
  @include transition($form-check-transition);
32
44
 
33
45
  &[type="checkbox"] {
@@ -50,22 +62,22 @@
50
62
  }
51
63
 
52
64
  &:checked {
53
- background-color: var(--#{$variable-prefix}form-check-input-checked-bg-color, $form-check-input-checked-bg-color);
54
- border-color: var(--#{$variable-prefix}form-check-input-checked-border-color, $form-check-input-checked-border-color);
65
+ background-color: var(--#{$prefix}form-check-input-checked-bg-color, $form-check-input-checked-bg-color);
66
+ border-color: var(--#{$prefix}form-check-input-checked-border-color, $form-check-input-checked-border-color);
55
67
 
56
68
  &[type="checkbox"] {
57
69
  @if $enable-gradients {
58
- background-image: var(--#{$variable-prefix}form-check-input-checked-bg-image, escape-svg($form-check-input-checked-bg-image)), var(--#{$variable-prefix}gradient);
70
+ background-image: escape-svg($form-check-input-checked-bg-image), var(--#{$prefix}gradient);
59
71
  } @else {
60
- background-image: var(--#{$variable-prefix}form-check-input-checked-bg-image, escape-svg($form-check-input-checked-bg-image));
72
+ background-image: var(--#{$prefix}form-check-input-checked-bg-image, escape-svg($form-check-input-checked-bg-image));
61
73
  }
62
74
  }
63
75
 
64
76
  &[type="radio"] {
65
77
  @if $enable-gradients {
66
- background-image: var(--#{$variable-prefix}form-check-radio-checked-bg-image, escape-svg($form-check-radio-checked-bg-image)), var(--#{$variable-prefix}gradient);
78
+ background-image: escape-svg($form-check-radio-checked-bg-image), var(--#{$prefix}gradient);
67
79
  } @else {
68
- background-image: var(--#{$variable-prefix}form-check-radio-checked-bg-image, escape-svg($form-check-radio-checked-bg-image));
80
+ background-image: var(--#{$prefix}form-check-radio-checked-bg-image, escape-svg($form-check-radio-checked-bg-image));
69
81
  }
70
82
  }
71
83
  }
@@ -75,9 +87,9 @@
75
87
  border-color: $form-check-input-indeterminate-border-color;
76
88
 
77
89
  @if $enable-gradients {
78
- background-image: var(--#{$variable-prefix}form-check-input-indeterminate-bg-image, escape-svg($form-check-input-indeterminate-bg-image)), var(--#{$variable-prefix}gradient);
90
+ background-image: escape-svg($form-check-input-indeterminate-bg-image), var(--#{$prefix}gradient);
79
91
  } @else {
80
- background-image: var(--#{$variable-prefix}form-check-input-indeterminate-bg-image, escape-svg($form-check-input-indeterminate-bg-image));
92
+ background-image: var(--#{$prefix}form-check-input-indeterminate-bg-image, escape-svg($form-check-input-indeterminate-bg-image));
81
93
  }
82
94
  }
83
95
 
@@ -92,13 +104,14 @@
92
104
  &[disabled],
93
105
  &:disabled {
94
106
  ~ .form-check-label {
107
+ cursor: default;
95
108
  opacity: $form-check-label-disabled-opacity;
96
109
  }
97
110
  }
98
111
  }
99
112
 
100
113
  .form-check-label {
101
- color: var(--#{$variable-prefix}form-check-label-color, $form-check-label-color);
114
+ color: var(--#{$prefix}form-check-label-color, $form-check-label-color);
102
115
  cursor: $form-check-label-cursor;
103
116
  }
104
117
 
@@ -112,25 +125,35 @@
112
125
  .form-check-input {
113
126
  width: $form-switch-width;
114
127
  @include ltr-rtl("margin-left", $form-switch-padding-start * -1);
115
- background-image: var(--#{$variable-prefix}form-switch-bg-image, escape-svg($form-switch-bg-image));
128
+ background-image: var(--#{$prefix}form-switch-bg-image, escape-svg($form-switch-bg-image));
116
129
  background-position: left center;
117
130
  @include border-radius($form-switch-border-radius);
118
131
  @include transition($form-switch-transition);
119
132
 
120
133
  &:focus {
121
- background-image: var(--#{$variable-prefix}form-switch-focus-bg-image, escape-svg($form-switch-focus-bg-image));
134
+ background-image: var(--#{$prefix}form-switch-focus-bg-image, escape-svg($form-switch-focus-bg-image));
122
135
  }
123
136
 
124
137
  &:checked {
125
138
  background-position: $form-switch-checked-bg-position;
126
139
 
127
140
  @if $enable-gradients {
128
- background-image: var(--#{$variable-prefix}form-switch-checked-bg-image, escape-svg($form-switch-checked-bg-image)), var(--#{$variable-prefix}gradient);
141
+ background-image: escape-svg($form-switch-checked-bg-image), var(--#{$prefix}gradient);
129
142
  } @else {
130
- background-image: var(--#{$variable-prefix}form-switch-checked-bg-image, escape-svg($form-switch-checked-bg-image));
143
+ background-image: var(--#{$prefix}form-switch-checked-bg-image, escape-svg($form-switch-checked-bg-image));
131
144
  }
132
145
  }
133
146
  }
147
+
148
+ &.form-check-reverse {
149
+ padding-right: $form-switch-padding-start;
150
+ padding-left: 0;
151
+
152
+ .form-check-input {
153
+ margin-right: $form-switch-padding-start * -1;
154
+ margin-left: 0;
155
+ }
156
+ }
134
157
  }
135
158
 
136
159
  @each $size, $map in $form-switch-widths {
@@ -180,9 +203,9 @@
180
203
 
181
204
  @each $state, $color in $theme-colors {
182
205
  .form-check-#{$state} {
183
- --#{$variable-prefix}form-check-input-checked-bg-color: #{$color};
184
- --#{$variable-prefix}form-check-input-checked-border-color: #{$color};
185
- --#{$variable-prefix}form-check-input-indeterminate-bg-color: #{$color};
186
- --#{$variable-prefix}form-check-input-indeterminate-border-color: #{$color};
206
+ --#{$prefix}form-check-input-checked-bg-color: #{$color};
207
+ --#{$prefix}form-check-input-checked-border-color: #{$color};
208
+ --#{$prefix}form-check-input-indeterminate-bg-color: #{$color};
209
+ --#{$prefix}form-check-input-indeterminate-border-color: #{$color};
187
210
  }
188
211
  }
@@ -10,10 +10,10 @@
10
10
  @include font-size($input-font-size);
11
11
  font-weight: $input-font-weight;
12
12
  line-height: $input-line-height;
13
- color: var(--#{$variable-prefix}input-color, $input-color);
14
- background-color: var(--#{$variable-prefix}input-bg, $input-bg);
13
+ color: var(--#{$prefix}input-color, $input-color);
14
+ background-color: var(--#{$prefix}input-bg, $input-bg);
15
15
  background-clip: padding-box;
16
- border: $input-border-width solid var(--#{$variable-prefix}input-border-color, $input-border-color);
16
+ border: $input-border-width solid var(--#{$prefix}input-border-color, $input-border-color);
17
17
  appearance: none; // Fix appearance for date inputs in Safari
18
18
 
19
19
  // Note: This has no effect on <select>s in some browsers, due to the limited stylability of `<select>`s in CSS.
@@ -32,9 +32,9 @@
32
32
 
33
33
  // Customize the `:focus` state to imitate native WebKit styles.
34
34
  &:focus {
35
- color: var(--#{$variable-prefix}input-focus-color, $input-focus-color);
36
- background-color: var(--#{$variable-prefix}input-focus-bg, $input-focus-bg);
37
- border-color: var(--#{$variable-prefix}input-focus-border-color, $input-focus-border-color);
35
+ color: var(--#{$prefix}input-focus-color, $input-focus-color);
36
+ background-color: var(--#{$prefix}input-focus-bg, $input-focus-bg);
37
+ border-color: var(--#{$prefix}input-focus-border-color, $input-focus-border-color);
38
38
  outline: 0;
39
39
  @if $enable-shadows {
40
40
  @include box-shadow($input-box-shadow, $input-focus-box-shadow);
@@ -54,20 +54,20 @@
54
54
 
55
55
  // Placeholder
56
56
  &::placeholder {
57
- color: var(--#{$variable-prefix}input-placeholder-color, $input-placeholder-color);
57
+ color: var(--#{$prefix}input-placeholder-color, $input-placeholder-color);
58
58
  // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526.
59
59
  opacity: 1;
60
60
  }
61
61
 
62
- // Disabled and read-only inputs
62
+ // Disabled inputs
63
63
  //
64
64
  // HTML5 says that controls under a fieldset > legend:first-child won't be
65
65
  // disabled if the fieldset is disabled. Due to implementation difficulty, we
66
66
  // don't honor that edge case; we style them as disabled anyway.
67
- &:disabled,
68
- &[readonly] {
69
- background-color: var(--#{$variable-prefix}input-disabled-bg, $input-disabled-bg);
70
- border-color: var(--#{$variable-prefix}input-disabled-border-color, $input-disabled-border-color);
67
+ &:disabled {
68
+ color: $input-disabled-color;
69
+ background-color: $input-disabled-bg;
70
+ border-color: $input-disabled-border-color;
71
71
  // iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655.
72
72
  opacity: 1;
73
73
  }
@@ -77,8 +77,8 @@
77
77
  padding: $input-padding-y $input-padding-x;
78
78
  margin: (-$input-padding-y) (-$input-padding-x);
79
79
  margin-inline-end: $input-padding-x;
80
- color: var(--#{$variable-prefix}form-file-button-color, $form-file-button-color);
81
- @include gradient-bg(var(--#{$variable-prefix}form-file-button-bg, $form-file-button-bg));
80
+ color: var(--#{$prefix}form-file-button-color, $form-file-button-color);
81
+ @include gradient-bg(var(--#{$prefix}form-file-button-bg, $form-file-button-bg));
82
82
  pointer-events: none;
83
83
  border-color: inherit;
84
84
  border-style: solid;
@@ -89,26 +89,7 @@
89
89
  }
90
90
 
91
91
  &:hover:not(:disabled):not([readonly])::file-selector-button {
92
- background-color: var(--#{$variable-prefix}form-file-button-hover-bg, $form-file-button-hover-bg);
93
- }
94
-
95
- &::-webkit-file-upload-button {
96
- padding: $input-padding-y $input-padding-x;
97
- margin: (-$input-padding-y) (-$input-padding-x);
98
- margin-inline-end: $input-padding-x;
99
- color: var(--#{$variable-prefix}form-file-button-color, $form-file-button-color);
100
- @include gradient-bg(var(--#{$variable-prefix}form-file-button-bg, $form-file-button-bg));
101
- pointer-events: none;
102
- border-color: inherit;
103
- border-style: solid;
104
- border-width: 0;
105
- border-inline-end-width: $input-border-width;
106
- border-radius: 0; // stylelint-disable-line property-disallowed-list
107
- @include transition($btn-transition);
108
- }
109
-
110
- &:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
111
- background-color: var(--#{$variable-prefix}form-file-button-hover-bg, $form-file-button-hover-bg);
92
+ background-color: var(--#{$prefix}form-file-button-hover-bg, $form-file-button-hover-bg);
112
93
  }
113
94
  }
114
95
 
@@ -123,11 +104,15 @@
123
104
  padding: $input-padding-y 0;
124
105
  margin-bottom: 0; // match inputs if this class comes on inputs with default margins
125
106
  line-height: $input-line-height;
126
- color: var(--#{$variable-prefix}input-plaintext-color, $input-plaintext-color);
107
+ color: var(--#{$prefix}input-plaintext-color, $input-plaintext-color);
127
108
  background-color: transparent;
128
109
  border: solid transparent;
129
110
  border-width: $input-border-width 0;
130
111
 
112
+ &:focus {
113
+ outline: 0;
114
+ }
115
+
131
116
  &.form-control-sm,
132
117
  &.form-control-lg {
133
118
  padding-right: 0;
@@ -153,12 +138,6 @@
153
138
  margin: (-$input-padding-y-sm) (-$input-padding-x-sm);
154
139
  margin-inline-end: $input-padding-x-sm;
155
140
  }
156
-
157
- &::-webkit-file-upload-button {
158
- padding: $input-padding-y-sm $input-padding-x-sm;
159
- margin: (-$input-padding-y-sm) (-$input-padding-x-sm);
160
- margin-inline-end: $input-padding-x-sm;
161
- }
162
141
  }
163
142
 
164
143
  .form-control-lg {
@@ -172,12 +151,6 @@
172
151
  margin: (-$input-padding-y-lg) (-$input-padding-x-lg);
173
152
  margin-inline-end: $input-padding-x-lg;
174
153
  }
175
-
176
- &::-webkit-file-upload-button {
177
- padding: $input-padding-y-lg $input-padding-x-lg;
178
- margin: (-$input-padding-y-lg) (-$input-padding-x-lg);
179
- margin-inline-end: $input-padding-x-lg;
180
- }
181
154
  }
182
155
 
183
156
  // Make sure textareas don't shrink too much when resized
@@ -200,7 +173,7 @@ textarea {
200
173
 
201
174
  .form-control-color {
202
175
  width: $form-color-width;
203
- height: auto; // Override fixed browser height
176
+ height: $input-height;
204
177
  padding: $input-padding-y;
205
178
 
206
179
  &:not(:disabled):not([readonly]) {
@@ -208,12 +181,14 @@ textarea {
208
181
  }
209
182
 
210
183
  &::-moz-color-swatch {
211
- height: if(unit($input-line-height) == "", $input-line-height * 1em, $input-line-height);
184
+ border: 0 !important; // stylelint-disable-line declaration-no-important
212
185
  @include border-radius($input-border-radius);
213
186
  }
214
187
 
215
188
  &::-webkit-color-swatch {
216
- height: if(unit($input-line-height) == "", $input-line-height * 1em, $input-line-height);
217
189
  @include border-radius($input-border-radius);
218
190
  }
191
+
192
+ &.form-control-sm { height: $input-height-sm; }
193
+ &.form-control-lg { height: $input-height-lg; }
219
194
  }
@@ -28,7 +28,7 @@
28
28
  width: $form-range-thumb-width;
29
29
  height: $form-range-thumb-height;
30
30
  margin-top: ($form-range-track-height - $form-range-thumb-height) * .5; // Webkit specific
31
- @include gradient-bg(var(--#{$variable-prefix}form-range-thumb-bg, $form-range-thumb-bg));
31
+ @include gradient-bg(var(--#{$prefix}form-range-thumb-bg, $form-range-thumb-bg));
32
32
  border: $form-range-thumb-border;
33
33
  @include border-radius($form-range-thumb-border-radius);
34
34
  @include box-shadow($form-range-thumb-box-shadow);
@@ -36,7 +36,7 @@
36
36
  appearance: none;
37
37
 
38
38
  &:active {
39
- @include gradient-bg(var(--#{$variable-prefix}form-range-thumb-active-bg, $form-range-thumb-active-bg));
39
+ @include gradient-bg(var(--#{$prefix}form-range-thumb-active-bg, $form-range-thumb-active-bg));
40
40
  }
41
41
  }
42
42
 
@@ -45,7 +45,7 @@
45
45
  height: $form-range-track-height;
46
46
  color: transparent; // Why?
47
47
  cursor: $form-range-track-cursor;
48
- background-color: var(--#{$variable-prefix}form-range-track-bg, $form-range-track-bg);
48
+ background-color: var(--#{$prefix}form-range-track-bg, $form-range-track-bg);
49
49
  border-color: transparent;
50
50
  @include border-radius($form-range-track-border-radius);
51
51
  @include box-shadow($form-range-track-box-shadow);
@@ -54,7 +54,7 @@
54
54
  &::-moz-range-thumb {
55
55
  width: $form-range-thumb-width;
56
56
  height: $form-range-thumb-height;
57
- @include gradient-bg(var(--#{$variable-prefix}form-range-thumb-bg, $form-range-thumb-bg));
57
+ @include gradient-bg(var(--#{$prefix}form-range-thumb-bg, $form-range-thumb-bg));
58
58
  border: $form-range-thumb-border;
59
59
  @include border-radius($form-range-thumb-border-radius);
60
60
  @include box-shadow($form-range-thumb-box-shadow);
@@ -62,7 +62,7 @@
62
62
  appearance: none;
63
63
 
64
64
  &:active {
65
- @include gradient-bg(var(--#{$variable-prefix}form-range-thumb-active-bg, $form-range-thumb-active-bg));
65
+ @include gradient-bg(var(--#{$prefix}form-range-thumb-active-bg, $form-range-thumb-active-bg));
66
66
  }
67
67
  }
68
68
 
@@ -71,7 +71,7 @@
71
71
  height: $form-range-track-height;
72
72
  color: transparent;
73
73
  cursor: $form-range-track-cursor;
74
- background-color: var(--#{$variable-prefix}form-range-track-bg, $form-range-track-bg);
74
+ background-color: var(--#{$prefix}form-range-track-bg, $form-range-track-bg);
75
75
  border-color: transparent; // Firefox specific?
76
76
  @include border-radius($form-range-track-border-radius);
77
77
  @include box-shadow($form-range-track-box-shadow);
@@ -81,11 +81,11 @@
81
81
  pointer-events: none;
82
82
 
83
83
  &::-webkit-slider-thumb {
84
- background-color: var(--#{$variable-prefix}form-range-thumb-disabled-bg, $form-range-thumb-disabled-bg);
84
+ background-color: var(--#{$prefix}form-range-thumb-disabled-bg, $form-range-thumb-disabled-bg);
85
85
  }
86
86
 
87
87
  &::-moz-range-thumb {
88
- background-color: var(--#{$variable-prefix}form-range-thumb-disabled-bg, $form-range-thumb-disabled-bg);
88
+ background-color: var(--#{$prefix}form-range-thumb-disabled-bg, $form-range-thumb-disabled-bg);
89
89
  }
90
90
  }
91
91
  }
@@ -12,20 +12,20 @@
12
12
  @include font-size($form-select-font-size);
13
13
  font-weight: $form-select-font-weight;
14
14
  line-height: $form-select-line-height;
15
- color: var(--#{$variable-prefix}form-select-color, $form-select-color);
16
- background-color: var(--#{$variable-prefix}form-select-bg, $form-select-bg);
15
+ color: var(--#{$prefix}form-select-color, $form-select-color);
16
+ background-color: var(--#{$prefix}form-select-bg, $form-select-bg);
17
17
  background-image: escape-svg($form-select-indicator);
18
18
  background-repeat: no-repeat;
19
19
  @include ltr-rtl-value-only("background-position", $form-select-bg-position);
20
20
  background-size: $form-select-bg-size;
21
- border: $form-select-border-width solid var(--#{$variable-prefix}form-select-border-color, $form-select-border-color);
21
+ border: $form-select-border-width solid var(--#{$prefix}form-select-border-color, $form-select-border-color);
22
22
  @include border-radius($form-select-border-radius, 0);
23
23
  @include box-shadow($form-select-box-shadow);
24
24
  @include transition($form-select-transition);
25
25
  appearance: none;
26
26
 
27
27
  &:focus {
28
- border-color: var(--#{$variable-prefix}form-select-focus-border-color, $form-select-focus-border-color);
28
+ border-color: var(--#{$prefix}form-select-focus-border-color, $form-select-focus-border-color);
29
29
  outline: 0;
30
30
  @if $enable-shadows {
31
31
  @include box-shadow($form-select-box-shadow, $form-select-focus-box-shadow);
@@ -42,15 +42,15 @@
42
42
  }
43
43
 
44
44
  &:disabled {
45
- color: var(--#{$variable-prefix}form-select-disabled-color, $form-select-disabled-color);
46
- background-color: var(--#{$variable-prefix}form-select-disabled-bg, $form-select-disabled-bg);
47
- border-color: var(--#{$variable-prefix}form-select-disabled-border-color, $form-select-disabled-border-color);
45
+ color: var(--#{$prefix}form-select-disabled-color, $form-select-disabled-color);
46
+ background-color: var(--#{$prefix}form-select-disabled-bg, $form-select-disabled-bg);
47
+ border-color: var(--#{$prefix}form-select-disabled-border-color, $form-select-disabled-border-color);
48
48
  }
49
49
 
50
50
  // Remove outline from select box in FF
51
51
  &:-moz-focusring {
52
52
  color: transparent;
53
- text-shadow: 0 0 0 var(--#{$variable-prefix}form-select-color, $form-select-color);
53
+ text-shadow: 0 0 0 var(--#{$prefix}form-select-color, $form-select-color);
54
54
  }
55
55
  }
56
56
 
@@ -7,5 +7,5 @@
7
7
  @include font-size($form-text-font-size);
8
8
  font-style: $form-text-font-style;
9
9
  font-weight: $form-text-font-weight;
10
- color: var(--#{$variable-prefix}form-text-color, $form-text-color);
10
+ color: var(--#{$prefix}form-text-color, $form-text-color);
11
11
  }
@@ -49,11 +49,11 @@
49
49
  @include font-size($input-font-size); // Match inputs
50
50
  font-weight: $input-group-addon-font-weight;
51
51
  line-height: $input-line-height;
52
- color: var(--#{$variable-prefix}input-group-addon-color, $input-group-addon-color);
52
+ color: var(--#{$prefix}input-group-addon-color, $input-group-addon-color);
53
53
  text-align: center;
54
54
  white-space: nowrap;
55
- background-color: var(--#{$variable-prefix}input-group-addon-bg, $input-group-addon-bg);
56
- border: $input-border-width solid var(--#{$variable-prefix}input-group-addon-border-color, $input-group-addon-border-color);
55
+ background-color: var(--#{$prefix}input-group-addon-bg, $input-group-addon-bg);
56
+ border: $input-border-width solid var(--#{$prefix}input-group-addon-border-color, $input-group-addon-border-color);
57
57
  @include border-radius($input-border-radius);
58
58
  }
59
59
 
@@ -7,7 +7,7 @@
7
7
  @include font-size($form-label-font-size);
8
8
  font-style: $form-label-font-style;
9
9
  font-weight: $form-label-font-weight;
10
- color: var(--#{$variable-prefix}form-label-color, $form-label-color);
10
+ color: var(--#{$prefix}form-label-color, $form-label-color);
11
11
  }
12
12
 
13
13
  // For use with horizontal and inline forms, when you need the label (or legend)
@@ -20,7 +20,7 @@
20
20
  font-style: $form-label-font-style;
21
21
  font-weight: $form-label-font-weight;
22
22
  line-height: $input-line-height;
23
- color: var(--#{$variable-prefix}form-label-color, $form-label-color);
23
+ color: var(--#{$prefix}form-label-color, $form-label-color);
24
24
  }
25
25
 
26
26
  .col-form-label-lg {
@@ -0,0 +1,10 @@
1
+ // stylelint-disable function-name-case
2
+
3
+ // All-caps `RGBA()` function used because of this Sass bug: https://github.com/sass/node-sass/issues/2251
4
+ @each $color, $value in $theme-colors {
5
+ $color-rgb: to-rgb($value);
6
+ .text-bg-#{$color} {
7
+ color: color-contrast($value) if($enable-important-utilities, !important, null);
8
+ background-color: RGBA($color-rgb, var(--#{$prefix}bg-opacity, 1)) if($enable-important-utilities, !important, null);
9
+ }
10
+ }
@@ -1,11 +1,11 @@
1
1
  @each $color, $value in $theme-colors {
2
2
  .link-#{$color} {
3
- color: $value;
3
+ color: $value !important; // stylelint-disable-line declaration-no-important
4
4
 
5
5
  @if $link-shade-percentage != 0 {
6
6
  &:hover,
7
7
  &:focus {
8
- color: if(color-contrast($value) == $color-contrast-light, shade-color($value, $link-shade-percentage), tint-color($value, $link-shade-percentage));
8
+ color: if(color-contrast($value) == $color-contrast-light, shade-color($value, $link-shade-percentage), tint-color($value, $link-shade-percentage)) !important; // stylelint-disable-line declaration-no-important
9
9
  }
10
10
  }
11
11
  }