mirror of
https://github.com/chibicitiberiu/ytsm.git
synced 2024-02-24 05:43:31 +00:00
added missing files + progress ring
This commit is contained in:
parent
5175846310
commit
60741a2b3c
45
app/YtManagerApp/static/YtManagerApp/css/lib/_hamburger.css
Normal file
45
app/YtManagerApp/static/YtManagerApp/css/lib/_hamburger.css
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
#hamburger-button {
|
||||||
|
margin-right: 0.5rem; }
|
||||||
|
#hamburger-button span {
|
||||||
|
display: block;
|
||||||
|
width: 1.75rem;
|
||||||
|
height: 0.25rem;
|
||||||
|
margin-bottom: 0.25rem;
|
||||||
|
position: relative;
|
||||||
|
background: #cdcdcd;
|
||||||
|
border-radius: 0.25rem;
|
||||||
|
z-index: 100;
|
||||||
|
transform-origin: 50% 50%;
|
||||||
|
transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease; }
|
||||||
|
#hamburger-button span:nth-child(1) {
|
||||||
|
margin-top: 0.25rem; }
|
||||||
|
#hamburger-button span:nth-child(2) {
|
||||||
|
transform-origin: 20% 50%; }
|
||||||
|
#hamburger-button.hamburger-show span {
|
||||||
|
opacity: 1;
|
||||||
|
background: #232323; }
|
||||||
|
#hamburger-button.hamburger-show span:nth-child(1) {
|
||||||
|
transform: rotate(-45deg) translate(-0.1875rem, 0.0625rem) scale(0.625, 1); }
|
||||||
|
#hamburger-button.hamburger-show span:nth-child(2) {
|
||||||
|
opacity: 0;
|
||||||
|
transform: rotate(0deg) scale(0, 1); }
|
||||||
|
#hamburger-button.hamburger-show span:nth-child(3) {
|
||||||
|
transform: rotate(45deg) translate(-0.1875rem, -0.0625rem) scale(0.625, 1); }
|
||||||
|
|
||||||
|
#hamburger {
|
||||||
|
position: fixed;
|
||||||
|
background: white;
|
||||||
|
height: 100%;
|
||||||
|
width: 20rem;
|
||||||
|
z-index: 99;
|
||||||
|
top: 0;
|
||||||
|
padding-top: 5rem;
|
||||||
|
left: -100%;
|
||||||
|
transition: left 0.5s ease; }
|
||||||
|
#hamburger.hamburger-show {
|
||||||
|
left: 0; }
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
#hamburger {
|
||||||
|
width: 100%; } }
|
||||||
|
|
||||||
|
/*# sourceMappingURL=_hamburger.css.map */
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"mappings": "AAEA,iBAAkB;EACd,YAAY,EAAE,MAAM;EAEpB,sBAAK;IACD,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,OAAO;IACf,aAAa,EAAE,OAAO;IACtB,QAAQ,EAAE,QAAQ;IAElB,UAAU,EAAE,OAAO;IACnB,aAAa,EAAE,OAAO;IAEtB,OAAO,EAAE,GAAG;IAEZ,gBAAgB,EAAE,OAAO;IAEzB,UAAU,EAAE,qHAEkB;IAE9B,mCAAe;MACX,UAAU,EAAE,OAAO;IAEvB,mCAAe;MACX,gBAAgB,EAAE,OAAO;EAK7B,qCAAK;IACD,OAAO,EAAE,CAAC;IACV,UAAU,EAAE,OAAO;IAEnB,kDAAe;MACX,SAAS,EAAE,+DAA8D;IAE7E,kDAAe;MACX,OAAO,EAAE,CAAC;MACV,SAAS,EAAE,wBAAwB;IAEvC,kDAAe;MACX,SAAS,EAAE,+DAA+D;;AAM1F,UAAW;EACP,QAAQ,EAAE,KAAK;EACf,UAAU,EAAE,KAAK;EACjB,MAAM,EAAE,IAAI;EACZ,KAAK,EAAE,KAAK;EACZ,OAAO,EAAE,EAAE;EAEX,GAAG,EAAE,CAAC;EACN,WAAW,EAAE,IAAI;EACjB,IAAI,EAAE,KAAK;EAEX,UAAU,EAAE,cAAc;EAE1B,yBAAiB;IACb,IAAI,EAAE,CAAC;EAGX,yBAAmC;IAjBvC,UAAW;MAkBH,KAAK,EAAE,IAAI",
|
||||||
|
"sources": ["_hamburger.scss"],
|
||||||
|
"names": [],
|
||||||
|
"file": "_hamburger.css"
|
||||||
|
}
|
88
app/YtManagerApp/static/YtManagerApp/css/lib/_hamburger.scss
Normal file
88
app/YtManagerApp/static/YtManagerApp/css/lib/_hamburger.scss
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
@import "variables";
|
||||||
|
|
||||||
|
#hamburger-button {
|
||||||
|
margin-right: 0.5rem;
|
||||||
|
|
||||||
|
span {
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
width: 1.75rem;
|
||||||
|
height: 0.25rem;
|
||||||
|
margin-bottom: 0.25rem;
|
||||||
|
|
||||||
|
display: block;
|
||||||
|
background: #cdcdcd;
|
||||||
|
border-radius: 0.25rem;
|
||||||
|
|
||||||
|
transform-origin: 50% 50%;
|
||||||
|
|
||||||
|
transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0),
|
||||||
|
background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0),
|
||||||
|
opacity 0.55s ease;
|
||||||
|
|
||||||
|
&:nth-child(1) {
|
||||||
|
margin-top: 0.25rem;
|
||||||
|
}
|
||||||
|
&:nth-child(2) {
|
||||||
|
transform-origin: 20% 50%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&.hamburger-show {
|
||||||
|
span {
|
||||||
|
opacity: 1;
|
||||||
|
background: #232323;
|
||||||
|
|
||||||
|
&:nth-child(1) {
|
||||||
|
transform: rotate(-45deg) translate(-.1875rem, 0.0625rem) scale(0.625, 1);
|
||||||
|
}
|
||||||
|
&:nth-child(2) {
|
||||||
|
opacity: 0;
|
||||||
|
transform: rotate(0deg) scale(0, 1);
|
||||||
|
}
|
||||||
|
&:nth-child(3) {
|
||||||
|
transform: rotate(45deg) translate(-0.1875rem, -0.0625rem) scale(0.625, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#hamburger {
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
left: -100%;
|
||||||
|
z-index: 99;
|
||||||
|
padding-top: 5rem;
|
||||||
|
|
||||||
|
width: 20rem;
|
||||||
|
height: 100%;
|
||||||
|
|
||||||
|
display: flex;
|
||||||
|
background: white;
|
||||||
|
flex-direction: column;
|
||||||
|
|
||||||
|
transition: left 0.5s ease;
|
||||||
|
|
||||||
|
&.hamburger-show {
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: $breakpoint-md) {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#hamburger-footer {
|
||||||
|
width: 100%;
|
||||||
|
flex: 0;
|
||||||
|
|
||||||
|
a {
|
||||||
|
margin-left: 0.5rem;
|
||||||
|
margin-right: 0.5rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#hamburger-content {
|
||||||
|
overflow-y: auto;
|
||||||
|
flex: 1;
|
||||||
|
}
|
44
app/YtManagerApp/static/YtManagerApp/css/lib/_loading.css
Normal file
44
app/YtManagerApp/static/YtManagerApp/css/lib/_loading.css
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
/* Loading animation */
|
||||||
|
.loading-dual-ring {
|
||||||
|
display: inline-block;
|
||||||
|
width: 64px;
|
||||||
|
height: 64px; }
|
||||||
|
.loading-dual-ring:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
width: 46px;
|
||||||
|
height: 46px;
|
||||||
|
margin: 1px;
|
||||||
|
border-radius: 50%;
|
||||||
|
border: 5px solid var(--primary);
|
||||||
|
border-color: var(--primary) transparent var(--primary) transparent;
|
||||||
|
animation: loading-dual-ring 1.2s linear infinite; }
|
||||||
|
|
||||||
|
.loading-dual-ring-small {
|
||||||
|
display: inline-block;
|
||||||
|
width: 32px;
|
||||||
|
height: 32px; }
|
||||||
|
.loading-dual-ring-small:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
width: 23px;
|
||||||
|
height: 23px;
|
||||||
|
margin: 1px;
|
||||||
|
border-radius: 50%;
|
||||||
|
border: 2.5px solid var(--primary);
|
||||||
|
border-color: var(--primary) transparent var(--primary) transparent;
|
||||||
|
animation: loading-dual-ring 1.2s linear infinite; }
|
||||||
|
|
||||||
|
@keyframes loading-dual-ring {
|
||||||
|
0% {
|
||||||
|
transform: rotate(0deg); }
|
||||||
|
100% {
|
||||||
|
transform: rotate(360deg); } }
|
||||||
|
.loading-dual-ring-center-screen {
|
||||||
|
position: fixed;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
margin-top: -32px;
|
||||||
|
margin-left: -32px; }
|
||||||
|
|
||||||
|
/*# sourceMappingURL=_loading.css.map */
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"mappings": "AAmBA,uBAAuB;AACvB,kBAAmB;EAlBf,OAAO,EAAE,YAAY;EACrB,KAAK,EAAE,IAAa;EACpB,MAAM,EAAE,IAAa;EAErB,wBAAQ;IACJ,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,IAAa;IACpB,MAAM,EAAE,IAAa;IACrB,MAAM,EAAE,GAAG;IACX,aAAa,EAAE,GAAG;IAClB,MAAM,EAAE,wBAAmC;IAC3C,YAAY,EAAE,qDAAqD;IACnE,SAAS,EAAE,sCAAsC;;AASzD,wBAAyB;EAtBrB,OAAO,EAAE,YAAY;EACrB,KAAK,EAAE,IAAa;EACpB,MAAM,EAAE,IAAa;EAErB,8BAAQ;IACJ,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,IAAa;IACpB,MAAM,EAAE,IAAa;IACrB,MAAM,EAAE,GAAG;IACX,aAAa,EAAE,GAAG;IAClB,MAAM,EAAE,0BAAmC;IAC3C,YAAY,EAAE,qDAAqD;IACnE,SAAS,EAAE,sCAAsC;;AAazD,4BAOC;EANG,EAAG;IACC,SAAS,EAAE,YAAY;EAE3B,IAAK;IACD,SAAS,EAAE,cAAc;AAIjC,gCAAiC;EAC7B,QAAQ,EAAE,KAAK;EACf,GAAG,EAAE,GAAG;EACR,IAAI,EAAE,GAAG;EACT,UAAU,EAAE,KAAK;EACjB,WAAW,EAAE,KAAK",
|
||||||
|
"sources": ["_loading.scss"],
|
||||||
|
"names": [],
|
||||||
|
"file": "_loading.css"
|
||||||
|
}
|
44
app/YtManagerApp/static/YtManagerApp/css/lib/_loading.scss
Normal file
44
app/YtManagerApp/static/YtManagerApp/css/lib/_loading.scss
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
|
||||||
|
@mixin loading-dual-ring($scale : 1) {
|
||||||
|
display: inline-block;
|
||||||
|
width: $scale * 64px;
|
||||||
|
height: $scale * 64px;
|
||||||
|
|
||||||
|
&:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
width: $scale * 46px;
|
||||||
|
height: $scale * 46px;
|
||||||
|
margin: 1px;
|
||||||
|
border-radius: 50%;
|
||||||
|
border: ($scale * 5px) solid var(--primary);
|
||||||
|
border-color: var(--primary) transparent var(--primary) transparent;
|
||||||
|
animation: loading-dual-ring 1.2s linear infinite;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Loading animation */
|
||||||
|
.loading-dual-ring {
|
||||||
|
@include loading-dual-ring(1.0);
|
||||||
|
}
|
||||||
|
|
||||||
|
.loading-dual-ring-small {
|
||||||
|
@include loading-dual-ring(0.5);
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes loading-dual-ring {
|
||||||
|
0% {
|
||||||
|
transform: rotate(0deg);
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
transform: rotate(360deg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.loading-dual-ring-center-screen {
|
||||||
|
position: fixed;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
margin-top: -32px;
|
||||||
|
margin-left: -32px;
|
||||||
|
}
|
41
app/YtManagerApp/static/YtManagerApp/css/lib/_theme.css
Normal file
41
app/YtManagerApp/static/YtManagerApp/css/lib/_theme.css
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
:root {
|
||||||
|
--blue: #007bff;
|
||||||
|
--indigo: #6610f2;
|
||||||
|
--purple: #6f42c1;
|
||||||
|
--pink: #e83e8c;
|
||||||
|
--red: #dc3545;
|
||||||
|
--orange: #fd7e14;
|
||||||
|
--yellow: #ffc107;
|
||||||
|
--green: #28a745;
|
||||||
|
--teal: #20c997;
|
||||||
|
--cyan: #17a2b8;
|
||||||
|
--white: #fff;
|
||||||
|
--gray: #6c757d;
|
||||||
|
--gray-dark: #343a40;
|
||||||
|
--primary: #007bff;
|
||||||
|
--secondary: #6c757d;
|
||||||
|
--success: #28a745;
|
||||||
|
--info: #17a2b8;
|
||||||
|
--warning: #ffc107;
|
||||||
|
--danger: #dc3545;
|
||||||
|
--light: #f8f9fa;
|
||||||
|
--dark: #343a40;
|
||||||
|
--breakpoint-xs: 0;
|
||||||
|
--breakpoint-sm: 576px;
|
||||||
|
--breakpoint-md: 768px;
|
||||||
|
--breakpoint-lg: 992px;
|
||||||
|
--breakpoint-xl: 1200px;
|
||||||
|
--font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
||||||
|
--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }
|
||||||
|
|
||||||
|
[data-theme="dark"] {
|
||||||
|
--primary: #007bff;
|
||||||
|
--secondary: #6c757d;
|
||||||
|
--success: #28a745;
|
||||||
|
--info: #17a2b8;
|
||||||
|
--warning: #ffc107;
|
||||||
|
--danger: #dc3545;
|
||||||
|
--light: #343a40;
|
||||||
|
--dark: #f8f9fa; }
|
||||||
|
|
||||||
|
/*# sourceMappingURL=_theme.css.map */
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"mappings": "AAAA,KAAM;EAEF,MAAM,CAAC,QAAQ;EACf,QAAQ,CAAC,QAAQ;EACjB,QAAQ,CAAC,QAAQ;EACjB,MAAM,CAAC,QAAQ;EACf,KAAK,CAAC,QAAQ;EACd,QAAQ,CAAC,QAAQ;EACjB,QAAQ,CAAC,QAAQ;EACjB,OAAO,CAAC,QAAQ;EAChB,MAAM,CAAC,QAAQ;EACf,MAAM,CAAC,QAAQ;EACf,OAAO,CAAC,KAAK;EACb,MAAM,CAAC,QAAQ;EACf,WAAW,CAAC,QAAQ;EAGpB,SAAS,CAAC,QAAQ;EAClB,WAAW,CAAC,QAAQ;EACpB,SAAS,CAAC,QAAQ;EAClB,MAAM,CAAC,QAAQ;EACf,SAAS,CAAC,QAAQ;EAClB,QAAQ,CAAC,QAAQ;EACjB,OAAO,CAAC,QAAQ;EAChB,MAAM,CAAC,QAAQ;EAGf,eAAe,CAAC,EAAE;EAClB,eAAe,CAAC,MAAM;EACtB,eAAe,CAAC,MAAM;EACtB,eAAe,CAAC,MAAM;EACtB,eAAe,CAAC,OAAO;EACvB,wBAAwB,CAAC,sLAAsL;EAC/M,uBAAuB,CAAC,qFAAqF;;AAGjH,mBAAoB;EAChB,SAAS,CAAC,QAAQ;EAClB,WAAW,CAAC,QAAQ;EACpB,SAAS,CAAC,QAAQ;EAClB,MAAM,CAAC,QAAQ;EACf,SAAS,CAAC,QAAQ;EAClB,QAAQ,CAAC,QAAQ;EACjB,OAAO,CAAC,QAAQ;EAChB,MAAM,CAAC,QAAQ",
|
||||||
|
"sources": ["_theme.scss"],
|
||||||
|
"names": [],
|
||||||
|
"file": "_theme.css"
|
||||||
|
}
|
46
app/YtManagerApp/static/YtManagerApp/css/lib/_theme.scss
Normal file
46
app/YtManagerApp/static/YtManagerApp/css/lib/_theme.scss
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
:root {
|
||||||
|
// base colors
|
||||||
|
--blue: #007bff;
|
||||||
|
--indigo: #6610f2;
|
||||||
|
--purple: #6f42c1;
|
||||||
|
--pink: #e83e8c;
|
||||||
|
--red: #dc3545;
|
||||||
|
--orange: #fd7e14;
|
||||||
|
--yellow: #ffc107;
|
||||||
|
--green: #28a745;
|
||||||
|
--teal: #20c997;
|
||||||
|
--cyan: #17a2b8;
|
||||||
|
--white: #fff;
|
||||||
|
--gray: #6c757d;
|
||||||
|
--gray-dark: #343a40;
|
||||||
|
|
||||||
|
// theme colors
|
||||||
|
--primary: #007bff;
|
||||||
|
--secondary: #6c757d;
|
||||||
|
--success: #28a745;
|
||||||
|
--info: #17a2b8;
|
||||||
|
--warning: #ffc107;
|
||||||
|
--danger: #dc3545;
|
||||||
|
--light: #f8f9fa;
|
||||||
|
--dark: #343a40;
|
||||||
|
|
||||||
|
// misc
|
||||||
|
--breakpoint-xs: 0;
|
||||||
|
--breakpoint-sm: 576px;
|
||||||
|
--breakpoint-md: 768px;
|
||||||
|
--breakpoint-lg: 992px;
|
||||||
|
--breakpoint-xl: 1200px;
|
||||||
|
--font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
||||||
|
--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-theme="dark"] {
|
||||||
|
--primary: #007bff;
|
||||||
|
--secondary: #6c757d;
|
||||||
|
--success: #28a745;
|
||||||
|
--info: #17a2b8;
|
||||||
|
--warning: #ffc107;
|
||||||
|
--danger: #dc3545;
|
||||||
|
--light: #343a40;
|
||||||
|
--dark: #f8f9fa;
|
||||||
|
}
|
47
app/YtManagerApp/static/YtManagerApp/css/lib/_toast.scss
Normal file
47
app/YtManagerApp/static/YtManagerApp/css/lib/_toast.scss
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
@import "variables";
|
||||||
|
|
||||||
|
#toast-wrapper {
|
||||||
|
position: fixed;
|
||||||
|
right: 2rem;
|
||||||
|
top: 2rem;
|
||||||
|
z-index: 1000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.toast {
|
||||||
|
min-width: 15rem;
|
||||||
|
line-height: 1.5rem;
|
||||||
|
.typcn {
|
||||||
|
font-size: 1.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.bg-success {
|
||||||
|
background-color: rgba(lighten($success-color, 30), .98) !important;
|
||||||
|
.toast-header {
|
||||||
|
background-color: rgba($success-color, .75);
|
||||||
|
color: $light-color;
|
||||||
|
> * {
|
||||||
|
color: $light-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.bg-warning {
|
||||||
|
background-color: rgba(lighten($warning-color, 30), .98) !important;
|
||||||
|
.toast-header {
|
||||||
|
background-color: rgba(darken($warning-color, 10), .75);
|
||||||
|
color: $light-color;
|
||||||
|
> * {
|
||||||
|
color: $light-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.bg-danger {
|
||||||
|
background-color: rgba(lighten($danger-color, 30), .98) !important;
|
||||||
|
.toast-header {
|
||||||
|
background-color: rgba($danger-color, .75);
|
||||||
|
color: $light-color;
|
||||||
|
> * {
|
||||||
|
color: $light-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
3
app/YtManagerApp/static/YtManagerApp/css/lib/_utils.css
Normal file
3
app/YtManagerApp/static/YtManagerApp/css/lib/_utils.css
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
|
||||||
|
|
||||||
|
/*# sourceMappingURL=_utils.css.map */
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"mappings": "",
|
||||||
|
"sources": [],
|
||||||
|
"names": [],
|
||||||
|
"file": "_utils.css"
|
||||||
|
}
|
50
app/YtManagerApp/static/YtManagerApp/css/lib/_utils.scss
Normal file
50
app/YtManagerApp/static/YtManagerApp/css/lib/_utils.scss
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
|
||||||
|
// cross browser keyframes
|
||||||
|
@mixin keyframes($animation-name) {
|
||||||
|
@-webkit-keyframes #{$animation-name} {
|
||||||
|
@content;
|
||||||
|
}
|
||||||
|
@-moz-keyframes #{$animation-name} {
|
||||||
|
@content;
|
||||||
|
}
|
||||||
|
@-ms-keyframes #{$animation-name} {
|
||||||
|
@content;
|
||||||
|
}
|
||||||
|
@-o-keyframes #{$animation-name} {
|
||||||
|
@content;
|
||||||
|
}
|
||||||
|
@keyframes #{$animation-name} {
|
||||||
|
@content;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// cross browser animation
|
||||||
|
@mixin animation($str) {
|
||||||
|
-webkit-animation: #{$str};
|
||||||
|
-moz-animation: #{$str};
|
||||||
|
-ms-animation: #{$str};
|
||||||
|
-o-animation: #{$str};
|
||||||
|
animation: #{$str};
|
||||||
|
}
|
||||||
|
|
||||||
|
// cross browser transition
|
||||||
|
@mixin transition($args...) {
|
||||||
|
-webkit-transition: $args;
|
||||||
|
-moz-transition: $args;
|
||||||
|
-ms-transition: $args;
|
||||||
|
-o-transition: $args;
|
||||||
|
transition: $args;
|
||||||
|
}
|
||||||
|
|
||||||
|
// cross browser opacity
|
||||||
|
@mixin opacity($opacity) {
|
||||||
|
opacity: $opacity;
|
||||||
|
$opacity-ie: $opacity * 100;
|
||||||
|
filter: alpha(opacity=$opacity-ie); //IE8
|
||||||
|
}
|
||||||
|
|
||||||
|
// cross browser transform
|
||||||
|
@mixin transform($args...) {
|
||||||
|
-ms-transform: $args;
|
||||||
|
transform: $args;
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
|
||||||
|
|
||||||
|
/*# sourceMappingURL=_variables.css.map */
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"mappings": "",
|
||||||
|
"sources": [],
|
||||||
|
"names": [],
|
||||||
|
"file": "_variables.css"
|
||||||
|
}
|
15
app/YtManagerApp/static/YtManagerApp/css/lib/_variables.scss
Normal file
15
app/YtManagerApp/static/YtManagerApp/css/lib/_variables.scss
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
$breakpoint-xs: 0;
|
||||||
|
$breakpoint-sm: 576px;
|
||||||
|
$breakpoint-md: 768px;
|
||||||
|
$breakpoint-lg: 992px;
|
||||||
|
$breakpoint-xl: 1200px;
|
||||||
|
|
||||||
|
$accent-color: #007bff;
|
||||||
|
$primary-color: #007bff;
|
||||||
|
$secondary-color: #6c757d;
|
||||||
|
$success-color: #28a745;
|
||||||
|
$info-color: #17a2b8;
|
||||||
|
$warning-color: #ffc107;
|
||||||
|
$danger-color: #dc3545;
|
||||||
|
$light-color: #f8f9fa;
|
||||||
|
$dark-color: #343a40;
|
@ -0,0 +1,33 @@
|
|||||||
|
export class ProgressRing
|
||||||
|
{
|
||||||
|
wrapperElement = null;
|
||||||
|
svgElement = null;
|
||||||
|
circleElement = null;
|
||||||
|
|
||||||
|
constructor(wrapperElement) {
|
||||||
|
this.wrapperElement = wrapperElement;
|
||||||
|
this.buildDom();
|
||||||
|
}
|
||||||
|
|
||||||
|
buildDom() {
|
||||||
|
let bounds = this.wrapperElement.getBoundingClientRect();
|
||||||
|
this.svgElement = $(`<svg class="progress-ring" style="width: 100%; height: 100%;"></svg>`);
|
||||||
|
this.svgElement.appendTo(this.wrapperElement);
|
||||||
|
this.circleElement = $(`<circle fill="transparent"></circle>`);
|
||||||
|
this.circleElement.appendTo(this.svgElement);
|
||||||
|
|
||||||
|
let strokeColor = this.wrapperElement.data('stroke');
|
||||||
|
if (strokeColor === undefined) {
|
||||||
|
strokeColor = 'black';
|
||||||
|
}
|
||||||
|
this.circleElement.attr('stroke', strokeColor);
|
||||||
|
|
||||||
|
let strokeWidth = this.wrapperElement.data('stroke-width');
|
||||||
|
if (strokeWidth === undefined) {
|
||||||
|
strokeWidth = '0.2em';
|
||||||
|
}
|
||||||
|
this.circleElement.attr('stroke-width', strokeWidth);
|
||||||
|
|
||||||
|
let radius = Math.min(bounds.width, bounds.height) / 2;
|
||||||
|
}
|
||||||
|
}
|
@ -48,13 +48,15 @@
|
|||||||
{# The job panel #}
|
{# The job panel #}
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
<button id="btn_toggle_job_panel"
|
|
||||||
class="btn btn-sm btn-light dropdown-toggle"
|
<button id="btn_toggle_job_panel"
|
||||||
title="Show/hide job details"
|
class="btn btn-sm btn-light dropdown-toggle"
|
||||||
data-toggle="dropdown"
|
title="Show/hide job details"
|
||||||
aria-haspopup="true" aria-expanded="false">
|
data-toggle="dropdown"sss
|
||||||
<span class="typcn typcn-th-list" aria-hidden="true"></span>
|
aria-haspopup="true" aria-expanded="false">
|
||||||
</button>
|
<span class="typcn typcn-th-list" aria-hidden="true"></span>
|
||||||
|
</button>
|
||||||
|
|
||||||
<div id="job_panel" class="dropdown-menu dropdown-menu-right dropdown-jobs" aria-labelledby="btn_toggle_job_panel">
|
<div id="job_panel" class="dropdown-menu dropdown-menu-right dropdown-jobs" aria-labelledby="btn_toggle_job_panel">
|
||||||
|
|
||||||
<h6 id="job_panel_title" class="dropdown-header collapse">Running jobs</h6>
|
<h6 id="job_panel_title" class="dropdown-header collapse">Running jobs</h6>
|
||||||
|
Loading…
Reference in New Issue
Block a user