Files
developer-roadmap/lib/gtag.ts

37 lines
824 B
TypeScript
Raw Normal View History

2021-08-29 16:05:19 +02:00
declare global {
interface Window {
gtag: any;
}
}
// https://developers.google.com/analytics/devguides/collection/gtagjs/pages
export const firePageView = (url: string) => {
if (!window.gtag) {
console.warn('Missing GTAG Analytics disabled');
return;
}
window.gtag('config', process.env.GA_SECRET, {
page_path: url
});
};
// https://developers.google.com/analytics/devguides/collection/gtagjs/events
export const event = (props: { action: string; category: string; label: string; value: string; }) => {
const { action, category, label, value } = props;
if (!window.gtag) {
console.warn('Missing GTAG Analytics disabled');
return;
}
window.gtag(
'event',
action,
{
event_category: category,
event_label: label,
value: value
}
);
};