Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/main/core/src/lib/event/event-emitter/ |
Upload File : |
import Type from "../../type"; import Runtime from "../../runtime"; export default class WarningStore { constructor() { this.warnings = new Map(); this.printDelayed = Runtime.debounce(this.print.bind(this), 500); } add(target, eventName, listeners) { let contextWarnings = this.warnings.get(target); if (!contextWarnings) { contextWarnings = Object.create(null); this.warnings.set(target, contextWarnings); } if (!contextWarnings[eventName]) { contextWarnings[eventName] = {}; } contextWarnings[eventName].size = listeners.size; if (!Type.isArray(contextWarnings[eventName].errors)) { contextWarnings[eventName].errors = []; } contextWarnings[eventName].errors.push(new Error()); } print() { this.warnings.forEach((warnings) => { for (let eventName in warnings) { console.groupCollapsed( 'Possible BX.Event.EventEmitter memory leak detected. ' + warnings[eventName].size + ' "' + eventName + '" listeners added. ' + 'Use emitter.setMaxListeners() to increase limit.' ); console.dir(warnings[eventName].errors); console.groupEnd(); } }); this.clear(); } clear() { this.warnings.clear(); } printDelayed() { } }