in src/packageLogs.js [113:168]
export function packageLog(e, detailFcn) {
if (!config.on) {
return false;
}
let details = null;
if (detailFcn) {
details = detailFcn(e);
}
const timeFields = extractTimeFields(
(e.timeStamp && e.timeStamp > 0) ? config.time(e.timeStamp) : Date.now()
);
let log = {
'target' : getSelector(e.target),
'path' : buildPath(e),
'pageUrl': window.location.href,
'pageTitle': document.title,
'pageReferrer': document.referrer,
'browser': detectBrowser(),
'clientTime' : timeFields.milli,
'microTime' : timeFields.micro,
'location' : getLocation(e),
'scrnRes' : getSreenRes(),
'type' : e.type,
'logType': 'raw',
'userAction' : true,
'details' : details,
'userId' : config.userId,
'toolVersion' : config.version,
'toolName' : config.toolName,
'useraleVersion': config.useraleVersion,
'sessionID': config.sessionID,
};
if ((typeof filterHandler === 'function') && !filterHandler(log)) {
return false;
}
if (typeof mapHandler === 'function') {
log = mapHandler(log, e);
}
for (const func of Object.values(cbHandlers)) {
if (typeof func === 'function') {
log = func(log, e);
if(!log) {
return false;
}
}
}
logs.push(log);
return true;
}