saleor-apps-redis_apl/packages/shared/src/saleor-version-compatibility-validator.ts

20 lines
539 B
TypeScript
Raw Normal View History

const semver = require("semver");
export class SaleorVersionCompatibilityValidator {
constructor(private appRequiredVersion: string) {}
isValid(saleorVersion: string) {
return semver.satisfies(saleorVersion, this.appRequiredVersion, {
includePrerelease: true,
});
}
validateOrThrow(saleorVersion: string) {
if (!this.isValid(saleorVersion)) {
throw new Error(
`Your Saleor version (${saleorVersion}) doesn't match App's required version (semver: ${this.appRequiredVersion})`
);
}
}
}