@@ -97,17 +97,12 @@ if (!aardvark.channels) {
9797 aardvark . channels = { } ;
9898}
9999
100- if ( ! aardvark . referencedScripts ) {
101- console . debug ( "[Aardvark] creating aardvark-script- references" ) ;
102- aardvark . referencedScripts = { } ;
100+ if ( ! aardvark . references ) {
101+ console . debug ( "[Aardvark] creating aardvark-references" ) ;
102+ aardvark . references = { } ;
103103}
104104
105- if ( ! aardvark . referencedStyles ) {
106- console . debug ( "[Aardvark] creating aardvark-stylesheet-references" ) ;
107- aardvark . referencedStyles = { } ;
108- }
109-
110- aardvark . referencedScripts [ "jquery" ] = true ;
105+ aardvark . references [ "jquery-script" ] = true ;
111106
112107if ( ! aardvark . processEvent ) {
113108 console . debug ( "[Aardvark] creating aardvark-event-processor" ) ;
@@ -879,48 +874,40 @@ if (!aardvark.addReferences) {
879874 const name = ref . name ;
880875 const url = ref . url ;
881876
882- const key = `${ name } -${ kind } ` ; // allow using identical names for stylesheet and scripts
877+ const key = `${ name } -${ kind } ` ; // allow using identical names for stylesheet and scripts tracked in single dictionary
883878
884- if ( aardvark . referencedScripts [ key ] ) {
879+ if ( aardvark . references [ key ] ) {
885880 return resolve ( ) ;
886881 }
887882
888- aardvark . referencedScripts [ key ] = true ;
883+ aardvark . references [ key ] = true ;
889884
890- if ( kind === "script" || kind === "module" ) {
891-
892- const script = document . createElement ( "script" ) ;
893- const cc = function ( evt ) {
894- console . debug ( `[Aardvark] referenced ${ kind } "${ name } " (${ url } )` ) ;
895- resolve ( ) ;
896- } ;
897- const err = function ( evt ) {
898- console . warn ( `[Aardvark] failed to referenced ${ kind } "${ name } " (${ url } )` ) ;
899- resolve ( ) ;
900- } ;
901- script . src = url ;
902- script . async = true ;
903- if ( kind === "module" ) script . type = "module" ;
904- script . addEventListener ( "load" , cc ) ;
905- script . addEventListener ( "error" , err ) ;
906- document . getElementsByTagName ( "script" ) [ 0 ] . parentNode . appendChild ( script ) ;
885+ const isScript = kind === "script" || kind === "module" ;
886+ const refElem = document . createElement ( isScript ? "script" : "link" ) ;
887+ const cc = function ( evt ) {
888+ console . debug ( `[Aardvark] referenced ${ kind } "${ name } " (${ url } )` ) ;
889+ resolve ( ) ;
890+ } ;
891+ const err = function ( evt ) {
892+ console . warn ( `[Aardvark] failed to reference ${ kind } "${ name } " (${ url } )` ) ;
893+ resolve ( ) ;
894+ } ;
895+
896+ refElem . addEventListener ( "load" , cc ) ;
897+ refElem . addEventListener ( "error" , err ) ;
898+
899+ if ( isScript ) {
900+ if ( kind === "module" ) {
901+ refElem . type = "module" ;
902+ }
903+ refElem . src = url ;
904+ refElem . async = true ;
905+ document . getElementsByTagName ( "script" ) [ 0 ] . parentNode . appendChild ( refElem ) ;
907906 }
908- else {
909-
910- const script = document . createElement ( "link" ) ;
911- const cc = function ( evt ) {
912- console . debug ( "[Aardvark] referenced stylesheet \"" + name + "\" (" + url + ")" ) ;
913- resolve ( ) ;
914- } ;
915- const err = function ( evt ) {
916- console . warn ( "[Aardvark] failed to reference stylesheet \"" + name + "\" (" + url + ")" ) ;
917- resolve ( ) ;
918- } ;
919- script . addEventListener ( "load" , cc ) ;
920- script . addEventListener ( "error" , err ) ;
921- script . setAttribute ( "rel" , "stylesheet" ) ;
922- script . setAttribute ( "href" , url ) ;
923- document . head . appendChild ( script ) ;
907+ else {
908+ refElem . setAttribute ( "rel" , "stylesheet" ) ;
909+ refElem . setAttribute ( "href" , url ) ;
910+ document . head . appendChild ( refElem ) ;
924911 }
925912 } ) ;
926913 }
0 commit comments