@import "../variables"; @import "../mixins"; //-- Variables $drawer-width: 24 * $unit; $drawer-bg-color: unquote("rgb(#{$palette-grey-50})") !default; $drawer-text-color: unquote("rgb(#{$palette-grey-800})") !default; $drawer-border-color: unquote("rgb(#{$palette-grey-300})") !default; //-- Local styles .drawer { position: fixed; top: 0; right: 0; left: 0; z-index: 2; width: 100vw; height: 100vh; pointer-events: none; } .active { pointer-events: all; > .content { transition-delay: $animation-delay; transform: translateX(0); } > .overlay { opacity: $color-overlay-opacity; } } .left { > .content { left: 0; border-right: 1px solid $drawer-border-color; } &:not(.active) > .content { transform: translateX(- $drawer-width); } } .right { > .content { right: 0; border-left: 1px solid $drawer-border-color; } &:not(.active) > .content { transform: translateX($drawer-width); } } .overlay { width: 100%; height: 100%; background-color: $color-overlay; opacity: 0; transition-timing-function: $animation-curve-default; transition-duration: $animation-duration; transition-property: opacity; } .content { @include shadow-2dp(); position: absolute; top: 0; display: block; width: $drawer-width; height: 100%; overflow-y: scroll; color: $drawer-text-color; background-color: $drawer-bg-color; transition-delay: 0s; transition-timing-function: $animation-curve-default; transition-duration: $animation-duration; transition-property: transform; transform-style: preserve-3d; will-change: transform; }