Files
imexrps/electron/analytics.js
2020-10-23 14:12:35 -07:00

36 lines
899 B
JavaScript

const { ipcMain } = require("electron");
const { app } = require("electron");
const log = require("electron-log");
const Nucleus = require("nucleus-nodejs");
const { default: ipcTypes } = require("../src/ipc.types");
Nucleus.init("5f91b569b95bac34eefdb63a", {
disableInDev: true,
debug: false,
});
Nucleus.setProps({
version: app.getVersion().toString(),
});
Nucleus.onError = (type, err) => {
log.error(err);
// type will either be uncaughtException, unhandledRejection or windowError
};
ipcMain.on(ipcTypes.app.toMain.setUserName, (event, userName) => {
Nucleus.appStarted();
Nucleus.setUserId(userName);
});
ipcMain.on(ipcTypes.app.toMain.track, (e, args) => {
console.log("args", args);
log.log("Received Tracking Request", args);
const { event, ...eventDetails } = args;
try {
Nucleus.track(event, eventDetails);
} catch (error) {
log.error(error);
}
});