UNPKG

next-axiom

Version:

Send WebVitals from your Next.js project to Axiom.

27 lines 886 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useLogger = useLogger; const navigation_1 = require("next/navigation"); const logger_1 = require("./logger"); const react_1 = require("react"); const use_deep_compare_1 = require("use-deep-compare"); function useLogger(config = {}) { const path = (0, navigation_1.usePathname)(); const memoizedConfig = (0, use_deep_compare_1.useDeepCompareMemo)(() => ({ ...config, args: { ...(config.args ?? {}), path, }, }), [config, path]); const logger = (0, react_1.useMemo)(() => new logger_1.Logger(memoizedConfig), [memoizedConfig]); (0, react_1.useEffect)(() => { return () => { if (logger) { logger.flush(); } }; }, [path]); return logger; } //# sourceMappingURL=hooks.js.map