aboutsummaryrefslogtreecommitdiffstats
path: root/packages/website/ts/utils/analytics.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/website/ts/utils/analytics.ts')
-rw-r--r--packages/website/ts/utils/analytics.ts26
1 files changed, 26 insertions, 0 deletions
diff --git a/packages/website/ts/utils/analytics.ts b/packages/website/ts/utils/analytics.ts
new file mode 100644
index 000000000..37c47c7b0
--- /dev/null
+++ b/packages/website/ts/utils/analytics.ts
@@ -0,0 +1,26 @@
+import * as _ from 'lodash';
+import * as ReactGA from 'react-ga';
+import { configs } from 'ts/utils/configs';
+import { utils } from 'ts/utils/utils';
+import * as Web3 from 'web3';
+
+export const analytics = {
+ init() {
+ ReactGA.initialize(configs.GOOGLE_ANALYTICS_ID);
+ },
+ logEvent(category: string, action: string, label: string, value?: any) {
+ ReactGA.event({
+ category,
+ action,
+ label,
+ value,
+ });
+ },
+ async logProviderAsync(web3IfExists: Web3) {
+ await utils.onPageLoadAsync();
+ const providerType = !_.isUndefined(web3IfExists)
+ ? utils.getProviderType(web3IfExists.currentProvider)
+ : 'NONE';
+ ReactGA.ga('set', 'dimension1', providerType);
+ },
+};