@@ -8,20 +8,22 @@ let customURLplaceholders = ['github:janedoe/button-mpy',
8
8
'https://example.com/recorder.py'
9
9
] ;
10
10
11
+ const statusBar = document . getElementById ( 'status-bar' ) ;
12
+ const statusMessage = document . getElementById ( 'status-message' ) ;
11
13
const deviceSelectionList = document . querySelector ( ".item-selection-list" ) ;
12
14
const reloadDeviceListLink = document . getElementById ( "reload-link" ) ;
13
15
const searchField = document . getElementById ( 'search-field' ) ;
14
16
const compileFilesCheckbox = document . getElementById ( 'compile-files' ) ;
15
17
const overwriteExistingCheckbox = document . getElementById ( 'overwrite-existing' ) ;
16
18
const githubUrlInput = document . getElementById ( 'github-url' ) ;
19
+ const statusBarLoadingSpinner = document . querySelector ( '#status-bar .loading-spinner' ) ;
17
20
18
21
async function fetchPackages ( ) {
19
22
const packageList = document . getElementById ( 'package-list' ) ;
20
23
21
24
// Show loading spinner
22
- packageList . innerHTML = '<div class="loading-spinner"></div>' ;
25
+ packageList . innerHTML = '<div class="loading-spinner primary" style="margin: 50px auto; "></div>' ;
23
26
const result = await window . api . getPackages ( ) ;
24
-
25
27
if ( result . success ) {
26
28
cachedPackages = result . data ;
27
29
renderPackageList ( cachedPackages , '' ) ; // Render the fetched packages
@@ -255,7 +257,7 @@ async function installPackage(package) {
255
257
const packageDesignator = package . name || package . url ;
256
258
toggleUserInteraction ( false ) ;
257
259
showOverlay ( ) ;
258
- showStatus ( `⌛️ Installing ${ packageDesignator } on board at ${ serialPort } ...` ) ;
260
+ showStatus ( `⌛️ Installing ${ packageDesignator } on board at ${ serialPort } ...` , true ) ;
259
261
260
262
const compileFiles = compileFilesCheckbox . checked ;
261
263
const overwriteExisting = overwriteExistingCheckbox . checked ;
@@ -342,12 +344,10 @@ function animatePlaceholder(element, values, duration = 3500) {
342
344
return interval ;
343
345
}
344
346
345
- function showStatus ( message , duration = null ) {
346
- const statusBar = document . getElementById ( 'status-bar' ) ;
347
- const statusMessage = document . getElementById ( 'status-message' ) ;
348
-
347
+ function showStatus ( message , displayLoader = false , duration = null ) {
349
348
statusMessage . textContent = message ;
350
- statusBar . style . display = 'block' ;
349
+ statusBar . classList . remove ( 'hidden' ) ;
350
+ statusBarLoadingSpinner . classList . toggle ( 'hidden' , ! displayLoader ) ;
351
351
352
352
// Add the visible class to trigger the slide down effect
353
353
setTimeout ( ( ) => {
0 commit comments