@splitsoftware/splitio-commons
Version:
Split JavaScript SDK common components
16 lines (11 loc) • 545 B
text/typescript
import { IBetweenStringMatcherData } from '../../dtos/types';
import { Semver } from '../../utils/Semver';
export function betweenSemverMatcherContext(ruleAttr: IBetweenStringMatcherData) {
const startSemver = new Semver(ruleAttr.start);
const endSemver = new Semver(ruleAttr.end);
return function betweenSemverMatcher(runtimeAttr: string): boolean {
const runtimeSemver = new Semver(runtimeAttr);
const isBetween = startSemver.compare(runtimeSemver) <= 0 && endSemver.compare(runtimeSemver) >= 0;
return isBetween;
};
}