@@ -520,53 +520,7 @@ function renderLiveViewHTML(file) {
520520 }
521521
522522 // fetch scripts
523- frameDocument . querySelectorAll ( 'script' ) . forEach ( async ( script ) => {
524-
525- // if script is external
526- if ( script . src ) {
527-
528- const linkHref = new URL ( script . src ) ;
529- const fileName = linkHref . pathname . slice ( 1 ) ;
530-
531- if ( linkHref . origin == window . location . origin ) {
532-
533- const file = Object . values ( modifiedFiles ) . filter ( file => ( file . dir == selectedFile . dir . split ( ',' ) && file . name == fileName ) ) ;
534- let resp ;
535-
536- if ( ! file [ 0 ] ) {
537-
538- resp = await git . getFile ( selectedFile . dir . split ( ',' ) , linkHref . pathname . slice ( 1 ) ) ;
539-
540- } else {
541-
542- resp = file [ 0 ] ;
543-
544- }
545-
546- addScript ( frameDocument , decodeUnicode ( resp . content ) ) ;
547-
548- // remove original tag
549- script . remove ( ) ;
550-
551- } else {
552-
553- addScript ( frameDocument , '' , script . src , script . type ) ;
554-
555- // delete original
556- script . remove ( ) ;
557-
558- }
559-
560- } else {
561-
562- addScript ( frameDocument , script . textContent , '' , script . type ) ;
563-
564- // delete original
565- script . remove ( ) ;
566-
567- }
568-
569- } )
523+ fetchLiveViewScripts ( frameDocument ) ;
570524
571525 // fetch images
572526 frameDocument . querySelectorAll ( 'img' ) . forEach ( async ( image ) => {
@@ -710,6 +664,60 @@ function renderLiveViewHTML(file) {
710664}
711665
712666
667+ async function fetchLiveViewScripts ( frameDocument ) {
668+
669+ // fetch scripts
670+ await asyncForEach ( frameDocument . querySelectorAll ( 'script' ) , async ( script ) => {
671+
672+ // if script is external
673+ if ( script . src ) {
674+
675+ const linkHref = new URL ( script . src ) ;
676+ const fileName = linkHref . pathname . slice ( 1 ) ;
677+
678+ if ( linkHref . origin == window . location . origin ) {
679+
680+ const file = Object . values ( modifiedFiles ) . filter ( file => ( file . dir == selectedFile . dir . split ( ',' ) && file . name == fileName ) ) ;
681+ let resp ;
682+
683+ if ( ! file [ 0 ] ) {
684+
685+ resp = await git . getFile ( selectedFile . dir . split ( ',' ) , linkHref . pathname . slice ( 1 ) ) ;
686+
687+ } else {
688+
689+ resp = file [ 0 ] ;
690+
691+ }
692+
693+ addScript ( frameDocument , decodeUnicode ( resp . content ) ) ;
694+
695+ // remove original tag
696+ script . remove ( ) ;
697+
698+ } else {
699+
700+ addScript ( frameDocument , '' , script . src , script . type ) ;
701+
702+ // delete original
703+ script . remove ( ) ;
704+
705+ }
706+
707+ } else {
708+
709+ addScript ( frameDocument , script . textContent , '' , script . type ) ;
710+
711+ // delete original
712+ script . remove ( ) ;
713+
714+ }
715+
716+ } ) ;
717+
718+ }
719+
720+
713721function addScript ( documentNode , code , src , type ) {
714722
715723 const script = documentNode . createElement ( 'script' ) ;
0 commit comments