1
0
Fork 0
mirror of https://github.com/DanielnetoDotCom/YouPHPTube synced 2025-10-03 17:59:55 +02:00
Oinktube/node_modules/js-circle-progress/docs/sass/_index.scss
2022-09-08 12:40:21 -03:00

398 lines
6.5 KiB
SCSS

.check {
display: inline-block;
margin-right: .5em;
color: hsl(142, 80%, 40%);
animation: check .1s .7s backwards;
}
@keyframes check {
from {
opacity: 0;
transform: scale(0);
}
80% {
opacity: 1;
transform: scale(1.3);
}
to {
transform: none;
}
}
.intro-heading {
animation: bounce-in .4s ease-in-out;
}
@keyframes bounce-in {
0% {
transform: translateY(-2.7em);
animation-timing-function: ease-out;
}
50% {
transform: translateY(10px) scaleY(1.4);
}
75% {
transform: translateY(-6px) scaleY(1.2);
}
90% {
transform: translateY(2.5px);
}
100% {
transform: none;
}
}
.intro {
color: hsl(0, 0%, 30%);
.example {
position: relative;
display: flex;
flex-wrap: wrap;
overflow: hidden;
min-height: calc(300px + 25px * 2);
}
.progress {
padding: 20px 50px 0 20px;
width: 300px;
> svg {
width: 100%;
* {
transform-box: fill-box;
transform-origin: center;
}
}
.circle-progress-value {
stroke-width: 6px;
stroke: hsl(39, 100%, 50%);
}
.circle-progress-circle {
stroke-width: 6px;
stroke: hsl(39, 100%, 85%);
}
.circle-progress-text {
fill: hsl(39, 100%, 50%);
}
.circle-progress-text-value {
fill: inherit;
}
&[data-style="1"] {
.circle-progress-value {
transition: .4s .3s;
stroke-linecap: round;
stroke-width: 12;
stroke: hsl(300, 80%, 64%);
}
.circle-progress-circle {
transition: .4s;
stroke: hsl(300, 80%, 85%);
stroke-width: 3;
}
.circle-progress-text {
fill: hsl(0, 0%, 30%);
font-size: 22px;
transition: .4s;
}
}
&[data-style="2"] {
.circle-progress-value {
animation: .4s dots both;
stroke-width: 12;
stroke-linecap: round;
@keyframes dots {
from {
stroke-dasharray: 14 2;
stroke: hsl(300, 80%, 64%);
}
to {
stroke-dasharray: 0 17.7;
stroke: hsl(333, 100%, 50%);
}
}
}
.circle-progress-circle {
transition: .4s .4s;
stroke-width: 0;
stroke: hsl(0, 0%, 85%);
}
.circle-progress-text {
fill: hsl(0, 0%, 30%);
font-size: 22px;
transform: scale(0);
opacity: 0;
transition: .4s;
}
}
&[data-style="3"] {
.circle-progress-value {
animation: grow-value .5s both;
stroke-width: 12;
stroke-linecap: round;
stroke: hsl(333, 100%, 50%);
@keyframes grow-value {
0% {
stroke-dasharray: 0 17.7;
}
99.99% {
stroke-dasharray: 14 2;
}
100% {
stroke-dasharray: none;
}
}
}
.circle-progress-circle {
stroke-width: 0;
stroke: hsl(0, 0%, 85%);
}
.circle-progress-text {
fill: hsl(333, 100%, 50%);
font-size: 16px;
transition: transform .4s;
}
}
&[data-style="4"] {
.circle-progress-value {
animation: value-4 .5s both;
stroke-width: 12;
stroke-linecap: round;
stroke: hsl(333, 100%, 50%);
@keyframes value-4 {
30% {
stroke-width: 12;
}
80% {
stroke-width: 2;
}
100% {
stroke: white;
stroke-width: 4;
}
}
}
.circle-progress-circle {
animation: grow-circle .5s both;
stroke-width: 0;
stroke: hsl(0, 0%, 85%);
@keyframes grow-circle {
0% {
stroke-width: 0;
}
37% {
stroke-width: 6;
}
100% {
stroke-width: 6;
}
}
}
.circle-progress-text {
fill: hsl(0, 0%, 85%);
font-size: 16px;
transition: transform .4s;
}
}
&[data-style="5"] {
.circle-progress-value {
animation: .4s grow-xxl-value both;
}
.circle-progress-circle {
animation: .4s grow-xxl-circle both;
stroke: hsl(0, 0%, 85%);
}
@keyframes grow-xxl-value {
from {
stroke: white;
}
to {
stroke-width: 50;
stroke: hsl(210, 100%, 60%);
stroke-linecap: butt;
}
}
@keyframes grow-xxl-circle {
from {
stroke-width: 6;
}
to {
stroke-width: 50;
}
}
.circle-progress-text {
fill: hsl(0, 0%, 100%);
transition: .4s;
transform: translate(23.7px, 7.7px);
}
.circle-progress-text-max {
display: none;
}
.circle-progress-text-value {
font-size: 16px;
}
}
}
&:not([data-demo]) {
.progress {
animation: check .2s .6s backwards;
}
.quality {
visibility: hidden;
animation: none;
}
}
&[data-demo=responsive] {
.progress {
animation: demo-responsive 1.6s .7s;
// @keyframes demo-responsive {
// 0% {
// width: 300px;
// }
// 15% {
// width: 100px;
// }
// 30% {
// width: 100px;
// }
// 45% {
// width: 450px;
// }
// 85% {
// width: 450px;
// }
// 100% {
// width: 300px;
// }
// }
@keyframes demo-responsive {
0% {
transform: none;
}
12% {
transform: scale(.3);
}
40% {
transform: scale(.3);
}
55% {
transform: scale(1.3);
}
92% {
transform: scale(1.3);
}
100% {
transform: none;
}
}
}
.quality.responsive ~ .quality {
visibility: hidden;
animation: none;
}
}
&[data-demo=animated] {
.quality.animated ~ .quality {
visibility: hidden;
animation: none;
}
}
&[data-demo=stylable] {
.quality.stylable ~ .quality {
visibility: hidden;
animation: none;
}
}
&[data-demo=finished] {
.quality-last,
.quality-lastest,
.intro-footer {
visibility: visible;
opacity: 1;
}
}
}
.intro-text {
display: flex;
flex-direction: column;
}
.intro-text-body {
flex: auto;
}
.qualities {
list-style: none;
}
.quality {
opacity: 0;
font-weight: bold;
animation: pop-in .4s cubic-bezier(0.74, 0.92, 0.71, 1) forwards;
transform-origin: left;
&.last {
visibility: hidden;
animation: none;
}
}
.quality-inner {
animation: skidding .4s cubic-bezier(0.74, 0.92, 0.71, 1) forwards;
transform-origin: bottom left;
}
@keyframes pop-in {
0% {
transform: translateX(100%);
}
80% {
transform: translateX(-10px);
opacity: 1;
}
92% {
transform: none;
opacity: 1;
}
100% {
transform: none;
opacity: 1;
}
}
@keyframes skidding {
0% {
transform: none;
}
50% {
transform: none;
animation-timing-function: ease-in;
}
80% {
transform: skewX(30deg) scaleX(.9);
animation-timing-function: ease-in;
}
92% {
transform: none;
}
}
.quality-last,
.quality-lastest,
.intro-footer {
visibility: hidden;
opacity: 0;
transition: .3s;
}
.intro-footer,
.quality-lastest {
transition: 3s 1.5s ease-out;
}
// @for $i from 1 through 5 {
// .popin-#{$i} {
// animation-delay: $i * 3s;
// }
// }
.intro-footer {
font-size: .9rem;
}