123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179 |
- @use 'mixins/mixins' as *;
- @use 'mixins/utils' as *;
- @use 'common/var' as *;
- @include b(progress) {
- position: relative;
- line-height: 1;
- display: flex;
- align-items: center;
- @include e(text) {
- font-size: 14px;
- color: getCssVar('text-color', 'regular');
- margin-left: 5px;
- min-width: 50px;
- line-height: 1;
- i {
- vertical-align: middle;
- display: block;
- }
- }
- @include m((circle, dashboard)) {
- display: inline-block;
- .#{$namespace}-progress__text {
- position: absolute;
- top: 50%;
- left: 0;
- width: 100%;
- text-align: center;
- margin: 0;
- transform: translate(0, -50%);
- i {
- vertical-align: middle;
- display: inline-block;
- }
- }
- }
- @include m(without-text) {
- .#{$namespace}-progress__text {
- display: none;
- }
- .#{$namespace}-progress-bar {
- padding-right: 0;
- margin-right: 0;
- display: block;
- }
- }
- @include m(text-inside) {
- .#{$namespace}-progress-bar {
- padding-right: 0;
- margin-right: 0;
- }
- }
- @include when(success) {
- .#{$namespace}-progress-bar__inner {
- background-color: getCssVar('color-success');
- }
- .#{$namespace}-progress__text {
- color: getCssVar('color-success');
- }
- }
- @include when(warning) {
- .#{$namespace}-progress-bar__inner {
- background-color: getCssVar('color-warning');
- }
- .#{$namespace}-progress__text {
- color: getCssVar('color-warning');
- }
- }
- @include when(exception) {
- .#{$namespace}-progress-bar__inner {
- background-color: getCssVar('color-danger');
- }
- .#{$namespace}-progress__text {
- color: getCssVar('color-danger');
- }
- }
- }
- @include b(progress-bar) {
- flex-grow: 1;
- box-sizing: border-box;
- @include e(outer) {
- height: 6px;
- border-radius: 100px;
- background-color: getCssVar('border-color-lighter');
- overflow: hidden;
- position: relative;
- vertical-align: middle;
- }
- @include e(inner) {
- position: absolute;
- left: 0;
- top: 0;
- height: 100%;
- background-color: getCssVar('color-primary');
- text-align: right;
- border-radius: 100px;
- line-height: 1;
- white-space: nowrap;
- transition: width 0.6s ease;
- @include utils-vertical-center;
- @include m(indeterminate) {
- transform: translateZ(0);
- animation: indeterminate 3s infinite;
- }
- @include m(striped) {
- background-image: linear-gradient(
- 45deg,
- rgba(0, 0, 0, 0.1) 25%,
- transparent 25%,
- transparent 50%,
- rgba(0, 0, 0, 0.1) 50%,
- rgba(0, 0, 0, 0.1) 75%,
- transparent 75%,
- transparent
- );
- background-size: 1.25em 1.25em;
- &.#{$namespace}-progress-bar__inner--striped-flow {
- animation: striped-flow 3s linear infinite;
- }
- }
- }
- @include e(innerText) {
- display: inline-block;
- vertical-align: middle;
- color: $color-white;
- font-size: 12px;
- margin: 0 5px;
- }
- }
- @keyframes progress {
- 0% {
- background-position: 0 0;
- }
- 100% {
- background-position: 32px 0;
- }
- }
- @keyframes indeterminate {
- 0% {
- left: -100%;
- }
- 100% {
- left: 100%;
- }
- }
- @keyframes striped-flow {
- 0% {
- background-position: -100%;
- }
- 100% {
- background-position: 100%;
- }
- }
|