UNPKG

terriajs

Version:

Geospatial data visualization platform.

43 lines 1.34 kB
import i18next from "i18next"; import ReactGA from "react-ga4"; import isDefined from "./isDefined"; export default class GoogleAnalytics { key = undefined; options = undefined; start(configParameters) { this.key = configParameters.googleAnalyticsKey; this.options = configParameters.googleAnalyticsOptions; if (process.env.NODE_ENV === "development") { console.log(i18next.t("core.googleAnalytics.logEnabledOnDevelopment")); } initializeGoogleAnalytics(this); } logEvent(category, action, label, value) { const fieldObject = { hitType: "event", eventCategory: category, eventAction: action }; if (label) { fieldObject.eventLabel = label; } if (isDefined(value)) { fieldObject.value = value; } ReactGA.send(fieldObject); } } function initializeGoogleAnalytics(that) { if (!isDefined(that.key)) { console.log(i18next.t("core.googleAnalytics.log")); return; } ReactGA.initialize(that.key, { gaOptions: { anonymizeIp: true, ...(that.options ?? {}) }, gtagOptions: { send_page_view: false } }); ReactGA.send({ hitType: "pageview" }); } //# sourceMappingURL=GoogleAnalytics.js.map