UNPKG

@absmartly/javascript-sdk

Version:

A/B Smartly Javascript SDK

28 lines (27 loc) 774 B
"use strict"; require("core-js/modules/es.array.filter.js"); Object.defineProperty(exports, "__esModule", { value: true }); exports.AudienceMatcher = void 0; const utils_1 = require("./utils"); const jsonexpr_1 = require("./jsonexpr/jsonexpr"); class AudienceMatcher { constructor() { this._jsonExpr = new jsonexpr_1.JsonExpr(); } evaluate(audienceString, vars) { try { const audience = JSON.parse(audienceString); if (audience && audience.filter) { if (Array.isArray(audience.filter) || (0, utils_1.isObject)(audience.filter)) { return this._jsonExpr.evaluateBooleanExpr(audience.filter, vars); } } } catch (e) { console.error(e); } return null; } } exports.AudienceMatcher = AudienceMatcher;