dreamstate
Version:
Store management library based on react context and observers
24 lines (22 loc) • 988 B
JavaScript
/**
* Meta symbols for private internals in context managers.
*/
var SIGNAL_METADATA_SYMBOL = Symbol("SIGNAL_METADATA");
var QUERY_METADATA_SYMBOL = Symbol("QUERY_METADATA");
var SIGNALING_HANDLER_SYMBOL = Symbol("SIGNALING_HANDLER");
var SCOPE_SYMBOL = Symbol("SCOPE");
/**
* A weak map registry that stores React context instances bound to specific manager classes.
*
* This registry ensures that the library does not retain unnecessary references to manager classes,
* preventing memory leaks and unintended side effects.
*
* This is particularly useful in scenarios such as:
* - Hot Module Replacement
* - Module unloading
* - Scope disposal
*/
var CONTEXT_REACT_CONTEXTS_REGISTRY = new WeakMap();
var SIGNAL_METADATA_REGISTRY = new WeakMap();
var QUERY_METADATA_REGISTRY = new WeakMap();
export { CONTEXT_REACT_CONTEXTS_REGISTRY, QUERY_METADATA_REGISTRY, QUERY_METADATA_SYMBOL, SCOPE_SYMBOL, SIGNALING_HANDLER_SYMBOL, SIGNAL_METADATA_REGISTRY, SIGNAL_METADATA_SYMBOL };