Branding: replace logos, add Lottie loaders, wire up animations; update templates and loading states
This commit is contained in:
parent
32a3fb7b67
commit
7907b34c61
|
|
@ -40,6 +40,11 @@
|
|||
<link rel="stylesheet" type="text/css" href="{% static 'baseTemplate/custom-js/pnotify.custom.min.css' %}?v={{ CP_VERSION }}">
|
||||
<script src="{% static 'baseTemplate/custom-js/pnotify.custom.min.js' %}?v={{ CP_VERSION }}"></script>
|
||||
|
||||
<!-- Add Lottie Player CDN -->
|
||||
<script src="https://unpkg.com/@lottiefiles/lottie-player@latest/dist/lottie-player.js"></script>
|
||||
<!-- OR use the web version -->
|
||||
<script src="https://unpkg.com/@lottiefiles/lottie-interactivity@latest/dist/lottie-interactivity.min.js"></script>
|
||||
|
||||
<!-- Modern Design System -->
|
||||
<style>
|
||||
/* CSS Variables for Theme */
|
||||
|
|
@ -960,7 +965,7 @@
|
|||
</button>
|
||||
<div class="logo">
|
||||
<div class="logo-icon">
|
||||
<img src="https://cyberpanel.net/wp-content/uploads/2025/04/cyberpanel-logo-icon_only.png" alt="CyberPanel Logo">
|
||||
<img src="https://upscale.host/wp-content/uploads/2025/09/upscale-icon.png" alt="CyberPanel Logo">
|
||||
</div>
|
||||
<div class="logo-text">
|
||||
<div class="brand">CyberPanel</div>
|
||||
|
|
@ -995,7 +1000,7 @@
|
|||
<div id="sidebar">
|
||||
<div class="sidebar-logo">
|
||||
<div class="logo-icon">
|
||||
<img src="https://cyberpanel.net/wp-content/uploads/2025/04/cyberpanel-logo-icon_only.png" alt="CyberPanel Logo">
|
||||
<img src="https://upscale.host/wp-content/uploads/2025/09/upscale-icon.png" alt="CyberPanel Logo">
|
||||
</div>
|
||||
<div class="logo-text">
|
||||
<div class="brand">CyberPanel</div>
|
||||
|
|
|
|||
|
|
@ -1122,7 +1122,14 @@
|
|||
<div class="fm-view-container">
|
||||
<!-- Loading State -->
|
||||
<div class="fm-loading" ng-show="isLoading">
|
||||
<div class="fm-spinner"></div>
|
||||
<lottie-player
|
||||
src="/static/animations/loader-filemanager.json"
|
||||
background="transparent"
|
||||
speed="1"
|
||||
style="width: 80px; height: 80px;"
|
||||
loop
|
||||
autoplay>
|
||||
</lottie-player>
|
||||
<p>{% trans "Loading files..." %}</p>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -231,11 +231,14 @@
|
|||
|
||||
<body>
|
||||
<div id="loading">
|
||||
<div class="spinner">
|
||||
<div class="bounce1"></div>
|
||||
<div class="bounce2"></div>
|
||||
<div class="bounce3"></div>
|
||||
</div>
|
||||
<lottie-player
|
||||
src="/static/animations/loader-main.json"
|
||||
background="transparent"
|
||||
speed="1"
|
||||
style="width: 200px; height: 200px; margin: 0 auto;"
|
||||
loop
|
||||
autoplay>
|
||||
</lottie-player>
|
||||
</div>
|
||||
|
||||
<div class>
|
||||
|
|
@ -291,9 +294,9 @@
|
|||
<div class="login-wrapper">
|
||||
<form id="loginForm" action="/" class="col-md-8 col-md-offset-2">
|
||||
<h1 class="text-transform-upr text-center panel-body text-bold"
|
||||
style="padding-bottom: 0px; color: #33CCCC;">
|
||||
style="padding-bottom: 0px; color: #593dac;">
|
||||
<img class="center-block text-center my-20" src="{% static 'baseTemplate/cyber-panel-logo.svg' %}">
|
||||
CyberPanel
|
||||
CPanel
|
||||
</h1>
|
||||
<h4 class="text-muted text-center mb-10">Web Hosting Control Panel</h4>
|
||||
<div class="">
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,37 @@
|
|||
/* Lottie Loader Styles */
|
||||
.lottie-loader {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.lottie-loader-small {
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
}
|
||||
|
||||
.lottie-loader-medium {
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
}
|
||||
|
||||
.lottie-loader-large {
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
}
|
||||
|
||||
.lottie-loader-fullscreen {
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
position: fixed;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
z-index: 9999;
|
||||
}
|
||||
|
||||
/* Hide original spinners when Lottie is active */
|
||||
.lottie-active .loading-spinner,
|
||||
.lottie-active .fm-spinner,
|
||||
.lottie-active .fa-spinner {
|
||||
display: none !important;
|
||||
}
|
||||
|
|
@ -1,41 +1,10 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve">
|
||||
<g>
|
||||
<g>
|
||||
<g>
|
||||
<path fill="#B5D8F2" d="M29.999,15.916c0.864,0,1.731,0.084,2.59,0.244l-9.428-9.427c-0.087-0.086-0.154-0.188-0.211-0.295
|
||||
L1.095,28.292c-0.943,0.945-0.943,2.478,0,3.426l3.633,3.621c0.032-0.036,0.063-0.078,0.102-0.119l15.222-15.213
|
||||
C22.708,17.366,26.239,15.916,29.999,15.916z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path fill="#61D2B4" d="M34.723,14.808l2.766-2.123c0.541-0.428,1.098-0.635,1.694-0.635c0.899,0,1.741,0.515,2.146,1.311
|
||||
c0.007,0.016,0.014,0.033,0.021,0.047c0.243,0.506,0.517,1.541-0.383,2.71c-0.005,0.006-0.01,0.017-0.016,0.025l-2.159,2.737
|
||||
l1.218,1.215c3.249,3.279,4.688,8.016,3.849,12.55l9.564-9.567c0.045-0.048,0.094-0.083,0.148-0.12L31.713,1.1
|
||||
c-0.46-0.456-1.068-0.711-1.712-0.711S28.747,0.644,28.29,1.1l-3.684,3.687c0.113,0.051,0.217,0.114,0.302,0.205L34.723,14.808z"
|
||||
/>
|
||||
</g>
|
||||
<g>
|
||||
<path fill="#61D2B4" d="M25.216,45.24l-2.725,2.096c-0.386,0.291-0.926,0.623-1.692,0.623c-0.004,0-0.005,0-0.007,0
|
||||
c-0.003,0-0.005,0-0.007,0c-0.039,0-0.079,0-0.123-0.01c-0.829-0.045-1.608-0.549-1.981-1.27c-0.006-0.02-0.02-0.045-0.025-0.063
|
||||
c-0.433-0.893-0.298-1.875,0.387-2.758l2.114-2.68l-1.304-1.303c-3.24-3.329-4.608-7.923-3.752-12.433l-9.528,9.519
|
||||
c-0.038,0.043-0.082,0.071-0.125,0.105l21.84,21.839c0.458,0.456,1.067,0.703,1.711,0.703s1.252-0.247,1.712-0.703l3.636-3.64
|
||||
c-0.131-0.058-0.255-0.141-0.363-0.251L25.216,45.24z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path fill="#B5D8F2" d="M58.904,28.292l-3.611-3.612c-0.038,0.048-0.077,0.102-0.121,0.144l-15.25,15.242
|
||||
c-2.66,2.643-6.19,4.103-9.951,4.103c-0.863,0-1.731-0.087-2.592-0.246l9.354,9.347c0.108,0.109,0.188,0.231,0.249,0.364
|
||||
l21.923-21.915C59.848,30.771,59.848,29.237,58.904,28.292z"/>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<path fill="#F5D10A" d="M39.402,14.922l-8.952,11.357l0.343,0.465c0.464,0.639,1.924,2.747,4.738,6.851
|
||||
c0.168,0.243,0.222,1.063-0.24,1.418L21.302,45.752c-0.223,0.166-0.351,0.229-0.502,0.229c-0.004,0-0.005-0.01-0.007-0.01
|
||||
c-0.003,0-0.003,0.01-0.007,0.01c-0.145-0.01-0.292-0.104-0.349-0.213c-0.047-0.094-0.142-0.293,0.158-0.685l8.935-11.333
|
||||
l-5.062-7.282c-0.322-0.457-0.214-1.129,0.239-1.476l14.001-10.753c0.24-0.189,0.37-0.214,0.475-0.214
|
||||
c0.163,0,0.317,0.098,0.386,0.233C39.664,14.459,39.614,14.639,39.402,14.922z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 60" width="60" height="60">
|
||||
<defs>
|
||||
<image width="616" height="591" id="img1" href="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiID8+DQo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPg0KPHN2ZyB3aWR0aD0iNjE2cHQiIGhlaWdodD0iNTkxcHQiIHZpZXdCb3g9IjAgMCA2MTYgNTkxIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+DQo8ZyBpZD0iI2ZmZmZmZmZmIj4NCjwvZz4NCjxnIGlkPSIjNTgzZGFjZmYiPg0KPHBhdGggZmlsbD0iIzU4M2RhYyIgb3BhY2l0eT0iMS4wMCIgZD0iIE0gMjM3LjQ4IDg4Ljg3IEMgMjUwLjkyIDg2Ljk5IDI2NS4xNiA4OC4yOSAyNzcuMjUgOTQuODIgQyAyOTYuMDkgMTA0LjczIDMwOC4xMyAxMjUuMDUgMzEwLjQ5IDE0NS44OSBDIDMxMC41NSAyMDQuMjYgMzEwLjQ1IDI2Mi42NCAzMTAuNTMgMzIxLjAxIEMgMzEwLjk2IDMyNy40NyAzMTAuMjggMzM0LjYzIDMwNS43MSAzMzkuNjMgQyAzMDAuNzMgMzQ1LjQzIDI5Mi4yNCAzNDguMzIgMjg0Ljg2IDM0NS45NiBDIDI3Ni41MiAzNDMuNzcgMjY5Ljk2IDMzNS43NyAyNzAuMDMgMzI3LjA1IEMgMjY5Ljk3IDI2OC4wMCAyNzAuMDIgMjA4Ljk0IDI3MC4wMCAxNDkuODggQyAyNjkuNzcgMTQzLjc4IDI2Ni41MSAxMzguMDUgMjYyLjMzIDEzMy43NCBDIDI1Ni43MCAxMjcuOTggMjQ3Ljc4IDEyNy42NCAyNDAuNDQgMTI5LjYyIEMgMjMzLjExIDEzMS42MCAyMjYuNzYgMTM4LjA1IDIyNi4wMSAxNDUuNzQgQyAyMjUuNzAgMjAyLjUwIDIyNS40MCAyNTkuMjYgMjI1LjUxIDMxNi4wMyBDIDIyNS42MSAzMjQuMDMgMjI0Ljk4IDMzMi4xNyAyMjYuOTMgMzQwLjAxIEMgMjMwLjA4IDM1My41MCAyMzcuOTEgMzY1LjYwIDI0OC4wNCAzNzQuOTIgQyAyNjkuMDEgMzk0LjcwIDMwNC4wOCAzOTcuMzcgMzI3LjU1IDM4MC41MCBDIDMzNy4yNSAzNzMuNzEgMzQ0LjAyIDM2My42MSAzNDkuMzAgMzUzLjE5IEMgMzUyLjczIDM0NC44MSAzNTYuNzggMzM2LjI3IDM1Ni43NSAzMjcuMDIgQyAzNTYuNzcgMjY1LjI4IDM1Ni43MiAyMDMuNTQgMzU2Ljc3IDE0MS44MCBDIDM1OS4xMiAxMjguMTggMzY2LjY5IDExNS45OCAzNzUuODEgMTA1LjgxIEMgMzg1LjMyIDk2LjA1IDM5OC4zNiA4OS41MSA0MTIuMDQgODguNjYgQyA0MzAuMTEgODYuOTkgNDQ4Ljk2IDkyLjI2IDQ2Mi43NSAxMDQuMjYgQyA0NzEuNzAgMTEyLjY2IDQ3OC41OCAxMjMuNDMgNDgxLjg1IDEzNS4yOSBDIDQ4NC42NSAxNjAuMTAgNDgzLjY1IDE4NS4xMiA0ODQuMjIgMjEwLjAzIEMgNDg0LjM2IDIzMy4wMiA0ODMuODggMjU2LjAxIDQ4My45NSAyNzkuMDAgQyA0ODMuODEgMzAxLjk5IDQ4My4xMCAzMjQuOTkgNDgzLjA2IDM0Ny45OSBDIDQ4My4yNCAzNTcuNzkgNDgxLjI2IDM2Ny40OCA0NzkuMTIgMzc3LjAwIEMgNDcxLjYyIDQwNy4wOSA0NTguMzEgNDM2LjI3IDQzNy40MSA0NTkuNDQgQyA0MjQuNTggNDczLjg5IDQwOS4yOSA0ODYuMTUgMzkyLjE4IDQ5NS4xOCBDIDM3My43OSA1MDUuNTggMzUzLjIyIDUxMS42OCAzMzIuNDcgNTE1LjI4IEMgMzA3LjM2IDUxOS4wOSAyODEuNzQgNTE5LjMyIDI1Ni41MiA1MTYuMjMgQyAyMjQuODcgNTEyLjI1IDE5My42OCA1MDEuMjUgMTY4LjA1IDQ4MS45NiBDIDE2Mi44NiA0NzcuODUgMTU3LjQ1IDQ3My45NiAxNTMuMDAgNDY5LjAxIEMgMTM0LjgwIDQ1Mi4zMCAxMjEuNTUgNDMwLjgzIDExMi4xNSA0MDguMTIgQyAxMDUuNTEgMzkxLjEwIDEwMC42NiAzNzMuMjUgOTkuMDYgMzU1LjAxIEMgOTguNTcgMjkyLjY5IDk4LjIyIDIzMC4zNyA5OC4wMiAxNjguMDUgQyA5OC4xMCAxNjMuNzMgOTcuNTQgMTU5LjIxIDk5LjE4IDE1NS4xMCBDIDEwMS4xNiAxNDkuNjUgMTA1LjM0IDE0NC44NCAxMTAuOTcgMTQzLjAzIEMgMTE3LjA3IDE0MC41MiAxMjQuMzUgMTQxLjQ1IDEyOS42OCAxNDUuMzEgQyAxMzUuODMgMTQ5LjI1IDEzOC43MiAxNTYuODMgMTM4LjUyIDE2My45MiBDIDEzOC42NCAyMjUuOTYgMTM5LjEyIDI4OC4wMCAxMzkuNDggMzUwLjA0IEMgMTQwLjEyIDM2Mi4zMyAxNDMuNDAgMzc0LjI5IDE0Ny4wNSAzODUuOTggQyAxNTMuNDIgNDAzLjQzIDE2Mi40MCA0MjAuMjEgMTc1LjEyIDQzMy44OCBDIDE4OC4yMSA0NDkuMjkgMjA1Ljg5IDQ2MC4xNyAyMjQuNjkgNDY3LjI0IEMgMjQ0LjM1IDQ3NC4xMiAyNjUuMTcgNDc3LjczIDI4Ni4wMCA0NzcuODYgQyAzMDguOTggNDc4LjIwIDMzMi4zOSA0NzYuMTAgMzU0LjA1IDQ2Ny45NyBDIDM3MC45NiA0NjIuMjEgMzg2LjQ1IDQ1Mi42OSAzOTkuNjcgNDQwLjcxIEMgNDE3LjM4IDQyMi44NSA0MzAuNjcgNDAwLjUwIDQzNy4zNiAzNzYuMjEgQyA0NDAuMjQgMzY2LjczIDQ0Mi43NiAzNTYuOTYgNDQyLjU2IDM0Ni45OCBDIDQ0Mi45MyAyOTQuMzIgNDQzLjkyIDI0MS42NiA0NDMuNzUgMTg4Ljk5IEMgNDQzLjc3IDE3NS42OSA0NDMuODEgMTYyLjM4IDQ0My4zNiAxNDkuMDkgQyA0NDIuNjkgMTQyLjc0IDQzOS4xMiAxMzYuNjcgNDMzLjcyIDEzMy4yMCBDIDQyNy45MyAxMjguODUgNDIwLjIzIDEyOC4xMSA0MTMuMjkgMTI5LjMyIEMgNDA2LjEzIDEzMS4yOCA0MDAuOTEgMTM3LjQzIDM5OC4xMSAxNDQuMDYgQyAzOTcuNDIgMTQ1LjU5IDM5Ny4yMSAxNDcuMjggMzk3LjIzIDE0OC45NCBDIDM5Ny4yOCAyMDUuOTYgMzk3LjI0IDI2Mi45OCAzOTcuMjYgMzIwLjAwIEMgMzk4LjMyIDM0NS4wMCAzODguODIgMzY5LjQ0IDM3NC43MCAzODkuNzIgQyAzNTcuOTQgNDEzLjcyIDMzMC4xMyA0MjkuNDUgMzAwLjkzIDQzMS41NSBDIDI3NC45NyA0MzQuMjUgMjQ4LjAzIDQyNi41MiAyMjcuNTkgNDEwLjI3IEMgMjEzLjc1IDM5OS42NCAyMDIuMjQgMzg1Ljg3IDE5NC45MyAzNjkuOTggQyAxODguNTcgMzU3LjMwIDE4NS4wOCAzNDMuMjIgMTg1LjA1IDMyOS4wMiBDIDE4NC44MiAyNjYuMzkgMTg1LjIyIDIwMy43NyAxODUuNTEgMTQxLjE1IEMgMTg3LjIxIDEyNi40MSAxOTUuMjYgMTEzLjAyIDIwNS45OCAxMDMuMDIgQyAyMTQuNjkgOTUuMTYgMjI1Ljg2IDkwLjMxIDIzNy40OCA4OC44NyBaIiAvPg0KPC9nPg0KPC9zdmc+DQo="/>
|
||||
</defs>
|
||||
<style>
|
||||
</style>
|
||||
<g>
|
||||
<use id="upscale" href="#img1" transform="matrix(.136,0,0,.136,-11,-11)"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 4.3 KiB |
|
|
@ -1771,7 +1771,7 @@ app.controller('WPsiteHome', function ($scope, $http, $timeout, $compile, $windo
|
|||
$scope.currentStatus = response.data.currentStatus;
|
||||
|
||||
// Update status displays with progress
|
||||
var statusHtml = '<i class="fas fa-spinner fa-pulse"></i> ' + response.data.currentStatus;
|
||||
var statusHtml = '<lottie-player src="/static/animations/loader-spinner.json" background="transparent" speed="1" style="width: 20px; height: 20px; display: inline-block;" loop autoplay></lottie-player> ' + response.data.currentStatus;
|
||||
if (response.data.installationProgress) {
|
||||
statusHtml += ' (' + response.data.installationProgress + '%)';
|
||||
}
|
||||
|
|
@ -2331,7 +2331,7 @@ app.controller('RestoreWPBackup', function ($scope, $http, $timeout, $window) {
|
|||
$scope.currentStatus = response.data.currentStatus;
|
||||
|
||||
// Update status displays with progress
|
||||
var statusHtml = '<i class="fas fa-spinner fa-pulse"></i> ' + response.data.currentStatus;
|
||||
var statusHtml = '<lottie-player src="/static/animations/loader-spinner.json" background="transparent" speed="1" style="width: 20px; height: 20px; display: inline-block;" loop autoplay></lottie-player> ' + response.data.currentStatus;
|
||||
if (response.data.installationProgress) {
|
||||
statusHtml += ' (' + response.data.installationProgress + '%)';
|
||||
}
|
||||
|
|
@ -4664,7 +4664,7 @@ app.controller('WPsiteHome', function ($scope, $http, $timeout, $compile, $windo
|
|||
$scope.currentStatus = response.data.currentStatus;
|
||||
|
||||
// Update status displays with progress
|
||||
var statusHtml = '<i class="fas fa-spinner fa-pulse"></i> ' + response.data.currentStatus;
|
||||
var statusHtml = '<lottie-player src="/static/animations/loader-spinner.json" background="transparent" speed="1" style="width: 20px; height: 20px; display: inline-block;" loop autoplay></lottie-player> ' + response.data.currentStatus;
|
||||
if (response.data.installationProgress) {
|
||||
statusHtml += ' (' + response.data.installationProgress + '%)';
|
||||
}
|
||||
|
|
@ -5429,7 +5429,7 @@ app.controller('RestoreWPBackup', function ($scope, $http, $timeout, $window) {
|
|||
$scope.currentStatus = response.data.currentStatus;
|
||||
|
||||
// Update status displays with progress
|
||||
var statusHtml = '<i class="fas fa-spinner fa-pulse"></i> ' + response.data.currentStatus;
|
||||
var statusHtml = '<lottie-player src="/static/animations/loader-spinner.json" background="transparent" speed="1" style="width: 20px; height: 20px; display: inline-block;" loop autoplay></lottie-player> ' + response.data.currentStatus;
|
||||
if (response.data.installationProgress) {
|
||||
statusHtml += ' (' + response.data.installationProgress + '%)';
|
||||
}
|
||||
|
|
@ -8433,7 +8433,7 @@ app.controller('WPsiteHome', function ($scope, $http, $timeout, $compile, $windo
|
|||
$scope.currentStatus = response.data.currentStatus;
|
||||
|
||||
// Update status displays with progress
|
||||
var statusHtml = '<i class="fas fa-spinner fa-pulse"></i> ' + response.data.currentStatus;
|
||||
var statusHtml = '<lottie-player src="/static/animations/loader-spinner.json" background="transparent" speed="1" style="width: 20px; height: 20px; display: inline-block;" loop autoplay></lottie-player> ' + response.data.currentStatus;
|
||||
if (response.data.installationProgress) {
|
||||
statusHtml += ' (' + response.data.installationProgress + '%)';
|
||||
}
|
||||
|
|
@ -9317,7 +9317,7 @@ app.controller('RestoreWPBackup', function ($scope, $http, $timeout, $window) {
|
|||
$scope.currentStatus = response.data.currentStatus;
|
||||
|
||||
// Update status displays with progress
|
||||
var statusHtml = '<i class="fas fa-spinner fa-pulse"></i> ' + response.data.currentStatus;
|
||||
var statusHtml = '<lottie-player src="/static/animations/loader-spinner.json" background="transparent" speed="1" style="width: 20px; height: 20px; display: inline-block;" loop autoplay></lottie-player> ' + response.data.currentStatus;
|
||||
if (response.data.installationProgress) {
|
||||
statusHtml += ' (' + response.data.installationProgress + '%)';
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue