@featurevisor/sdk 0.36.0 → 0.37.0
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/CHANGELOG.md +11 -0
- package/README.md +14 -14
- package/coverage/clover.xml +224 -224
- package/coverage/coverage-final.json +4 -4
- package/coverage/lcov-report/bucket.ts.html +1 -1
- package/coverage/lcov-report/conditions.ts.html +38 -38
- package/coverage/lcov-report/datafileReader.ts.html +1 -1
- package/coverage/lcov-report/emitter.ts.html +1 -1
- package/coverage/lcov-report/feature.ts.html +7 -7
- package/coverage/lcov-report/index.html +1 -1
- package/coverage/lcov-report/instance.ts.html +74 -113
- package/coverage/lcov-report/logger.ts.html +1 -1
- package/coverage/lcov-report/segments.ts.html +10 -10
- package/coverage/lcov.info +391 -391
- package/dist/index.js +1 -1
- package/dist/index.js.gz +0 -0
- package/dist/index.js.map +1 -1
- package/lib/conditions.d.ts +3 -3
- package/lib/conditions.js +35 -35
- package/lib/conditions.js.map +1 -1
- package/lib/feature.d.ts +3 -3
- package/lib/feature.js +5 -5
- package/lib/feature.js.map +1 -1
- package/lib/instance.d.ts +27 -26
- package/lib/instance.js +80 -86
- package/lib/instance.js.map +1 -1
- package/lib/segments.d.ts +3 -3
- package/lib/segments.js +8 -8
- package/lib/segments.js.map +1 -1
- package/package.json +3 -3
- package/src/conditions.ts +37 -37
- package/src/feature.ts +6 -6
- package/src/instance.spec.ts +6 -6
- package/src/instance.ts +70 -83
- package/src/segments.ts +9 -9
package/lib/instance.js
CHANGED
|
@@ -68,7 +68,7 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
68
68
|
this.datafileUrl = options.datafileUrl;
|
|
69
69
|
this.handleDatafileFetch = options.handleDatafileFetch;
|
|
70
70
|
this.initialFeatures = options.initialFeatures;
|
|
71
|
-
this.
|
|
71
|
+
this.interceptContext = options.interceptContext;
|
|
72
72
|
this.logger = options.logger || createLogger();
|
|
73
73
|
this.refreshInterval = options.refreshInterval;
|
|
74
74
|
this.stickyFeatures = options.stickyFeatures;
|
|
@@ -148,7 +148,7 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
148
148
|
/**
|
|
149
149
|
* Bucketing
|
|
150
150
|
*/
|
|
151
|
-
FeaturevisorInstance.prototype.getBucketKey = function (feature,
|
|
151
|
+
FeaturevisorInstance.prototype.getBucketKey = function (feature, context) {
|
|
152
152
|
var featureKey = feature.key;
|
|
153
153
|
var type;
|
|
154
154
|
var attributeKeys;
|
|
@@ -170,7 +170,7 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
170
170
|
}
|
|
171
171
|
var bucketKey = [];
|
|
172
172
|
attributeKeys.forEach(function (attributeKey) {
|
|
173
|
-
var attributeValue =
|
|
173
|
+
var attributeValue = context[attributeKey];
|
|
174
174
|
if (typeof attributeValue === "undefined") {
|
|
175
175
|
return;
|
|
176
176
|
}
|
|
@@ -187,15 +187,15 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
187
187
|
bucketKey.push(featureKey);
|
|
188
188
|
var result = bucketKey.join(this.bucketKeySeparator);
|
|
189
189
|
if (this.configureBucketKey) {
|
|
190
|
-
return this.configureBucketKey(feature,
|
|
190
|
+
return this.configureBucketKey(feature, context, result);
|
|
191
191
|
}
|
|
192
192
|
return result;
|
|
193
193
|
};
|
|
194
|
-
FeaturevisorInstance.prototype.getBucketValue = function (feature,
|
|
195
|
-
var bucketKey = this.getBucketKey(feature,
|
|
194
|
+
FeaturevisorInstance.prototype.getBucketValue = function (feature, context) {
|
|
195
|
+
var bucketKey = this.getBucketKey(feature, context);
|
|
196
196
|
var value = getBucketedNumber(bucketKey);
|
|
197
197
|
if (this.configureBucketValue) {
|
|
198
|
-
return this.configureBucketValue(feature,
|
|
198
|
+
return this.configureBucketValue(feature, context, value);
|
|
199
199
|
}
|
|
200
200
|
return value;
|
|
201
201
|
};
|
|
@@ -260,8 +260,8 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
260
260
|
/**
|
|
261
261
|
* Variation
|
|
262
262
|
*/
|
|
263
|
-
FeaturevisorInstance.prototype.evaluateVariation = function (featureKey,
|
|
264
|
-
if (
|
|
263
|
+
FeaturevisorInstance.prototype.evaluateVariation = function (featureKey, context) {
|
|
264
|
+
if (context === void 0) { context = {}; }
|
|
265
265
|
var evaluation;
|
|
266
266
|
try {
|
|
267
267
|
var key = typeof featureKey === "string" ? featureKey : featureKey.key;
|
|
@@ -303,11 +303,9 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
303
303
|
this.logger.warn("feature not found in datafile", evaluation);
|
|
304
304
|
return evaluation;
|
|
305
305
|
}
|
|
306
|
-
var
|
|
307
|
-
? this.interceptAttributes(attributes)
|
|
308
|
-
: attributes;
|
|
306
|
+
var finalContext = this.interceptContext ? this.interceptContext(context) : context;
|
|
309
307
|
// forced
|
|
310
|
-
var force_1 = findForceFromFeature(feature_1,
|
|
308
|
+
var force_1 = findForceFromFeature(feature_1, context, this.datafileReader);
|
|
311
309
|
if (force_1 && force_1.variation) {
|
|
312
310
|
var variation_1 = feature_1.variations.find(function (v) { return v.value === force_1.variation; });
|
|
313
311
|
if (variation_1) {
|
|
@@ -321,8 +319,8 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
321
319
|
}
|
|
322
320
|
}
|
|
323
321
|
// bucketing
|
|
324
|
-
var bucketValue = this.getBucketValue(feature_1,
|
|
325
|
-
var _a = getMatchedTrafficAndAllocation(feature_1.traffic,
|
|
322
|
+
var bucketValue = this.getBucketValue(feature_1, finalContext);
|
|
323
|
+
var _a = getMatchedTrafficAndAllocation(feature_1.traffic, finalContext, bucketValue, this.datafileReader, this.logger), matchedTraffic_1 = _a.matchedTraffic, matchedAllocation_1 = _a.matchedAllocation;
|
|
326
324
|
if (matchedTraffic_1) {
|
|
327
325
|
// override from rule
|
|
328
326
|
if (matchedTraffic_1.variation) {
|
|
@@ -384,10 +382,10 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
384
382
|
return evaluation;
|
|
385
383
|
}
|
|
386
384
|
};
|
|
387
|
-
FeaturevisorInstance.prototype.getVariation = function (featureKey,
|
|
388
|
-
if (
|
|
385
|
+
FeaturevisorInstance.prototype.getVariation = function (featureKey, context) {
|
|
386
|
+
if (context === void 0) { context = {}; }
|
|
389
387
|
try {
|
|
390
|
-
var evaluation = this.evaluateVariation(featureKey,
|
|
388
|
+
var evaluation = this.evaluateVariation(featureKey, context);
|
|
391
389
|
if (typeof evaluation.variationValue !== "undefined") {
|
|
392
390
|
return evaluation.variationValue;
|
|
393
391
|
}
|
|
@@ -401,52 +399,50 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
401
399
|
return undefined;
|
|
402
400
|
}
|
|
403
401
|
};
|
|
404
|
-
FeaturevisorInstance.prototype.getVariationBoolean = function (featureKey,
|
|
405
|
-
if (
|
|
406
|
-
var variationValue = this.getVariation(featureKey,
|
|
402
|
+
FeaturevisorInstance.prototype.getVariationBoolean = function (featureKey, context) {
|
|
403
|
+
if (context === void 0) { context = {}; }
|
|
404
|
+
var variationValue = this.getVariation(featureKey, context);
|
|
407
405
|
return getValueByType(variationValue, "boolean");
|
|
408
406
|
};
|
|
409
|
-
FeaturevisorInstance.prototype.getVariationString = function (featureKey,
|
|
410
|
-
if (
|
|
411
|
-
var variationValue = this.getVariation(featureKey,
|
|
407
|
+
FeaturevisorInstance.prototype.getVariationString = function (featureKey, context) {
|
|
408
|
+
if (context === void 0) { context = {}; }
|
|
409
|
+
var variationValue = this.getVariation(featureKey, context);
|
|
412
410
|
return getValueByType(variationValue, "string");
|
|
413
411
|
};
|
|
414
|
-
FeaturevisorInstance.prototype.getVariationInteger = function (featureKey,
|
|
415
|
-
if (
|
|
416
|
-
var variationValue = this.getVariation(featureKey,
|
|
412
|
+
FeaturevisorInstance.prototype.getVariationInteger = function (featureKey, context) {
|
|
413
|
+
if (context === void 0) { context = {}; }
|
|
414
|
+
var variationValue = this.getVariation(featureKey, context);
|
|
417
415
|
return getValueByType(variationValue, "integer");
|
|
418
416
|
};
|
|
419
|
-
FeaturevisorInstance.prototype.getVariationDouble = function (featureKey,
|
|
420
|
-
if (
|
|
421
|
-
var variationValue = this.getVariation(featureKey,
|
|
417
|
+
FeaturevisorInstance.prototype.getVariationDouble = function (featureKey, context) {
|
|
418
|
+
if (context === void 0) { context = {}; }
|
|
419
|
+
var variationValue = this.getVariation(featureKey, context);
|
|
422
420
|
return getValueByType(variationValue, "double");
|
|
423
421
|
};
|
|
424
422
|
/**
|
|
425
423
|
* Activate
|
|
426
424
|
*/
|
|
427
|
-
FeaturevisorInstance.prototype.activate = function (featureKey,
|
|
428
|
-
if (
|
|
425
|
+
FeaturevisorInstance.prototype.activate = function (featureKey, context) {
|
|
426
|
+
if (context === void 0) { context = {}; }
|
|
429
427
|
try {
|
|
430
|
-
var evaluation = this.evaluateVariation(featureKey,
|
|
428
|
+
var evaluation = this.evaluateVariation(featureKey, context);
|
|
431
429
|
var variationValue = evaluation.variation
|
|
432
430
|
? evaluation.variation.value
|
|
433
431
|
: evaluation.variationValue;
|
|
434
432
|
if (typeof variationValue === "undefined") {
|
|
435
433
|
return undefined;
|
|
436
434
|
}
|
|
437
|
-
var
|
|
438
|
-
|
|
439
|
-
: attributes;
|
|
440
|
-
var captureAttributes_1 = {};
|
|
435
|
+
var finalContext_1 = this.interceptContext ? this.interceptContext(context) : context;
|
|
436
|
+
var captureContext_1 = {};
|
|
441
437
|
var attributesForCapturing = this.datafileReader
|
|
442
438
|
.getAllAttributes()
|
|
443
439
|
.filter(function (a) { return a.capture === true; });
|
|
444
440
|
attributesForCapturing.forEach(function (a) {
|
|
445
|
-
if (typeof
|
|
446
|
-
|
|
441
|
+
if (typeof finalContext_1[a.key] !== "undefined") {
|
|
442
|
+
captureContext_1[a.key] = context[a.key];
|
|
447
443
|
}
|
|
448
444
|
});
|
|
449
|
-
this.emitter.emit("activation", featureKey, variationValue,
|
|
445
|
+
this.emitter.emit("activation", featureKey, variationValue, finalContext_1, captureContext_1, evaluation);
|
|
450
446
|
return variationValue;
|
|
451
447
|
}
|
|
452
448
|
catch (e) {
|
|
@@ -454,32 +450,32 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
454
450
|
return undefined;
|
|
455
451
|
}
|
|
456
452
|
};
|
|
457
|
-
FeaturevisorInstance.prototype.activateBoolean = function (featureKey,
|
|
458
|
-
if (
|
|
459
|
-
var variationValue = this.activate(featureKey,
|
|
453
|
+
FeaturevisorInstance.prototype.activateBoolean = function (featureKey, context) {
|
|
454
|
+
if (context === void 0) { context = {}; }
|
|
455
|
+
var variationValue = this.activate(featureKey, context);
|
|
460
456
|
return getValueByType(variationValue, "boolean");
|
|
461
457
|
};
|
|
462
|
-
FeaturevisorInstance.prototype.activateString = function (featureKey,
|
|
463
|
-
if (
|
|
464
|
-
var variationValue = this.activate(featureKey,
|
|
458
|
+
FeaturevisorInstance.prototype.activateString = function (featureKey, context) {
|
|
459
|
+
if (context === void 0) { context = {}; }
|
|
460
|
+
var variationValue = this.activate(featureKey, context);
|
|
465
461
|
return getValueByType(variationValue, "string");
|
|
466
462
|
};
|
|
467
|
-
FeaturevisorInstance.prototype.activateInteger = function (featureKey,
|
|
468
|
-
if (
|
|
469
|
-
var variationValue = this.activate(featureKey,
|
|
463
|
+
FeaturevisorInstance.prototype.activateInteger = function (featureKey, context) {
|
|
464
|
+
if (context === void 0) { context = {}; }
|
|
465
|
+
var variationValue = this.activate(featureKey, context);
|
|
470
466
|
return getValueByType(variationValue, "integer");
|
|
471
467
|
};
|
|
472
|
-
FeaturevisorInstance.prototype.activateDouble = function (featureKey,
|
|
473
|
-
if (
|
|
474
|
-
var variationValue = this.activate(featureKey,
|
|
468
|
+
FeaturevisorInstance.prototype.activateDouble = function (featureKey, context) {
|
|
469
|
+
if (context === void 0) { context = {}; }
|
|
470
|
+
var variationValue = this.activate(featureKey, context);
|
|
475
471
|
return getValueByType(variationValue, "double");
|
|
476
472
|
};
|
|
477
473
|
/**
|
|
478
474
|
* Variable
|
|
479
475
|
*/
|
|
480
|
-
FeaturevisorInstance.prototype.evaluateVariable = function (featureKey, variableKey,
|
|
476
|
+
FeaturevisorInstance.prototype.evaluateVariable = function (featureKey, variableKey, context) {
|
|
481
477
|
var _this = this;
|
|
482
|
-
if (
|
|
478
|
+
if (context === void 0) { context = {}; }
|
|
483
479
|
var evaluation;
|
|
484
480
|
try {
|
|
485
481
|
var key = typeof featureKey === "string" ? featureKey : featureKey.key;
|
|
@@ -537,11 +533,9 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
537
533
|
this.logger.warn("variable schema not found", evaluation);
|
|
538
534
|
return evaluation;
|
|
539
535
|
}
|
|
540
|
-
var
|
|
541
|
-
? this.interceptAttributes(attributes)
|
|
542
|
-
: attributes;
|
|
536
|
+
var finalContext_2 = this.interceptContext ? this.interceptContext(context) : context;
|
|
543
537
|
// forced
|
|
544
|
-
var force = findForceFromFeature(feature,
|
|
538
|
+
var force = findForceFromFeature(feature, context, this.datafileReader);
|
|
545
539
|
if (force && force.variables && typeof force.variables[variableKey] !== "undefined") {
|
|
546
540
|
evaluation = {
|
|
547
541
|
featureKey: feature.key,
|
|
@@ -554,8 +548,8 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
554
548
|
return evaluation;
|
|
555
549
|
}
|
|
556
550
|
// bucketing
|
|
557
|
-
var bucketValue = this.getBucketValue(feature,
|
|
558
|
-
var _a = getMatchedTrafficAndAllocation(feature.traffic,
|
|
551
|
+
var bucketValue = this.getBucketValue(feature, finalContext_2);
|
|
552
|
+
var _a = getMatchedTrafficAndAllocation(feature.traffic, finalContext_2, bucketValue, this.datafileReader, this.logger), matchedTraffic = _a.matchedTraffic, matchedAllocation_2 = _a.matchedAllocation;
|
|
559
553
|
if (matchedTraffic) {
|
|
560
554
|
// override from rule
|
|
561
555
|
if (matchedTraffic.variables &&
|
|
@@ -581,12 +575,12 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
581
575
|
if (variableFromVariation.overrides) {
|
|
582
576
|
var override = variableFromVariation.overrides.find(function (o) {
|
|
583
577
|
if (o.conditions) {
|
|
584
|
-
return allConditionsAreMatched(typeof o.conditions === "string" ? JSON.parse(o.conditions) : o.conditions,
|
|
578
|
+
return allConditionsAreMatched(typeof o.conditions === "string" ? JSON.parse(o.conditions) : o.conditions, finalContext_2);
|
|
585
579
|
}
|
|
586
580
|
if (o.segments) {
|
|
587
581
|
return allGroupSegmentsAreMatched(typeof o.segments === "string" && o.segments !== "*"
|
|
588
582
|
? JSON.parse(o.segments)
|
|
589
|
-
: o.segments,
|
|
583
|
+
: o.segments, finalContext_2, _this.datafileReader);
|
|
590
584
|
}
|
|
591
585
|
return false;
|
|
592
586
|
});
|
|
@@ -643,10 +637,10 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
643
637
|
return evaluation;
|
|
644
638
|
}
|
|
645
639
|
};
|
|
646
|
-
FeaturevisorInstance.prototype.getVariable = function (featureKey, variableKey,
|
|
647
|
-
if (
|
|
640
|
+
FeaturevisorInstance.prototype.getVariable = function (featureKey, variableKey, context) {
|
|
641
|
+
if (context === void 0) { context = {}; }
|
|
648
642
|
try {
|
|
649
|
-
var evaluation = this.evaluateVariable(featureKey, variableKey,
|
|
643
|
+
var evaluation = this.evaluateVariable(featureKey, variableKey, context);
|
|
650
644
|
if (typeof evaluation.variableValue !== "undefined") {
|
|
651
645
|
if (evaluation.variableSchema &&
|
|
652
646
|
evaluation.variableSchema.type === "json" &&
|
|
@@ -662,39 +656,39 @@ var FeaturevisorInstance = /** @class */ (function () {
|
|
|
662
656
|
return undefined;
|
|
663
657
|
}
|
|
664
658
|
};
|
|
665
|
-
FeaturevisorInstance.prototype.getVariableBoolean = function (featureKey, variableKey,
|
|
666
|
-
if (
|
|
667
|
-
var variableValue = this.getVariable(featureKey, variableKey,
|
|
659
|
+
FeaturevisorInstance.prototype.getVariableBoolean = function (featureKey, variableKey, context) {
|
|
660
|
+
if (context === void 0) { context = {}; }
|
|
661
|
+
var variableValue = this.getVariable(featureKey, variableKey, context);
|
|
668
662
|
return getValueByType(variableValue, "boolean");
|
|
669
663
|
};
|
|
670
|
-
FeaturevisorInstance.prototype.getVariableString = function (featureKey, variableKey,
|
|
671
|
-
if (
|
|
672
|
-
var variableValue = this.getVariable(featureKey, variableKey,
|
|
664
|
+
FeaturevisorInstance.prototype.getVariableString = function (featureKey, variableKey, context) {
|
|
665
|
+
if (context === void 0) { context = {}; }
|
|
666
|
+
var variableValue = this.getVariable(featureKey, variableKey, context);
|
|
673
667
|
return getValueByType(variableValue, "string");
|
|
674
668
|
};
|
|
675
|
-
FeaturevisorInstance.prototype.getVariableInteger = function (featureKey, variableKey,
|
|
676
|
-
if (
|
|
677
|
-
var variableValue = this.getVariable(featureKey, variableKey,
|
|
669
|
+
FeaturevisorInstance.prototype.getVariableInteger = function (featureKey, variableKey, context) {
|
|
670
|
+
if (context === void 0) { context = {}; }
|
|
671
|
+
var variableValue = this.getVariable(featureKey, variableKey, context);
|
|
678
672
|
return getValueByType(variableValue, "integer");
|
|
679
673
|
};
|
|
680
|
-
FeaturevisorInstance.prototype.getVariableDouble = function (featureKey, variableKey,
|
|
681
|
-
if (
|
|
682
|
-
var variableValue = this.getVariable(featureKey, variableKey,
|
|
674
|
+
FeaturevisorInstance.prototype.getVariableDouble = function (featureKey, variableKey, context) {
|
|
675
|
+
if (context === void 0) { context = {}; }
|
|
676
|
+
var variableValue = this.getVariable(featureKey, variableKey, context);
|
|
683
677
|
return getValueByType(variableValue, "double");
|
|
684
678
|
};
|
|
685
|
-
FeaturevisorInstance.prototype.getVariableArray = function (featureKey, variableKey,
|
|
686
|
-
if (
|
|
687
|
-
var variableValue = this.getVariable(featureKey, variableKey,
|
|
679
|
+
FeaturevisorInstance.prototype.getVariableArray = function (featureKey, variableKey, context) {
|
|
680
|
+
if (context === void 0) { context = {}; }
|
|
681
|
+
var variableValue = this.getVariable(featureKey, variableKey, context);
|
|
688
682
|
return getValueByType(variableValue, "array");
|
|
689
683
|
};
|
|
690
|
-
FeaturevisorInstance.prototype.getVariableObject = function (featureKey, variableKey,
|
|
691
|
-
if (
|
|
692
|
-
var variableValue = this.getVariable(featureKey, variableKey,
|
|
684
|
+
FeaturevisorInstance.prototype.getVariableObject = function (featureKey, variableKey, context) {
|
|
685
|
+
if (context === void 0) { context = {}; }
|
|
686
|
+
var variableValue = this.getVariable(featureKey, variableKey, context);
|
|
693
687
|
return getValueByType(variableValue, "object");
|
|
694
688
|
};
|
|
695
|
-
FeaturevisorInstance.prototype.getVariableJSON = function (featureKey, variableKey,
|
|
696
|
-
if (
|
|
697
|
-
var variableValue = this.getVariable(featureKey, variableKey,
|
|
689
|
+
FeaturevisorInstance.prototype.getVariableJSON = function (featureKey, variableKey, context) {
|
|
690
|
+
if (context === void 0) { context = {}; }
|
|
691
|
+
var variableValue = this.getVariable(featureKey, variableKey, context);
|
|
698
692
|
return getValueByType(variableValue, "json");
|
|
699
693
|
};
|
|
700
694
|
return FeaturevisorInstance;
|
package/lib/instance.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance.js","sourceRoot":"","sources":["../src/instance.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"instance.js","sourceRoot":"","sources":["../src/instance.ts"],"names":[],"mappings":"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"}
|
package/lib/segments.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Context, GroupSegment, Segment } from "@featurevisor/types";
|
|
2
2
|
import { DatafileReader } from "./datafileReader";
|
|
3
|
-
export declare function segmentIsMatched(segment: Segment,
|
|
4
|
-
export declare function allGroupSegmentsAreMatched(groupSegments: GroupSegment | GroupSegment[] | "*",
|
|
3
|
+
export declare function segmentIsMatched(segment: Segment, context: Context): boolean;
|
|
4
|
+
export declare function allGroupSegmentsAreMatched(groupSegments: GroupSegment | GroupSegment[] | "*", context: Context, datafileReader: DatafileReader): boolean;
|
package/lib/segments.js
CHANGED
|
@@ -1,38 +1,38 @@
|
|
|
1
1
|
import { allConditionsAreMatched } from "./conditions";
|
|
2
|
-
export function segmentIsMatched(segment,
|
|
3
|
-
return allConditionsAreMatched(segment.conditions,
|
|
2
|
+
export function segmentIsMatched(segment, context) {
|
|
3
|
+
return allConditionsAreMatched(segment.conditions, context);
|
|
4
4
|
}
|
|
5
|
-
export function allGroupSegmentsAreMatched(groupSegments,
|
|
5
|
+
export function allGroupSegmentsAreMatched(groupSegments, context, datafileReader) {
|
|
6
6
|
if (groupSegments === "*") {
|
|
7
7
|
return true;
|
|
8
8
|
}
|
|
9
9
|
if (typeof groupSegments === "string") {
|
|
10
10
|
var segment = datafileReader.getSegment(groupSegments);
|
|
11
11
|
if (segment) {
|
|
12
|
-
return segmentIsMatched(segment,
|
|
12
|
+
return segmentIsMatched(segment, context);
|
|
13
13
|
}
|
|
14
14
|
return false;
|
|
15
15
|
}
|
|
16
16
|
if (typeof groupSegments === "object") {
|
|
17
17
|
if ("and" in groupSegments && Array.isArray(groupSegments.and)) {
|
|
18
18
|
return groupSegments.and.every(function (groupSegment) {
|
|
19
|
-
return allGroupSegmentsAreMatched(groupSegment,
|
|
19
|
+
return allGroupSegmentsAreMatched(groupSegment, context, datafileReader);
|
|
20
20
|
});
|
|
21
21
|
}
|
|
22
22
|
if ("or" in groupSegments && Array.isArray(groupSegments.or)) {
|
|
23
23
|
return groupSegments.or.some(function (groupSegment) {
|
|
24
|
-
return allGroupSegmentsAreMatched(groupSegment,
|
|
24
|
+
return allGroupSegmentsAreMatched(groupSegment, context, datafileReader);
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
27
|
if ("not" in groupSegments && Array.isArray(groupSegments.not)) {
|
|
28
28
|
return groupSegments.not.every(function (groupSegment) {
|
|
29
|
-
return allGroupSegmentsAreMatched(groupSegment,
|
|
29
|
+
return allGroupSegmentsAreMatched(groupSegment, context, datafileReader) === false;
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
if (Array.isArray(groupSegments)) {
|
|
34
34
|
return groupSegments.every(function (groupSegment) {
|
|
35
|
-
return allGroupSegmentsAreMatched(groupSegment,
|
|
35
|
+
return allGroupSegmentsAreMatched(groupSegment, context, datafileReader);
|
|
36
36
|
});
|
|
37
37
|
}
|
|
38
38
|
return false;
|
package/lib/segments.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"segments.js","sourceRoot":"","sources":["../src/segments.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAGvD,MAAM,UAAU,gBAAgB,CAAC,OAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"segments.js","sourceRoot":"","sources":["../src/segments.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAGvD,MAAM,UAAU,gBAAgB,CAAC,OAAgB,EAAE,OAAgB;IACjE,OAAO,uBAAuB,CAAC,OAAO,CAAC,UAAqC,EAAE,OAAO,CAAC,CAAC;AACzF,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,aAAkD,EAClD,OAAgB,EAChB,cAA8B;IAE9B,IAAI,aAAa,KAAK,GAAG,EAAE;QACzB,OAAO,IAAI,CAAC;KACb;IAED,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;QACrC,IAAM,OAAO,GAAG,cAAc,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAEzD,IAAI,OAAO,EAAE;YACX,OAAO,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;SAC3C;QAED,OAAO,KAAK,CAAC;KACd;IAED,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;QACrC,IAAI,KAAK,IAAI,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE;YAC9D,OAAO,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,UAAC,YAAY;gBAC1C,OAAA,0BAA0B,CAAC,YAAY,EAAE,OAAO,EAAE,cAAc,CAAC;YAAjE,CAAiE,CAClE,CAAC;SACH;QAED,IAAI,IAAI,IAAI,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE;YAC5D,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,UAAC,YAAY;gBACxC,OAAA,0BAA0B,CAAC,YAAY,EAAE,OAAO,EAAE,cAAc,CAAC;YAAjE,CAAiE,CAClE,CAAC;SACH;QAED,IAAI,KAAK,IAAI,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE;YAC9D,OAAO,aAAa,CAAC,GAAG,CAAC,KAAK,CAC5B,UAAC,YAAY;gBACX,OAAA,0BAA0B,CAAC,YAAY,EAAE,OAAO,EAAE,cAAc,CAAC,KAAK,KAAK;YAA3E,CAA2E,CAC9E,CAAC;SACH;KACF;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;QAChC,OAAO,aAAa,CAAC,KAAK,CAAC,UAAC,YAAY;YACtC,OAAA,0BAA0B,CAAC,YAAY,EAAE,OAAO,EAAE,cAAc,CAAC;QAAjE,CAAiE,CAClE,CAAC;KACH;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@featurevisor/sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.37.0",
|
|
4
4
|
"description": "Featurevisor SDK for Node.js and the browser",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "lib/index.js",
|
|
@@ -42,9 +42,9 @@
|
|
|
42
42
|
},
|
|
43
43
|
"license": "MIT",
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@featurevisor/types": "^0.
|
|
45
|
+
"@featurevisor/types": "^0.37.0",
|
|
46
46
|
"compare-versions": "^6.0.0-rc.1",
|
|
47
47
|
"murmurhash": "^2.0.1"
|
|
48
48
|
},
|
|
49
|
-
"gitHead": "
|
|
49
|
+
"gitHead": "1944f2ea8e86d07c7031720cd0b407bea547d0cb"
|
|
50
50
|
}
|