UNPKG

typescript-event-emitter

Version:

Versatile and feature-rich TypeScript library for event management, providing a solid foundation for building event-driven applications in TypeScript.

20 lines (19 loc) 681 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useBaseEventSource = useBaseEventSource; const react_1 = require("react"); function useBaseEventSource(source, event, handler, options, deps = []) { const handlerRef = (0, react_1.useRef)(handler); handlerRef.current = handler; (0, react_1.useEffect)(() => { const listener = (eventName, payload) => { if (eventName === event) { handlerRef.current(payload); } }; source.on(event, listener, options); return () => { source.off(event, listener); }; }, [source, event, options, ...deps]); }