@use 'sass:map';

@import './variables.scss';

@mixin md-elevation($z-value) {
  @if type-of($z-value) != number or not unitless($z-value) {
    @error '$z-value must be a unitless number';
  }

  @if not map-has-key($md-elevation-umbra, $z-value) {
    @error '$z-value must be one of 0,1,2,3,4,6,8,12,16,24';
  }

  background-color: var(--md-elevation-#{$z-value});
  box-shadow: #{map.get($md-elevation-umbra, $z-value)} $md-elevation-umbra-color,
    #{map.get($md-elevation-penumbra, $z-value)} $md-elevation-penumbra-color,
    #{map.get($md-elevation-ambient, $z-value)} $md-elevation-ambient-color;
}
