expf-sigma-node.js 0.1.5 → 0.1.6
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.
- package/package.json +1 -1
- package/public/sigma.js +18 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "expf-sigma-node.js",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.6",
|
|
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
|
@@ -6095,10 +6095,28 @@ var Sigma = class {
|
|
|
6095
6095
|
break;
|
|
6096
6096
|
}
|
|
6097
6097
|
}
|
|
6098
|
+
if (!flag) {
|
|
6099
|
+
let expName = this.getExperimentByFeatureFlag(cacheKey, flagName);
|
|
6100
|
+
if (!expName)
|
|
6101
|
+
return flag;
|
|
6102
|
+
return await this.getExperiment(expName).then((res) => res.getFeatureValue(flagName));
|
|
6103
|
+
}
|
|
6098
6104
|
if (!flag)
|
|
6099
6105
|
return null;
|
|
6100
6106
|
return this.findingSpotCondition(flag, this.sigmaUserData);
|
|
6101
6107
|
}
|
|
6108
|
+
getExperimentByFeatureFlag(cache, flagName) {
|
|
6109
|
+
for (let i = 0; i < cache.experiments.length; i++) {
|
|
6110
|
+
if (cache.experiments[i].feature_flags.length) {
|
|
6111
|
+
for (let j in cache.experiments[i].feature_flags) {
|
|
6112
|
+
if (cache.experiments[i].feature_flags[j].name === flagName) {
|
|
6113
|
+
return cache.experiments[i].name;
|
|
6114
|
+
}
|
|
6115
|
+
}
|
|
6116
|
+
}
|
|
6117
|
+
}
|
|
6118
|
+
return null;
|
|
6119
|
+
}
|
|
6102
6120
|
getFlag(key) {
|
|
6103
6121
|
if (!key) {
|
|
6104
6122
|
return false;
|