File tree 1 file changed +5
-6
lines changed
1 file changed +5
-6
lines changed Original file line number Diff line number Diff line change @@ -44,17 +44,16 @@ export function createRegistrySelector( registrySelector ) {
44
44
// and that has the same API as a regular selector. Binding it in such a way makes it
45
45
// possible to call the selector directly from another selector.
46
46
const wrappedSelector = ( ...args ) => {
47
+ let selector = selectorsByRegistry . get ( wrappedSelector . registry ) ;
47
48
// We want to make sure the cache persists even when new registry
48
49
// instances are created. For example patterns create their own editors
49
50
// with their own core/block-editor stores, so we should keep track of
50
51
// the cache for each registry instance.
51
- if ( ! selectorsByRegistry . has ( wrappedSelector . registry ) ) {
52
- selectorsByRegistry . set (
53
- wrappedSelector . registry ,
54
- registrySelector ( wrappedSelector . registry . select )
55
- ) ;
52
+ if ( ! selector ) {
53
+ selector = registrySelector ( wrappedSelector . registry . select ) ;
54
+ selectorsByRegistry . set ( wrappedSelector . registry , selector ) ;
56
55
}
57
- return selectorsByRegistry . get ( wrappedSelector . registry ) ( ...args ) ;
56
+ return selector ( ...args ) ;
58
57
} ;
59
58
60
59
/**
You can’t perform that action at this time.
0 commit comments