hypnagaga/src/components/Analytics/providers/ga.ts
2025-09-16 08:37:06 +01:00

31 lines
884 B
TypeScript

// Reuters Google Tag ID
const GOOGLE_TAG_ID = 'G-WBSR7WLTGD';
export default () => {
try {
window.dataLayer = window.dataLayer || [];
if (!window.gtag) {
/** @type {Gtag.Gtag} */
window.gtag = function () {
// eslint-disable-next-line prefer-rest-params
window.dataLayer.push(arguments);
};
window.gtag('js', new Date());
// config event registers a pageview by default
window.gtag('config', GOOGLE_TAG_ID, {
send_page_view: false,
});
registerPageview();
}
} catch (e) {
console.warn(`Error initialising Google Analytics: ${e}`);
}
};
export const registerPageview = () => {
if (typeof window === 'undefined' || !window.gtag) return;
window.gtag('event', 'page_view', {
page_location: window.location.origin + window.location.pathname,
page_title: document?.title,
});
};