]> git.ipfire.org Git - thirdparty/bootstrap.git/commitdiff
Add check to rgba-css-var function for body or bg (#34699)
authorMark Otto <markd.otto@gmail.com>
Tue, 10 Aug 2021 14:16:48 +0000 (07:16 -0700)
committerGitHub <noreply@github.com>
Tue, 10 Aug 2021 14:16:48 +0000 (17:16 +0300)
scss/_functions.scss
scss/_root.scss
scss/_variables.scss

index e00395505fed0d9f5df9df3bd6a063fa9ece6dad..30539b39302425c03b31d5898a95b5b4a5b40abe 100644 (file)
   @return red($value), green($value), blue($value);
 }
 
+// stylelint-disable scss/dollar-variable-pattern
 @function rgba-css-var($identifier, $target) {
-  @return rgba(var(--#{$variable-prefix}#{$identifier}-rgb), var(--#{$variable-prefix}#{$target}-opacity));
+  @if $identifier == "body" and $target == "bg" {
+    @return rgba(var(--#{$variable-prefix}#{$identifier}-bg-rgb), var(--#{$variable-prefix}#{$target}-opacity));
+  } @if $identifier == "body" and $target == "text" {
+    @return rgba(var(--#{$variable-prefix}#{$identifier}-color-rgb), var(--#{$variable-prefix}#{$target}-opacity));
+  } @else {
+    @return rgba(var(--#{$variable-prefix}#{$identifier}-rgb), var(--#{$variable-prefix}#{$target}-opacity));
+  }
 }
 
-// stylelint-disable scss/dollar-variable-pattern
 @function map-loop($map, $func, $args...) {
   $_map: ();
 
index 189b2b3bbe0fc55c56f58c41dd80fc7a798b72bd..5e138e97b492e062f0568786a27c2acba27fa377 100644 (file)
@@ -23,7 +23,8 @@
 
   --#{$variable-prefix}white-rgb: #{to-rgb($white)};
   --#{$variable-prefix}black-rgb: #{to-rgb($black)};
-  --#{$variable-prefix}body-rgb: #{to-rgb($body-color)};
+  --#{$variable-prefix}body-color-rgb: #{to-rgb($body-color)};
+  --#{$variable-prefix}body-bg-rgb: #{to-rgb($body-bg)};
 
   // Fonts
 
index 3750fa2c2320e6cf3c0bb268dee330fb4de0b8c1..1700f994134b2572901a18e24e652ff099d4bc2e 100644 (file)
@@ -409,23 +409,33 @@ $body-text-align:           null !default;
 //
 // Extends the default `$theme-colors` maps to help create our utilities.
 
+// Come v6, we'll de-dupe these variables. Until then, for backward compatibility, we keep them to reassign.
 // scss-docs-start utilities-colors
-$utilities-colors: map-merge(
-  $theme-colors-rgb,
+$utilities-colors: $theme-colors-rgb !default;
+// scss-docs-end utilities-colors
+
+// scss-docs-start utilities-text-colors
+$utilities-text: map-merge(
+  $utilities-colors,
   (
     "black": to-rgb($black),
     "white": to-rgb($white),
-    "body":  to-rgb($body-color)
+    "body": to-rgb($body-color)
   )
 ) !default;
-// scss-docs-end utilities-colors
-
-// scss-docs-start utilities-text-colors
-$utilities-text-colors: map-loop($utilities-colors, rgba-css-var, "$key", "text") !default;
+$utilities-text-colors: map-loop($utilities-text, rgba-css-var, "$key", "text") !default;
 // scss-docs-end utilities-text-colors
 
 // scss-docs-start utilities-bg-colors
-$utilities-bg-colors: map-loop($utilities-colors, rgba-css-var, "$key", "bg") !default;
+$utilities-bg: map-merge(
+  $utilities-colors,
+  (
+    "black": to-rgb($black),
+    "white": to-rgb($white),
+    "body": to-rgb($body-bg)
+  )
+) !default;
+$utilities-bg-colors: map-loop($utilities-bg, rgba-css-var, "$key", "bg") !default;
 // scss-docs-end utilities-bg-colors
 
 // Links