UNPKG

react-naver-maps

Version:

React Navermaps API integration for modern development.

39 lines (37 loc) 981 B
import { useEventTarget } from "./chunk-YH7PRLMG.mjs"; // src/listener.tsx import { useEffect } from "react"; function useListener(target, type, listener) { useEffect(() => { const _listener = (...args) => listener(...args, target); const mapEventListener = naver.maps.Event.addListener(target, type, _listener); return () => { naver.maps.Event.removeListener(mapEventListener); }; }, [target, type, listener]); } var Listener = (props) => { const { target: propTarget, type, listener } = props; const contextTarget = useEventTarget(); const target = propTarget || contextTarget; if (!target) { throw new Error("react-naver-maps: No Target to add listener"); } useListener(target, type, listener); return null; }; function getListenerKeys(props) { return Object.keys(props).filter((key) => /on[A-Z]\w+/.test(key)); } export { useListener, Listener, getListenerKeys }; //# sourceMappingURL=chunk-E5EY34JY.mjs.map