fluxel
Version:
An ultra-lightweight, high-performance library for efficient DOM building and dynamic web UIs
26 lines (25 loc) • 854 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
function _export(target, all) {
for(var name in all)Object.defineProperty(target, name, {
enumerable: true,
get: all[name]
});
}
_export(exports, {
cleanupTargetListenerRecursive: function() {
return cleanupTargetListenerRecursive;
},
targetListenerMap: function() {
return targetListenerMap;
}
});
const targetListenerMap = new WeakMap();
function cleanupTargetListenerRecursive(element) {
var _targetListenerMap_get;
(_targetListenerMap_get = targetListenerMap.get(element)) === null || _targetListenerMap_get === void 0 ? void 0 : _targetListenerMap_get.forEach((cleanup)=>cleanup());
targetListenerMap.delete(element);
element.childNodes.forEach((child)=>cleanupTargetListenerRecursive(child));
}