UNPKG

react-abtest

Version:

A simple React and React Native AB test component.

34 lines (26 loc) 873 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _utils = require("./utils"); var experimentUniqueIdWeighedGroup = function experimentUniqueIdWeighedGroup(_ref) { var experimentName = _ref.experimentName, uid = _ref.uid, weights = _ref.weights, logger = _ref.logger; if (weights.length === 0) { return null; } var hash = (0, _utils.createHash)(uid + experimentName); var totWeight = (0, _utils.totalWeight)(weights); var hashFloat = parseFloat("0.".concat(hash)); var rangeVal = (0, _utils.customRange)(hashFloat, 0.0, totWeight); var variant = (0, _utils.getWeighedIndex)(weights, rangeVal); if (logger && typeof logger === 'function') { logger(variant); } return variant; }; var _default = experimentUniqueIdWeighedGroup; exports["default"] = _default;