137 lines
3.2 KiB
SCSS
Vendored
137 lines
3.2 KiB
SCSS
Vendored
.drawer-overlay {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
width: 0;
|
|
height: 0;
|
|
z-index: 1000;
|
|
box-sizing: border-box;
|
|
pointer-events: none;
|
|
background: rgba(0, 0, 0, 0.76);
|
|
outline: none;
|
|
opacity: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: flex-end;
|
|
|
|
.overlay-mask {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
bottom: 0;
|
|
right: 0;
|
|
z-index: 1;
|
|
}
|
|
|
|
.overlay-body {
|
|
display: flex;
|
|
flex-direction: column;
|
|
width: 100%;
|
|
height: 100%;
|
|
max-width: 100%;
|
|
max-height: 100%;
|
|
z-index: 2;
|
|
|
|
.overlay-close {
|
|
flex-shrink: 0;
|
|
display: flex;
|
|
align-items: flex-end;
|
|
justify-content: flex-end;
|
|
> a {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
width: 40px;
|
|
height: 40px;
|
|
color: #dbdbde;
|
|
&:hover {
|
|
color: #fff
|
|
}
|
|
.icon {
|
|
width: 24px;
|
|
height: 24px
|
|
}
|
|
}
|
|
}
|
|
|
|
.overlay-resize {
|
|
width: 100%;
|
|
height: 5px;
|
|
margin-bottom: -5px;
|
|
z-index: 1;
|
|
}
|
|
|
|
.overlay-content {
|
|
flex: 1;
|
|
position: relative;
|
|
background: #fff;
|
|
border-radius: 18px 18px 0 0;
|
|
transform: translate(0, 15%) scale(0.98);
|
|
cursor: default;
|
|
opacity: 0;
|
|
}
|
|
}
|
|
|
|
&.overlay-visible {
|
|
pointer-events: auto;
|
|
opacity: 1;
|
|
width: 100%;
|
|
height: 100%;
|
|
transition: opacity 0.2s ease;
|
|
.overlay-body {
|
|
.overlay-content {
|
|
opacity: 1;
|
|
transform: translate(0, 0) scale(1);
|
|
transition: opacity 0.2s ease, transform 0.3s ease;
|
|
}
|
|
}
|
|
}
|
|
|
|
&.overlay-hide {
|
|
width: 100%;
|
|
height: 100%;
|
|
transition: opacity 0.2s ease;
|
|
.overlay-body {
|
|
.overlay-content {
|
|
transform: translate(0, 15%) scale(0.98);
|
|
transition: opacity 0.2s ease, transform 0.2s ease
|
|
}
|
|
}
|
|
}
|
|
|
|
&.right {
|
|
flex-direction: row;
|
|
justify-content: flex-end;
|
|
.overlay-body {
|
|
flex-direction: row;
|
|
.overlay-close {
|
|
align-items: flex-start;
|
|
}
|
|
.overlay-resize {
|
|
width: 5px;
|
|
height: 100%;
|
|
margin-right: -5px;
|
|
z-index: 1;
|
|
}
|
|
.overlay-content {
|
|
transform: translate(15%, 0) scale(0.98);
|
|
border-radius: 18px 0 0 18px;
|
|
}
|
|
}
|
|
&.overlay-visible {
|
|
.overlay-body {
|
|
.overlay-content {
|
|
transform: translate(0, 0) scale(1);
|
|
}
|
|
}
|
|
}
|
|
&.overlay-hide {
|
|
.overlay-body {
|
|
.overlay-content {
|
|
transform: translate(15%, 0) scale(0.98);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|