mirror of
https://github.com/tusen-ai/naive-ui.git
synced 2024-12-21 04:50:14 +08:00
117 lines
3.3 KiB
SCSS
117 lines
3.3 KiB
SCSS
@import './mixins/mixins.scss';
|
|
@import './themes/vars.scss';
|
|
|
|
@mixin alert-type-mixin ($type) {
|
|
@include m($type + '-type') {
|
|
background-color: map-get($--alert-background-color, $type);
|
|
box-shadow: inset 0 0 0 1.2px map-get($--alert-border-color, $type);
|
|
text-align: left;
|
|
@include e(icon) {
|
|
@include b(icon) {
|
|
fill: map-get($--alert-icon-color, $type);
|
|
}
|
|
}
|
|
@include b(alert-body) {
|
|
@include e(title) {
|
|
color: map-get($--alert-title-text-color, $type);
|
|
}
|
|
@include e(content) {
|
|
color: map-get($--alert-content-text-color, $type);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
@include themes-mixin {
|
|
@include b(alert) {
|
|
@include once {
|
|
$duration: .3s;
|
|
&.n-fade-in-height-expand-leave, &.n-fade-in-height-expand-enter-to {
|
|
opacity: 1;
|
|
transform: scale(1);
|
|
}
|
|
&.n-fade-in-height-expand-leave-to, &.n-fade-in-height-expand-enter {
|
|
opacity: 0;
|
|
margin-top: 0 !important;
|
|
margin-bottom: 0 !important;
|
|
transform: scale(.9);
|
|
}
|
|
&.n-fade-in-height-expand-leave-active {
|
|
overflow: hidden;
|
|
transform: top center;
|
|
transition:
|
|
transform $duration $default-cubic-bezier,
|
|
max-height $duration $default-cubic-bezier,
|
|
opacity $duration $fast-in-cubic-bezier,
|
|
margin-top $duration $default-cubic-bezier,
|
|
margin-bottom $duration $default-cubic-bezier;
|
|
}
|
|
&.n-fade-in-height-expand-enter-active {
|
|
overflow: hidden;
|
|
transition: max-height $duration $default-cubic-bezier,
|
|
opacity $duration $slow-out-cubic-bezier,
|
|
margin-top $duration $default-cubic-bezier,
|
|
margin-bottom $duration $default-cubic-bezier;
|
|
}
|
|
border-radius: 6px;
|
|
position: relative;
|
|
transition: background-color .3s $default-cubic-bezier, box-shadow .3s $default-cubic-bezier;
|
|
@include e(icon) {
|
|
position: absolute;
|
|
left: 12px;
|
|
top: 14px;
|
|
align-items: center;
|
|
justify-content: center;
|
|
width: 19px;
|
|
height: 19px;
|
|
@include b(icon) {
|
|
font-size: 26px;
|
|
}
|
|
}
|
|
@include e(close) {
|
|
position: absolute;
|
|
right: 16px;
|
|
top: 14px;
|
|
width: 19px;
|
|
height: 19px;
|
|
@include b(icon) {
|
|
cursor: pointer;
|
|
font-size: 19px;
|
|
}
|
|
}
|
|
@include b(alert-body) {
|
|
padding: 16px 16px 16px 48px;
|
|
@include e(title) {
|
|
transition: color .3s $default-cubic-bezier;
|
|
font-size: 16px;
|
|
line-height: 19px;
|
|
font-weight: 700;
|
|
& + {
|
|
@include e(content) {
|
|
margin-top: 9px;
|
|
}
|
|
}
|
|
}
|
|
@include e(content) {
|
|
transition: color .3s $default-cubic-bezier;
|
|
font-size: 14px;
|
|
}
|
|
}
|
|
@include m(no-icon) {
|
|
@include b(alert-body) {
|
|
padding-left: 19px;
|
|
}
|
|
}
|
|
}
|
|
@include e(close) {
|
|
@include b(icon) {
|
|
fill: $--alert-color-fill;
|
|
}
|
|
}
|
|
@include alert-type-mixin('default');
|
|
@include alert-type-mixin('success');
|
|
@include alert-type-mixin('info');
|
|
@include alert-type-mixin('error');
|
|
@include alert-type-mixin('warning');
|
|
}
|
|
} |