.w-drawer-wrap(v-if="showWrapper || pushContent" :class="wrapperClasses")
//- Pushing content.
.w-drawer-wrap__track(v-if="pushContent" :style="trackStyles")
.w-drawer-wrap__pushable
w-overlay(
v-if="!noOverlay"
ref="overlay"
v-model="showDrawer"
@click="onOutsideClick"
:persistent="persistent"
persistent-no-animation
:bg-color="overlayColor || 'transparent'"
:opacity="overlayOpacity")
slot(name="pushable")
transition(
name="fade"
@before-leave="onBeforeClose"
@after-leave="onClose")
component.w-drawer(
v-if="showDrawer"
ref="drawer"
:is="tag || 'aside'"
:class="drawerClasses"
:style="styles"
:tabindex="noOverlay ? 0 : null"
@keydown.escape.stop="noOverlay && !persistent && onOutsideClick()")
slot
//- Other cases.
template(v-else)
w-overlay(
v-if="!noOverlay"
ref="overlay"
v-model="showDrawer"
@click="onOutsideClick"
:persistent="persistent"
persistent-no-animation
:bg-color="overlayColor"
:opacity="overlayOpacity")
transition(
:name="transitionName"
appear
@before-leave="onBeforeClose"
@after-leave="onClose")
component.w-drawer(
v-if="showDrawer"
ref="drawer"
:is="tag || 'aside'"
:class="drawerClasses"
:style="styles"
:tabindex="noOverlay ? 0 : null"
@keydown.escape.stop="noOverlay && !persistent && onOutsideClick()")
slot