@@ -41,6 +41,10 @@ Object.defineProperty(window, "__loadedScriptsUpdaters", {
4141 window . __loadedScriptsUpdatersInternal || { } ) ,
4242} ) ;
4343
44+ const getScriptUpdaters = ( url : string ) : CachedScriptUpdater [ ] =>
45+ ( window . __loadedScriptsUpdaters [ url ] =
46+ window . __loadedScriptsUpdaters [ url ] || [ ] ) ;
47+
4448export function getFromWindowCache ( url : string ) : CachedScript {
4549 return ( window . __loadedScripts [ url ] = window . __loadedScripts [ url ] || {
4650 url,
@@ -59,9 +63,7 @@ export function updateCachedScript(
5963 ...updatedScript ,
6064 } ) ;
6165
62- ( window . __loadedScriptsUpdaters [ url ] || [ ] ) . forEach ( ( updater ) =>
63- updater ( newScript )
64- ) ;
66+ getScriptUpdaters ( url ) . forEach ( ( updater ) => updater ( newScript ) ) ;
6567
6668 return newScript ;
6769}
@@ -70,17 +72,14 @@ export function addScriptUpdater(
7072 url : string ,
7173 updater : CachedScriptUpdater
7274) : void {
73- window . __loadedScriptsUpdaters [ url ] = [
74- ...( window . __loadedScriptsUpdaters [ url ] || [ ] ) ,
75- updater ,
76- ] ;
75+ window . __loadedScriptsUpdaters [ url ] = [ ...getScriptUpdaters ( url ) , updater ] ;
7776}
7877
7978export function removeScriptUpdater (
8079 url : string ,
8180 updater : CachedScriptUpdater
8281) : void {
83- window . __loadedScriptsUpdaters [ url ] = (
84- window . __loadedScriptsUpdaters [ url ] || [ ]
85- ) . filter ( ( currentUpdater ) => currentUpdater !== updater ) ;
82+ window . __loadedScriptsUpdaters [ url ] = getScriptUpdaters ( url ) . filter (
83+ ( currentUpdater ) => currentUpdater !== updater
84+ ) ;
8685}
0 commit comments