expf-sigma-node.js 3.2.10 → 3.2.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/public/sigma.js +10 -7
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expf-sigma-node.js",
3
- "version": "3.2.10",
3
+ "version": "3.2.12",
4
4
  "description": "expf-sigma-node.js lets you manage features flags and remote config across web, server side applications. Deliver true Continuous Integration. Get builds out faster. Control who has access to new features.",
5
5
  "main": "public/sigma.js",
6
6
  "keywords": [
package/public/sigma.js CHANGED
@@ -1066,6 +1066,8 @@ function doTypeConversion(type, value) {
1066
1066
  return parseFloat(value);
1067
1067
  case "json":
1068
1068
  try {
1069
+ if (value === "")
1070
+ return JSON.parse("{}");
1069
1071
  return JSON.parse(value);
1070
1072
  } catch (e) {
1071
1073
  console.error(errorTypesInConfig.invalidJson.replace("%value%", value), e);
@@ -1139,7 +1141,7 @@ function generateFilteredList(array, name) {
1139
1141
  }
1140
1142
 
1141
1143
  // package.json
1142
- var version = "3.2.10";
1144
+ var version = "3.2.12";
1143
1145
 
1144
1146
  // src/helpers/sdkVersion.js
1145
1147
  var sdkVersion = version;
@@ -1491,8 +1493,8 @@ var Sigma = class {
1491
1493
  checkConditionSignForHash(condition) {
1492
1494
  return signsForHash.includes(condition);
1493
1495
  }
1494
- experimentDefinition(experiment, forcedUserInGroup) {
1495
- if (forcedUserInGroup) {
1496
+ experimentDefinition(experiment, forcedUserInGroup, forcedUser) {
1497
+ if (forcedUserInGroup || forcedUser) {
1496
1498
  return experiment;
1497
1499
  } else if (experiment.targets && experiment.targets.conditions.length > 0 && this.checkTargetConditions(experiment)) {
1498
1500
  return experiment;
@@ -1523,9 +1525,9 @@ var Sigma = class {
1523
1525
  }
1524
1526
  if (sigmaDataLs.experiments[i]["name"] === experimentName && !experiment) {
1525
1527
  splitById = this.getSplitById(sigmaDataLs.experiments[i]);
1526
- forcedUser = checkForcedList(sigmaDataLs.experiments[i].forced_user_list, this.sigmaUserData.user.userId);
1528
+ forcedUser = checkForcedList(sigmaDataLs.experiments[i].forced_user_list, splitById);
1527
1529
  groupName = this.findUserInForcedGroup(sigmaDataLs.experiments[i]);
1528
- experiment = this.experimentDefinition(sigmaDataLs.experiments[i], groupName);
1530
+ experiment = this.experimentDefinition(sigmaDataLs.experiments[i], groupName, forcedUser);
1529
1531
  break;
1530
1532
  }
1531
1533
  }
@@ -1610,8 +1612,9 @@ var Sigma = class {
1610
1612
  let layer = null;
1611
1613
  let bounds = [];
1612
1614
  let splitById = this.getSplitById(sigmaDataLs.experiments[i]);
1615
+ let forcedUser = checkForcedList(sigmaDataLs.experiments[i].forced_user_list, splitById);
1613
1616
  let userInGroupExperiment = this.findUserInForcedGroup(sigmaDataLs.experiments[i]);
1614
- let experiment = this.experimentDefinition(sigmaDataLs.experiments[i], userInGroupExperiment);
1617
+ let experiment = this.experimentDefinition(sigmaDataLs.experiments[i], userInGroupExperiment, forcedUser);
1615
1618
  if (experiment) {
1616
1619
  if (checkBoolValue(experiment["layer_id"]) && !userInGroupExperiment) {
1617
1620
  layer = experiment["layer_id"];
@@ -1622,7 +1625,7 @@ var Sigma = class {
1622
1625
  experiment.salt,
1623
1626
  experiment.allocation,
1624
1627
  experiment.groups,
1625
- checkForcedList(experiment.forced_user_list, splitById),
1628
+ forcedUser,
1626
1629
  layer,
1627
1630
  bounds,
1628
1631
  splitById