@@ -50,19 +50,25 @@ if (typeof window.__patternslib_registry === "undefined") {
5050 window . __patternslib_registry = { } ;
5151}
5252export const PATTERN_REGISTRY = window . __patternslib_registry ;
53+ if ( typeof window . __patternslib_registry_initialized === "undefined" ) {
54+ window . __patternslib_registry_initialized = false ;
55+ }
5356
5457const registry = {
5558 patterns : PATTERN_REGISTRY , // reference to global patterns registry
5659 // as long as the registry is not initialized, pattern
5760 // registration just registers a pattern. Once init is called,
5861 // the DOM is scanned. After that registering a new pattern
5962 // results in rescanning the DOM only for this pattern.
60- initialized : false ,
6163 init ( ) {
6264 $ ( document ) . ready ( function ( ) {
65+ if ( window . __patternslib_registry_initialized ) {
66+ // Do not reinitialize a already initialized registry.
67+ return ;
68+ }
69+ window . __patternslib_registry_initialized = true ;
6370 log . info ( "loaded: " + Object . keys ( registry . patterns ) . sort ( ) . join ( ", " ) ) ;
6471 registry . scan ( document . body ) ;
65- registry . initialized = true ;
6672 log . info ( "finished initial scan." ) ;
6773 } ) ;
6874 } ,
@@ -211,7 +217,9 @@ const registry = {
211217 $ . fn [ plugin_name . replace ( / ^ p a t / , "pattern" ) ] = $ . fn [ plugin_name ] ;
212218 }
213219 log . debug ( "Registered pattern:" , name , pattern ) ;
214- if ( registry . initialized ) {
220+ if ( window . __patternslib_registry_initialized ) {
221+ // Once the first initialization has been done, do only scan for
222+ // newly registered patterns.
215223 registry . scan ( document . body , [ name ] ) ;
216224 }
217225 return true ;
0 commit comments