@@ -43,25 +43,30 @@ $prefix: 'mat-elevation-z';
43
43
@else {
44
44
// Copied from @material/elevation/_elevation-theme.scss#_box-shadow
45
45
// TODO(mmalerba): Add support for graceful handling of CSS var color to MDC.
46
- $shadow-color :
47
- if (meta .type-of ($color ) == color and $opacity != null , rgba ($color , $opacity ), $color );
48
46
$umbra-z-value : map .get (mdc-elevation .$umbra-map , $zValue );
49
47
$penumbra-z-value : map .get (mdc-elevation .$penumbra-map , $zValue );
50
48
$ambient-z-value : map .get (mdc-elevation .$ambient-map , $zValue );
49
+
50
+ $color-opacity : if ($opacity != null , $opacity , 1 );
51
+ $umbra-color : rgba ($color , mdc-elevation .$umbra-opacity * $color-opacity );
52
+ $penumbra-color : rgba ($color , mdc-elevation .$penumbra-opacity * $color-opacity );
53
+ $ambient-color : rgba ($color , mdc-elevation .$ambient-opacity * $color-opacity );
54
+
51
55
$box-shadow : (
52
- #{' #{$umbra-z-value } #{$shadow -color } ' } ,
53
- #{' #{$penumbra-z-value } #{$shadow -color } ' } ,
54
- #{$ambient-z-value } $shadow -color
56
+ #{' #{$umbra-z-value } #{$umbra -color } ' } ,
57
+ #{' #{$penumbra-z-value } #{$penumbra -color } ' } ,
58
+ #{$ambient-z-value } $ambient -color
55
59
);
60
+
56
61
@include mdc-elevation .shadow ($box-shadow );
57
62
}
58
63
}
59
64
60
65
// Applies the elevation to an element in a manner that allows
61
66
// consumers to override it via the Material elevation classes.
62
- @mixin overridable-elevation ($zValue , $color : $color ) {
67
+ @mixin overridable-elevation ($zValue , $color : $color , $opacity : null ) {
63
68
& :not ([class *= ' #{$prefix}' ]) {
64
- @include elevation ($zValue , $color );
69
+ @include elevation ($zValue , $color , $opacity );
65
70
}
66
71
}
67
72
0 commit comments