blob: 857a69c091b10525471bc259df030589eb186c66 [file] [log] [blame]
@import './elevation';
@mixin mat-private-theme-elevation($zValue, $config, $opacity: $mat-elevation-opacity) {
$foreground: map-get($config, foreground);
$elevation-color: map-get($foreground, elevation);
$elevation-color-or-default: if($elevation-color == null, $mat-elevation-color, $elevation-color);
@include mat-elevation($zValue, $elevation-color-or-default, $opacity);
}
@mixin mat-private-theme-overridable-elevation($zValue, $config, $opacity: $mat-elevation-opacity) {
$foreground: map-get($config, foreground);
$elevation-color: map-get($foreground, elevation);
$elevation-color-or-default: if($elevation-color == null, $mat-elevation-color, $elevation-color);
@include mat-overridable-elevation($zValue, $elevation-color-or-default, $opacity);
}
// If the mat-animation-noop class is present on the components root element,
// prevent non css animations from running.
// NOTE: Currently this mixin should only be used with components that do not
// have any projected content.
@mixin mat-private-animation-noop() {
// @at-root is used to steps outside of the hierarchy of the scss rules. This is
// done to allow a class to be added to be added to base of the scss nesting
// context.
// For example:
// .my-root {
// .my-subclass {
// @include mat-private-animation-noop();
// }
// }
// results in:
// ._mat-animation-noopable.my-root .my-subclass { ... }
@at-root ._mat-animation-noopable#{&} {
transition: none;
animation: none;
@content;
}
}