182182 {display : inline-block;text-decoration : none;color : black}
183183
184184
185+ .ex
186+ {font-weight : normal;font-size : 16px ;font-family : monospace;color : gray}
185187
186188 .spc
187189 {flex : 1 }
194196 iframe
195197 {display : none}
196198
199+ .spinner
200+ {width : 15px ;height : 15px }
201+
197202 </ style >
198203
199204 </ head >
212217
213218 < h3 >
214219 global state diff
215- < div style =' font-weight:normal;font-size:16px ' >
216- <script src=''></script>
220+ < div class = ex >
221+ <script src='https://example.com/script.js '></script>
217222 </ div >
218223 </ h3 >
219224
@@ -285,6 +290,12 @@ <h3 id=url>
285290
286291 < h3 >
287292 Import Inspector
293+ < div class =ex >
294+ import {mod} from 'https://example.com/module.js'
295+ </ div >
296+ < div class =ex >
297+ var {mod} = await import('https://example.com/module/js');
298+ </ div >
288299 </ h3 >
289300
290301 < div class =links >
331342
332343 var item ;
333344 var ui = { } ;
345+ var spinner ;
334346
335347
336348 var process = { } ;
340352 //:
341353
342354
355+
356+
343357 function initdom ( ) {
344358 debug ( 'initdom' ) ;
345359
379393
380394
381395
396+
382397 } //initdom
383398
384399
395410
396411 var beforeKeys = new Set ( Object . keys ( win ) ) ;
397412
413+ display . spinner ( nitem ) ;
414+
398415 var script = doc . createElement ( 'script' ) ;
399416 script . src = src ;
400417 doc . head . appendChild ( script ) ;
404421 console . log ( 'script.onerror' ) ;
405422 console . log ( arguments ) ;
406423 console . error ( err ) ;
424+ complete ( ) ;
425+
407426 values . textContent = err . toString ( ) ;
408427 values . classList . add ( 'error' ) ;
409428
413432 script . onload = function ( ) {
414433 console . log ( 'script.onload' ) ;
415434 console . log ( arguments ) ;
435+ complete ( ) ;
436+
416437 var afterKeys = new Set ( Object . keys ( win ) ) ;
417438 var added = [ ...afterKeys ] . filter ( k => ! beforeKeys . has ( k ) ) ;
418439 //console.log('New globals :', added);
@@ -424,6 +445,13 @@ <h3>
424445
425446 } //onload
426447
448+
449+ function complete ( ) {
450+
451+ display . spinner . remove ( nitem ) ;
452+
453+ } //complete
454+
427455 } //script
428456
429457
446474
447475 var { mod, err} = await win . fn ( src ) ;
448476
477+ display . spinner . remove ( nitem ) ;
478+
449479 if ( err ) {
450480 display . error ( values , err ) ;
451481 return ;
536566
537567 $ ( nitem , '#url' ) . textContent = src ;
538568 $ ( nitem , '.close' ) . onclick = e => nitem . remove ( ) ;
569+
570+ display . spinner ( nitem ) ;
539571 root . append ( nitem ) ;
540572
541573 display . info ( nitem , src ) ;
@@ -545,12 +577,31 @@ <h3>
545577 } //display
546578
547579
580+ display . spinner = function ( item ) {
581+
582+ var spinner = document . createElement ( 'img' ) ;
583+ spinner . className = 'spinner' ;
584+ spinner . src = '/images/spinner.gif' ;
585+
586+ var close = $ ( item , '.close' ) ;
587+ close . parentNode . insertBefore ( spinner , close ) ;
588+
589+ } //spinner
590+
591+
592+ display . spinner . remove = function ( item ) {
593+
594+ $ ( item , '.spinner' ) . remove ( ) ;
595+
596+ } //remove
597+
598+
548599 display . info = async function ( nitem , src ) {
549600
550601 var { txt, hdrs, error} = await get ( src ) ;
551602 if ( error ) return ;
552603
553- var str = await detect ( txt ) ;
604+ var str = await detect ( txt ) ;
554605 $ ( nitem , '#info #detect' ) . textContent = str ;
555606 $ ( nitem , '#info #hdrs' ) . textContent = hdrs ;
556607 console . log ( str ) ;
0 commit comments