visitor-segments
Version:
Hellobar Segments.
29 lines (28 loc) • 1.04 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const getTLD_1 = require("../lib/getTLD");
const paramsFromString_1 = __importDefault(require("../lib/paramsFromString"));
function referrerInfo() {
const tld = (0, getTLD_1.getTLD)().toLowerCase();
if (!document.referrer)
return null;
// Check to ensure that the tld is not present in the
const referrer = `${document.referrer}`
.replace(/.*?\:\/\//, '')
.replace(/www\./i, '')
.toLowerCase()
.substring(0, 150);
const domain = referrer.replace(/(.*?)\/.*/, '$1');
const params = (0, paramsFromString_1.default)(referrer.split('?')[1]);
const terms = params.query || params.q || params.search;
return {
referrer,
domain,
isExternal: domain.indexOf(tld) === -1,
searchTerms: terms,
};
}
exports.default = referrerInfo;