UNPKG

@airgrid/edgekit

Version:

A privacy focused library for cookie-less audience creation.

25 lines 1.08 kB
import { __spreadArrays } from "tslib"; import { evaluateCondition } from './evaluate'; import { timeStampInSecs } from '../utils'; import { translate } from './translate'; var getMatchingAudiences = function (audienceDefinitions, pageViews) { var currentTS = timeStampInSecs(); return audienceDefinitions.reduce(function (acc, audience) { var condition = translate(audience); var pageViewsWithinLookBack = pageViews.filter(function (pageView) { return audience.lookBack === 0 || pageView.ts > currentTS - audience.lookBack; }); return evaluateCondition(condition, pageViewsWithinLookBack) ? __spreadArrays(acc, [ { id: audience.id, version: audience.version, matchedAt: currentTS, expiresAt: currentTS + audience.ttl, matchedOnCurrentPageView: true, }, ]) : acc; }, []); }; export { translate, evaluateCondition, getMatchingAudiences }; //# sourceMappingURL=index.js.map