export function packageCustomLog()

in src/packageLogs.js [177:226]


export function packageCustomLog(customLog, detailFcn, userAction) {
    if (!config.on) {
        return false;
    }

    let details = null;
    if (detailFcn) {
        details = detailFcn();
    }

    const metaData = {
        'pageUrl': window.location.href,
        'pageTitle': document.title,
        'pageReferrer': document.referrer,
        'browser': detectBrowser(),
        'clientTime' : Date.now(),
        'scrnRes' : getSreenRes(),
        'logType': 'custom',
        'userAction' : userAction,
        'details' : details,
        'userId' : config.userId,
        'toolVersion' : config.version,
        'toolName' : config.toolName,
        'useraleVersion': config.useraleVersion,
        'sessionID': config.sessionID
    };

    let log = Object.assign(metaData, customLog);

    if ((typeof filterHandler === 'function') && !filterHandler(log)) {
        return false;
    }

    if (typeof mapHandler === 'function') {
        log = mapHandler(log);
    }

    for (const func of Object.values(cbHandlers)) {
      if (typeof func === 'function') {
        log = func(log, null);
        if(!log) {
          return false;
        }
      }
    }

    logs.push(log);

    return true;
}