@dotcms/analytics
Version:
Official JavaScript library for Content Analytics with DotCMS.
48 lines (47 loc) • 1.1 kB
JavaScript
import { useMemo as c, useCallback as r } from "react";
import { getUVEState as l } from "../../../uve/src/lib/core/core.utils.js";
import "../../../uve/src/internal/constants.js";
import { initializeAnalytics as u } from "../internal/utils.js";
const A = {
track: () => {
},
pageView: () => {
},
conversion: () => {
}
}, v = (i) => {
const t = c(() => {
const e = u(i);
return e || (l() ? console.warn(
"DotCMS Analytics [React]: Analytics is not initialized because the site is inside the UVE editor. All tracking calls will be ignored."
) : console.error(
"DotCMS Analytics [React]: Failed to initialize. Please verify the required configuration (server and siteAuth)."
)), e;
}, [i.server, i.siteAuth]);
if (!t)
return A;
const o = r(
(e, n = {}) => {
t.track(e, n);
},
[t]
), s = r(
(e = {}) => {
t.pageView(e);
},
[t]
), a = r(
(e, n = {}) => {
t.conversion(e, n);
},
[t]
);
return {
track: o,
pageView: s,
conversion: a
};
};
export {
v as useContentAnalytics
};